diff --git a/Database/abetoarmarios.sql b/Database/abetoarmarios.sql new file mode 100644 index 0000000..ef62506 --- /dev/null +++ b/Database/abetoarmarios.sql @@ -0,0 +1,3797 @@ +-- phpMyAdmin SQL Dump +-- version 2.9.0.2 +-- http://www.phpmyadmin.net +-- +-- Servidor: localhost +-- Tiempo de generación: 09-07-2007 a las 16:26:32 +-- Versión del servidor: 5.0.27 +-- Versión de PHP: 4.4.2 +-- +-- Base de datos: `rodaxcs_abetoarmarios` +-- + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_AccessMap` +-- + +DROP TABLE IF EXISTS `g2_AccessMap`; +CREATE TABLE `g2_AccessMap` ( + `g_accessListId` int(11) NOT NULL, + `g_userOrGroupId` int(11) NOT NULL, + `g_permission` int(11) NOT NULL, + PRIMARY KEY (`g_accessListId`,`g_userOrGroupId`), + KEY `g2_AccessMap_83732` (`g_accessListId`), + KEY `g2_AccessMap_48775` (`g_userOrGroupId`), + KEY `g2_AccessMap_18058` (`g_permission`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_AccessMap` +-- + +INSERT INTO `g2_AccessMap` VALUES (118, 4, 1); +INSERT INTO `g2_AccessMap` VALUES (145, 4, 1); +INSERT INTO `g2_AccessMap` VALUES (141, 3, 4); +INSERT INTO `g2_AccessMap` VALUES (283, 4, 7); +INSERT INTO `g2_AccessMap` VALUES (290, 4, 12289); +INSERT INTO `g2_AccessMap` VALUES (291, 4, 12289); +INSERT INTO `g2_AccessMap` VALUES (292, 4, 12295); +INSERT INTO `g2_AccessMap` VALUES (294, 4, 28673); +INSERT INTO `g2_AccessMap` VALUES (295, 4, 28673); +INSERT INTO `g2_AccessMap` VALUES (296, 4, 28679); +INSERT INTO `g2_AccessMap` VALUES (118, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (145, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (145, 6, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (283, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (283, 6, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (290, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (291, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (291, 6, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (292, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (292, 6, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (294, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (295, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (295, 6, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (296, 3, 2147483647); +INSERT INTO `g2_AccessMap` VALUES (296, 6, 2147483647); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_AccessSubscriberMap` +-- + +DROP TABLE IF EXISTS `g2_AccessSubscriberMap`; +CREATE TABLE `g2_AccessSubscriberMap` ( + `g_itemId` int(11) NOT NULL, + `g_accessListId` int(11) NOT NULL, + PRIMARY KEY (`g_itemId`), + KEY `g2_AccessSubscriberMap_83732` (`g_accessListId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_AccessSubscriberMap` +-- + +INSERT INTO `g2_AccessSubscriberMap` VALUES (138, 141); +INSERT INTO `g2_AccessSubscriberMap` VALUES (140, 141); +INSERT INTO `g2_AccessSubscriberMap` VALUES (7, 294); +INSERT INTO `g2_AccessSubscriberMap` VALUES (263, 294); +INSERT INTO `g2_AccessSubscriberMap` VALUES (267, 294); +INSERT INTO `g2_AccessSubscriberMap` VALUES (270, 294); +INSERT INTO `g2_AccessSubscriberMap` VALUES (273, 294); +INSERT INTO `g2_AccessSubscriberMap` VALUES (97, 295); +INSERT INTO `g2_AccessSubscriberMap` VALUES (11, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (13, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (14, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (15, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (121, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (122, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (129, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (133, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (144, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (146, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (147, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (152, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (156, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (157, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (162, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (163, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (168, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (169, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (175, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (179, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (183, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (184, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (189, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (193, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (194, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (195, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (200, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (205, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (206, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (212, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (216, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (220, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (224, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (228, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (232, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (233, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (238, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (242, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (246, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (250, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (251, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (298, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (299, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (304, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (307, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (310, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (313, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (316, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (317, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (322, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (326, 296); +INSERT INTO `g2_AccessSubscriberMap` VALUES (330, 296); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_AlbumItem` +-- + +DROP TABLE IF EXISTS `g2_AlbumItem`; +CREATE TABLE `g2_AlbumItem` ( + `g_id` int(11) NOT NULL, + `g_theme` varchar(32) default NULL, + `g_orderBy` varchar(128) default NULL, + `g_orderDirection` varchar(32) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_AlbumItem` +-- + +INSERT INTO `g2_AlbumItem` VALUES (7, 'abeto', 'random', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (11, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (13, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (14, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (15, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (97, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (121, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (144, 'abeto', 'orderWeight', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (146, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (156, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (162, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (168, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (183, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (193, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (194, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (205, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (232, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (250, 'abeto', '', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (298, 'abeto', 'orderWeight', 'asc'); +INSERT INTO `g2_AlbumItem` VALUES (316, 'abeto', '', 'asc'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_AnimationItem` +-- + +DROP TABLE IF EXISTS `g2_AnimationItem`; +CREATE TABLE `g2_AnimationItem` ( + `g_id` int(11) NOT NULL, + `g_width` int(11) default NULL, + `g_height` int(11) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_AnimationItem` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_CacheMap` +-- + +DROP TABLE IF EXISTS `g2_CacheMap`; +CREATE TABLE `g2_CacheMap` ( + `g_key` varchar(32) NOT NULL, + `g_value` longtext, + `g_userId` int(11) NOT NULL, + `g_itemId` int(11) NOT NULL, + `g_type` varchar(32) NOT NULL, + `g_timestamp` int(11) NOT NULL, + `g_isEmpty` int(1) default NULL, + PRIMARY KEY (`g_key`,`g_userId`,`g_itemId`,`g_type`), + KEY `g2_CacheMap_75985` (`g_itemId`), + KEY `g2_CacheMap_21979` (`g_userId`,`g_timestamp`,`g_isEmpty`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_CacheMap` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_ChildEntity` +-- + +DROP TABLE IF EXISTS `g2_ChildEntity`; +CREATE TABLE `g2_ChildEntity` ( + `g_id` int(11) NOT NULL, + `g_parentId` int(11) NOT NULL, + PRIMARY KEY (`g_id`), + KEY `g2_ChildEntity_52718` (`g_parentId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_ChildEntity` +-- + +INSERT INTO `g2_ChildEntity` VALUES (7, 0); +INSERT INTO `g2_ChildEntity` VALUES (137, 0); +INSERT INTO `g2_ChildEntity` VALUES (97, 7); +INSERT INTO `g2_ChildEntity` VALUES (144, 7); +INSERT INTO `g2_ChildEntity` VALUES (263, 7); +INSERT INTO `g2_ChildEntity` VALUES (266, 7); +INSERT INTO `g2_ChildEntity` VALUES (267, 7); +INSERT INTO `g2_ChildEntity` VALUES (270, 7); +INSERT INTO `g2_ChildEntity` VALUES (273, 7); +INSERT INTO `g2_ChildEntity` VALUES (13, 11); +INSERT INTO `g2_ChildEntity` VALUES (14, 11); +INSERT INTO `g2_ChildEntity` VALUES (15, 11); +INSERT INTO `g2_ChildEntity` VALUES (143, 11); +INSERT INTO `g2_ChildEntity` VALUES (121, 13); +INSERT INTO `g2_ChildEntity` VALUES (142, 13); +INSERT INTO `g2_ChildEntity` VALUES (146, 13); +INSERT INTO `g2_ChildEntity` VALUES (156, 13); +INSERT INTO `g2_ChildEntity` VALUES (162, 13); +INSERT INTO `g2_ChildEntity` VALUES (316, 13); +INSERT INTO `g2_ChildEntity` VALUES (205, 14); +INSERT INTO `g2_ChildEntity` VALUES (211, 14); +INSERT INTO `g2_ChildEntity` VALUES (232, 14); +INSERT INTO `g2_ChildEntity` VALUES (250, 14); +INSERT INTO `g2_ChildEntity` VALUES (168, 15); +INSERT INTO `g2_ChildEntity` VALUES (174, 15); +INSERT INTO `g2_ChildEntity` VALUES (183, 15); +INSERT INTO `g2_ChildEntity` VALUES (193, 15); +INSERT INTO `g2_ChildEntity` VALUES (194, 15); +INSERT INTO `g2_ChildEntity` VALUES (122, 121); +INSERT INTO `g2_ChildEntity` VALUES (126, 121); +INSERT INTO `g2_ChildEntity` VALUES (129, 121); +INSERT INTO `g2_ChildEntity` VALUES (133, 121); +INSERT INTO `g2_ChildEntity` VALUES (123, 122); +INSERT INTO `g2_ChildEntity` VALUES (124, 122); +INSERT INTO `g2_ChildEntity` VALUES (125, 122); +INSERT INTO `g2_ChildEntity` VALUES (130, 129); +INSERT INTO `g2_ChildEntity` VALUES (131, 129); +INSERT INTO `g2_ChildEntity` VALUES (132, 129); +INSERT INTO `g2_ChildEntity` VALUES (134, 133); +INSERT INTO `g2_ChildEntity` VALUES (135, 133); +INSERT INTO `g2_ChildEntity` VALUES (136, 133); +INSERT INTO `g2_ChildEntity` VALUES (138, 137); +INSERT INTO `g2_ChildEntity` VALUES (140, 137); +INSERT INTO `g2_ChildEntity` VALUES (11, 144); +INSERT INTO `g2_ChildEntity` VALUES (298, 144); +INSERT INTO `g2_ChildEntity` VALUES (303, 144); +INSERT INTO `g2_ChildEntity` VALUES (147, 146); +INSERT INTO `g2_ChildEntity` VALUES (151, 146); +INSERT INTO `g2_ChildEntity` VALUES (152, 146); +INSERT INTO `g2_ChildEntity` VALUES (148, 147); +INSERT INTO `g2_ChildEntity` VALUES (149, 147); +INSERT INTO `g2_ChildEntity` VALUES (150, 147); +INSERT INTO `g2_ChildEntity` VALUES (153, 152); +INSERT INTO `g2_ChildEntity` VALUES (154, 152); +INSERT INTO `g2_ChildEntity` VALUES (155, 152); +INSERT INTO `g2_ChildEntity` VALUES (157, 156); +INSERT INTO `g2_ChildEntity` VALUES (161, 156); +INSERT INTO `g2_ChildEntity` VALUES (158, 157); +INSERT INTO `g2_ChildEntity` VALUES (159, 157); +INSERT INTO `g2_ChildEntity` VALUES (160, 157); +INSERT INTO `g2_ChildEntity` VALUES (163, 162); +INSERT INTO `g2_ChildEntity` VALUES (167, 162); +INSERT INTO `g2_ChildEntity` VALUES (164, 163); +INSERT INTO `g2_ChildEntity` VALUES (165, 163); +INSERT INTO `g2_ChildEntity` VALUES (166, 163); +INSERT INTO `g2_ChildEntity` VALUES (169, 168); +INSERT INTO `g2_ChildEntity` VALUES (173, 168); +INSERT INTO `g2_ChildEntity` VALUES (175, 168); +INSERT INTO `g2_ChildEntity` VALUES (179, 168); +INSERT INTO `g2_ChildEntity` VALUES (170, 169); +INSERT INTO `g2_ChildEntity` VALUES (171, 169); +INSERT INTO `g2_ChildEntity` VALUES (172, 169); +INSERT INTO `g2_ChildEntity` VALUES (176, 175); +INSERT INTO `g2_ChildEntity` VALUES (177, 175); +INSERT INTO `g2_ChildEntity` VALUES (178, 175); +INSERT INTO `g2_ChildEntity` VALUES (276, 175); +INSERT INTO `g2_ChildEntity` VALUES (180, 179); +INSERT INTO `g2_ChildEntity` VALUES (181, 179); +INSERT INTO `g2_ChildEntity` VALUES (182, 179); +INSERT INTO `g2_ChildEntity` VALUES (184, 183); +INSERT INTO `g2_ChildEntity` VALUES (188, 183); +INSERT INTO `g2_ChildEntity` VALUES (189, 183); +INSERT INTO `g2_ChildEntity` VALUES (185, 184); +INSERT INTO `g2_ChildEntity` VALUES (186, 184); +INSERT INTO `g2_ChildEntity` VALUES (187, 184); +INSERT INTO `g2_ChildEntity` VALUES (190, 189); +INSERT INTO `g2_ChildEntity` VALUES (191, 189); +INSERT INTO `g2_ChildEntity` VALUES (192, 189); +INSERT INTO `g2_ChildEntity` VALUES (200, 193); +INSERT INTO `g2_ChildEntity` VALUES (204, 193); +INSERT INTO `g2_ChildEntity` VALUES (195, 194); +INSERT INTO `g2_ChildEntity` VALUES (199, 194); +INSERT INTO `g2_ChildEntity` VALUES (196, 195); +INSERT INTO `g2_ChildEntity` VALUES (197, 195); +INSERT INTO `g2_ChildEntity` VALUES (198, 195); +INSERT INTO `g2_ChildEntity` VALUES (201, 200); +INSERT INTO `g2_ChildEntity` VALUES (202, 200); +INSERT INTO `g2_ChildEntity` VALUES (203, 200); +INSERT INTO `g2_ChildEntity` VALUES (206, 205); +INSERT INTO `g2_ChildEntity` VALUES (210, 205); +INSERT INTO `g2_ChildEntity` VALUES (212, 205); +INSERT INTO `g2_ChildEntity` VALUES (216, 205); +INSERT INTO `g2_ChildEntity` VALUES (220, 205); +INSERT INTO `g2_ChildEntity` VALUES (224, 205); +INSERT INTO `g2_ChildEntity` VALUES (228, 205); +INSERT INTO `g2_ChildEntity` VALUES (207, 206); +INSERT INTO `g2_ChildEntity` VALUES (208, 206); +INSERT INTO `g2_ChildEntity` VALUES (209, 206); +INSERT INTO `g2_ChildEntity` VALUES (213, 212); +INSERT INTO `g2_ChildEntity` VALUES (214, 212); +INSERT INTO `g2_ChildEntity` VALUES (215, 212); +INSERT INTO `g2_ChildEntity` VALUES (217, 216); +INSERT INTO `g2_ChildEntity` VALUES (218, 216); +INSERT INTO `g2_ChildEntity` VALUES (219, 216); +INSERT INTO `g2_ChildEntity` VALUES (221, 220); +INSERT INTO `g2_ChildEntity` VALUES (222, 220); +INSERT INTO `g2_ChildEntity` VALUES (223, 220); +INSERT INTO `g2_ChildEntity` VALUES (225, 224); +INSERT INTO `g2_ChildEntity` VALUES (226, 224); +INSERT INTO `g2_ChildEntity` VALUES (227, 224); +INSERT INTO `g2_ChildEntity` VALUES (229, 228); +INSERT INTO `g2_ChildEntity` VALUES (230, 228); +INSERT INTO `g2_ChildEntity` VALUES (231, 228); +INSERT INTO `g2_ChildEntity` VALUES (233, 232); +INSERT INTO `g2_ChildEntity` VALUES (237, 232); +INSERT INTO `g2_ChildEntity` VALUES (238, 232); +INSERT INTO `g2_ChildEntity` VALUES (242, 232); +INSERT INTO `g2_ChildEntity` VALUES (246, 232); +INSERT INTO `g2_ChildEntity` VALUES (234, 233); +INSERT INTO `g2_ChildEntity` VALUES (235, 233); +INSERT INTO `g2_ChildEntity` VALUES (236, 233); +INSERT INTO `g2_ChildEntity` VALUES (239, 238); +INSERT INTO `g2_ChildEntity` VALUES (240, 238); +INSERT INTO `g2_ChildEntity` VALUES (241, 238); +INSERT INTO `g2_ChildEntity` VALUES (243, 242); +INSERT INTO `g2_ChildEntity` VALUES (244, 242); +INSERT INTO `g2_ChildEntity` VALUES (245, 242); +INSERT INTO `g2_ChildEntity` VALUES (247, 246); +INSERT INTO `g2_ChildEntity` VALUES (248, 246); +INSERT INTO `g2_ChildEntity` VALUES (249, 246); +INSERT INTO `g2_ChildEntity` VALUES (251, 250); +INSERT INTO `g2_ChildEntity` VALUES (255, 250); +INSERT INTO `g2_ChildEntity` VALUES (252, 251); +INSERT INTO `g2_ChildEntity` VALUES (253, 251); +INSERT INTO `g2_ChildEntity` VALUES (254, 251); +INSERT INTO `g2_ChildEntity` VALUES (264, 263); +INSERT INTO `g2_ChildEntity` VALUES (265, 263); +INSERT INTO `g2_ChildEntity` VALUES (268, 267); +INSERT INTO `g2_ChildEntity` VALUES (269, 267); +INSERT INTO `g2_ChildEntity` VALUES (271, 270); +INSERT INTO `g2_ChildEntity` VALUES (272, 270); +INSERT INTO `g2_ChildEntity` VALUES (274, 273); +INSERT INTO `g2_ChildEntity` VALUES (275, 273); +INSERT INTO `g2_ChildEntity` VALUES (299, 298); +INSERT INTO `g2_ChildEntity` VALUES (302, 298); +INSERT INTO `g2_ChildEntity` VALUES (304, 298); +INSERT INTO `g2_ChildEntity` VALUES (307, 298); +INSERT INTO `g2_ChildEntity` VALUES (310, 298); +INSERT INTO `g2_ChildEntity` VALUES (313, 298); +INSERT INTO `g2_ChildEntity` VALUES (300, 299); +INSERT INTO `g2_ChildEntity` VALUES (301, 299); +INSERT INTO `g2_ChildEntity` VALUES (305, 304); +INSERT INTO `g2_ChildEntity` VALUES (306, 304); +INSERT INTO `g2_ChildEntity` VALUES (308, 307); +INSERT INTO `g2_ChildEntity` VALUES (309, 307); +INSERT INTO `g2_ChildEntity` VALUES (311, 310); +INSERT INTO `g2_ChildEntity` VALUES (312, 310); +INSERT INTO `g2_ChildEntity` VALUES (314, 313); +INSERT INTO `g2_ChildEntity` VALUES (315, 313); +INSERT INTO `g2_ChildEntity` VALUES (317, 316); +INSERT INTO `g2_ChildEntity` VALUES (321, 316); +INSERT INTO `g2_ChildEntity` VALUES (322, 316); +INSERT INTO `g2_ChildEntity` VALUES (326, 316); +INSERT INTO `g2_ChildEntity` VALUES (330, 316); +INSERT INTO `g2_ChildEntity` VALUES (318, 317); +INSERT INTO `g2_ChildEntity` VALUES (319, 317); +INSERT INTO `g2_ChildEntity` VALUES (320, 317); +INSERT INTO `g2_ChildEntity` VALUES (323, 322); +INSERT INTO `g2_ChildEntity` VALUES (324, 322); +INSERT INTO `g2_ChildEntity` VALUES (325, 322); +INSERT INTO `g2_ChildEntity` VALUES (327, 326); +INSERT INTO `g2_ChildEntity` VALUES (328, 326); +INSERT INTO `g2_ChildEntity` VALUES (329, 326); +INSERT INTO `g2_ChildEntity` VALUES (331, 330); +INSERT INTO `g2_ChildEntity` VALUES (332, 330); +INSERT INTO `g2_ChildEntity` VALUES (333, 330); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Comment` +-- + +DROP TABLE IF EXISTS `g2_Comment`; +CREATE TABLE `g2_Comment` ( + `g_id` int(11) NOT NULL, + `g_commenterId` int(11) NOT NULL, + `g_host` varchar(128) NOT NULL, + `g_subject` varchar(128) default NULL, + `g_comment` text, + `g_date` int(11) NOT NULL, + `g_author` varchar(128) default NULL, + PRIMARY KEY (`g_id`), + KEY `g2_Comment_95610` (`g_date`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Comment` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_DataItem` +-- + +DROP TABLE IF EXISTS `g2_DataItem`; +CREATE TABLE `g2_DataItem` ( + `g_id` int(11) NOT NULL, + `g_mimeType` varchar(128) default NULL, + `g_size` int(11) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_DataItem` +-- + +INSERT INTO `g2_DataItem` VALUES (122, 'image/jpeg', 75455); +INSERT INTO `g2_DataItem` VALUES (129, 'image/jpeg', 83493); +INSERT INTO `g2_DataItem` VALUES (133, 'image/jpeg', 165265); +INSERT INTO `g2_DataItem` VALUES (147, 'image/jpeg', 53762); +INSERT INTO `g2_DataItem` VALUES (152, 'image/jpeg', 88026); +INSERT INTO `g2_DataItem` VALUES (157, 'image/jpeg', 68512); +INSERT INTO `g2_DataItem` VALUES (163, 'image/jpeg', 78361); +INSERT INTO `g2_DataItem` VALUES (169, 'image/jpeg', 77150); +INSERT INTO `g2_DataItem` VALUES (175, 'image/jpeg', 159260); +INSERT INTO `g2_DataItem` VALUES (179, 'image/jpeg', 71969); +INSERT INTO `g2_DataItem` VALUES (184, 'image/jpeg', 109780); +INSERT INTO `g2_DataItem` VALUES (189, 'image/jpeg', 79870); +INSERT INTO `g2_DataItem` VALUES (195, 'image/jpeg', 79075); +INSERT INTO `g2_DataItem` VALUES (200, 'image/jpeg', 70471); +INSERT INTO `g2_DataItem` VALUES (206, 'image/jpeg', 54937); +INSERT INTO `g2_DataItem` VALUES (212, 'image/jpeg', 95997); +INSERT INTO `g2_DataItem` VALUES (216, 'image/jpeg', 78657); +INSERT INTO `g2_DataItem` VALUES (220, 'image/jpeg', 109007); +INSERT INTO `g2_DataItem` VALUES (224, 'image/jpeg', 58760); +INSERT INTO `g2_DataItem` VALUES (228, 'image/jpeg', 70228); +INSERT INTO `g2_DataItem` VALUES (233, 'image/jpeg', 72600); +INSERT INTO `g2_DataItem` VALUES (238, 'image/jpeg', 88998); +INSERT INTO `g2_DataItem` VALUES (242, 'image/jpeg', 75643); +INSERT INTO `g2_DataItem` VALUES (246, 'image/jpeg', 94263); +INSERT INTO `g2_DataItem` VALUES (251, 'image/jpeg', 81475); +INSERT INTO `g2_DataItem` VALUES (263, 'image/jpeg', 68512); +INSERT INTO `g2_DataItem` VALUES (267, 'image/jpeg', 77150); +INSERT INTO `g2_DataItem` VALUES (270, 'image/jpeg', 79075); +INSERT INTO `g2_DataItem` VALUES (273, 'image/jpeg', 70471); +INSERT INTO `g2_DataItem` VALUES (299, 'image/jpeg', 219778); +INSERT INTO `g2_DataItem` VALUES (304, 'image/jpeg', 146343); +INSERT INTO `g2_DataItem` VALUES (307, 'image/jpeg', 101556); +INSERT INTO `g2_DataItem` VALUES (310, 'image/jpeg', 119113); +INSERT INTO `g2_DataItem` VALUES (313, 'image/jpeg', 106904); +INSERT INTO `g2_DataItem` VALUES (317, 'image/jpeg', 53202); +INSERT INTO `g2_DataItem` VALUES (322, 'image/jpeg', 74398); +INSERT INTO `g2_DataItem` VALUES (326, 'image/jpeg', 57074); +INSERT INTO `g2_DataItem` VALUES (330, 'image/jpeg', 91621); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Derivative` +-- + +DROP TABLE IF EXISTS `g2_Derivative`; +CREATE TABLE `g2_Derivative` ( + `g_id` int(11) NOT NULL, + `g_derivativeSourceId` int(11) NOT NULL, + `g_derivativeOperations` varchar(255) default NULL, + `g_derivativeOrder` int(11) NOT NULL, + `g_derivativeSize` int(11) default NULL, + `g_derivativeType` int(11) NOT NULL, + `g_mimeType` varchar(128) NOT NULL, + `g_postFilterOperations` varchar(255) default NULL, + `g_isBroken` int(1) default NULL, + PRIMARY KEY (`g_id`), + KEY `g2_Derivative_85338` (`g_derivativeSourceId`), + KEY `g2_Derivative_25243` (`g_derivativeOrder`), + KEY `g2_Derivative_97216` (`g_derivativeType`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Derivative` +-- + +INSERT INTO `g2_Derivative` VALUES (123, 122, 'crop|2.737,13.472,95.053,83.472;thumbnail|200', 0, 48481, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (124, 122, 'scale|640,640', 0, 28271, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (125, 122, 'scale|800,800', 0, 40096, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (126, 123, 'thumbnail|200', 0, 48481, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (130, 129, 'thumbnail|650', 0, 32656, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (131, 129, 'scale|640,640', 0, 32338, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (132, 129, 'scale|800,800', 0, 45057, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (134, 133, 'thumbnail|200', 0, 8609, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (135, 133, 'scale|640,640', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (136, 133, 'scale|800,800', 0, 80389, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (142, 158, 'thumbnail|600', 0, 49590, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (143, 161, 'thumbnail|600', 0, 49590, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (148, 147, 'crop|0,0,97.474,100.653;thumbnail|650', 0, 42328, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (149, 147, 'scale|640,640', 0, 20344, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (150, 147, 'scale|800,800', 0, 28443, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (151, 148, 'thumbnail|200', 0, 42328, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (153, 152, 'thumbnail|200', 0, 5595, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (154, 152, 'scale|640,640', 0, 32333, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (155, 152, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (158, 157, 'crop|0,4.209,100,91.872;thumbnail|650', 0, 49590, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (159, 157, 'scale|640,640', 0, 25872, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (160, 157, 'scale|800,800', 0, 36377, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (161, 158, 'thumbnail|200', 0, 49590, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (164, 163, 'crop|0.316,2.683,100,94.337;thumbnail|650', 0, 59341, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (165, 163, 'scale|640,640', 0, 30438, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (166, 163, 'scale|800,800', 0, 43129, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (167, 164, 'thumbnail|200', 0, 59341, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (170, 169, 'thumbnail|650', 0, 29003, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (171, 169, 'scale|640,640', 0, 28548, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (172, 169, 'scale|800,800', 0, 39701, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (173, 170, 'thumbnail|200', 0, 4927, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (174, 173, 'thumbnail|600', 0, 25705, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (176, 175, 'thumbnail|200', 0, 6348, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (177, 175, 'scale|640,640', 0, 36510, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (178, 175, 'scale|800,800', 0, 52228, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (180, 179, 'thumbnail|200', 0, 4633, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (181, 179, 'scale|640,640', 0, 26224, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (182, 179, 'scale|800,800', 0, 36629, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (185, 184, 'thumbnail|200', 0, 6968, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (186, 184, 'scale|640,640', 0, 42149, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (187, 184, 'scale|800,800', 0, 60049, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (188, 185, 'thumbnail|200', 0, 6951, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (190, 189, 'thumbnail|650', 0, 29352, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (191, 189, 'scale|640,640', 0, 29150, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (192, 189, 'scale|800,800', 0, 41686, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (196, 195, 'thumbnail|650', 0, 29900, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (197, 195, 'scale|640,640', 0, 28700, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (198, 195, 'scale|800,800', 0, 41276, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (199, 196, 'thumbnail|200', 0, 5014, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (201, 200, 'thumbnail|650', 0, 25719, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (202, 200, 'scale|640,640', 0, 25177, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (203, 200, 'scale|800,800', 0, 36013, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (204, 201, 'thumbnail|200', 0, 4259, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (207, 206, 'thumbnail|650', 0, 21267, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (208, 206, 'scale|640,640', 0, 20369, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (209, 206, 'scale|800,800', 0, 29089, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (210, 207, 'thumbnail|200', 0, 4091, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (211, 210, 'thumbnail|600', 0, 18882, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (213, 212, 'thumbnail|200', 0, 5264, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (214, 212, 'scale|640,640', 0, 29013, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (215, 212, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (217, 216, 'thumbnail|200', 0, 5548, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (218, 216, 'scale|640,640', 0, 30286, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (219, 216, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (221, 220, 'thumbnail|200', 0, 7302, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (222, 220, 'scale|640,640', 0, 42667, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (223, 220, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (225, 224, 'thumbnail|650', 0, 20639, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (226, 224, 'scale|640,640', 0, 20580, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (227, 224, 'scale|800,800', 0, 28062, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (229, 228, 'thumbnail|650', 0, 24527, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (230, 228, 'scale|640,640', 0, 23891, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (231, 228, 'scale|800,800', 0, 33294, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (234, 233, 'thumbnail|650', 0, 25981, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (235, 233, 'scale|640,640', 0, 24876, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (236, 233, 'scale|800,800', 0, 35190, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (237, 234, 'thumbnail|200', 0, 4397, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (239, 238, 'thumbnail|150', 0, 4931, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (240, 238, 'scale|640,640', 0, 34837, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (241, 238, 'scale|800,800', 0, 48497, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (243, 242, 'thumbnail|150', 0, 3974, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (244, 242, 'scale|640,640', 0, 28447, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (245, 242, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (247, 246, 'thumbnail|150', 0, 4662, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (248, 246, 'scale|640,640', 0, 36826, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (249, 246, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (252, 251, 'thumbnail|650', 0, 27103, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (253, 251, 'scale|640,640', 0, 26677, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (254, 251, 'scale|800,800', 0, 38452, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (255, 252, 'thumbnail|200', 0, 4447, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (264, 157, 'thumbnail|936', 0, 46739, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (265, 157, 'scale|936,486', 0, 27770, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (266, 196, 'thumbnail|936', 0, 79075, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (268, 169, 'thumbnail|936', 0, 77150, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (269, 169, 'scale|936,486', 0, 33755, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (271, 195, 'thumbnail|936', 0, 79075, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (272, 195, 'scale|936,486', 0, 45866, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (274, 200, 'thumbnail|936', 0, 70471, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (275, 200, 'scale|936,486', 0, 34311, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (276, 175, 'scale|1024,1024', 0, 76816, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (300, 299, 'thumbnail|700', 0, 71045, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (301, 299, 'scale|936,486', 0, 62274, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (302, 300, 'thumbnail|600', 0, 55590, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (303, 302, 'thumbnail|600', 0, 55590, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (305, 304, 'thumbnail|200', 0, 12614, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (306, 304, 'scale|936,486', 0, 55150, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (308, 307, 'thumbnail|200', 0, 9615, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (309, 307, 'scale|936,486', 0, 37220, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (311, 310, 'thumbnail|200', 0, 10423, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (312, 310, 'scale|936,486', 0, 42965, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (314, 313, 'thumbnail|200', 0, 7763, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (315, 313, 'scale|936,486', 0, 35233, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (318, 317, 'thumbnail|200', 0, 4120, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (319, 317, 'scale|640,640', 0, 23231, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (320, 317, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (321, 318, 'thumbnail|200', 0, 4120, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (323, 322, 'thumbnail|200', 0, 4428, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (324, 322, 'scale|640,640', 0, 23896, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (325, 322, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (327, 326, 'thumbnail|200', 0, 4198, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (328, 326, 'scale|640,640', 0, 19685, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (329, 326, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (331, 330, 'thumbnail|200', 0, 4533, 1, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (332, 330, 'scale|640,640', 0, 24940, 2, 'image/jpeg', NULL, 0); +INSERT INTO `g2_Derivative` VALUES (333, 330, 'scale|800,800', 0, NULL, 2, 'image/jpeg', NULL, 0); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_DerivativeImage` +-- + +DROP TABLE IF EXISTS `g2_DerivativeImage`; +CREATE TABLE `g2_DerivativeImage` ( + `g_id` int(11) NOT NULL, + `g_width` int(11) default NULL, + `g_height` int(11) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_DerivativeImage` +-- + +INSERT INTO `g2_DerivativeImage` VALUES (123, 200, 133); +INSERT INTO `g2_DerivativeImage` VALUES (124, 640, 485); +INSERT INTO `g2_DerivativeImage` VALUES (125, 800, 606); +INSERT INTO `g2_DerivativeImage` VALUES (126, 200, 133); +INSERT INTO `g2_DerivativeImage` VALUES (130, 650, 493); +INSERT INTO `g2_DerivativeImage` VALUES (131, 640, 485); +INSERT INTO `g2_DerivativeImage` VALUES (132, 800, 606); +INSERT INTO `g2_DerivativeImage` VALUES (134, 194, 200); +INSERT INTO `g2_DerivativeImage` VALUES (135, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (136, 776, 800); +INSERT INTO `g2_DerivativeImage` VALUES (142, 600, 400); +INSERT INTO `g2_DerivativeImage` VALUES (143, 600, 400); +INSERT INTO `g2_DerivativeImage` VALUES (148, 650, 433); +INSERT INTO `g2_DerivativeImage` VALUES (149, 640, 413); +INSERT INTO `g2_DerivativeImage` VALUES (150, 800, 516); +INSERT INTO `g2_DerivativeImage` VALUES (151, 200, 133); +INSERT INTO `g2_DerivativeImage` VALUES (153, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (154, 640, 639); +INSERT INTO `g2_DerivativeImage` VALUES (155, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (158, 650, 433); +INSERT INTO `g2_DerivativeImage` VALUES (159, 640, 464); +INSERT INTO `g2_DerivativeImage` VALUES (160, 800, 580); +INSERT INTO `g2_DerivativeImage` VALUES (161, 200, 133); +INSERT INTO `g2_DerivativeImage` VALUES (164, 650, 433); +INSERT INTO `g2_DerivativeImage` VALUES (165, 640, 452); +INSERT INTO `g2_DerivativeImage` VALUES (166, 800, 565); +INSERT INTO `g2_DerivativeImage` VALUES (167, 200, 133); +INSERT INTO `g2_DerivativeImage` VALUES (170, 650, 441); +INSERT INTO `g2_DerivativeImage` VALUES (171, 640, 434); +INSERT INTO `g2_DerivativeImage` VALUES (172, 800, 543); +INSERT INTO `g2_DerivativeImage` VALUES (173, 200, 136); +INSERT INTO `g2_DerivativeImage` VALUES (174, 600, 407); +INSERT INTO `g2_DerivativeImage` VALUES (176, 140, 200); +INSERT INTO `g2_DerivativeImage` VALUES (177, 448, 640); +INSERT INTO `g2_DerivativeImage` VALUES (178, 560, 800); +INSERT INTO `g2_DerivativeImage` VALUES (180, 200, 136); +INSERT INTO `g2_DerivativeImage` VALUES (181, 640, 434); +INSERT INTO `g2_DerivativeImage` VALUES (182, 800, 543); +INSERT INTO `g2_DerivativeImage` VALUES (185, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (186, 640, 640); +INSERT INTO `g2_DerivativeImage` VALUES (187, 800, 800); +INSERT INTO `g2_DerivativeImage` VALUES (188, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (190, 650, 544); +INSERT INTO `g2_DerivativeImage` VALUES (191, 640, 536); +INSERT INTO `g2_DerivativeImage` VALUES (192, 800, 670); +INSERT INTO `g2_DerivativeImage` VALUES (196, 650, 372); +INSERT INTO `g2_DerivativeImage` VALUES (197, 640, 366); +INSERT INTO `g2_DerivativeImage` VALUES (198, 800, 457); +INSERT INTO `g2_DerivativeImage` VALUES (199, 200, 114); +INSERT INTO `g2_DerivativeImage` VALUES (201, 650, 408); +INSERT INTO `g2_DerivativeImage` VALUES (202, 640, 402); +INSERT INTO `g2_DerivativeImage` VALUES (203, 800, 503); +INSERT INTO `g2_DerivativeImage` VALUES (204, 200, 126); +INSERT INTO `g2_DerivativeImage` VALUES (207, 650, 378); +INSERT INTO `g2_DerivativeImage` VALUES (208, 640, 372); +INSERT INTO `g2_DerivativeImage` VALUES (209, 800, 465); +INSERT INTO `g2_DerivativeImage` VALUES (210, 200, 116); +INSERT INTO `g2_DerivativeImage` VALUES (211, 600, 349); +INSERT INTO `g2_DerivativeImage` VALUES (213, 171, 200); +INSERT INTO `g2_DerivativeImage` VALUES (214, 548, 640); +INSERT INTO `g2_DerivativeImage` VALUES (215, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (217, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (218, 640, 640); +INSERT INTO `g2_DerivativeImage` VALUES (219, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (221, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (222, 640, 640); +INSERT INTO `g2_DerivativeImage` VALUES (223, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (225, 650, 329); +INSERT INTO `g2_DerivativeImage` VALUES (226, 640, 324); +INSERT INTO `g2_DerivativeImage` VALUES (227, 800, 405); +INSERT INTO `g2_DerivativeImage` VALUES (229, 650, 413); +INSERT INTO `g2_DerivativeImage` VALUES (230, 640, 406); +INSERT INTO `g2_DerivativeImage` VALUES (231, 800, 508); +INSERT INTO `g2_DerivativeImage` VALUES (234, 650, 413); +INSERT INTO `g2_DerivativeImage` VALUES (235, 640, 406); +INSERT INTO `g2_DerivativeImage` VALUES (236, 800, 508); +INSERT INTO `g2_DerivativeImage` VALUES (237, 200, 127); +INSERT INTO `g2_DerivativeImage` VALUES (239, 150, 150); +INSERT INTO `g2_DerivativeImage` VALUES (240, 640, 640); +INSERT INTO `g2_DerivativeImage` VALUES (241, 800, 800); +INSERT INTO `g2_DerivativeImage` VALUES (243, 150, 150); +INSERT INTO `g2_DerivativeImage` VALUES (244, 640, 640); +INSERT INTO `g2_DerivativeImage` VALUES (245, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (247, 150, 150); +INSERT INTO `g2_DerivativeImage` VALUES (248, 640, 640); +INSERT INTO `g2_DerivativeImage` VALUES (249, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (252, 650, 415); +INSERT INTO `g2_DerivativeImage` VALUES (253, 640, 409); +INSERT INTO `g2_DerivativeImage` VALUES (254, 800, 511); +INSERT INTO `g2_DerivativeImage` VALUES (255, 200, 128); +INSERT INTO `g2_DerivativeImage` VALUES (264, 936, 679); +INSERT INTO `g2_DerivativeImage` VALUES (265, 670, 486); +INSERT INTO `g2_DerivativeImage` VALUES (266, 936, 535); +INSERT INTO `g2_DerivativeImage` VALUES (268, 936, 635); +INSERT INTO `g2_DerivativeImage` VALUES (269, 716, 486); +INSERT INTO `g2_DerivativeImage` VALUES (271, 936, 535); +INSERT INTO `g2_DerivativeImage` VALUES (272, 850, 486); +INSERT INTO `g2_DerivativeImage` VALUES (274, 936, 588); +INSERT INTO `g2_DerivativeImage` VALUES (275, 774, 486); +INSERT INTO `g2_DerivativeImage` VALUES (276, 716, 1024); +INSERT INTO `g2_DerivativeImage` VALUES (300, 700, 525); +INSERT INTO `g2_DerivativeImage` VALUES (301, 648, 486); +INSERT INTO `g2_DerivativeImage` VALUES (302, 600, 450); +INSERT INTO `g2_DerivativeImage` VALUES (303, 600, 450); +INSERT INTO `g2_DerivativeImage` VALUES (305, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (306, 486, 486); +INSERT INTO `g2_DerivativeImage` VALUES (308, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (309, 486, 486); +INSERT INTO `g2_DerivativeImage` VALUES (311, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (312, 486, 486); +INSERT INTO `g2_DerivativeImage` VALUES (314, 200, 200); +INSERT INTO `g2_DerivativeImage` VALUES (315, 486, 486); +INSERT INTO `g2_DerivativeImage` VALUES (318, 191, 200); +INSERT INTO `g2_DerivativeImage` VALUES (319, 611, 640); +INSERT INTO `g2_DerivativeImage` VALUES (320, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (321, 191, 200); +INSERT INTO `g2_DerivativeImage` VALUES (323, 200, 138); +INSERT INTO `g2_DerivativeImage` VALUES (324, 640, 440); +INSERT INTO `g2_DerivativeImage` VALUES (325, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (327, 200, 124); +INSERT INTO `g2_DerivativeImage` VALUES (328, 640, 398); +INSERT INTO `g2_DerivativeImage` VALUES (329, 0, 0); +INSERT INTO `g2_DerivativeImage` VALUES (331, 200, 119); +INSERT INTO `g2_DerivativeImage` VALUES (332, 640, 382); +INSERT INTO `g2_DerivativeImage` VALUES (333, 0, 0); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_DerivativePrefsMap` +-- + +DROP TABLE IF EXISTS `g2_DerivativePrefsMap`; +CREATE TABLE `g2_DerivativePrefsMap` ( + `g_itemId` int(11) default NULL, + `g_order` int(11) default NULL, + `g_derivativeType` int(11) default NULL, + `g_derivativeOperations` varchar(255) default NULL, + KEY `g2_DerivativePrefsMap_75985` (`g_itemId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_DerivativePrefsMap` +-- + +INSERT INTO `g2_DerivativePrefsMap` VALUES (97, 0, 1, 'thumbnail|936'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (97, 0, 2, 'scale|936,486'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (7, 0, 1, 'thumbnail|936'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (7, 0, 2, 'scale|936,486'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (11, 0, 1, 'thumbnail|600'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (11, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (11, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (146, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (146, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (156, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (156, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (162, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (162, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (232, 0, 1, 'thumbnail|150'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (232, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (232, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (250, 0, 1, 'thumbnail|150'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (250, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (250, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (13, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (13, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (13, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (146, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (156, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (162, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (121, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (121, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (121, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (205, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (205, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (205, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (14, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (14, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (14, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (14, 2, 2, 'scale|1024,1024'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (15, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (15, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (15, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (15, 2, 2, 'scale|1024,1024'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (168, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (183, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (193, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (194, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (168, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (183, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (193, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (194, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (168, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (183, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (193, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (194, 1, 2, 'scale|800,800'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (168, 2, 2, 'scale|1024,1024'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (183, 2, 2, 'scale|1024,1024'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (193, 2, 2, 'scale|1024,1024'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (194, 2, 2, 'scale|1024,1024'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (144, 0, 1, 'thumbnail|600'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (144, 0, 2, 'scale|936,486'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (298, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (298, 0, 2, 'scale|936,486'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (316, 0, 1, 'thumbnail|200'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (316, 0, 2, 'scale|640,640'); +INSERT INTO `g2_DerivativePrefsMap` VALUES (316, 1, 2, 'scale|800,800'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_DescendentCountsMap` +-- + +DROP TABLE IF EXISTS `g2_DescendentCountsMap`; +CREATE TABLE `g2_DescendentCountsMap` ( + `g_userId` int(11) NOT NULL, + `g_itemId` int(11) NOT NULL, + `g_descendentCount` int(11) NOT NULL, + PRIMARY KEY (`g_userId`,`g_itemId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_DescendentCountsMap` +-- + +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 14, 14); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 15, 11); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 97, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 121, 3); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 146, 2); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 156, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 162, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 168, 3); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 183, 2); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 193, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 194, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 205, 6); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 232, 4); +INSERT INTO `g2_DescendentCountsMap` VALUES (5, 250, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 14, 14); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 15, 11); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 16, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 29, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 32, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 35, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 84, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 97, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 105, 0); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 121, 3); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 146, 2); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 156, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 162, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 168, 3); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 183, 2); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 193, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 194, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 205, 6); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 232, 4); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 250, 1); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 298, 5); +INSERT INTO `g2_DescendentCountsMap` VALUES (6, 316, 4); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Entity` +-- + +DROP TABLE IF EXISTS `g2_Entity`; +CREATE TABLE `g2_Entity` ( + `g_id` int(11) NOT NULL, + `g_creationTimestamp` int(11) NOT NULL, + `g_isLinkable` int(1) NOT NULL, + `g_linkId` int(11) default NULL, + `g_modificationTimestamp` int(11) NOT NULL, + `g_serialNumber` int(11) NOT NULL, + `g_entityType` varchar(32) NOT NULL, + `g_onLoadHandlers` varchar(128) default NULL, + PRIMARY KEY (`g_id`), + KEY `g2_Entity_76255` (`g_creationTimestamp`), + KEY `g2_Entity_35978` (`g_isLinkable`), + KEY `g2_Entity_44738` (`g_linkId`), + KEY `g2_Entity_63025` (`g_modificationTimestamp`), + KEY `g2_Entity_60702` (`g_serialNumber`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Entity` +-- + +INSERT INTO `g2_Entity` VALUES (1, 1182181411, 0, NULL, 1182181411, 1, 'GalleryEntity', NULL); +INSERT INTO `g2_Entity` VALUES (2, 1182181411, 0, NULL, 1182181411, 1, 'GalleryGroup', NULL); +INSERT INTO `g2_Entity` VALUES (3, 1182181411, 0, NULL, 1182181411, 1, 'GalleryGroup', NULL); +INSERT INTO `g2_Entity` VALUES (4, 1182181411, 0, NULL, 1182181411, 1, 'GalleryGroup', NULL); +INSERT INTO `g2_Entity` VALUES (5, 1182181411, 0, NULL, 1182181411, 1, 'GalleryUser', NULL); +INSERT INTO `g2_Entity` VALUES (6, 1182181411, 0, NULL, 1183658490, 3, 'GalleryUser', NULL); +INSERT INTO `g2_Entity` VALUES (7, 1182181411, 0, NULL, 1183659564, 68, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (10, 1182182006, 0, NULL, 1182182006, 1, 'GalleryEntity', NULL); +INSERT INTO `g2_Entity` VALUES (11, 1182183794, 0, NULL, 1182447108, 6, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (13, 1182183813, 0, NULL, 1183987357, 10, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (14, 1182183829, 0, NULL, 1182500091, 7, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (15, 1182183888, 0, NULL, 1182499755, 7, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (97, 1182339693, 0, NULL, 1182353544, 3, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (121, 1182422821, 0, NULL, 1183474823, 5, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (122, 1182423232, 1, NULL, 1182934390, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (123, 1182423232, 0, NULL, 1182505226, 10, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (124, 1182423232, 0, NULL, 1182423295, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (125, 1182423232, 0, NULL, 1183107764, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (126, 1182423233, 0, NULL, 1182505237, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (129, 1182423236, 1, NULL, 1182934390, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (130, 1182423236, 0, NULL, 1183107755, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (131, 1182423236, 0, NULL, 1182424081, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (132, 1182423236, 0, NULL, 1183136828, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (133, 1182423239, 1, NULL, 1182934390, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (134, 1182423240, 0, NULL, 1182504606, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (135, 1182423240, 0, NULL, 1182423240, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (136, 1182423240, 0, NULL, 1183107762, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (137, 1182424848, 0, NULL, 1182424848, 1, 'GalleryChildEntity', NULL); +INSERT INTO `g2_Entity` VALUES (138, 1182424848, 0, NULL, 1182424849, 6, 'ThumbnailImage', NULL); +INSERT INTO `g2_Entity` VALUES (140, 1182424849, 0, NULL, 1182424850, 6, 'ThumbnailImage', NULL); +INSERT INTO `g2_Entity` VALUES (142, 1182425131, 0, NULL, 1182512236, 10, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (143, 1182425132, 0, NULL, 1183980004, 8, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (144, 1182447005, 0, NULL, 1183981527, 4, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (146, 1182498980, 0, NULL, 1183474823, 5, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (147, 1182499076, 1, NULL, 1182935502, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (148, 1182499076, 0, NULL, 1182867175, 8, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (149, 1182499076, 0, NULL, 1182505035, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (150, 1182499076, 0, NULL, 1183136867, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (151, 1182499076, 0, NULL, 1182505352, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (152, 1182499080, 1, NULL, 1182935502, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (153, 1182499080, 0, NULL, 1183107773, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (154, 1182499080, 0, NULL, 1183136864, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (155, 1182499080, 0, NULL, 1182499080, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (156, 1182499117, 0, NULL, 1183474823, 4, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (157, 1182499130, 1, NULL, 1182935592, 3, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (158, 1182499130, 0, NULL, 1182867317, 10, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (159, 1182499130, 0, NULL, 1183053417, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (160, 1182499130, 0, NULL, 1183054492, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (161, 1182499130, 0, NULL, 1182505501, 6, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (162, 1182499191, 0, NULL, 1183474823, 4, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (163, 1182499209, 1, NULL, 1182935646, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (164, 1182499209, 0, NULL, 1182867375, 8, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (165, 1182499209, 0, NULL, 1182505524, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (166, 1182499209, 0, NULL, 1182505526, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (167, 1182499210, 0, NULL, 1182505799, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (168, 1182499481, 0, NULL, 1183475058, 6, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (169, 1182499510, 1, NULL, 1182936069, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (170, 1182499511, 0, NULL, 1183054462, 13, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (171, 1182499511, 0, NULL, 1182795071, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (172, 1182499511, 0, NULL, 1183054471, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (173, 1182499511, 0, NULL, 1183054463, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (174, 1182499511, 0, NULL, 1183054463, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (175, 1182499515, 1, NULL, 1182936069, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (176, 1182499515, 0, NULL, 1183054469, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (177, 1182499515, 0, NULL, 1182870267, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (178, 1182499515, 0, NULL, 1182870269, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (179, 1182499519, 1, NULL, 1182936069, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (180, 1182499519, 0, NULL, 1183054470, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (181, 1182499519, 0, NULL, 1182870271, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (182, 1182499519, 0, NULL, 1183395236, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (183, 1182499547, 0, NULL, 1183475058, 5, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (184, 1182499558, 1, NULL, 1182936124, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (185, 1182499559, 0, NULL, 1182870305, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (186, 1182499559, 0, NULL, 1182870273, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (187, 1182499559, 0, NULL, 1182870275, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (188, 1182499559, 0, NULL, 1183136949, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (189, 1182499562, 1, NULL, 1182936124, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (190, 1182499562, 0, NULL, 1183136952, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (191, 1182499562, 0, NULL, 1182870226, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (192, 1182499562, 0, NULL, 1182870227, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (193, 1182499657, 0, NULL, 1183475058, 4, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (194, 1182499755, 0, NULL, 1183475058, 4, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (195, 1182499773, 1, NULL, 1182936217, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (196, 1182499773, 0, NULL, 1183136950, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (197, 1182499773, 0, NULL, 1182795073, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (198, 1182499773, 0, NULL, 1182795075, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (199, 1182499773, 0, NULL, 1183136950, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (200, 1182499800, 1, NULL, 1182936176, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (201, 1182499800, 0, NULL, 1183106281, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (202, 1182499800, 0, NULL, 1182795075, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (203, 1182499800, 0, NULL, 1182795076, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (204, 1182499801, 0, NULL, 1183136924, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (205, 1182499907, 0, NULL, 1183474935, 9, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (206, 1182499921, 1, NULL, 1182935834, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (207, 1182499921, 0, NULL, 1183054462, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (208, 1182499922, 0, NULL, 1182867861, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (209, 1182499922, 0, NULL, 1183138197, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (210, 1182499922, 0, NULL, 1183054462, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (211, 1182499922, 0, NULL, 1183054463, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (212, 1182499925, 1, NULL, 1182935834, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (213, 1182499925, 0, NULL, 1183107953, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (214, 1182499925, 0, NULL, 1183138198, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (215, 1182499925, 0, NULL, 1182499925, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (216, 1182499929, 1, NULL, 1182935834, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (217, 1182499929, 0, NULL, 1183108493, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (218, 1182499929, 0, NULL, 1183136912, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (219, 1182499929, 0, NULL, 1182499929, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (220, 1182499932, 1, NULL, 1182935834, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (221, 1182499933, 0, NULL, 1183107955, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (222, 1182499933, 0, NULL, 1183136914, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (223, 1182499933, 0, NULL, 1182499933, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (224, 1182499964, 1, NULL, 1182935834, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (225, 1182499964, 0, NULL, 1183107952, 7, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (226, 1182499964, 0, NULL, 1182867984, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (227, 1182499964, 0, NULL, 1183138209, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (228, 1182499989, 1, NULL, 1182935834, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (229, 1182499990, 0, NULL, 1183108494, 9, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (230, 1182499990, 0, NULL, 1182867405, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (231, 1182499990, 0, NULL, 1183136910, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (232, 1182500027, 0, NULL, 1183474935, 7, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (233, 1182500041, 1, NULL, 1182935901, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (234, 1182500041, 0, NULL, 1182867911, 10, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (235, 1182500041, 0, NULL, 1182867720, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (236, 1182500041, 0, NULL, 1183138443, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (237, 1182500041, 0, NULL, 1183107798, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (238, 1182500044, 1, NULL, 1182935901, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (239, 1182500044, 0, NULL, 1183107793, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (240, 1182500045, 0, NULL, 1182511678, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (241, 1182500045, 0, NULL, 1183138446, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (242, 1182500048, 1, NULL, 1182935901, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (243, 1182500048, 0, NULL, 1183107794, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (244, 1182500048, 0, NULL, 1183138461, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (245, 1182500048, 0, NULL, 1182500048, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (246, 1182500051, 1, NULL, 1182935901, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (247, 1182500052, 0, NULL, 1183107795, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (248, 1182500052, 0, NULL, 1183138521, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (249, 1182500052, 0, NULL, 1182500052, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (250, 1182500090, 0, NULL, 1183474965, 5, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (251, 1182501445, 1, NULL, 1182935965, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (252, 1182501447, 0, NULL, 1183107782, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (253, 1182501447, 0, NULL, 1182795853, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (254, 1182501447, 0, NULL, 1182795854, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (255, 1182501448, 0, NULL, 1183107783, 5, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (263, 1182795025, 1, 157, 1182936468, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (264, 1182795025, 0, NULL, 1183053403, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (265, 1182795025, 0, NULL, 1183474049, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (266, 1182795025, 0, NULL, 1182936358, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (267, 1182795091, 1, 169, 1182936468, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (268, 1182795091, 0, NULL, 1182795125, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (269, 1182795092, 0, NULL, 1183474047, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (270, 1182795110, 1, 195, 1182936468, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (271, 1182795110, 0, NULL, 1182795125, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (272, 1182795110, 0, NULL, 1182936361, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (273, 1182795113, 1, 200, 1182936468, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (274, 1182795113, 0, NULL, 1182795125, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (275, 1182795113, 0, NULL, 1182936360, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (276, 1182870269, 0, NULL, 1183395234, 3, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (293, 1183053392, 0, NULL, 1183053392, 1, 'GalleryEntity', NULL); +INSERT INTO `g2_Entity` VALUES (298, 1183978565, 0, NULL, 1183981666, 8, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (299, 1183979179, 1, NULL, 1183979179, 1, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (300, 1183979179, 0, NULL, 1183981697, 8, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (301, 1183979179, 0, NULL, 1183979197, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (302, 1183979179, 0, NULL, 1183979992, 6, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (303, 1183979179, 0, NULL, 1183979970, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (304, 1183979560, 1, NULL, 1183979560, 1, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (305, 1183979560, 0, NULL, 1183981607, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (306, 1183979560, 0, NULL, 1183979736, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (307, 1183979565, 1, NULL, 1183979565, 1, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (308, 1183979565, 0, NULL, 1183981607, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (309, 1183979565, 0, NULL, 1183979798, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (310, 1183979572, 1, NULL, 1183979572, 1, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (311, 1183979572, 0, NULL, 1183981607, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (312, 1183979572, 0, NULL, 1183979797, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (313, 1183979576, 1, NULL, 1183979576, 1, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (314, 1183979576, 0, NULL, 1183981608, 4, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (315, 1183979576, 0, NULL, 1183979737, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (316, 1183987357, 0, NULL, 1183987775, 7, 'GalleryAlbumItem', NULL); +INSERT INTO `g2_Entity` VALUES (317, 1183987473, 1, NULL, 1183987737, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (318, 1183987473, 0, NULL, 1183987473, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (319, 1183987473, 0, NULL, 1183987583, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (320, 1183987473, 0, NULL, 1183987473, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (321, 1183987473, 0, NULL, 1183987636, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (322, 1183987496, 1, NULL, 1183987737, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (323, 1183987496, 0, NULL, 1183987497, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (324, 1183987496, 0, NULL, 1183987583, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (325, 1183987496, 0, NULL, 1183987496, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (326, 1183987523, 1, NULL, 1183987737, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (327, 1183987524, 0, NULL, 1183987524, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (328, 1183987524, 0, NULL, 1183987589, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (329, 1183987524, 0, NULL, 1183987524, 1, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (330, 1183987550, 1, NULL, 1183987737, 2, 'GalleryPhotoItem', NULL); +INSERT INTO `g2_Entity` VALUES (331, 1183987550, 0, NULL, 1183987550, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (332, 1183987550, 0, NULL, 1183987588, 2, 'GalleryDerivativeImage', NULL); +INSERT INTO `g2_Entity` VALUES (333, 1183987550, 0, NULL, 1183987550, 1, 'GalleryDerivativeImage', NULL); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_ExifPropertiesMap` +-- + +DROP TABLE IF EXISTS `g2_ExifPropertiesMap`; +CREATE TABLE `g2_ExifPropertiesMap` ( + `g_property` varchar(128) default NULL, + `g_viewMode` int(11) default NULL, + `g_sequence` int(11) default NULL, + UNIQUE KEY `g_property` (`g_property`,`g_viewMode`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_ExifPropertiesMap` +-- + +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Make', 1, 0); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Model', 1, 1); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ApertureValue', 1, 2); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ColorSpace', 1, 3); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ExposureBiasValue', 1, 4); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ExposureProgram', 1, 5); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Flash', 1, 6); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('FocalLength', 1, 7); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ISO', 1, 8); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('MeteringMode', 1, 9); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ShutterSpeedValue', 1, 10); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('DateTime', 1, 11); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('IPTC/Caption', 1, 12); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('IPTC/CopyrightNotice', 1, 13); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Make', 2, 0); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Model', 2, 1); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ApertureValue', 2, 2); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ColorSpace', 2, 3); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ExposureBiasValue', 2, 4); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ExposureProgram', 2, 5); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Flash', 2, 6); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('FocalLength', 2, 7); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ISO', 2, 8); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('MeteringMode', 2, 9); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ShutterSpeedValue', 2, 10); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('DateTime', 2, 11); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('IPTC/Caption', 2, 12); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('IPTC/CopyrightNotice', 2, 13); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('IPTC/Keywords', 2, 14); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ImageType', 2, 15); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Orientation', 2, 16); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('PhotoshopSettings', 2, 17); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ResolutionUnit', 2, 18); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('xResolution', 2, 19); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('yResolution', 2, 20); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Compression', 2, 21); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('BrightnessValue', 2, 22); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Contrast', 2, 23); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('ExposureMode', 2, 24); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('FlashEnergy', 2, 25); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Saturation', 2, 26); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('SceneType', 2, 27); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('Sharpness', 2, 28); +INSERT INTO `g2_ExifPropertiesMap` VALUES ('SubjectDistance', 2, 29); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_ExternalIdMap` +-- + +DROP TABLE IF EXISTS `g2_ExternalIdMap`; +CREATE TABLE `g2_ExternalIdMap` ( + `g_externalId` varchar(128) NOT NULL, + `g_entityType` varchar(32) NOT NULL, + `g_entityId` int(11) NOT NULL, + PRIMARY KEY (`g_externalId`,`g_entityType`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_ExternalIdMap` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_FactoryMap` +-- + +DROP TABLE IF EXISTS `g2_FactoryMap`; +CREATE TABLE `g2_FactoryMap` ( + `g_classType` varchar(128) default NULL, + `g_className` varchar(128) default NULL, + `g_implId` varchar(128) default NULL, + `g_implPath` varchar(128) default NULL, + `g_implModuleId` varchar(128) default NULL, + `g_hints` varchar(255) default NULL, + `g_orderWeight` varchar(255) default NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_FactoryMap` +-- + +INSERT INTO `g2_FactoryMap` VALUES ('IconsInterface_1_0', 'IconsImpl', 'Icons', 'modules/icons/classes/IconsImpl.class', 'icons', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('SlideshowInterface_1_0', 'SlideshowImpl', 'Slideshow', 'modules/slideshow/classes/SlideshowImpl.class', 'slideshow', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryToolkit', 'GdToolkit', 'Gd', 'modules/gd/classes/GdToolkit.class', 'gd', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddFromWeb', 'ItemAddFromWeb', 'modules/itemadd/ItemAddFromWeb.inc', 'itemadd', 'N;', '3'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddFromServer', 'ItemAddFromServer', 'modules/itemadd/ItemAddFromServer.inc', 'itemadd', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryLinkItem', 'GalleryLinkItem', 'modules/linkitem/classes/GalleryLinkItem.class', 'linkitem', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddLinkItem', 'ItemAddLinkItem', 'modules/linkitem/ItemAddLinkItem.inc', 'linkitem', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditOption', 'LinkItemOption', 'LinkItemOption', 'modules/linkitem/LinkItemOption.inc', 'linkitem', 'a:1:{i:0;s:12:"itemedititem";}', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryToolkit', 'LinkItemToolkit', 'LinkItemToolkit', 'modules/linkitem/classes/LinkItemToolkit.class', 'linkitem', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ImageFrameInterface_1_1', 'ImageFrameImpl', 'ImageFrame', 'modules/imageframe/classes/ImageFrameImpl.class', 'imageframe', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddUploadApplet', 'ItemAddUploadApplet', 'modules/uploadapplet/ItemAddUploadApplet.inc', 'uploadapplet', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryAuthPlugin', 'HttpAuthPlugin', 'HttpAuthPlugin', 'modules/httpauth/classes/HttpAuthPlugin.class', 'httpauth', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('HttpAuthInterface_1_0', 'HttpAuthHelper', 'HttpAuthInterface', 'modules/httpauth/classes/HttpAuthHelper.class', 'httpauth', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'ThumbnailImage', 'ThumbnailImage', 'modules/thumbnail/classes/ThumbnailImage.class', 'thumbnail', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryToolkit', 'ThumbnailToolkit', 'Thumbnail', 'modules/thumbnail/classes/ThumbnailToolkit.class', 'thumbnail', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditOption', 'CustomThumbnailOption', 'CustomThumbnailOption', 'modules/thumbnail/CustomThumbnailOption.inc', 'thumbnail', 'a:1:{i:0;s:12:"itemedititem";}', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'ThumbnailImage', 'ThumbnailImage', 'modules/thumbnail/classes/ThumbnailImage.class', 'thumbnail', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryToolkit', 'ThumbnailToolkit', 'Thumbnail', 'modules/thumbnail/classes/ThumbnailToolkit.class', 'thumbnail', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditOption', 'CustomThumbnailOption', 'CustomThumbnailOption', 'modules/thumbnail/CustomThumbnailOption.inc', 'thumbnail', 'a:1:{i:0;s:12:"itemedititem";}', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'ThumbnailImage', 'ThumbnailImage', 'modules/thumbnail/classes/ThumbnailImage.class', 'thumbnail', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryToolkit', 'ThumbnailToolkit', 'Thumbnail', 'modules/thumbnail/classes/ThumbnailToolkit.class', 'thumbnail', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditOption', 'CustomThumbnailOption', 'CustomThumbnailOption', 'modules/thumbnail/CustomThumbnailOption.inc', 'thumbnail', 'a:1:{i:0;s:12:"itemedititem";}', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryEntity', 'GalleryEntity', 'modules/core/classes/GalleryEntity.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryChildEntity', 'GalleryChildEntity', 'modules/core/classes/GalleryChildEntity.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryAlbumItem', 'GalleryAlbumItem', 'modules/core/classes/GalleryAlbumItem.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryUser', 'GalleryUser', 'modules/core/classes/GalleryUser.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryGroup', 'GalleryGroup', 'modules/core/classes/GalleryGroup.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryDerivative', 'GalleryDerivative', 'modules/core/classes/GalleryDerivative.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryDerivativeImage', 'GalleryDerivativeImage', 'modules/core/classes/GalleryDerivativeImage.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryDerivative', 'GalleryDerivativeImage', 'GalleryDerivativeImage', 'modules/core/classes/GalleryDerivativeImage.class', 'core', 'a:1:{i:0;s:1:"*";}', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryMovieItem', 'GalleryMovieItem', 'modules/core/classes/GalleryMovieItem.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryAnimationItem', 'GalleryAnimationItem', 'modules/core/classes/GalleryAnimationItem.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryPhotoItem', 'GalleryPhotoItem', 'modules/core/classes/GalleryPhotoItem.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryUnknownItem', 'GalleryUnknownItem', 'modules/core/classes/GalleryUnknownItem.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryItem', 'GalleryPhotoItem', 'GalleryPhotoItem', 'modules/core/classes/GalleryPhotoItem.class', 'core', 'a:2:{i:0;s:7:"image/*";i:1;s:21:"application/photoshop";}', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryItem', 'GalleryMovieItem', 'GalleryMovieItem', 'modules/core/classes/GalleryMovieItem.class', 'core', 'a:1:{i:0;s:7:"video/*";}', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryItem', 'GalleryAnimationItem', 'GalleryAnimationItem', 'modules/core/classes/GalleryAnimationItem.class', 'core', 'a:2:{i:0;s:22:"application/x-director";i:1;s:29:"application/x-shockwave-flash";}', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryItem', 'GalleryUnknownItem', 'GalleryUnknownItem', 'modules/core/classes/GalleryUnknownItem.class', 'core', 'a:1:{i:0;s:1:"*";}', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryDynamicAlbum', 'GalleryDynamicAlbum', 'GalleryDynamicAlbum', 'modules/core/classes/GalleryDynamicAlbum.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GallerySearchInterface_1_0', 'GalleryCoreSearch', 'GalleryCoreSearch', 'modules/core/classes/GalleryCoreSearch.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditItem', 'ItemEditItem', 'modules/core/ItemEditItem.inc', 'core', 'N;', '1'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditAnimation', 'ItemEditAnimation', 'modules/core/ItemEditAnimation.inc', 'core', 'N;', '2'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditMovie', 'ItemEditMovie', 'modules/core/ItemEditMovie.inc', 'core', 'N;', '2'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditAlbum', 'ItemEditAlbum', 'modules/core/ItemEditAlbum.inc', 'core', 'N;', '2'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditTheme', 'ItemEditTheme', 'modules/core/ItemEditTheme.inc', 'core', 'N;', '3'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditPhoto', 'ItemEditPhoto', 'modules/core/ItemEditPhoto.inc', 'core', 'N;', '2'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditRotateAndScalePhoto', 'ItemEditRotateAndScalePhoto', 'modules/core/ItemEditRotateAndScalePhoto.inc', 'core', 'N;', '3'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditPlugin', 'ItemEditPhotoThumbnail', 'ItemEditPhotoThumbnail', 'modules/core/ItemEditPhotoThumbnail.inc', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddFromBrowser', 'ItemAddFromBrowser', 'modules/core/ItemAddFromBrowser.inc', 'core', 'N;', '2'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddOption', 'CreateThumbnailOption', 'CreateThumbnailOption', 'modules/core/CreateThumbnailOption.inc', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'OptimizeDatabaseTask', 'OptimizeDatabaseTask', 'modules/core/classes/OptimizeDatabaseTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'FlushTemplatesTask', 'FlushTemplatesTask', 'modules/core/classes/FlushTemplatesTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'FlushDatabaseCacheTask', 'FlushDatabaseCacheTask', 'modules/core/classes/FlushDatabaseCacheTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'BuildDerivativesTask', 'BuildDerivativesTask', 'modules/core/classes/BuildDerivativesTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'ResetViewCountsTask', 'ResetViewCountsTask', 'modules/core/classes/ResetViewCountsTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'SystemInfoTask', 'SystemInfoTask', 'modules/core/classes/SystemInfoTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'SetOriginationTimestampTask', 'SetOriginationTimestampTask', 'modules/core/classes/SetOriginationTimestampTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'DeleteSessionsTask', 'DeleteSessionsTask', 'modules/core/classes/DeleteSessionsTask.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'ConvertDatabaseToUtf8Task', 'ConvertDatabaseToUtf8Task', 'modules/core/classes/ConvertDatabaseToUtf8Task.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('CaptchaAdminOption', 'CoreCaptchaAdminOption', 'CoreCaptchaAdminOption', 'modules/core/classes/CoreCaptchaAdminOption.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryAuthPlugin', 'SessionAuthPlugin', 'SessionAuthPlugin', 'modules/core/classes/GallerySession.class', 'core', 'N;', '4'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryEntity', 'GalleryComment', 'GalleryComment', 'modules/comment/classes/GalleryComment.class', 'comment', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GallerySearchInterface_1_0', 'GalleryCommentSearch', 'comment', 'modules/comment/classes/GalleryCommentSearch.class', 'comment', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('CaptchaAdminOption', 'CommentCaptchaAdminOption', 'CommentCaptchaAdminOption', 'modules/comment/classes/CommentCaptchaAdminOption.class', 'comment', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ExifInterface_1_0', 'ExifExtractor', 'Exif', 'modules/exif/classes/ExifExtractor.class', 'exif', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryToolkit', 'ExifToolkit', 'Exif', 'modules/exif/classes/ExifToolkit.class', 'exif', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddOption', 'ExifDescriptionOption', 'ExifDescriptionOption', 'modules/exif/ExifDescriptionOption.inc', 'exif', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemEditOption', 'RatingItemEdit', 'RatingItemEdit', 'modules/rating/RatingItemEdit.inc', 'rating', 'a:1:{i:0;s:13:"itemeditalbum";}', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GallerySortInterface_1_2', 'RatingSortOrder', 'RatingSortOrder', 'modules/rating/classes/RatingSortOrder.class', 'rating', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('CartPluginInterface_1_0', 'ShutterflyCartPlugin', 'shutterfly', 'modules/shutterfly/classes/ShutterflyCartPlugin.class', 'shutterfly', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddPublishXp', 'ItemAddPublishXp', 'modules/publishxp/ItemAddPublishXp.inc', 'publishxp', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('ItemAddPlugin', 'ItemAddPublishXp', 'ItemAddPublishXp', 'modules/publishxp/ItemAddPublishXp.inc', 'publishxp', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('GalleryUrlGenerator', 'ModRewriteUrlGenerator', 'ModRewriteUrlGenerator', 'modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class', 'rewrite', 'N;', '2'); +INSERT INTO `g2_FactoryMap` VALUES ('MaintenanceTask', 'RewriteCheckConflictTask', 'RewriteCheckConflictTask', 'modules/rewrite/classes/RewriteCheckConflictTask.class', 'rewrite', 'N;', '5'); +INSERT INTO `g2_FactoryMap` VALUES ('RewriteApi', 'RewriteApi', 'RewriteApi', 'modules/rewrite/classes/RewriteApi.class', 'rewrite', 'N;', '5'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_FailedLoginsMap` +-- + +DROP TABLE IF EXISTS `g2_FailedLoginsMap`; +CREATE TABLE `g2_FailedLoginsMap` ( + `g_userName` varchar(32) NOT NULL, + `g_count` int(11) NOT NULL, + `g_lastAttempt` int(11) NOT NULL, + PRIMARY KEY (`g_userName`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_FailedLoginsMap` +-- + +INSERT INTO `g2_FailedLoginsMap` VALUES ('admin', 4, 1182364688); +INSERT INTO `g2_FailedLoginsMap` VALUES ('Administrator', 2, 1182182104); +INSERT INTO `g2_FailedLoginsMap` VALUES ('guest', 1, 1182882302); +INSERT INTO `g2_FailedLoginsMap` VALUES ('USERNAME', 10, 1183659035); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_FileSystemEntity` +-- + +DROP TABLE IF EXISTS `g2_FileSystemEntity`; +CREATE TABLE `g2_FileSystemEntity` ( + `g_id` int(11) NOT NULL, + `g_pathComponent` varchar(128) default NULL, + PRIMARY KEY (`g_id`), + KEY `g2_FileSystemEntity_3406` (`g_pathComponent`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_FileSystemEntity` +-- + +INSERT INTO `g2_FileSystemEntity` VALUES (7, NULL); +INSERT INTO `g2_FileSystemEntity` VALUES (317, '1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (299, '2.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (322, '2.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (304, '3.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (326, '3.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (307, '4.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (330, '4.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (310, '5.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (313, '6.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (13, 'actual'); +INSERT INTO `g2_FileSystemEntity` VALUES (200, 'ADM_CLAS_23.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (273, 'ADM_CLAS_23.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (189, 'ADM_CLAS_25.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (184, 'ADM_CLAS_25_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (195, 'ADM_CLAS_26_mod.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (270, 'ADM_CLAS_26_mod.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (179, 'ADM_CLAS_28.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (169, 'ADM_CLAS_28_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (267, 'ADM_CLAS_28_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (175, 'ADM_CLAS_28_2.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (157, 'ADM_MOD_15_mod.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (263, 'ADM_MOD_15_mod.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (122, 'ADM_MOD_16_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (129, 'ADM_MOD_16_1_mod.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (133, 'ADM_MOD_16_2.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (163, 'ADM_MOD_17.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (147, 'ADM_MOD_20_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (152, 'ADM_MOD_20_2.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (206, 'ADM_VANG_01_mod.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (216, 'ADM_VANG_02.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (212, 'ADM_VANG_02_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (220, 'ADM_VANG_03.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (224, 'ADM_VANG_07.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (251, 'ADM_VANG_08.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (228, 'ADM_VANG_09_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (233, 'ADM_VANG_10_1.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (238, 'ADM_VANG_10_3.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (242, 'ADM_VANG_10_5.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (246, 'ADM_VANG_10_6.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (168, 'antares'); +INSERT INTO `g2_FileSystemEntity` VALUES (156, 'argo'); +INSERT INTO `g2_FileSystemEntity` VALUES (250, 'argo'); +INSERT INTO `g2_FileSystemEntity` VALUES (11, 'armarios'); +INSERT INTO `g2_FileSystemEntity` VALUES (144, 'catalogo'); +INSERT INTO `g2_FileSystemEntity` VALUES (97, 'contacto'); +INSERT INTO `g2_FileSystemEntity` VALUES (15, 'contemporaneo'); +INSERT INTO `g2_FileSystemEntity` VALUES (162, 'cronos'); +INSERT INTO `g2_FileSystemEntity` VALUES (194, 'cronos'); +INSERT INTO `g2_FileSystemEntity` VALUES (138, 'G2audio.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (140, 'G2video.jpg'); +INSERT INTO `g2_FileSystemEntity` VALUES (183, 'hidra'); +INSERT INTO `g2_FileSystemEntity` VALUES (193, 'lira'); +INSERT INTO `g2_FileSystemEntity` VALUES (121, 'perseo'); +INSERT INTO `g2_FileSystemEntity` VALUES (316, 'style'); +INSERT INTO `g2_FileSystemEntity` VALUES (146, 'stylo'); +INSERT INTO `g2_FileSystemEntity` VALUES (205, 'stylo'); +INSERT INTO `g2_FileSystemEntity` VALUES (232, 'teseo'); +INSERT INTO `g2_FileSystemEntity` VALUES (14, 'vanguardia'); +INSERT INTO `g2_FileSystemEntity` VALUES (298, 'vestidores'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Group` +-- + +DROP TABLE IF EXISTS `g2_Group`; +CREATE TABLE `g2_Group` ( + `g_id` int(11) NOT NULL, + `g_groupType` int(11) NOT NULL, + `g_groupName` varchar(128) default NULL, + PRIMARY KEY (`g_id`), + UNIQUE KEY `g_groupName` (`g_groupName`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Group` +-- + +INSERT INTO `g2_Group` VALUES (2, 2, 'Usuarios Registrados'); +INSERT INTO `g2_Group` VALUES (3, 3, 'Administradores del Sitio'); +INSERT INTO `g2_Group` VALUES (4, 4, 'Todos'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Item` +-- + +DROP TABLE IF EXISTS `g2_Item`; +CREATE TABLE `g2_Item` ( + `g_id` int(11) NOT NULL, + `g_canContainChildren` int(1) NOT NULL, + `g_description` text, + `g_keywords` varchar(255) default NULL, + `g_ownerId` int(11) NOT NULL, + `g_renderer` varchar(128) default NULL, + `g_summary` varchar(255) default NULL, + `g_title` varchar(128) default NULL, + `g_viewedSinceTimestamp` int(11) NOT NULL, + `g_originationTimestamp` int(11) NOT NULL, + PRIMARY KEY (`g_id`), + KEY `g2_Item_99070` (`g_keywords`), + KEY `g2_Item_21573` (`g_ownerId`), + KEY `g2_Item_54147` (`g_summary`), + KEY `g2_Item_90059` (`g_title`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Item` +-- + +INSERT INTO `g2_Item` VALUES (7, 1, NULL, NULL, 6, NULL, NULL, 'Inicio', 1182952112, 1182181411); +INSERT INTO `g2_Item` VALUES (11, 1, '', '', 6, NULL, '', 'Armarios', 1182952112, 1182183795); +INSERT INTO `g2_Item` VALUES (13, 1, NULL, NULL, 6, NULL, NULL, 'Armarios Actuales', 1182952112, 1182183813); +INSERT INTO `g2_Item` VALUES (14, 1, NULL, NULL, 6, NULL, NULL, 'Armarios Vanguardistas', 1182952112, 1182183829); +INSERT INTO `g2_Item` VALUES (15, 1, NULL, NULL, 6, NULL, NULL, 'Armarios Contemporáneos', 1182952112, 1182183888); +INSERT INTO `g2_Item` VALUES (97, 1, NULL, NULL, 6, NULL, NULL, 'Contacto', 1182952112, 1182339693); +INSERT INTO `g2_Item` VALUES (121, 1, '', '', 6, NULL, '', 'Serie Perseo', 1182952112, 1182422821); +INSERT INTO `g2_Item` VALUES (122, 0, 'Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco', '', 6, NULL, 'Serie Perseo / Puertas correderas', 'ADM_MOD_16.1', 1182952112, 1182423232); +INSERT INTO `g2_Item` VALUES (129, 0, 'Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco', '', 6, NULL, 'Serie Perseo / Puertas correderas', 'ADM_MOD_16.1.mod', 1182952112, 1182423236); +INSERT INTO `g2_Item` VALUES (133, 0, 'Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco', '', 6, NULL, 'Serie Perseo / Puertas correderas', 'ADM_MOD_16.2', 1182952112, 1182423239); +INSERT INTO `g2_Item` VALUES (144, 1, '', '', 6, NULL, '', 'Catálogo', 1182952112, 1182447005); +INSERT INTO `g2_Item` VALUES (146, 1, '', '', 6, NULL, '', 'Serie Stylo', 1182952112, 1182498980); +INSERT INTO `g2_Item` VALUES (147, 0, 'Remates y Perfil: Lacado Hueso / Paneles Estriados Lacado Hueso', '', 6, NULL, 'Serie Stylo', 'ADM_MOD_20.1', 1182952112, 1182499076); +INSERT INTO `g2_Item` VALUES (152, 0, 'Remates y Perfil: Lacado Hueso / Paneles Estriados Lacado Hueso', '', 6, NULL, 'Serie Stylo', 'ADM_MOD_20.2', 1182952112, 1182499080); +INSERT INTO `g2_Item` VALUES (156, 1, '', '', 6, NULL, '', 'Serie Argo', 1182952112, 1182499117); +INSERT INTO `g2_Item` VALUES (157, 0, 'Remates: Lacado Gris / Paneles Estriado Lacado Gris', '', 6, NULL, 'Serie ARGO', 'ADM_MOD_15.mod', 1182952112, 1182499130); +INSERT INTO `g2_Item` VALUES (162, 1, '', '', 6, NULL, '', 'Serie Cronos', 1182952112, 1182499191); +INSERT INTO `g2_Item` VALUES (163, 0, 'Remates y Perfil: Roble Blanco Barnizado / Paneles: Melamina Arena y Cristal Lacado Blanco', '', 6, NULL, 'Serie Cronos', 'ADM_MOD_17', 1182952112, 1182499209); +INSERT INTO `g2_Item` VALUES (168, 1, '', '', 6, NULL, '', 'Serie Antares', 1182952112, 1182499481); +INSERT INTO `g2_Item` VALUES (169, 0, 'Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños', '', 6, NULL, 'Serie Antares', 'ADM_CLAS_28.1', 1182952112, 1182499510); +INSERT INTO `g2_Item` VALUES (175, 0, 'Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños', '', 6, NULL, 'Serie Antares', 'ADM_CLAS_28.2', 1182952112, 1182499515); +INSERT INTO `g2_Item` VALUES (179, 0, 'Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños', '', 6, NULL, 'Serie Antares', 'ADM_CLAS_28', 1182952112, 1182499519); +INSERT INTO `g2_Item` VALUES (183, 1, '', '', 6, NULL, '', 'Serie Hidra', 1182952112, 1182499547); +INSERT INTO `g2_Item` VALUES (184, 0, 'Remates y Perfil: Roble Barnizado / Paneles: Melamina Arena', '', 6, NULL, 'Serie Hidra', 'ADM_CLAS_25.1', 1182952112, 1182499558); +INSERT INTO `g2_Item` VALUES (189, 0, 'Remates y Perfil: Roble Barnizado / Paneles: Melamina Arena', '', 6, NULL, 'Serie Hidra', 'ADM_CLAS_25', 1182952112, 1182499562); +INSERT INTO `g2_Item` VALUES (193, 1, '', '', 6, NULL, '', 'Serie Lira', 1182952112, 1182499657); +INSERT INTO `g2_Item` VALUES (194, 1, '', '', 6, NULL, '', 'Serie Cronos', 1182952112, 1182499755); +INSERT INTO `g2_Item` VALUES (195, 0, 'Remates y Perfil: Cerezo Natural Barnizado / Paneles: Cerezo Natural Barnizado y Cristal Transparente con Cortinilla', '', 6, NULL, 'Serie Cronos', 'ADM_CLAS_26.mod', 1182952112, 1182499773); +INSERT INTO `g2_Item` VALUES (200, 0, 'Remates y Perfil: Lacado Blanco / Paneles: Lacado Blanco y Cristal Transparente con Cortinilla y Cruceta', '', 6, NULL, 'Serie Lira', 'ADM_CLAS_23', 1182952112, 1182499800); +INSERT INTO `g2_Item` VALUES (205, 1, '', '', 6, NULL, '', 'Serie Stylo', 1182952112, 1182499907); +INSERT INTO `g2_Item` VALUES (206, 0, 'Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito', '', 6, NULL, 'Serie Stylo', 'ADM_VANG_01.mod', 1182952112, 1182499921); +INSERT INTO `g2_Item` VALUES (212, 0, 'Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito', '', 6, NULL, 'Serie Stylo', 'ADM_VANG_02.1', 1182952112, 1182499925); +INSERT INTO `g2_Item` VALUES (216, 0, 'Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito', '', 6, NULL, 'Serie Stylo', 'ADM_VANG_02', 1182952112, 1182499929); +INSERT INTO `g2_Item` VALUES (220, 0, 'Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito', '', 6, NULL, 'Serie Stylo', 'ADM_VANG_03', 1182952112, 1182499932); +INSERT INTO `g2_Item` VALUES (224, 0, 'Remates y Perfil: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado y Cristal Lacado Negro Mate', '', 6, NULL, 'Serie Stylo', 'ADM_VANG_07', 1182952112, 1182499964); +INSERT INTO `g2_Item` VALUES (228, 0, '', 'Remates y Perfil: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado y Cristal Lacado Blanco Mate', 6, NULL, 'Serie Stylo', 'ADM_VANG_09.1', 1182952112, 1182499989); +INSERT INTO `g2_Item` VALUES (232, 1, '', '', 6, NULL, '', 'Serie Teseo', 1182952112, 1182500027); +INSERT INTO `g2_Item` VALUES (233, 0, 'Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco', '', 6, NULL, 'Serie Teseo', 'ADM_VANG_10.1', 1182952112, 1182500041); +INSERT INTO `g2_Item` VALUES (238, 0, 'Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco', '', 6, NULL, 'Serie Teseo', 'ADM_VANG_10.3', 1182952112, 1182500044); +INSERT INTO `g2_Item` VALUES (242, 0, 'Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco', '', 6, NULL, 'Serie Teseo', 'ADM_VANG_10.5', 1182952112, 1182500048); +INSERT INTO `g2_Item` VALUES (246, 0, 'Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco', '', 6, NULL, 'Serie Teseo', 'ADM_VANG_10.6', 1182952112, 1182500051); +INSERT INTO `g2_Item` VALUES (250, 1, '', '', 6, NULL, '', 'Serie Argo', 1182952112, 1182500090); +INSERT INTO `g2_Item` VALUES (251, 0, 'Remates: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado', '', 6, NULL, 'Serie Argo', 'ADM_VANG_08', 1182952112, 1182501445); +INSERT INTO `g2_Item` VALUES (263, 0, 'Remates: Lacado Gris / Paneles Estriado Lacado Gris', '', 6, NULL, 'Serie Argo', 'ADM_MOD_15.mod', 1182952112, 1182499130); +INSERT INTO `g2_Item` VALUES (267, 0, '', 'Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños', 6, NULL, 'Serie Antares', 'ADM_CLAS_28.1', 1182952112, 1182499510); +INSERT INTO `g2_Item` VALUES (270, 0, 'Remates y Perfil: Cerezo Natural Barnizado / Paneles: Cerezo Natural Barnizado y Cristal Transparente con Cortinilla', '', 6, NULL, 'Serie Cronos', 'ADM_CLAS_26.mod', 1182952112, 1182499773); +INSERT INTO `g2_Item` VALUES (273, 0, 'Remates y Perfil: Lacado Blanco / Paneles: Lacado Blanco y Cristal Transparente con Cortinilla y Cruceta', '', 6, NULL, 'Serie Lira', 'ADM_CLAS_23', 1182952112, 1182499800); +INSERT INTO `g2_Item` VALUES (298, 1, NULL, NULL, 6, NULL, NULL, 'Vestidores', 1183978565, 1183978565); +INSERT INTO `g2_Item` VALUES (299, 0, '', NULL, 6, NULL, '', '2', 1183979179, 1183979179); +INSERT INTO `g2_Item` VALUES (304, 0, '', NULL, 6, NULL, '', '3', 1183979560, 1183979560); +INSERT INTO `g2_Item` VALUES (307, 0, '', NULL, 6, NULL, '', '4', 1183979565, 1183979565); +INSERT INTO `g2_Item` VALUES (310, 0, '', NULL, 6, NULL, '', '5', 1183979572, 1183979572); +INSERT INTO `g2_Item` VALUES (313, 0, '', NULL, 6, NULL, '', '6', 1183979576, 1183979576); +INSERT INTO `g2_Item` VALUES (316, 1, '', '', 6, NULL, '', 'Serie Style', 1183987357, 1183987357); +INSERT INTO `g2_Item` VALUES (317, 0, '', '', 6, NULL, 'Remates: Plata', 'Serie Style / Puertas correderas', 1183987473, 1183987473); +INSERT INTO `g2_Item` VALUES (322, 0, '', '', 6, NULL, 'Remates: Plata', 'Serie Style / Puertas practicables', 1183987496, 1183987496); +INSERT INTO `g2_Item` VALUES (326, 0, '', '', 6, NULL, 'Remates: Plata', 'Serie Style / Puertas correderas', 1183987523, 1183987523); +INSERT INTO `g2_Item` VALUES (330, 0, '', '', 6, NULL, 'Remates: Plata', 'Serie Style / Puertas correderas', 1183987550, 1183987550); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_ItemAttributesMap` +-- + +DROP TABLE IF EXISTS `g2_ItemAttributesMap`; +CREATE TABLE `g2_ItemAttributesMap` ( + `g_itemId` int(11) NOT NULL, + `g_viewCount` int(11) default NULL, + `g_orderWeight` int(11) default NULL, + `g_parentSequence` varchar(255) NOT NULL, + PRIMARY KEY (`g_itemId`), + KEY `g2_ItemAttributesMap_95270` (`g_parentSequence`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_ItemAttributesMap` +-- + +INSERT INTO `g2_ItemAttributesMap` VALUES (7, 45, 0, ''); +INSERT INTO `g2_ItemAttributesMap` VALUES (11, 18, 1000, '7/144/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (13, 15, 1000, '7/144/11/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (14, 5, 1000, '7/144/11/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (15, 4, 2000, '7/144/11/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (97, 12, 6000, '7/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (121, 8, 1000, '7/144/11/13/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (122, 0, 2000, '7/144/11/13/121/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (129, 0, 1000, '7/144/11/13/121/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (133, 0, 3000, '7/144/11/13/121/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (144, 2, 12000, '7/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (146, 5, 2000, '7/144/11/13/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (147, 0, 1000, '7/144/11/13/146/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (152, 0, 2000, '7/144/11/13/146/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (156, 8, 3000, '7/144/11/13/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (157, 1, 1000, '7/144/11/13/156/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (162, 1, 4000, '7/144/11/13/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (163, 0, 1000, '7/144/11/13/162/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (168, 4, 1000, '7/144/11/15/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (169, 1, 1000, '7/144/11/15/168/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (175, 0, 2000, '7/144/11/15/168/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (179, 0, 3000, '7/144/11/15/168/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (183, 1, 2000, '7/144/11/15/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (184, 0, 1000, '7/144/11/15/183/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (189, 0, 2000, '7/144/11/15/183/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (193, 2, 3000, '7/144/11/15/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (194, 3, 4000, '7/144/11/15/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (195, 0, 1000, '7/144/11/15/194/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (200, 0, 1000, '7/144/11/15/193/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (205, 3, 1000, '7/144/11/14/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (206, 0, 1000, '7/144/11/14/205/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (212, 0, 2000, '7/144/11/14/205/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (216, 0, 4000, '7/144/11/14/205/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (220, 0, 6000, '7/144/11/14/205/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (224, 0, 3000, '7/144/11/14/205/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (228, 0, 5000, '7/144/11/14/205/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (232, 2, 2000, '7/144/11/14/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (233, 0, 1000, '7/144/11/14/232/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (238, 0, 2000, '7/144/11/14/232/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (242, 0, 3000, '7/144/11/14/232/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (246, 0, 4000, '7/144/11/14/232/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (250, 1, 3000, '7/144/11/14/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (251, 0, 1000, '7/144/11/14/250/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (263, 0, 13000, '7/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (267, 1, 14000, '7/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (270, 0, 15000, '7/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (273, 0, 16000, '7/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (298, 1, 2000, '7/144/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (299, 1, 1000, '7/144/298/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (304, 0, 2000, '7/144/298/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (307, 0, 3000, '7/144/298/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (310, 0, 4000, '7/144/298/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (313, 0, 5000, '7/144/298/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (316, 1, 5000, '7/144/11/13/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (317, 0, 1000, '7/144/11/13/316/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (322, 0, 2000, '7/144/11/13/316/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (326, 0, 3000, '7/144/11/13/316/'); +INSERT INTO `g2_ItemAttributesMap` VALUES (330, 0, 4000, '7/144/11/13/316/'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_LinkItem` +-- + +DROP TABLE IF EXISTS `g2_LinkItem`; +CREATE TABLE `g2_LinkItem` ( + `g_id` int(11) NOT NULL, + `g_link` text NOT NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_LinkItem` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Lock` +-- + +DROP TABLE IF EXISTS `g2_Lock`; +CREATE TABLE `g2_Lock` ( + `g_lockId` int(11) default NULL, + `g_readEntityId` int(11) default NULL, + `g_writeEntityId` int(11) default NULL, + `g_freshUntil` int(11) default NULL, + `g_request` int(11) default NULL, + KEY `g2_Lock_11039` (`g_lockId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Lock` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_MaintenanceMap` +-- + +DROP TABLE IF EXISTS `g2_MaintenanceMap`; +CREATE TABLE `g2_MaintenanceMap` ( + `g_runId` int(11) NOT NULL, + `g_taskId` varchar(128) NOT NULL, + `g_timestamp` int(11) default NULL, + `g_success` int(1) default NULL, + `g_details` text, + PRIMARY KEY (`g_runId`), + KEY `g2_MaintenanceMap_21687` (`g_taskId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_MaintenanceMap` +-- + +INSERT INTO `g2_MaintenanceMap` VALUES (99, 'FlushDatabaseCacheTask', 1182350662, 1, 'a:3:{i:0;s:113:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\entity se ha eliminado con éxito";i:1;s:112:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\theme se ha eliminado con éxito";i:2;s:113:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\module se ha eliminado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (100, 'OptimizeDatabaseTask', 1182350664, 1, 'a:1:{i:0;s:44:"La Base de Datos se ha optimizado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (101, 'FlushTemplatesTask', 1182350665, 1, 'a:1:{i:0;s:47:"La cache de plantillas se ha borrado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (102, 'SystemInfoTask', 1182350673, 1, 'a:17:{i:0;s:43:"Versión de Gallery = 2.2.1 núcleo 1.2.0.1";i:1;s:38:"Versión de PHP = 5.1.6 apache2handler";i:2;s:45:"Servidor Web = Apache/2.2.3 (Win32) PHP/5.1.5";i:3;s:65:"Base de Datos = mysqlt 5.0.24a-community-nt, lock.system=database";i:4;s:34:"Herramientas = Gd, LinkItemToolkit";i:5;s:25:"Aceleración = none, none";i:6;s:51:"Sistema Operativo = Windows NT DAVID 5.1 build 2600";i:7;s:25:"Tema por defecto = siriux";i:8;s:20:"gettext = habilitado";i:9;s:25:"Fichero de idioma = es_ES";i:10;s:135:"Buscador = Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; EmbeddedWB 14.52 EmbeddedWB 14,52; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";i:11;s:38:"Filas en la tabla GalleryAccessMap = 9";i:12;s:49:"Filas en la tabla GalleryAccessSubscriberMap = 10";i:13;s:33:"Filas en la tabla GalleryUser = 2";i:14;s:34:"Filas en la tabla GalleryItem = 10";i:15;s:38:"Filas en la tabla GalleryAlbumItem = 6";i:16;s:37:"Filas en la tabla GalleryCacheMap = 0";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (103, 'FlushTemplatesTask', 1182364382, 1, 'a:1:{i:0;s:47:"La cache de plantillas se ha borrado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (104, 'OptimizeDatabaseTask', 1182364394, 1, 'a:1:{i:0;s:44:"La Base de Datos se ha optimizado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (277, 'FlushTemplatesTask', 1182881721, 1, 'a:1:{i:0;s:47:"La cache de plantillas se ha borrado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (278, 'OptimizeDatabaseTask', 1182881722, 1, 'a:1:{i:0;s:44:"La Base de Datos se ha optimizado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (279, 'RewriteCheckConflictTask', 1182881730, 1, 'a:1:{i:0;s:50:"47 elementos chequeados y 0 conflictos encontrados";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (284, 'FlushTemplatesTask', 1182952089, 1, 'a:1:{i:0;s:47:"La cache de plantillas se ha borrado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (285, 'OptimizeDatabaseTask', 1182952090, 1, 'a:1:{i:0;s:44:"La Base de Datos se ha optimizado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (286, 'FlushTemplatesTask', 1182952099, 1, 'a:1:{i:0;s:47:"La cache de plantillas se ha borrado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (287, 'FlushDatabaseCacheTask', 1182952105, 1, 'a:3:{i:0;s:113:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\entity se ha eliminado con éxito";i:1;s:112:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\theme se ha eliminado con éxito";i:2;s:113:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\module se ha eliminado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (288, 'ResetViewCountsTask', 1182952113, 1, 'a:4:{i:0;s:54:"Los contadores de visitas se han reiniciado con éxito";i:1;s:113:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\entity se ha eliminado con éxito";i:2;s:112:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\theme se ha eliminado con éxito";i:3;s:113:"El directorio T:\\Web Abeto Armarios\\Source\\www\\gallery2\\g2data_2e6106f57b\\cache\\module se ha eliminado con éxito";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (289, 'SystemInfoTask', 1182959994, 1, 'a:17:{i:0;s:43:"Versión de Gallery = 2.2.1 núcleo 1.2.0.1";i:1;s:38:"Versión de PHP = 5.1.6 apache2handler";i:2;s:45:"Servidor Web = Apache/2.2.3 (Win32) PHP/5.1.5";i:3;s:65:"Base de Datos = mysqlt 5.0.24a-community-nt, lock.system=database";i:4;s:45:"Herramientas = Gd, LinkItemToolkit, Thumbnail";i:5;s:25:"Aceleración = none, none";i:6;s:51:"Sistema Operativo = Windows NT DAVID 5.1 build 2600";i:7;s:24:"Tema por defecto = abeto";i:8;s:20:"gettext = habilitado";i:9;s:25:"Fichero de idioma = es_ES";i:10;s:101:"Buscador = Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4";i:11;s:38:"Filas en la tabla GalleryAccessMap = 9";i:12;s:49:"Filas en la tabla GalleryAccessSubscriberMap = 49";i:13;s:33:"Filas en la tabla GalleryUser = 2";i:14;s:34:"Filas en la tabla GalleryItem = 47";i:15;s:39:"Filas en la tabla GalleryAlbumItem = 18";i:16;s:37:"Filas en la tabla GalleryCacheMap = 0";}'); +INSERT INTO `g2_MaintenanceMap` VALUES (297, 'OptimizeDatabaseTask', 1183658602, 1, 'a:1:{i:0;s:44:"La Base de Datos se ha optimizado con éxito";}'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_MimeTypeMap` +-- + +DROP TABLE IF EXISTS `g2_MimeTypeMap`; +CREATE TABLE `g2_MimeTypeMap` ( + `g_extension` varchar(32) NOT NULL, + `g_mimeType` varchar(32) NOT NULL, + `g_viewable` int(1) default NULL, + PRIMARY KEY (`g_extension`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_MimeTypeMap` +-- + +INSERT INTO `g2_MimeTypeMap` VALUES ('ai', 'application/postscript', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('aif', 'audio/x-aiff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('aifc', 'audio/x-aiff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('aiff', 'audio/x-aiff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('asc', 'text/plain', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('asf', 'video/x-ms-asf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('asx', 'video/x-ms-asx', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('au', 'audio/basic', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('avi', 'video/x-msvideo', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('bcpio', 'application/x-bcpio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('bin', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('bmp', 'image/bmp', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('cdf', 'application/x-netcdf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('class', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('cpio', 'application/x-cpio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('cpt', 'application/mac-compactpro', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('csh', 'application/x-csh', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('css', 'text/css', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('dcr', 'application/x-director', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('dir', 'application/x-director', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('djv', 'image/vnd.djvu', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('djvu', 'image/vnd.djvu', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('dll', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('dms', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('doc', 'application/msword', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('dvi', 'application/x-dvi', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('dxr', 'application/x-director', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('eps', 'application/postscript', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('etx', 'text/x-setext', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('exe', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ez', 'application/andrew-inset', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('flv', 'video/x-flv', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('gif', 'image/gif', 1); +INSERT INTO `g2_MimeTypeMap` VALUES ('gtar', 'application/x-gtar', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('gz', 'application/x-gzip', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('hdf', 'application/x-hdf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('hqx', 'application/mac-binhex40', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ice', 'x-conference/x-cooltalk', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ief', 'image/ief', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('iges', 'model/iges', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('igs', 'model/iges', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jp2', 'image/jp2', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpe', 'image/jpeg', 1); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpeg', 'image/jpeg', 1); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpf', 'image/jpx', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpg', 'image/jpeg', 1); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpg2', 'image/jp2', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpgcmyk', 'image/jpeg-cmyk', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpgm', 'image/jpgm', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpm', 'image/jpm', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('jpx', 'image/jpx', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('js', 'application/x-javascript', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('kar', 'audio/midi', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('latex', 'application/x-latex', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('lha', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('lzh', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('m3u', 'audio/x-mpegurl', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('man', 'application/x-troff-man', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('me', 'application/x-troff-me', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mesh', 'model/mesh', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mid', 'audio/midi', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('midi', 'audio/midi', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mif', 'application/vnd.mif', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mj2', 'video/mj2', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mjp2', 'video/mj2', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mov', 'video/quicktime', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('movie', 'video/x-sgi-movie', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mp2', 'audio/mpeg', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mp3', 'audio/mpeg', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mp4', 'video/mp4', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mpe', 'video/mpeg', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mpeg', 'video/mpeg', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mpg', 'video/mpeg', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mpga', 'audio/mpeg', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ms', 'application/x-troff-ms', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('msh', 'model/mesh', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('mxu', 'video/vnd.mpegurl', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('nc', 'application/x-netcdf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('oda', 'application/oda', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('pbm', 'image/x-portable-bitmap', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('pcd', 'image/x-photo-cd', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('pdb', 'chemical/x-pdb', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('pdf', 'application/pdf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('pgm', 'image/x-portable-graymap', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('pgn', 'application/x-chess-pgn', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('png', 'image/png', 1); +INSERT INTO `g2_MimeTypeMap` VALUES ('pnm', 'image/x-portable-anymap', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ppm', 'image/x-portable-pixmap', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ppt', 'application/vnd.ms-powerpoint', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ps', 'application/postscript', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('psd', 'application/photoshop', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('qt', 'video/quicktime', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ra', 'audio/x-realaudio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ram', 'audio/x-pn-realaudio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ras', 'image/x-cmu-raster', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('rgb', 'image/x-rgb', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('rm', 'audio/x-pn-realaudio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('roff', 'application/x-troff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('rpm', 'audio/x-pn-realaudio-plugin', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('rtf', 'text/rtf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('rtx', 'text/richtext', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('sgm', 'text/sgml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('sgml', 'text/sgml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('sh', 'application/x-sh', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('shar', 'application/x-shar', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('silo', 'model/mesh', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('sit', 'application/x-stuffit', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('skd', 'application/x-koan', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('skm', 'application/x-koan', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('skp', 'application/x-koan', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('skt', 'application/x-koan', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('smi', 'application/smil', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('smil', 'application/smil', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('snd', 'audio/basic', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('so', 'application/octet-stream', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('spl', 'application/x-futuresplash', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('src', 'application/x-wais-source', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('sv4cpio', 'application/x-sv4cpio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('sv4crc', 'application/x-sv4crc', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('svg', 'image/svg+xml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('swf', 'application/x-shockwave-flash', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('t', 'application/x-troff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tar', 'application/x-tar', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tcl', 'application/x-tcl', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tex', 'application/x-tex', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('texi', 'application/x-texinfo', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('texinfo', 'application/x-texinfo', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tga', 'image/tga', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tif', 'image/tiff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tifcmyk', 'image/tiff-cmyk', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tiff', 'image/tiff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tr', 'application/x-troff', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('tsv', 'text/tab-separated-values', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('txt', 'text/plain', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('ustar', 'application/x-ustar', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('vcd', 'application/x-cdlink', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('vrml', 'model/vrml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('vsd', 'application/vnd.visio', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wav', 'audio/x-wav', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wbmp', 'image/vnd.wap.wbmp', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wbxml', 'application/vnd.wap.wbxml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wma', 'audio/x-ms-wma', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wmf', 'image/wmf', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wml', 'text/vnd.wap.wml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wmlc', 'application/vnd.wap.wmlc', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wmls', 'text/vnd.wap.wmlscript', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wmlsc', 'application/vnd.wap.wmlscriptc', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wmv', 'video/x-ms-wmv', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('wrl', 'model/vrml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('xbm', 'image/x-xbitmap', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('xls', 'application/vnd.ms-excel', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('xpm', 'image/x-xpixmap', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('xsl', 'text/xml', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('xwd', 'image/x-xwindowdump', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('xyz', 'chemical/x-xyz', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('z', 'application/x-compress', 0); +INSERT INTO `g2_MimeTypeMap` VALUES ('zip', 'application/zip', 0); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_MovieItem` +-- + +DROP TABLE IF EXISTS `g2_MovieItem`; +CREATE TABLE `g2_MovieItem` ( + `g_id` int(11) NOT NULL, + `g_width` int(11) default NULL, + `g_height` int(11) default NULL, + `g_duration` int(11) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_MovieItem` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_PermaLinksMap` +-- + +DROP TABLE IF EXISTS `g2_PermaLinksMap`; +CREATE TABLE `g2_PermaLinksMap` ( + `g_aliasName` varchar(128) NOT NULL, + `g_destId` int(11) NOT NULL, + PRIMARY KEY (`g_aliasName`), + KEY `g2_PermalinksMap_84225` (`g_destId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_PermaLinksMap` +-- + +INSERT INTO `g2_PermaLinksMap` VALUES ('contacto', 97); +INSERT INTO `g2_PermaLinksMap` VALUES ('perseo', 121); +INSERT INTO `g2_PermaLinksMap` VALUES ('catalogo', 144); +INSERT INTO `g2_PermaLinksMap` VALUES ('stylo', 146); +INSERT INTO `g2_PermaLinksMap` VALUES ('argo', 156); +INSERT INTO `g2_PermaLinksMap` VALUES ('cronos', 162); +INSERT INTO `g2_PermaLinksMap` VALUES ('antares', 168); +INSERT INTO `g2_PermaLinksMap` VALUES ('hidra', 183); +INSERT INTO `g2_PermaLinksMap` VALUES ('lira', 193); +INSERT INTO `g2_PermaLinksMap` VALUES ('teseo', 232); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_PermissionSetMap` +-- + +DROP TABLE IF EXISTS `g2_PermissionSetMap`; +CREATE TABLE `g2_PermissionSetMap` ( + `g_module` varchar(128) NOT NULL, + `g_permission` varchar(128) NOT NULL, + `g_description` varchar(255) default NULL, + `g_bits` int(11) NOT NULL, + `g_flags` int(11) NOT NULL, + UNIQUE KEY `g_permission` (`g_permission`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_PermissionSetMap` +-- + +INSERT INTO `g2_PermissionSetMap` VALUES ('comment', 'comment.add', '[comment] Add comments', 256, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('comment', 'comment.all', '[comment] All access', 3840, 2); +INSERT INTO `g2_PermissionSetMap` VALUES ('comment', 'comment.delete', '[comment] Delete comments', 1024, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('comment', 'comment.edit', '[comment] Edit comments', 512, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('comment', 'comment.view', '[comment] View comments', 2048, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.addAlbumItem', '[core] Add sub-album', 8, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.addDataItem', '[core] Add sub-item', 16, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.all', 'All access', 2147483647, 3); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.changePermissions', '[core] Change item permissions', 64, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.delete', '[core] Delete item', 128, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.edit', '[core] Edit item', 32, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.view', '[core] View item', 1, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.viewAll', '[core] View all versions', 7, 2); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.viewResizes', '[core] View resized version(s)', 2, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('core', 'core.viewSource', '[core] View original version', 4, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('rating', 'rating.add', '[rating] Add ratings', 4096, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('rating', 'rating.all', '[rating] All access', 12288, 2); +INSERT INTO `g2_PermissionSetMap` VALUES ('rating', 'rating.view', '[rating] View ratings', 8192, 0); +INSERT INTO `g2_PermissionSetMap` VALUES ('shutterfly', 'shutterfly.print', '[shutterfly] Print', 16384, 0); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_PhotoItem` +-- + +DROP TABLE IF EXISTS `g2_PhotoItem`; +CREATE TABLE `g2_PhotoItem` ( + `g_id` int(11) NOT NULL, + `g_width` int(11) default NULL, + `g_height` int(11) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_PhotoItem` +-- + +INSERT INTO `g2_PhotoItem` VALUES (122, 950, 720); +INSERT INTO `g2_PhotoItem` VALUES (129, 950, 720); +INSERT INTO `g2_PhotoItem` VALUES (133, 950, 980); +INSERT INTO `g2_PhotoItem` VALUES (147, 950, 613); +INSERT INTO `g2_PhotoItem` VALUES (152, 950, 949); +INSERT INTO `g2_PhotoItem` VALUES (157, 950, 689); +INSERT INTO `g2_PhotoItem` VALUES (163, 950, 671); +INSERT INTO `g2_PhotoItem` VALUES (169, 936, 635); +INSERT INTO `g2_PhotoItem` VALUES (175, 936, 1338); +INSERT INTO `g2_PhotoItem` VALUES (179, 936, 635); +INSERT INTO `g2_PhotoItem` VALUES (184, 936, 936); +INSERT INTO `g2_PhotoItem` VALUES (189, 936, 784); +INSERT INTO `g2_PhotoItem` VALUES (195, 936, 535); +INSERT INTO `g2_PhotoItem` VALUES (200, 936, 588); +INSERT INTO `g2_PhotoItem` VALUES (206, 936, 544); +INSERT INTO `g2_PhotoItem` VALUES (212, 936, 1093); +INSERT INTO `g2_PhotoItem` VALUES (216, 936, 936); +INSERT INTO `g2_PhotoItem` VALUES (220, 936, 936); +INSERT INTO `g2_PhotoItem` VALUES (224, 936, 474); +INSERT INTO `g2_PhotoItem` VALUES (228, 936, 594); +INSERT INTO `g2_PhotoItem` VALUES (233, 936, 594); +INSERT INTO `g2_PhotoItem` VALUES (238, 936, 936); +INSERT INTO `g2_PhotoItem` VALUES (242, 936, 936); +INSERT INTO `g2_PhotoItem` VALUES (246, 936, 936); +INSERT INTO `g2_PhotoItem` VALUES (251, 936, 598); +INSERT INTO `g2_PhotoItem` VALUES (263, 950, 689); +INSERT INTO `g2_PhotoItem` VALUES (267, 936, 635); +INSERT INTO `g2_PhotoItem` VALUES (270, 936, 535); +INSERT INTO `g2_PhotoItem` VALUES (273, 936, 588); +INSERT INTO `g2_PhotoItem` VALUES (299, 1024, 768); +INSERT INTO `g2_PhotoItem` VALUES (304, 600, 600); +INSERT INTO `g2_PhotoItem` VALUES (307, 600, 600); +INSERT INTO `g2_PhotoItem` VALUES (310, 600, 600); +INSERT INTO `g2_PhotoItem` VALUES (313, 600, 600); +INSERT INTO `g2_PhotoItem` VALUES (317, 800, 838); +INSERT INTO `g2_PhotoItem` VALUES (322, 1024, 704); +INSERT INTO `g2_PhotoItem` VALUES (326, 1024, 636); +INSERT INTO `g2_PhotoItem` VALUES (330, 1024, 611); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_PluginMap` +-- + +DROP TABLE IF EXISTS `g2_PluginMap`; +CREATE TABLE `g2_PluginMap` ( + `g_pluginType` varchar(32) NOT NULL, + `g_pluginId` varchar(32) NOT NULL, + `g_active` int(1) NOT NULL, + PRIMARY KEY (`g_pluginType`,`g_pluginId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_PluginMap` +-- + +INSERT INTO `g2_PluginMap` VALUES ('module', 'comment', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'exif', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'gd', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'httpauth', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'icons', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'imageframe', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'itemadd', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'keyalbum', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'linkitem', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'permalinks', 0); +INSERT INTO `g2_PluginMap` VALUES ('module', 'publishxp', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'rating', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'rearrange', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'replica', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'rewrite', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'search', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'shutterfly', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'sitemap', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'slideshow', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'thumbnail', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'uploadapplet', 1); +INSERT INTO `g2_PluginMap` VALUES ('module', 'webdav', 0); +INSERT INTO `g2_PluginMap` VALUES ('theme', 'abeto', 1); +INSERT INTO `g2_PluginMap` VALUES ('theme', 'siriux', 1); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_PluginPackageMap` +-- + +DROP TABLE IF EXISTS `g2_PluginPackageMap`; +CREATE TABLE `g2_PluginPackageMap` ( + `g_pluginType` varchar(32) NOT NULL, + `g_pluginId` varchar(32) NOT NULL, + `g_packageName` varchar(32) NOT NULL, + `g_packageVersion` varchar(32) NOT NULL, + `g_packageBuild` varchar(32) NOT NULL, + `g_locked` int(1) NOT NULL, + KEY `g2_PluginPackageMap_80596` (`g_pluginType`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_PluginPackageMap` +-- + +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'base', '1.1.3.1', '16513', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-af', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ar', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-bg', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ca', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-cs', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-da', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-de', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-el', '15508', '16475', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-en_GB', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-es_AR', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-es_MX', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-es', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-et', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-eu', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-fa', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-fi', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-fr', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ga', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-he', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-hu', '15508', '16475', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-is', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-it', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ja', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ko', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-lt', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-lv', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-nl', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-no', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-pl', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-pt_BR', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-pt', '15508', '16475', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ro', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-ru', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-sk', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-sr', '15508', '16501', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-sv', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-tr', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-uk', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-vi', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-zh_CN', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'comment', 'lang-zh_TW', '15508', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'base', '1.1.0', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'exif', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'base', '1.1.1', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-et', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'gd', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'httpauth', 'base', '1.0.0', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'httpauth', 'lang-es', '15727', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'base', '1.1.2', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-bg', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'icons', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imageframe', 'base', '1.0.5', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'itemadd', 'base', '1.0.0', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'base', '1.0.0.2', '16513', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-af', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ar', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-bg', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ca', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-cs', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-da', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-de', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-el', '15447', '16475', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-en_GB', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-es_AR', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-es_MX', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-es', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-et', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-eu', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-fi', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-fr', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ga', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-he', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-hu', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-it', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ja', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ko', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-lt', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-nl', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-no', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-pl', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-pt_BR', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-pt', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ro', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-ru', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-sk', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-sl', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-sr', '15447', '16501', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-sv', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-tr', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-uk', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-vi', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-zh_CN', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'keyalbum', 'lang-zh_TW', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'linkitem', 'base', '1.1.2.1', '16636', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'permalinks', 'base', '1.0.8', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'publishxp', 'base', '1.0.7.1', '16119', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'publishxp', 'lang-es', '15578', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'base', '1.0.8', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-af', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-ar', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-ca', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-cs', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-da', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-de', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-en_GB', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-es', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-et', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-eu', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-fi', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-fr', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-he', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-hu', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-it', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-ja', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-ko', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-lt', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-lv', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-nl', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-no', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-pl', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-ro', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-ru', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-sk', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-sl', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-sr', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-sv', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-tr', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-uk', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-vi', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-zh_CN', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rating', 'lang-zh_TW', '15447', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'base', '1.0.5', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-bg', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rearrange', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'replica', 'base', '1.0.0', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rewrite', 'base', '1.1.13.2', '16559', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'rewrite', 'lang-es', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'base', '1.0.5', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-bg', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-et', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'search', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'base', '1.0.7.1', '16636', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-da', '15342', '16607', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-sr', '15342', '16501', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'shutterfly', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'base', '1.0.5', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-af', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-ar', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-bg', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-ca', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-cs', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-da', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-de', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-en_GB', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-es', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-eu', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-fi', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-fr', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-hu', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-is', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-it', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-ja', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-ko', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-lt', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-lv', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-nl', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-no', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-pl', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-pt_BR', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-pt', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-ro', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-ru', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-sk', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-sl', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-sr', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-sv', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-tr', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-uk', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-vi', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-zh_CN', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'slideshow', 'lang-zh_TW', '15945', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'thumbnail', 'base', '1.0.9.1', '16636', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'uploadapplet', 'base', '1.0.7', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'uploadapplet', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'webdav', 'base', '1.0.0.2', '16513', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'base', '1.2.0.4', '16636', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-af', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ar', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-bg', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ca', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-cs', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-da', '16548', '16607', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-de', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-el', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-en_GB', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-es_AR', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-es_MX', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-es', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-et', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-eu', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-fi', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-fr', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ga', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-he', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-hu', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-is', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-it', '16548', '16555', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ja', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ko', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-lt', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-lv', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-nl', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-no', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-pl', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-pt_BR', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-pt', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ro', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-ru', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-sk', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-sl', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-sr', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-sv', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-tr', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-uk', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-vi', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-zh_CN', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'core', 'lang-zh_TW', '16548', '16548', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'base', '1.0.7', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'ffmpeg', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'base', '1.1.1', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'imagemagick', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'thumbpage', 'base', '1.0.5', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'base', '1.0.6', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-bg', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'archiveupload', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'base', '1.1.1', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'netpbm', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'base', '1.1.3', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-es_MX', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-sl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'abeto', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'base', '1.1.3', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-es_MX', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-sl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'siriux', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'base', '1.1.4', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-es_MX', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'matrix', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'base', '1.0.6', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-es_MX', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'floatrix', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'base', '1.1.3', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-el', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-es_MX', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-et', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-sr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-tr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'classic', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'base', '1.1.4.1', '16513', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-af', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-ar', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-ca', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-cs', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-da', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-de', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-en_GB', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-es', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-eu', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-fi', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-fr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-hu', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-is', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-it', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-ja', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-ko', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-lt', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-lv', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-nl', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-no', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-pl', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-ro', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-ru', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-sk', '15407', '16488', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-sr', '15407', '16501', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-sv', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-tr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-uk', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-vi', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-zh_CN', '15407', '16507', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'hybrid', 'lang-zh_TW', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'base', '1.2.3.1', '16513', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-af', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ar', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ca', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-cs', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-da', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-de', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-el', '15342', '16488', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-en_GB', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-es_AR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-es_MX', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-es', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-eu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-fi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-fr', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ga', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-he', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-hu', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-is', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-it', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ja', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ko', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-lt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-lv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-nl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-no', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-pl', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-pt_BR', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-pt', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ro', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-ru', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-sk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-sr', '15342', '16501', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-sv', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-tr', '15342', '16488', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-uk', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-vi', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-zh_CN', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'carbon', 'lang-zh_TW', '15342', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'base', '1.0.7.2', '16513', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-af', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-ar', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-ca', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-cs', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-da', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-de', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-en_GB', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-es', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-eu', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-fi', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-fr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-hu', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-is', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-it', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-ja', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-ko', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-lt', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-lv', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-nl', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-no', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-pl', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-ro', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-ru', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-sk', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-sr', '15407', '16501', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-sv', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-tr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-uk', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-vi', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-zh_CN', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'slider', 'lang-zh_TW', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'base', '1.0.0', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-af', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ar', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ca', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-cs', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-da', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-de', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-el', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-en_GB', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-es_AR', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-es_MX', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-es', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-eu', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-fi', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-fr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ga', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-he', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-hu', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-is', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-it', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ja', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ko', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-lt', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-lv', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-nl', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-no', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-pl', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-pt_BR', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-pt', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ro', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-ru', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-sk', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-sr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-sv', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-tr', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-uk', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-vi', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-zh_CN', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('theme', 'ajaxian', 'lang-zh_TW', '15407', '16040', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'sitemap', 'base', '1.0.3', '16041', 0); +INSERT INTO `g2_PluginPackageMap` VALUES ('module', 'sitemap', 'lang-es', '15342', '16040', 0); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_PluginParameterMap` +-- + +DROP TABLE IF EXISTS `g2_PluginParameterMap`; +CREATE TABLE `g2_PluginParameterMap` ( + `g_pluginType` varchar(32) NOT NULL, + `g_pluginId` varchar(32) NOT NULL, + `g_itemId` int(11) NOT NULL, + `g_parameterName` varchar(128) NOT NULL, + `g_parameterValue` text NOT NULL, + UNIQUE KEY `g_pluginType` (`g_pluginType`,`g_pluginId`,`g_itemId`,`g_parameterName`), + KEY `g2_PluginParameterMap_80596` (`g_pluginType`), + KEY `g2_PluginParameterMap_12808` (`g_pluginType`,`g_pluginId`,`g_itemId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_PluginParameterMap` +-- + +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'archiveupload', 0, 'removeMeta', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'archiveupload', 0, 'unzipPath', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'archiveupload', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'archiveupload', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'archiveupload', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'archiveupload', 0, '_version', '1.0.6'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, 'comments.latest', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, 'comments.show', '10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, 'validation.level', 'HIGH'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, '_callbacks', 'registerEventListeners|getItemLinks|getItemSummaries|getSiteAdminViews|getItemAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, '_requiredCoreApi', '7,5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'comment', 0, '_version', '1.1.3.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'acceleration', 'a:2:{s:5:"guest";a:1:{s:4:"type";s:4:"none";}s:4:"user";a:1:{s:4:"type";s:4:"none";}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'core.repositories', 'a:3:{s:8:"released";i:1;s:12:"experimental";i:1;s:9:"community";i:1;}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'default.language', 'es_ES'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'default.newAlbumsUseDefaults', 'false'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'default.orderBy', 'orderWeight'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'default.orderDirection', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'default.theme', 'abeto'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'exec.beNice', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'exec.expectedStatus', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'format.date', '%x'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'format.datetime', '%c'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'format.time', '%X'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'id.accessListCompacterLock', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'id.adminGroup', '3'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'id.allUserGroup', '2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'id.anonymousUser', '5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'id.everybodyGroup', '4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'id.rootAlbum', '7'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'language.useBrowserPref', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'lock.system', 'database'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'misc.markup', 'bbcode'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'permissions.directory', '0755'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'permissions.file', '0644'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'repository.updateTime', '1183658620'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'session.inactivityTimeout', '604800'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'session.lifetime', '1814400'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'setup.login.attempts', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, 'validation.level', 'MEDIUM'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, '_callbacks', 'registerEventListeners|getItemLinks|getSystemLinks|getSiteAdminViews|getUserAdminViews|getItemAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, '_requiredCoreApi', '7,18'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, '_requiredModuleApi', '3,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'core', 0, '_version', '1.2.0.4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'exif', 0, 'addOption', '4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'exif', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'exif', 0, '_requiredCoreApi', '7,10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'exif', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'exif', 0, '_version', '1.1.0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'ffmpeg', 0, 'path', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'ffmpeg', 0, 'useWatermark', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'ffmpeg', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'ffmpeg', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'ffmpeg', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'ffmpeg', 0, '_version', '1.0.7'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'gd', 0, 'jpegQuality', '75'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'gd', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'gd', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'gd', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'gd', 0, '_version', '1.1.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, 'authName', 'Gallery'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, 'authtypePattern', '//'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, 'httpAuthPlugin', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, 'useGlobally', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, 'usernamePattern', '/^(.+\\\\)?([^\\\\@]+)(@.+)?$/'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, 'usernameReplace', '$2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, '_callbacks', 'getSiteAdminViews|registerEventListeners'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, '_requiredCoreApi', '7,15'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, '_requiredModuleApi', '3,5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'httpauth', 0, '_version', '1.0.0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'icons', 0, 'iconpack', 'silk'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'icons', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'icons', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'icons', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'icons', 0, '_version', '1.1.2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imageframe', 0, '_callbacks', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imageframe', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imageframe', 0, '_requiredModuleApi', '3,2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imageframe', 0, '_version', '1.0.5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, 'cmykSupport', 'none'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, 'jpegQuality', '75'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, 'path', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, 'versionOk', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'imagemagick', 0, '_version', '1.1.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'itemadd', 0, 'fromserver', 'on'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'itemadd', 0, 'fromweb', 'admin'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'itemadd', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'itemadd', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'itemadd', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'itemadd', 0, '_version', '1.0.0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'description', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'orderBy', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'orderDirection', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'split', ';,'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'summaryLinks', 'all'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'themeId', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, 'themeSettingsId', '10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, '_callbacks', 'getSiteAdminViews|getItemSummaries'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, '_requiredCoreApi', '7,10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, '_requiredModuleApi', '3,2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'keyalbum', 0, '_version', '1.0.0.2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, 'arrowWatermark', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, 'snapshotExec', 'khtml2png'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, 'urlSnapshot', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, '_callbacks', 'registerEventListeners|getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'linkitem', 0, '_version', '1.1.2.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, 'bmptopnm', 'bmptopnm'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, 'jpegQuality', '75'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, 'path', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, 'pnmcomp', 'pnmcomp'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, 'pnmtojpeg', 'pnmtojpeg'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'netpbm', 0, '_version', '1.1.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'permalinks', 0, 'autoPermalink', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'permalinks', 0, '_callbacks', 'registerEventListeners|getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'permalinks', 0, '_requiredCoreApi', '7,10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'permalinks', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'permalinks', 0, '_version', '1.0.8'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'publishxp', 0, '_callbacks', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'publishxp', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'publishxp', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'publishxp', 0, '_version', '1.0.7.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'allowAlbumRating', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'description', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'minLimit', '2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'orderBy', 'RatingSortOrder'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'orderDirection', 'desc'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'themeId', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, 'themeSettingsId', '293'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, '_callbacks', 'getSiteAdminViews|getItemSummaries|registerEventListeners'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, '_requiredCoreApi', '7,10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, '_requiredModuleApi', '3,3'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 0, '_version', '1.0.8'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 144, 'enabled', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rating', 298, 'enabled', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rearrange', 0, '_callbacks', 'getItemLinks|getItemAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rearrange', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rearrange', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rearrange', 0, '_version', '1.0.5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'replica', 0, '_callbacks', 'getItemLinks|getItemAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'replica', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'replica', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'replica', 0, '_version', '1.0.0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'accessList', 'a:0:{}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'activeRules', 'a:2:{s:7:"rewrite";a:2:{i:0;a:1:{s:7:"pattern";s:8:"v/%path%";}i:1;a:1:{s:7:"pattern";s:36:"d/%itemId%-%serialNumber%/%fileName%";}}s:7:"sitemap";a:1:{i:0;a:1:{s:7:"pattern";s:11:"sitemap.xml";}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'allowEmptyReferer', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'history.webdav', 'a:2:{s:7:"connect";a:1:{s:7:"pattern";s:7:"w%path%";}s:8:"davmount";a:1:{s:7:"pattern";s:17:"v/%path%.davmount";}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'isapirewrite.embeddedLocation', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'isapirewrite.forced', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'isapirewrite.galleryLocation', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'isapirewrite.httpdini', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'modrewrite.embeddedHtaccess', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'modrewrite.embeddedLocation', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'modrewrite.galleryLocation', '/gallery2/'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'modrewrite.status', 'a:1:{s:11:"needOptions";b:0;}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'parserId', 'modrewrite'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'pathinfo.forced', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'pathinfo.parser', 'a:0:{}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, 'shortUrls', 'a:3:{i:0;a:4:{s:5:"match";a:1:{s:4:"view";s:13:"core.ShowItem";}s:7:"pattern";s:8:"v/%path%";s:9:"functions";a:3:{s:4:"path";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:9:"parsePath";}s:4:"page";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:9:"parsePage";}s:8:"language";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:13:"parseLanguage";}}s:6:"onLoad";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:18:"loadItemIdFromPath";}}i:1;a:3:{s:5:"match";a:1:{s:4:"view";s:17:"core.DownloadItem";}s:7:"pattern";s:36:"d/%itemId%-%serialNumber%/%fileName%";s:9:"functions";a:2:{s:12:"serialNumber";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:17:"parseSerialNumber";}s:8:"fileName";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:13:"parseFileName";}}}i:2;a:2:{s:5:"match";a:1:{s:4:"view";s:15:"sitemap.Sitemap";}s:7:"pattern";s:11:"sitemap.xml";}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, '_callbacks', 'getSiteAdminViews|registerEventListeners'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, '_requiredCoreApi', '7,5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, '_requiredModuleApi', '3,5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'rewrite', 0, '_version', '1.1.13.2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'search', 0, '_callbacks', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'search', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'search', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'search', 0, '_version', '1.0.5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'shutterfly', 0, '_callbacks', 'getItemLinks'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'shutterfly', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'shutterfly', 0, '_requiredModuleApi', '3,3'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'shutterfly', 0, '_version', '1.0.7.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'sitemap', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'sitemap', 0, '_requiredCoreApi', '7,5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'sitemap', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'sitemap', 0, '_version', '1.0.3'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'slideshow', 0, '_callbacks', 'getItemLinks'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'slideshow', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'slideshow', 0, '_requiredModuleApi', '3,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'slideshow', 0, '_version', '1.0.5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbnail', 0, 'id.container', '137'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbnail', 0, '_callbacks', 'getSiteAdminViews|registerEventListeners'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbnail', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbnail', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbnail', 0, '_version', '1.0.9.1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbpage', 0, '_callbacks', 'registerEventListeners'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbpage', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbpage', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'thumbpage', 0, '_version', '1.0.5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'uploadapplet', 0, 'uploaddefaultVariables', ''); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'uploadapplet', 0, 'uploadoverrideVariables', 'toSysOut=true|htmlEscapeCaptions=true'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'uploadapplet', 0, '_callbacks', 'getSiteAdminViews'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'uploadapplet', 0, '_requiredCoreApi', '7,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'uploadapplet', 0, '_requiredModuleApi', '3,0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'uploadapplet', 0, '_version', '1.0.7'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'webdav', 0, '_callbacks', 'getItemLinks|getSiteAdminViews|registerEventListeners'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'webdav', 0, '_requiredCoreApi', '7,17'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'webdav', 0, '_requiredModuleApi', '3,5'); +INSERT INTO `g2_PluginParameterMap` VALUES ('module', 'webdav', 0, '_version', '1.0.0.2'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, 'albumBlocks', 'a:2:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:0:{}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:8:{s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, 'contentWidth', '930'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, 'enableImageMap', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, 'groupByYear', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, 'perPage', '9'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, 'photoBlocks', 'a:2:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:0:{}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:8:{s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, '_requiredCoreApi', '7,10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, '_requiredThemeApi', '2,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 0, '_version', '1.1.3'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 7, 'albumBlocks', 'a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:2;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 7, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 11, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 11, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 13, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 13, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 14, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 14, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 15, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 15, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 97, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 97, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 121, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 121, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 144, 'albumBlocks', 'a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:2;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 144, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 146, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 146, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 156, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 156, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 162, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 162, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 168, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 168, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 183, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 183, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 193, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 193, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 194, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 194, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 205, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 205, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 232, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 232, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 250, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 250, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 298, 'albumBlocks', 'a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:2;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 298, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 316, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'abeto', 316, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, 'albumBlocks', 'a:1:{i:0;a:2:{i:0;s:20:"comment.ViewComments";i:1;a:0:{}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, 'contentWidth', '950'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, 'enableImageMap', '1'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, 'groupByYear', '0'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, 'perPage', '9'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, 'photoBlocks', 'a:2:{i:0;a:2:{i:0;s:13:"exif.ExifInfo";i:1;a:0:{}}i:1;a:2:{i:0;s:20:"comment.ViewComments";i:1;a:0:{}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, '_requiredCoreApi', '7,10'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, '_requiredThemeApi', '2,4'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 0, '_version', '1.1.3'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 7, 'albumBlocks', 'a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:0:{}}i:1;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:0:{}}i:2;a:2:{i:0;s:21:"albumselect.AlbumTree";i:1;a:0:{}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 7, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 7, 'photoBlocks', 'a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:0:{}}i:1;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:0:{}}i:2;a:2:{i:0;s:23:"albumselect.AlbumSelect";i:1;a:0:{}}}'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 11, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 13, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 14, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 15, 'perPage', '999'); +INSERT INTO `g2_PluginParameterMap` VALUES ('theme', 'siriux', 97, 'perPage', '999'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_RatingCacheMap` +-- + +DROP TABLE IF EXISTS `g2_RatingCacheMap`; +CREATE TABLE `g2_RatingCacheMap` ( + `g_itemId` int(11) NOT NULL, + `g_averageRating` int(11) NOT NULL, + `g_voteCount` int(11) NOT NULL, + PRIMARY KEY (`g_itemId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_RatingCacheMap` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_RatingMap` +-- + +DROP TABLE IF EXISTS `g2_RatingMap`; +CREATE TABLE `g2_RatingMap` ( + `g_ratingId` int(11) NOT NULL, + `g_itemId` int(11) NOT NULL, + `g_userId` int(11) NOT NULL, + `g_rating` int(11) NOT NULL, + `g_sessionId` varchar(128) default NULL, + `g_remoteIdentifier` varchar(255) default NULL, + PRIMARY KEY (`g_ratingId`), + KEY `g2_RatingMap_75985` (`g_itemId`), + KEY `g2_RatingMap_80383` (`g_itemId`,`g_userId`), + KEY `g2_RatingMap_2369` (`g_itemId`,`g_remoteIdentifier`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_RatingMap` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_RecoverPasswordMap` +-- + +DROP TABLE IF EXISTS `g2_RecoverPasswordMap`; +CREATE TABLE `g2_RecoverPasswordMap` ( + `g_userName` varchar(32) NOT NULL, + `g_authString` varchar(32) NOT NULL, + `g_requestExpires` int(11) NOT NULL, + PRIMARY KEY (`g_userName`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_RecoverPasswordMap` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Schema` +-- + +DROP TABLE IF EXISTS `g2_Schema`; +CREATE TABLE `g2_Schema` ( + `g_name` varchar(128) NOT NULL, + `g_major` int(11) NOT NULL, + `g_minor` int(11) NOT NULL, + `g_createSql` text, + `g_pluginId` varchar(32) default NULL, + `g_type` varchar(32) default NULL, + `g_info` text, + PRIMARY KEY (`g_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Schema` +-- + +INSERT INTO `g2_Schema` VALUES ('AccessMap', 1, 3, 'CREATE TABLE DB_TABLE_PREFIXAccessMap(\n DB_COLUMN_PREFIXaccessListId int(11) NOT NULL,\n DB_COLUMN_PREFIXuserOrGroupId int(11) NOT NULL,\n DB_COLUMN_PREFIXpermission int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId),\n INDEX DB_TABLE_PREFIXAccessMap_83732(DB_COLUMN_PREFIXaccessListId),\n INDEX DB_TABLE_PREFIXAccessMap_48775(DB_COLUMN_PREFIXuserOrGroupId),\n INDEX DB_TABLE_PREFIXAccessMap_18058(DB_COLUMN_PREFIXpermission)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''AccessMap'', 1, 3);\n\n', 'core', 'map', 'a:1:{s:16:"GalleryAccessMap";a:3:{s:12:"accessListId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"userOrGroupId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:10:"permission";a:3:{s:4:"type";i:64;s:4:"size";i:4;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('AccessSubscriberMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap(\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXaccessListId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXAccessSubscriberMap_83732(DB_COLUMN_PREFIXaccessListId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''AccessSubscriberMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:26:"GalleryAccessSubscriberMap";a:2:{s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:12:"accessListId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('AlbumItem', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXAlbumItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXtheme varchar(32),\n DB_COLUMN_PREFIXorderBy varchar(128),\n DB_COLUMN_PREFIXorderDirection varchar(32),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''AlbumItem'', 1, 1);\n\n', 'core', 'entity', 'a:1:{s:16:"GalleryAlbumItem";a:4:{s:7:"members";a:3:{s:5:"theme";a:2:{s:4:"type";i:2;s:4:"size";i:1;}s:7:"orderBy";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:14:"orderDirection";a:2:{s:4:"type";i:2;s:4:"size";i:1;}}s:6:"parent";s:11:"GalleryItem";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('AnimationItem', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXAnimationItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''AnimationItem'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:20:"GalleryAnimationItem";a:4:{s:7:"members";a:2:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:2:{i:0;s:5:"width";i:1;s:6:"height";}}}'); +INSERT INTO `g2_Schema` VALUES ('CacheMap', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXCacheMap(\n DB_COLUMN_PREFIXkey varchar(32) NOT NULL,\n DB_COLUMN_PREFIXvalue longtext,\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXtype varchar(32) NOT NULL,\n DB_COLUMN_PREFIXtimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXisEmpty int(1),\n PRIMARY KEY(DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype),\n INDEX DB_TABLE_PREFIXCacheMap_75985(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXCacheMap_21979(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''CacheMap'', 1, 1);\n\n', 'core', 'map', 'a:1:{s:15:"GalleryCacheMap";a:7:{s:3:"key";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:5:"value";a:2:{s:4:"type";i:4;s:4:"size";i:4;}s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"type";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:9:"timestamp";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:7:"isEmpty";a:2:{s:4:"type";i:8;s:4:"size";i:2;}}}'); +INSERT INTO `g2_Schema` VALUES ('ChildEntity', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXChildEntity(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXparentId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXChildEntity_52718(DB_COLUMN_PREFIXparentId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''ChildEntity'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:18:"GalleryChildEntity";a:4:{s:7:"members";a:1:{s:8:"parentId";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}}s:6:"parent";s:13:"GalleryEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('Comment', 1, 2, 'CREATE TABLE DB_TABLE_PREFIXComment(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXcommenterId int(11) NOT NULL,\n DB_COLUMN_PREFIXhost varchar(128) NOT NULL,\n DB_COLUMN_PREFIXsubject varchar(128),\n DB_COLUMN_PREFIXcomment text,\n DB_COLUMN_PREFIXdate int(11) NOT NULL,\n DB_COLUMN_PREFIXauthor varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXComment_95610(DB_COLUMN_PREFIXdate)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Comment'', 1, 2);\n\n', 'comment', 'entity', 'a:1:{s:14:"GalleryComment";a:4:{s:7:"members";a:6:{s:11:"commenterId";a:3:{s:4:"type";i:1;s:4:"size";i:4;s:7:"notNull";i:1;}s:4:"host";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";i:1;}s:7:"subject";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}s:7:"comment";a:3:{s:4:"type";i:4;s:4:"size";i:1;s:15:"external-access";i:3;}s:4:"date";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:6:"author";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}}s:6:"parent";s:18:"GalleryChildEntity";s:6:"module";s:7:"comment";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('DataItem', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXDataItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128),\n DB_COLUMN_PREFIXsize int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''DataItem'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:15:"GalleryDataItem";a:4:{s:7:"members";a:2:{s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}s:4:"size";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:11:"GalleryItem";s:6:"module";s:4:"core";s:6:"linked";a:2:{i:0;s:8:"mimeType";i:1;s:4:"size";}}}'); +INSERT INTO `g2_Schema` VALUES ('Derivative', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXDerivative(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXderivativeSourceId int(11) NOT NULL,\n DB_COLUMN_PREFIXderivativeOperations varchar(255),\n DB_COLUMN_PREFIXderivativeOrder int(11) NOT NULL,\n DB_COLUMN_PREFIXderivativeSize int(11),\n DB_COLUMN_PREFIXderivativeType int(11) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL,\n DB_COLUMN_PREFIXpostFilterOperations varchar(255),\n DB_COLUMN_PREFIXisBroken int(1),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXDerivative_85338(DB_COLUMN_PREFIXderivativeSourceId),\n INDEX DB_TABLE_PREFIXDerivative_25243(DB_COLUMN_PREFIXderivativeOrder),\n INDEX DB_TABLE_PREFIXDerivative_97216(DB_COLUMN_PREFIXderivativeType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Derivative'', 1, 1);\n\n', 'core', 'entity', 'a:1:{s:17:"GalleryDerivative";a:4:{s:7:"members";a:8:{s:18:"derivativeSourceId";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:20:"derivativeOperations";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:15:"derivativeOrder";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:14:"derivativeSize";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}s:14:"derivativeType";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:8:"mimeType";a:4:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";i:1;s:15:"external-access";i:3;}s:20:"postFilterOperations";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:8:"isBroken";a:1:{s:4:"type";i:8;}}s:6:"parent";s:18:"GalleryChildEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('DerivativeImage', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXDerivativeImage(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''DerivativeImage'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:22:"GalleryDerivativeImage";a:4:{s:7:"members";a:2:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:17:"GalleryDerivative";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('DerivativePrefsMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap(\n DB_COLUMN_PREFIXitemId int(11),\n DB_COLUMN_PREFIXorder int(11),\n DB_COLUMN_PREFIXderivativeType int(11),\n DB_COLUMN_PREFIXderivativeOperations varchar(255),\n INDEX DB_TABLE_PREFIXDerivativePrefsMap_75985(DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''DerivativePrefsMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:31:"GalleryDerivativePreferencesMap";a:4:{s:6:"itemId";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:5:"order";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:14:"derivativeType";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:20:"derivativeOperations";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('DescendentCountsMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap(\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXdescendentCount int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''DescendentCountsMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:26:"GalleryDescendentCountsMap";a:3:{s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:15:"descendentCount";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('Entity', 1, 2, 'CREATE TABLE DB_TABLE_PREFIXEntity(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXcreationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXisLinkable int(1) NOT NULL,\n DB_COLUMN_PREFIXlinkId int(11),\n DB_COLUMN_PREFIXmodificationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXserialNumber int(11) NOT NULL,\n DB_COLUMN_PREFIXentityType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXonLoadHandlers varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXEntity_76255(DB_COLUMN_PREFIXcreationTimestamp),\n INDEX DB_TABLE_PREFIXEntity_35978(DB_COLUMN_PREFIXisLinkable),\n INDEX DB_TABLE_PREFIXEntity_44738(DB_COLUMN_PREFIXlinkId),\n INDEX DB_TABLE_PREFIXEntity_63025(DB_COLUMN_PREFIXmodificationTimestamp),\n INDEX DB_TABLE_PREFIXEntity_60702(DB_COLUMN_PREFIXserialNumber)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Entity'', 1, 2);\n\n', 'core', 'entity', 'a:1:{s:13:"GalleryEntity";a:4:{s:7:"members";a:8:{s:2:"id";a:3:{s:4:"type";i:33;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:17:"creationTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:3;}s:10:"isLinkable";a:2:{s:4:"type";i:8;s:7:"notNull";i:1;}s:6:"linkId";a:1:{s:4:"type";i:1;}s:21:"modificationTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:12:"serialNumber";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:10:"entityType";a:4:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:14:"onLoadHandlers";a:2:{s:4:"type";i:2;s:4:"size";i:2;}}s:6:"parent";N;s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('ExifPropertiesMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXExifPropertiesMap(\n DB_COLUMN_PREFIXproperty varchar(128),\n DB_COLUMN_PREFIXviewMode int(11),\n DB_COLUMN_PREFIXsequence int(11),\n UNIQUE (DB_COLUMN_PREFIXproperty, DB_COLUMN_PREFIXviewMode)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''ExifPropertiesMap'', 1, 0);\n\n', 'exif', 'map', 'a:1:{s:17:"ExifPropertiesMap";a:3:{s:8:"property";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:8:"viewMode";a:2:{s:4:"type";i:1;s:4:"size";i:4;}s:8:"sequence";a:2:{s:4:"type";i:1;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('ExternalIdMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXExternalIdMap(\n DB_COLUMN_PREFIXexternalId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXentityType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXentityId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''ExternalIdMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:13:"ExternalIdMap";a:3:{s:10:"externalId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:10:"entityType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"entityId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('FactoryMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXFactoryMap(\n DB_COLUMN_PREFIXclassType varchar(128),\n DB_COLUMN_PREFIXclassName varchar(128),\n DB_COLUMN_PREFIXimplId varchar(128),\n DB_COLUMN_PREFIXimplPath varchar(128),\n DB_COLUMN_PREFIXimplModuleId varchar(128),\n DB_COLUMN_PREFIXhints varchar(255),\n DB_COLUMN_PREFIXorderWeight varchar(255)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''FactoryMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:17:"GalleryFactoryMap";a:7:{s:9:"classType";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:9:"className";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:6:"implId";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:8:"implPath";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:12:"implModuleId";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:5:"hints";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:11:"orderWeight";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('FailedLoginsMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap(\n DB_COLUMN_PREFIXuserName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXcount int(11) NOT NULL,\n DB_COLUMN_PREFIXlastAttempt int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXuserName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''FailedLoginsMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:15:"FailedLoginsMap";a:3:{s:8:"userName";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:5:"count";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"lastAttempt";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('FileSystemEntity', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXFileSystemEntity(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXpathComponent varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXFileSystemEntity_3406(DB_COLUMN_PREFIXpathComponent)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''FileSystemEntity'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:23:"GalleryFileSystemEntity";a:4:{s:7:"members";a:1:{s:13:"pathComponent";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}}s:6:"parent";s:18:"GalleryChildEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('Group', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXGroup(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXgroupType int(11) NOT NULL,\n DB_COLUMN_PREFIXgroupName varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n UNIQUE (DB_COLUMN_PREFIXgroupName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Group'', 1, 1);\n\n', 'core', 'entity', 'a:1:{s:12:"GalleryGroup";a:4:{s:7:"members";a:2:{s:9:"groupType";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:9:"groupName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}}s:6:"parent";s:13:"GalleryEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('Item', 1, 2, 'CREATE TABLE DB_TABLE_PREFIXItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXcanContainChildren int(1) NOT NULL,\n DB_COLUMN_PREFIXdescription text,\n DB_COLUMN_PREFIXkeywords varchar(255),\n DB_COLUMN_PREFIXownerId int(11) NOT NULL,\n DB_COLUMN_PREFIXrenderer varchar(128),\n DB_COLUMN_PREFIXsummary varchar(255),\n DB_COLUMN_PREFIXtitle varchar(128),\n DB_COLUMN_PREFIXviewedSinceTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXoriginationTimestamp int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXItem_99070(DB_COLUMN_PREFIXkeywords),\n INDEX DB_TABLE_PREFIXItem_21573(DB_COLUMN_PREFIXownerId),\n INDEX DB_TABLE_PREFIXItem_54147(DB_COLUMN_PREFIXsummary),\n INDEX DB_TABLE_PREFIXItem_90059(DB_COLUMN_PREFIXtitle)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Item'', 1, 2);\n\n', 'core', 'entity', 'a:1:{s:11:"GalleryItem";a:4:{s:7:"members";a:9:{s:18:"canContainChildren";a:3:{s:4:"type";i:8;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:11:"description";a:3:{s:4:"type";i:4;s:4:"size";i:1;s:15:"external-access";i:3;}s:8:"keywords";a:3:{s:4:"type";i:2;s:4:"size";i:4;s:15:"external-access";i:3;}s:7:"ownerId";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:8:"renderer";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:7:"summary";a:3:{s:4:"type";i:2;s:4:"size";i:4;s:15:"external-access";i:3;}s:5:"title";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}s:20:"viewedSinceTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:20:"originationTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:3;}}s:6:"parent";s:23:"GalleryFileSystemEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('ItemAttributesMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXItemAttributesMap(\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXviewCount int(11),\n DB_COLUMN_PREFIXorderWeight int(11),\n DB_COLUMN_PREFIXparentSequence varchar(255) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXItemAttributesMap_95270(DB_COLUMN_PREFIXparentSequence)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''ItemAttributesMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:24:"GalleryItemAttributesMap";a:4:{s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"viewCount";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:11:"orderWeight";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:14:"parentSequence";a:3:{s:4:"type";i:2;s:4:"size";i:4;s:19:"notNullEmptyAllowed";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('LinkItem', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXLinkItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXlink text NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''LinkItem'', 1, 1);\n\n', 'linkitem', 'entity', 'a:1:{s:15:"GalleryLinkItem";a:4:{s:7:"members";a:1:{s:4:"link";a:4:{s:4:"type";i:4;s:4:"size";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:11:"GalleryItem";s:6:"module";s:8:"linkitem";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('Lock', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXLock(\n DB_COLUMN_PREFIXlockId int(11),\n DB_COLUMN_PREFIXreadEntityId int(11),\n DB_COLUMN_PREFIXwriteEntityId int(11),\n DB_COLUMN_PREFIXfreshUntil int(11),\n DB_COLUMN_PREFIXrequest int(11),\n INDEX DB_TABLE_PREFIXLock_11039(DB_COLUMN_PREFIXlockId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Lock'', 1, 0);\n\n', 'core', NULL, NULL); +INSERT INTO `g2_Schema` VALUES ('MaintenanceMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXMaintenanceMap(\n DB_COLUMN_PREFIXrunId int(11) NOT NULL,\n DB_COLUMN_PREFIXtaskId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtimestamp int(11),\n DB_COLUMN_PREFIXsuccess int(1),\n DB_COLUMN_PREFIXdetails text,\n PRIMARY KEY(DB_COLUMN_PREFIXrunId),\n INDEX DB_TABLE_PREFIXMaintenanceMap_21687(DB_COLUMN_PREFIXtaskId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''MaintenanceMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:21:"GalleryMaintenanceMap";a:5:{s:5:"runId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"taskId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"timestamp";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:7:"success";a:2:{s:4:"type";i:8;s:4:"size";i:2;}s:7:"details";a:2:{s:4:"type";i:4;s:4:"size";i:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('MimeTypeMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXMimeTypeMap(\n DB_COLUMN_PREFIXextension varchar(32) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXviewable int(1),\n PRIMARY KEY(DB_COLUMN_PREFIXextension)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''MimeTypeMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:18:"GalleryMimeTypeMap";a:3:{s:9:"extension";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"viewable";a:2:{s:4:"type";i:8;s:4:"size";i:2;}}}'); +INSERT INTO `g2_Schema` VALUES ('MovieItem', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXMovieItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n DB_COLUMN_PREFIXduration int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''MovieItem'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:16:"GalleryMovieItem";a:4:{s:7:"members";a:3:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:8:"duration";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:3:{i:0;s:5:"width";i:1;s:6:"height";i:2;s:8:"duration";}}}'); +INSERT INTO `g2_Schema` VALUES ('PermalinksMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXPermalinksMap(\n DB_COLUMN_PREFIXaliasName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdestId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXaliasName),\n INDEX DB_TABLE_PREFIXPermalinksMap_84225(DB_COLUMN_PREFIXdestId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''PermalinksMap'', 1, 0);\n\n', 'permalinks', 'map', 'a:1:{s:13:"PermalinksMap";a:2:{s:9:"aliasName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"destId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('PermissionSetMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXPermissionSetMap(\n DB_COLUMN_PREFIXmodule varchar(128) NOT NULL,\n DB_COLUMN_PREFIXpermission varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdescription varchar(255),\n DB_COLUMN_PREFIXbits int(11) NOT NULL,\n DB_COLUMN_PREFIXflags int(11) NOT NULL,\n UNIQUE (DB_COLUMN_PREFIXpermission)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''PermissionSetMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:23:"GalleryPermissionSetMap";a:5:{s:6:"module";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:10:"permission";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"description";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:4:"bits";a:3:{s:4:"type";i:64;s:4:"size";i:2;s:7:"notNull";b:1;}s:5:"flags";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('PhotoItem', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXPhotoItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''PhotoItem'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:16:"GalleryPhotoItem";a:4:{s:7:"members";a:2:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:2:{i:0;s:5:"width";i:1;s:6:"height";}}}'); +INSERT INTO `g2_Schema` VALUES ('PluginMap', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXPluginMap(\n DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL,\n DB_COLUMN_PREFIXactive int(1) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''PluginMap'', 1, 1);\n\n', 'core', 'map', 'a:1:{s:16:"GalleryPluginMap";a:3:{s:10:"pluginType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"pluginId";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"active";a:3:{s:4:"type";i:8;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('PluginPackageMap', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXPluginPackageMap(\n DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpackageName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpackageVersion varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpackageBuild varchar(32) NOT NULL,\n DB_COLUMN_PREFIXlocked int(1) NOT NULL,\n INDEX DB_TABLE_PREFIXPluginPackageMap_80596(DB_COLUMN_PREFIXpluginType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''PluginPackageMap'', 1, 1);\n\n', 'core', 'map', 'a:1:{s:23:"GalleryPluginPackageMap";a:6:{s:10:"pluginType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"pluginId";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:11:"packageName";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:14:"packageVersion";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:12:"packageBuild";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"locked";a:3:{s:4:"type";i:8;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('PluginParameterMap', 1, 3, 'CREATE TABLE DB_TABLE_PREFIXPluginParameterMap(\n DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXparameterName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXparameterValue text NOT NULL,\n UNIQUE (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName),\n INDEX DB_TABLE_PREFIXPluginParameterMap_80596(DB_COLUMN_PREFIXpluginType),\n INDEX DB_TABLE_PREFIXPluginParameterMap_12808(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''PluginParameterMap'', 1, 3);\n\n', 'core', 'map', 'a:1:{s:25:"GalleryPluginParameterMap";a:5:{s:10:"pluginType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"pluginId";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"parameterName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:14:"parameterValue";a:3:{s:4:"type";i:4;s:4:"size";i:1;s:19:"notNullEmptyAllowed";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('RatingCacheMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXRatingCacheMap(\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXaverageRating int(11) NOT NULL,\n DB_COLUMN_PREFIXvoteCount int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''RatingCacheMap'', 1, 0);\n\n', 'rating', 'map', 'a:1:{s:14:"RatingCacheMap";a:3:{s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"averageRating";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"voteCount";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('RatingMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXRatingMap(\n DB_COLUMN_PREFIXratingId int(11) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXrating int(11) NOT NULL,\n DB_COLUMN_PREFIXsessionId varchar(128),\n DB_COLUMN_PREFIXremoteIdentifier varchar(255),\n PRIMARY KEY(DB_COLUMN_PREFIXratingId),\n INDEX DB_TABLE_PREFIXRatingMap_75985(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXRatingMap_80383(DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXuserId),\n INDEX DB_TABLE_PREFIXRatingMap_2369(DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXremoteIdentifier)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''RatingMap'', 1, 0);\n\n', 'rating', 'map', 'a:1:{s:9:"RatingMap";a:6:{s:8:"ratingId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"rating";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"sessionId";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:16:"remoteIdentifier";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('RecoverPasswordMap', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap(\n DB_COLUMN_PREFIXuserName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXauthString varchar(32) NOT NULL,\n DB_COLUMN_PREFIXrequestExpires int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXuserName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''RecoverPasswordMap'', 1, 1);\n\n', 'core', 'map', 'a:1:{s:25:"GalleryRecoverPasswordMap";a:3:{s:8:"userName";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:10:"authString";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:14:"requestExpires";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('Schema', 1, 2, 'CREATE TABLE DB_TABLE_PREFIXSchema(\n DB_COLUMN_PREFIXname varchar(128) NOT NULL,\n DB_COLUMN_PREFIXmajor int(11) NOT NULL,\n DB_COLUMN_PREFIXminor int(11) NOT NULL,\n DB_COLUMN_PREFIXcreateSql text,\n DB_COLUMN_PREFIXpluginId varchar(32),\n DB_COLUMN_PREFIXtype varchar(32),\n DB_COLUMN_PREFIXinfo text,\n PRIMARY KEY(DB_COLUMN_PREFIXname)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''Schema'', 1, 2);\n\n', 'core', NULL, NULL); +INSERT INTO `g2_Schema` VALUES ('SessionMap', 1, 1, 'CREATE TABLE DB_TABLE_PREFIXSessionMap(\n DB_COLUMN_PREFIXid varchar(32) NOT NULL,\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXremoteIdentifier varchar(128) NOT NULL,\n DB_COLUMN_PREFIXcreationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXmodificationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXdata longtext,\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXSessionMap_53500(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''SessionMap'', 1, 1);\n\n', 'core', 'map', 'a:1:{s:17:"GallerySessionMap";a:6:{s:2:"id";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:16:"remoteIdentifier";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:17:"creationTimestamp";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:21:"modificationTimestamp";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"data";a:2:{s:4:"type";i:4;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('ThumbnailImage', 1, 2, 'CREATE TABLE DB_TABLE_PREFIXThumbnailImage(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128),\n DB_COLUMN_PREFIXsize int(11),\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n DB_COLUMN_PREFIXitemMimeTypes varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''ThumbnailImage'', 1, 2);\n\n', 'thumbnail', 'entity', 'a:1:{s:14:"ThumbnailImage";a:4:{s:7:"members";a:5:{s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}s:4:"size";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:13:"itemMimeTypes";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}}s:6:"parent";s:23:"GalleryFileSystemEntity";s:6:"module";s:9:"thumbnail";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('TkOperatnMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXTkOperatnMap(\n DB_COLUMN_PREFIXname varchar(128) NOT NULL,\n DB_COLUMN_PREFIXparametersCrc varchar(32) NOT NULL,\n DB_COLUMN_PREFIXoutputMimeType varchar(128),\n DB_COLUMN_PREFIXdescription varchar(255),\n PRIMARY KEY(DB_COLUMN_PREFIXname)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''TkOperatnMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:26:"GalleryToolkitOperationMap";a:4:{s:4:"name";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"parametersCrc";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:14:"outputMimeType";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:11:"description";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('TkOperatnMimeTypeMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap(\n DB_COLUMN_PREFIXoperationName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtoolkitId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL,\n DB_COLUMN_PREFIXpriority int(11) NOT NULL,\n INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_2014(DB_COLUMN_PREFIXoperationName),\n INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_79463(DB_COLUMN_PREFIXmimeType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''TkOperatnMimeTypeMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:34:"GalleryToolkitOperationMimeTypeMap";a:4:{s:13:"operationName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"toolkitId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"priority";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('TkOperatnParameterMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap(\n DB_COLUMN_PREFIXoperationName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXposition int(11) NOT NULL,\n DB_COLUMN_PREFIXtype varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdescription varchar(255),\n INDEX DB_TABLE_PREFIXTkOperatnParameterMap_2014(DB_COLUMN_PREFIXoperationName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''TkOperatnParameterMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:35:"GalleryToolkitOperationParameterMap";a:4:{s:13:"operationName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"position";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"type";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"description";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}}'); +INSERT INTO `g2_Schema` VALUES ('TkPropertyMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXTkPropertyMap(\n DB_COLUMN_PREFIXname varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtype varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdescription varchar(128) NOT NULL\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''TkPropertyMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:25:"GalleryToolkitPropertyMap";a:3:{s:4:"name";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"type";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"description";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('TkPropertyMimeTypeMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap(\n DB_COLUMN_PREFIXpropertyName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtoolkitId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL,\n INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_52881(DB_COLUMN_PREFIXpropertyName),\n INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_79463(DB_COLUMN_PREFIXmimeType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''TkPropertyMimeTypeMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:33:"GalleryToolkitPropertyMimeTypeMap";a:3:{s:12:"propertyName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"toolkitId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('UnknownItem', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXUnknownItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''UnknownItem'', 1, 0);\n\n', 'core', 'entity', 'a:1:{s:18:"GalleryUnknownItem";a:4:{s:7:"members";a:0:{}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('User', 1, 2, 'CREATE TABLE DB_TABLE_PREFIXUser(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXuserName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXfullName varchar(128),\n DB_COLUMN_PREFIXhashedPassword varchar(128),\n DB_COLUMN_PREFIXemail varchar(255),\n DB_COLUMN_PREFIXlanguage varchar(128),\n DB_COLUMN_PREFIXlocked int(1) DEFAULT ''0'',\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n UNIQUE (DB_COLUMN_PREFIXuserName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''User'', 1, 2);\n\n', 'core', 'entity', 'a:1:{s:11:"GalleryUser";a:4:{s:7:"members";a:6:{s:8:"userName";a:4:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:8:"fullName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}s:14:"hashedPassword";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:5:"email";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:8:"language";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}s:6:"locked";a:1:{s:4:"type";i:8;}}s:6:"parent";s:13:"GalleryEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}}'); +INSERT INTO `g2_Schema` VALUES ('UserGroupMap', 1, 0, 'CREATE TABLE DB_TABLE_PREFIXUserGroupMap(\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXgroupId int(11) NOT NULL,\n INDEX DB_TABLE_PREFIXUserGroupMap_69068(DB_COLUMN_PREFIXuserId),\n INDEX DB_TABLE_PREFIXUserGroupMap_89328(DB_COLUMN_PREFIXgroupId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''UserGroupMap'', 1, 0);\n\n', 'core', 'map', 'a:1:{s:19:"GalleryUserGroupMap";a:2:{s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:7:"groupId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}}'); +INSERT INTO `g2_Schema` VALUES ('WebDavLockMap', 0, 1, 'CREATE TABLE DB_TABLE_PREFIXWebDavLockMap(\n DB_COLUMN_PREFIXdepth varchar(128),\n DB_COLUMN_PREFIXowner varchar(128),\n DB_COLUMN_PREFIXexpires int(11),\n DB_COLUMN_PREFIXtoken varchar(128),\n DB_COLUMN_PREFIXpath varchar(128),\n DB_COLUMN_PREFIXgalleryLockId int(11)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(''WebDavLockMap'', 0, 1);\n\n', 'webdav', 'map', 'a:1:{s:13:"WebDavLockMap";a:6:{s:5:"depth";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:5:"owner";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:7:"expires";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:5:"token";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:4:"path";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:13:"galleryLockId";a:2:{s:4:"type";i:1;s:4:"size";i:2;}}}'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_SequenceId` +-- + +DROP TABLE IF EXISTS `g2_SequenceId`; +CREATE TABLE `g2_SequenceId` ( + `id` int(11) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_SequenceId` +-- + +INSERT INTO `g2_SequenceId` VALUES (337); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_SequenceLock` +-- + +DROP TABLE IF EXISTS `g2_SequenceLock`; +CREATE TABLE `g2_SequenceLock` ( + `id` int(11) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_SequenceLock` +-- + +INSERT INTO `g2_SequenceLock` VALUES (1088); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_SessionMap` +-- + +DROP TABLE IF EXISTS `g2_SessionMap`; +CREATE TABLE `g2_SessionMap` ( + `g_id` varchar(32) NOT NULL, + `g_userId` int(11) NOT NULL, + `g_remoteIdentifier` varchar(128) NOT NULL, + `g_creationTimestamp` int(11) NOT NULL, + `g_modificationTimestamp` int(11) NOT NULL, + `g_data` longtext, + PRIMARY KEY (`g_id`), + KEY `g2_SessionMap_53500` (`g_userId`,`g_creationTimestamp`,`g_modificationTimestamp`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_SessionMap` +-- + +INSERT INTO `g2_SessionMap` VALUES ('31723f5eccd240c9cb59f23d886c1cf4', 6, 'a:2:{i:0;s:9:"127.0.0.1";i:1;s:32:"92d70023ad4db46d24dc5d0b776b26ff";}', 1182364350, 1182364740, 'a:6:{s:13:"core.language";s:5:"es_ES";s:15:"core.navigation";a:1:{s:9:"xe2c2a608";a:1:{s:7:"nextIds";a:0:{}}}s:15:"core.lastViewed";a:1:{i:7;i:0;}s:15:"permissionCache";a:6:{i:0;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:84;i:1;i:88;i:1;i:91;i:1;}}i:1;a:10:{s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}}i:2;a:10:{s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}}i:3;a:10:{s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}}i:4;a:10:{s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}}i:5;a:10:{s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}}}s:14:"core.authToken";s:12:"c3c86ffb526f";s:11:"core.status";a:3:{s:9:"x185ac35f";a:1:{s:3:"run";a:2:{s:7:"success";b:1;s:6:"taskId";s:18:"FlushTemplatesTask";}}s:9:"xc71860a3";a:1:{s:3:"run";a:2:{s:7:"success";b:1;s:6:"taskId";s:20:"OptimizeDatabaseTask";}}s:9:"x894719d1";a:1:{s:3:"run";a:2:{s:6:"taskId";s:20:"OptimizeDatabaseTask";s:7:"success";b:1;}}}}'); +INSERT INTO `g2_SessionMap` VALUES ('742a46f67cfc6d5afafaca90d295ff2b', 6, 'a:2:{i:0;s:10:"83.42.8.57";i:1;s:32:"13d4a33cd4919a482972a78fc026f867";}', 1183978199, 1183988254, 'a:9:{s:13:"core.language";s:5:"es_ES";s:15:"permissionCache";a:6:{i:0;a:19:{s:11:"comment.add";a:3:{i:317;i:1;i:322;i:1;i:326;i:1;}s:11:"comment.all";a:3:{i:317;i:1;i:322;i:1;i:326;i:1;}s:14:"comment.delete";a:2:{i:317;i:1;i:322;i:1;}s:12:"comment.edit";a:2:{i:317;i:1;i:322;i:1;}s:12:"comment.view";a:2:{i:317;i:1;i:322;i:1;}s:17:"core.addAlbumItem";a:2:{i:317;i:1;i:322;i:1;}s:16:"core.addDataItem";a:2:{i:317;i:1;i:322;i:1;}s:8:"core.all";a:2:{i:317;i:1;i:322;i:1;}s:22:"core.changePermissions";a:2:{i:317;i:1;i:322;i:1;}s:11:"core.delete";a:2:{i:317;i:1;i:322;i:1;}s:9:"core.edit";a:2:{i:317;i:1;i:322;i:1;}s:9:"core.view";a:2:{i:317;i:1;i:322;i:1;}s:12:"core.viewAll";a:2:{i:317;i:1;i:322;i:1;}s:16:"core.viewResizes";a:2:{i:317;i:1;i:322;i:1;}s:15:"core.viewSource";a:2:{i:317;i:1;i:322;i:1;}s:10:"rating.add";a:2:{i:317;i:1;i:322;i:1;}s:10:"rating.all";a:2:{i:317;i:1;i:322;i:1;}s:11:"rating.view";a:2:{i:317;i:1;i:322;i:1;}s:16:"shutterfly.print";a:2:{i:317;i:1;i:322;i:1;}}i:1;a:19:{s:11:"comment.add";a:3:{i:317;i:1;i:322;i:1;i:326;i:1;}s:11:"comment.all";a:3:{i:317;i:1;i:322;i:1;i:326;i:1;}s:14:"comment.delete";a:2:{i:317;i:1;i:322;i:1;}s:12:"comment.edit";a:2:{i:317;i:1;i:322;i:1;}s:12:"comment.view";a:2:{i:317;i:1;i:322;i:1;}s:17:"core.addAlbumItem";a:2:{i:317;i:1;i:322;i:1;}s:16:"core.addDataItem";a:2:{i:317;i:1;i:322;i:1;}s:8:"core.all";a:2:{i:317;i:1;i:322;i:1;}s:22:"core.changePermissions";a:2:{i:317;i:1;i:322;i:1;}s:11:"core.delete";a:2:{i:317;i:1;i:322;i:1;}s:9:"core.edit";a:2:{i:317;i:1;i:322;i:1;}s:9:"core.view";a:2:{i:317;i:1;i:322;i:1;}s:12:"core.viewAll";a:2:{i:317;i:1;i:322;i:1;}s:16:"core.viewResizes";a:2:{i:317;i:1;i:322;i:1;}s:15:"core.viewSource";a:2:{i:317;i:1;i:322;i:1;}s:10:"rating.add";a:2:{i:317;i:1;i:322;i:1;}s:10:"rating.all";a:2:{i:317;i:1;i:322;i:1;}s:11:"rating.view";a:2:{i:317;i:1;i:322;i:1;}s:16:"shutterfly.print";a:2:{i:317;i:1;i:322;i:1;}}i:2;a:19:{s:11:"comment.add";a:3:{i:317;i:1;i:322;i:1;i:326;i:1;}s:11:"comment.all";a:3:{i:317;i:1;i:322;i:1;i:326;i:1;}s:14:"comment.delete";a:2:{i:317;i:1;i:322;i:1;}s:12:"comment.edit";a:2:{i:317;i:1;i:322;i:1;}s:12:"comment.view";a:2:{i:317;i:1;i:322;i:1;}s:17:"core.addAlbumItem";a:2:{i:317;i:1;i:322;i:1;}s:16:"core.addDataItem";a:2:{i:317;i:1;i:322;i:1;}s:8:"core.all";a:2:{i:317;i:1;i:322;i:1;}s:22:"core.changePermissions";a:2:{i:317;i:1;i:322;i:1;}s:11:"core.delete";a:2:{i:317;i:1;i:322;i:1;}s:9:"core.edit";a:2:{i:317;i:1;i:322;i:1;}s:9:"core.view";a:2:{i:317;i:1;i:322;i:1;}s:12:"core.viewAll";a:2:{i:317;i:1;i:322;i:1;}s:16:"core.viewResizes";a:2:{i:317;i:1;i:322;i:1;}s:15:"core.viewSource";a:2:{i:317;i:1;i:322;i:1;}s:10:"rating.add";a:2:{i:317;i:1;i:322;i:1;}s:10:"rating.all";a:2:{i:317;i:1;i:322;i:1;}s:11:"rating.view";a:2:{i:317;i:1;i:322;i:1;}s:16:"shutterfly.print";a:2:{i:317;i:1;i:322;i:1;}}i:3;a:19:{s:11:"comment.add";a:1:{i:334;i:1;}s:11:"comment.all";a:1:{i:334;i:1;}s:14:"comment.delete";a:1:{i:334;i:1;}s:12:"comment.edit";a:1:{i:334;i:1;}s:12:"comment.view";a:1:{i:334;i:1;}s:17:"core.addAlbumItem";a:1:{i:334;i:1;}s:16:"core.addDataItem";a:1:{i:334;i:1;}s:8:"core.all";a:1:{i:334;i:1;}s:22:"core.changePermissions";a:1:{i:334;i:1;}s:11:"core.delete";a:1:{i:334;i:1;}s:9:"core.edit";a:1:{i:334;i:1;}s:9:"core.view";a:1:{i:334;i:1;}s:12:"core.viewAll";a:1:{i:334;i:1;}s:16:"core.viewResizes";a:1:{i:334;i:1;}s:15:"core.viewSource";a:1:{i:334;i:1;}s:10:"rating.add";a:1:{i:334;i:1;}s:10:"rating.all";a:1:{i:334;i:1;}s:11:"rating.view";a:1:{i:334;i:1;}s:16:"shutterfly.print";a:1:{i:334;i:1;}}i:4;a:19:{s:11:"comment.add";a:3:{i:316;i:1;i:13;i:1;i:7;i:1;}s:11:"comment.all";a:3:{i:316;i:1;i:13;i:1;i:7;i:1;}s:14:"comment.delete";a:2:{i:316;i:1;i:13;i:1;}s:12:"comment.edit";a:2:{i:316;i:1;i:13;i:1;}s:12:"comment.view";a:2:{i:316;i:1;i:13;i:1;}s:17:"core.addAlbumItem";a:2:{i:316;i:1;i:13;i:1;}s:16:"core.addDataItem";a:2:{i:316;i:1;i:13;i:1;}s:8:"core.all";a:2:{i:316;i:1;i:13;i:1;}s:22:"core.changePermissions";a:2:{i:316;i:1;i:13;i:1;}s:11:"core.delete";a:2:{i:316;i:1;i:13;i:1;}s:9:"core.edit";a:2:{i:316;i:1;i:13;i:1;}s:9:"core.view";a:2:{i:316;i:1;i:13;i:1;}s:12:"core.viewAll";a:2:{i:316;i:1;i:13;i:1;}s:16:"core.viewResizes";a:2:{i:316;i:1;i:13;i:1;}s:15:"core.viewSource";a:2:{i:316;i:1;i:13;i:1;}s:10:"rating.add";a:2:{i:316;i:1;i:13;i:1;}s:10:"rating.all";a:2:{i:316;i:1;i:13;i:1;}s:11:"rating.view";a:2:{i:316;i:1;i:13;i:1;}s:16:"shutterfly.print";a:2:{i:316;i:1;i:13;i:1;}}i:5;a:19:{s:11:"comment.add";a:3:{i:7;i:1;i:11;i:1;i:13;i:1;}s:11:"comment.all";a:3:{i:7;i:1;i:11;i:1;i:13;i:1;}s:14:"comment.delete";a:2:{i:7;i:1;i:11;i:1;}s:12:"comment.edit";a:2:{i:7;i:1;i:11;i:1;}s:12:"comment.view";a:2:{i:7;i:1;i:11;i:1;}s:17:"core.addAlbumItem";a:2:{i:7;i:1;i:11;i:1;}s:16:"core.addDataItem";a:2:{i:7;i:1;i:11;i:1;}s:8:"core.all";a:2:{i:7;i:1;i:11;i:1;}s:22:"core.changePermissions";a:2:{i:7;i:1;i:11;i:1;}s:11:"core.delete";a:2:{i:7;i:1;i:11;i:1;}s:9:"core.edit";a:2:{i:7;i:1;i:11;i:1;}s:9:"core.view";a:2:{i:7;i:1;i:11;i:1;}s:12:"core.viewAll";a:2:{i:7;i:1;i:11;i:1;}s:16:"core.viewResizes";a:2:{i:7;i:1;i:11;i:1;}s:15:"core.viewSource";a:2:{i:7;i:1;i:11;i:1;}s:10:"rating.add";a:2:{i:7;i:1;i:11;i:1;}s:10:"rating.all";a:2:{i:7;i:1;i:11;i:1;}s:11:"rating.view";a:2:{i:7;i:1;i:11;i:1;}s:16:"shutterfly.print";a:2:{i:7;i:1;i:11;i:1;}}}s:14:"core.authToken";s:12:"f129a7505c28";s:15:"core.navigation";a:10:{s:9:"xabc7afbd";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:30:"/gallery2/v/catalogo/armarios/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"xde9ee41a";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:21:"/gallery2/v/catalogo/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"x2f2e5770";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:21:"/gallery2/v/catalogo/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"x392ac5a0";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:32:"/gallery2/v/catalogo/vestidores/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"x4b8a9df0";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:32:"/gallery2/v/catalogo/vestidores/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"x7b551980";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:42:"/gallery2/v/catalogo/vestidores/2.jpg.html";s:10:"returnName";s:4:"foto";}s:7:"nextIds";a:0:{}}s:9:"xc02197b9";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:32:"/gallery2/v/catalogo/vestidores/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"xff0c98ae";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:37:"/gallery2/v/catalogo/armarios/actual/";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"xed5945db";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:18:"/gallery2/main.php";s:10:"returnName";s:6:"álbum";}s:7:"nextIds";a:0:{}}s:9:"xa2adf0d7";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:53:"/gallery2/v/catalogo/armarios/actual/style/5.jpg.html";s:10:"returnName";s:4:"foto";}s:7:"nextIds";a:0:{}}}s:15:"core.lastViewed";a:11:{i:11;i:350;i:144;i:352;i:298;i:627;i:13;i:1566;i:121;i:1568;i:299;i:1629;i:267;i:1681;i:156;i:1714;i:316;i:9171;i:7;i:9555;i:334;i:9568;}s:11:"core.status";a:0:{}s:46:"core.view.ItemEdit.editPlugin.GalleryAlbumItem";s:13:"ItemEditAlbum";s:44:"core.view.ItemAdd.addPlugin.GalleryAlbumItem";s:18:"ItemAddFromBrowser";s:46:"core.view.ItemEdit.editPlugin.GalleryPhotoItem";s:12:"ItemEditItem";}'); +INSERT INTO `g2_SessionMap` VALUES ('865f5cd5b3e3c6fc4c3eade940d05f32', 6, 'a:2:{i:0;s:10:"83.42.8.57";i:1;s:32:"92d70023ad4db46d24dc5d0b776b26ff";}', 1183978632, 1183987578, 'a:6:{s:13:"core.language";s:5:"es_ES";s:15:"core.navigation";a:8:{s:9:"x15083582";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:81:"/gallery2/main.php?g2_view=publishxp.PublishXpLogin&g2_d=3082&g2_gid=3082";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"xeb97bcf5";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"xaf565f50";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"xdd8fe67e";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"x54b39bdd";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"x84ab4eb1";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"xab999794";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"xf623c930";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}}s:15:"permissionCache";a:6:{i:0;a:19:{s:11:"comment.add";a:3:{i:97;i:1;i:144;i:1;i:263;i:1;}s:11:"comment.all";a:3:{i:97;i:1;i:144;i:1;i:263;i:1;}s:14:"comment.delete";a:2:{i:97;i:1;i:144;i:1;}s:12:"comment.edit";a:2:{i:97;i:1;i:144;i:1;}s:12:"comment.view";a:2:{i:97;i:1;i:144;i:1;}s:17:"core.addAlbumItem";a:2:{i:97;i:1;i:144;i:1;}s:16:"core.addDataItem";a:2:{i:97;i:1;i:144;i:1;}s:8:"core.all";a:2:{i:97;i:1;i:144;i:1;}s:22:"core.changePermissions";a:2:{i:97;i:1;i:144;i:1;}s:11:"core.delete";a:2:{i:97;i:1;i:144;i:1;}s:9:"core.edit";a:2:{i:97;i:1;i:144;i:1;}s:9:"core.view";a:2:{i:97;i:1;i:144;i:1;}s:12:"core.viewAll";a:2:{i:97;i:1;i:144;i:1;}s:16:"core.viewResizes";a:2:{i:97;i:1;i:144;i:1;}s:15:"core.viewSource";a:2:{i:97;i:1;i:144;i:1;}s:10:"rating.add";a:2:{i:97;i:1;i:144;i:1;}s:10:"rating.all";a:2:{i:97;i:1;i:144;i:1;}s:11:"rating.view";a:2:{i:97;i:1;i:144;i:1;}s:16:"shutterfly.print";a:2:{i:97;i:1;i:144;i:1;}}i:1;a:19:{s:11:"comment.add";a:1:{i:7;i:1;}s:11:"comment.all";a:1:{i:7;i:1;}s:14:"comment.delete";a:1:{i:7;i:1;}s:12:"comment.edit";a:1:{i:7;i:1;}s:12:"comment.view";a:1:{i:7;i:1;}s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}s:10:"rating.add";a:1:{i:7;i:1;}s:10:"rating.all";a:1:{i:7;i:1;}s:11:"rating.view";a:1:{i:7;i:1;}s:16:"shutterfly.print";a:1:{i:7;i:1;}}i:2;a:19:{s:11:"comment.add";a:1:{i:7;i:1;}s:11:"comment.all";a:1:{i:7;i:1;}s:14:"comment.delete";a:1:{i:7;i:1;}s:12:"comment.edit";a:1:{i:7;i:1;}s:12:"comment.view";a:1:{i:7;i:1;}s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}s:10:"rating.add";a:1:{i:7;i:1;}s:10:"rating.all";a:1:{i:7;i:1;}s:11:"rating.view";a:1:{i:7;i:1;}s:16:"shutterfly.print";a:1:{i:7;i:1;}}i:3;a:19:{s:11:"comment.add";a:1:{i:7;i:1;}s:11:"comment.all";a:1:{i:7;i:1;}s:14:"comment.delete";a:1:{i:7;i:1;}s:12:"comment.edit";a:1:{i:7;i:1;}s:12:"comment.view";a:1:{i:7;i:1;}s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}s:10:"rating.add";a:1:{i:7;i:1;}s:10:"rating.all";a:1:{i:7;i:1;}s:11:"rating.view";a:1:{i:7;i:1;}s:16:"shutterfly.print";a:1:{i:7;i:1;}}i:4;a:19:{s:11:"comment.add";a:3:{i:97;i:1;i:144;i:1;i:263;i:1;}s:11:"comment.all";a:3:{i:97;i:1;i:144;i:1;i:263;i:1;}s:14:"comment.delete";a:2:{i:97;i:1;i:144;i:1;}s:12:"comment.edit";a:2:{i:97;i:1;i:144;i:1;}s:12:"comment.view";a:2:{i:97;i:1;i:144;i:1;}s:17:"core.addAlbumItem";a:2:{i:97;i:1;i:144;i:1;}s:16:"core.addDataItem";a:2:{i:97;i:1;i:144;i:1;}s:8:"core.all";a:2:{i:97;i:1;i:144;i:1;}s:22:"core.changePermissions";a:2:{i:97;i:1;i:144;i:1;}s:11:"core.delete";a:2:{i:97;i:1;i:144;i:1;}s:9:"core.edit";a:2:{i:97;i:1;i:144;i:1;}s:9:"core.view";a:2:{i:97;i:1;i:144;i:1;}s:12:"core.viewAll";a:2:{i:97;i:1;i:144;i:1;}s:16:"core.viewResizes";a:2:{i:97;i:1;i:144;i:1;}s:15:"core.viewSource";a:2:{i:97;i:1;i:144;i:1;}s:10:"rating.add";a:2:{i:97;i:1;i:144;i:1;}s:10:"rating.all";a:2:{i:97;i:1;i:144;i:1;}s:11:"rating.view";a:2:{i:97;i:1;i:144;i:1;}s:16:"shutterfly.print";a:2:{i:97;i:1;i:144;i:1;}}i:5;a:19:{s:11:"comment.add";a:1:{i:7;i:1;}s:11:"comment.all";a:1:{i:7;i:1;}s:14:"comment.delete";a:1:{i:7;i:1;}s:12:"comment.edit";a:1:{i:7;i:1;}s:12:"comment.view";a:1:{i:7;i:1;}s:17:"core.addAlbumItem";a:1:{i:7;i:1;}s:16:"core.addDataItem";a:1:{i:7;i:1;}s:8:"core.all";a:1:{i:7;i:1;}s:22:"core.changePermissions";a:1:{i:7;i:1;}s:11:"core.delete";a:1:{i:7;i:1;}s:9:"core.edit";a:1:{i:7;i:1;}s:9:"core.view";a:1:{i:7;i:1;}s:12:"core.viewAll";a:1:{i:7;i:1;}s:16:"core.viewResizes";a:1:{i:7;i:1;}s:15:"core.viewSource";a:1:{i:7;i:1;}s:10:"rating.add";a:1:{i:7;i:1;}s:10:"rating.all";a:1:{i:7;i:1;}s:11:"rating.view";a:1:{i:7;i:1;}s:16:"shutterfly.print";a:1:{i:7;i:1;}}}s:14:"core.authToken";s:12:"0e3e7dafb89e";s:26:"publishxp.extraOptionsForm";s:203:"a:5:{s:8:"formName";s:7:"Options";s:7:"albumId";s:3:"316";s:6:"action";a:1:{s:10:"setOptions";s:1:"1";}s:15:"stripExtensions";s:2:"on";s:21:"CreateThumbnailOption";a:1:{s:15:"createThumbnail";s:2:"on";}}";s:15:"core.lastViewed";a:1:{i:7;i:549;}}'); +INSERT INTO `g2_SessionMap` VALUES ('e573018eb84ab6075ebf6381e3bec511', 6, 'a:2:{i:0;s:9:"127.0.0.1";i:1;s:32:"92d70023ad4db46d24dc5d0b776b26ff";}', 1182183773, 1182266516, 'a:10:{s:13:"core.language";s:5:"es_ES";s:15:"core.navigation";a:3:{s:9:"xed437e55";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:81:"/gallery2/main.php?g2_view=publishxp.PublishXpLogin&g2_d=3082&g2_gid=3082";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"x056eefc0";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:48:"/gallery2/main.php?g2_view=publishxp.SelectAlbum";s:10:"returnName";s:0:"";}s:7:"nextIds";a:0:{}}s:9:"xe3919164";a:2:{s:4:"data";a:2:{s:9:"returnUrl";s:31:"/gallery2/main.php?g2_itemId=32";s:10:"returnName";s:4:"foto";}s:7:"nextIds";a:0:{}}}s:15:"permissionCache";a:6:{i:0;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}}i:1;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}}i:2;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}}i:3;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}}i:4;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}}i:5;a:10:{s:17:"core.addAlbumItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.addDataItem";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:8:"core.all";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:22:"core.changePermissions";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:11:"core.delete";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.edit";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:9:"core.view";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:12:"core.viewAll";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:16:"core.viewResizes";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}s:15:"core.viewSource";a:4:{i:11;i:1;i:16;i:1;i:20;i:1;i:23;i:1;}}}s:14:"core.authToken";s:12:"6638b03872d8";s:15:"core.lastViewed";a:8:{i:7;i:69262;i:11;i:69307;i:16;i:70443;i:20;i:70452;i:23;i:70455;i:26;i:70457;i:29;i:70460;i:32;i:70471;}s:46:"core.view.ItemEdit.editPlugin.GalleryAlbumItem";s:12:"ItemEditItem";s:44:"core.view.ItemAdd.addPlugin.GalleryAlbumItem";s:16:"ItemAddPublishXp";s:11:"core.status";a:0:{}s:26:"publishxp.extraOptionsForm";s:201:"a:5:{s:8:"formName";s:7:"Options";s:7:"albumId";s:1:"7";s:6:"action";a:1:{s:10:"setOptions";s:1:"1";}s:15:"stripExtensions";s:2:"on";s:21:"CreateThumbnailOption";a:1:{s:15:"createThumbnail";s:2:"on";}}";s:46:"core.view.ItemEdit.editPlugin.GalleryPhotoItem";s:12:"ItemEditItem";}'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_ThumbnailImage` +-- + +DROP TABLE IF EXISTS `g2_ThumbnailImage`; +CREATE TABLE `g2_ThumbnailImage` ( + `g_id` int(11) NOT NULL, + `g_mimeType` varchar(128) default NULL, + `g_size` int(11) default NULL, + `g_width` int(11) default NULL, + `g_height` int(11) default NULL, + `g_itemMimeTypes` varchar(128) default NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_ThumbnailImage` +-- + +INSERT INTO `g2_ThumbnailImage` VALUES (138, 'image/jpeg', 15472, 400, 352, 'audio/mpeg|audio/x-wav|audio/x-aiff|audio/midi|audio/basic|audio/x-ms-wma'); +INSERT INTO `g2_ThumbnailImage` VALUES (140, 'image/jpeg', 15777, 400, 352, 'video/mpeg|video/quicktime|video/x-msvideo|video/x-ms-asf|video/x-ms-wmv|video/x-flv'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_TkOperatnMap` +-- + +DROP TABLE IF EXISTS `g2_TkOperatnMap`; +CREATE TABLE `g2_TkOperatnMap` ( + `g_name` varchar(128) NOT NULL, + `g_parametersCrc` varchar(32) NOT NULL, + `g_outputMimeType` varchar(128) default NULL, + `g_description` varchar(255) default NULL, + PRIMARY KEY (`g_name`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_TkOperatnMap` +-- + +INSERT INTO `g2_TkOperatnMap` VALUES ('composite', '1204337430', NULL, 'Overlay source image with a second one'); +INSERT INTO `g2_TkOperatnMap` VALUES ('compress', '340908721', NULL, 'Reduce image quality to reach target file size'); +INSERT INTO `g2_TkOperatnMap` VALUES ('convert-to-image/jpeg', '0', 'image/jpeg', 'Convert to a JPEG'); +INSERT INTO `g2_TkOperatnMap` VALUES ('crop', '729751051', NULL, 'Crop the image'); +INSERT INTO `g2_TkOperatnMap` VALUES ('resize', '3155881288', NULL, 'Resize the image to the target dimensions'); +INSERT INTO `g2_TkOperatnMap` VALUES ('rotate', '340908721', NULL, 'Rotate the image'); +INSERT INTO `g2_TkOperatnMap` VALUES ('scale', '3155881288', NULL, 'Scale the image to the target size, maintain aspect ratio'); +INSERT INTO `g2_TkOperatnMap` VALUES ('thumbnail', '3155881288', NULL, 'Scale the image to the target size, maintain aspect ratio'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_TkOperatnMimeTypeMap` +-- + +DROP TABLE IF EXISTS `g2_TkOperatnMimeTypeMap`; +CREATE TABLE `g2_TkOperatnMimeTypeMap` ( + `g_operationName` varchar(128) NOT NULL, + `g_toolkitId` varchar(128) NOT NULL, + `g_mimeType` varchar(128) NOT NULL, + `g_priority` int(11) NOT NULL, + KEY `g2_TkOperatnMimeTypeMap_2014` (`g_operationName`), + KEY `g2_TkOperatnMimeTypeMap_79463` (`g_mimeType`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_TkOperatnMimeTypeMap` +-- + +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('convert-to-image/jpeg', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('convert-to-image/jpeg', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('convert-to-image/jpeg', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('convert-to-image/jpeg', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('convert-to-image/jpeg', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('scale', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('scale', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('scale', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('scale', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('scale', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('resize', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('resize', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('resize', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('resize', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('resize', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('rotate', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('rotate', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('rotate', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('rotate', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('rotate', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('crop', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('crop', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('crop', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('crop', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('crop', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('composite', 'Gd', 'image/gif', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('composite', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('composite', 'Gd', 'image/png', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('composite', 'Gd', 'image/vnd.wap.wbmp', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('composite', 'Gd', 'image/x-xbitmap', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('compress', 'Gd', 'image/jpeg', 21); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('convert-to-image/jpeg', 'LinkItemToolkit', 'gallery/linkitem', 5); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/mpeg', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-wav', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-aiff', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/midi', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/basic', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-ms-wma', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/mpeg', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/quicktime', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-msvideo', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-ms-asf', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-ms-wmv', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-flv', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/mpeg', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-wav', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-aiff', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/midi', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/basic', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-ms-wma', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/mpeg', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/quicktime', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-msvideo', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-ms-asf', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-ms-wmv', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-flv', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/mpeg', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-wav', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-aiff', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/midi', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/basic', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'audio/x-ms-wma', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/mpeg', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/quicktime', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-msvideo', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-ms-asf', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-ms-wmv', 50); +INSERT INTO `g2_TkOperatnMimeTypeMap` VALUES ('thumbnail', 'Thumbnail', 'video/x-flv', 50); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_TkOperatnParameterMap` +-- + +DROP TABLE IF EXISTS `g2_TkOperatnParameterMap`; +CREATE TABLE `g2_TkOperatnParameterMap` ( + `g_operationName` varchar(128) NOT NULL, + `g_position` int(11) NOT NULL, + `g_type` varchar(128) NOT NULL, + `g_description` varchar(255) default NULL, + KEY `g2_TkOperatnParameterMap_2014` (`g_operationName`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_TkOperatnParameterMap` +-- + +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('scale', 0, 'int', 'target width (# pixels or #% of full size)'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('scale', 1, 'int', '(optional) target height, defaults to same as width'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('thumbnail', 0, 'int', 'target width (# pixels or #% of full size)'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('thumbnail', 1, 'int', '(optional) target height, defaults to same as width'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('resize', 0, 'int', 'target width (# pixels or #% of full size)'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('resize', 1, 'int', 'target height (# pixels or #% of full size)'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('rotate', 0, 'int', 'rotation degrees'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('crop', 0, 'float', 'left edge %'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('crop', 1, 'float', 'top edge %'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('crop', 2, 'float', 'width %'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('crop', 3, 'float', 'height %'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 0, 'string', 'overlay path'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 1, 'string', 'overlay mime type'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 2, 'int', 'overlay width'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 3, 'int', 'overlay height'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 4, 'string', 'alignment type'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 5, 'int', 'alignment x %'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('composite', 6, 'int', 'alignment y %'); +INSERT INTO `g2_TkOperatnParameterMap` VALUES ('compress', 0, 'int', 'target size in kb'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_TkPropertyMap` +-- + +DROP TABLE IF EXISTS `g2_TkPropertyMap`; +CREATE TABLE `g2_TkPropertyMap` ( + `g_name` varchar(128) NOT NULL, + `g_type` varchar(128) NOT NULL, + `g_description` varchar(128) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_TkPropertyMap` +-- + +INSERT INTO `g2_TkPropertyMap` VALUES ('dimensions', 'int,int', 'Get the width and height of the image'); +INSERT INTO `g2_TkPropertyMap` VALUES ('originationTimestamp', 'int', 'Get the origination timestamp'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_TkPropertyMimeTypeMap` +-- + +DROP TABLE IF EXISTS `g2_TkPropertyMimeTypeMap`; +CREATE TABLE `g2_TkPropertyMimeTypeMap` ( + `g_propertyName` varchar(128) NOT NULL, + `g_toolkitId` varchar(128) NOT NULL, + `g_mimeType` varchar(128) NOT NULL, + KEY `g2_TkPropertyMimeTypeMap_52881` (`g_propertyName`), + KEY `g2_TkPropertyMimeTypeMap_79463` (`g_mimeType`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_TkPropertyMimeTypeMap` +-- + +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('dimensions', 'Gd', 'image/gif'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('dimensions', 'Gd', 'image/jpeg'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('dimensions', 'Gd', 'image/png'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('dimensions', 'Gd', 'image/vnd.wap.wbmp'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('dimensions', 'Gd', 'image/x-xbitmap'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('dimensions', 'Gd', 'application/x-shockwave-flash'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('originationTimestamp', 'Exif', 'image/jpeg'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('originationTimestamp', 'Exif', 'image/pjpeg'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('originationTimestamp', 'Exif', 'image/jpeg-cmyk'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('originationTimestamp', 'Exif', 'image/pjpeg-cmyk'); +INSERT INTO `g2_TkPropertyMimeTypeMap` VALUES ('originationTimestamp', 'Exif', 'image/x-dcraw'); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_UnknownItem` +-- + +DROP TABLE IF EXISTS `g2_UnknownItem`; +CREATE TABLE `g2_UnknownItem` ( + `g_id` int(11) NOT NULL, + PRIMARY KEY (`g_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_UnknownItem` +-- + + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_User` +-- + +DROP TABLE IF EXISTS `g2_User`; +CREATE TABLE `g2_User` ( + `g_id` int(11) NOT NULL, + `g_userName` varchar(32) NOT NULL, + `g_fullName` varchar(128) default NULL, + `g_hashedPassword` varchar(128) default NULL, + `g_email` varchar(255) default NULL, + `g_language` varchar(128) default NULL, + `g_locked` int(1) default '0', + PRIMARY KEY (`g_id`), + UNIQUE KEY `g_userName` (`g_userName`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_User` +-- + +INSERT INTO `g2_User` VALUES (5, 'guest', 'Invitado', 'TSk71c3cfc0a4cdc50ee53fdf44a74a2d0d2', NULL, NULL, 0); +INSERT INTO `g2_User` VALUES (6, 'administrador', 'Administrador de Gallery', '07Km16991726e4f646e2cfb9d1dac6297fa0', 'info@rodax-software.com', '', 0); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_UserGroupMap` +-- + +DROP TABLE IF EXISTS `g2_UserGroupMap`; +CREATE TABLE `g2_UserGroupMap` ( + `g_userId` int(11) NOT NULL, + `g_groupId` int(11) NOT NULL, + KEY `g2_UserGroupMap_69068` (`g_userId`), + KEY `g2_UserGroupMap_89328` (`g_groupId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_UserGroupMap` +-- + +INSERT INTO `g2_UserGroupMap` VALUES (5, 4); +INSERT INTO `g2_UserGroupMap` VALUES (6, 2); +INSERT INTO `g2_UserGroupMap` VALUES (6, 4); +INSERT INTO `g2_UserGroupMap` VALUES (6, 3); + +-- -------------------------------------------------------- + +-- +-- Estructura de tabla para la tabla `g2_Webdavlockmap` +-- + +DROP TABLE IF EXISTS `g2_Webdavlockmap`; +CREATE TABLE `g2_Webdavlockmap` ( + `g_depth` varchar(128) default NULL, + `g_owner` varchar(128) default NULL, + `g_expires` int(11) default NULL, + `g_token` varchar(128) default NULL, + `g_path` varchar(128) default NULL, + `g_galleryLockId` int(11) default NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8; + +-- +-- Volcar la base de datos para la tabla `g2_Webdavlockmap` +-- + diff --git a/Source/fondo2.gif b/Source/fondo2.gif new file mode 100644 index 0000000..e0d2cf0 Binary files /dev/null and b/Source/fondo2.gif differ diff --git a/Source/gallery2/.htaccess b/Source/gallery2/.htaccess new file mode 100644 index 0000000..0e7a53c --- /dev/null +++ b/Source/gallery2/.htaccess @@ -0,0 +1,26 @@ +# BEGIN Url Rewrite section +# (Automatically generated. Do not edit this section) + + RewriteEngine On + + RewriteBase /gallery2/ + + RewriteCond %{REQUEST_FILENAME} -f [OR] + RewriteCond %{REQUEST_FILENAME} -d [OR] + RewriteCond %{REQUEST_FILENAME} gallery\_remote2\.php + RewriteCond %{REQUEST_URI} !/gallery2/main\.php$ + RewriteRule . - [L] + + RewriteCond %{THE_REQUEST} /gallery2/sitemap\.xml(\?.|\ .) + RewriteCond %{REQUEST_URI} !/gallery2/main\.php$ + RewriteRule . /gallery2/main.php?g2_view=sitemap.Sitemap [QSA,L] + RewriteCond %{THE_REQUEST} /gallery2/d/([0-9]+)-([0-9]+)/([^/?]+)(\?.|\ .) + RewriteCond %{REQUEST_URI} !/gallery2/main\.php$ + RewriteRule . /gallery2/main.php?g2_view=core.DownloadItem&g2_itemId=%1&g2_serialNumber=%2&g2_fileName=%3 [QSA,L] + RewriteCond %{THE_REQUEST} /gallery2/v/([^?]+)(\?.|\ .) + RewriteCond %{REQUEST_URI} !/gallery2/main\.php$ + RewriteRule . /gallery2/main.php?g2_path=%1 [QSA,L] + + +# END Url Rewrite section + diff --git a/Source/gallery2/LICENSE b/Source/gallery2/LICENSE new file mode 100644 index 0000000..3912109 --- /dev/null +++ b/Source/gallery2/LICENSE @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/Source/gallery2/MANIFEST b/Source/gallery2/MANIFEST new file mode 100644 index 0000000..7e3535e --- /dev/null +++ b/Source/gallery2/MANIFEST @@ -0,0 +1,1358 @@ +# $Revision: 16636 $ +# File crc32 crc32(crlf) size size(crlf) or R File +LICENSE 3778559985 3184057198 18011 18351 +README.html 24212914 4266651054 79828 82189 +bootstrap.inc 1885928140 3308349794 2129 2187 +embed.php 3902714400 2014752743 2684 2751 +images/g2Logo.gif 1196739865 1196739865 6395 6395 +images/gallery.gif 2220981207 2220981207 1180 1180 +images/galleryLogo_sm.gif 1166401692 1166401692 3488 3488 +images/galleryLogo_sm.png 1945861746 1945861746 10222 10222 +images/gulftech.png 258707301 258707301 5804 5804 +images/intershot.png 3917150669 3917150669 5032 5032 +images/xhtml10.png 1165418597 1165418597 321 321 +index.php 3091941164 1552961421 1989 2038 +init.inc 1132951388 829764275 6754 6949 +install/GalleryStub.class 3538995474 3558390401 1267 1308 +install/InstallStep.class 869472020 2893907437 2455 2568 +install/StatusTemplate.class 1239815091 1576286026 3279 3380 +install/config.php-template 1465468496 1822314125 8143 8337 +install/images/background.png 2766840926 2766840926 23329 23329 +install/images/btnBGbl.gif 162020977 162020977 172 172 +install/images/btnBGgrn.gif 921048166 921048166 173 173 +install/images/btnBGor.gif 3886118901 3886118901 173 173 +install/images/btnBLbl.gif 929171289 929171289 172 172 +install/images/btnBLgrn.gif 676576556 676576556 171 171 +install/images/btnBLor.gif 3122183424 3122183424 172 172 +install/images/btnBRbl.gif 3553759478 3553759478 172 172 +install/images/btnBRgrn.gif 1593520250 1593520250 172 172 +install/images/btnBRor.gif 2239040372 2239040372 172 172 +install/images/btnTLbl.gif 752510677 752510677 171 171 +install/images/btnTLgrn.gif 1620552182 1620552182 171 171 +install/images/btnTLor.gif 1764133389 1764133389 171 171 +install/images/btnTRbl.gif 3306389985 3306389985 169 169 +install/images/btnTRgrn.gif 1466176462 1466176462 169 169 +install/images/btnTRor.gif 3506895090 3506895090 170 170 +install/images/g2Logo_install_head.png 3872611492 3872611492 13832 13832 +install/images/ico_error.gif 3087634832 3087634832 1608 1608 +install/images/ico_success.gif 1603034537 1603034537 1629 1629 +install/images/ico_warning.gif 3081259453 3081259453 1589 1589 +install/images/pixbl.gif 3423258834 3423258834 35 35 +install/images/pixgrn.gif 2511823829 2511823829 35 35 +install/images/pixor.gif 3720751771 3720751771 35 35 +install/index.php 1525745073 1097196220 10308 10653 +install/install.css 2863240938 4108902265 9624 10074 +install/locale/af/LC_MESSAGES/gallery2_install.mo 1351183578 1351183578 39771 39771 +install/locale/ar/LC_MESSAGES/gallery2_install.mo 1659854742 1659854742 964 964 +install/locale/bg/LC_MESSAGES/gallery2_install.mo 724189285 724189285 37476 37476 +install/locale/ca/LC_MESSAGES/gallery2_install.mo 3587169176 3587169176 1073 1073 +install/locale/cs/LC_MESSAGES/gallery2_install.mo 1470652920 1470652920 51254 51254 +install/locale/da/LC_MESSAGES/gallery2_install.mo 1558822183 1558822183 7091 7091 +install/locale/de/LC_MESSAGES/gallery2_install.mo 2600791056 2600791056 55889 55889 +install/locale/en_GB/LC_MESSAGES/gallery2_install.mo 3853863057 3853863057 1001 1001 +install/locale/es/LC_MESSAGES/gallery2_install.mo 1701730022 1701730022 54717 54717 +install/locale/eu/LC_MESSAGES/gallery2_install.mo 621926942 621926942 46130 46130 +install/locale/fi/LC_MESSAGES/gallery2_install.mo 4109217216 4109217216 50907 50907 +install/locale/fr/LC_MESSAGES/gallery2_install.mo 1291827138 1291827138 56699 56699 +install/locale/hu/LC_MESSAGES/gallery2_install.mo 3729587335 3729587335 53158 53158 +install/locale/it/LC_MESSAGES/gallery2_install.mo 3107322745 3107322745 53068 53068 +install/locale/ja/LC_MESSAGES/gallery2_install.mo 4233706538 4233706538 56762 56762 +install/locale/ko/LC_MESSAGES/gallery2_install.mo 1586647003 1586647003 37647 37647 +install/locale/lt/LC_MESSAGES/gallery2_install.mo 3383906678 3383906678 51958 51958 +install/locale/lv/LC_MESSAGES/gallery2_install.mo 2260374015 2260374015 20453 20453 +install/locale/nl/LC_MESSAGES/gallery2_install.mo 2197471821 2197471821 52812 52812 +install/locale/no/LC_MESSAGES/gallery2_install.mo 2921205274 2921205274 51187 51187 +install/locale/pl/LC_MESSAGES/gallery2_install.mo 3027560465 3027560465 53707 53707 +install/locale/ro/LC_MESSAGES/gallery2_install.mo 4273188921 4273188921 1147 1147 +install/locale/ru/LC_MESSAGES/gallery2_install.mo 2551115454 2551115454 63283 63283 +install/locale/sk/LC_MESSAGES/gallery2_install.mo 1821412344 1821412344 1142 1142 +install/locale/sr/LC_MESSAGES/gallery2_install.mo 477035411 477035411 47634 47634 +install/locale/sv/LC_MESSAGES/gallery2_install.mo 1504725147 1504725147 51820 51820 +install/locale/tr/LC_MESSAGES/gallery2_install.mo 2600934134 2600934134 27074 27074 +install/locale/uk/LC_MESSAGES/gallery2_install.mo 1088477096 1088477096 990 990 +install/locale/vi/LC_MESSAGES/gallery2_install.mo 662931149 662931149 45021 45021 +install/locale/zh_CN/LC_MESSAGES/gallery2_install.mo 2720823587 2720823587 24109 24109 +install/locale/zh_TW/LC_MESSAGES/gallery2_install.mo 2332517178 2332517178 49173 49173 +install/po/GNUmakefile 131239173 1173653828 126 132 +install/po/af.po 956016274 4273016179 57059 58520 +install/po/ar.po 3402387616 2199153412 30319 31437 +install/po/bg.po 3576443179 1884214806 62769 64133 +install/po/ca.po 3849463649 3075573699 30381 31501 +install/po/cs.po 2438583195 701252506 58926 60366 +install/po/da.po 1844155541 336085502 32585 33709 +install/po/de.po 1989916160 2871325699 58570 59980 +install/po/en_GB.po 509653501 1890502303 52835 54184 +install/po/es.po 433367642 4136559541 56925 58306 +install/po/eu.po 94133783 1490071157 55061 56464 +install/po/fi.po 2844042296 3556428759 53416 54766 +install/po/fr.po 1903424779 663637256 58989 60385 +install/po/hu.po 1072632071 2348093134 55664 57027 +install/po/it.po 4267496279 1321133169 55304 56675 +install/po/ja.po 3052648553 1345192986 62978 64330 +install/po/ko.po 3048514726 2526602955 51551 52846 +install/po/lt.po 3183631900 2117512206 54349 55695 +install/po/lv.po 1561144765 1387472168 38820 39988 +install/po/nl.po 2483049028 2619972860 57827 59256 +install/po/no.po 4138716460 4204250333 53286 54634 +install/po/pl.po 1799598795 1383659071 56011 57372 +install/po/ro.po 979412937 2183158272 30372 31493 +install/po/ru.po 2853448839 4230300312 81998 83495 +install/po/sk.po 2822801796 1480668072 30483 31606 +install/po/sr.po 3549691599 2397519766 61031 62521 +install/po/strings.raw 2615515569 300627042 27932 28280 +install/po/sv.po 1279868833 1614551184 53948 55299 +install/po/tr.po 1686440699 1442839329 44145 45410 +install/po/uk.po 2046093022 3184297590 30614 31738 +install/po/vi.po 2375993168 3157422540 63207 64642 +install/po/zh_CN.po 3087381940 303670480 54223 55597 +install/po/zh_TW.po 382407777 1429552119 50901 52151 +install/steps/AdminUserSetupStep.class 2221168085 3036218242 4262 4384 +install/steps/AuthenticateStep.class 4247137199 761431684 2986 3083 +install/steps/CreateConfigFileStep.class 1641932794 2433180521 8130 8346 +install/steps/DatabaseSetupStep.class 3221097409 107951128 25145 25871 +install/steps/FinishedStep.class 1176682626 3301965748 1285 1324 +install/steps/InstallCoreModuleStep.class 3656958974 922155145 9440 9686 +install/steps/InstallOtherModulesStep.class 246112376 3940607770 9496 9795 +install/steps/MultisiteStep.class 3271967288 4237753300 6349 6529 +install/steps/SecureStep.class 840214918 2938791733 2224 2286 +install/steps/StorageSetupStep.class 3761790822 2039876101 10336 10646 +install/steps/SystemChecksStep.class 629765889 225773591 19315 19844 +install/steps/WelcomeStep.class 3317962444 11445266 1473 1523 +install/templates/AdminUserSetupRequest.html 1002631039 3999363617 3689 3805 +install/templates/AdminUserSetupSuccess.html 4206166754 147542172 100 105 +install/templates/AuthenticateRequest.html 589189855 1296419602 1456 1479 +install/templates/AuthenticateSuccessful.html 1331499763 934077975 89 94 +install/templates/CleanInstallRequest.html 2976657439 303315551 1137 1161 +install/templates/CreateConfigFileFailed.html 1396052546 1811924910 514 531 +install/templates/CreateConfigFileInstructions.html 3463198392 2310119017 1804 1842 +install/templates/CreateConfigFileSuccess.html 1391408172 829188516 407 416 +install/templates/DatabaseSetupRequest.html 3389030128 2670068966 4920 5058 +install/templates/DatabaseSetupSuccess.html 920547944 825436087 90 95 +install/templates/Finished.html 2467850669 3523563640 776 793 +install/templates/Header.html 26338478 4088582083 660 683 +install/templates/InstallCoreModuleError.html 2589349954 1077866568 1546 1574 +install/templates/InstallCoreModuleSuccess.html 1962461428 3347005861 434 443 +install/templates/InstallOtherModulesRequest.html 2655140861 3479146286 4613 4727 +install/templates/InstallOtherModulesSuccess.html 3590553244 156803625 1987 2032 +install/templates/MainPage.html 2008201078 3223312565 6923 7087 +install/templates/ManifestSystemCheck.html 1198978707 3679581028 3370 3432 +install/templates/Multisite.html 473814888 1169534757 6536 6654 +install/templates/MultisiteSuccess.html 3637549020 2095741799 206 216 +install/templates/NavBar.html 1952304065 963513540 1258 1297 +install/templates/Secure.html 1295671378 3610014054 2747 2799 +install/templates/StorageSetupRequest.html 695235472 2507932040 8223 8372 +install/templates/StorageSetupSuccess.html 1056692906 3881909576 97 102 +install/templates/SystemChecks.html 3858186548 1672036693 1111 1150 +install/templates/VersionCheckFailed.html 3142928725 3099485724 1860 1921 +install/templates/Welcome.html 3109391562 828746364 1769 1801 +lib/JSON/JSON.php 2355118408 4191637452 33859 34664 +lib/adodb/adodb-error.inc.php 3955431639 3375003799 8543 8801 +lib/adodb/adodb-iterator.inc.php 3925296548 3041787441 1598 1683 +lib/adodb/adodb-lib.inc.php 2372925053 3035625757 34227 35355 +lib/adodb/adodb-perf.inc.php 1079396953 2960157670 31193 32261 +lib/adodb/adodb-php4.inc.php 3169437505 2086456296 321 337 +lib/adodb/adodb-time.inc.php 3319263806 2667927725 39804 41141 +lib/adodb/adodb.inc.php 494140630 3557675401 120496 124717 +lib/adodb/drivers/adodb-ado.inc.php 2756380825 69868861 15613 16247 +lib/adodb/drivers/adodb-ado5.inc.php 1743976062 3801085566 16466 17134 +lib/adodb/drivers/adodb-ado_mssql.inc.php 2797399065 791231027 4427 4582 +lib/adodb/drivers/adodb-db2.inc.php 1844214876 2112518276 20254 21053 +lib/adodb/drivers/adodb-mysql.inc.php 2988726074 3604951962 20960 21750 +lib/adodb/drivers/adodb-mysqli.inc.php 3205020604 2946563321 26241 27252 +lib/adodb/drivers/adodb-mysqlt.inc.php 2136956955 2635577427 3774 3929 +lib/adodb/drivers/adodb-oci8.inc.php 3404546473 9312483 42967 44469 +lib/adodb/drivers/adodb-oci805.inc.php 3143402665 2699063203 1580 1639 +lib/adodb/drivers/adodb-oci8po.inc.php 2031494675 1938147942 5502 5719 +lib/adodb/drivers/adodb-oracle.inc.php 4039297599 703908166 9280 9618 +lib/adodb/drivers/adodb-postgres64.inc.php 1425125109 2714029685 31833 32897 +lib/adodb/drivers/adodb-postgres7.inc.php 317637682 3980994582 7131 7396 +lib/adodb/drivers/adodb-sqlite.inc.php 2528818279 1139164406 10434 10832 +lib/adodb/drivers/adodb-sqlitepo.inc.php 815563461 1955933156 1864 1926 +lib/adodb/license.txt 3461088424 425178580 25899 26081 +lib/adodb/perf/perf-db2.inc.php 1707227151 2506662655 3008 3110 +lib/adodb/perf/perf-mssql.inc.php 2419703626 3572472263 4822 4986 +lib/adodb/perf/perf-mysql.inc.php 3908811111 3329732535 8430 8745 +lib/adodb/perf/perf-oci8.inc.php 62792791 1006595481 16492 17001 +lib/adodb/perf/perf-postgres.inc.php 3876279643 2810765741 4612 4736 +lib/adodb/readme.txt 3642036082 427593884 1671 1733 +lib/adodb/tohtml.inc.php 4216382869 3141985185 5531 5726 +lib/bbcode/COPYING 2687521289 234343298 18009 18349 +lib/bbcode/LICENSE 1278638961 1353016099 1005 1028 +lib/bbcode/README 3436317549 2978885055 628 644 +lib/bbcode/stringparser.class.php 2648903243 117897416 36970 38515 +lib/bbcode/stringparser_bbcode.class.php 3055842182 225085232 52803 54762 +lib/javascript/AutoComplete.js 3164547487 1714904987 3114 3185 +lib/javascript/BlockSelectWidget.js 3722289369 4088618519 20176 20807 +lib/javascript/BlockToggle.js 2213494080 4263897488 1359 1392 +lib/javascript/ColorChooser.js 3701428173 2867242645 3648 3749 +lib/javascript/Cropper.js 415766708 2172157217 10765 11099 +lib/pear/HTMLSax3.php 3075060850 234014971 42829 44167 +lib/pear/Safe.php 1934953572 2529713224 18277 18951 +lib/pear/mime.php 549059631 1960526174 34928 35843 +lib/pear/mimePart.php 1798739292 1057505025 12521 12872 +lib/smarty/COPYING.lib 2819441257 4217144802 24389 24847 +lib/smarty/Config_File.class.php 2012727591 2452662821 12745 13134 +lib/smarty/README 616434585 2836560627 3186 3266 +lib/smarty/Smarty.class.php 940123117 2340280047 63245 65189 +lib/smarty/Smarty_Compiler.class.php 2181841029 1204265587 91742 94062 +lib/smarty/debug.tpl 4026419042 1932865254 3562 3718 +lib/smarty/internals/core.assemble_plugin_filepath.php 2308203854 285966143 1949 2016 +lib/smarty/internals/core.assign_smarty_interface.php 3876088753 1676896789 1258 1301 +lib/smarty/internals/core.create_dir_structure.php 2232009467 226847810 2507 2586 +lib/smarty/internals/core.display_debug_console.php 2623652360 3109619299 1583 1644 +lib/smarty/internals/core.get_include_path.php 2904186623 2076945407 1002 1046 +lib/smarty/internals/core.get_microtime.php 4175355305 2363575603 360 383 +lib/smarty/internals/core.get_php_resource.php 600575070 46127069 2467 2547 +lib/smarty/internals/core.is_secure.php 1006502704 3895749665 1694 1753 +lib/smarty/internals/core.is_trusted.php 738474400 4013353103 1284 1331 +lib/smarty/internals/core.load_plugins.php 2582671890 3075972098 4429 4554 +lib/smarty/internals/core.load_resource_plugin.php 3083340139 958865844 2147 2221 +lib/smarty/internals/core.process_cached_inserts.php 2576649032 3444191154 2464 2535 +lib/smarty/internals/core.process_compiled_include.php 2167620517 3150673181 1011 1048 +lib/smarty/internals/core.read_cache_file.php 2573194400 2033973560 3604 3705 +lib/smarty/internals/core.rm_auto.php 2261804047 688618704 2286 2357 +lib/smarty/internals/core.rmdir.php 2415460627 1014435373 1444 1498 +lib/smarty/internals/core.run_insert_handler.php 2810320771 3072536386 2656 2727 +lib/smarty/internals/core.smarty_include_php.php 1062397499 381887763 1602 1652 +lib/smarty/internals/core.write_cache_file.php 120483243 3185751241 3620 3716 +lib/smarty/internals/core.write_compiled_include.php 1773670157 496317231 3122 3213 +lib/smarty/internals/core.write_compiled_resource.php 1297727610 3763704011 1081 1116 +lib/smarty/internals/core.write_file.php 3630976760 915152101 1516 1569 +lib/smarty/plugins/block.textformat.php 941417647 3056605918 2843 2946 +lib/smarty/plugins/compiler.assign.php 3450137067 3333577008 1123 1163 +lib/smarty/plugins/function.assign_debug_info.php 1066413903 2429981306 1162 1202 +lib/smarty/plugins/function.config_load.php 1562870436 2539480862 6158 6300 +lib/smarty/plugins/function.counter.php 2313392670 4113559049 1772 1852 +lib/smarty/plugins/function.cycle.php 2535274429 3387179515 3192 3294 +lib/smarty/plugins/function.debug.php 2310365736 3966496971 835 870 +lib/smarty/plugins/function.eval.php 175387613 2692956850 1014 1063 +lib/smarty/plugins/function.fetch.php 3176353939 1237163725 8743 8964 +lib/smarty/plugins/function.html_checkboxes.php 1022408579 158205255 4381 4524 +lib/smarty/plugins/function.html_image.php 3718330911 2435668647 4783 4925 +lib/smarty/plugins/function.html_options.php 837622559 2229995754 3797 3919 +lib/smarty/plugins/function.html_radios.php 2829508658 1036916117 4841 4997 +lib/smarty/plugins/function.html_select_date.php 501391758 2271872957 11809 12136 +lib/smarty/plugins/function.html_select_time.php 3360050068 2520058297 7262 7456 +lib/smarty/plugins/function.html_table.php 3581409823 1472393310 5343 5520 +lib/smarty/plugins/function.mailto.php 4188691726 1967013991 5236 5401 +lib/smarty/plugins/function.math.php 4020728981 2161267496 2579 2663 +lib/smarty/plugins/function.popup.php 2834617843 1222903078 3280 3399 +lib/smarty/plugins/function.popup_init.php 3132366341 2556338109 979 1019 +lib/smarty/plugins/modifier.capitalize.php 2040480662 65541879 1037 1080 +lib/smarty/plugins/modifier.cat.php 3804093512 1426896802 623 656 +lib/smarty/plugins/modifier.count_characters.php 4197276449 1384233138 743 775 +lib/smarty/plugins/modifier.count_paragraphs.php 1486572716 1728078823 630 659 +lib/smarty/plugins/modifier.count_sentences.php 3521295329 3882198646 653 682 +lib/smarty/plugins/modifier.count_words.php 2916689380 3127696403 751 784 +lib/smarty/plugins/modifier.date_format.php 909009211 4231869585 1542 1593 +lib/smarty/plugins/modifier.debug_print_var.php 1482012117 3170243800 3160 3257 +lib/smarty/plugins/modifier.default.php 4123781456 3841623911 635 667 +lib/smarty/plugins/modifier.escape.php 1066204664 1604304404 2751 2844 +lib/smarty/plugins/modifier.indent.php 616465163 3183265596 567 595 +lib/smarty/plugins/modifier.lower.php 2046168879 205927100 481 507 +lib/smarty/plugins/modifier.nl2br.php 39964044 4029780705 717 752 +lib/smarty/plugins/modifier.regex_replace.php 810442098 407997065 900 935 +lib/smarty/plugins/modifier.replace.php 983758123 901211326 585 615 +lib/smarty/plugins/modifier.spacify.php 2754184993 3836379118 644 674 +lib/smarty/plugins/modifier.string_format.php 3249927007 3773462783 579 608 +lib/smarty/plugins/modifier.strip.php 982963012 3023277631 742 775 +lib/smarty/plugins/modifier.strip_tags.php 775938197 3768042181 676 708 +lib/smarty/plugins/modifier.truncate.php 259277406 569525635 1308 1358 +lib/smarty/plugins/modifier.upper.php 2036914576 1330812571 481 507 +lib/smarty/plugins/modifier.wordwrap.php 1323391675 2906645702 613 642 +lib/smarty/plugins/outputfilter.trimwhitespace.php 2667705784 3998542726 2649 2724 +lib/smarty/plugins/shared.escape_special_chars.php 747808564 3354495556 774 805 +lib/smarty/plugins/shared.make_timestamp.php 1115248245 3247734388 1167 1213 +lib/smarty_plugins/modifier.entitytruncate.php 232860796 500993218 2977 3052 +lib/smarty_plugins/modifier.ireplace.php 1242381659 2056547491 1424 1460 +lib/smarty_plugins/modifier.markup.php 1348964542 510722349 7190 7405 +lib/smarty_plugins/modifier.print_r.php 3156938771 206281668 1198 1232 +lib/smarty_plugins/modifier.repeat.php 937962268 871952139 1174 1206 +lib/smarty_plugins/modifier.split.php 2541864867 2289429187 1295 1328 +lib/smarty_plugins/modifier.utf8.php 3839198529 3347141976 1211 1244 +lib/smtp/smtp.php 1756988799 3101303245 5476 5655 +lib/support/GallerySetupUtilities.class 1755226911 3066052807 12780 13216 +lib/support/cache.php 4222823931 3495912677 5519 5705 +lib/support/chmod.php 2275389555 4113954158 26165 26889 +lib/support/gd.php 97525218 591344153 6731 6950 +lib/support/index.php 2403509338 295382260 1959 2031 +lib/support/phpinfo.php 1603936631 4096675032 1472 1542 +lib/support/security.inc 1653605362 3830135838 8572 8809 +lib/support/support.css 2112483014 4233611633 2109 2263 +lib/support/templates/FailedPasswordEmail.tpl 2810913115 419899505 1152 1166 +lib/tools/po/.htaccess 3087127056 3127319940 47 50 +lib/tools/po/GNUmakefile.inc 3274588836 394920383 4792 4934 +lib/tools/po/extract.php 4094240284 1146576891 8361 8613 +lib/tools/po/header.pl 1950674109 3670944210 1141 1170 +lib/tools/po/header.txt 2389395204 3345852764 864 882 +lib/tools/po/premerge-messages.pl 3726868671 3199359966 912 970 +lib/tools/po/shtool 2882826200 4174946454 23738 24454 +lib/tools/po/trim-po.php 400809856 2466494201 2889 2985 +lib/tools/po/update-all-translations.pl 2259783978 3161817494 3625 3761 +lib/wz_dragdrop/transparentpixel.gif 140141401 140141401 43 43 +lib/wz_dragdrop/wz_dragdrop.js 3756427581 4136821188 38687 40134 +lib/yui/animation-min.js 1024449788 3382714815 14489 14490 +lib/yui/autocomplete-min.js 3209856471 2706212623 35739 35920 +lib/yui/color.js 3960542379 2788971144 3034 3135 +lib/yui/connection-min.js 4135263408 2635307402 7959 8046 +lib/yui/container-min.js 57135648 563696816 64509 64800 +lib/yui/dom-min.js 2627956720 3233268007 11543 11544 +lib/yui/dragdrop-min.js 392664224 3885244019 21767 21775 +lib/yui/event-min.js 205236879 205236879 9539 9539 +lib/yui/slider-min.js 3412586606 3412586606 9812 9812 +lib/yui/yahoo-min.js 4278587764 4278587764 1419 1419 +main.php 4100518646 932503662 20905 21541 +upgrade/StatusTemplate.class 1895737894 1352066987 3271 3372 +upgrade/UpgradeStep.class 1103997482 4037753310 3002 3128 +upgrade/images/background.png 2766840926 2766840926 23329 23329 +upgrade/images/btnBGbl.gif 162020977 162020977 172 172 +upgrade/images/btnBGgrn.gif 921048166 921048166 173 173 +upgrade/images/btnBGor.gif 3886118901 3886118901 173 173 +upgrade/images/btnBLbl.gif 929171289 929171289 172 172 +upgrade/images/btnBLgrn.gif 676576556 676576556 171 171 +upgrade/images/btnBLor.gif 3122183424 3122183424 172 172 +upgrade/images/btnBRbl.gif 3553759478 3553759478 172 172 +upgrade/images/btnBRgrn.gif 1593520250 1593520250 172 172 +upgrade/images/btnBRor.gif 2239040372 2239040372 172 172 +upgrade/images/btnTLbl.gif 752510677 752510677 171 171 +upgrade/images/btnTLgrn.gif 1620552182 1620552182 171 171 +upgrade/images/btnTLor.gif 1764133389 1764133389 171 171 +upgrade/images/btnTRbl.gif 3306389985 3306389985 169 169 +upgrade/images/btnTRgrn.gif 1466176462 1466176462 169 169 +upgrade/images/btnTRor.gif 3506895090 3506895090 170 170 +upgrade/images/g2Logo_upgrade_head.png 405041770 405041770 16688 16688 +upgrade/images/ico_error.gif 3087634832 3087634832 1608 1608 +upgrade/images/ico_success.gif 1603034537 1603034537 1629 1629 +upgrade/images/ico_warning.gif 3081259453 3081259453 1589 1589 +upgrade/images/pixbl.gif 3423258834 3423258834 35 35 +upgrade/images/pixgrn.gif 2511823829 2511823829 35 35 +upgrade/images/pixor.gif 3720751771 3720751771 35 35 +upgrade/index.php 568769716 2291864476 8491 8769 +upgrade/locale/af/LC_MESSAGES/gallery2_upgrade.mo 832026030 832026030 14289 14289 +upgrade/locale/ar/LC_MESSAGES/gallery2_upgrade.mo 1410283278 1410283278 838 838 +upgrade/locale/bg/LC_MESSAGES/gallery2_upgrade.mo 1708029646 1708029646 13951 13951 +upgrade/locale/ca/LC_MESSAGES/gallery2_upgrade.mo 4000806373 4000806373 873 873 +upgrade/locale/cs/LC_MESSAGES/gallery2_upgrade.mo 2940882539 2940882539 27102 27102 +upgrade/locale/da/LC_MESSAGES/gallery2_upgrade.mo 4170654903 4170654903 858 858 +upgrade/locale/de/LC_MESSAGES/gallery2_upgrade.mo 1881420220 1881420220 30206 30206 +upgrade/locale/en_GB/LC_MESSAGES/gallery2_upgrade.mo 893765417 893765417 455 455 +upgrade/locale/es/LC_MESSAGES/gallery2_upgrade.mo 1613648101 1613648101 29534 29534 +upgrade/locale/eu/LC_MESSAGES/gallery2_upgrade.mo 1879743213 1879743213 19921 19921 +upgrade/locale/fi/LC_MESSAGES/gallery2_upgrade.mo 3166316779 3166316779 919 919 +upgrade/locale/fr/LC_MESSAGES/gallery2_upgrade.mo 4240616956 4240616956 30903 30903 +upgrade/locale/hu/LC_MESSAGES/gallery2_upgrade.mo 3200625707 3200625707 855 855 +upgrade/locale/it/LC_MESSAGES/gallery2_upgrade.mo 144580477 144580477 28485 28485 +upgrade/locale/ja/LC_MESSAGES/gallery2_upgrade.mo 3896762961 3896762961 24545 24545 +upgrade/locale/ko/LC_MESSAGES/gallery2_upgrade.mo 1176389047 1176389047 8101 8101 +upgrade/locale/lt/LC_MESSAGES/gallery2_upgrade.mo 4195023592 4195023592 945 945 +upgrade/locale/lv/LC_MESSAGES/gallery2_upgrade.mo 1316396442 1316396442 8526 8526 +upgrade/locale/nl/LC_MESSAGES/gallery2_upgrade.mo 3684831200 3684831200 25339 25339 +upgrade/locale/no/LC_MESSAGES/gallery2_upgrade.mo 3536759822 3536759822 27762 27762 +upgrade/locale/pl/LC_MESSAGES/gallery2_upgrade.mo 3115784532 3115784532 28796 28796 +upgrade/locale/ro/LC_MESSAGES/gallery2_upgrade.mo 2206901887 2206901887 952 952 +upgrade/locale/ru/LC_MESSAGES/gallery2_upgrade.mo 1468709238 1468709238 25374 25374 +upgrade/locale/sk/LC_MESSAGES/gallery2_upgrade.mo 2515937691 2515937691 941 941 +upgrade/locale/sr/LC_MESSAGES/gallery2_upgrade.mo 2606662568 2606662568 21518 21518 +upgrade/locale/sv/LC_MESSAGES/gallery2_upgrade.mo 3964915744 3964915744 27807 27807 +upgrade/locale/tr/LC_MESSAGES/gallery2_upgrade.mo 237959342 237959342 24297 24297 +upgrade/locale/uk/LC_MESSAGES/gallery2_upgrade.mo 3513483 3513483 841 841 +upgrade/locale/vi/LC_MESSAGES/gallery2_upgrade.mo 1776123660 1776123660 16679 16679 +upgrade/locale/zh_CN/LC_MESSAGES/gallery2_upgrade.mo 3955543957 3955543957 9416 9416 +upgrade/locale/zh_TW/LC_MESSAGES/gallery2_upgrade.mo 3059695836 3059695836 26647 26647 +upgrade/po/GNUmakefile 3981272167 3303981136 126 132 +upgrade/po/af.po 2946472650 639425243 28607 29445 +upgrade/po/ar.po 1244478717 2295896798 17219 17902 +upgrade/po/bg.po 2478316148 35877746 31588 32394 +upgrade/po/ca.po 1293304758 1410475858 17327 18013 +upgrade/po/cs.po 166840355 4242498147 32198 33058 +upgrade/po/da.po 2773234429 163428965 17336 18023 +upgrade/po/de.po 1528939122 2697216069 33033 33890 +upgrade/po/en_GB.po 3775507642 2500062309 29110 29914 +upgrade/po/es.po 2316821381 3932207276 31425 32249 +upgrade/po/eu.po 265331144 2796679539 30964 31825 +upgrade/po/fi.po 2529395250 3956685987 17409 18097 +upgrade/po/fr.po 3742018775 2321700512 32804 33640 +upgrade/po/hu.po 333553658 3221024047 17311 17998 +upgrade/po/it.po 42519070 2210150646 30429 31242 +upgrade/po/ja.po 1551397150 1567870190 32816 33620 +upgrade/po/ko.po 3149066238 643404419 22604 23342 +upgrade/po/lt.po 2657343108 1454764941 17345 18030 +upgrade/po/lv.po 4020991947 3096213835 20537 21240 +upgrade/po/nl.po 2350285080 652265093 32298 33168 +upgrade/po/no.po 3510117288 1584944852 29591 30395 +upgrade/po/pl.po 2735297580 1756213412 30834 31645 +upgrade/po/ro.po 2942437089 3451422412 17323 18010 +upgrade/po/ru.po 4094942428 142658946 42637 43524 +upgrade/po/sk.po 3328858459 1136254504 17428 18117 +upgrade/po/sr.po 503636366 303459109 32299 33181 +upgrade/po/strings.raw 2910922707 3522829501 15458 15674 +upgrade/po/sv.po 2985170872 1934580759 29624 30430 +upgrade/po/tr.po 314504011 2277490516 32598 33465 +upgrade/po/uk.po 462572490 424165451 17494 18183 +upgrade/po/vi.po 3513090999 1463339392 31778 32613 +upgrade/po/zh_CN.po 2391259378 2535320248 29464 30297 +upgrade/po/zh_TW.po 1623943243 2027571072 28259 29023 +upgrade/steps/AuthenticateStep.class 3959092243 3922789407 3085 3173 +upgrade/steps/CleanCacheStep.class 3119751369 888425571 2963 3050 +upgrade/steps/FinishedStep.class 3114865067 513654131 1119 1154 +upgrade/steps/RedirectToInstallerStep.class 3724236023 3764634579 1683 1734 +upgrade/steps/SystemChecksStep.class 2795141813 3117964273 21940 22538 +upgrade/steps/UpgradeCoreModuleStep.class 2476622324 2279631887 6069 6239 +upgrade/steps/UpgradeOtherModulesStep.class 2560092579 2444616070 13434 13852 +upgrade/steps/WelcomeStep.class 384488481 2778124194 1662 1715 +upgrade/templates/AuthenticateRequest.html 291721366 1935545619 3334 3399 +upgrade/templates/AuthenticateSuccessful.html 2066199327 580023278 101 106 +upgrade/templates/CleanCache.html 976369853 348492095 1510 1541 +upgrade/templates/Finished.html 3628062846 699733758 543 556 +upgrade/templates/Header.html 445714115 3021541490 658 681 +upgrade/templates/InvalidConfig.html 1476367480 3003024647 356 362 +upgrade/templates/MainPage.html 3501372724 2020875351 6367 6531 +upgrade/templates/ManifestCleanupScript.html 1515322671 2469136373 401 415 +upgrade/templates/ManifestSystemCheck.html 1324659660 1602055164 3657 3720 +upgrade/templates/NavBar.html 3813728563 2324884567 1223 1263 +upgrade/templates/RedirectToInstaller.html 4115505707 2358693729 934 954 +upgrade/templates/SystemChecks.html 3858186548 1672036693 1111 1150 +upgrade/templates/UpgradeCoreModuleError.html 3625831103 3860079866 739 763 +upgrade/templates/UpgradeCoreModuleRequest.html 58181271 3128305373 4660 4772 +upgrade/templates/UpgradeCoreModuleSuccess.html 1787488240 150046363 952 973 +upgrade/templates/UpgradeCoreModuleUpToDate.html 2645894279 2517089352 438 456 +upgrade/templates/UpgradeOtherModulesRequest.html 824097173 4284694959 6249 6414 +upgrade/templates/UpgradeOtherModulesSuccess.html 3639925644 3748780682 2049 2106 +upgrade/templates/Welcome.html 3749003252 2684446060 1636 1666 +upgrade/upgrade.css 2128020900 3461441129 8473 8858 +R docs/DEVELOPER_GUIDELINES +R docs/EMBEDDING +R docs/LOCALIZING +R docs/TODO.baschny +R docs/TODO.bharat +R docs +R init.php +R install/locale/bg_BG/LC_MESSAGES/gallery2_install.mo +R install/locale/bg_BG/LC_MESSAGES +R install/locale/bg_BG +R install/locale/cs_CZ/LC_MESSAGES/gallery2_install.mo +R install/locale/cs_CZ/LC_MESSAGES +R install/locale/cs_CZ +R install/locale/de_DE/LC_MESSAGES/gallery2_install.mo +R install/locale/de_DE/LC_MESSAGES +R install/locale/de_DE +R install/locale/eu_ES/LC_MESSAGES/gallery2_install.mo +R install/locale/eu_ES/LC_MESSAGES +R install/locale/eu_ES +R install/locale/fr_FR/LC_MESSAGES/gallery2_install.mo +R install/locale/fr_FR/LC_MESSAGES +R install/locale/fr_FR +R install/locale/it_IT/LC_MESSAGES/gallery2_install.mo +R install/locale/it_IT/LC_MESSAGES +R install/locale/it_IT +R install/locale/ja_JP/LC_MESSAGES/gallery2_install.mo +R install/locale/ja_JP/LC_MESSAGES +R install/locale/ja_JP +R install/locale/nl_NL/LC_MESSAGES/gallery2_install.mo +R install/locale/nl_NL/LC_MESSAGES +R install/locale/nl_NL +R install/locale/sr_YU/LC_MESSAGES/gallery2_install.mo +R install/locale/sr_YU/LC_MESSAGES +R install/locale/sr_YU +R install/locale/tr_TR/LC_MESSAGES/gallery2_install.mo +R install/locale/tr_TR/LC_MESSAGES +R install/locale/tr_TR +R install/locale/vi_VN/LC_MESSAGES/gallery2_install.mo +R install/locale/vi_VN/LC_MESSAGES +R install/locale/vi_VN +R install/multiconfig.php-template +R install/po/bg_BG.po +R install/po/cs_CZ.po +R install/po/de_DE.po +R install/po/eu_ES.po +R install/po/fr_FR.po +R install/po/it_IT.po +R install/po/ja_JP.po +R install/po/nl_NL.po +R install/po/sr_YU.po +R install/po/tr_TR.po +R install/po/vi_VN.po +R install/styles/style.css +R install/styles +R install/templates/InstallCoreModule.html +R install/templates/WelcomeMultiSite.html +R layouts/classic/MANIFEST +R layouts/classic/debug/viewableFiles.txt +R layouts/classic/debug +R layouts/classic/images/nav_dot.gif +R layouts/classic/images/nav_dot_left.gif +R layouts/classic/images/nav_dot_right.gif +R layouts/classic/images/nav_first.gif +R layouts/classic/images/nav_home.gif +R layouts/classic/images/nav_last.gif +R layouts/classic/images/nav_next.gif +R layouts/classic/images/nav_page.gif +R layouts/classic/images/nav_prev.gif +R layouts/classic/images +R layouts/classic/layout.css +R layouts/classic/layout.css.php +R layouts/classic/layout.inc +R layouts/classic/locale/cs_CZ/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/cs_CZ/LC_MESSAGES +R layouts/classic/locale/cs_CZ +R layouts/classic/locale/da_DK/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/da_DK/LC_MESSAGES +R layouts/classic/locale/da_DK +R layouts/classic/locale/de_DE/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/de_DE/LC_MESSAGES +R layouts/classic/locale/de_DE +R layouts/classic/locale/el_GR/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/el_GR/LC_MESSAGES +R layouts/classic/locale/el_GR +R layouts/classic/locale/en_GB/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/en_GB/LC_MESSAGES +R layouts/classic/locale/en_GB +R layouts/classic/locale/es_AR/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/es_AR/LC_MESSAGES +R layouts/classic/locale/es_AR +R layouts/classic/locale/es_ES/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/es_ES/LC_MESSAGES +R layouts/classic/locale/es_ES +R layouts/classic/locale/fi_FI/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/fi_FI/LC_MESSAGES +R layouts/classic/locale/fi_FI +R layouts/classic/locale/fr_FR/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/fr_FR/LC_MESSAGES +R layouts/classic/locale/fr_FR +R layouts/classic/locale/ga_IE/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/ga_IE/LC_MESSAGES +R layouts/classic/locale/ga_IE +R layouts/classic/locale/is_IS/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/is_IS/LC_MESSAGES +R layouts/classic/locale/is_IS +R layouts/classic/locale/it_IT/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/it_IT/LC_MESSAGES +R layouts/classic/locale/it_IT +R layouts/classic/locale/ja_JP/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/ja_JP/LC_MESSAGES +R layouts/classic/locale/ja_JP +R layouts/classic/locale/nl_NL/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/nl_NL/LC_MESSAGES +R layouts/classic/locale/nl_NL +R layouts/classic/locale/no_NO/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/no_NO/LC_MESSAGES +R layouts/classic/locale/no_NO +R layouts/classic/locale/pl_PL/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/pl_PL/LC_MESSAGES +R layouts/classic/locale/pl_PL +R layouts/classic/locale/pt_BR/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/pt_BR/LC_MESSAGES +R layouts/classic/locale/pt_BR +R layouts/classic/locale/sv_SE/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/sv_SE/LC_MESSAGES +R layouts/classic/locale/sv_SE +R layouts/classic/locale/tr_TR/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/tr_TR/LC_MESSAGES +R layouts/classic/locale/tr_TR +R layouts/classic/locale/vi_VN/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/vi_VN/LC_MESSAGES +R layouts/classic/locale/vi_VN +R layouts/classic/locale/zh_CN/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/zh_CN/LC_MESSAGES +R layouts/classic/locale/zh_CN +R layouts/classic/locale/zh_TW/LC_MESSAGES/layouts_classic.mo +R layouts/classic/locale/zh_TW/LC_MESSAGES +R layouts/classic/locale/zh_TW +R layouts/classic/locale +R layouts/classic/po/GNUmakefile +R layouts/classic/po/cs_CZ.po +R layouts/classic/po/da_DK.po +R layouts/classic/po/de_DE.po +R layouts/classic/po/el_GR.po +R layouts/classic/po/en_GB.po +R layouts/classic/po/es_AR.po +R layouts/classic/po/es_ES.po +R layouts/classic/po/fi_FI.po +R layouts/classic/po/fr_FR.po +R layouts/classic/po/ga_IE.po +R layouts/classic/po/is_IS.po +R layouts/classic/po/it_IT.po +R layouts/classic/po/ja_JP.po +R layouts/classic/po/nl_NL.po +R layouts/classic/po/no_NO.po +R layouts/classic/po/pl_PL.po +R layouts/classic/po/pt_BR.po +R layouts/classic/po/strings.raw +R layouts/classic/po/sv_SE.po +R layouts/classic/po/tr_TR.po +R layouts/classic/po/vi_VN.po +R layouts/classic/po/zh_CN.po +R layouts/classic/po/zh_TW.po +R layouts/classic/po +R layouts/classic/templates/albumBody.tpl +R layouts/classic/templates/albumThumbnail.tpl +R layouts/classic/templates/head.tpl +R layouts/classic/templates/itemNavigator.tpl +R layouts/classic/templates/pageNavigator.tpl +R layouts/classic/templates/parents.tpl +R layouts/classic/templates/pathbar.tpl +R layouts/classic/templates/singleBody.tpl +R layouts/classic/templates/singleThumbnail.tpl +R layouts/classic/templates +R layouts/classic +R layouts/hybrid/MANIFEST +R layouts/hybrid/debug/viewableFiles.txt +R layouts/hybrid/debug +R layouts/hybrid/hybrid.js +R layouts/hybrid/images/alb.png +R layouts/hybrid/images/down.png +R layouts/hybrid/images/fit.png +R layouts/hybrid/images/full.png +R layouts/hybrid/images/fwd.png +R layouts/hybrid/images/info.png +R layouts/hybrid/images/left.png +R layouts/hybrid/images/menu.png +R layouts/hybrid/images/next-off.png +R layouts/hybrid/images/next.png +R layouts/hybrid/images/poz.png +R layouts/hybrid/images/prev-off.png +R layouts/hybrid/images/prev.png +R layouts/hybrid/images/rand.png +R layouts/hybrid/images/rev.png +R layouts/hybrid/images/right.png +R layouts/hybrid/images/up.png +R layouts/hybrid/images +R layouts/hybrid/layout.css +R layouts/hybrid/layout.inc +R layouts/hybrid/locale/cs_CZ/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/cs_CZ/LC_MESSAGES +R layouts/hybrid/locale/cs_CZ +R layouts/hybrid/locale/de_DE/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/de_DE/LC_MESSAGES +R layouts/hybrid/locale/de_DE +R layouts/hybrid/locale/fr_FR/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/fr_FR/LC_MESSAGES +R layouts/hybrid/locale/fr_FR +R layouts/hybrid/locale/is_IS/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/is_IS/LC_MESSAGES +R layouts/hybrid/locale/is_IS +R layouts/hybrid/locale/it_IT/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/it_IT/LC_MESSAGES +R layouts/hybrid/locale/it_IT +R layouts/hybrid/locale/nl_NL/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/nl_NL/LC_MESSAGES +R layouts/hybrid/locale/nl_NL +R layouts/hybrid/locale/no_NO/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/no_NO/LC_MESSAGES +R layouts/hybrid/locale/no_NO +R layouts/hybrid/locale/sv_SE/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/sv_SE/LC_MESSAGES +R layouts/hybrid/locale/sv_SE +R layouts/hybrid/locale/tr_TR/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/tr_TR/LC_MESSAGES +R layouts/hybrid/locale/tr_TR +R layouts/hybrid/locale/vi_VN/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/vi_VN/LC_MESSAGES +R layouts/hybrid/locale/vi_VN +R layouts/hybrid/locale/zh_CN/LC_MESSAGES/layouts_hybrid.mo +R layouts/hybrid/locale/zh_CN/LC_MESSAGES +R layouts/hybrid/locale/zh_CN +R layouts/hybrid/locale +R layouts/hybrid/po/GNUmakefile +R layouts/hybrid/po/cs_CZ.po +R layouts/hybrid/po/de_DE.po +R layouts/hybrid/po/fr_FR.po +R layouts/hybrid/po/is_IS.po +R layouts/hybrid/po/it_IT.po +R layouts/hybrid/po/nl_NL.po +R layouts/hybrid/po/no_NO.po +R layouts/hybrid/po/strings.raw +R layouts/hybrid/po/sv_SE.po +R layouts/hybrid/po/tr_TR.po +R layouts/hybrid/po/vi_VN.po +R layouts/hybrid/po/zh_CN.po +R layouts/hybrid/po +R layouts/hybrid/templates/detail.tpl +R layouts/hybrid/templates/header.tpl +R layouts/hybrid/templates/hybrid.css +R layouts/hybrid/templates/hybrid.js +R layouts/hybrid/templates/hybrid.tpl +R layouts/hybrid/templates/render.tpl +R layouts/hybrid/templates +R layouts/hybrid +R layouts/matrix/MANIFEST +R layouts/matrix/debug/viewableFiles.txt +R layouts/matrix/debug +R layouts/matrix/layout.css +R layouts/matrix/layout.css.php +R layouts/matrix/layout.inc +R layouts/matrix/locale/cs_CZ/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/cs_CZ/LC_MESSAGES +R layouts/matrix/locale/cs_CZ +R layouts/matrix/locale/da_DK/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/da_DK/LC_MESSAGES +R layouts/matrix/locale/da_DK +R layouts/matrix/locale/de_DE/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/de_DE/LC_MESSAGES +R layouts/matrix/locale/de_DE +R layouts/matrix/locale/el_GR/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/el_GR/LC_MESSAGES +R layouts/matrix/locale/el_GR +R layouts/matrix/locale/en_GB/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/en_GB/LC_MESSAGES +R layouts/matrix/locale/en_GB +R layouts/matrix/locale/es_AR/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/es_AR/LC_MESSAGES +R layouts/matrix/locale/es_AR +R layouts/matrix/locale/es_MX/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/es_MX/LC_MESSAGES +R layouts/matrix/locale/es_MX +R layouts/matrix/locale/fi_FI/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/fi_FI/LC_MESSAGES +R layouts/matrix/locale/fi_FI +R layouts/matrix/locale/fr_FR/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/fr_FR/LC_MESSAGES +R layouts/matrix/locale/fr_FR +R layouts/matrix/locale/ga_IE/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/ga_IE/LC_MESSAGES +R layouts/matrix/locale/ga_IE +R layouts/matrix/locale/he_IL/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/he_IL/LC_MESSAGES +R layouts/matrix/locale/he_IL +R layouts/matrix/locale/hu_HU/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/hu_HU/LC_MESSAGES +R layouts/matrix/locale/hu_HU +R layouts/matrix/locale/is_IS/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/is_IS/LC_MESSAGES +R layouts/matrix/locale/is_IS +R layouts/matrix/locale/it_IT/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/it_IT/LC_MESSAGES +R layouts/matrix/locale/it_IT +R layouts/matrix/locale/ja_JP/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/ja_JP/LC_MESSAGES +R layouts/matrix/locale/ja_JP +R layouts/matrix/locale/nl_NL/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/nl_NL/LC_MESSAGES +R layouts/matrix/locale/nl_NL +R layouts/matrix/locale/no_NO/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/no_NO/LC_MESSAGES +R layouts/matrix/locale/no_NO +R layouts/matrix/locale/pl_PL/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/pl_PL/LC_MESSAGES +R layouts/matrix/locale/pl_PL +R layouts/matrix/locale/pt_BR/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/pt_BR/LC_MESSAGES +R layouts/matrix/locale/pt_BR +R layouts/matrix/locale/pt_PT/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/pt_PT/LC_MESSAGES +R layouts/matrix/locale/pt_PT +R layouts/matrix/locale/ru_RU/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/ru_RU/LC_MESSAGES +R layouts/matrix/locale/ru_RU +R layouts/matrix/locale/sv_SE/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/sv_SE/LC_MESSAGES +R layouts/matrix/locale/sv_SE +R layouts/matrix/locale/tr_TR/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/tr_TR/LC_MESSAGES +R layouts/matrix/locale/tr_TR +R layouts/matrix/locale/vi_VN/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/vi_VN/LC_MESSAGES +R layouts/matrix/locale/vi_VN +R layouts/matrix/locale/zh_CN/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/zh_CN/LC_MESSAGES +R layouts/matrix/locale/zh_CN +R layouts/matrix/locale/zh_TW/LC_MESSAGES/layouts_matrix.mo +R layouts/matrix/locale/zh_TW/LC_MESSAGES +R layouts/matrix/locale/zh_TW +R layouts/matrix/locale +R layouts/matrix/po/GNUmakefile +R layouts/matrix/po/cs_CZ.po +R layouts/matrix/po/da_DK.po +R layouts/matrix/po/de_DE.po +R layouts/matrix/po/el_GR.po +R layouts/matrix/po/en_GB.po +R layouts/matrix/po/es_AR.po +R layouts/matrix/po/es_MX.po +R layouts/matrix/po/fi_FI.po +R layouts/matrix/po/fr_FR.po +R layouts/matrix/po/ga_IE.po +R layouts/matrix/po/he_IL.po +R layouts/matrix/po/hu_HU.po +R layouts/matrix/po/is_IS.po +R layouts/matrix/po/it_IT.po +R layouts/matrix/po/ja_JP.po +R layouts/matrix/po/nl_NL.po +R layouts/matrix/po/no_NO.po +R layouts/matrix/po/pl_PL.po +R layouts/matrix/po/pt_BR.po +R layouts/matrix/po/pt_PT.po +R layouts/matrix/po/ru_RU.po +R layouts/matrix/po/strings.raw +R layouts/matrix/po/sv_SE.po +R layouts/matrix/po/tr_TR.po +R layouts/matrix/po/vi_VN.po +R layouts/matrix/po/zh_CN.po +R layouts/matrix/po/zh_TW.po +R layouts/matrix/po +R layouts/matrix/templates/albumBody.tpl +R layouts/matrix/templates/albumThumbnail.tpl +R layouts/matrix/templates/banner.tpl +R layouts/matrix/templates/guestPreviewModeSwitch.tpl +R layouts/matrix/templates/head.tpl +R layouts/matrix/templates/itemNavigator.tpl +R layouts/matrix/templates/pageNavigator.tpl +R layouts/matrix/templates/parents.tpl +R layouts/matrix/templates/pathbar.tpl +R layouts/matrix/templates/sidebar.tpl +R layouts/matrix/templates/singleBody.tpl +R layouts/matrix/templates/singleThumbnail.tpl +R layouts/matrix/templates +R layouts/matrix +R layouts/siriux/MANIFEST +R layouts/siriux/layout.css +R layouts/siriux/layout.inc +R layouts/siriux/locale/cs_CZ/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/cs_CZ/LC_MESSAGES +R layouts/siriux/locale/cs_CZ +R layouts/siriux/locale/de_DE/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/de_DE/LC_MESSAGES +R layouts/siriux/locale/de_DE +R layouts/siriux/locale/fr_FR/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/fr_FR/LC_MESSAGES +R layouts/siriux/locale/fr_FR +R layouts/siriux/locale/it_IT/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/it_IT/LC_MESSAGES +R layouts/siriux/locale/it_IT +R layouts/siriux/locale/nl_NL/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/nl_NL/LC_MESSAGES +R layouts/siriux/locale/nl_NL +R layouts/siriux/locale/sv_SE/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/sv_SE/LC_MESSAGES +R layouts/siriux/locale/sv_SE +R layouts/siriux/locale/tr_TR/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/tr_TR/LC_MESSAGES +R layouts/siriux/locale/tr_TR +R layouts/siriux/locale/vi_VN/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/vi_VN/LC_MESSAGES +R layouts/siriux/locale/vi_VN +R layouts/siriux/locale/zh_CN/LC_MESSAGES/layouts_siriux.mo +R layouts/siriux/locale/zh_CN/LC_MESSAGES +R layouts/siriux/locale/zh_CN +R layouts/siriux/locale +R layouts/siriux/po/GNUmakefile +R layouts/siriux/po/cs_CZ.po +R layouts/siriux/po/de_DE.po +R layouts/siriux/po/fr_FR.po +R layouts/siriux/po/it_IT.po +R layouts/siriux/po/nl_NL.po +R layouts/siriux/po/strings.raw +R layouts/siriux/po/sv_SE.po +R layouts/siriux/po/tr_TR.po +R layouts/siriux/po/vi_VN.po +R layouts/siriux/po/zh_CN.po +R layouts/siriux/po +R layouts/siriux/templates/albumBody.tpl +R layouts/siriux/templates/guestPreviewModeSwitch.tpl +R layouts/siriux/templates/head.tpl +R layouts/siriux/templates/itemLinks.tpl +R layouts/siriux/templates/itemNavigator.tpl +R layouts/siriux/templates/pathbar.tpl +R layouts/siriux/templates/singleBody.tpl +R layouts/siriux/templates/systemLinks.tpl +R layouts/siriux/templates +R layouts/siriux +R layouts/slider/MANIFEST +R layouts/slider/debug/viewableFiles.txt +R layouts/slider/debug +R layouts/slider/images/fit.png +R layouts/slider/images/full.png +R layouts/slider/images/fwd.png +R layouts/slider/images/next-off.png +R layouts/slider/images/next.png +R layouts/slider/images/poz.png +R layouts/slider/images/prev-off.png +R layouts/slider/images/prev.png +R layouts/slider/images/rand.png +R layouts/slider/images/rev.png +R layouts/slider/images/tool.png +R layouts/slider/images +R layouts/slider/layout.css +R layouts/slider/layout.inc +R layouts/slider/locale/cs_CZ/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/cs_CZ/LC_MESSAGES +R layouts/slider/locale/cs_CZ +R layouts/slider/locale/de_DE/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/de_DE/LC_MESSAGES +R layouts/slider/locale/de_DE +R layouts/slider/locale/fr_FR/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/fr_FR/LC_MESSAGES +R layouts/slider/locale/fr_FR +R layouts/slider/locale/is_IS/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/is_IS/LC_MESSAGES +R layouts/slider/locale/is_IS +R layouts/slider/locale/it_IT/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/it_IT/LC_MESSAGES +R layouts/slider/locale/it_IT +R layouts/slider/locale/nl_NL/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/nl_NL/LC_MESSAGES +R layouts/slider/locale/nl_NL +R layouts/slider/locale/no_NO/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/no_NO/LC_MESSAGES +R layouts/slider/locale/no_NO +R layouts/slider/locale/ru_RU/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/ru_RU/LC_MESSAGES +R layouts/slider/locale/ru_RU +R layouts/slider/locale/sv_SE/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/sv_SE/LC_MESSAGES +R layouts/slider/locale/sv_SE +R layouts/slider/locale/tr_TR/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/tr_TR/LC_MESSAGES +R layouts/slider/locale/tr_TR +R layouts/slider/locale/vi_VN/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/vi_VN/LC_MESSAGES +R layouts/slider/locale/vi_VN +R layouts/slider/locale/zh_CN/LC_MESSAGES/layouts_slider.mo +R layouts/slider/locale/zh_CN/LC_MESSAGES +R layouts/slider/locale/zh_CN +R layouts/slider/locale +R layouts/slider/po/GNUmakefile +R layouts/slider/po/cs_CZ.po +R layouts/slider/po/de_DE.po +R layouts/slider/po/fr_FR.po +R layouts/slider/po/is_IS.po +R layouts/slider/po/it_IT.po +R layouts/slider/po/nl_NL.po +R layouts/slider/po/no_NO.po +R layouts/slider/po/ru_RU.po +R layouts/slider/po/strings.raw +R layouts/slider/po/sv_SE.po +R layouts/slider/po/tr_TR.po +R layouts/slider/po/vi_VN.po +R layouts/slider/po/zh_CN.po +R layouts/slider/po +R layouts/slider/slider.js +R layouts/slider/templates/header.tpl +R layouts/slider/templates/render.tpl +R layouts/slider/templates/sidebar.tpl +R layouts/slider/templates/slider.css +R layouts/slider/templates/slider.js +R layouts/slider/templates/slider.tpl +R layouts/slider/templates +R layouts/slider +R layouts/tile/MANIFEST +R layouts/tile/debug/viewableFiles.txt +R layouts/tile/debug +R layouts/tile/layout.css +R layouts/tile/layout.inc +R layouts/tile/locale/cs_CZ/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/cs_CZ/LC_MESSAGES +R layouts/tile/locale/cs_CZ +R layouts/tile/locale/de_DE/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/de_DE/LC_MESSAGES +R layouts/tile/locale/de_DE +R layouts/tile/locale/fr_FR/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/fr_FR/LC_MESSAGES +R layouts/tile/locale/fr_FR +R layouts/tile/locale/is_IS/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/is_IS/LC_MESSAGES +R layouts/tile/locale/is_IS +R layouts/tile/locale/it_IT/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/it_IT/LC_MESSAGES +R layouts/tile/locale/it_IT +R layouts/tile/locale/nl_NL/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/nl_NL/LC_MESSAGES +R layouts/tile/locale/nl_NL +R layouts/tile/locale/no_NO/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/no_NO/LC_MESSAGES +R layouts/tile/locale/no_NO +R layouts/tile/locale/ru_RU/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/ru_RU/LC_MESSAGES +R layouts/tile/locale/ru_RU +R layouts/tile/locale/sv_SE/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/sv_SE/LC_MESSAGES +R layouts/tile/locale/sv_SE +R layouts/tile/locale/tr_TR/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/tr_TR/LC_MESSAGES +R layouts/tile/locale/tr_TR +R layouts/tile/locale/vi_VN/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/vi_VN/LC_MESSAGES +R layouts/tile/locale/vi_VN +R layouts/tile/locale/zh_CN/LC_MESSAGES/layouts_tile.mo +R layouts/tile/locale/zh_CN/LC_MESSAGES +R layouts/tile/locale/zh_CN +R layouts/tile/locale +R layouts/tile/po/GNUmakefile +R layouts/tile/po/cs_CZ.po +R layouts/tile/po/de_DE.po +R layouts/tile/po/fr_FR.po +R layouts/tile/po/is_IS.po +R layouts/tile/po/it_IT.po +R layouts/tile/po/messages.po +R layouts/tile/po/nl_NL.po +R layouts/tile/po/no_NO.po +R layouts/tile/po/ru_RU.po +R layouts/tile/po/strings.raw +R layouts/tile/po/sv_SE.po +R layouts/tile/po/tr_TR.po +R layouts/tile/po/vi_VN.po +R layouts/tile/po/zh_CN.po +R layouts/tile/po +R layouts/tile/templates/edit.tpl +R layouts/tile/templates/guestPreviewModeSwitch.tpl +R layouts/tile/templates/header.tpl +R layouts/tile/templates/render.tpl +R layouts/tile/templates/sidebar.tpl +R layouts/tile/templates/tile.css +R layouts/tile/templates/tile.js +R layouts/tile/templates/tile.tpl +R layouts/tile/templates +R layouts/tile/tile.js +R layouts/tile +R layouts +R lib/IE7/README.txt +R lib/IE7/_private/ie7-logo.gif +R lib/IE7/_private/ie7-page.css +R lib/IE7/_private/ie7-server.css +R lib/IE7/_private/ie7-server.htc +R lib/IE7/_private/test.png +R lib/IE7/_private +R lib/IE7/blank.gif +R lib/IE7/compatibility/Pure CSS Menus (nearly).html +R lib/IE7/compatibility/Pure CSS Menus.html +R lib/IE7/compatibility/abbr.html +R lib/IE7/compatibility/active.css +R lib/IE7/compatibility/active.html +R lib/IE7/compatibility/active.xml +R lib/IE7/compatibility/adjacent.css +R lib/IE7/compatibility/adjacent.html +R lib/IE7/compatibility/adjacent.xml +R lib/IE7/compatibility/after.html +R lib/IE7/compatibility/attr-begin.html +R lib/IE7/compatibility/attr-contains.html +R lib/IE7/compatibility/attr-dash-list.css +R lib/IE7/compatibility/attr-dash-list.html +R lib/IE7/compatibility/attr-dash-list.xml +R lib/IE7/compatibility/attr-end.html +R lib/IE7/compatibility/attr-list.css +R lib/IE7/compatibility/attr-list.html +R lib/IE7/compatibility/attr-list.xml +R lib/IE7/compatibility/attr-value.css +R lib/IE7/compatibility/attr-value.html +R lib/IE7/compatibility/attr-value.xml +R lib/IE7/compatibility/attr.css +R lib/IE7/compatibility/attr.html +R lib/IE7/compatibility/attr.xml +R lib/IE7/compatibility/background-fixed.html +R lib/IE7/compatibility/before.html +R lib/IE7/compatibility/blue.css +R lib/IE7/compatibility/bluething.jpg +R lib/IE7/compatibility/bluething_fade.jpg +R lib/IE7/compatibility/bottom-left.gif +R lib/IE7/compatibility/bottom-right.gif +R lib/IE7/compatibility/box-sizing.html +R lib/IE7/compatibility/button.html +R lib/IE7/compatibility/child.css +R lib/IE7/compatibility/child.html +R lib/IE7/compatibility/child.xml +R lib/IE7/compatibility/comment-bug.htm +R lib/IE7/compatibility/complexspiral/bigben-bg.css +R lib/IE7/compatibility/complexspiral/demo.html +R lib/IE7/compatibility/complexspiral/demo2.html +R lib/IE7/compatibility/complexspiral/flower-bg.css +R lib/IE7/compatibility/complexspiral/glassy-bg.jpg +R lib/IE7/compatibility/complexspiral/glassy-gray.jpg +R lib/IE7/compatibility/complexspiral/glassy-ripple.jpg +R lib/IE7/compatibility/complexspiral/glassy-tan.jpg +R lib/IE7/compatibility/complexspiral/glassy.html +R lib/IE7/compatibility/complexspiral/halfscr-black.gif +R lib/IE7/compatibility/complexspiral/halfscr-blue.gif +R lib/IE7/compatibility/complexspiral/halfscr-white.gif +R lib/IE7/compatibility/complexspiral/lightning-bg.css +R lib/IE7/compatibility/complexspiral/shell-bg.css +R lib/IE7/compatibility/complexspiral/shell-bg.jpg +R lib/IE7/compatibility/complexspiral/shell-blue.jpg +R lib/IE7/compatibility/complexspiral/shell-fade.jpg +R lib/IE7/compatibility/complexspiral/shell-wash.jpg +R lib/IE7/compatibility/complexspiral/shell2-bg.css +R lib/IE7/compatibility/complexspiral/shuttle-bg.css +R lib/IE7/compatibility/complexspiral +R lib/IE7/compatibility/content.html +R lib/IE7/compatibility/empty.css +R lib/IE7/compatibility/empty.html +R lib/IE7/compatibility/empty.xml +R lib/IE7/compatibility/first-child.css +R lib/IE7/compatibility/first-child.html +R lib/IE7/compatibility/first-child.xml +R lib/IE7/compatibility/fixed.html +R lib/IE7/compatibility/float.html +R lib/IE7/compatibility/focus.css +R lib/IE7/compatibility/focus.html +R lib/IE7/compatibility/focus.xml +R lib/IE7/compatibility/form.html +R lib/IE7/compatibility/green.css +R lib/IE7/compatibility/horizontal-gauge.gif +R lib/IE7/compatibility/hover.css +R lib/IE7/compatibility/hover.html +R lib/IE7/compatibility/hover.xml +R lib/IE7/compatibility/ie7-demo.js +R lib/IE7/compatibility/imports.css +R lib/IE7/compatibility/imports.html +R lib/IE7/compatibility/indirect.css +R lib/IE7/compatibility/indirect.html +R lib/IE7/compatibility/indirect.xml +R lib/IE7/compatibility/label.html +R lib/IE7/compatibility/lang.html +R lib/IE7/compatibility/last-child.css +R lib/IE7/compatibility/last-child.html +R lib/IE7/compatibility/last-child.xml +R lib/IE7/compatibility/left-right.html +R lib/IE7/compatibility/max-width.html +R lib/IE7/compatibility/min-height.html +R lib/IE7/compatibility/min-width.html +R lib/IE7/compatibility/multiple-classes-bug.html +R lib/IE7/compatibility/multiple-classes.css +R lib/IE7/compatibility/multiple-classes.html +R lib/IE7/compatibility/multiple-classes.xml +R lib/IE7/compatibility/multiple-pseudo-classes.html +R lib/IE7/compatibility/nth-child.html +R lib/IE7/compatibility/nth-last-child.html +R lib/IE7/compatibility/only-child.html +R lib/IE7/compatibility/png-background.html +R lib/IE7/compatibility/png.css +R lib/IE7/compatibility/png.html +R lib/IE7/compatibility/png.xml +R lib/IE7/compatibility/purple_stucco.jpg +R lib/IE7/compatibility/red.css +R lib/IE7/compatibility/root.css +R lib/IE7/compatibility/root.html +R lib/IE7/compatibility/root.xml +R lib/IE7/compatibility/suite.html +R lib/IE7/compatibility/super-dynamic.html +R lib/IE7/compatibility/super.css +R lib/IE7/compatibility/super.xml +R lib/IE7/compatibility/test.css +R lib/IE7/compatibility/top-bottom.html +R lib/IE7/compatibility/top-left.gif +R lib/IE7/compatibility/top-right.gif +R lib/IE7/compatibility/tukan-trans.png +R lib/IE7/compatibility/unscrollable.html +R lib/IE7/compatibility/vertical-gauge.gif +R lib/IE7/compatibility +R lib/IE7/configure.html +R lib/IE7/g2-test.php +R lib/IE7/ie7-box-model.js +R lib/IE7/ie7-content.htm +R lib/IE7/ie7-core.js +R lib/IE7/ie7-css-strict.js +R lib/IE7/ie7-css2.js +R lib/IE7/ie7-css3.js +R lib/IE7/ie7-debug.css +R lib/IE7/ie7-debug.htc +R lib/IE7/ie7-fixed.js +R lib/IE7/ie7-html.css +R lib/IE7/ie7-html.htc +R lib/IE7/ie7-html4.js +R lib/IE7/ie7-ie5.css +R lib/IE7/ie7-ie5.js +R lib/IE7/ie7-lite-p.js +R lib/IE7/ie7-lite.js +R lib/IE7/ie7-logo.gif +R lib/IE7/ie7-png.js +R lib/IE7/ie7-server.css +R lib/IE7/ie7-standard-p.js +R lib/IE7/ie7-standard.js +R lib/IE7/ie7-xml.css +R lib/IE7/ie7-xml.htc +R lib/IE7/ie7.gif +R lib/IE7/index.html +R lib/IE7/install.html +R lib/IE7/license +R lib/IE7/modules/ie7-box-model.js +R lib/IE7/modules/ie7-core.js +R lib/IE7/modules/ie7-css-strict.js +R lib/IE7/modules/ie7-css.js +R lib/IE7/modules/ie7-debug.js +R lib/IE7/modules/ie7-fixed.js +R lib/IE7/modules/ie7-html.js +R lib/IE7/modules/ie7-png.js +R lib/IE7/modules/ie7-xml.js +R lib/IE7/modules +R lib/IE7/samples/ie7-config.htc +R lib/IE7/samples/ie7-config.xml +R lib/IE7/samples +R lib/IE7/src/ie7-box-model.js +R lib/IE7/src/ie7-content.htm +R lib/IE7/src/ie7-core.js +R lib/IE7/src/ie7-css-strict.js +R lib/IE7/src/ie7-css.js +R lib/IE7/src/ie7-css2.js +R lib/IE7/src/ie7-css3.js +R lib/IE7/src/ie7-debug.js +R lib/IE7/src/ie7-fixed.js +R lib/IE7/src/ie7-html.js +R lib/IE7/src/ie7-html4.js +R lib/IE7/src/ie7-ie5.js +R lib/IE7/src/ie7-lite.js +R lib/IE7/src/ie7-png.js +R lib/IE7/src/ie7-standard.js +R lib/IE7/src +R lib/IE7/test-trans.png +R lib/IE7/test.html +R lib/IE7/usage.html +R lib/IE7 +R lib/adodb/drivers/adodb-mssql.inc.php +R lib/adodb/drivers/adodb-mssqlpo.inc.php +R lib/adodb/drivers/adodb-odbc.inc.php +R lib/adodb/drivers/adodb-postgres.inc.php +R lib/bbcode/bbcode.class +R lib/java/GRApplet.tpl +R lib/java/GalleryRemoteApplet.jar +R lib/java/GalleryRemoteAppletMini.jar +R lib/java/GalleryRemoteHTTPClient.jar +R lib/java/applet_img.jar +R lib/java +R lib/javascript/XmlHttp.js +R lib/prototype/LICENSE +R lib/prototype/prototype.js +R lib/prototype +R lib/smarty/core/core.assemble_auto_filename.php +R lib/smarty/core/core.assemble_plugin_filepath.php +R lib/smarty/core/core.assign_smarty_interface.php +R lib/smarty/core/core.create_dir_structure.php +R lib/smarty/core/core.display_debug_console.php +R lib/smarty/core/core.fetch_resource_info.php +R lib/smarty/core/core.get_include_path.php +R lib/smarty/core/core.get_microtime.php +R lib/smarty/core/core.get_php_resource.php +R lib/smarty/core/core.is_secure.php +R lib/smarty/core/core.is_trusted.php +R lib/smarty/core/core.load_plugins.php +R lib/smarty/core/core.load_resource_plugin.php +R lib/smarty/core/core.parse_resource_name.php +R lib/smarty/core/core.process_cached_inserts.php +R lib/smarty/core/core.process_compiled_include.php +R lib/smarty/core/core.read_cache_file.php +R lib/smarty/core/core.rm_auto.php +R lib/smarty/core/core.rmdir.php +R lib/smarty/core/core.run_insert_handler.php +R lib/smarty/core/core.smarty_include.php +R lib/smarty/core/core.smarty_include_php.php +R lib/smarty/core/core.write_cache_file.php +R lib/smarty/core/core.write_cache_paths_file.php +R lib/smarty/core/core.write_compiled_include.php +R lib/smarty/core/core.write_compiled_resource.php +R lib/smarty/core/core.write_file.php +R lib/smarty/core +R lib/smarty_plugins/function.adminlinkid.php +R lib/smarty_plugins/function.safecssname.php +R lib/support/utilities.inc +R lib/tools/CRC32.jar +R lib/tools/GNUmakefile.inc +R lib/tools/bin/codex-download.tpl +R lib/tools/bin/filterManifests.pl +R lib/tools/bin/generate-interfaces.php +R lib/tools/bin/interface.tpl +R lib/tools/bin/rebuild-modules.sh +R lib/tools/bin/update-codex-download-page.php +R lib/tools/dtd/GalleryClass2.0.dtd +R lib/tools/gd/index.php +R lib/tools/gd/stylesheet.css +R lib/tools/gd +R lib/tools/messages/messageFooter.inc +R lib/tools/messages/messageHeader.inc +R lib/tools/messages/missingConfig.inc +R lib/tools/messages/missingPassword.inc +R lib/tools/messages/passwordForm.inc +R lib/tools/messages +R lib/tools/phpinfo.php +R lib/tools/po/extract.pl +R lib/tools/security.inc +R lib/tools/test/TestCase.class +R lib/tools/test/TestCase/ActivateModule.class +R lib/tools/test/TestCase/DeactivateModule.class +R lib/tools/test/TestCase/InstallModule.class +R lib/tools/test/TestCase +R lib/tools/test/index.php +R lib/tools/test/templates/index.tpl +R lib/tools/test/templates +R lib/tools/test +R templates/debug.tpl +R templates/embedBody.tpl +R templates/embedHead.tpl +R templates/error.tpl +R templates/errorBody.tpl +R templates/errorHead.tpl +R templates/global.tpl +R templates/layout.css +R templates/layout.css.php +R templates/layoutNew.css +R templates/profile.tpl +R templates/redirect.tpl +R templates/sidebar.tpl +R templates/standalone.tpl +R templates +R themes/mblue/MANIFEST +R themes/mblue/theme.css +R themes/mblue +R themes/veloria/MANIFEST +R themes/veloria/images/banner.gif +R themes/veloria/images/pixel.gif +R themes/veloria/images/tab-left-act.gif +R themes/veloria/images/tab-left-inact.gif +R themes/veloria/images/tab-left-on.gif +R themes/veloria/images/tab-left.gif +R themes/veloria/images/tab-mid-act.gif +R themes/veloria/images/tab-mid-inact.gif +R themes/veloria/images/tab-no-tab.gif +R themes/veloria/images/tab-right-act.gif +R themes/veloria/images/tab-right-inact.gif +R themes/veloria/images/tab-right-on.gif +R themes/veloria/images/tab-right.gif +R themes/veloria/images/tab-tween-act-inact.gif +R themes/veloria/images/tab-tween-inact-act.gif +R themes/veloria/images/tab-tween-inact-inact.gif +R themes/veloria/images +R themes/veloria/styles/theme.css +R themes/veloria/styles +R themes/veloria/theme.css +R themes/veloria/theme.inc +R themes/veloria +R upgrade/GalleryStub.class +R upgrade/images/g2Logo_install_head.png +R upgrade/locale/bg_BG/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/bg_BG/LC_MESSAGES +R upgrade/locale/bg_BG +R upgrade/locale/cs_CZ/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/cs_CZ/LC_MESSAGES +R upgrade/locale/cs_CZ +R upgrade/locale/de_DE/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/de_DE/LC_MESSAGES +R upgrade/locale/de_DE +R upgrade/locale/eu_ES/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/eu_ES/LC_MESSAGES +R upgrade/locale/eu_ES +R upgrade/locale/fr_FR/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/fr_FR/LC_MESSAGES +R upgrade/locale/fr_FR +R upgrade/locale/it_IT/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/it_IT/LC_MESSAGES +R upgrade/locale/it_IT +R upgrade/locale/nl_NL/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/nl_NL/LC_MESSAGES +R upgrade/locale/nl_NL +R upgrade/locale/sr_YU/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/sr_YU/LC_MESSAGES +R upgrade/locale/sr_YU +R upgrade/locale/tr_TR/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/tr_TR/LC_MESSAGES +R upgrade/locale/tr_TR +R upgrade/locale/vi_VN/LC_MESSAGES/gallery2_upgrade.mo +R upgrade/locale/vi_VN/LC_MESSAGES +R upgrade/locale/vi_VN +R upgrade/po/bg_BG.po +R upgrade/po/cs_CZ.po +R upgrade/po/de_DE.po +R upgrade/po/eu_ES.po +R upgrade/po/fr_FR.po +R upgrade/po/it_IT.po +R upgrade/po/nl_NL.po +R upgrade/po/sr_YU.po +R upgrade/po/tr_TR.po +R upgrade/po/vi_VN.po +R upgrade/styles/style.css +R upgrade/styles diff --git a/Source/gallery2/README.html b/Source/gallery2/README.html new file mode 100644 index 0000000..fee606a --- /dev/null +++ b/Source/gallery2/README.html @@ -0,0 +1,2361 @@ + + + + + README: Gallery 2.2 (Double Double) + + + + + + + +
+ Gallery 2 +
+ +

+ Welcome to Gallery 2. This is the official release of Gallery 2.2, + code named “Double Double”. Please read + through this document carefully before installing Gallery 2 and + before asking for help. We have taken care to try to answer as + many of your questions here as possible. If you don't read this + and have problems, we may refer you back to this document as a + first resource. +

+ +

Quick Start

+

+ If you’re impatient like us, you just want to get going. + The odds are that your system is all set to handle Gallery 2 so just skip + right to the installer + and start clicking. It should walk you through everything you need to + get going. If you hit a snag, please come back here and read more before + asking questions! Enjoy. +

+ +

What is Gallery?

+ +

+ Gallery is a web based software product that lets you manage + your photos on your own website. You must have your own website + with PHP and database support in order to install and use it. With Gallery + you can easily create and maintain albums of photos via an + intuitive interface. Photo management includes automatic + thumbnail creation, image resizing, rotation, ordering, + captioning, searching and more. Albums and photos can have + view, edit, delete and other permissions per individual + authenticated user for an additional level of privacy. It's + great for communities - give accounts to your friends and family + and let them upload and manage their own photos on your website! +

+ +

System requirements

+ + + +

Security

+ +
+ +
+

+ The Gallery team retained James Bercegay of Gulftech Research and + Development to do a complete security audit of Gallery 2.2 + Release Candidate 1. +

+ +

+ Recently we have performed a very thorough audit of the + Gallery2 code base. Our review consisted of both a complete + source code audit, as well as us performing multiple "real + world" attack scenarios against the Gallery2 application. During + the audit we identified multiple minor security issues which + have since been resolved by the Gallery2 developers. The result + is a much more secure Gallery2 application with enhanced + security features to keep your Gallery and its users as safe + and secure as possible. +

+ +
+ +
+

+ The Gallery team retained Paul + Mutton of Intershot Limited + to do a complete security audit of Gallery 2.1 Release Candidate + 1. +

+ +

+ The Gallery installer and Gallery application were + subjected to a manual web application security test. It is + important to note that such tests cannot be exhaustive and may + not discover all vulnerabilities. All tests were carried out + against a standalone installation of Gallery - no integrated + installations were tested (e.g. with phpBB or phpnuke). The + security of external tools used by the Gallery application, + such as graphics toolkits, were not included in this test. No + denial of service attacks were carried out against the + application server. +

+ +

+ The development team resolved the security issues raised by + auditors during the release candidate phases. +

+ +
+

Note

+

+ The Gallery project treats security issues very seriously. If + you find a security flaw, do not hesitate to email us at: +

+ +
+ +

What’s new in this release?

+ + +

+ Over four years of design and development have gone into making + Gallery 2 the best online photo management product available. + We have made it easy to add new features while keeping them in + separate modules so that you can customize it to only have the + ones that you want. For those of you who like standards, we + have strict XHTML compliance but give plenty of power to our + themes so that you can make it look the way that you want. It's + a powerful application and you're in the driver's seat. +

+ +

+ Highlight of changes in Gallery 2.2 (Double Double) + - +

+
    +
  1. + Downloadable Plugins. This feature allows you to download and + install Modules and Themes directly via the Site Admin + interface. You can select from different sets of plugins + (officially released plugins, experimental plugins under + development and plugins provided by the Gallery community). + This makes it very easy to stay up to date with the latest + changes. +
  2. +
  3. + Added support for themes to display dynamic albums. +
    • + New Keyword Album module makes use of this feature to show albums based + on a search of item keywords. +
    • + New Dynamic Albums module shows albums of newest, most viewed or even random items. +
    • + Ratings module has a new view to display highly rated items from across the Gallery. +
    +
  4. +
  5. + Security fixes and improvements +

    + There are no known exploits for these issues. All of them were discovered during a + private, internal security audit. However, we highly recommend that you upgrade to + Gallery 2.2 to secure your Gallery installation. +

    +
    • + Added protection from brute force attacks on setup and account passwords. +
    • + Added protection from "Cross Site Request Forgery" attacks. +
    • + Added protection from "Cross Site Scripting" through item titles, summaries and description + (only applies to the non-default HTML markup). This has been fixed for comments in + Gallery 2.1 already. +
    • + Added protection from "HTTP Response Splitting" attacks. +
    • + Fixed information disclosure through application errors. +
    • + Hardened Session Handling in upgrade, install and support area. +
    +
  6. +
  7. + Watermarking changes +
    • + Edit Album now has a Watermark tab where watermarks may be added or + removed from an entire album, optionally including subalbums too. +
    • + Edit Watermark now has an option to replace a watermark image and + apply the new image everywhere the old was one used. +
    • + New option to always use a single watermark and give users no + watermarking options. Only Site Admins can change/remove existing watermarks. +
    • + New option to turn off the ability for users to upload their own watermark images. +
    +
  8. +
  9. + New themes:
      +
    • Carbon
    • +
    • Ajaxian
    • +
    +
  10. +
  11. + New WebDAV module to mount Gallery as network device on your + computer. This allows you to easily manage your Gallery with any WebDAV client like Windows + Explorer. +
  12. +
  13. + New module to send Ecards. +
  14. +
  15. + New Digibug module for prints from + digibug.com. +
  16. +
  17. + Added support for Flash Video and Windows ASF video. +
  18. +
  19. + Added support for mp3 audio using a Flash based player. +
  20. +
  21. + Added support for HTTP authentication through the new + httpauth module. +
  22. +
  23. + Photo auto-rotation based on camera sensors or on settings from other applications. +
  24. +
  25. + Automatically detect dimensions of Flash animations and video. +
  26. +
  27. + Option in MIME module to restrict file types that may be uploaded. +
  28. +
  29. + Image Block changes +
    • + Now displays any item with a thumbnail (movie, flash, etc) in addition to photos. +
    • + A new block setting allows showing multiple images or albums. +
    +
  30. +
  31. + Added some user contributed image frames and icon packs including + the Silk Icon + set by Mark James. +
  32. +
  33. + You can now add color to item title, description, comments, etc. Click on the "color" + button and choose from a handy popup; or just use [color=red] bbcode syntax. +
  34. +
  35. + Comment module improvements:
      +
    • New block for adding comments directly from an item page.
    • +
    • Guests can now leave their name.
    • +
    +
  36. +
  37. + Added support in Link Items module to make thumbnails for URL links + using webpage snapshots generated by an external program like + khtml2png. + Also, the arrow watermark on thumbnails is now optional. +
  38. +
  39. + Added RSS functionality: Comments for this album and its subalbums. +
  40. +
  41. + Added Quotas Block: This allows the site administrator to display a block in + the theme that displays the current and total usage of any user that has a + quota assigned. +
  42. +
  43. + Added an option to lock a user account to the current account settings. Useful + if one wants to use a single user account for a group of users. +
  44. +
  45. + Newly created albums from User Albums module now properly inherit permissions from + the parent album, for settings like comments, ratings, etc. +
  46. +
  47. + Moved some functionality out of core and into optional modules: + Add items module for adding from local server or other web pages, and + Replica module for creating item copies sharing the same original data file. +
  48. +
  49. + Option in EXIF/IPTC module to set title for new items from IPTC/ObjectName. +
  50. +
  51. + Improved usability in administration interface for installing modules and themes. +
  52. +
  53. + New Multiroot module assists in creating alternate guest views of a single Gallery. +
  54. +
  55. + Added exactSize and link parameters for image block. +
  56. +
  57. + Resize dimensions now accept percentages of full size in addition to pixel size. +
  58. +
  59. + Added support for PHP mysqli extension (newer version of mysql interface). +
  60. +
  61. + Support for + MSSQL database. +
  62. +
  63. + Minimum PHP version now 4.3.0. +
  64. +
  65. + Microsoft IIS doesn't work with PHP-CGI due to a PHP/IIS bug. Microsoft recommends + FastCGI instead + and doesn't support PHP-CGI. Please use ISAPI PHP or FastCGI with IIS instead. Users of + Apache on Windows can still use PHP-CGI (and mod_php or FastCGI). +
  66. +
+ +

+ Highlight of changes in Gallery 2.1 (Blackjack) + + +

+ + +

+ Highlight of changes in Gallery 2.0 (Unpossible!) + + +

+ + +

+ Highlight of changes in Gallery 2 RC 2 (kthxbye) + + +

+ + +

+ Highlight of changes in Gallery 2 RC 1 (+5 Insightful) + + +

+ + +

+ Highlight of changes in Gallery 2 Beta 4 (Flippin' Sweet!) + + +

+ + +

+ Highlight of changes in Gallery 2 Beta 3 (Bingo!) + + +

+ + +

+ Highlight of changes in Gallery 2 Beta 2 (Holy Hand Grenade) + + +

+ + +

+ Highlight of changes in Gallery 2 Beta 1 (Dark Fibre) + + +

+ + +

+ Highlight of changes in Gallery 2 Alpha 4 (Nice Commits) + + +

+ + +

+ Highlight of changes in Gallery 2 Alpha 3 (Farva) + + +

+ + +

+ Highlight of changes in Gallery 2 Alpha 2 (Grand Theft Photo) + + +

+ + +

+ Highlight of changes in Gallery 2 Alpha 1 (Cowbell) + + +

+ + +

Choosing a package

+ +

+ You can choose from four different packages: +

+
    +
  • + Minimal - The base application, 2 themes and 3 graphics toolkits. + Everything you need to publish photos, and nothing more. +
  • +
  • + Typical - The base application, 8 themes and a selection of popular + modules. Enough to satisfy the demands of most Gallery users. +
  • +
  • + Full - The base application, 9 themes and 68 modules. Every cool + feature we've got. +
  • +
  • + Developer - Same as the full package, except it includes all the + developer tools so that you can work on improving the code. +
  • +
+

+ You get to pick and choose which modules you activate, so even if you download + a package that has more modules than you need you can always choose not to + activate the ones you don't want. You can also activate a module and test it + out for a while, then later deactivate and uninstall it. You can also delete + any modules/themes that you're not using if you want to save space. +

+

+ All of our modules and themes are available separately so if you install a + smaller package you can still add more functionality later on, either by + downloading yourself or using the new Downloadable Plugins feature in Gallery 2.2. +

+

+ Download Gallery packages, modules and themes from the + Gallery Download Page. +

+ +

Preparing to install

+ +
    +
  1. + Latest Version - + There are four ways to get the code. +
      +
    • + Tarball - You can download a prepackaged file as a + tarball or a zip file from SourceForge. +
    • +
    • + Pre-Installer - If you only have FTP access to your webserver and don't + have the option to extract zip or tar files directly on the server, you should + give the Gallery 2 Pre-Installer a try. It transfers the archive + directly to your webserver and extracts it for you. +
    • +
    • + Nightly Snapshot - You can download a tarball or zip file with + a snapshot of the most recent code. Find links to these on the + Gallery Download Page. +
    • +
    • + Subversion - This is a better way to get the latest code, + but it’s for advanced users. Follow the + Subversion instructions to obtain the latest Gallery 2 + code. It’s easier to stay up to date with this method since + you can run one command and get the latest code at any time. +
    • +
    +
  2. + +
  3. + Storage - Create a directory for gallery to store + photos. This must be writeable by the web server, but for + security reasons we suggest that you do not put it in the web + root. If you put it in the web root, then anybody can get + directly to your images with their web browser which + circumvents Gallery 2’s security. +
    +

    Unix Example

    +

    + $ cd $HOME
    + $ mkdir g2data
    + $ chmod 777 g2data +

    +
    + +
    +

    Windows Example

    +

    + C:\> mkdir g2data +

    +
    + + In the Unix example, you may note that modes of 777 on your + g2data directory are not all that secure. + However, making it more secure depends on how your system is + configured. Talk with your system administrator about ways to + change the permissions on that directory to make it so that + Gallery can still write to the files but that others + can’t. Refer to the Gallery + 2 Security Guide for more information. +
  4. + +
  5. + Database - Right now we support + MySQL, + PostgreSQL, + Oracle, + IBM DB2 and + Microsoft SQL Server. + The databases most commonly used with Gallery 2 are MySQL and PostgreSQL. + MySQL is generally faster than PostgreSQL. + We require you to create the database yourself. + In our examples below, we’ll be creating a database called + gallery2. You can use any database name that you + choose.
    + Grant all required privileges to your database user. This includes but + is not confined to: CREATE TABLE, ALTER TABLE, DROP TABLE in the gallery2 database; + SELECT, INSERT, UPDATE, DELETE on all (gallery2) tables in the gallery2 database; + CREATE INDEX and some other privileges that are specific to the different database + management systems. CREATE/DROP DATABASE and the ability to GRANT privileges to other + database users are not required. + +
    +

    MySQL

    +

    + $ mysqladmin -uroot create gallery2
    + $ mysql gallery2 -uroot -e"GRANT ALL ON gallery2.* TO
      username@localhost IDENTIFIED BY 'password'"
    +

    +
    + +
      +
    • Choose your own username and password +
    • +
    • + If MySQL denies you access, try adding "-p" right after "-uroot" in each command +
    • +
    + +
    +

    PostgreSQL

    +

    + $ createdb gallery2 -E UNICODE
    +
    + If it complains that UNICODE is not a valid encoding name, then try:
    + $ createdb gallery2 -E SQL_ASCII
    +
    + If it complains about that, too then try:
    + $ createdb gallery2
    +

    +
    + +
    +

    Oracle

    +

    + $ create database gallery2 {additional parameters}; +

    +
    + + +
    +

    IBM DB2

    +

    + $ db2 "create database gallery2 using codeset utf-8 territory us pagesize 32 k" +

    +
    + + +
    +

    Microsoft SQL Server

    +

    + C:\>sqlcmd -S myhostname\SQLEXPRESS -e +

    +

    + 1>create database gallery2 +

    +

    + 2>go +

    +

    + 1>use gallery2 +

    +

    + 2>go +

    +

    + 1>create schema g2user +

    +

    + 2>go +

    +

    + 1>create login g2user with password = "g2pwd" +

    +

    + 2>go +

    +

    + 1>create user g2user for login g2user with default_schema = g2user +

    +

    + 2>go +

    +

    + 1>use master +

    +

    + 2>go +

    +

    + 1>grant CONTROL SERVER to g2user +

    +

    + 2>go +

    +

    + 1>quit +

    +
    + +
  6. + +
  7. + Graphics Toolkits - Gallery 2 works with many different + toolkits (NetPBM, ImageMagick, GD or GraphicsMagick). You need to activate at + least one or you won't get any thumbnails, but there's no + limit on how many you can have. In fact, more is better + because they can work together. Here are some interesting + points about the main supported toolkits (mostly reported by + users, your mileage may vary). + +
      +
    • + Fastest - ImageMagick and GraphicsMagick +
    • +
    • + Highest Quality - NetPBM (ImageMagick is a close second though) +
    • +
    + + Limitations: +
      +
    • + GD - cannot do image rotation, may hit server + memory limits and crash PHP. +
    • +
    • + NetPBM, ImageMagick, GraphicsMagick - require server to support exec() system + call (not usually a problem) +
    • +
    +
  8. +
+ +

Installing

+ +

+ Gallery 2 is a web application and must be installed on your web + server in order for you to use it. If you've unpacked it on + your desktop, you will have to upload it to your server as part + of the install process. Then you can configure it using your web browser.
+ As an alternative to the lengthy upload via FTP, take a look at the + Gallery 2 Pre-Installer. +

+
    +
  1. + Upload - Copy the Gallery 2 files to a directory on your webserver. There are + several alternatives for this step: +
      +
    • + Fastest way: Upload the gallery package to your web + server archive via FTP or another method, then unpack it + using an interactive shell session (e.g. ssh or telnet). + Example unpacking commands (choose the appropriate one): +
      +

      For .tar.gz archives

      +

      + $ tar xzf gallery2.tar.gz +

      +
      + +
      +

      For zip archives

      +

      + $ unzip gallery2.zip +

      +
      + + If you do not have shell access, you can ask your provider + to do it for you, or you can make a miniature PHP script + containing one of the above commands. Some webhosting + companies offer a control panel with a web file-browser + which is capable of extracting / unarchiving archive + files. It’s worth a try to check if this option is + available. +
    • + +
    • + Easiest (but slowest) way: If you don't have shell + access, you can upload the complete contents of the + Gallery 2 archive to the webserver with an FTP + program. This may take a lot of time and be + error-prone. In this case, pay special attention to the + ’System Checks’ step of the installer and make + sure that there are no missing or modified files. + Consider using a smart FTP program like + FileZilla to + make sure that your transfer goes smoothly. +
    • + +
    • + Advanced way: The best way to install Gallery + and stay up to date if you have shell access to + your webserver is to use + Subversion. +
    • +
    + Note: After uploading, you should close this version + of the README and browse to the version that you just + uploaded. That way all the links in this document will point + to the right places in your Gallery 2 install. +
  2. +
  3. + Begin Installing - Open up your web browser and browse to the + install directory. + Gallery 2 will walk you through the process of validating that your system + is properly configured and will set everything up for you. +
  4. +
  5. + Authenticate - You will be asked to create and save a + small text file in order to authenticate. You may not proceed + until you do this. That’s how Gallery 2 knows that you’re authorized + to use the installer. +
  6. +
  7. + System Checks - The installer checks your system to + make sure that it will support Gallery 2. Make sure that all + checks are successful! +
  8. +
  9. + Installation Type - Gallery can support multiple independent sites with + a single installation of the code. Here you will select a standard single install + or the location of a new multisite install. There is more information about multisite + in the Gallery Codex. +
  10. +
  11. + Storage Setup - Read the instructions on the + installer to set up a storage location for Gallery 2. This is + where Gallery 2 will store all of your images, as well as other cache + information. +
  12. +
  13. + Database Setup - Select your database type and enter + your database authentication information. If this is not your first Gallery 2 installation + and there are still some remains of the old installation, it will check the state of the + installed version and offer a clean install option which will delete all your data in the + storage directory and in the database. If the installed version seems to be fine, it will + also offer to reuse the existing database tables. Select this option if you did not start + the installer with the intent to start from scratch. +
  14. +
  15. + Admin User Setup - You are prompted for an + administrator username and password. Type in a password and + type it again to validate it. The full name and the email address are optional. + But entering an email address is highly recommended. Once you’re finished, + click ’Create’ to create the admin user for this installation of Gallery 2. +
  16. +
  17. + Create Config File - Gallery 2 will create the + config.php file in your Gallery 2 directory. This contains + all the answers you’ve provided in the installer and is + necessary for Gallery 2 to function properly. At this point, there’s also a sanity + check to prevent you from damaging your Gallery install by running the installer when you + should rather have started the upgrader. +
  18. +
  19. + Install the Core module - Here’s where we create all + the database tables and initial users and albums to get you + started. Unless something goes wrong, there’s nothing for you + to do here. +
  20. +
  21. + Install other modules - Gallery 2 has lots of different + modules that provide useful functionality. Choose which ones + you want to use. You can always go to the Site Admin page later on to install, activate, deactivate or + uninstall modules, so it’s ok to experiment here. +
  22. +
  23. + Check Security - Gallery 2 walks you through the process of + locking down your new config.php. +
  24. +
  25. + Finished! - Congratulations! You have successfully + installed Gallery 2! +
  26. +
+ +

Using your new Gallery

+ +

+ Once you’ve successfully got Gallery 2 installed, you should take a look at the + Gallery 2 Quick Start Guide. It will help you get started with + Gallery and will walk you through the steps from zero to managing your first photo album + in your freshly installed Gallery. Below are some links to your gallery that will make it + easier for you to follow the Quick Start Guide. Note: You may need to activate certain + modules to be able to use some of these links. +

+ +

+ Take a look at the list of + User Contributions to find even more modules, themes, + utilities, mods and more. +

+ +

Updating your Gallery 2 Installation

+ +

+ Updating is quick and easy and should not lose any of your data. +

+ +
+

Warning When Upgrading from Gallery 2.0!

+

+ Third party modules and themes designed for Gallery 2.0 will + not work with Gallery 2.2. During the upgrade process, these + modules and themes will be automatically deactivated for you. + You can find updated versions for most of these modules and + themes here: http://codex.gallery2.org/Gallery2:User_Contributions +

+
+ +
    +
  1. + If you have a busy site, consider putting your Gallery in + maintenance mode before updating the code and performing the + upgrade. This gives visitors a message that the site is + temporarily offline, rather than showing everybody the upgrade + page. Edit your config.php file to activate maintenance mode. + This feature is new starting in 2.1, so it is not available in + an upgrade from 2.0.x. +
  2. + +
  3. + Download the latest code for any active third party modules + that you're using, or deactivate them. If in doubt, + deactivating is safe. +
  4. + +
  5. + Get the latest code and unpack + it over your existing copy of Gallery 2. Keep your existing + config.php in place, and don't touch your (g2data) data folder + or the database. If you're using Subversion, you can just do + "svn update" at any time. Alternatively, you can also use the + Gallery 2 Pre-Installer to get the latest code + onto the webserver. +
  6. + +
  7. + If you use a PHP accelerator / cache (e.g. Turk mmCache, + Ioncube PHPA, eaccelerator, Zend Studio, etc.), flush (clear) + the cache of the accelerator. Omitting this step can + sometimes lead to errors during and after the upgrade process. +
  8. + +
  9. + Browse to the + upgrader and follow the instructions there. Make a + backup of your data (g2data folder and especially the + database) when it tells you to! Should you lose your data due + to a bug in the upgrader, the first thing we're going to tell + you to do is to restore from your backups! (Then we'll + probably ask you to help us reproduce the bug.) +
  10. + +
  11. + Enjoy your new version of Gallery 2. +
  12. +
+ +

Getting Help

+ +

+ There are many resources available to you if you're having problems with Gallery: +

+ + +

+ Remember – reporting bugs is good. Even if you think + it’s silly, go ahead and report it. We can always close the bug + or refile it (please don’t be offended in this case) but it’s + harder to find bugs than it is to fix them so we’re counting on + you to help us with the finding part. +

+ +

Known Issues / Bugs

+ + +

+ Check our Known Issues list and + Bug Tracker for information and some workarounds for + known problems. +

+ +

Advanced Topics

+ +

+ Unit Tests - Gallery 2 was designed using Extreme Programming methodologies. This + means that we have over 2,000 unit tests that ensure code + quality. If you want to help us out, you can try running + the unit tests and report back to us if any of them fail. +
+

+

+ Note - these tests shouldn’t change your Gallery + 2 settings at all, but if they fail, they may leave things in a + weird state. Be warned that there's a slim chance that you + might have to ditch your Gallery 2 data and start over if + something catastrophic happens. +

+ +

+ For Themers - There is now some + theme documentation + that you should read if you want to change the look of your Gallery 2 by customizing + an existing theme and its templates or by creating your own theme. +

+ +

+ Localization - If you’re interested in localizing + Gallery 2 into another language, you can + review the current state of localization + and then read the localization how-to and get started. + Submit your localizations early and often - + no need to wait until you’re entirely done. +

+ +

+ For Developers - We've gotten started on some + developer documentation that you should read if you want to + start hacking on Gallery 2. Some of the information is a little bit out of date + or in early drafts, but it's a start. +

+ +

+ Embedding - To learn more about embedding Gallery 2 into your website and + about existing integrations in content management systems, portals, blogs etc. + please see Gallery 2 Embedding. +

+ +

+ This page is valid XHTML 1.0 + + Gallery 2 + +

+ +
+ +

+ Copyright (C) 2000-2007 Bharat Mediratta +       + $Id: README.html 16577 2007-06-10 20:50:34Z mindless $ +

+ + diff --git a/Source/gallery2/bootstrap.inc b/Source/gallery2/bootstrap.inc new file mode 100644 index 0000000..4909a13 --- /dev/null +++ b/Source/gallery2/bootstrap.inc @@ -0,0 +1,58 @@ + diff --git a/Source/gallery2/config.php b/Source/gallery2/config.php new file mode 100644 index 0000000..ad1036f --- /dev/null +++ b/Source/gallery2/config.php @@ -0,0 +1,194 @@ +setConfig('setup.password', 'A PASSWORD'); + * + * Choose something random and enter it in plain text. You don't have to + * remember it because you can always refer to this file. You'll only be asked + * for this password when you run Gallery's lib/tools code. We don't provide a + * default password because we want you to choose one of your own (which + * lessens the chance that you'll get hacked). + */ +$gallery->setConfig('setup.password', '1'); + +/* + * In order for Gallery to manage your data, you must provide it with + * a directory that it can write to. Gallery is a webserver application, + * so the directory that you create must be writeable by the + * webserver, not just by you. + * + * Create an empty directory anywhere you please. Gallery will fill this + * directory with its own files (that you shouldn't mess with). This directory + * can be anywhere on your filesystem. For security purposes, it's better + * if the directory is not accessible via your webserver (ie, it should + * not be in your DocumentRoot). If you *do* make it available via your + * web server then you probably won't have any security for your data files. + * + * Don't make this the same as your gallery directory! + */ +$gallery->setConfig('data.gallery.base', '/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/'); + +/* + * Gallery can store its data in multiple different back ends. Currently we + * support MySQL, PostgreSQL and Oracle. Enter the hostname where your + * database lives, and the username and password you use to connect to it. + * + * You must specify the name of a database that already exists. Gallery will + * not create the database for you, because it's very difficult to do that in + * a reliable, database-neutral fashion. The user that you use should have + * the following permissions: + * + * SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER + * + * You must specify a table and column prefix. This is a few characters that + * is prepended to any table or column name to avoid conflicting with reserved + * words in the database or other tables you have in the same database. In + * fact, it's fine to let Gallery uses the same database as other applications + * (including other instances of Gallery itself); the prefix is enough + * to distinguish Gallery's tables from other applications. + * + * We provide some reasonable default prefixes below. If you modify these + * after Gallery has created its various tables, it will stop working until + * you modify it back. + * + * The possible database types are: + * mysqlt MySQL (3.23.34a and newer) + * mysqli MySQL (4.1 and newer) with PHP mysqli extension + * mysql Older MySQL (no transactions) + * postgres7 PostgreSQL 7.x and newer + * postgres PostgreSQL 6.x (not tested) + * oci8po Oracle 9i and newer + * db2 IBM DB2 9 and newer + * ado_mssql Microsoft SQL Server (2005 and newer) + */ +$storeConfig['type'] = 'mysqli'; +$storeConfig['hostname'] = 'localhost'; +$storeConfig['database'] = 'rodaxcs_abetoarmarios'; +$storeConfig['username'] = 'rodaxcs_abetoarm'; +$storeConfig['password'] = 'un8i5pos'; +$storeConfig['tablePrefix'] = 'g2_'; +$storeConfig['columnPrefix'] = 'g_'; +$storeConfig['usePersistentConnections'] = false; +$gallery->setConfig('storage.config', $storeConfig); + +/* + * Put Gallery into debug mode. Useful for tracking down problems with the + * application. Not a good idea to leave it this way, though. Possible debug + * choices are: 'buffered', 'logged', 'immediate' or false. Don't forget to + * use the quotes for any value but false! + * + * If you choose 'immediate', you'll see debugging information as soon as + * Gallery generates it. This can be useful at times, but it'll screw up some + * parts of the application flow. + * + * If you choose 'buffered', Gallery will display debug information in a table + * as part of the application. You won't necessarily get *all* the debug + * information but the application should work normally. + * + * If you choose 'logged', you must also specify: + * $gallery->setDebugLogFile('/path/to/writeable/file'); + * and all debug output will get printed into that file. You'll get all the + * debug output and the application will work normally. + * + * For best debugging output use this line: + * + * $gallery->setDebug('buffered'); + * + */ +$gallery->setDebug(false); + +/* + * Profiling mode. You can enable profiling for different parts of G2 to get an + * idea of what's fast and slow. Right now the only options are to enable SQL + * profiling: + * + * $gallery->setProfile(array('sql')); + * + */ +$gallery->setProfile(false); + +/* + * Maintenance mode. You can disable access to the site for anyone but + * site administrators by setting this flag. Set value below to: + * true (without quotes) - to use a basic notification page; themed + * view with admin login link when codebase is up to date, but a + * plain unstyled page when codebase has been updated but upgrader + * has not yet been run. + * url (with quotes) - provide a url where requests are redirected in + * either case described above. Example: '/maintenance.html' + * false (without quotes) - maintenance mode off + */ +$gallery->setConfig('mode.maintenance', false); + +/* + * Embedded mode. You can disable direct access to main.php (standalone G2) + * by setting this flag. Set value below to: + * true (without quotes) - block direct requests + * url (with quotes) - redirect requests to this url + * false (without quotes) - allow direct requests + */ +$gallery->setConfig('mode.embed.only', false); + +/* + * Allow a particular IP address to access the session (it still must know the + * session id) even though it doesn't match the address/user agent that created + * the session. Put the address of validator.w3.org ('133.27.228.132') here to allow + * validation of non-public Gallery pages from the links at the bottom of the page. + */ +$gallery->setConfig('allowSessionAccess', false); + +/* + * URL of Gallery codebase; required only for multisite install. + */ +$gallery->setConfig('galleryBaseUrl', ''); + +/* + * This setting can be used to override Gallery's auto-detection of the domain-name, + * protocol (http/https), URL path, and of the file & query string. + * Most users can leave this empty. If the server is misconfigured or for very special + * setups, this setting can be quite handy. + * Examples (the positions of the slashes ('/') are important): + * override the path: $gallery->setConfig('baseUri', '/another/path/'); + * override the host + path: $gallery->setConfig('baseUri', 'example.com/gallery2/'); + * override the protocol + host + path + file: + * $gallery->setConfig('baseUri', 'https://example.com:8080/gallery2/index.php'); + */ +$gallery->setConfig('baseUri', ''); +?> diff --git a/Source/gallery2/embed.php b/Source/gallery2/embed.php new file mode 100644 index 0000000..782a204 --- /dev/null +++ b/Source/gallery2/embed.php @@ -0,0 +1,67 @@ + + * @version $Revision: 15513 $ + */ + +/* Define G2_EMBED = 1 to remember to generate correct URLs and return the HTML, etc. */ +require_once(dirname(__FILE__) . '/modules/core/classes/GalleryDataCache.class'); +GalleryDataCache::put('G2_EMBED', 1, true); +require(dirname(__FILE__) . '/main.php'); +require(dirname(__FILE__) . '/modules/core/classes/GalleryEmbed.class'); + +/* + * Simplify finding the path to embed.php by sending it as a HTTP header + * Idea: + * In your integration setup you need to find out + * - the filesystem path for embed.php + * - the g2Uri and the embedUri. + * You can get the embed.php path with your g2Uri by fetching + * http://example.com/gallery2/embed.php?getEmbedPath=1 via fsockopen. + */ +$getEmbedPath = GalleryUtilities::getRequestVariablesNoPrefix('getEmbedPath'); +if (!empty($getEmbedPath)){ + if (!headers_sent()) { + /* + * Don't use GalleryUtilities::getRemoteHostAddress() + * since it checks headers that can be forged easily too + */ + $remotehost = GalleryUtilities::getServerVar('REMOTE_ADDR'); + $remotehost = !empty($remotehost) ? gethostbyname($remotehost) : ''; + $localhost = GalleryUtilities::getServerVar('HTTP_HOST'); + $localhost = !empty($localhost) ? gethostbyname($localhost) : '127.0.0.1'; + if (!empty($remotehost) && $remotehost == $localhost) { + if (defined('GALLERY_CONFIG_DIR')) { + /* GALLERY_CONFIG_DIR is multisite-aware */ + header('X-G2-EMBED-PATH: ' . GALLERY_CONFIG_DIR . '/embed.php'); + } else { + /* Fallback if G2 isn't installed yet */ + header('X-G2-EMBED-PATH: ' . __FILE__ ); + } + } + } +} +?> diff --git a/Source/gallery2/g2data_2e6106f57b/.htaccess b/Source/gallery2/g2data_2e6106f57b/.htaccess new file mode 100644 index 0000000..77bf5b3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/.htaccess @@ -0,0 +1,10 @@ +DirectoryIndex .htaccess +SetHandler Gallery_Security_Do_Not_Remove +Options None + +RewriteEngine off + + +Order allow,deny +Deny from all + diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/argo/ADM_MOD_15_mod.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/argo/ADM_MOD_15_mod.jpg new file mode 100644 index 0000000..6667f69 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/argo/ADM_MOD_15_mod.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/cronos/ADM_MOD_17.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/cronos/ADM_MOD_17.jpg new file mode 100644 index 0000000..49f323b Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/cronos/ADM_MOD_17.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_1.jpg new file mode 100644 index 0000000..c86861c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_1_mod.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_1_mod.jpg new file mode 100644 index 0000000..44e5171 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_1_mod.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_2.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_2.jpg new file mode 100644 index 0000000..c00ad7a Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/perseo/ADM_MOD_16_2.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/1.jpg new file mode 100644 index 0000000..df8c019 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/2.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/2.jpg new file mode 100644 index 0000000..3ae8c97 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/2.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/3.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/3.jpg new file mode 100644 index 0000000..34d6885 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/3.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/4.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/4.jpg new file mode 100644 index 0000000..1162d54 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/style/4.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/stylo/ADM_MOD_20_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/stylo/ADM_MOD_20_1.jpg new file mode 100644 index 0000000..417cd8a Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/stylo/ADM_MOD_20_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/stylo/ADM_MOD_20_2.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/stylo/ADM_MOD_20_2.jpg new file mode 100644 index 0000000..ba2fa27 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/actual/stylo/ADM_MOD_20_2.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28.jpg new file mode 100644 index 0000000..e94f82f Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28_1.jpg new file mode 100644 index 0000000..8e090f7 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28_2.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28_2.jpg new file mode 100644 index 0000000..02a05f8 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/antares/ADM_CLAS_28_2.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/cronos/ADM_CLAS_26_mod.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/cronos/ADM_CLAS_26_mod.jpg new file mode 100644 index 0000000..5b0192d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/cronos/ADM_CLAS_26_mod.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/hidra/ADM_CLAS_25.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/hidra/ADM_CLAS_25.jpg new file mode 100644 index 0000000..4dfb5dc Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/hidra/ADM_CLAS_25.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/hidra/ADM_CLAS_25_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/hidra/ADM_CLAS_25_1.jpg new file mode 100644 index 0000000..470db89 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/hidra/ADM_CLAS_25_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/lira/ADM_CLAS_23.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/lira/ADM_CLAS_23.jpg new file mode 100644 index 0000000..64d8731 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/contemporaneo/lira/ADM_CLAS_23.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/argo/ADM_VANG_08.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/argo/ADM_VANG_08.jpg new file mode 100644 index 0000000..e787ee7 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/argo/ADM_VANG_08.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_01_mod.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_01_mod.jpg new file mode 100644 index 0000000..bda96b1 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_01_mod.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_02.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_02.jpg new file mode 100644 index 0000000..8c57624 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_02.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_02_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_02_1.jpg new file mode 100644 index 0000000..2fce061 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_02_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_03.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_03.jpg new file mode 100644 index 0000000..19c8b36 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_03.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_07.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_07.jpg new file mode 100644 index 0000000..a4c8e14 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_07.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_09_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_09_1.jpg new file mode 100644 index 0000000..9c80407 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/stylo/ADM_VANG_09_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_1.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_1.jpg new file mode 100644 index 0000000..28875df Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_1.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_3.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_3.jpg new file mode 100644 index 0000000..9e41f5b Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_3.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_5.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_5.jpg new file mode 100644 index 0000000..07130a9 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_5.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_6.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_6.jpg new file mode 100644 index 0000000..13b95b6 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/armarios/vanguardia/teseo/ADM_VANG_10_6.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/2.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/2.jpg new file mode 100644 index 0000000..5ee1ebf Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/2.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/3.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/3.jpg new file mode 100644 index 0000000..97ff67a Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/3.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/4.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/4.jpg new file mode 100644 index 0000000..332e725 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/4.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/5.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/5.jpg new file mode 100644 index 0000000..2c6c57d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/5.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/6.jpg b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/6.jpg new file mode 100644 index 0000000..bd7fa3e Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/albums/catalogo/vestidores/6.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123-meta.inc new file mode 100644 index 0000000..dd5fa6c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:122;s:14:"pseudoFileName";s:16:"ADM_MOD_16_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123.dat new file mode 100644 index 0000000..da98b78 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/123.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125-meta.inc new file mode 100644 index 0000000..a76bcc8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:122;s:14:"pseudoFileName";s:16:"ADM_MOD_16_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125.dat new file mode 100644 index 0000000..0a00c60 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/125.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126-meta.inc new file mode 100644 index 0000000..f928d59 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:121;s:14:"pseudoFileName";s:10:"perseo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126.dat new file mode 100644 index 0000000..da98b78 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/2/126.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130-meta.inc new file mode 100644 index 0000000..1241d74 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:129;s:14:"pseudoFileName";s:20:"ADM_MOD_16_1_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130.dat new file mode 100644 index 0000000..ecc1bc3 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/130.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132-meta.inc new file mode 100644 index 0000000..5da708d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:129;s:14:"pseudoFileName";s:20:"ADM_MOD_16_1_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132.dat new file mode 100644 index 0000000..4dbec31 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/132.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134-meta.inc new file mode 100644 index 0000000..d70e0c0 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:133;s:14:"pseudoFileName";s:16:"ADM_MOD_16_2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134.dat new file mode 100644 index 0000000..b208345 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/134.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136-meta.inc new file mode 100644 index 0000000..1ece9f3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:133;s:14:"pseudoFileName";s:16:"ADM_MOD_16_2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136.dat new file mode 100644 index 0000000..2fd06d9 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/3/136.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142-meta.inc new file mode 100644 index 0000000..2a59626 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:13;s:14:"pseudoFileName";s:10:"actual.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142.dat new file mode 100644 index 0000000..e850f6c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/142.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143-meta.inc new file mode 100644 index 0000000..fdf5cba --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:11;s:14:"pseudoFileName";s:12:"armarios.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143.dat new file mode 100644 index 0000000..e850f6c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/143.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148-meta.inc new file mode 100644 index 0000000..d0c80de --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:147;s:14:"pseudoFileName";s:16:"ADM_MOD_20_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148.dat new file mode 100644 index 0000000..36b4cc9 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/4/148.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150-meta.inc new file mode 100644 index 0000000..fed9d51 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:147;s:14:"pseudoFileName";s:16:"ADM_MOD_20_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150.dat new file mode 100644 index 0000000..7c5657b Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/150.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151-meta.inc new file mode 100644 index 0000000..a722fe3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:146;s:14:"pseudoFileName";s:9:"stylo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151.dat new file mode 100644 index 0000000..9937b8f Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/151.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153-meta.inc new file mode 100644 index 0000000..d354fa5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:152;s:14:"pseudoFileName";s:16:"ADM_MOD_20_2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153.dat new file mode 100644 index 0000000..b8f0175 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/153.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154-meta.inc new file mode 100644 index 0000000..8bf27b8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:152;s:14:"pseudoFileName";s:16:"ADM_MOD_20_2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154.dat new file mode 100644 index 0000000..e9dd674 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/154.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158-meta.inc new file mode 100644 index 0000000..7ea0329 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:157;s:14:"pseudoFileName";s:18:"ADM_MOD_15_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158.dat new file mode 100644 index 0000000..8c83e3f Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/158.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159-meta.inc new file mode 100644 index 0000000..378f1b2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:157;s:14:"pseudoFileName";s:18:"ADM_MOD_15_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159.dat new file mode 100644 index 0000000..dea597c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/5/159.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160-meta.inc new file mode 100644 index 0000000..958735e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:157;s:14:"pseudoFileName";s:18:"ADM_MOD_15_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160.dat new file mode 100644 index 0000000..812a43f Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/160.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161-meta.inc new file mode 100644 index 0000000..4ec9b3d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:156;s:14:"pseudoFileName";s:8:"argo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161.dat new file mode 100644 index 0000000..96c88b6 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/161.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164-meta.inc new file mode 100644 index 0000000..8d5cecc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:163;s:14:"pseudoFileName";s:14:"ADM_MOD_17.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164.dat new file mode 100644 index 0000000..ee8425b Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/164.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167-meta.inc new file mode 100644 index 0000000..74bf095 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:162;s:14:"pseudoFileName";s:10:"cronos.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167.dat new file mode 100644 index 0000000..0efb789 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/6/167.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170-meta.inc new file mode 100644 index 0000000..1d6bfc6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:169;s:14:"pseudoFileName";s:17:"ADM_CLAS_28_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170.dat new file mode 100644 index 0000000..406f6f6 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/170.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172-meta.inc new file mode 100644 index 0000000..3a4b596 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:169;s:14:"pseudoFileName";s:17:"ADM_CLAS_28_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172.dat new file mode 100644 index 0000000..a664492 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/172.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173-meta.inc new file mode 100644 index 0000000..8a655d7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:168;s:14:"pseudoFileName";s:11:"antares.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173.dat new file mode 100644 index 0000000..6d25be9 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/173.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174-meta.inc new file mode 100644 index 0000000..4e4e799 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:15;s:14:"pseudoFileName";s:17:"contemporaneo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174.dat new file mode 100644 index 0000000..be41927 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/174.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176-meta.inc new file mode 100644 index 0000000..3b8341b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:175;s:14:"pseudoFileName";s:17:"ADM_CLAS_28_2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176.dat new file mode 100644 index 0000000..37f32f7 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/7/176.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180-meta.inc new file mode 100644 index 0000000..b3e0ebe --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:179;s:14:"pseudoFileName";s:15:"ADM_CLAS_28.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180.dat new file mode 100644 index 0000000..d41484e Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/180.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182-meta.inc new file mode 100644 index 0000000..b5e344f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:179;s:14:"pseudoFileName";s:15:"ADM_CLAS_28.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182.dat new file mode 100644 index 0000000..f895f78 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/182.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185-meta.inc new file mode 100644 index 0000000..503713c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:184;s:14:"pseudoFileName";s:17:"ADM_CLAS_25_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185.dat new file mode 100644 index 0000000..e7d6c09 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/185.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188-meta.inc new file mode 100644 index 0000000..3ede6fd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:183;s:14:"pseudoFileName";s:9:"hidra.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188.dat new file mode 100644 index 0000000..e7d6c09 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/8/188.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190-meta.inc new file mode 100644 index 0000000..bf23ffa --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:189;s:14:"pseudoFileName";s:15:"ADM_CLAS_25.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190.dat new file mode 100644 index 0000000..7270e89 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/190.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196-meta.inc new file mode 100644 index 0000000..57337a3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:195;s:14:"pseudoFileName";s:19:"ADM_CLAS_26_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196.dat new file mode 100644 index 0000000..e070bba Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/196.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199-meta.inc new file mode 100644 index 0000000..f888351 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:194;s:14:"pseudoFileName";s:10:"cronos.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199.dat new file mode 100644 index 0000000..d06a2fd Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/1/9/199.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201-meta.inc new file mode 100644 index 0000000..e255f60 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:200;s:14:"pseudoFileName";s:15:"ADM_CLAS_23.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201.dat new file mode 100644 index 0000000..b37cc9f Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/201.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204-meta.inc new file mode 100644 index 0000000..1b86de6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:193;s:14:"pseudoFileName";s:8:"lira.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204.dat new file mode 100644 index 0000000..8c38fa9 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/204.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207-meta.inc new file mode 100644 index 0000000..d8023c5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:206;s:14:"pseudoFileName";s:19:"ADM_VANG_01_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207.dat new file mode 100644 index 0000000..83ab91d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/207.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209-meta.inc new file mode 100644 index 0000000..8a5eaf9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:206;s:14:"pseudoFileName";s:19:"ADM_VANG_01_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209.dat new file mode 100644 index 0000000..4b4f669 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/0/209.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210-meta.inc new file mode 100644 index 0000000..eb83536 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:205;s:14:"pseudoFileName";s:9:"stylo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210.dat new file mode 100644 index 0000000..b845fbc Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/210.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211-meta.inc new file mode 100644 index 0000000..9239b60 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:14;s:14:"pseudoFileName";s:14:"vanguardia.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211.dat new file mode 100644 index 0000000..fd9aa31 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/211.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213-meta.inc new file mode 100644 index 0000000..c385724 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:212;s:14:"pseudoFileName";s:17:"ADM_VANG_02_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213.dat new file mode 100644 index 0000000..9c1621e Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/213.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214-meta.inc new file mode 100644 index 0000000..95e343a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:212;s:14:"pseudoFileName";s:17:"ADM_VANG_02_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214.dat new file mode 100644 index 0000000..9e2ac37 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/214.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217-meta.inc new file mode 100644 index 0000000..68e455a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:216;s:14:"pseudoFileName";s:15:"ADM_VANG_02.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217.dat new file mode 100644 index 0000000..55d549b Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/217.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218-meta.inc new file mode 100644 index 0000000..30e9453 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:216;s:14:"pseudoFileName";s:15:"ADM_VANG_02.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218.dat new file mode 100644 index 0000000..25a9a03 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/1/218.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221-meta.inc new file mode 100644 index 0000000..b24206b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:220;s:14:"pseudoFileName";s:15:"ADM_VANG_03.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221.dat new file mode 100644 index 0000000..59d4422 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/221.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222-meta.inc new file mode 100644 index 0000000..35f015a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:220;s:14:"pseudoFileName";s:15:"ADM_VANG_03.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222.dat new file mode 100644 index 0000000..7eb927d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/222.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225-meta.inc new file mode 100644 index 0000000..63b477e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:224;s:14:"pseudoFileName";s:15:"ADM_VANG_07.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225.dat new file mode 100644 index 0000000..906080b Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/225.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227-meta.inc new file mode 100644 index 0000000..3efe3fe --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:224;s:14:"pseudoFileName";s:15:"ADM_VANG_07.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227.dat new file mode 100644 index 0000000..5047a50 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/227.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229-meta.inc new file mode 100644 index 0000000..27494a2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:228;s:14:"pseudoFileName";s:17:"ADM_VANG_09_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229.dat new file mode 100644 index 0000000..a12cf48 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/2/229.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231-meta.inc new file mode 100644 index 0000000..339dc3a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:228;s:14:"pseudoFileName";s:17:"ADM_VANG_09_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231.dat new file mode 100644 index 0000000..590c201 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/231.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234-meta.inc new file mode 100644 index 0000000..44dce6e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:233;s:14:"pseudoFileName";s:17:"ADM_VANG_10_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234.dat new file mode 100644 index 0000000..a95d554 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/234.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236-meta.inc new file mode 100644 index 0000000..7791854 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:233;s:14:"pseudoFileName";s:17:"ADM_VANG_10_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236.dat new file mode 100644 index 0000000..5795b1a Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/236.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237-meta.inc new file mode 100644 index 0000000..8ce8b86 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:232;s:14:"pseudoFileName";s:9:"teseo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237.dat new file mode 100644 index 0000000..25ffbbf Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/237.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239-meta.inc new file mode 100644 index 0000000..f90ab9e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:238;s:14:"pseudoFileName";s:17:"ADM_VANG_10_3.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239.dat new file mode 100644 index 0000000..3ed57a9 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/3/239.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241-meta.inc new file mode 100644 index 0000000..f92218a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:238;s:14:"pseudoFileName";s:17:"ADM_VANG_10_3.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241.dat new file mode 100644 index 0000000..9dfc467 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/241.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243-meta.inc new file mode 100644 index 0000000..f7d530e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:242;s:14:"pseudoFileName";s:17:"ADM_VANG_10_5.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243.dat new file mode 100644 index 0000000..95e78b8 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/243.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244-meta.inc new file mode 100644 index 0000000..8386217 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:242;s:14:"pseudoFileName";s:17:"ADM_VANG_10_5.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244.dat new file mode 100644 index 0000000..9c4e3b0 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/244.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247-meta.inc new file mode 100644 index 0000000..747993d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:246;s:14:"pseudoFileName";s:17:"ADM_VANG_10_6.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247.dat new file mode 100644 index 0000000..7afc949 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/247.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248-meta.inc new file mode 100644 index 0000000..b67be3c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:246;s:14:"pseudoFileName";s:17:"ADM_VANG_10_6.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248.dat new file mode 100644 index 0000000..99d11df Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/4/248.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252-meta.inc new file mode 100644 index 0000000..4e834e1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:251;s:14:"pseudoFileName";s:15:"ADM_VANG_08.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252.dat new file mode 100644 index 0000000..0268422 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/252.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255-meta.inc new file mode 100644 index 0000000..10fb90f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:250;s:14:"pseudoFileName";s:8:"argo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255.dat new file mode 100644 index 0000000..37f80a6 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/5/255.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264-meta.inc new file mode 100644 index 0000000..741f4db --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:263;s:14:"pseudoFileName";s:18:"ADM_MOD_15_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264.dat new file mode 100644 index 0000000..9cd7975 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/264.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265-meta.inc new file mode 100644 index 0000000..f96344d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:263;s:14:"pseudoFileName";s:18:"ADM_MOD_15_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265.dat new file mode 100644 index 0000000..cb5949c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/265.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266-meta.inc new file mode 100644 index 0000000..94f4613 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:7;s:14:"pseudoFileName";s:4:".jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266.dat new file mode 100644 index 0000000..5b0192d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/266.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268-meta.inc new file mode 100644 index 0000000..dbf6bdb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:267;s:14:"pseudoFileName";s:17:"ADM_CLAS_28_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268.dat new file mode 100644 index 0000000..8e090f7 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/268.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269-meta.inc new file mode 100644 index 0000000..0447549 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:267;s:14:"pseudoFileName";s:17:"ADM_CLAS_28_1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269.dat new file mode 100644 index 0000000..9f517c2 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/6/269.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271-meta.inc new file mode 100644 index 0000000..63b9d09 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:270;s:14:"pseudoFileName";s:19:"ADM_CLAS_26_mod.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271.dat new file mode 100644 index 0000000..5b0192d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/271.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274-meta.inc new file mode 100644 index 0000000..9fcd8f3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:273;s:14:"pseudoFileName";s:15:"ADM_CLAS_23.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274.dat new file mode 100644 index 0000000..64d8731 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/274.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276-meta.inc new file mode 100644 index 0000000..4169c5a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:175;s:14:"pseudoFileName";s:17:"ADM_CLAS_28_2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276.dat new file mode 100644 index 0000000..2f071c0 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/2/7/276.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300-meta.inc new file mode 100644 index 0000000..7035858 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:299;s:14:"pseudoFileName";s:5:"2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300.dat new file mode 100644 index 0000000..55babc0 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/300.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301-meta.inc new file mode 100644 index 0000000..edc2c18 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:299;s:14:"pseudoFileName";s:5:"2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301.dat new file mode 100644 index 0000000..7fa3b33 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/301.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/302-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/302-meta.inc new file mode 100644 index 0000000..f19522b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/302-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/302.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:298;s:14:"pseudoFileName";s:14:"vestidores.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/303-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/303-meta.inc new file mode 100644 index 0000000..849a453 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/303-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/303.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:144;s:14:"pseudoFileName";s:12:"catalogo.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305-meta.inc new file mode 100644 index 0000000..5cec183 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:304;s:14:"pseudoFileName";s:5:"3.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305.dat new file mode 100644 index 0000000..6031940 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/305.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306-meta.inc new file mode 100644 index 0000000..3591b67 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:304;s:14:"pseudoFileName";s:5:"3.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306.dat new file mode 100644 index 0000000..a5da83c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/306.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308-meta.inc new file mode 100644 index 0000000..68a537f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:307;s:14:"pseudoFileName";s:5:"4.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308.dat new file mode 100644 index 0000000..b56a22c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/308.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309-meta.inc new file mode 100644 index 0000000..9c03373 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:307;s:14:"pseudoFileName";s:5:"4.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309.dat new file mode 100644 index 0000000..250f8cc Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/0/309.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311-meta.inc new file mode 100644 index 0000000..d613b74 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:310;s:14:"pseudoFileName";s:5:"5.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311.dat new file mode 100644 index 0000000..5315e73 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/311.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312-meta.inc new file mode 100644 index 0000000..287c334 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:310;s:14:"pseudoFileName";s:5:"5.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312.dat new file mode 100644 index 0000000..bd1df49 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/312.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314-meta.inc new file mode 100644 index 0000000..733ced9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:313;s:14:"pseudoFileName";s:5:"6.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314.dat new file mode 100644 index 0000000..a0343e4 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/314.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315-meta.inc new file mode 100644 index 0000000..8e843d5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:313;s:14:"pseudoFileName";s:5:"6.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315.dat new file mode 100644 index 0000000..467e082 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/315.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318-meta.inc new file mode 100644 index 0000000..1c4ff81 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:317;s:14:"pseudoFileName";s:5:"1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318.dat new file mode 100644 index 0000000..366853e Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/318.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319-meta.inc new file mode 100644 index 0000000..b9f9618 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:317;s:14:"pseudoFileName";s:5:"1.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319.dat new file mode 100644 index 0000000..851d73a Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/1/319.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321-meta.inc new file mode 100644 index 0000000..e9b7e1a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:316;s:14:"pseudoFileName";s:9:"style.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321.dat new file mode 100644 index 0000000..366853e Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/321.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323-meta.inc new file mode 100644 index 0000000..f4c42f8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:322;s:14:"pseudoFileName";s:5:"2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323.dat new file mode 100644 index 0000000..145879c Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/323.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324-meta.inc new file mode 100644 index 0000000..9b3e868 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:322;s:14:"pseudoFileName";s:5:"2.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324.dat new file mode 100644 index 0000000..6ada61f Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/324.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327-meta.inc new file mode 100644 index 0000000..286fb7d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:326;s:14:"pseudoFileName";s:5:"3.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327.dat new file mode 100644 index 0000000..969058d Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/327.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328-meta.inc new file mode 100644 index 0000000..4c4d5d2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:326;s:14:"pseudoFileName";s:5:"3.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328.dat new file mode 100644 index 0000000..b92eb98 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/2/328.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331-meta.inc new file mode 100644 index 0000000..663d2ad --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331.dat";s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:330;s:14:"pseudoFileName";s:5:"4.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331.dat new file mode 100644 index 0000000..3ca0dd3 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/331.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332-meta.inc b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332-meta.inc new file mode 100644 index 0000000..cbbfa3f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332-meta.inc @@ -0,0 +1 @@ +|a:5:{s:14:"derivativePath";s:95:"/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332.dat";s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:8:"parentId";i:330;s:14:"pseudoFileName";s:5:"4.jpg";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332.dat b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332.dat new file mode 100644 index 0000000..91ef7af Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/cache/derivative/3/3/332.dat differ diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/5.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/5.inc new file mode 100644 index 0000000..82615d7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/5.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryUser.class|O:11:"GalleryUser":16:{s:8:"userName";s:5:"guest";s:8:"fullName";s:8:"Invitado";s:14:"hashedPassword";s:36:"TSk71c3cfc0a4cdc50ee53fdf44a74a2d0d2";s:5:"email";N;s:8:"language";N;s:6:"locked";i:0;s:2:"id";i:5;s:17:"creationTimestamp";i:1182181411;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182181411;s:12:"serialNumber";i:1;s:10:"entityType";s:11:"GalleryUser";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:14:{s:8:"userName";s:5:"guest";s:8:"fullName";s:8:"Invitado";s:14:"hashedPassword";s:36:"TSk71c3cfc0a4cdc50ee53fdf44a74a2d0d2";s:5:"email";N;s:8:"language";N;s:6:"locked";i:0;s:2:"id";i:5;s:17:"creationTimestamp";i:1182181411;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182181411;s:12:"serialNumber";i:1;s:10:"entityType";s:11:"GalleryUser";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/6.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/6.inc new file mode 100644 index 0000000..cbe34bb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/6.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryUser.class|O:11:"GalleryUser":16:{s:8:"userName";s:13:"administrador";s:8:"fullName";s:24:"Administrador de Gallery";s:14:"hashedPassword";s:36:"07Km16991726e4f646e2cfb9d1dac6297fa0";s:5:"email";s:23:"info@rodax-software.com";s:8:"language";s:0:"";s:6:"locked";i:0;s:2:"id";i:6;s:17:"creationTimestamp";i:1182181411;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183658490;s:12:"serialNumber";i:3;s:10:"entityType";s:11:"GalleryUser";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:14:{s:8:"userName";s:13:"administrador";s:8:"fullName";s:24:"Administrador de Gallery";s:14:"hashedPassword";s:36:"07Km16991726e4f646e2cfb9d1dac6297fa0";s:5:"email";s:23:"info@rodax-software.com";s:8:"language";s:0:"";s:6:"locked";i:0;s:2:"id";i:6;s:17:"creationTimestamp";i:1182181411;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183658490;s:12:"serialNumber";i:3;s:10:"entityType";s:11:"GalleryUser";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/7.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/7.inc new file mode 100644 index 0000000..1e861f5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/0/7.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:6:"random";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:6:"Inicio";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182181411;s:13:"pathComponent";N;s:8:"parentId";i:0;s:2:"id";i:7;s:17:"creationTimestamp";i:1182181411;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183659564;s:12:"serialNumber";i:68;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:6:"random";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:6:"Inicio";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182181411;s:13:"pathComponent";N;s:8:"parentId";i:0;s:2:"id";i:7;s:17:"creationTimestamp";i:1182181411;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183659564;s:12:"serialNumber";i:68;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/11.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/11.inc new file mode 100644 index 0000000..e6a20af --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/11.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:8:"Armarios";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183795;s:13:"pathComponent";s:8:"armarios";s:8:"parentId";i:144;s:2:"id";i:11;s:17:"creationTimestamp";i:1182183794;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182447108;s:12:"serialNumber";i:6;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:8:"Armarios";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183795;s:13:"pathComponent";s:8:"armarios";s:8:"parentId";i:144;s:2:"id";i:11;s:17:"creationTimestamp";i:1182183794;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182447108;s:12:"serialNumber";i:6;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/13.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/13.inc new file mode 100644 index 0000000..a2dd3cf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/13.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:17:"Armarios Actuales";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183813;s:13:"pathComponent";s:6:"actual";s:8:"parentId";i:11;s:2:"id";i:13;s:17:"creationTimestamp";i:1182183813;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987357;s:12:"serialNumber";i:10;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:17:"Armarios Actuales";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183813;s:13:"pathComponent";s:6:"actual";s:8:"parentId";i:11;s:2:"id";i:13;s:17:"creationTimestamp";i:1182183813;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987357;s:12:"serialNumber";i:10;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/14.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/14.inc new file mode 100644 index 0000000..096c5c6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/14.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:22:"Armarios Vanguardistas";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183829;s:13:"pathComponent";s:10:"vanguardia";s:8:"parentId";i:11;s:2:"id";i:14;s:17:"creationTimestamp";i:1182183829;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182500091;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:22:"Armarios Vanguardistas";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183829;s:13:"pathComponent";s:10:"vanguardia";s:8:"parentId";i:11;s:2:"id";i:14;s:17:"creationTimestamp";i:1182183829;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182500091;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/15.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/15.inc new file mode 100644 index 0000000..2b06857 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/1/15.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:24:"Armarios Contemporáneos";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183888;s:13:"pathComponent";s:13:"contemporaneo";s:8:"parentId";i:11;s:2:"id";i:15;s:17:"creationTimestamp";i:1182183888;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182499755;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:24:"Armarios Contemporáneos";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182183888;s:13:"pathComponent";s:13:"contemporaneo";s:8:"parentId";i:11;s:2:"id";i:15;s:17:"creationTimestamp";i:1182183888;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182499755;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/0/9/97.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/9/97.inc new file mode 100644 index 0000000..87e973f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/0/9/97.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:8:"Contacto";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182339693;s:13:"pathComponent";s:8:"contacto";s:8:"parentId";i:7;s:2:"id";i:97;s:17:"creationTimestamp";i:1182339693;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182353544;s:12:"serialNumber";i:3;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:8:"Contacto";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182339693;s:13:"pathComponent";s:8:"contacto";s:8:"parentId";i:7;s:2:"id";i:97;s:17:"creationTimestamp";i:1182339693;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182353544;s:12:"serialNumber";i:3;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/121.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/121.inc new file mode 100644 index 0000000..b3c9a39 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/121.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:12:"Serie Perseo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182422821;s:13:"pathComponent";s:6:"perseo";s:8:"parentId";i:13;s:2:"id";i:121;s:17:"creationTimestamp";i:1182422821;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:12:"Serie Perseo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182422821;s:13:"pathComponent";s:6:"perseo";s:8:"parentId";i:13;s:2:"id";i:121;s:17:"creationTimestamp";i:1182422821;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/122.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/122.inc new file mode 100644 index 0000000..2ce5397 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/122.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:720;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:75455;s:18:"canContainChildren";i:0;s:11:"description";s:100:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:33:"Serie Perseo / Puertas correderas";s:5:"title";s:12:"ADM_MOD_16.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182423232;s:13:"pathComponent";s:16:"ADM_MOD_16_1.jpg";s:8:"parentId";i:121;s:2:"id";i:122;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182934390;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:720;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:75455;s:18:"canContainChildren";i:0;s:11:"description";s:100:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:33:"Serie Perseo / Puertas correderas";s:5:"title";s:12:"ADM_MOD_16.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182423232;s:13:"pathComponent";s:16:"ADM_MOD_16_1.jpg";s:8:"parentId";i:121;s:2:"id";i:122;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182934390;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/123-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/123-fast.inc new file mode 100644 index 0000000..9a4931b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/123-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/2/123.dat', 'ADM_MOD_16_1.jpg', 'Thu, 28 Jun 2007 18:14:24 GMT', 'image/jpeg', 4477);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/123.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/123.inc new file mode 100644 index 0000000..a6c73d4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/123.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:122;s:20:"derivativeOperations";s:45:"crop|2.737,13.472,95.053,83.472;thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:48481;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:122;s:2:"id";i:123;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505226;s:12:"serialNumber";i:10;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:122;s:20:"derivativeOperations";s:45:"crop|2.737,13.472,95.053,83.472;thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:48481;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:122;s:2:"id";i:123;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505226;s:12:"serialNumber";i:10;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/124.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/124.inc new file mode 100644 index 0000000..4cdd80a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/124.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:485;s:18:"derivativeSourceId";i:122;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28271;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:122;s:2:"id";i:124;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182423295;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:485;s:18:"derivativeSourceId";i:122;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28271;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:122;s:2:"id";i:124;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182423295;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/125-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/125-fast.inc new file mode 100644 index 0000000..f3bbc84 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/125-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/2/125.dat', 'ADM_MOD_16_1.jpg', 'Fri, 29 Jun 2007 09:02:44 GMT', 'image/jpeg', 40096);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/125.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/125.inc new file mode 100644 index 0000000..90686f6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/125.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:606;s:18:"derivativeSourceId";i:122;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:40096;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:122;s:2:"id";i:125;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107764;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:606;s:18:"derivativeSourceId";i:122;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:40096;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:122;s:2:"id";i:125;s:17:"creationTimestamp";i:1182423232;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107764;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/126-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/126-fast.inc new file mode 100644 index 0000000..92bc67c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/126-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/2/126.dat', 'perseo.jpg', 'Thu, 28 Jun 2007 18:14:49 GMT', 'image/jpeg', 4477);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/126.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/126.inc new file mode 100644 index 0000000..74afd50 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/126.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:123;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:48481;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:121;s:2:"id";i:126;s:17:"creationTimestamp";i:1182423233;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505237;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:123;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:48481;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:121;s:2:"id";i:126;s:17:"creationTimestamp";i:1182423233;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505237;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/129.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/129.inc new file mode 100644 index 0000000..930a122 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/2/129.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:720;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:83493;s:18:"canContainChildren";i:0;s:11:"description";s:100:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:33:"Serie Perseo / Puertas correderas";s:5:"title";s:16:"ADM_MOD_16.1.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182423236;s:13:"pathComponent";s:20:"ADM_MOD_16_1_mod.jpg";s:8:"parentId";i:121;s:2:"id";i:129;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182934390;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:720;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:83493;s:18:"canContainChildren";i:0;s:11:"description";s:100:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:33:"Serie Perseo / Puertas correderas";s:5:"title";s:16:"ADM_MOD_16.1.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182423236;s:13:"pathComponent";s:20:"ADM_MOD_16_1_mod.jpg";s:8:"parentId";i:121;s:2:"id";i:129;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182934390;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/130-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/130-fast.inc new file mode 100644 index 0000000..e45469b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/130-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/3/130.dat', 'ADM_MOD_16_1_mod.jpg', 'Fri, 29 Jun 2007 09:02:35 GMT', 'image/jpeg', 32656);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/130.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/130.inc new file mode 100644 index 0000000..40976c0 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/130.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:493;s:18:"derivativeSourceId";i:129;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:32656;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:129;s:2:"id";i:130;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107755;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:493;s:18:"derivativeSourceId";i:129;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:32656;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:129;s:2:"id";i:130;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107755;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/131.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/131.inc new file mode 100644 index 0000000..8afd5a1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/131.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:485;s:18:"derivativeSourceId";i:129;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:32338;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:129;s:2:"id";i:131;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182424081;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:485;s:18:"derivativeSourceId";i:129;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:32338;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:129;s:2:"id";i:131;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182424081;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/132-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/132-fast.inc new file mode 100644 index 0000000..4aaca3c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/132-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/3/132.dat', 'ADM_MOD_16_1_mod.jpg', 'Fri, 29 Jun 2007 17:07:08 GMT', 'image/jpeg', 45057);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/132.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/132.inc new file mode 100644 index 0000000..08a75e3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/132.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:606;s:18:"derivativeSourceId";i:129;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:45057;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:129;s:2:"id";i:132;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136828;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:606;s:18:"derivativeSourceId";i:129;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:45057;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:129;s:2:"id";i:132;s:17:"creationTimestamp";i:1182423236;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136828;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/133.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/133.inc new file mode 100644 index 0000000..671fce8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/133.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:980;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:165265;s:18:"canContainChildren";i:0;s:11:"description";s:100:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:33:"Serie Perseo / Puertas correderas";s:5:"title";s:12:"ADM_MOD_16.2";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182423239;s:13:"pathComponent";s:16:"ADM_MOD_16_2.jpg";s:8:"parentId";i:121;s:2:"id";i:133;s:17:"creationTimestamp";i:1182423239;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182934390;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:980;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:165265;s:18:"canContainChildren";i:0;s:11:"description";s:100:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Roble H Blanco Barnizado y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:33:"Serie Perseo / Puertas correderas";s:5:"title";s:12:"ADM_MOD_16.2";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182423239;s:13:"pathComponent";s:16:"ADM_MOD_16_2.jpg";s:8:"parentId";i:121;s:2:"id";i:133;s:17:"creationTimestamp";i:1182423239;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182934390;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/134-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/134-fast.inc new file mode 100644 index 0000000..83ef552 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/134-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/3/134.dat', 'ADM_MOD_16_2.jpg', 'Fri, 29 Jun 2007 09:02:36 GMT', 'image/jpeg', 8609);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/134.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/134.inc new file mode 100644 index 0000000..e8d4c69 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/134.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:194;s:6:"height";i:200;s:18:"derivativeSourceId";i:133;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:8609;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:133;s:2:"id";i:134;s:17:"creationTimestamp";i:1182423240;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182504606;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:194;s:6:"height";i:200;s:18:"derivativeSourceId";i:133;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:8609;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:133;s:2:"id";i:134;s:17:"creationTimestamp";i:1182423240;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182504606;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/135.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/135.inc new file mode 100644 index 0000000..66f997b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/135.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:133;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:133;s:2:"id";i:135;s:17:"creationTimestamp";i:1182423240;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182423240;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:133;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:133;s:2:"id";i:135;s:17:"creationTimestamp";i:1182423240;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182423240;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/136-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/136-fast.inc new file mode 100644 index 0000000..685e671 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/136-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/3/136.dat', 'ADM_MOD_16_2.jpg', 'Fri, 29 Jun 2007 09:02:42 GMT', 'image/jpeg', 80389);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/136.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/136.inc new file mode 100644 index 0000000..6e79931 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/3/136.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:776;s:6:"height";i:800;s:18:"derivativeSourceId";i:133;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:80389;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:133;s:2:"id";i:136;s:17:"creationTimestamp";i:1182423240;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107762;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:776;s:6:"height";i:800;s:18:"derivativeSourceId";i:133;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:80389;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:133;s:2:"id";i:136;s:17:"creationTimestamp";i:1182423240;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107762;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/142-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/142-fast.inc new file mode 100644 index 0000000..1a92a4f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/142-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/4/142.dat', 'actual.jpg', 'Thu, 28 Jun 2007 18:14:22 GMT', 'image/jpeg', 22468);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/142.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/142.inc new file mode 100644 index 0000000..6f21053 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/142.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:600;s:6:"height";i:400;s:18:"derivativeSourceId";i:158;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:13;s:2:"id";i:142;s:17:"creationTimestamp";i:1182425131;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182512236;s:12:"serialNumber";i:10;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:600;s:6:"height";i:400;s:18:"derivativeSourceId";i:158;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:13;s:2:"id";i:142;s:17:"creationTimestamp";i:1182425131;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182512236;s:12:"serialNumber";i:10;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/143-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/143-fast.inc new file mode 100644 index 0000000..e2e7bde --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/143-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/4/143.dat', 'armarios.jpg', 'Mon, 09 Jul 2007 11:20:04 GMT', 'image/jpeg', 22468);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/143.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/143.inc new file mode 100644 index 0000000..bfd36f1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/143.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:600;s:6:"height";i:400;s:18:"derivativeSourceId";i:161;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:11;s:2:"id";i:143;s:17:"creationTimestamp";i:1182425132;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183980004;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:600;s:6:"height";i:400;s:18:"derivativeSourceId";i:161;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:11;s:2:"id";i:143;s:17:"creationTimestamp";i:1182425132;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183980004;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/144.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/144.inc new file mode 100644 index 0000000..dab51fb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/144.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:11:"orderWeight";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:9:"Catálogo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182447005;s:13:"pathComponent";s:8:"catalogo";s:8:"parentId";i:7;s:2:"id";i:144;s:17:"creationTimestamp";i:1182447005;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981527;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:11:"orderWeight";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:9:"Catálogo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182447005;s:13:"pathComponent";s:8:"catalogo";s:8:"parentId";i:7;s:2:"id";i:144;s:17:"creationTimestamp";i:1182447005;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981527;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/146.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/146.inc new file mode 100644 index 0000000..00d5a97 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/146.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Stylo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182498980;s:13:"pathComponent";s:5:"stylo";s:8:"parentId";i:13;s:2:"id";i:146;s:17:"creationTimestamp";i:1182498980;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Stylo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182498980;s:13:"pathComponent";s:5:"stylo";s:8:"parentId";i:13;s:2:"id";i:146;s:17:"creationTimestamp";i:1182498980;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/147.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/147.inc new file mode 100644 index 0000000..708d0a5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/147.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:613;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:53762;s:18:"canContainChildren";i:0;s:11:"description";s:63:"Remates y Perfil: Lacado Hueso / Paneles Estriados Lacado Hueso";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:12:"ADM_MOD_20.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499076;s:13:"pathComponent";s:16:"ADM_MOD_20_1.jpg";s:8:"parentId";i:146;s:2:"id";i:147;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935502;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:613;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:53762;s:18:"canContainChildren";i:0;s:11:"description";s:63:"Remates y Perfil: Lacado Hueso / Paneles Estriados Lacado Hueso";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:12:"ADM_MOD_20.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499076;s:13:"pathComponent";s:16:"ADM_MOD_20_1.jpg";s:8:"parentId";i:146;s:2:"id";i:147;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935502;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/148-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/148-fast.inc new file mode 100644 index 0000000..60b0824 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/148-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/4/148.dat', 'ADM_MOD_20_1.jpg', 'Thu, 28 Jun 2007 18:14:26 GMT', 'image/jpeg', 22412);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/148.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/148.inc new file mode 100644 index 0000000..6d9ceb2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/148.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:433;s:18:"derivativeSourceId";i:147;s:20:"derivativeOperations";s:37:"crop|0,0,97.474,100.653;thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42328;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:147;s:2:"id";i:148;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867175;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:433;s:18:"derivativeSourceId";i:147;s:20:"derivativeOperations";s:37:"crop|0,0,97.474,100.653;thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42328;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:147;s:2:"id";i:148;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867175;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/149.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/149.inc new file mode 100644 index 0000000..d0b85cf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/4/149.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:413;s:18:"derivativeSourceId";i:147;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20344;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:147;s:2:"id";i:149;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505035;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:413;s:18:"derivativeSourceId";i:147;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20344;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:147;s:2:"id";i:149;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505035;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/150-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/150-fast.inc new file mode 100644 index 0000000..0d67735 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/150-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/5/150.dat', 'ADM_MOD_20_1.jpg', 'Fri, 29 Jun 2007 17:07:47 GMT', 'image/jpeg', 28443);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/150.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/150.inc new file mode 100644 index 0000000..05e29bd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/150.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:516;s:18:"derivativeSourceId";i:147;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28443;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:147;s:2:"id";i:150;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136867;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:516;s:18:"derivativeSourceId";i:147;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28443;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:147;s:2:"id";i:150;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136867;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/151-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/151-fast.inc new file mode 100644 index 0000000..5fa5785 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/151-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/5/151.dat', 'stylo.jpg', 'Thu, 28 Jun 2007 18:14:27 GMT', 'image/jpeg', 4204);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/151.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/151.inc new file mode 100644 index 0000000..a0a0cdf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/151.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:148;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42328;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:146;s:2:"id";i:151;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505352;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:148;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42328;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:146;s:2:"id";i:151;s:17:"creationTimestamp";i:1182499076;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505352;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/152.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/152.inc new file mode 100644 index 0000000..0e14549 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/152.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:949;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:88026;s:18:"canContainChildren";i:0;s:11:"description";s:63:"Remates y Perfil: Lacado Hueso / Paneles Estriados Lacado Hueso";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:12:"ADM_MOD_20.2";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499080;s:13:"pathComponent";s:16:"ADM_MOD_20_2.jpg";s:8:"parentId";i:146;s:2:"id";i:152;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935502;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:949;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:88026;s:18:"canContainChildren";i:0;s:11:"description";s:63:"Remates y Perfil: Lacado Hueso / Paneles Estriados Lacado Hueso";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:12:"ADM_MOD_20.2";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499080;s:13:"pathComponent";s:16:"ADM_MOD_20_2.jpg";s:8:"parentId";i:146;s:2:"id";i:152;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935502;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/153-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/153-fast.inc new file mode 100644 index 0000000..1006b1e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/153-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/5/153.dat', 'ADM_MOD_20_2.jpg', 'Fri, 29 Jun 2007 09:02:53 GMT', 'image/jpeg', 5595);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/153.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/153.inc new file mode 100644 index 0000000..926374c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/153.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:152;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5595;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:152;s:2:"id";i:153;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107773;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:152;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5595;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:152;s:2:"id";i:153;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107773;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/154-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/154-fast.inc new file mode 100644 index 0000000..8387897 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/154-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/5/154.dat', 'ADM_MOD_20_2.jpg', 'Fri, 29 Jun 2007 17:07:44 GMT', 'image/jpeg', 32333);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/154.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/154.inc new file mode 100644 index 0000000..477b88d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/154.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:639;s:18:"derivativeSourceId";i:152;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:32333;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:152;s:2:"id";i:154;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136864;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:639;s:18:"derivativeSourceId";i:152;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:32333;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:152;s:2:"id";i:154;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136864;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/155.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/155.inc new file mode 100644 index 0000000..5cd2d9e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/155.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:152;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:152;s:2:"id";i:155;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182499080;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:152;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:152;s:2:"id";i:155;s:17:"creationTimestamp";i:1182499080;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182499080;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/156.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/156.inc new file mode 100644 index 0000000..50621f1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/156.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:10:"Serie Argo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499117;s:13:"pathComponent";s:4:"argo";s:8:"parentId";i:13;s:2:"id";i:156;s:17:"creationTimestamp";i:1182499117;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:10:"Serie Argo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499117;s:13:"pathComponent";s:4:"argo";s:8:"parentId";i:13;s:2:"id";i:156;s:17:"creationTimestamp";i:1182499117;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/157.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/157.inc new file mode 100644 index 0000000..2196c1c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/157.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:689;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:68512;s:18:"canContainChildren";i:0;s:11:"description";s:51:"Remates: Lacado Gris / Paneles Estriado Lacado Gris";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie ARGO";s:5:"title";s:14:"ADM_MOD_15.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499130;s:13:"pathComponent";s:18:"ADM_MOD_15_mod.jpg";s:8:"parentId";i:156;s:2:"id";i:157;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935592;s:12:"serialNumber";i:3;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:689;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:68512;s:18:"canContainChildren";i:0;s:11:"description";s:51:"Remates: Lacado Gris / Paneles Estriado Lacado Gris";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie ARGO";s:5:"title";s:14:"ADM_MOD_15.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499130;s:13:"pathComponent";s:18:"ADM_MOD_15_mod.jpg";s:8:"parentId";i:156;s:2:"id";i:157;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935592;s:12:"serialNumber";i:3;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/158-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/158-fast.inc new file mode 100644 index 0000000..1f72015 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/158-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/5/158.dat', 'ADM_MOD_15_mod.jpg', 'Thu, 28 Jun 2007 17:57:02 GMT', 'image/jpeg', 26056);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/158.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/158.inc new file mode 100644 index 0000000..38df45b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/158.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:433;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:37:"crop|0,4.209,100,91.872;thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:157;s:2:"id";i:158;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867317;s:12:"serialNumber";i:10;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:433;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:37:"crop|0,4.209,100,91.872;thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:157;s:2:"id";i:158;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867317;s:12:"serialNumber";i:10;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/159-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/159-fast.inc new file mode 100644 index 0000000..2ad00c2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/159-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/5/159.dat', 'ADM_MOD_15_mod.jpg', 'Thu, 28 Jun 2007 17:56:57 GMT', 'image/jpeg', 25872);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/159.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/159.inc new file mode 100644 index 0000000..aaec854 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/5/159.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:464;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25872;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:157;s:2:"id";i:159;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183053417;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:464;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25872;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:157;s:2:"id";i:159;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183053417;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/160-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/160-fast.inc new file mode 100644 index 0000000..109d394 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/160-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/6/160.dat', 'ADM_MOD_15_mod.jpg', 'Thu, 28 Jun 2007 18:14:52 GMT', 'image/jpeg', 36377);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/160.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/160.inc new file mode 100644 index 0000000..36b3115 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/160.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:580;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36377;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:157;s:2:"id";i:160;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054492;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:580;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36377;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:157;s:2:"id";i:160;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054492;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/161-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/161-fast.inc new file mode 100644 index 0000000..6217d0e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/161-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/6/161.dat', 'argo.jpg', 'Thu, 28 Jun 2007 18:14:50 GMT', 'image/jpeg', 4657);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/161.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/161.inc new file mode 100644 index 0000000..4191e3c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/161.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:158;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:156;s:2:"id";i:161;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505501;s:12:"serialNumber";i:6;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:158;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:49590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:156;s:2:"id";i:161;s:17:"creationTimestamp";i:1182499130;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505501;s:12:"serialNumber";i:6;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/162.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/162.inc new file mode 100644 index 0000000..42c805c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/162.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:12:"Serie Cronos";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499191;s:13:"pathComponent";s:6:"cronos";s:8:"parentId";i:13;s:2:"id";i:162;s:17:"creationTimestamp";i:1182499191;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:12:"Serie Cronos";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499191;s:13:"pathComponent";s:6:"cronos";s:8:"parentId";i:13;s:2:"id";i:162;s:17:"creationTimestamp";i:1182499191;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474823;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/163.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/163.inc new file mode 100644 index 0000000..054778c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/163.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:671;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:78361;s:18:"canContainChildren";i:0;s:11:"description";s:90:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Melamina Arena y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:12:"Serie Cronos";s:5:"title";s:10:"ADM_MOD_17";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499209;s:13:"pathComponent";s:14:"ADM_MOD_17.jpg";s:8:"parentId";i:162;s:2:"id";i:163;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935646;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:671;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:78361;s:18:"canContainChildren";i:0;s:11:"description";s:90:"Remates y Perfil: Roble Blanco Barnizado / Paneles: Melamina Arena y Cristal Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:12:"Serie Cronos";s:5:"title";s:10:"ADM_MOD_17";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499209;s:13:"pathComponent";s:14:"ADM_MOD_17.jpg";s:8:"parentId";i:162;s:2:"id";i:163;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935646;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/164-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/164-fast.inc new file mode 100644 index 0000000..1d347ad --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/164-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/6/164.dat', 'ADM_MOD_17.jpg', 'Fri, 29 Jun 2007 09:02:29 GMT', 'image/jpeg', 30238);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/164.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/164.inc new file mode 100644 index 0000000..1b210da --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/164.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:433;s:18:"derivativeSourceId";i:163;s:20:"derivativeOperations";s:41:"crop|0.316,2.683,100,94.337;thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:59341;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:163;s:2:"id";i:164;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867375;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:433;s:18:"derivativeSourceId";i:163;s:20:"derivativeOperations";s:41:"crop|0.316,2.683,100,94.337;thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:59341;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:163;s:2:"id";i:164;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867375;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/165.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/165.inc new file mode 100644 index 0000000..28c620c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/165.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:452;s:18:"derivativeSourceId";i:163;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:30438;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:163;s:2:"id";i:165;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505524;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:452;s:18:"derivativeSourceId";i:163;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:30438;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:163;s:2:"id";i:165;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505524;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/166.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/166.inc new file mode 100644 index 0000000..2d6fdd5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/166.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:565;s:18:"derivativeSourceId";i:163;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:43129;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:163;s:2:"id";i:166;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505526;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:565;s:18:"derivativeSourceId";i:163;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:43129;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:163;s:2:"id";i:166;s:17:"creationTimestamp";i:1182499209;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505526;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/167-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/167-fast.inc new file mode 100644 index 0000000..e8b18a6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/167-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/6/167.dat', 'cronos.jpg', 'Fri, 29 Jun 2007 09:02:29 GMT', 'image/jpeg', 5050);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/167.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/167.inc new file mode 100644 index 0000000..8ffe5fc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/167.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:164;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:59341;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:162;s:2:"id";i:167;s:17:"creationTimestamp";i:1182499210;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182505799;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:133;s:18:"derivativeSourceId";i:164;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:59341;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:162;s:2:"id";i:167;s:17:"creationTimestamp";i:1182499210;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182505799;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/168.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/168.inc new file mode 100644 index 0000000..e610276 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/168.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:13:"Serie Antares";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499481;s:13:"pathComponent";s:7:"antares";s:8:"parentId";i:15;s:2:"id";i:168;s:17:"creationTimestamp";i:1182499481;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:6;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:13:"Serie Antares";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499481;s:13:"pathComponent";s:7:"antares";s:8:"parentId";i:15;s:2:"id";i:168;s:17:"creationTimestamp";i:1182499481;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:6;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/169.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/169.inc new file mode 100644 index 0000000..bd3f408 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/6/169.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:635;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:77150;s:18:"canContainChildren";i:0;s:11:"description";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:13:"ADM_CLAS_28.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499510;s:13:"pathComponent";s:17:"ADM_CLAS_28_1.jpg";s:8:"parentId";i:168;s:2:"id";i:169;s:17:"creationTimestamp";i:1182499510;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936069;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:635;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:77150;s:18:"canContainChildren";i:0;s:11:"description";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:13:"ADM_CLAS_28.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499510;s:13:"pathComponent";s:17:"ADM_CLAS_28_1.jpg";s:8:"parentId";i:168;s:2:"id";i:169;s:17:"creationTimestamp";i:1182499510;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936069;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/170-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/170-fast.inc new file mode 100644 index 0000000..769b968 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/170-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/7/170.dat', 'ADM_CLAS_28_1.jpg', 'Thu, 28 Jun 2007 18:14:22 GMT', 'image/jpeg', 29003);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/170.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/170.inc new file mode 100644 index 0000000..fc8b36a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/170.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:441;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29003;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:169;s:2:"id";i:170;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054462;s:12:"serialNumber";i:13;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:441;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29003;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:169;s:2:"id";i:170;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054462;s:12:"serialNumber";i:13;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/171.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/171.inc new file mode 100644 index 0000000..62491f5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/171.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:434;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28548;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:169;s:2:"id";i:171;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795071;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:434;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28548;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:169;s:2:"id";i:171;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795071;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/172-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/172-fast.inc new file mode 100644 index 0000000..1ad5db2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/172-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/7/172.dat', 'ADM_CLAS_28_1.jpg', 'Thu, 28 Jun 2007 18:14:31 GMT', 'image/jpeg', 39701);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/172.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/172.inc new file mode 100644 index 0000000..705aba1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/172.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:543;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:39701;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:169;s:2:"id";i:172;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054471;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:543;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:39701;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:169;s:2:"id";i:172;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054471;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/173-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/173-fast.inc new file mode 100644 index 0000000..2449036 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/173-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/7/173.dat', 'antares.jpg', 'Thu, 28 Jun 2007 18:14:23 GMT', 'image/jpeg', 4927);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/173.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/173.inc new file mode 100644 index 0000000..4f43f9e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/173.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:136;s:18:"derivativeSourceId";i:170;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4927;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:168;s:2:"id";i:173;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054463;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:136;s:18:"derivativeSourceId";i:170;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4927;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:168;s:2:"id";i:173;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054463;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/174-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/174-fast.inc new file mode 100644 index 0000000..5070461 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/174-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/7/174.dat', 'contemporaneo.jpg', 'Thu, 28 Jun 2007 18:14:23 GMT', 'image/jpeg', 25705);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/174.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/174.inc new file mode 100644 index 0000000..b6f9e2a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/174.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:600;s:6:"height";i:407;s:18:"derivativeSourceId";i:173;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25705;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:15;s:2:"id";i:174;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054463;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:600;s:6:"height";i:407;s:18:"derivativeSourceId";i:173;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25705;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:15;s:2:"id";i:174;s:17:"creationTimestamp";i:1182499511;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054463;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/175.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/175.inc new file mode 100644 index 0000000..a102092 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/175.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:1338;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:159260;s:18:"canContainChildren";i:0;s:11:"description";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:13:"ADM_CLAS_28.2";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499515;s:13:"pathComponent";s:17:"ADM_CLAS_28_2.jpg";s:8:"parentId";i:168;s:2:"id";i:175;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936069;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:1338;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:159260;s:18:"canContainChildren";i:0;s:11:"description";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:13:"ADM_CLAS_28.2";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499515;s:13:"pathComponent";s:17:"ADM_CLAS_28_2.jpg";s:8:"parentId";i:168;s:2:"id";i:175;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936069;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/176-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/176-fast.inc new file mode 100644 index 0000000..bd4d428 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/176-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/7/176.dat', 'ADM_CLAS_28_2.jpg', 'Thu, 28 Jun 2007 18:14:29 GMT', 'image/jpeg', 6348);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/176.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/176.inc new file mode 100644 index 0000000..18f669c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/176.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:140;s:6:"height";i:200;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:6348;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:176;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054469;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:140;s:6:"height";i:200;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:6348;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:176;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054469;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/177.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/177.inc new file mode 100644 index 0000000..18b86be --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/177.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:448;s:6:"height";i:640;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36510;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:177;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870267;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:448;s:6:"height";i:640;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36510;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:177;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870267;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/178.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/178.inc new file mode 100644 index 0000000..3905447 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/178.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:560;s:6:"height";i:800;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:52228;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:178;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870269;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:560;s:6:"height";i:800;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:52228;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:178;s:17:"creationTimestamp";i:1182499515;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870269;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/179.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/179.inc new file mode 100644 index 0000000..bfe913b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/7/179.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:635;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:71969;s:18:"canContainChildren";i:0;s:11:"description";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:11:"ADM_CLAS_28";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499519;s:13:"pathComponent";s:15:"ADM_CLAS_28.jpg";s:8:"parentId";i:168;s:2:"id";i:179;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936069;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:635;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:71969;s:18:"canContainChildren";i:0;s:11:"description";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:11:"ADM_CLAS_28";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499519;s:13:"pathComponent";s:15:"ADM_CLAS_28.jpg";s:8:"parentId";i:168;s:2:"id";i:179;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936069;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/180-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/180-fast.inc new file mode 100644 index 0000000..f0ecf95 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/180-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/8/180.dat', 'ADM_CLAS_28.jpg', 'Thu, 28 Jun 2007 18:14:30 GMT', 'image/jpeg', 4633);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/180.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/180.inc new file mode 100644 index 0000000..617d503 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/180.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:136;s:18:"derivativeSourceId";i:179;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4633;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:179;s:2:"id";i:180;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054470;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:136;s:18:"derivativeSourceId";i:179;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4633;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:179;s:2:"id";i:180;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054470;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/181.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/181.inc new file mode 100644 index 0000000..12af5c5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/181.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:434;s:18:"derivativeSourceId";i:179;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:26224;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:179;s:2:"id";i:181;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870271;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:434;s:18:"derivativeSourceId";i:179;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:26224;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:179;s:2:"id";i:181;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870271;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/182-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/182-fast.inc new file mode 100644 index 0000000..d76103c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/182-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/8/182.dat', 'ADM_CLAS_28.jpg', 'Mon, 02 Jul 2007 16:53:56 GMT', 'image/jpeg', 36629);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/182.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/182.inc new file mode 100644 index 0000000..c13279a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/182.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:543;s:18:"derivativeSourceId";i:179;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36629;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:179;s:2:"id";i:182;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183395236;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:543;s:18:"derivativeSourceId";i:179;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36629;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:179;s:2:"id";i:182;s:17:"creationTimestamp";i:1182499519;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183395236;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/183.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/183.inc new file mode 100644 index 0000000..0e7f351 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/183.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Hidra";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499547;s:13:"pathComponent";s:5:"hidra";s:8:"parentId";i:15;s:2:"id";i:183;s:17:"creationTimestamp";i:1182499547;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Hidra";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499547;s:13:"pathComponent";s:5:"hidra";s:8:"parentId";i:15;s:2:"id";i:183;s:17:"creationTimestamp";i:1182499547;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/184.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/184.inc new file mode 100644 index 0000000..f44c119 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/184.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:109780;s:18:"canContainChildren";i:0;s:11:"description";s:59:"Remates y Perfil: Roble Barnizado / Paneles: Melamina Arena";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Hidra";s:5:"title";s:13:"ADM_CLAS_25.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499558;s:13:"pathComponent";s:17:"ADM_CLAS_25_1.jpg";s:8:"parentId";i:183;s:2:"id";i:184;s:17:"creationTimestamp";i:1182499558;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936124;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:109780;s:18:"canContainChildren";i:0;s:11:"description";s:59:"Remates y Perfil: Roble Barnizado / Paneles: Melamina Arena";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Hidra";s:5:"title";s:13:"ADM_CLAS_25.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499558;s:13:"pathComponent";s:17:"ADM_CLAS_25_1.jpg";s:8:"parentId";i:183;s:2:"id";i:184;s:17:"creationTimestamp";i:1182499558;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936124;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/185-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/185-fast.inc new file mode 100644 index 0000000..c017f12 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/185-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/8/185.dat', 'ADM_CLAS_25_1.jpg', 'Fri, 29 Jun 2007 17:08:43 GMT', 'image/jpeg', 6951);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/185.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/185.inc new file mode 100644 index 0000000..6dc82b1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/185.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:184;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:6951;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:184;s:2:"id";i:185;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136923;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:184;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:6951;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:184;s:2:"id";i:185;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136923;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/186.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/186.inc new file mode 100644 index 0000000..4c9b488 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/186.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:184;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42149;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:184;s:2:"id";i:186;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870273;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:184;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42149;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:184;s:2:"id";i:186;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870273;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/187.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/187.inc new file mode 100644 index 0000000..53e960f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/187.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:800;s:18:"derivativeSourceId";i:184;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:60049;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:184;s:2:"id";i:187;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870275;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:800;s:18:"derivativeSourceId";i:184;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:60049;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:184;s:2:"id";i:187;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870275;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/188-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/188-fast.inc new file mode 100644 index 0000000..dc7f712 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/188-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/8/188.dat', 'hidra.jpg', 'Fri, 29 Jun 2007 17:09:09 GMT', 'image/jpeg', 6951);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/188.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/188.inc new file mode 100644 index 0000000..5a96d01 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/188.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:185;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:6951;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:183;s:2:"id";i:188;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136949;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:185;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:6951;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:183;s:2:"id";i:188;s:17:"creationTimestamp";i:1182499559;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136949;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/189.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/189.inc new file mode 100644 index 0000000..7c373b7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/8/189.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:784;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:79870;s:18:"canContainChildren";i:0;s:11:"description";s:59:"Remates y Perfil: Roble Barnizado / Paneles: Melamina Arena";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Hidra";s:5:"title";s:11:"ADM_CLAS_25";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499562;s:13:"pathComponent";s:15:"ADM_CLAS_25.jpg";s:8:"parentId";i:183;s:2:"id";i:189;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936124;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:784;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:79870;s:18:"canContainChildren";i:0;s:11:"description";s:59:"Remates y Perfil: Roble Barnizado / Paneles: Melamina Arena";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Hidra";s:5:"title";s:11:"ADM_CLAS_25";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499562;s:13:"pathComponent";s:15:"ADM_CLAS_25.jpg";s:8:"parentId";i:183;s:2:"id";i:189;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936124;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/190-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/190-fast.inc new file mode 100644 index 0000000..05a8a8a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/190-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/9/190.dat', 'ADM_CLAS_25.jpg', 'Fri, 29 Jun 2007 17:09:12 GMT', 'image/jpeg', 29352);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/190.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/190.inc new file mode 100644 index 0000000..92f81f4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/190.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:544;s:18:"derivativeSourceId";i:189;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29352;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:189;s:2:"id";i:190;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136952;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:544;s:18:"derivativeSourceId";i:189;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29352;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:189;s:2:"id";i:190;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136952;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/191.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/191.inc new file mode 100644 index 0000000..53f8d46 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/191.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:536;s:18:"derivativeSourceId";i:189;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29150;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:189;s:2:"id";i:191;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870226;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:536;s:18:"derivativeSourceId";i:189;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29150;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:189;s:2:"id";i:191;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870226;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/192.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/192.inc new file mode 100644 index 0000000..6b2da42 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/192.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:670;s:18:"derivativeSourceId";i:189;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:41686;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:189;s:2:"id";i:192;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182870227;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:670;s:18:"derivativeSourceId";i:189;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:41686;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:189;s:2:"id";i:192;s:17:"creationTimestamp";i:1182499562;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182870227;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/193.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/193.inc new file mode 100644 index 0000000..abe20b3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/193.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:10:"Serie Lira";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499657;s:13:"pathComponent";s:4:"lira";s:8:"parentId";i:15;s:2:"id";i:193;s:17:"creationTimestamp";i:1182499657;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:10:"Serie Lira";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499657;s:13:"pathComponent";s:4:"lira";s:8:"parentId";i:15;s:2:"id";i:193;s:17:"creationTimestamp";i:1182499657;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/194.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/194.inc new file mode 100644 index 0000000..4f5b785 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/194.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:12:"Serie Cronos";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499755;s:13:"pathComponent";s:6:"cronos";s:8:"parentId";i:15;s:2:"id";i:194;s:17:"creationTimestamp";i:1182499755;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:12:"Serie Cronos";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499755;s:13:"pathComponent";s:6:"cronos";s:8:"parentId";i:15;s:2:"id";i:194;s:17:"creationTimestamp";i:1182499755;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183475058;s:12:"serialNumber";i:4;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/195.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/195.inc new file mode 100644 index 0000000..5f5ed85 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/195.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:535;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:79075;s:18:"canContainChildren";i:0;s:11:"description";s:116:"Remates y Perfil: Cerezo Natural Barnizado / Paneles: Cerezo Natural Barnizado y Cristal Transparente con Cortinilla";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:12:"Serie Cronos";s:5:"title";s:15:"ADM_CLAS_26.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499773;s:13:"pathComponent";s:19:"ADM_CLAS_26_mod.jpg";s:8:"parentId";i:194;s:2:"id";i:195;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936217;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:535;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:79075;s:18:"canContainChildren";i:0;s:11:"description";s:116:"Remates y Perfil: Cerezo Natural Barnizado / Paneles: Cerezo Natural Barnizado y Cristal Transparente con Cortinilla";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:12:"Serie Cronos";s:5:"title";s:15:"ADM_CLAS_26.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499773;s:13:"pathComponent";s:19:"ADM_CLAS_26_mod.jpg";s:8:"parentId";i:194;s:2:"id";i:195;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936217;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/196-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/196-fast.inc new file mode 100644 index 0000000..624d7c3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/196-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/9/196.dat', 'ADM_CLAS_26_mod.jpg', 'Fri, 29 Jun 2007 17:09:10 GMT', 'image/jpeg', 29900);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/196.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/196.inc new file mode 100644 index 0000000..aa9495a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/196.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:372;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29900;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:195;s:2:"id";i:196;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136950;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:372;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29900;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:195;s:2:"id";i:196;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136950;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/197.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/197.inc new file mode 100644 index 0000000..2cf20f2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/197.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:366;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28700;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:195;s:2:"id";i:197;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795073;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:366;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28700;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:195;s:2:"id";i:197;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795073;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/198.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/198.inc new file mode 100644 index 0000000..7c2792e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/198.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:457;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:41276;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:195;s:2:"id";i:198;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795075;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:457;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:41276;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:195;s:2:"id";i:198;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795075;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/199-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/199-fast.inc new file mode 100644 index 0000000..4fbf29a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/199-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/1/9/199.dat', 'cronos.jpg', 'Fri, 29 Jun 2007 17:09:10 GMT', 'image/jpeg', 5014);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/199.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/199.inc new file mode 100644 index 0000000..df260c5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/1/9/199.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:114;s:18:"derivativeSourceId";i:196;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5014;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:194;s:2:"id";i:199;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136950;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:114;s:18:"derivativeSourceId";i:196;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5014;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:194;s:2:"id";i:199;s:17:"creationTimestamp";i:1182499773;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136950;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/200.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/200.inc new file mode 100644 index 0000000..3c1b797 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/200.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:588;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:70471;s:18:"canContainChildren";i:0;s:11:"description";s:104:"Remates y Perfil: Lacado Blanco / Paneles: Lacado Blanco y Cristal Transparente con Cortinilla y Cruceta";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Lira";s:5:"title";s:11:"ADM_CLAS_23";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499800;s:13:"pathComponent";s:15:"ADM_CLAS_23.jpg";s:8:"parentId";i:193;s:2:"id";i:200;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936176;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:588;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:70471;s:18:"canContainChildren";i:0;s:11:"description";s:104:"Remates y Perfil: Lacado Blanco / Paneles: Lacado Blanco y Cristal Transparente con Cortinilla y Cruceta";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Lira";s:5:"title";s:11:"ADM_CLAS_23";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499800;s:13:"pathComponent";s:15:"ADM_CLAS_23.jpg";s:8:"parentId";i:193;s:2:"id";i:200;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936176;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/201-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/201-fast.inc new file mode 100644 index 0000000..d6ad02d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/201-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/0/201.dat', 'ADM_CLAS_23.jpg', 'Fri, 29 Jun 2007 08:38:01 GMT', 'image/jpeg', 25719);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/201.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/201.inc new file mode 100644 index 0000000..920e55f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/201.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:408;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25719;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:200;s:2:"id";i:201;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183106281;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:408;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25719;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:200;s:2:"id";i:201;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183106281;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/202.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/202.inc new file mode 100644 index 0000000..ff744ec --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/202.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:402;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25177;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:200;s:2:"id";i:202;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795075;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:402;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25177;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:200;s:2:"id";i:202;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795075;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/203.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/203.inc new file mode 100644 index 0000000..52b57bc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/203.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:503;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36013;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:200;s:2:"id";i:203;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795076;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:503;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36013;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:200;s:2:"id";i:203;s:17:"creationTimestamp";i:1182499800;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795076;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/204-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/204-fast.inc new file mode 100644 index 0000000..a2ff973 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/204-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/0/204.dat', 'lira.jpg', 'Fri, 29 Jun 2007 17:08:44 GMT', 'image/jpeg', 4259);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/204.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/204.inc new file mode 100644 index 0000000..4fed207 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/204.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:126;s:18:"derivativeSourceId";i:201;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4259;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:193;s:2:"id";i:204;s:17:"creationTimestamp";i:1182499801;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136924;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:126;s:18:"derivativeSourceId";i:201;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4259;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:193;s:2:"id";i:204;s:17:"creationTimestamp";i:1182499801;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136924;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/205.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/205.inc new file mode 100644 index 0000000..cebea7d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/205.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Stylo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499907;s:13:"pathComponent";s:5:"stylo";s:8:"parentId";i:14;s:2:"id";i:205;s:17:"creationTimestamp";i:1182499907;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474935;s:12:"serialNumber";i:9;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Stylo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499907;s:13:"pathComponent";s:5:"stylo";s:8:"parentId";i:14;s:2:"id";i:205;s:17:"creationTimestamp";i:1182499907;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474935;s:12:"serialNumber";i:9;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/206.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/206.inc new file mode 100644 index 0000000..97b4350 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/206.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:544;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:54937;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:15:"ADM_VANG_01.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499921;s:13:"pathComponent";s:19:"ADM_VANG_01_mod.jpg";s:8:"parentId";i:205;s:2:"id";i:206;s:17:"creationTimestamp";i:1182499921;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:544;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:54937;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:15:"ADM_VANG_01.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499921;s:13:"pathComponent";s:19:"ADM_VANG_01_mod.jpg";s:8:"parentId";i:205;s:2:"id";i:206;s:17:"creationTimestamp";i:1182499921;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/207-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/207-fast.inc new file mode 100644 index 0000000..cb7e3d9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/207-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/0/207.dat', 'ADM_VANG_01_mod.jpg', 'Thu, 28 Jun 2007 18:14:22 GMT', 'image/jpeg', 21267);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/207.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/207.inc new file mode 100644 index 0000000..2341e06 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/207.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:378;s:18:"derivativeSourceId";i:206;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:21267;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:206;s:2:"id";i:207;s:17:"creationTimestamp";i:1182499921;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054462;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:378;s:18:"derivativeSourceId";i:206;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:21267;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:206;s:2:"id";i:207;s:17:"creationTimestamp";i:1182499921;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054462;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/208.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/208.inc new file mode 100644 index 0000000..403c2a2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/208.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:372;s:18:"derivativeSourceId";i:206;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20369;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:206;s:2:"id";i:208;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867861;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:372;s:18:"derivativeSourceId";i:206;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20369;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:206;s:2:"id";i:208;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867861;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/209-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/209-fast.inc new file mode 100644 index 0000000..113a058 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/209-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/0/209.dat', 'ADM_VANG_01_mod.jpg', 'Fri, 29 Jun 2007 17:29:57 GMT', 'image/jpeg', 29089);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/209.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/209.inc new file mode 100644 index 0000000..ab682dd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/0/209.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:465;s:18:"derivativeSourceId";i:206;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29089;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:206;s:2:"id";i:209;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138197;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:465;s:18:"derivativeSourceId";i:206;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29089;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:206;s:2:"id";i:209;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138197;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/210-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/210-fast.inc new file mode 100644 index 0000000..fc68cb1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/210-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/1/210.dat', 'stylo.jpg', 'Thu, 28 Jun 2007 18:14:22 GMT', 'image/jpeg', 4091);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/210.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/210.inc new file mode 100644 index 0000000..3d20946 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/210.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:116;s:18:"derivativeSourceId";i:207;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4091;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:205;s:2:"id";i:210;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054462;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:116;s:18:"derivativeSourceId";i:207;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4091;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:205;s:2:"id";i:210;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054462;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/211-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/211-fast.inc new file mode 100644 index 0000000..d0f3f03 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/211-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/1/211.dat', 'vanguardia.jpg', 'Thu, 28 Jun 2007 18:14:23 GMT', 'image/jpeg', 18882);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/211.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/211.inc new file mode 100644 index 0000000..a044787 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/211.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:600;s:6:"height";i:349;s:18:"derivativeSourceId";i:210;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:18882;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:14;s:2:"id";i:211;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183054463;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:600;s:6:"height";i:349;s:18:"derivativeSourceId";i:210;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:18882;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:14;s:2:"id";i:211;s:17:"creationTimestamp";i:1182499922;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183054463;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/212.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/212.inc new file mode 100644 index 0000000..8e984e4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/212.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:1093;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:95997;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:13:"ADM_VANG_02.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499925;s:13:"pathComponent";s:17:"ADM_VANG_02_1.jpg";s:8:"parentId";i:205;s:2:"id";i:212;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:1093;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:95997;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:13:"ADM_VANG_02.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499925;s:13:"pathComponent";s:17:"ADM_VANG_02_1.jpg";s:8:"parentId";i:205;s:2:"id";i:212;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/213-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/213-fast.inc new file mode 100644 index 0000000..1e8df9f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/213-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/1/213.dat', 'ADM_VANG_02_1.jpg', 'Fri, 29 Jun 2007 09:05:53 GMT', 'image/jpeg', 5264);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/213.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/213.inc new file mode 100644 index 0000000..6b06c1f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/213.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:171;s:6:"height";i:200;s:18:"derivativeSourceId";i:212;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5264;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:212;s:2:"id";i:213;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107953;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:171;s:6:"height";i:200;s:18:"derivativeSourceId";i:212;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5264;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:212;s:2:"id";i:213;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107953;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/214-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/214-fast.inc new file mode 100644 index 0000000..4cf0fd8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/214-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/1/214.dat', 'ADM_VANG_02_1.jpg', 'Fri, 29 Jun 2007 17:29:58 GMT', 'image/jpeg', 29013);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/214.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/214.inc new file mode 100644 index 0000000..9b8bb3b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/214.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:548;s:6:"height";i:640;s:18:"derivativeSourceId";i:212;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29013;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:212;s:2:"id";i:214;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138198;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:548;s:6:"height";i:640;s:18:"derivativeSourceId";i:212;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:29013;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:212;s:2:"id";i:214;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138198;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/215.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/215.inc new file mode 100644 index 0000000..7208064 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/215.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:212;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:212;s:2:"id";i:215;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182499925;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:212;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:212;s:2:"id";i:215;s:17:"creationTimestamp";i:1182499925;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182499925;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/216.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/216.inc new file mode 100644 index 0000000..e0d938e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/216.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:78657;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:11:"ADM_VANG_02";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499929;s:13:"pathComponent";s:15:"ADM_VANG_02.jpg";s:8:"parentId";i:205;s:2:"id";i:216;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:78657;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:11:"ADM_VANG_02";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499929;s:13:"pathComponent";s:15:"ADM_VANG_02.jpg";s:8:"parentId";i:205;s:2:"id";i:216;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/217-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/217-fast.inc new file mode 100644 index 0000000..3c657b3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/217-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/1/217.dat', 'ADM_VANG_02.jpg', 'Fri, 29 Jun 2007 09:14:52 GMT', 'image/jpeg', 5548);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/217.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/217.inc new file mode 100644 index 0000000..0ea3890 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/217.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:216;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5548;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:216;s:2:"id";i:217;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183108493;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:216;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:5548;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:216;s:2:"id";i:217;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183108493;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/218-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/218-fast.inc new file mode 100644 index 0000000..481f67f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/218-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/1/218.dat', 'ADM_VANG_02.jpg', 'Fri, 29 Jun 2007 17:08:32 GMT', 'image/jpeg', 30286);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/218.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/218.inc new file mode 100644 index 0000000..908ab17 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/218.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:216;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:30286;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:216;s:2:"id";i:218;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136912;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:216;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:30286;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:216;s:2:"id";i:218;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136912;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/219.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/219.inc new file mode 100644 index 0000000..7b9120f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/1/219.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:216;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:216;s:2:"id";i:219;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182499929;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:216;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:216;s:2:"id";i:219;s:17:"creationTimestamp";i:1182499929;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182499929;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/220.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/220.inc new file mode 100644 index 0000000..7452fd0 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/220.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:109007;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:11:"ADM_VANG_03";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499932;s:13:"pathComponent";s:15:"ADM_VANG_03.jpg";s:8:"parentId";i:205;s:2:"id";i:220;s:17:"creationTimestamp";i:1182499932;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:109007;s:18:"canContainChildren";i:0;s:11:"description";s:70:"Remates y Perfil: Roble Ceniza Barnizado / Cristal Lacado Gris Grafito";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:11:"ADM_VANG_03";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499932;s:13:"pathComponent";s:15:"ADM_VANG_03.jpg";s:8:"parentId";i:205;s:2:"id";i:220;s:17:"creationTimestamp";i:1182499932;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/221-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/221-fast.inc new file mode 100644 index 0000000..5980f1f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/221-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/2/221.dat', 'ADM_VANG_03.jpg', 'Fri, 29 Jun 2007 09:05:55 GMT', 'image/jpeg', 7302);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/221.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/221.inc new file mode 100644 index 0000000..87100b5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/221.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:220;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:7302;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:220;s:2:"id";i:221;s:17:"creationTimestamp";i:1182499933;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107955;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:220;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:7302;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:220;s:2:"id";i:221;s:17:"creationTimestamp";i:1182499933;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107955;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/222-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/222-fast.inc new file mode 100644 index 0000000..f60fa7d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/222-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/2/222.dat', 'ADM_VANG_03.jpg', 'Fri, 29 Jun 2007 17:08:34 GMT', 'image/jpeg', 42667);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/222.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/222.inc new file mode 100644 index 0000000..be8795a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/222.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:220;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42667;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:220;s:2:"id";i:222;s:17:"creationTimestamp";i:1182499933;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136914;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:220;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42667;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:220;s:2:"id";i:222;s:17:"creationTimestamp";i:1182499933;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136914;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/223.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/223.inc new file mode 100644 index 0000000..8ac1ec7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/223.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:220;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:220;s:2:"id";i:223;s:17:"creationTimestamp";i:1182499933;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182499933;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:220;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:220;s:2:"id";i:223;s:17:"creationTimestamp";i:1182499933;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182499933;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/224.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/224.inc new file mode 100644 index 0000000..bfbc4d7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/224.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:474;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:58760;s:18:"canContainChildren";i:0;s:11:"description";s:104:"Remates y Perfil: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado y Cristal Lacado Negro Mate";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:11:"ADM_VANG_07";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499964;s:13:"pathComponent";s:15:"ADM_VANG_07.jpg";s:8:"parentId";i:205;s:2:"id";i:224;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:474;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:58760;s:18:"canContainChildren";i:0;s:11:"description";s:104:"Remates y Perfil: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado y Cristal Lacado Negro Mate";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:11:"ADM_VANG_07";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499964;s:13:"pathComponent";s:15:"ADM_VANG_07.jpg";s:8:"parentId";i:205;s:2:"id";i:224;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/225-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/225-fast.inc new file mode 100644 index 0000000..de55ce4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/225-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/2/225.dat', 'ADM_VANG_07.jpg', 'Fri, 29 Jun 2007 09:05:52 GMT', 'image/jpeg', 20639);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/225.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/225.inc new file mode 100644 index 0000000..1d697d5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/225.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:329;s:18:"derivativeSourceId";i:224;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20639;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:224;s:2:"id";i:225;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107952;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:329;s:18:"derivativeSourceId";i:224;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20639;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:224;s:2:"id";i:225;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107952;s:12:"serialNumber";i:7;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/226.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/226.inc new file mode 100644 index 0000000..2c098e3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/226.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:324;s:18:"derivativeSourceId";i:224;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20580;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:224;s:2:"id";i:226;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867984;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:324;s:18:"derivativeSourceId";i:224;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:20580;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:224;s:2:"id";i:226;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867984;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/227-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/227-fast.inc new file mode 100644 index 0000000..b8bbd60 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/227-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/2/227.dat', 'ADM_VANG_07.jpg', 'Fri, 29 Jun 2007 17:30:09 GMT', 'image/jpeg', 28062);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/227.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/227.inc new file mode 100644 index 0000000..249494d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/227.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:405;s:18:"derivativeSourceId";i:224;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28062;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:224;s:2:"id";i:227;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138209;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:405;s:18:"derivativeSourceId";i:224;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28062;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:224;s:2:"id";i:227;s:17:"creationTimestamp";i:1182499964;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138209;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/228.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/228.inc new file mode 100644 index 0000000..09144eb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/228.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:594;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:70228;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:105:"Remates y Perfil: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado y Cristal Lacado Blanco Mate";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:13:"ADM_VANG_09.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499989;s:13:"pathComponent";s:17:"ADM_VANG_09_1.jpg";s:8:"parentId";i:205;s:2:"id";i:228;s:17:"creationTimestamp";i:1182499989;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:594;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:70228;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:105:"Remates y Perfil: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado y Cristal Lacado Blanco Mate";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Stylo";s:5:"title";s:13:"ADM_VANG_09.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499989;s:13:"pathComponent";s:17:"ADM_VANG_09_1.jpg";s:8:"parentId";i:205;s:2:"id";i:228;s:17:"creationTimestamp";i:1182499989;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935834;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/229-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/229-fast.inc new file mode 100644 index 0000000..304d02d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/229-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/2/229.dat', 'ADM_VANG_09_1.jpg', 'Fri, 29 Jun 2007 09:14:54 GMT', 'image/jpeg', 24527);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/229.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/229.inc new file mode 100644 index 0000000..0b50041 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/2/229.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:413;s:18:"derivativeSourceId";i:228;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:24527;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:228;s:2:"id";i:229;s:17:"creationTimestamp";i:1182499990;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183108494;s:12:"serialNumber";i:9;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:413;s:18:"derivativeSourceId";i:228;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:24527;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:228;s:2:"id";i:229;s:17:"creationTimestamp";i:1182499990;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183108494;s:12:"serialNumber";i:9;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/230.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/230.inc new file mode 100644 index 0000000..e3e2710 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/230.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:406;s:18:"derivativeSourceId";i:228;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:23891;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:228;s:2:"id";i:230;s:17:"creationTimestamp";i:1182499990;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867405;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:406;s:18:"derivativeSourceId";i:228;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:23891;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:228;s:2:"id";i:230;s:17:"creationTimestamp";i:1182499990;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867405;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/231-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/231-fast.inc new file mode 100644 index 0000000..1d51bcc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/231-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/3/231.dat', 'ADM_VANG_09_1.jpg', 'Fri, 29 Jun 2007 17:08:30 GMT', 'image/jpeg', 33294);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/231.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/231.inc new file mode 100644 index 0000000..ce7fbc9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/231.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:508;s:18:"derivativeSourceId";i:228;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:33294;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:228;s:2:"id";i:231;s:17:"creationTimestamp";i:1182499990;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183136910;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:508;s:18:"derivativeSourceId";i:228;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:33294;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:228;s:2:"id";i:231;s:17:"creationTimestamp";i:1182499990;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183136910;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/232.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/232.inc new file mode 100644 index 0000000..0286c12 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/232.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Teseo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500027;s:13:"pathComponent";s:5:"teseo";s:8:"parentId";i:14;s:2:"id";i:232;s:17:"creationTimestamp";i:1182500027;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474935;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Teseo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500027;s:13:"pathComponent";s:5:"teseo";s:8:"parentId";i:14;s:2:"id";i:232;s:17:"creationTimestamp";i:1182500027;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474935;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/233.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/233.inc new file mode 100644 index 0000000..a2625f8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/233.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:594;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:72600;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500041;s:13:"pathComponent";s:17:"ADM_VANG_10_1.jpg";s:8:"parentId";i:232;s:2:"id";i:233;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:594;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:72600;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500041;s:13:"pathComponent";s:17:"ADM_VANG_10_1.jpg";s:8:"parentId";i:232;s:2:"id";i:233;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/234-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/234-fast.inc new file mode 100644 index 0000000..ae6167b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/234-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/3/234.dat', 'ADM_VANG_10_1.jpg', 'Fri, 29 Jun 2007 09:03:00 GMT', 'image/jpeg', 25904);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/234.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/234.inc new file mode 100644 index 0000000..1ed2b8e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/234.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:413;s:18:"derivativeSourceId";i:233;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25904;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:233;s:2:"id";i:234;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107780;s:12:"serialNumber";i:11;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:413;s:18:"derivativeSourceId";i:233;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:25904;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:233;s:2:"id";i:234;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107780;s:12:"serialNumber";i:11;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/235.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/235.inc new file mode 100644 index 0000000..01d8232 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/235.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:406;s:18:"derivativeSourceId";i:233;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:24876;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:233;s:2:"id";i:235;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182867720;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:406;s:18:"derivativeSourceId";i:233;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:24876;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:233;s:2:"id";i:235;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182867720;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/236-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/236-fast.inc new file mode 100644 index 0000000..233da72 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/236-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/3/236.dat', 'ADM_VANG_10_1.jpg', 'Fri, 29 Jun 2007 17:34:03 GMT', 'image/jpeg', 35190);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/236.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/236.inc new file mode 100644 index 0000000..5bbc857 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/236.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:508;s:18:"derivativeSourceId";i:233;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:35190;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:233;s:2:"id";i:236;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138443;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:508;s:18:"derivativeSourceId";i:233;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:35190;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:233;s:2:"id";i:236;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138443;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/237-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/237-fast.inc new file mode 100644 index 0000000..2f4af47 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/237-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/3/237.dat', 'teseo.jpg', 'Fri, 29 Jun 2007 09:03:18 GMT', 'image/jpeg', 4397);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/237.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/237.inc new file mode 100644 index 0000000..372e09c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/237.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:127;s:18:"derivativeSourceId";i:234;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4397;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:232;s:2:"id";i:237;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107798;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:127;s:18:"derivativeSourceId";i:234;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4397;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:232;s:2:"id";i:237;s:17:"creationTimestamp";i:1182500041;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107798;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/238.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/238.inc new file mode 100644 index 0000000..ed4e405 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/238.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:88998;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.3";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500044;s:13:"pathComponent";s:17:"ADM_VANG_10_3.jpg";s:8:"parentId";i:232;s:2:"id";i:238;s:17:"creationTimestamp";i:1182500044;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:88998;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.3";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500044;s:13:"pathComponent";s:17:"ADM_VANG_10_3.jpg";s:8:"parentId";i:232;s:2:"id";i:238;s:17:"creationTimestamp";i:1182500044;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/239-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/239-fast.inc new file mode 100644 index 0000000..32e1614 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/239-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/3/239.dat', 'ADM_VANG_10_3.jpg', 'Fri, 29 Jun 2007 09:03:13 GMT', 'image/jpeg', 4931);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/239.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/239.inc new file mode 100644 index 0000000..385e71c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/3/239.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:150;s:6:"height";i:150;s:18:"derivativeSourceId";i:238;s:20:"derivativeOperations";s:13:"thumbnail|150";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4931;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:238;s:2:"id";i:239;s:17:"creationTimestamp";i:1182500044;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107793;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:150;s:6:"height";i:150;s:18:"derivativeSourceId";i:238;s:20:"derivativeOperations";s:13:"thumbnail|150";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4931;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:238;s:2:"id";i:239;s:17:"creationTimestamp";i:1182500044;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107793;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/240.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/240.inc new file mode 100644 index 0000000..732729c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/240.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:238;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:34837;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:238;s:2:"id";i:240;s:17:"creationTimestamp";i:1182500045;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182511678;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:238;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:34837;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:238;s:2:"id";i:240;s:17:"creationTimestamp";i:1182500045;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182511678;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/241-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/241-fast.inc new file mode 100644 index 0000000..55f6a26 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/241-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/4/241.dat', 'ADM_VANG_10_3.jpg', 'Fri, 29 Jun 2007 17:34:06 GMT', 'image/jpeg', 48497);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/241.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/241.inc new file mode 100644 index 0000000..36ea946 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/241.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:800;s:18:"derivativeSourceId";i:238;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:48497;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:238;s:2:"id";i:241;s:17:"creationTimestamp";i:1182500045;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138446;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:800;s:18:"derivativeSourceId";i:238;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:48497;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:238;s:2:"id";i:241;s:17:"creationTimestamp";i:1182500045;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138446;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/242.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/242.inc new file mode 100644 index 0000000..87b707a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/242.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:75643;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.5";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500048;s:13:"pathComponent";s:17:"ADM_VANG_10_5.jpg";s:8:"parentId";i:232;s:2:"id";i:242;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:75643;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.5";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500048;s:13:"pathComponent";s:17:"ADM_VANG_10_5.jpg";s:8:"parentId";i:232;s:2:"id";i:242;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/243-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/243-fast.inc new file mode 100644 index 0000000..ff7c043 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/243-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/4/243.dat', 'ADM_VANG_10_5.jpg', 'Fri, 29 Jun 2007 09:03:14 GMT', 'image/jpeg', 3974);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/243.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/243.inc new file mode 100644 index 0000000..0faef16 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/243.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:150;s:6:"height";i:150;s:18:"derivativeSourceId";i:242;s:20:"derivativeOperations";s:13:"thumbnail|150";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:3974;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:242;s:2:"id";i:243;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107794;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:150;s:6:"height";i:150;s:18:"derivativeSourceId";i:242;s:20:"derivativeOperations";s:13:"thumbnail|150";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:3974;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:242;s:2:"id";i:243;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107794;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/244-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/244-fast.inc new file mode 100644 index 0000000..e5593e4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/244-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/4/244.dat', 'ADM_VANG_10_5.jpg', 'Fri, 29 Jun 2007 17:34:21 GMT', 'image/jpeg', 28447);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/244.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/244.inc new file mode 100644 index 0000000..ce4b9d1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/244.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:242;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28447;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:242;s:2:"id";i:244;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138461;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:242;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:28447;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:242;s:2:"id";i:244;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138461;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/245.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/245.inc new file mode 100644 index 0000000..32ea0a3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/245.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:242;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:242;s:2:"id";i:245;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182500048;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:242;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:242;s:2:"id";i:245;s:17:"creationTimestamp";i:1182500048;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182500048;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/246.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/246.inc new file mode 100644 index 0000000..7033b30 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/246.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:94263;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.6";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500051;s:13:"pathComponent";s:17:"ADM_VANG_10_6.jpg";s:8:"parentId";i:232;s:2:"id";i:246;s:17:"creationTimestamp";i:1182500051;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:936;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:94263;s:18:"canContainChildren";i:0;s:11:"description";s:73:"Remates: Lacado Blanco / Remates: Aluminio Plata / Cristal: Lacado Blanco";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:11:"Serie Teseo";s:5:"title";s:13:"ADM_VANG_10.6";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500051;s:13:"pathComponent";s:17:"ADM_VANG_10_6.jpg";s:8:"parentId";i:232;s:2:"id";i:246;s:17:"creationTimestamp";i:1182500051;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935901;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/247-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/247-fast.inc new file mode 100644 index 0000000..15b9de5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/247-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/4/247.dat', 'ADM_VANG_10_6.jpg', 'Fri, 29 Jun 2007 09:03:15 GMT', 'image/jpeg', 4662);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/247.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/247.inc new file mode 100644 index 0000000..ea10015 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/247.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:150;s:6:"height";i:150;s:18:"derivativeSourceId";i:246;s:20:"derivativeOperations";s:13:"thumbnail|150";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4662;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:246;s:2:"id";i:247;s:17:"creationTimestamp";i:1182500052;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107795;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:150;s:6:"height";i:150;s:18:"derivativeSourceId";i:246;s:20:"derivativeOperations";s:13:"thumbnail|150";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4662;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:246;s:2:"id";i:247;s:17:"creationTimestamp";i:1182500052;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107795;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/248-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/248-fast.inc new file mode 100644 index 0000000..3d79cec --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/248-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/4/248.dat', 'ADM_VANG_10_6.jpg', 'Fri, 29 Jun 2007 17:35:21 GMT', 'image/jpeg', 36826);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/248.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/248.inc new file mode 100644 index 0000000..5fa4bfc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/248.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:246;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36826;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:246;s:2:"id";i:248;s:17:"creationTimestamp";i:1182500052;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183138521;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:640;s:18:"derivativeSourceId";i:246;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:36826;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:246;s:2:"id";i:248;s:17:"creationTimestamp";i:1182500052;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183138521;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/249.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/249.inc new file mode 100644 index 0000000..a1600bd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/4/249.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:246;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:246;s:2:"id";i:249;s:17:"creationTimestamp";i:1182500052;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182500052;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:246;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:246;s:2:"id";i:249;s:17:"creationTimestamp";i:1182500052;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182500052;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/250.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/250.inc new file mode 100644 index 0000000..4c9de2e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/250.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:10:"Serie Argo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500090;s:13:"pathComponent";s:4:"argo";s:8:"parentId";i:14;s:2:"id";i:250;s:17:"creationTimestamp";i:1182500090;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474965;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:10:"Serie Argo";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182500090;s:13:"pathComponent";s:4:"argo";s:8:"parentId";i:14;s:2:"id";i:250;s:17:"creationTimestamp";i:1182500090;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474965;s:12:"serialNumber";i:5;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/251.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/251.inc new file mode 100644 index 0000000..91763e1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/251.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:598;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:81475;s:18:"canContainChildren";i:0;s:11:"description";s:67:"Remates: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Argo";s:5:"title";s:11:"ADM_VANG_08";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182501445;s:13:"pathComponent";s:15:"ADM_VANG_08.jpg";s:8:"parentId";i:250;s:2:"id";i:251;s:17:"creationTimestamp";i:1182501445;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182935965;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:598;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:81475;s:18:"canContainChildren";i:0;s:11:"description";s:67:"Remates: Roble Ceniza Barnizado / Paneles: Roble H Ceniza Barnizado";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Argo";s:5:"title";s:11:"ADM_VANG_08";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182501445;s:13:"pathComponent";s:15:"ADM_VANG_08.jpg";s:8:"parentId";i:250;s:2:"id";i:251;s:17:"creationTimestamp";i:1182501445;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182935965;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/252-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/252-fast.inc new file mode 100644 index 0000000..360f408 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/252-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/5/252.dat', 'ADM_VANG_08.jpg', 'Fri, 29 Jun 2007 09:03:02 GMT', 'image/jpeg', 27103);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/252.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/252.inc new file mode 100644 index 0000000..1d0863c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/252.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:650;s:6:"height";i:415;s:18:"derivativeSourceId";i:251;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:27103;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:251;s:2:"id";i:252;s:17:"creationTimestamp";i:1182501447;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107782;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:650;s:6:"height";i:415;s:18:"derivativeSourceId";i:251;s:20:"derivativeOperations";s:13:"thumbnail|650";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:27103;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:251;s:2:"id";i:252;s:17:"creationTimestamp";i:1182501447;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107782;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/253.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/253.inc new file mode 100644 index 0000000..f60bd94 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/253.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:409;s:18:"derivativeSourceId";i:251;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:26677;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:251;s:2:"id";i:253;s:17:"creationTimestamp";i:1182501447;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795853;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:409;s:18:"derivativeSourceId";i:251;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:26677;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:251;s:2:"id";i:253;s:17:"creationTimestamp";i:1182501447;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795853;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/254.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/254.inc new file mode 100644 index 0000000..ed6f85d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/254.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:800;s:6:"height";i:511;s:18:"derivativeSourceId";i:251;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:38452;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:251;s:2:"id";i:254;s:17:"creationTimestamp";i:1182501447;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795854;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:800;s:6:"height";i:511;s:18:"derivativeSourceId";i:251;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:38452;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:251;s:2:"id";i:254;s:17:"creationTimestamp";i:1182501447;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795854;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/255-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/255-fast.inc new file mode 100644 index 0000000..4bdcda7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/255-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/5/255.dat', 'argo.jpg', 'Fri, 29 Jun 2007 09:03:03 GMT', 'image/jpeg', 4447);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/255.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/255.inc new file mode 100644 index 0000000..fb28e64 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/5/255.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:128;s:18:"derivativeSourceId";i:252;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4447;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:250;s:2:"id";i:255;s:17:"creationTimestamp";i:1182501448;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183107783;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:128;s:18:"derivativeSourceId";i:252;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4447;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:250;s:2:"id";i:255;s:17:"creationTimestamp";i:1182501448;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183107783;s:12:"serialNumber";i:5;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/263.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/263.inc new file mode 100644 index 0000000..6d5b38e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/263.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:950;s:6:"height";i:689;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:68512;s:18:"canContainChildren";i:0;s:11:"description";s:51:"Remates: Lacado Gris / Paneles Estriado Lacado Gris";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Argo";s:5:"title";s:14:"ADM_MOD_15.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499130;s:13:"pathComponent";s:18:"ADM_MOD_15_mod.jpg";s:8:"parentId";i:7;s:2:"id";i:263;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:1;s:6:"linkId";i:157;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:950;s:6:"height";i:689;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:68512;s:18:"canContainChildren";i:0;s:11:"description";s:51:"Remates: Lacado Gris / Paneles Estriado Lacado Gris";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Argo";s:5:"title";s:14:"ADM_MOD_15.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499130;s:13:"pathComponent";s:18:"ADM_MOD_15_mod.jpg";s:8:"parentId";i:7;s:2:"id";i:263;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:1;s:6:"linkId";i:157;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/264-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/264-fast.inc new file mode 100644 index 0000000..59fdf07 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/264-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/6/264.dat', 'ADM_MOD_15_mod.jpg', 'Thu, 28 Jun 2007 17:56:43 GMT', 'image/jpeg', 46739);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/264.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/264.inc new file mode 100644 index 0000000..979a2cc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/264.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:936;s:6:"height";i:679;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:46739;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:263;s:2:"id";i:264;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183053403;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:936;s:6:"height";i:679;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:46739;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:263;s:2:"id";i:264;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183053403;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/265.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/265.inc new file mode 100644 index 0000000..4b1f56c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/265.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:670;s:6:"height";i:486;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:27770;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:263;s:2:"id";i:265;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474049;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:670;s:6:"height";i:486;s:18:"derivativeSourceId";i:157;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:27770;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:263;s:2:"id";i:265;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474049;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/266-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/266-fast.inc new file mode 100644 index 0000000..0b7cd63 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/266-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/6/266.dat', '.jpg', 'Tue, 03 Jul 2007 14:47:12 GMT', 'image/jpeg', 79075);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/266.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/266.inc new file mode 100644 index 0000000..805c604 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/266.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:936;s:6:"height";i:535;s:18:"derivativeSourceId";i:196;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:79075;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:7;s:2:"id";i:266;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936358;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:936;s:6:"height";i:535;s:18:"derivativeSourceId";i:196;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:79075;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:7;s:2:"id";i:266;s:17:"creationTimestamp";i:1182795025;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936358;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/267.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/267.inc new file mode 100644 index 0000000..b125178 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/267.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:635;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:77150;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:13:"ADM_CLAS_28.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499510;s:13:"pathComponent";s:17:"ADM_CLAS_28_1.jpg";s:8:"parentId";i:7;s:2:"id";i:267;s:17:"creationTimestamp";i:1182795091;s:10:"isLinkable";i:1;s:6:"linkId";i:169;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:635;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:77150;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:93:"Remates y Perfil: Cerezo Barnizado / Paneles: Cerezo Barnizado y Espejo Plata con Travesaños";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:13:"Serie Antares";s:5:"title";s:13:"ADM_CLAS_28.1";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499510;s:13:"pathComponent";s:17:"ADM_CLAS_28_1.jpg";s:8:"parentId";i:7;s:2:"id";i:267;s:17:"creationTimestamp";i:1182795091;s:10:"isLinkable";i:1;s:6:"linkId";i:169;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/268-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/268-fast.inc new file mode 100644 index 0000000..f4a6210 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/268-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/6/268.dat', 'ADM_CLAS_28_1.jpg', 'Thu, 28 Jun 2007 17:56:41 GMT', 'image/jpeg', 77150);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/268.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/268.inc new file mode 100644 index 0000000..e035e04 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/268.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:936;s:6:"height";i:635;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:77150;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:267;s:2:"id";i:268;s:17:"creationTimestamp";i:1182795091;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795125;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:936;s:6:"height";i:635;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:77150;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:267;s:2:"id";i:268;s:17:"creationTimestamp";i:1182795091;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795125;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/269.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/269.inc new file mode 100644 index 0000000..d1d18e6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/6/269.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:716;s:6:"height";i:486;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:33755;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:267;s:2:"id";i:269;s:17:"creationTimestamp";i:1182795092;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183474047;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:716;s:6:"height";i:486;s:18:"derivativeSourceId";i:169;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:33755;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:267;s:2:"id";i:269;s:17:"creationTimestamp";i:1182795092;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183474047;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/270.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/270.inc new file mode 100644 index 0000000..b67e90a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/270.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:535;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:79075;s:18:"canContainChildren";i:0;s:11:"description";s:116:"Remates y Perfil: Cerezo Natural Barnizado / Paneles: Cerezo Natural Barnizado y Cristal Transparente con Cortinilla";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:12:"Serie Cronos";s:5:"title";s:15:"ADM_CLAS_26.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499773;s:13:"pathComponent";s:19:"ADM_CLAS_26_mod.jpg";s:8:"parentId";i:7;s:2:"id";i:270;s:17:"creationTimestamp";i:1182795110;s:10:"isLinkable";i:1;s:6:"linkId";i:195;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:535;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:79075;s:18:"canContainChildren";i:0;s:11:"description";s:116:"Remates y Perfil: Cerezo Natural Barnizado / Paneles: Cerezo Natural Barnizado y Cristal Transparente con Cortinilla";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:12:"Serie Cronos";s:5:"title";s:15:"ADM_CLAS_26.mod";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499773;s:13:"pathComponent";s:19:"ADM_CLAS_26_mod.jpg";s:8:"parentId";i:7;s:2:"id";i:270;s:17:"creationTimestamp";i:1182795110;s:10:"isLinkable";i:1;s:6:"linkId";i:195;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/271-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/271-fast.inc new file mode 100644 index 0000000..4680a11 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/271-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/7/271.dat', 'ADM_CLAS_26_mod.jpg', 'Thu, 28 Jun 2007 17:56:53 GMT', 'image/jpeg', 79075);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/271.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/271.inc new file mode 100644 index 0000000..de2393c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/271.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:936;s:6:"height";i:535;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:79075;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:270;s:2:"id";i:271;s:17:"creationTimestamp";i:1182795110;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795125;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:936;s:6:"height";i:535;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:79075;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:270;s:2:"id";i:271;s:17:"creationTimestamp";i:1182795110;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795125;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/272.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/272.inc new file mode 100644 index 0000000..11bf85e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/272.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:850;s:6:"height";i:486;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:45866;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:270;s:2:"id";i:272;s:17:"creationTimestamp";i:1182795110;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936361;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:850;s:6:"height";i:486;s:18:"derivativeSourceId";i:195;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:45866;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:270;s:2:"id";i:272;s:17:"creationTimestamp";i:1182795110;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936361;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/273.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/273.inc new file mode 100644 index 0000000..7171e7a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/273.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:936;s:6:"height";i:588;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:70471;s:18:"canContainChildren";i:0;s:11:"description";s:104:"Remates y Perfil: Lacado Blanco / Paneles: Lacado Blanco y Cristal Transparente con Cortinilla y Cruceta";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Lira";s:5:"title";s:11:"ADM_CLAS_23";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499800;s:13:"pathComponent";s:15:"ADM_CLAS_23.jpg";s:8:"parentId";i:7;s:2:"id";i:273;s:17:"creationTimestamp";i:1182795113;s:10:"isLinkable";i:1;s:6:"linkId";i:200;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:936;s:6:"height";i:588;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:70471;s:18:"canContainChildren";i:0;s:11:"description";s:104:"Remates y Perfil: Lacado Blanco / Paneles: Lacado Blanco y Cristal Transparente con Cortinilla y Cruceta";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:10:"Serie Lira";s:5:"title";s:11:"ADM_CLAS_23";s:20:"viewedSinceTimestamp";i:1182952112;s:20:"originationTimestamp";i:1182499800;s:13:"pathComponent";s:15:"ADM_CLAS_23.jpg";s:8:"parentId";i:7;s:2:"id";i:273;s:17:"creationTimestamp";i:1182795113;s:10:"isLinkable";i:1;s:6:"linkId";i:200;s:21:"modificationTimestamp";i:1182936468;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/274-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/274-fast.inc new file mode 100644 index 0000000..b75002c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/274-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/7/274.dat', 'ADM_CLAS_23.jpg', 'Thu, 28 Jun 2007 17:56:53 GMT', 'image/jpeg', 70471);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/274.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/274.inc new file mode 100644 index 0000000..d35b460 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/274.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:936;s:6:"height";i:588;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:70471;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:273;s:2:"id";i:274;s:17:"creationTimestamp";i:1182795113;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182795125;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:936;s:6:"height";i:588;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"thumbnail|936";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:70471;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:273;s:2:"id";i:274;s:17:"creationTimestamp";i:1182795113;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182795125;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/275.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/275.inc new file mode 100644 index 0000000..0235b3c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/275.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:774;s:6:"height";i:486;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:34311;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:273;s:2:"id";i:275;s:17:"creationTimestamp";i:1182795113;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1182936360;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:774;s:6:"height";i:486;s:18:"derivativeSourceId";i:200;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:34311;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:273;s:2:"id";i:275;s:17:"creationTimestamp";i:1182795113;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1182936360;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/276-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/276-fast.inc new file mode 100644 index 0000000..46a2a19 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/276-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/2/7/276.dat', 'ADM_CLAS_28_2.jpg', 'Mon, 02 Jul 2007 16:53:54 GMT', 'image/jpeg', 76816);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/276.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/276.inc new file mode 100644 index 0000000..9a0c50d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/7/276.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:716;s:6:"height";i:1024;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:15:"scale|1024,1024";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:76816;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:276;s:17:"creationTimestamp";i:1182870269;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183395234;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:716;s:6:"height";i:1024;s:18:"derivativeSourceId";i:175;s:20:"derivativeOperations";s:15:"scale|1024,1024";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:76816;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:175;s:2:"id";i:276;s:17:"creationTimestamp";i:1182870269;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183395234;s:12:"serialNumber";i:3;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/9/298.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/9/298.inc new file mode 100644 index 0000000..22c86ab --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/9/298.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:11:"orderWeight";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:10:"Vestidores";s:20:"viewedSinceTimestamp";i:1183978565;s:20:"originationTimestamp";i:1183978565;s:13:"pathComponent";s:10:"vestidores";s:8:"parentId";i:144;s:2:"id";i:298;s:17:"creationTimestamp";i:1183978565;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981666;s:12:"serialNumber";i:8;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:11:"orderWeight";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";N;s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";N;s:5:"title";s:10:"Vestidores";s:20:"viewedSinceTimestamp";i:1183978565;s:20:"originationTimestamp";i:1183978565;s:13:"pathComponent";s:10:"vestidores";s:8:"parentId";i:144;s:2:"id";i:298;s:17:"creationTimestamp";i:1183978565;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981666;s:12:"serialNumber";i:8;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/2/9/299.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/9/299.inc new file mode 100644 index 0000000..a7bb583 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/2/9/299.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:1024;s:6:"height";i:768;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:219778;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"2";s:20:"viewedSinceTimestamp";i:1183979179;s:20:"originationTimestamp";i:1183979179;s:13:"pathComponent";s:5:"2.jpg";s:8:"parentId";i:298;s:2:"id";i:299;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979179;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:1024;s:6:"height";i:768;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:219778;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"2";s:20:"viewedSinceTimestamp";i:1183979179;s:20:"originationTimestamp";i:1183979179;s:13:"pathComponent";s:5:"2.jpg";s:8:"parentId";i:298;s:2:"id";i:299;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979179;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/300-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/300-fast.inc new file mode 100644 index 0000000..767a580 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/300-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/0/300.dat', '2.jpg', 'Mon, 09 Jul 2007 11:48:17 GMT', 'image/jpeg', 71045);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/300.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/300.inc new file mode 100644 index 0000000..cb8a9cd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/300.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:700;s:6:"height";i:525;s:18:"derivativeSourceId";i:299;s:20:"derivativeOperations";s:13:"thumbnail|700";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:71045;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:299;s:2:"id";i:300;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981697;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:700;s:6:"height";i:525;s:18:"derivativeSourceId";i:299;s:20:"derivativeOperations";s:13:"thumbnail|700";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:71045;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:299;s:2:"id";i:300;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981697;s:12:"serialNumber";i:8;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/301-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/301-fast.inc new file mode 100644 index 0000000..d944cb8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/301-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/0/301.dat', '2.jpg', 'Mon, 09 Jul 2007 11:06:37 GMT', 'image/jpeg', 62274);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/301.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/301.inc new file mode 100644 index 0000000..f17f441 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/301.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:648;s:6:"height";i:486;s:18:"derivativeSourceId";i:299;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:62274;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:299;s:2:"id";i:301;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979197;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:648;s:6:"height";i:486;s:18:"derivativeSourceId";i:299;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:62274;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:299;s:2:"id";i:301;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979197;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/302.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/302.inc new file mode 100644 index 0000000..2c5a705 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/302.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:600;s:6:"height";i:450;s:18:"derivativeSourceId";i:300;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:55590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:298;s:2:"id";i:302;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979992;s:12:"serialNumber";i:6;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:600;s:6:"height";i:450;s:18:"derivativeSourceId";i:300;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:55590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:298;s:2:"id";i:302;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979992;s:12:"serialNumber";i:6;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/303.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/303.inc new file mode 100644 index 0000000..b305602 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/303.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:600;s:6:"height";i:450;s:18:"derivativeSourceId";i:302;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:55590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:144;s:2:"id";i:303;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979970;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:600;s:6:"height";i:450;s:18:"derivativeSourceId";i:302;s:20:"derivativeOperations";s:13:"thumbnail|600";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:55590;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:144;s:2:"id";i:303;s:17:"creationTimestamp";i:1183979179;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979970;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/304.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/304.inc new file mode 100644 index 0000000..1257cf9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/304.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:146343;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"3";s:20:"viewedSinceTimestamp";i:1183979560;s:20:"originationTimestamp";i:1183979560;s:13:"pathComponent";s:5:"3.jpg";s:8:"parentId";i:298;s:2:"id";i:304;s:17:"creationTimestamp";i:1183979560;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979560;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:146343;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"3";s:20:"viewedSinceTimestamp";i:1183979560;s:20:"originationTimestamp";i:1183979560;s:13:"pathComponent";s:5:"3.jpg";s:8:"parentId";i:298;s:2:"id";i:304;s:17:"creationTimestamp";i:1183979560;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979560;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/305-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/305-fast.inc new file mode 100644 index 0000000..5c5b5fc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/305-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/0/305.dat', '3.jpg', 'Mon, 09 Jul 2007 11:46:47 GMT', 'image/jpeg', 12614);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/305.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/305.inc new file mode 100644 index 0000000..4a8a0c6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/305.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:304;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:12614;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:304;s:2:"id";i:305;s:17:"creationTimestamp";i:1183979560;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981607;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:304;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:12614;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:304;s:2:"id";i:305;s:17:"creationTimestamp";i:1183979560;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981607;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/306-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/306-fast.inc new file mode 100644 index 0000000..63808c8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/306-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/0/306.dat', '3.jpg', 'Mon, 09 Jul 2007 11:15:36 GMT', 'image/jpeg', 55150);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/306.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/306.inc new file mode 100644 index 0000000..2763a99 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/306.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:304;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:55150;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:304;s:2:"id";i:306;s:17:"creationTimestamp";i:1183979560;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979736;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:304;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:55150;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:304;s:2:"id";i:306;s:17:"creationTimestamp";i:1183979560;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979736;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/307.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/307.inc new file mode 100644 index 0000000..ed25810 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/307.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:101556;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"4";s:20:"viewedSinceTimestamp";i:1183979565;s:20:"originationTimestamp";i:1183979565;s:13:"pathComponent";s:5:"4.jpg";s:8:"parentId";i:298;s:2:"id";i:307;s:17:"creationTimestamp";i:1183979565;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979565;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:101556;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"4";s:20:"viewedSinceTimestamp";i:1183979565;s:20:"originationTimestamp";i:1183979565;s:13:"pathComponent";s:5:"4.jpg";s:8:"parentId";i:298;s:2:"id";i:307;s:17:"creationTimestamp";i:1183979565;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979565;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/308-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/308-fast.inc new file mode 100644 index 0000000..816cbce --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/308-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/0/308.dat', '4.jpg', 'Mon, 09 Jul 2007 11:46:47 GMT', 'image/jpeg', 9615);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/308.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/308.inc new file mode 100644 index 0000000..51afe52 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/308.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:307;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:9615;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:307;s:2:"id";i:308;s:17:"creationTimestamp";i:1183979565;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981607;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:307;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:9615;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:307;s:2:"id";i:308;s:17:"creationTimestamp";i:1183979565;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981607;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/309-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/309-fast.inc new file mode 100644 index 0000000..3e270ec --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/309-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/0/309.dat', '4.jpg', 'Mon, 09 Jul 2007 11:16:38 GMT', 'image/jpeg', 37220);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/309.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/309.inc new file mode 100644 index 0000000..cc32baf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/0/309.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:307;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:37220;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:307;s:2:"id";i:309;s:17:"creationTimestamp";i:1183979565;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979798;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:307;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:37220;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:307;s:2:"id";i:309;s:17:"creationTimestamp";i:1183979565;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979798;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/310.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/310.inc new file mode 100644 index 0000000..f874a09 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/310.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:119113;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"5";s:20:"viewedSinceTimestamp";i:1183979572;s:20:"originationTimestamp";i:1183979572;s:13:"pathComponent";s:5:"5.jpg";s:8:"parentId";i:298;s:2:"id";i:310;s:17:"creationTimestamp";i:1183979572;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979572;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:119113;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"5";s:20:"viewedSinceTimestamp";i:1183979572;s:20:"originationTimestamp";i:1183979572;s:13:"pathComponent";s:5:"5.jpg";s:8:"parentId";i:298;s:2:"id";i:310;s:17:"creationTimestamp";i:1183979572;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979572;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/311-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/311-fast.inc new file mode 100644 index 0000000..ade9275 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/311-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/1/311.dat', '5.jpg', 'Mon, 09 Jul 2007 11:46:47 GMT', 'image/jpeg', 10423);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/311.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/311.inc new file mode 100644 index 0000000..688550d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/311.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:310;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:10423;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:310;s:2:"id";i:311;s:17:"creationTimestamp";i:1183979572;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981607;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:310;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:10423;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:310;s:2:"id";i:311;s:17:"creationTimestamp";i:1183979572;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981607;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/312-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/312-fast.inc new file mode 100644 index 0000000..1fd24d2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/312-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/1/312.dat', '5.jpg', 'Mon, 09 Jul 2007 11:16:37 GMT', 'image/jpeg', 42965);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/312.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/312.inc new file mode 100644 index 0000000..7196a52 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/312.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:310;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42965;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:310;s:2:"id";i:312;s:17:"creationTimestamp";i:1183979572;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979797;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:310;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:42965;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:310;s:2:"id";i:312;s:17:"creationTimestamp";i:1183979572;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979797;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/313.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/313.inc new file mode 100644 index 0000000..92a4b33 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/313.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:106904;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"6";s:20:"viewedSinceTimestamp";i:1183979576;s:20:"originationTimestamp";i:1183979576;s:13:"pathComponent";s:5:"6.jpg";s:8:"parentId";i:298;s:2:"id";i:313;s:17:"creationTimestamp";i:1183979576;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979576;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:600;s:6:"height";i:600;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:106904;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";N;s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:1:"6";s:20:"viewedSinceTimestamp";i:1183979576;s:20:"originationTimestamp";i:1183979576;s:13:"pathComponent";s:5:"6.jpg";s:8:"parentId";i:298;s:2:"id";i:313;s:17:"creationTimestamp";i:1183979576;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979576;s:12:"serialNumber";i:1;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/314-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/314-fast.inc new file mode 100644 index 0000000..459830c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/314-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/1/314.dat', '6.jpg', 'Mon, 09 Jul 2007 11:46:48 GMT', 'image/jpeg', 7763);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/314.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/314.inc new file mode 100644 index 0000000..9d3e81d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/314.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:313;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:7763;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:313;s:2:"id";i:314;s:17:"creationTimestamp";i:1183979576;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183981608;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:200;s:18:"derivativeSourceId";i:313;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:7763;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:313;s:2:"id";i:314;s:17:"creationTimestamp";i:1183979576;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183981608;s:12:"serialNumber";i:4;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/315-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/315-fast.inc new file mode 100644 index 0000000..f53ccc2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/315-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/1/315.dat', '6.jpg', 'Mon, 09 Jul 2007 11:15:37 GMT', 'image/jpeg', 35233);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/315.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/315.inc new file mode 100644 index 0000000..0fe12f3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/315.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:313;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:35233;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:313;s:2:"id";i:315;s:17:"creationTimestamp";i:1183979576;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183979737;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:486;s:6:"height";i:486;s:18:"derivativeSourceId";i:313;s:20:"derivativeOperations";s:13:"scale|936,486";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:35233;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:313;s:2:"id";i:315;s:17:"creationTimestamp";i:1183979576;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183979737;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/316.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/316.inc new file mode 100644 index 0000000..e4054b4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/316.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryAlbumItem.class|O:16:"GalleryAlbumItem":24:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Style";s:20:"viewedSinceTimestamp";i:1183987357;s:20:"originationTimestamp";i:1183987357;s:13:"pathComponent";s:5:"style";s:8:"parentId";i:13;s:2:"id";i:316;s:17:"creationTimestamp";i:1183987357;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987775;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:22:{s:5:"theme";s:5:"abeto";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:3:"asc";s:18:"canContainChildren";i:1;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:0:"";s:5:"title";s:11:"Serie Style";s:20:"viewedSinceTimestamp";i:1183987357;s:20:"originationTimestamp";i:1183987357;s:13:"pathComponent";s:5:"style";s:8:"parentId";i:13;s:2:"id";i:316;s:17:"creationTimestamp";i:1183987357;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987775;s:12:"serialNumber";i:7;s:10:"entityType";s:16:"GalleryAlbumItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/317.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/317.inc new file mode 100644 index 0000000..65f9790 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/317.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:800;s:6:"height";i:838;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:53202;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:32:"Serie Style / Puertas correderas";s:20:"viewedSinceTimestamp";i:1183987473;s:20:"originationTimestamp";i:1183987473;s:13:"pathComponent";s:5:"1.jpg";s:8:"parentId";i:316;s:2:"id";i:317;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:800;s:6:"height";i:838;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:53202;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:32:"Serie Style / Puertas correderas";s:20:"viewedSinceTimestamp";i:1183987473;s:20:"originationTimestamp";i:1183987473;s:13:"pathComponent";s:5:"1.jpg";s:8:"parentId";i:316;s:2:"id";i:317;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/318-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/318-fast.inc new file mode 100644 index 0000000..7c55b53 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/318-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/1/318.dat', '1.jpg', 'Mon, 09 Jul 2007 13:24:33 GMT', 'image/jpeg', 4120);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/318.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/318.inc new file mode 100644 index 0000000..8c045bd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/318.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:191;s:6:"height";i:200;s:18:"derivativeSourceId";i:317;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4120;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:317;s:2:"id";i:318;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987473;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:191;s:6:"height";i:200;s:18:"derivativeSourceId";i:317;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4120;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:317;s:2:"id";i:318;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987473;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/319-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/319-fast.inc new file mode 100644 index 0000000..042aecb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/319-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/1/319.dat', '1.jpg', 'Mon, 09 Jul 2007 13:26:23 GMT', 'image/jpeg', 23231);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/319.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/319.inc new file mode 100644 index 0000000..46f7eb9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/1/319.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:611;s:6:"height";i:640;s:18:"derivativeSourceId";i:317;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:23231;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:317;s:2:"id";i:319;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987583;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:611;s:6:"height";i:640;s:18:"derivativeSourceId";i:317;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:23231;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:317;s:2:"id";i:319;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987583;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/320.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/320.inc new file mode 100644 index 0000000..1965fee --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/320.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:317;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:317;s:2:"id";i:320;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987473;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:317;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:317;s:2:"id";i:320;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987473;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/321-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/321-fast.inc new file mode 100644 index 0000000..31d9514 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/321-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/2/321.dat', 'style.jpg', 'Mon, 09 Jul 2007 13:27:16 GMT', 'image/jpeg', 4120);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/321.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/321.inc new file mode 100644 index 0000000..4f1ec89 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/321.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:191;s:6:"height";i:200;s:18:"derivativeSourceId";i:318;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4120;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:316;s:2:"id";i:321;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987636;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:191;s:6:"height";i:200;s:18:"derivativeSourceId";i:318;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4120;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:316;s:2:"id";i:321;s:17:"creationTimestamp";i:1183987473;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987636;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/322.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/322.inc new file mode 100644 index 0000000..d576a3d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/322.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:1024;s:6:"height";i:704;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:74398;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:34:"Serie Style / Puertas practicables";s:20:"viewedSinceTimestamp";i:1183987496;s:20:"originationTimestamp";i:1183987496;s:13:"pathComponent";s:5:"2.jpg";s:8:"parentId";i:316;s:2:"id";i:322;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:1024;s:6:"height";i:704;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:74398;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:34:"Serie Style / Puertas practicables";s:20:"viewedSinceTimestamp";i:1183987496;s:20:"originationTimestamp";i:1183987496;s:13:"pathComponent";s:5:"2.jpg";s:8:"parentId";i:316;s:2:"id";i:322;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/323-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/323-fast.inc new file mode 100644 index 0000000..cafe497 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/323-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/2/323.dat', '2.jpg', 'Mon, 09 Jul 2007 13:24:57 GMT', 'image/jpeg', 4428);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/323.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/323.inc new file mode 100644 index 0000000..656e575 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/323.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:138;s:18:"derivativeSourceId";i:322;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4428;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:322;s:2:"id";i:323;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987497;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:138;s:18:"derivativeSourceId";i:322;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4428;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:322;s:2:"id";i:323;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987497;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/324-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/324-fast.inc new file mode 100644 index 0000000..f9b47ff --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/324-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/2/324.dat', '2.jpg', 'Mon, 09 Jul 2007 13:26:23 GMT', 'image/jpeg', 23896);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/324.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/324.inc new file mode 100644 index 0000000..af4af55 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/324.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:440;s:18:"derivativeSourceId";i:322;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:23896;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:322;s:2:"id";i:324;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987583;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:440;s:18:"derivativeSourceId";i:322;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:23896;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:322;s:2:"id";i:324;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987583;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/325.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/325.inc new file mode 100644 index 0000000..6e17e4a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/325.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:322;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:322;s:2:"id";i:325;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987496;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:322;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:322;s:2:"id";i:325;s:17:"creationTimestamp";i:1183987496;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987496;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/326.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/326.inc new file mode 100644 index 0000000..8d5cbcc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/326.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:1024;s:6:"height";i:636;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:57074;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:32:"Serie Style / Puertas correderas";s:20:"viewedSinceTimestamp";i:1183987523;s:20:"originationTimestamp";i:1183987523;s:13:"pathComponent";s:5:"3.jpg";s:8:"parentId";i:316;s:2:"id";i:326;s:17:"creationTimestamp";i:1183987523;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:1024;s:6:"height";i:636;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:57074;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:32:"Serie Style / Puertas correderas";s:20:"viewedSinceTimestamp";i:1183987523;s:20:"originationTimestamp";i:1183987523;s:13:"pathComponent";s:5:"3.jpg";s:8:"parentId";i:316;s:2:"id";i:326;s:17:"creationTimestamp";i:1183987523;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/327-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/327-fast.inc new file mode 100644 index 0000000..9ad2364 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/327-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/2/327.dat', '3.jpg', 'Mon, 09 Jul 2007 13:25:24 GMT', 'image/jpeg', 4198);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/327.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/327.inc new file mode 100644 index 0000000..04660a5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/327.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:124;s:18:"derivativeSourceId";i:326;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4198;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:326;s:2:"id";i:327;s:17:"creationTimestamp";i:1183987524;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987524;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:124;s:18:"derivativeSourceId";i:326;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4198;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:326;s:2:"id";i:327;s:17:"creationTimestamp";i:1183987524;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987524;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/328-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/328-fast.inc new file mode 100644 index 0000000..42aebbc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/328-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/2/328.dat', '3.jpg', 'Mon, 09 Jul 2007 13:26:29 GMT', 'image/jpeg', 19685);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/328.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/328.inc new file mode 100644 index 0000000..e6ccfd4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/328.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:398;s:18:"derivativeSourceId";i:326;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:19685;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:326;s:2:"id";i:328;s:17:"creationTimestamp";i:1183987524;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987589;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:398;s:18:"derivativeSourceId";i:326;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:19685;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:326;s:2:"id";i:328;s:17:"creationTimestamp";i:1183987524;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987589;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/329.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/329.inc new file mode 100644 index 0000000..27ca98f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/2/329.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:326;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:326;s:2:"id";i:329;s:17:"creationTimestamp";i:1183987524;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987524;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:326;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:326;s:2:"id";i:329;s:17:"creationTimestamp";i:1183987524;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987524;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/330.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/330.inc new file mode 100644 index 0000000..acf2cbe --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/330.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryPhotoItem.class|O:16:"GalleryPhotoItem":25:{s:5:"width";i:1024;s:6:"height";i:611;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:91621;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:32:"Serie Style / Puertas correderas";s:20:"viewedSinceTimestamp";i:1183987550;s:20:"originationTimestamp";i:1183987550;s:13:"pathComponent";s:5:"4.jpg";s:8:"parentId";i:316;s:2:"id";i:330;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:1;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:23:{s:5:"width";i:1024;s:6:"height";i:611;s:8:"mimeType";s:10:"image/jpeg";s:4:"size";i:91621;s:18:"canContainChildren";i:0;s:11:"description";s:0:"";s:8:"keywords";s:0:"";s:7:"ownerId";i:6;s:8:"renderer";N;s:7:"summary";s:14:"Remates: Plata";s:5:"title";s:32:"Serie Style / Puertas correderas";s:20:"viewedSinceTimestamp";i:1183987550;s:20:"originationTimestamp";i:1183987550;s:13:"pathComponent";s:5:"4.jpg";s:8:"parentId";i:316;s:2:"id";i:330;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:1;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987737;s:12:"serialNumber";i:2;s:10:"entityType";s:16:"GalleryPhotoItem";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/331-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/331-fast.inc new file mode 100644 index 0000000..da3b61b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/331-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/3/331.dat', '4.jpg', 'Mon, 09 Jul 2007 13:25:50 GMT', 'image/jpeg', 4533);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/331.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/331.inc new file mode 100644 index 0000000..129058d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/331.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:200;s:6:"height";i:119;s:18:"derivativeSourceId";i:330;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4533;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:330;s:2:"id";i:331;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987550;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:200;s:6:"height";i:119;s:18:"derivativeSourceId";i:330;s:20:"derivativeOperations";s:13:"thumbnail|200";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:4533;s:14:"derivativeType";i:1;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:330;s:2:"id";i:331;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987550;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/332-fast.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/332-fast.inc new file mode 100644 index 0000000..6e6f268 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/332-fast.inc @@ -0,0 +1 @@ +fastDownload('cache/derivative/3/3/332.dat', '4.jpg', 'Mon, 09 Jul 2007 13:26:28 GMT', 'image/jpeg', 24940);} ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/332.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/332.inc new file mode 100644 index 0000000..57455fd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/332.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:640;s:6:"height";i:382;s:18:"derivativeSourceId";i:330;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:24940;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:330;s:2:"id";i:332;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987588;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:640;s:6:"height";i:382;s:18:"derivativeSourceId";i:330;s:20:"derivativeOperations";s:13:"scale|640,640";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";i:24940;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:330;s:2:"id";i:332;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987588;s:12:"serialNumber";i:2;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/333.inc b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/333.inc new file mode 100644 index 0000000..175daca --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/entity/3/3/333.inc @@ -0,0 +1 @@ +modules/core/classes/GalleryDerivativeImage.class|O:22:"GalleryDerivativeImage":21:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:330;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:330;s:2:"id";i:333;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:0;s:6:"linkId";N;s:12:"linkedEntity";N;s:21:"modificationTimestamp";i:1183987550;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;s:17:"_persistentStatus";a:2:{s:5:"flags";i:0;s:13:"originalValue";a:19:{s:5:"width";i:0;s:6:"height";i:0;s:18:"derivativeSourceId";i:330;s:20:"derivativeOperations";s:13:"scale|800,800";s:15:"derivativeOrder";i:0;s:14:"derivativeSize";N;s:14:"derivativeType";i:2;s:8:"mimeType";s:10:"image/jpeg";s:20:"postFilterOperations";N;s:8:"isBroken";i:0;s:8:"parentId";i:330;s:2:"id";i:333;s:17:"creationTimestamp";i:1183987550;s:10:"isLinkable";i:0;s:6:"linkId";N;s:21:"modificationTimestamp";i:1183987550;s:12:"serialNumber";i:1;s:10:"entityType";s:22:"GalleryDerivativeImage";s:14:"onLoadHandlers";N;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryFactoryHelper_loadRegistry.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryFactoryHelper_loadRegistry.inc new file mode 100644 index 0000000..9ee9bf0 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryFactoryHelper_loadRegistry.inc @@ -0,0 +1 @@ +|a:4:{s:15:"implementations";a:22:{s:14:"ItemEditPlugin";a:8:{s:12:"ItemEditItem";s:29:"modules/core/ItemEditItem.inc";s:17:"ItemEditAnimation";s:34:"modules/core/ItemEditAnimation.inc";s:13:"ItemEditMovie";s:30:"modules/core/ItemEditMovie.inc";s:13:"ItemEditAlbum";s:30:"modules/core/ItemEditAlbum.inc";s:13:"ItemEditPhoto";s:30:"modules/core/ItemEditPhoto.inc";s:13:"ItemEditTheme";s:30:"modules/core/ItemEditTheme.inc";s:27:"ItemEditRotateAndScalePhoto";s:44:"modules/core/ItemEditRotateAndScalePhoto.inc";s:22:"ItemEditPhotoThumbnail";s:39:"modules/core/ItemEditPhotoThumbnail.inc";}s:13:"ItemAddPlugin";a:6:{s:18:"ItemAddFromBrowser";s:35:"modules/core/ItemAddFromBrowser.inc";s:14:"ItemAddFromWeb";s:34:"modules/itemadd/ItemAddFromWeb.inc";s:17:"ItemAddFromServer";s:37:"modules/itemadd/ItemAddFromServer.inc";s:15:"ItemAddLinkItem";s:36:"modules/linkitem/ItemAddLinkItem.inc";s:19:"ItemAddUploadApplet";s:44:"modules/uploadapplet/ItemAddUploadApplet.inc";s:16:"ItemAddPublishXp";s:38:"modules/publishxp/ItemAddPublishXp.inc";}s:19:"GalleryUrlGenerator";a:1:{s:22:"ModRewriteUrlGenerator";s:71:"modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class";}s:13:"GalleryEntity";a:14:{s:13:"GalleryEntity";s:40:"modules/core/classes/GalleryEntity.class";s:18:"GalleryChildEntity";s:45:"modules/core/classes/GalleryChildEntity.class";s:16:"GalleryAlbumItem";s:43:"modules/core/classes/GalleryAlbumItem.class";s:11:"GalleryUser";s:38:"modules/core/classes/GalleryUser.class";s:12:"GalleryGroup";s:39:"modules/core/classes/GalleryGroup.class";s:17:"GalleryDerivative";s:44:"modules/core/classes/GalleryDerivative.class";s:22:"GalleryDerivativeImage";s:49:"modules/core/classes/GalleryDerivativeImage.class";s:16:"GalleryMovieItem";s:43:"modules/core/classes/GalleryMovieItem.class";s:20:"GalleryAnimationItem";s:47:"modules/core/classes/GalleryAnimationItem.class";s:16:"GalleryPhotoItem";s:43:"modules/core/classes/GalleryPhotoItem.class";s:18:"GalleryUnknownItem";s:45:"modules/core/classes/GalleryUnknownItem.class";s:15:"GalleryLinkItem";s:46:"modules/linkitem/classes/GalleryLinkItem.class";s:14:"ThumbnailImage";s:46:"modules/thumbnail/classes/ThumbnailImage.class";s:14:"GalleryComment";s:44:"modules/comment/classes/GalleryComment.class";}s:17:"GalleryDerivative";a:1:{s:22:"GalleryDerivativeImage";s:49:"modules/core/classes/GalleryDerivativeImage.class";}s:11:"GalleryItem";a:4:{s:16:"GalleryPhotoItem";s:43:"modules/core/classes/GalleryPhotoItem.class";s:16:"GalleryMovieItem";s:43:"modules/core/classes/GalleryMovieItem.class";s:20:"GalleryAnimationItem";s:47:"modules/core/classes/GalleryAnimationItem.class";s:18:"GalleryUnknownItem";s:45:"modules/core/classes/GalleryUnknownItem.class";}s:19:"GalleryDynamicAlbum";a:1:{s:19:"GalleryDynamicAlbum";s:46:"modules/core/classes/GalleryDynamicAlbum.class";}s:26:"GallerySearchInterface_1_0";a:2:{s:17:"GalleryCoreSearch";s:44:"modules/core/classes/GalleryCoreSearch.class";s:20:"GalleryCommentSearch";s:50:"modules/comment/classes/GalleryCommentSearch.class";}s:13:"ItemAddOption";a:2:{s:21:"CreateThumbnailOption";s:38:"modules/core/CreateThumbnailOption.inc";s:21:"ExifDescriptionOption";s:38:"modules/exif/ExifDescriptionOption.inc";}s:15:"MaintenanceTask";a:10:{s:20:"OptimizeDatabaseTask";s:47:"modules/core/classes/OptimizeDatabaseTask.class";s:18:"FlushTemplatesTask";s:45:"modules/core/classes/FlushTemplatesTask.class";s:22:"FlushDatabaseCacheTask";s:49:"modules/core/classes/FlushDatabaseCacheTask.class";s:20:"BuildDerivativesTask";s:47:"modules/core/classes/BuildDerivativesTask.class";s:19:"ResetViewCountsTask";s:46:"modules/core/classes/ResetViewCountsTask.class";s:14:"SystemInfoTask";s:41:"modules/core/classes/SystemInfoTask.class";s:27:"SetOriginationTimestampTask";s:54:"modules/core/classes/SetOriginationTimestampTask.class";s:18:"DeleteSessionsTask";s:45:"modules/core/classes/DeleteSessionsTask.class";s:25:"ConvertDatabaseToUtf8Task";s:52:"modules/core/classes/ConvertDatabaseToUtf8Task.class";s:24:"RewriteCheckConflictTask";s:54:"modules/rewrite/classes/RewriteCheckConflictTask.class";}s:18:"CaptchaAdminOption";a:2:{s:22:"CoreCaptchaAdminOption";s:49:"modules/core/classes/CoreCaptchaAdminOption.class";s:25:"CommentCaptchaAdminOption";s:55:"modules/comment/classes/CommentCaptchaAdminOption.class";}s:17:"GalleryAuthPlugin";a:2:{s:17:"SessionAuthPlugin";s:41:"modules/core/classes/GallerySession.class";s:14:"HttpAuthPlugin";s:45:"modules/httpauth/classes/HttpAuthPlugin.class";}s:18:"IconsInterface_1_0";a:1:{s:9:"IconsImpl";s:37:"modules/icons/classes/IconsImpl.class";}s:22:"SlideshowInterface_1_0";a:1:{s:13:"SlideshowImpl";s:45:"modules/slideshow/classes/SlideshowImpl.class";}s:14:"GalleryToolkit";a:4:{s:9:"GdToolkit";s:34:"modules/gd/classes/GdToolkit.class";s:15:"LinkItemToolkit";s:46:"modules/linkitem/classes/LinkItemToolkit.class";s:16:"ThumbnailToolkit";s:48:"modules/thumbnail/classes/ThumbnailToolkit.class";s:11:"ExifToolkit";s:38:"modules/exif/classes/ExifToolkit.class";}s:14:"ItemEditOption";a:3:{s:14:"LinkItemOption";s:35:"modules/linkitem/LinkItemOption.inc";s:21:"CustomThumbnailOption";s:43:"modules/thumbnail/CustomThumbnailOption.inc";s:14:"RatingItemEdit";s:33:"modules/rating/RatingItemEdit.inc";}s:23:"ImageFrameInterface_1_1";a:1:{s:14:"ImageFrameImpl";s:47:"modules/imageframe/classes/ImageFrameImpl.class";}s:21:"HttpAuthInterface_1_0";a:1:{s:14:"HttpAuthHelper";s:45:"modules/httpauth/classes/HttpAuthHelper.class";}s:17:"ExifInterface_1_0";a:1:{s:13:"ExifExtractor";s:40:"modules/exif/classes/ExifExtractor.class";}s:24:"GallerySortInterface_1_2";a:1:{s:15:"RatingSortOrder";s:44:"modules/rating/classes/RatingSortOrder.class";}s:23:"CartPluginInterface_1_0";a:1:{s:20:"ShutterflyCartPlugin";s:53:"modules/shutterfly/classes/ShutterflyCartPlugin.class";}s:10:"RewriteApi";a:1:{s:10:"RewriteApi";s:40:"modules/rewrite/classes/RewriteApi.class";}}s:3:"ids";a:22:{s:14:"ItemEditPlugin";a:8:{s:12:"ItemEditItem";s:12:"ItemEditItem";s:17:"ItemEditAnimation";s:17:"ItemEditAnimation";s:13:"ItemEditMovie";s:13:"ItemEditMovie";s:13:"ItemEditAlbum";s:13:"ItemEditAlbum";s:13:"ItemEditPhoto";s:13:"ItemEditPhoto";s:13:"ItemEditTheme";s:13:"ItemEditTheme";s:27:"ItemEditRotateAndScalePhoto";s:27:"ItemEditRotateAndScalePhoto";s:22:"ItemEditPhotoThumbnail";s:22:"ItemEditPhotoThumbnail";}s:13:"ItemAddPlugin";a:6:{s:18:"ItemAddFromBrowser";s:18:"ItemAddFromBrowser";s:14:"ItemAddFromWeb";s:14:"ItemAddFromWeb";s:17:"ItemAddFromServer";s:17:"ItemAddFromServer";s:15:"ItemAddLinkItem";s:15:"ItemAddLinkItem";s:19:"ItemAddUploadApplet";s:19:"ItemAddUploadApplet";s:16:"ItemAddPublishXp";s:16:"ItemAddPublishXp";}s:19:"GalleryUrlGenerator";a:1:{s:22:"ModRewriteUrlGenerator";s:22:"ModRewriteUrlGenerator";}s:13:"GalleryEntity";a:14:{s:13:"GalleryEntity";s:13:"GalleryEntity";s:18:"GalleryChildEntity";s:18:"GalleryChildEntity";s:16:"GalleryAlbumItem";s:16:"GalleryAlbumItem";s:11:"GalleryUser";s:11:"GalleryUser";s:12:"GalleryGroup";s:12:"GalleryGroup";s:17:"GalleryDerivative";s:17:"GalleryDerivative";s:22:"GalleryDerivativeImage";s:22:"GalleryDerivativeImage";s:16:"GalleryMovieItem";s:16:"GalleryMovieItem";s:20:"GalleryAnimationItem";s:20:"GalleryAnimationItem";s:16:"GalleryPhotoItem";s:16:"GalleryPhotoItem";s:18:"GalleryUnknownItem";s:18:"GalleryUnknownItem";s:15:"GalleryLinkItem";s:15:"GalleryLinkItem";s:14:"ThumbnailImage";s:14:"ThumbnailImage";s:14:"GalleryComment";s:14:"GalleryComment";}s:17:"GalleryDerivative";a:1:{s:22:"GalleryDerivativeImage";s:22:"GalleryDerivativeImage";}s:11:"GalleryItem";a:4:{s:16:"GalleryPhotoItem";s:16:"GalleryPhotoItem";s:16:"GalleryMovieItem";s:16:"GalleryMovieItem";s:20:"GalleryAnimationItem";s:20:"GalleryAnimationItem";s:18:"GalleryUnknownItem";s:18:"GalleryUnknownItem";}s:19:"GalleryDynamicAlbum";a:1:{s:19:"GalleryDynamicAlbum";s:19:"GalleryDynamicAlbum";}s:26:"GallerySearchInterface_1_0";a:2:{s:17:"GalleryCoreSearch";s:17:"GalleryCoreSearch";s:7:"comment";s:20:"GalleryCommentSearch";}s:13:"ItemAddOption";a:2:{s:21:"CreateThumbnailOption";s:21:"CreateThumbnailOption";s:21:"ExifDescriptionOption";s:21:"ExifDescriptionOption";}s:15:"MaintenanceTask";a:10:{s:20:"OptimizeDatabaseTask";s:20:"OptimizeDatabaseTask";s:18:"FlushTemplatesTask";s:18:"FlushTemplatesTask";s:22:"FlushDatabaseCacheTask";s:22:"FlushDatabaseCacheTask";s:20:"BuildDerivativesTask";s:20:"BuildDerivativesTask";s:19:"ResetViewCountsTask";s:19:"ResetViewCountsTask";s:14:"SystemInfoTask";s:14:"SystemInfoTask";s:27:"SetOriginationTimestampTask";s:27:"SetOriginationTimestampTask";s:18:"DeleteSessionsTask";s:18:"DeleteSessionsTask";s:25:"ConvertDatabaseToUtf8Task";s:25:"ConvertDatabaseToUtf8Task";s:24:"RewriteCheckConflictTask";s:24:"RewriteCheckConflictTask";}s:18:"CaptchaAdminOption";a:2:{s:22:"CoreCaptchaAdminOption";s:22:"CoreCaptchaAdminOption";s:25:"CommentCaptchaAdminOption";s:25:"CommentCaptchaAdminOption";}s:17:"GalleryAuthPlugin";a:2:{s:17:"SessionAuthPlugin";s:17:"SessionAuthPlugin";s:14:"HttpAuthPlugin";s:14:"HttpAuthPlugin";}s:18:"IconsInterface_1_0";a:1:{s:5:"Icons";s:9:"IconsImpl";}s:22:"SlideshowInterface_1_0";a:1:{s:9:"Slideshow";s:13:"SlideshowImpl";}s:14:"GalleryToolkit";a:4:{s:2:"Gd";s:9:"GdToolkit";s:15:"LinkItemToolkit";s:15:"LinkItemToolkit";s:9:"Thumbnail";s:16:"ThumbnailToolkit";s:4:"Exif";s:11:"ExifToolkit";}s:14:"ItemEditOption";a:3:{s:14:"LinkItemOption";s:14:"LinkItemOption";s:21:"CustomThumbnailOption";s:21:"CustomThumbnailOption";s:14:"RatingItemEdit";s:14:"RatingItemEdit";}s:23:"ImageFrameInterface_1_1";a:1:{s:10:"ImageFrame";s:14:"ImageFrameImpl";}s:21:"HttpAuthInterface_1_0";a:1:{s:17:"HttpAuthInterface";s:14:"HttpAuthHelper";}s:17:"ExifInterface_1_0";a:1:{s:4:"Exif";s:13:"ExifExtractor";}s:24:"GallerySortInterface_1_2";a:1:{s:15:"RatingSortOrder";s:15:"RatingSortOrder";}s:23:"CartPluginInterface_1_0";a:1:{s:10:"shutterfly";s:20:"ShutterflyCartPlugin";}s:10:"RewriteApi";a:1:{s:10:"RewriteApi";s:10:"RewriteApi";}}s:9:"pluginIds";a:22:{s:14:"ItemEditPlugin";a:8:{s:12:"ItemEditItem";s:4:"core";s:17:"ItemEditAnimation";s:4:"core";s:13:"ItemEditMovie";s:4:"core";s:13:"ItemEditAlbum";s:4:"core";s:13:"ItemEditPhoto";s:4:"core";s:13:"ItemEditTheme";s:4:"core";s:27:"ItemEditRotateAndScalePhoto";s:4:"core";s:22:"ItemEditPhotoThumbnail";s:4:"core";}s:13:"ItemAddPlugin";a:6:{s:18:"ItemAddFromBrowser";s:4:"core";s:14:"ItemAddFromWeb";s:7:"itemadd";s:17:"ItemAddFromServer";s:7:"itemadd";s:15:"ItemAddLinkItem";s:8:"linkitem";s:19:"ItemAddUploadApplet";s:12:"uploadapplet";s:16:"ItemAddPublishXp";s:9:"publishxp";}s:19:"GalleryUrlGenerator";a:1:{s:22:"ModRewriteUrlGenerator";s:7:"rewrite";}s:13:"GalleryEntity";a:14:{s:13:"GalleryEntity";s:4:"core";s:18:"GalleryChildEntity";s:4:"core";s:16:"GalleryAlbumItem";s:4:"core";s:11:"GalleryUser";s:4:"core";s:12:"GalleryGroup";s:4:"core";s:17:"GalleryDerivative";s:4:"core";s:22:"GalleryDerivativeImage";s:4:"core";s:16:"GalleryMovieItem";s:4:"core";s:20:"GalleryAnimationItem";s:4:"core";s:16:"GalleryPhotoItem";s:4:"core";s:18:"GalleryUnknownItem";s:4:"core";s:15:"GalleryLinkItem";s:8:"linkitem";s:14:"ThumbnailImage";s:9:"thumbnail";s:14:"GalleryComment";s:7:"comment";}s:17:"GalleryDerivative";a:1:{s:22:"GalleryDerivativeImage";s:4:"core";}s:11:"GalleryItem";a:4:{s:16:"GalleryPhotoItem";s:4:"core";s:16:"GalleryMovieItem";s:4:"core";s:20:"GalleryAnimationItem";s:4:"core";s:18:"GalleryUnknownItem";s:4:"core";}s:19:"GalleryDynamicAlbum";a:1:{s:19:"GalleryDynamicAlbum";s:4:"core";}s:26:"GallerySearchInterface_1_0";a:2:{s:17:"GalleryCoreSearch";s:4:"core";s:20:"GalleryCommentSearch";s:7:"comment";}s:13:"ItemAddOption";a:2:{s:21:"CreateThumbnailOption";s:4:"core";s:21:"ExifDescriptionOption";s:4:"exif";}s:15:"MaintenanceTask";a:10:{s:20:"OptimizeDatabaseTask";s:4:"core";s:18:"FlushTemplatesTask";s:4:"core";s:22:"FlushDatabaseCacheTask";s:4:"core";s:20:"BuildDerivativesTask";s:4:"core";s:19:"ResetViewCountsTask";s:4:"core";s:14:"SystemInfoTask";s:4:"core";s:27:"SetOriginationTimestampTask";s:4:"core";s:18:"DeleteSessionsTask";s:4:"core";s:25:"ConvertDatabaseToUtf8Task";s:4:"core";s:24:"RewriteCheckConflictTask";s:7:"rewrite";}s:18:"CaptchaAdminOption";a:2:{s:22:"CoreCaptchaAdminOption";s:4:"core";s:25:"CommentCaptchaAdminOption";s:7:"comment";}s:17:"GalleryAuthPlugin";a:2:{s:17:"SessionAuthPlugin";s:4:"core";s:14:"HttpAuthPlugin";s:8:"httpauth";}s:18:"IconsInterface_1_0";a:1:{s:9:"IconsImpl";s:5:"icons";}s:22:"SlideshowInterface_1_0";a:1:{s:13:"SlideshowImpl";s:9:"slideshow";}s:14:"GalleryToolkit";a:4:{s:9:"GdToolkit";s:2:"gd";s:15:"LinkItemToolkit";s:8:"linkitem";s:16:"ThumbnailToolkit";s:9:"thumbnail";s:11:"ExifToolkit";s:4:"exif";}s:14:"ItemEditOption";a:3:{s:14:"LinkItemOption";s:8:"linkitem";s:21:"CustomThumbnailOption";s:9:"thumbnail";s:14:"RatingItemEdit";s:6:"rating";}s:23:"ImageFrameInterface_1_1";a:1:{s:14:"ImageFrameImpl";s:10:"imageframe";}s:21:"HttpAuthInterface_1_0";a:1:{s:14:"HttpAuthHelper";s:8:"httpauth";}s:17:"ExifInterface_1_0";a:1:{s:13:"ExifExtractor";s:4:"exif";}s:24:"GallerySortInterface_1_2";a:1:{s:15:"RatingSortOrder";s:6:"rating";}s:23:"CartPluginInterface_1_0";a:1:{s:20:"ShutterflyCartPlugin";s:10:"shutterfly";}s:10:"RewriteApi";a:1:{s:10:"RewriteApi";s:7:"rewrite";}}s:5:"hints";a:3:{s:17:"GalleryDerivative";a:1:{s:1:"*";a:1:{s:22:"GalleryDerivativeImage";s:22:"GalleryDerivativeImage";}}s:11:"GalleryItem";a:6:{s:7:"image/*";a:1:{s:16:"GalleryPhotoItem";s:16:"GalleryPhotoItem";}s:21:"application/photoshop";a:1:{s:16:"GalleryPhotoItem";s:16:"GalleryPhotoItem";}s:7:"video/*";a:1:{s:16:"GalleryMovieItem";s:16:"GalleryMovieItem";}s:22:"application/x-director";a:1:{s:20:"GalleryAnimationItem";s:20:"GalleryAnimationItem";}s:29:"application/x-shockwave-flash";a:1:{s:20:"GalleryAnimationItem";s:20:"GalleryAnimationItem";}s:1:"*";a:1:{s:18:"GalleryUnknownItem";s:18:"GalleryUnknownItem";}}s:14:"ItemEditOption";a:2:{s:12:"itemedititem";a:2:{s:14:"LinkItemOption";s:14:"LinkItemOption";s:21:"CustomThumbnailOption";s:21:"CustomThumbnailOption";}s:13:"itemeditalbum";a:1:{s:14:"RatingItemEdit";s:14:"RatingItemEdit";}}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryMimeTypeHelper_mimeData.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryMimeTypeHelper_mimeData.inc new file mode 100644 index 0000000..7108490 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryMimeTypeHelper_mimeData.inc @@ -0,0 +1 @@ +|a:2:{s:12:"by-extension";a:157:{s:3:"zip";s:15:"application/zip";s:1:"z";s:22:"application/x-compress";s:3:"xyz";s:14:"chemical/x-xyz";s:3:"xwd";s:19:"image/x-xwindowdump";s:3:"xsl";s:8:"text/xml";s:3:"xpm";s:15:"image/x-xpixmap";s:3:"xls";s:24:"application/vnd.ms-excel";s:3:"xbm";s:15:"image/x-xbitmap";s:3:"wrl";s:10:"model/vrml";s:3:"wmv";s:14:"video/x-ms-wmv";s:5:"wmlsc";s:30:"application/vnd.wap.wmlscriptc";s:4:"wmls";s:22:"text/vnd.wap.wmlscript";s:4:"wmlc";s:24:"application/vnd.wap.wmlc";s:3:"wml";s:16:"text/vnd.wap.wml";s:3:"wmf";s:9:"image/wmf";s:3:"wma";s:14:"audio/x-ms-wma";s:5:"wbxml";s:25:"application/vnd.wap.wbxml";s:4:"wbmp";s:18:"image/vnd.wap.wbmp";s:3:"wav";s:11:"audio/x-wav";s:3:"vsd";s:21:"application/vnd.visio";s:4:"vrml";s:10:"model/vrml";s:3:"vcd";s:20:"application/x-cdlink";s:5:"ustar";s:19:"application/x-ustar";s:3:"txt";s:10:"text/plain";s:3:"tsv";s:25:"text/tab-separated-values";s:2:"tr";s:19:"application/x-troff";s:4:"tiff";s:10:"image/tiff";s:7:"tifcmyk";s:15:"image/tiff-cmyk";s:3:"tif";s:10:"image/tiff";s:3:"tga";s:9:"image/tga";s:7:"texinfo";s:21:"application/x-texinfo";s:4:"texi";s:21:"application/x-texinfo";s:3:"tex";s:17:"application/x-tex";s:3:"tcl";s:17:"application/x-tcl";s:3:"tar";s:17:"application/x-tar";s:1:"t";s:19:"application/x-troff";s:3:"swf";s:29:"application/x-shockwave-flash";s:3:"svg";s:13:"image/svg+xml";s:6:"sv4crc";s:20:"application/x-sv4crc";s:7:"sv4cpio";s:21:"application/x-sv4cpio";s:3:"src";s:25:"application/x-wais-source";s:3:"spl";s:26:"application/x-futuresplash";s:2:"so";s:24:"application/octet-stream";s:3:"snd";s:11:"audio/basic";s:4:"smil";s:16:"application/smil";s:3:"smi";s:16:"application/smil";s:3:"skt";s:18:"application/x-koan";s:3:"skp";s:18:"application/x-koan";s:3:"skm";s:18:"application/x-koan";s:3:"skd";s:18:"application/x-koan";s:3:"sit";s:21:"application/x-stuffit";s:4:"silo";s:10:"model/mesh";s:4:"shar";s:18:"application/x-shar";s:2:"sh";s:16:"application/x-sh";s:4:"sgml";s:9:"text/sgml";s:3:"sgm";s:9:"text/sgml";s:3:"rtx";s:13:"text/richtext";s:3:"rtf";s:8:"text/rtf";s:3:"rpm";s:27:"audio/x-pn-realaudio-plugin";s:4:"roff";s:19:"application/x-troff";s:2:"rm";s:20:"audio/x-pn-realaudio";s:3:"rgb";s:11:"image/x-rgb";s:3:"ras";s:18:"image/x-cmu-raster";s:3:"ram";s:20:"audio/x-pn-realaudio";s:2:"ra";s:17:"audio/x-realaudio";s:2:"qt";s:15:"video/quicktime";s:3:"psd";s:21:"application/photoshop";s:2:"ps";s:22:"application/postscript";s:3:"ppt";s:29:"application/vnd.ms-powerpoint";s:3:"ppm";s:23:"image/x-portable-pixmap";s:3:"pnm";s:23:"image/x-portable-anymap";s:3:"png";s:9:"image/png";s:3:"pgn";s:23:"application/x-chess-pgn";s:3:"pgm";s:24:"image/x-portable-graymap";s:3:"pdf";s:15:"application/pdf";s:3:"pdb";s:14:"chemical/x-pdb";s:3:"pcd";s:16:"image/x-photo-cd";s:3:"pbm";s:23:"image/x-portable-bitmap";s:3:"oda";s:15:"application/oda";s:2:"nc";s:20:"application/x-netcdf";s:3:"mxu";s:17:"video/vnd.mpegurl";s:3:"msh";s:10:"model/mesh";s:2:"ms";s:22:"application/x-troff-ms";s:4:"mpga";s:10:"audio/mpeg";s:3:"mpg";s:10:"video/mpeg";s:4:"mpeg";s:10:"video/mpeg";s:3:"mpe";s:10:"video/mpeg";s:3:"mp4";s:9:"video/mp4";s:3:"mp3";s:10:"audio/mpeg";s:3:"mp2";s:10:"audio/mpeg";s:5:"movie";s:17:"video/x-sgi-movie";s:3:"mov";s:15:"video/quicktime";s:4:"mjp2";s:9:"video/mj2";s:3:"mj2";s:9:"video/mj2";s:3:"mif";s:19:"application/vnd.mif";s:4:"midi";s:10:"audio/midi";s:3:"mid";s:10:"audio/midi";s:4:"mesh";s:10:"model/mesh";s:2:"me";s:22:"application/x-troff-me";s:3:"man";s:23:"application/x-troff-man";s:3:"m3u";s:15:"audio/x-mpegurl";s:3:"lzh";s:24:"application/octet-stream";s:3:"lha";s:24:"application/octet-stream";s:5:"latex";s:19:"application/x-latex";s:3:"kar";s:10:"audio/midi";s:2:"js";s:24:"application/x-javascript";s:3:"jpx";s:9:"image/jpx";s:3:"jpm";s:9:"image/jpm";s:4:"jpgm";s:10:"image/jpgm";s:7:"jpgcmyk";s:15:"image/jpeg-cmyk";s:4:"jpg2";s:9:"image/jp2";s:3:"jpg";s:10:"image/jpeg";s:3:"jpf";s:9:"image/jpx";s:4:"jpeg";s:10:"image/jpeg";s:3:"jpe";s:10:"image/jpeg";s:3:"jp2";s:9:"image/jp2";s:3:"igs";s:10:"model/iges";s:4:"iges";s:10:"model/iges";s:3:"ief";s:9:"image/ief";s:3:"ice";s:23:"x-conference/x-cooltalk";s:3:"hqx";s:24:"application/mac-binhex40";s:3:"hdf";s:17:"application/x-hdf";s:2:"gz";s:18:"application/x-gzip";s:4:"gtar";s:18:"application/x-gtar";s:3:"gif";s:9:"image/gif";s:3:"flv";s:11:"video/x-flv";s:2:"ez";s:24:"application/andrew-inset";s:3:"exe";s:24:"application/octet-stream";s:3:"etx";s:13:"text/x-setext";s:3:"eps";s:22:"application/postscript";s:3:"dxr";s:22:"application/x-director";s:3:"dvi";s:17:"application/x-dvi";s:3:"doc";s:18:"application/msword";s:3:"dms";s:24:"application/octet-stream";s:3:"dll";s:24:"application/octet-stream";s:4:"djvu";s:14:"image/vnd.djvu";s:3:"djv";s:14:"image/vnd.djvu";s:3:"dir";s:22:"application/x-director";s:3:"dcr";s:22:"application/x-director";s:3:"css";s:8:"text/css";s:3:"csh";s:17:"application/x-csh";s:3:"cpt";s:26:"application/mac-compactpro";s:4:"cpio";s:18:"application/x-cpio";s:5:"class";s:24:"application/octet-stream";s:3:"cdf";s:20:"application/x-netcdf";s:3:"bmp";s:9:"image/bmp";s:3:"bin";s:24:"application/octet-stream";s:5:"bcpio";s:19:"application/x-bcpio";s:3:"avi";s:15:"video/x-msvideo";s:2:"au";s:11:"audio/basic";s:3:"asx";s:14:"video/x-ms-asx";s:3:"asf";s:14:"video/x-ms-asf";s:3:"asc";s:10:"text/plain";s:4:"aiff";s:12:"audio/x-aiff";s:4:"aifc";s:12:"audio/x-aiff";s:3:"aif";s:12:"audio/x-aiff";s:2:"ai";s:22:"application/postscript";}s:11:"by-mimetype";a:114:{s:15:"application/zip";a:2:{s:4:"exts";a:1:{i:0;s:3:"zip";}s:8:"viewable";b:0;}s:22:"application/x-compress";a:2:{s:4:"exts";a:1:{i:0;s:1:"z";}s:8:"viewable";b:0;}s:14:"chemical/x-xyz";a:2:{s:4:"exts";a:1:{i:0;s:3:"xyz";}s:8:"viewable";b:0;}s:19:"image/x-xwindowdump";a:2:{s:4:"exts";a:1:{i:0;s:3:"xwd";}s:8:"viewable";b:0;}s:8:"text/xml";a:2:{s:4:"exts";a:1:{i:0;s:3:"xsl";}s:8:"viewable";b:0;}s:15:"image/x-xpixmap";a:2:{s:4:"exts";a:1:{i:0;s:3:"xpm";}s:8:"viewable";b:0;}s:24:"application/vnd.ms-excel";a:2:{s:4:"exts";a:1:{i:0;s:3:"xls";}s:8:"viewable";b:0;}s:15:"image/x-xbitmap";a:2:{s:4:"exts";a:1:{i:0;s:3:"xbm";}s:8:"viewable";b:0;}s:10:"model/vrml";a:2:{s:4:"exts";a:2:{i:0;s:3:"wrl";i:1;s:4:"vrml";}s:8:"viewable";i:0;}s:14:"video/x-ms-wmv";a:2:{s:4:"exts";a:1:{i:0;s:3:"wmv";}s:8:"viewable";b:0;}s:30:"application/vnd.wap.wmlscriptc";a:2:{s:4:"exts";a:1:{i:0;s:5:"wmlsc";}s:8:"viewable";b:0;}s:22:"text/vnd.wap.wmlscript";a:2:{s:4:"exts";a:1:{i:0;s:4:"wmls";}s:8:"viewable";b:0;}s:24:"application/vnd.wap.wmlc";a:2:{s:4:"exts";a:1:{i:0;s:4:"wmlc";}s:8:"viewable";b:0;}s:16:"text/vnd.wap.wml";a:2:{s:4:"exts";a:1:{i:0;s:3:"wml";}s:8:"viewable";b:0;}s:9:"image/wmf";a:2:{s:4:"exts";a:1:{i:0;s:3:"wmf";}s:8:"viewable";b:0;}s:14:"audio/x-ms-wma";a:2:{s:4:"exts";a:1:{i:0;s:3:"wma";}s:8:"viewable";b:0;}s:25:"application/vnd.wap.wbxml";a:2:{s:4:"exts";a:1:{i:0;s:5:"wbxml";}s:8:"viewable";b:0;}s:18:"image/vnd.wap.wbmp";a:2:{s:4:"exts";a:1:{i:0;s:4:"wbmp";}s:8:"viewable";b:0;}s:11:"audio/x-wav";a:2:{s:4:"exts";a:1:{i:0;s:3:"wav";}s:8:"viewable";b:0;}s:21:"application/vnd.visio";a:2:{s:4:"exts";a:1:{i:0;s:3:"vsd";}s:8:"viewable";b:0;}s:20:"application/x-cdlink";a:2:{s:4:"exts";a:1:{i:0;s:3:"vcd";}s:8:"viewable";b:0;}s:19:"application/x-ustar";a:2:{s:4:"exts";a:1:{i:0;s:5:"ustar";}s:8:"viewable";b:0;}s:10:"text/plain";a:2:{s:4:"exts";a:2:{i:0;s:3:"txt";i:1;s:3:"asc";}s:8:"viewable";i:0;}s:25:"text/tab-separated-values";a:2:{s:4:"exts";a:1:{i:0;s:3:"tsv";}s:8:"viewable";b:0;}s:19:"application/x-troff";a:2:{s:4:"exts";a:3:{i:0;s:2:"tr";i:1;s:1:"t";i:2;s:4:"roff";}s:8:"viewable";i:0;}s:10:"image/tiff";a:2:{s:4:"exts";a:2:{i:0;s:4:"tiff";i:1;s:3:"tif";}s:8:"viewable";i:0;}s:15:"image/tiff-cmyk";a:2:{s:4:"exts";a:1:{i:0;s:7:"tifcmyk";}s:8:"viewable";b:0;}s:9:"image/tga";a:2:{s:4:"exts";a:1:{i:0;s:3:"tga";}s:8:"viewable";b:0;}s:21:"application/x-texinfo";a:2:{s:4:"exts";a:2:{i:0;s:7:"texinfo";i:1;s:4:"texi";}s:8:"viewable";i:0;}s:17:"application/x-tex";a:2:{s:4:"exts";a:1:{i:0;s:3:"tex";}s:8:"viewable";b:0;}s:17:"application/x-tcl";a:2:{s:4:"exts";a:1:{i:0;s:3:"tcl";}s:8:"viewable";b:0;}s:17:"application/x-tar";a:2:{s:4:"exts";a:1:{i:0;s:3:"tar";}s:8:"viewable";b:0;}s:29:"application/x-shockwave-flash";a:2:{s:4:"exts";a:1:{i:0;s:3:"swf";}s:8:"viewable";b:0;}s:13:"image/svg+xml";a:2:{s:4:"exts";a:1:{i:0;s:3:"svg";}s:8:"viewable";b:0;}s:20:"application/x-sv4crc";a:2:{s:4:"exts";a:1:{i:0;s:6:"sv4crc";}s:8:"viewable";b:0;}s:21:"application/x-sv4cpio";a:2:{s:4:"exts";a:1:{i:0;s:7:"sv4cpio";}s:8:"viewable";b:0;}s:25:"application/x-wais-source";a:2:{s:4:"exts";a:1:{i:0;s:3:"src";}s:8:"viewable";b:0;}s:26:"application/x-futuresplash";a:2:{s:4:"exts";a:1:{i:0;s:3:"spl";}s:8:"viewable";b:0;}s:24:"application/octet-stream";a:2:{s:4:"exts";a:8:{i:0;s:2:"so";i:1;s:3:"lzh";i:2;s:3:"lha";i:3;s:3:"exe";i:4;s:3:"dms";i:5;s:3:"dll";i:6;s:5:"class";i:7;s:3:"bin";}s:8:"viewable";i:0;}s:11:"audio/basic";a:2:{s:4:"exts";a:2:{i:0;s:3:"snd";i:1;s:2:"au";}s:8:"viewable";i:0;}s:16:"application/smil";a:2:{s:4:"exts";a:2:{i:0;s:4:"smil";i:1;s:3:"smi";}s:8:"viewable";i:0;}s:18:"application/x-koan";a:2:{s:4:"exts";a:4:{i:0;s:3:"skt";i:1;s:3:"skp";i:2;s:3:"skm";i:3;s:3:"skd";}s:8:"viewable";i:0;}s:21:"application/x-stuffit";a:2:{s:4:"exts";a:1:{i:0;s:3:"sit";}s:8:"viewable";b:0;}s:10:"model/mesh";a:2:{s:4:"exts";a:3:{i:0;s:4:"silo";i:1;s:3:"msh";i:2;s:4:"mesh";}s:8:"viewable";i:0;}s:18:"application/x-shar";a:2:{s:4:"exts";a:1:{i:0;s:4:"shar";}s:8:"viewable";b:0;}s:16:"application/x-sh";a:2:{s:4:"exts";a:1:{i:0;s:2:"sh";}s:8:"viewable";b:0;}s:9:"text/sgml";a:2:{s:4:"exts";a:2:{i:0;s:4:"sgml";i:1;s:3:"sgm";}s:8:"viewable";i:0;}s:13:"text/richtext";a:2:{s:4:"exts";a:1:{i:0;s:3:"rtx";}s:8:"viewable";b:0;}s:8:"text/rtf";a:2:{s:4:"exts";a:1:{i:0;s:3:"rtf";}s:8:"viewable";b:0;}s:27:"audio/x-pn-realaudio-plugin";a:2:{s:4:"exts";a:1:{i:0;s:3:"rpm";}s:8:"viewable";b:0;}s:20:"audio/x-pn-realaudio";a:2:{s:4:"exts";a:2:{i:0;s:2:"rm";i:1;s:3:"ram";}s:8:"viewable";i:0;}s:11:"image/x-rgb";a:2:{s:4:"exts";a:1:{i:0;s:3:"rgb";}s:8:"viewable";b:0;}s:18:"image/x-cmu-raster";a:2:{s:4:"exts";a:1:{i:0;s:3:"ras";}s:8:"viewable";b:0;}s:17:"audio/x-realaudio";a:2:{s:4:"exts";a:1:{i:0;s:2:"ra";}s:8:"viewable";b:0;}s:15:"video/quicktime";a:2:{s:4:"exts";a:2:{i:0;s:2:"qt";i:1;s:3:"mov";}s:8:"viewable";i:0;}s:21:"application/photoshop";a:2:{s:4:"exts";a:1:{i:0;s:3:"psd";}s:8:"viewable";b:0;}s:22:"application/postscript";a:2:{s:4:"exts";a:3:{i:0;s:2:"ps";i:1;s:3:"eps";i:2;s:2:"ai";}s:8:"viewable";i:0;}s:29:"application/vnd.ms-powerpoint";a:2:{s:4:"exts";a:1:{i:0;s:3:"ppt";}s:8:"viewable";b:0;}s:23:"image/x-portable-pixmap";a:2:{s:4:"exts";a:1:{i:0;s:3:"ppm";}s:8:"viewable";b:0;}s:23:"image/x-portable-anymap";a:2:{s:4:"exts";a:1:{i:0;s:3:"pnm";}s:8:"viewable";b:0;}s:9:"image/png";a:2:{s:4:"exts";a:1:{i:0;s:3:"png";}s:8:"viewable";b:1;}s:23:"application/x-chess-pgn";a:2:{s:4:"exts";a:1:{i:0;s:3:"pgn";}s:8:"viewable";b:0;}s:24:"image/x-portable-graymap";a:2:{s:4:"exts";a:1:{i:0;s:3:"pgm";}s:8:"viewable";b:0;}s:15:"application/pdf";a:2:{s:4:"exts";a:1:{i:0;s:3:"pdf";}s:8:"viewable";b:0;}s:14:"chemical/x-pdb";a:2:{s:4:"exts";a:1:{i:0;s:3:"pdb";}s:8:"viewable";b:0;}s:16:"image/x-photo-cd";a:2:{s:4:"exts";a:1:{i:0;s:3:"pcd";}s:8:"viewable";b:0;}s:23:"image/x-portable-bitmap";a:2:{s:4:"exts";a:1:{i:0;s:3:"pbm";}s:8:"viewable";b:0;}s:15:"application/oda";a:2:{s:4:"exts";a:1:{i:0;s:3:"oda";}s:8:"viewable";b:0;}s:20:"application/x-netcdf";a:2:{s:4:"exts";a:2:{i:0;s:2:"nc";i:1;s:3:"cdf";}s:8:"viewable";i:0;}s:17:"video/vnd.mpegurl";a:2:{s:4:"exts";a:1:{i:0;s:3:"mxu";}s:8:"viewable";b:0;}s:22:"application/x-troff-ms";a:2:{s:4:"exts";a:1:{i:0;s:2:"ms";}s:8:"viewable";b:0;}s:10:"audio/mpeg";a:2:{s:4:"exts";a:3:{i:0;s:4:"mpga";i:1;s:3:"mp3";i:2;s:3:"mp2";}s:8:"viewable";i:0;}s:10:"video/mpeg";a:2:{s:4:"exts";a:3:{i:0;s:3:"mpg";i:1;s:4:"mpeg";i:2;s:3:"mpe";}s:8:"viewable";i:0;}s:9:"video/mp4";a:2:{s:4:"exts";a:1:{i:0;s:3:"mp4";}s:8:"viewable";b:0;}s:17:"video/x-sgi-movie";a:2:{s:4:"exts";a:1:{i:0;s:5:"movie";}s:8:"viewable";b:0;}s:9:"video/mj2";a:2:{s:4:"exts";a:2:{i:0;s:4:"mjp2";i:1;s:3:"mj2";}s:8:"viewable";i:0;}s:19:"application/vnd.mif";a:2:{s:4:"exts";a:1:{i:0;s:3:"mif";}s:8:"viewable";b:0;}s:10:"audio/midi";a:2:{s:4:"exts";a:3:{i:0;s:4:"midi";i:1;s:3:"mid";i:2;s:3:"kar";}s:8:"viewable";i:0;}s:22:"application/x-troff-me";a:2:{s:4:"exts";a:1:{i:0;s:2:"me";}s:8:"viewable";b:0;}s:23:"application/x-troff-man";a:2:{s:4:"exts";a:1:{i:0;s:3:"man";}s:8:"viewable";b:0;}s:15:"audio/x-mpegurl";a:2:{s:4:"exts";a:1:{i:0;s:3:"m3u";}s:8:"viewable";b:0;}s:19:"application/x-latex";a:2:{s:4:"exts";a:1:{i:0;s:5:"latex";}s:8:"viewable";b:0;}s:24:"application/x-javascript";a:2:{s:4:"exts";a:1:{i:0;s:2:"js";}s:8:"viewable";b:0;}s:9:"image/jpx";a:2:{s:4:"exts";a:2:{i:0;s:3:"jpx";i:1;s:3:"jpf";}s:8:"viewable";i:0;}s:9:"image/jpm";a:2:{s:4:"exts";a:1:{i:0;s:3:"jpm";}s:8:"viewable";b:0;}s:10:"image/jpgm";a:2:{s:4:"exts";a:1:{i:0;s:4:"jpgm";}s:8:"viewable";b:0;}s:15:"image/jpeg-cmyk";a:2:{s:4:"exts";a:1:{i:0;s:7:"jpgcmyk";}s:8:"viewable";b:0;}s:9:"image/jp2";a:2:{s:4:"exts";a:2:{i:0;s:4:"jpg2";i:1;s:3:"jp2";}s:8:"viewable";i:0;}s:10:"image/jpeg";a:2:{s:4:"exts";a:3:{i:0;s:3:"jpg";i:1;s:4:"jpeg";i:2;s:3:"jpe";}s:8:"viewable";i:1;}s:10:"model/iges";a:2:{s:4:"exts";a:2:{i:0;s:3:"igs";i:1;s:4:"iges";}s:8:"viewable";i:0;}s:9:"image/ief";a:2:{s:4:"exts";a:1:{i:0;s:3:"ief";}s:8:"viewable";b:0;}s:23:"x-conference/x-cooltalk";a:2:{s:4:"exts";a:1:{i:0;s:3:"ice";}s:8:"viewable";b:0;}s:24:"application/mac-binhex40";a:2:{s:4:"exts";a:1:{i:0;s:3:"hqx";}s:8:"viewable";b:0;}s:17:"application/x-hdf";a:2:{s:4:"exts";a:1:{i:0;s:3:"hdf";}s:8:"viewable";b:0;}s:18:"application/x-gzip";a:2:{s:4:"exts";a:1:{i:0;s:2:"gz";}s:8:"viewable";b:0;}s:18:"application/x-gtar";a:2:{s:4:"exts";a:1:{i:0;s:4:"gtar";}s:8:"viewable";b:0;}s:9:"image/gif";a:2:{s:4:"exts";a:1:{i:0;s:3:"gif";}s:8:"viewable";b:1;}s:11:"video/x-flv";a:2:{s:4:"exts";a:1:{i:0;s:3:"flv";}s:8:"viewable";b:0;}s:24:"application/andrew-inset";a:2:{s:4:"exts";a:1:{i:0;s:2:"ez";}s:8:"viewable";b:0;}s:13:"text/x-setext";a:2:{s:4:"exts";a:1:{i:0;s:3:"etx";}s:8:"viewable";b:0;}s:22:"application/x-director";a:2:{s:4:"exts";a:3:{i:0;s:3:"dxr";i:1;s:3:"dir";i:2;s:3:"dcr";}s:8:"viewable";i:0;}s:17:"application/x-dvi";a:2:{s:4:"exts";a:1:{i:0;s:3:"dvi";}s:8:"viewable";b:0;}s:18:"application/msword";a:2:{s:4:"exts";a:1:{i:0;s:3:"doc";}s:8:"viewable";b:0;}s:14:"image/vnd.djvu";a:2:{s:4:"exts";a:2:{i:0;s:4:"djvu";i:1;s:3:"djv";}s:8:"viewable";i:0;}s:8:"text/css";a:2:{s:4:"exts";a:1:{i:0;s:3:"css";}s:8:"viewable";b:0;}s:17:"application/x-csh";a:2:{s:4:"exts";a:1:{i:0;s:3:"csh";}s:8:"viewable";b:0;}s:26:"application/mac-compactpro";a:2:{s:4:"exts";a:1:{i:0;s:3:"cpt";}s:8:"viewable";b:0;}s:18:"application/x-cpio";a:2:{s:4:"exts";a:1:{i:0;s:4:"cpio";}s:8:"viewable";b:0;}s:9:"image/bmp";a:2:{s:4:"exts";a:1:{i:0;s:3:"bmp";}s:8:"viewable";b:0;}s:19:"application/x-bcpio";a:2:{s:4:"exts";a:1:{i:0;s:5:"bcpio";}s:8:"viewable";b:0;}s:15:"video/x-msvideo";a:2:{s:4:"exts";a:1:{i:0;s:3:"avi";}s:8:"viewable";b:0;}s:14:"video/x-ms-asx";a:2:{s:4:"exts";a:1:{i:0;s:3:"asx";}s:8:"viewable";b:0;}s:14:"video/x-ms-asf";a:2:{s:4:"exts";a:1:{i:0;s:3:"asf";}s:8:"viewable";b:0;}s:12:"audio/x-aiff";a:2:{s:4:"exts";a:3:{i:0;s:4:"aiff";i:1;s:4:"aifc";i:2;s:3:"aif";}s:8:"viewable";i:0;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc new file mode 100644 index 0000000..a0e8a2b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc @@ -0,0 +1 @@ +|a:28:{s:7:"comment";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:7:"1.1.3.1";s:9:"callbacks";s:88:"registerEventListeners|getItemLinks|getItemSummaries|getSiteAdminViews|getItemAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:4:"exif";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.1.0";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:2:"gd";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.1.1";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:8:"httpauth";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.0";s:9:"callbacks";s:40:"getSiteAdminViews|registerEventListeners";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:15;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:5;}}s:5:"icons";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.1.2";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:10:"imageframe";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.5";s:9:"callbacks";s:0:"";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:2;}}s:7:"itemadd";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.0";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:8:"keyalbum";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:7:"1.0.0.2";s:9:"callbacks";s:34:"getSiteAdminViews|getItemSummaries";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:2;}}s:8:"linkitem";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:7:"1.1.2.1";s:9:"callbacks";s:40:"registerEventListeners|getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:10:"permalinks";a:6:{s:6:"active";s:1:"0";s:9:"available";i:1;s:7:"version";s:5:"1.0.8";s:9:"callbacks";s:40:"registerEventListeners|getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:9:"publishxp";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:7:"1.0.7.1";s:9:"callbacks";s:0:"";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:6:"rating";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.8";s:9:"callbacks";s:57:"getSiteAdminViews|getItemSummaries|registerEventListeners";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:3;}}s:9:"rearrange";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.5";s:9:"callbacks";s:30:"getItemLinks|getItemAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:7:"replica";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.0";s:9:"callbacks";s:30:"getItemLinks|getItemAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:7:"rewrite";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:8:"1.1.13.2";s:9:"callbacks";s:40:"getSiteAdminViews|registerEventListeners";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:5;}}s:6:"search";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.5";s:9:"callbacks";s:0:"";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:10:"shutterfly";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:7:"1.0.7.1";s:9:"callbacks";s:12:"getItemLinks";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:3;}}s:7:"sitemap";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.3";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:9:"slideshow";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.5";s:9:"callbacks";s:12:"getItemLinks";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:4;}}s:9:"thumbnail";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:7:"1.0.9.1";s:9:"callbacks";s:40:"getSiteAdminViews|registerEventListeners";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:12:"uploadapplet";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.0.7";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:6:"webdav";a:6:{s:6:"active";s:1:"0";s:9:"available";i:1;s:7:"version";s:7:"1.0.0.2";s:9:"callbacks";s:53:"getItemLinks|getSiteAdminViews|registerEventListeners";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:17;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:5;}}s:4:"core";a:6:{s:9:"available";i:1;s:7:"version";s:7:"1.2.0.4";s:9:"callbacks";s:104:"registerEventListeners|getItemLinks|getSystemLinks|getSiteAdminViews|getUserAdminViews|getItemAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:18;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:4;}s:6:"active";i:1;}s:6:"ffmpeg";a:5:{s:9:"available";i:1;s:7:"version";s:5:"1.0.7";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:11:"imagemagick";a:5:{s:9:"available";i:1;s:7:"version";s:5:"1.1.1";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:9:"thumbpage";a:5:{s:9:"available";i:1;s:7:"version";s:5:"1.0.5";s:9:"callbacks";s:22:"registerEventListeners";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:13:"archiveupload";a:5:{s:9:"available";i:1;s:7:"version";s:5:"1.0.6";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}s:6:"netpbm";a:5:{s:9:"available";i:1;s:7:"version";s:5:"1.1.1";s:9:"callbacks";s:17:"getSiteAdminViews";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredModuleApi";a:2:{i:0;i:3;i:1;i:0;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryStorage_describeEntity.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryStorage_describeEntity.inc new file mode 100644 index 0000000..bf73914 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryStorage_describeEntity.inc @@ -0,0 +1 @@ +|a:17:{s:14:"GalleryComment";a:4:{s:7:"members";a:6:{s:11:"commenterId";a:3:{s:4:"type";i:1;s:4:"size";i:4;s:7:"notNull";i:1;}s:4:"host";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";i:1;}s:7:"subject";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}s:7:"comment";a:3:{s:4:"type";i:4;s:4:"size";i:1;s:15:"external-access";i:3;}s:4:"date";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:6:"author";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}}s:6:"parent";s:18:"GalleryChildEntity";s:6:"module";s:7:"comment";s:6:"linked";a:0:{}}s:15:"GalleryLinkItem";a:4:{s:7:"members";a:1:{s:4:"link";a:4:{s:4:"type";i:4;s:4:"size";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:11:"GalleryItem";s:6:"module";s:8:"linkitem";s:6:"linked";a:0:{}}s:14:"ThumbnailImage";a:4:{s:7:"members";a:5:{s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}s:4:"size";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:13:"itemMimeTypes";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}}s:6:"parent";s:23:"GalleryFileSystemEntity";s:6:"module";s:9:"thumbnail";s:6:"linked";a:0:{}}s:16:"GalleryAlbumItem";a:4:{s:7:"members";a:3:{s:5:"theme";a:2:{s:4:"type";i:2;s:4:"size";i:1;}s:7:"orderBy";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:14:"orderDirection";a:2:{s:4:"type";i:2;s:4:"size";i:1;}}s:6:"parent";s:11:"GalleryItem";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:20:"GalleryAnimationItem";a:4:{s:7:"members";a:2:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:2:{i:0;s:5:"width";i:1;s:6:"height";}}s:18:"GalleryChildEntity";a:4:{s:7:"members";a:1:{s:8:"parentId";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}}s:6:"parent";s:13:"GalleryEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:15:"GalleryDataItem";a:4:{s:7:"members";a:2:{s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}s:4:"size";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:11:"GalleryItem";s:6:"module";s:4:"core";s:6:"linked";a:2:{i:0;s:8:"mimeType";i:1;s:4:"size";}}s:17:"GalleryDerivative";a:4:{s:7:"members";a:8:{s:18:"derivativeSourceId";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:20:"derivativeOperations";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:15:"derivativeOrder";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:14:"derivativeSize";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}s:14:"derivativeType";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:8:"mimeType";a:4:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";i:1;s:15:"external-access";i:3;}s:20:"postFilterOperations";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:8:"isBroken";a:1:{s:4:"type";i:8;}}s:6:"parent";s:18:"GalleryChildEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:22:"GalleryDerivativeImage";a:4:{s:7:"members";a:2:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:17:"GalleryDerivative";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:13:"GalleryEntity";a:4:{s:7:"members";a:8:{s:2:"id";a:3:{s:4:"type";i:33;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:17:"creationTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:3;}s:10:"isLinkable";a:2:{s:4:"type";i:8;s:7:"notNull";i:1;}s:6:"linkId";a:1:{s:4:"type";i:1;}s:21:"modificationTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:12:"serialNumber";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:10:"entityType";a:4:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:14:"onLoadHandlers";a:2:{s:4:"type";i:2;s:4:"size";i:2;}}s:6:"parent";N;s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:23:"GalleryFileSystemEntity";a:4:{s:7:"members";a:1:{s:13:"pathComponent";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}}s:6:"parent";s:18:"GalleryChildEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:12:"GalleryGroup";a:4:{s:7:"members";a:2:{s:9:"groupType";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:9:"groupName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}}s:6:"parent";s:13:"GalleryEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:11:"GalleryItem";a:4:{s:7:"members";a:9:{s:18:"canContainChildren";a:3:{s:4:"type";i:8;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:11:"description";a:3:{s:4:"type";i:4;s:4:"size";i:1;s:15:"external-access";i:3;}s:8:"keywords";a:3:{s:4:"type";i:2;s:4:"size";i:4;s:15:"external-access";i:3;}s:7:"ownerId";a:2:{s:4:"type";i:1;s:7:"notNull";i:1;}s:8:"renderer";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:7:"summary";a:3:{s:4:"type";i:2;s:4:"size";i:4;s:15:"external-access";i:3;}s:5:"title";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}s:20:"viewedSinceTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:20:"originationTimestamp";a:3:{s:4:"type";i:1;s:7:"notNull";i:1;s:15:"external-access";i:3;}}s:6:"parent";s:23:"GalleryFileSystemEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:16:"GalleryMovieItem";a:4:{s:7:"members";a:3:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}s:8:"duration";a:2:{s:4:"type";i:1;s:15:"external-access";i:3;}}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:3:{i:0;s:5:"width";i:1;s:6:"height";i:2;s:8:"duration";}}s:16:"GalleryPhotoItem";a:4:{s:7:"members";a:2:{s:5:"width";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}s:6:"height";a:2:{s:4:"type";i:1;s:15:"external-access";i:1;}}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:2:{i:0;s:5:"width";i:1;s:6:"height";}}s:18:"GalleryUnknownItem";a:4:{s:7:"members";a:0:{}s:6:"parent";s:15:"GalleryDataItem";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}s:11:"GalleryUser";a:4:{s:7:"members";a:6:{s:8:"userName";a:4:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";i:1;s:15:"external-access";i:1;}s:8:"fullName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:3;}s:14:"hashedPassword";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:5:"email";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:8:"language";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:15:"external-access";i:1;}s:6:"locked";a:1:{s:4:"type";i:8;}}s:6:"parent";s:13:"GalleryEntity";s:6:"module";s:4:"core";s:6:"linked";a:0:{}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryStorage_describeMap.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryStorage_describeMap.inc new file mode 100644 index 0000000..f45d6ec --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/_all/0/0/GalleryStorage_describeMap.inc @@ -0,0 +1 @@ +|a:26:{s:17:"ExifPropertiesMap";a:3:{s:8:"property";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:8:"viewMode";a:2:{s:4:"type";i:1;s:4:"size";i:4;}s:8:"sequence";a:2:{s:4:"type";i:1;s:4:"size";i:4;}}s:9:"RatingMap";a:6:{s:8:"ratingId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"rating";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"sessionId";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:16:"remoteIdentifier";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}s:14:"RatingCacheMap";a:3:{s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"averageRating";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"voteCount";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:13:"ExternalIdMap";a:3:{s:10:"externalId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:10:"entityType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"entityId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:16:"GalleryAccessMap";a:3:{s:12:"accessListId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"userOrGroupId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:10:"permission";a:3:{s:4:"type";i:64;s:4:"size";i:4;s:7:"notNull";b:1;}}s:26:"GalleryAccessSubscriberMap";a:2:{s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:12:"accessListId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:31:"GalleryDerivativePreferencesMap";a:4:{s:6:"itemId";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:5:"order";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:14:"derivativeType";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:20:"derivativeOperations";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}s:26:"GalleryDescendentCountsMap";a:3:{s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:15:"descendentCount";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:17:"GalleryFactoryMap";a:7:{s:9:"classType";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:9:"className";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:6:"implId";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:8:"implPath";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:12:"implModuleId";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:5:"hints";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:11:"orderWeight";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}s:24:"GalleryItemAttributesMap";a:4:{s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"viewCount";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:11:"orderWeight";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:14:"parentSequence";a:3:{s:4:"type";i:2;s:4:"size";i:4;s:19:"notNullEmptyAllowed";b:1;}}s:21:"GalleryMaintenanceMap";a:5:{s:5:"runId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"taskId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"timestamp";a:2:{s:4:"type";i:1;s:4:"size";i:2;}s:7:"success";a:2:{s:4:"type";i:8;s:4:"size";i:2;}s:7:"details";a:2:{s:4:"type";i:4;s:4:"size";i:1;}}s:18:"GalleryMimeTypeMap";a:3:{s:9:"extension";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"viewable";a:2:{s:4:"type";i:8;s:4:"size";i:2;}}s:23:"GalleryPermissionSetMap";a:5:{s:6:"module";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:10:"permission";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"description";a:2:{s:4:"type";i:2;s:4:"size";i:4;}s:4:"bits";a:3:{s:4:"type";i:64;s:4:"size";i:2;s:7:"notNull";b:1;}s:5:"flags";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:16:"GalleryPluginMap";a:3:{s:10:"pluginType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"pluginId";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"active";a:3:{s:4:"type";i:8;s:4:"size";i:2;s:7:"notNull";b:1;}}s:23:"GalleryPluginPackageMap";a:6:{s:10:"pluginType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"pluginId";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:11:"packageName";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:14:"packageVersion";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:12:"packageBuild";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"locked";a:3:{s:4:"type";i:8;s:4:"size";i:2;s:7:"notNull";b:1;}}s:25:"GalleryPluginParameterMap";a:5:{s:10:"pluginType";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:8:"pluginId";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"parameterName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:14:"parameterValue";a:3:{s:4:"type";i:4;s:4:"size";i:1;s:19:"notNullEmptyAllowed";b:1;}}s:25:"GalleryRecoverPasswordMap";a:3:{s:8:"userName";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:10:"authString";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:14:"requestExpires";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:17:"GallerySessionMap";a:6:{s:2:"id";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:16:"remoteIdentifier";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:17:"creationTimestamp";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:21:"modificationTimestamp";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"data";a:2:{s:4:"type";i:4;s:4:"size";i:4;}}s:26:"GalleryToolkitOperationMap";a:4:{s:4:"name";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:13:"parametersCrc";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:14:"outputMimeType";a:2:{s:4:"type";i:2;s:4:"size";i:2;}s:11:"description";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}s:34:"GalleryToolkitOperationMimeTypeMap";a:4:{s:13:"operationName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"toolkitId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"priority";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:35:"GalleryToolkitOperationParameterMap";a:4:{s:13:"operationName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"position";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"type";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"description";a:2:{s:4:"type";i:2;s:4:"size";i:4;}}s:25:"GalleryToolkitPropertyMap";a:3:{s:4:"name";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"type";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"description";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}}s:33:"GalleryToolkitPropertyMimeTypeMap";a:3:{s:12:"propertyName";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:9:"toolkitId";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}s:8:"mimeType";a:3:{s:4:"type";i:2;s:4:"size";i:2;s:7:"notNull";b:1;}}s:19:"GalleryUserGroupMap";a:2:{s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:7:"groupId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}s:15:"GalleryCacheMap";a:7:{s:3:"key";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:5:"value";a:2:{s:4:"type";i:4;s:4:"size";i:4;}s:6:"userId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:6:"itemId";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:4:"type";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:9:"timestamp";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:7:"isEmpty";a:2:{s:4:"type";i:8;s:4:"size";i:2;}}s:15:"FailedLoginsMap";a:3:{s:8:"userName";a:3:{s:4:"type";i:2;s:4:"size";i:1;s:7:"notNull";b:1;}s:5:"count";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}s:11:"lastAttempt";a:3:{s:4:"type";i:1;s:4:"size";i:2;s:7:"notNull";b:1;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/archiveupload/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/archiveupload/0/0/0.inc new file mode 100644 index 0000000..0bec18d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/archiveupload/0/0/0.inc @@ -0,0 +1 @@ +|a:6:{s:10:"removeMeta";s:1:"1";s:9:"unzipPath";s:0:"";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.6";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/comment/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/comment/0/0/0.inc new file mode 100644 index 0000000..df1b713 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/comment/0/0/0.inc @@ -0,0 +1 @@ +|a:7:{s:15:"comments.latest";s:1:"1";s:13:"comments.show";s:2:"10";s:16:"validation.level";s:4:"HIGH";s:10:"_callbacks";s:88:"registerEventListeners|getItemLinks|getItemSummaries|getSiteAdminViews|getItemAdminViews";s:16:"_requiredCoreApi";s:3:"7,5";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:7:"1.1.3.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/core/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/core/0/0/0.inc new file mode 100644 index 0000000..c43e0cf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/core/0/0/0.inc @@ -0,0 +1 @@ +|a:32:{s:12:"acceleration";s:85:"a:2:{s:5:"guest";a:1:{s:4:"type";s:4:"none";}s:4:"user";a:1:{s:4:"type";s:4:"none";}}";s:17:"core.repositories";s:69:"a:3:{s:8:"released";i:1;s:12:"experimental";i:1;s:9:"community";i:1;}";s:16:"default.language";s:5:"es_ES";s:28:"default.newAlbumsUseDefaults";s:5:"false";s:15:"default.orderBy";s:11:"orderWeight";s:22:"default.orderDirection";s:1:"1";s:13:"default.theme";s:5:"abeto";s:11:"exec.beNice";s:1:"0";s:19:"exec.expectedStatus";s:1:"0";s:11:"format.date";s:2:"%x";s:15:"format.datetime";s:2:"%c";s:11:"format.time";s:2:"%X";s:26:"id.accessListCompacterLock";s:1:"1";s:13:"id.adminGroup";s:1:"3";s:15:"id.allUserGroup";s:1:"2";s:16:"id.anonymousUser";s:1:"5";s:17:"id.everybodyGroup";s:1:"4";s:12:"id.rootAlbum";s:1:"7";s:23:"language.useBrowserPref";s:1:"0";s:11:"lock.system";s:8:"database";s:11:"misc.markup";s:6:"bbcode";s:21:"permissions.directory";s:4:"0755";s:16:"permissions.file";s:4:"0644";s:21:"repository.updateTime";s:10:"1183658620";s:25:"session.inactivityTimeout";s:6:"604800";s:16:"session.lifetime";s:7:"1814400";s:20:"setup.login.attempts";s:1:"0";s:16:"validation.level";s:6:"MEDIUM";s:10:"_callbacks";s:104:"registerEventListeners|getItemLinks|getSystemLinks|getSiteAdminViews|getUserAdminViews|getItemAdminViews";s:16:"_requiredCoreApi";s:4:"7,18";s:18:"_requiredModuleApi";s:3:"3,4";s:8:"_version";s:7:"1.2.0.4";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/exif/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/exif/0/0/0.inc new file mode 100644 index 0000000..014c916 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/exif/0/0/0.inc @@ -0,0 +1 @@ +|a:5:{s:9:"addOption";s:1:"4";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:4:"7,10";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.1.0";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/ffmpeg/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/ffmpeg/0/0/0.inc new file mode 100644 index 0000000..f4e773b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/ffmpeg/0/0/0.inc @@ -0,0 +1 @@ +|a:6:{s:4:"path";s:0:"";s:12:"useWatermark";s:1:"0";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.7";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/gd/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/gd/0/0/0.inc new file mode 100644 index 0000000..0a8346c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/gd/0/0/0.inc @@ -0,0 +1 @@ +|a:5:{s:11:"jpegQuality";s:2:"75";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.1.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/httpauth/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/httpauth/0/0/0.inc new file mode 100644 index 0000000..83cf2bb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/httpauth/0/0/0.inc @@ -0,0 +1 @@ +|a:10:{s:8:"authName";s:7:"Gallery";s:15:"authtypePattern";s:2:"//";s:14:"httpAuthPlugin";s:1:"1";s:11:"useGlobally";s:0:"";s:15:"usernamePattern";s:26:"/^(.+\\)?([^\\@]+)(@.+)?$/";s:15:"usernameReplace";s:2:"$2";s:10:"_callbacks";s:40:"getSiteAdminViews|registerEventListeners";s:16:"_requiredCoreApi";s:4:"7,15";s:18:"_requiredModuleApi";s:3:"3,5";s:8:"_version";s:5:"1.0.0";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/icons/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/icons/0/0/0.inc new file mode 100644 index 0000000..42e966f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/icons/0/0/0.inc @@ -0,0 +1 @@ +|a:5:{s:8:"iconpack";s:4:"silk";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.1.2";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/imageframe/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/imageframe/0/0/0.inc new file mode 100644 index 0000000..bf5ecd4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/imageframe/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:0:"";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,2";s:8:"_version";s:5:"1.0.5";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/imagemagick/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/imagemagick/0/0/0.inc new file mode 100644 index 0000000..2c317ca --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/imagemagick/0/0/0.inc @@ -0,0 +1 @@ +|a:8:{s:11:"cmykSupport";s:4:"none";s:11:"jpegQuality";s:2:"75";s:4:"path";s:0:"";s:9:"versionOk";s:0:"";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.1.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/itemadd/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/itemadd/0/0/0.inc new file mode 100644 index 0000000..3f816e3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/itemadd/0/0/0.inc @@ -0,0 +1 @@ +|a:6:{s:10:"fromserver";s:2:"on";s:7:"fromweb";s:5:"admin";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.0";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/keyalbum/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/keyalbum/0/0/0.inc new file mode 100644 index 0000000..6bcaf8c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/keyalbum/0/0/0.inc @@ -0,0 +1 @@ +|a:11:{s:11:"description";s:0:"";s:7:"orderBy";s:0:"";s:14:"orderDirection";s:0:"";s:5:"split";s:2:";,";s:12:"summaryLinks";s:3:"all";s:7:"themeId";s:0:"";s:15:"themeSettingsId";s:2:"10";s:10:"_callbacks";s:34:"getSiteAdminViews|getItemSummaries";s:16:"_requiredCoreApi";s:4:"7,10";s:18:"_requiredModuleApi";s:3:"3,2";s:8:"_version";s:7:"1.0.0.2";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/linkitem/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/linkitem/0/0/0.inc new file mode 100644 index 0000000..6fa0512 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/linkitem/0/0/0.inc @@ -0,0 +1 @@ +|a:7:{s:14:"arrowWatermark";s:1:"1";s:12:"snapshotExec";s:9:"khtml2png";s:11:"urlSnapshot";s:1:"0";s:10:"_callbacks";s:40:"registerEventListeners|getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:7:"1.1.2.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/netpbm/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/netpbm/0/0/0.inc new file mode 100644 index 0000000..283185a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/netpbm/0/0/0.inc @@ -0,0 +1 @@ +|a:9:{s:8:"bmptopnm";s:8:"bmptopnm";s:11:"jpegQuality";s:2:"75";s:4:"path";s:0:"";s:7:"pnmcomp";s:7:"pnmcomp";s:9:"pnmtojpeg";s:9:"pnmtojpeg";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.1.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/permalinks/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/permalinks/0/0/0.inc new file mode 100644 index 0000000..f107267 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/permalinks/0/0/0.inc @@ -0,0 +1 @@ +|a:5:{s:13:"autoPermalink";s:1:"1";s:10:"_callbacks";s:40:"registerEventListeners|getSiteAdminViews";s:16:"_requiredCoreApi";s:4:"7,10";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.8";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/publishxp/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/publishxp/0/0/0.inc new file mode 100644 index 0000000..c02af31 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/publishxp/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:0:"";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:7:"1.0.7.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/0/0.inc new file mode 100644 index 0000000..2a1b528 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/0/0.inc @@ -0,0 +1 @@ +|a:11:{s:16:"allowAlbumRating";s:1:"0";s:11:"description";s:0:"";s:8:"minLimit";s:1:"2";s:7:"orderBy";s:15:"RatingSortOrder";s:14:"orderDirection";s:4:"desc";s:7:"themeId";s:0:"";s:15:"themeSettingsId";s:3:"293";s:10:"_callbacks";s:57:"getSiteAdminViews|getItemSummaries|registerEventListeners";s:16:"_requiredCoreApi";s:4:"7,10";s:18:"_requiredModuleApi";s:3:"3,3";s:8:"_version";s:5:"1.0.8";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/0/7.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/0/7.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/0/7.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/11.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/11.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/11.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/13.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/13.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/13.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/14.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/14.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/14.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/15.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/15.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/0/1/15.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/2/121.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/2/121.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/2/121.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/4/144.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/4/144.inc new file mode 100644 index 0000000..868d235 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/4/144.inc @@ -0,0 +1 @@ +|a:1:{s:7:"enabled";s:1:"0";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/4/146.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/4/146.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/4/146.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/5/156.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/5/156.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/5/156.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/6/162.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/6/162.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/6/162.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/6/168.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/6/168.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/6/168.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/8/183.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/8/183.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/8/183.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/9/193.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/9/193.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/9/193.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/9/194.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/9/194.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/1/9/194.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/0/205.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/0/205.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/0/205.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/3/232.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/3/232.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/3/232.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/5/250.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/5/250.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/5/250.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/9/298.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/9/298.inc new file mode 100644 index 0000000..868d235 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/2/9/298.inc @@ -0,0 +1 @@ +|a:1:{s:7:"enabled";s:1:"0";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rating/3/1/316.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/3/1/316.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rating/3/1/316.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rearrange/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rearrange/0/0/0.inc new file mode 100644 index 0000000..34763f6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rearrange/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:30:"getItemLinks|getItemAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.5";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/replica/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/replica/0/0/0.inc new file mode 100644 index 0000000..9ae4cc9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/replica/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:30:"getItemLinks|getItemAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.0";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/rewrite/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/rewrite/0/0/0.inc new file mode 100644 index 0000000..402f565 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/rewrite/0/0/0.inc @@ -0,0 +1 @@ +|a:20:{s:10:"accessList";s:6:"a:0:{}";s:11:"activeRules";s:196:"a:2:{s:7:"rewrite";a:2:{i:0;a:1:{s:7:"pattern";s:8:"v/%path%";}i:1;a:1:{s:7:"pattern";s:36:"d/%itemId%-%serialNumber%/%fileName%";}}s:7:"sitemap";a:1:{i:0;a:1:{s:7:"pattern";s:11:"sitemap.xml";}}}";s:17:"allowEmptyReferer";s:1:"1";s:14:"history.webdav";s:114:"a:2:{s:7:"connect";a:1:{s:7:"pattern";s:7:"w%path%";}s:8:"davmount";a:1:{s:7:"pattern";s:17:"v/%path%.davmount";}}";s:29:"isapirewrite.embeddedLocation";s:0:"";s:19:"isapirewrite.forced";s:1:"0";s:28:"isapirewrite.galleryLocation";s:0:"";s:21:"isapirewrite.httpdini";s:0:"";s:27:"modrewrite.embeddedHtaccess";s:0:"";s:27:"modrewrite.embeddedLocation";s:0:"";s:26:"modrewrite.galleryLocation";s:10:"/gallery2/";s:17:"modrewrite.status";s:29:"a:1:{s:11:"needOptions";b:0;}";s:8:"parserId";s:10:"modrewrite";s:15:"pathinfo.forced";s:1:"0";s:15:"pathinfo.parser";s:6:"a:0:{}";s:9:"shortUrls";s:920:"a:3:{i:0;a:4:{s:5:"match";a:1:{s:4:"view";s:13:"core.ShowItem";}s:7:"pattern";s:8:"v/%path%";s:9:"functions";a:3:{s:4:"path";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:9:"parsePath";}s:4:"page";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:9:"parsePage";}s:8:"language";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:13:"parseLanguage";}}s:6:"onLoad";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:18:"loadItemIdFromPath";}}i:1;a:3:{s:5:"match";a:1:{s:4:"view";s:17:"core.DownloadItem";}s:7:"pattern";s:36:"d/%itemId%-%serialNumber%/%fileName%";s:9:"functions";a:2:{s:12:"serialNumber";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:17:"parseSerialNumber";}s:8:"fileName";a:3:{i:0;s:7:"rewrite";i:1;s:19:"RewriteSimpleHelper";i:2;s:13:"parseFileName";}}}i:2;a:2:{s:5:"match";a:1:{s:4:"view";s:15:"sitemap.Sitemap";}s:7:"pattern";s:11:"sitemap.xml";}}";s:10:"_callbacks";s:40:"getSiteAdminViews|registerEventListeners";s:16:"_requiredCoreApi";s:3:"7,5";s:18:"_requiredModuleApi";s:3:"3,5";s:8:"_version";s:8:"1.1.13.2";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/search/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/search/0/0/0.inc new file mode 100644 index 0000000..73a8138 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/search/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:0:"";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.5";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/shutterfly/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/shutterfly/0/0/0.inc new file mode 100644 index 0000000..d01e310 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/shutterfly/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:12:"getItemLinks";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,3";s:8:"_version";s:7:"1.0.7.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/sitemap/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/sitemap/0/0/0.inc new file mode 100644 index 0000000..4795688 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/sitemap/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,5";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.3";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/slideshow/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/slideshow/0/0/0.inc new file mode 100644 index 0000000..032d706 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/slideshow/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:12:"getItemLinks";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,4";s:8:"_version";s:5:"1.0.5";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/thumbnail/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/thumbnail/0/0/0.inc new file mode 100644 index 0000000..75f8a05 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/thumbnail/0/0/0.inc @@ -0,0 +1 @@ +|a:5:{s:12:"id.container";s:3:"137";s:10:"_callbacks";s:40:"getSiteAdminViews|registerEventListeners";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:7:"1.0.9.1";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/thumbpage/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/thumbpage/0/0/0.inc new file mode 100644 index 0000000..d89142b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/thumbpage/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:22:"registerEventListeners";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.5";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/uploadapplet/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/uploadapplet/0/0/0.inc new file mode 100644 index 0000000..813e589 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/uploadapplet/0/0/0.inc @@ -0,0 +1 @@ +|a:6:{s:22:"uploaddefaultVariables";s:0:"";s:23:"uploadoverrideVariables";s:37:"toSysOut=true|htmlEscapeCaptions=true";s:10:"_callbacks";s:17:"getSiteAdminViews";s:16:"_requiredCoreApi";s:3:"7,4";s:18:"_requiredModuleApi";s:3:"3,0";s:8:"_version";s:5:"1.0.7";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/module/webdav/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/module/webdav/0/0/0.inc new file mode 100644 index 0000000..490aad5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/module/webdav/0/0/0.inc @@ -0,0 +1 @@ +|a:4:{s:10:"_callbacks";s:53:"getItemLinks|getSiteAdminViews|registerEventListeners";s:16:"_requiredCoreApi";s:4:"7,17";s:18:"_requiredModuleApi";s:3:"3,5";s:8:"_version";s:7:"1.0.0.2";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/community/index.repository b/Source/gallery2/g2data_2e6106f57b/cache/repository/community/index.repository new file mode 100644 index 0000000..0127150 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/community/index.repository @@ -0,0 +1 @@ +a:2:{s:7:"modules";a:20:{s:9:"integrity";a:2:{s:6:"header";a:5:{s:2:"id";s:9:"integrity";s:7:"version";s:5:"0.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"848";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"da_DK";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"hu_HU";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_BR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"sl_SI";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"fi_FI";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"vi_VN";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"bg_BG";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"he_IL";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:15:"Integrity Check";s:11:"description";s:49:"Check integrity of the Gallery database and files";s:10:"groupLabel";s:7:"Gallery";}}}s:4:"core";a:3:{s:6:"header";a:9:{s:2:"id";s:4:"core";s:7:"version";s:6:"1.2.16";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:32;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:6;}s:15:"stringsRevision";s:5:"16413";s:14:"buildTimestamp";s:5:"16538";s:14:"coreApiVersion";a:2:{i:0;i:7;i:1;i:33;}s:16:"moduleApiVersion";a:2:{i:0;i:3;i:1;i:7;}s:15:"themeApiVersion";a:2:{i:0;i:2;i:1;i:6;}}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"da_DK";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"hu_HU";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"nl_NL";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_BR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"sl_SI";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"sv_SE";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"vi_VN";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"bg_BG";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_CN";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"he_IL";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:9:{i:14597;a:39:{s:2:"cs";s:5:"14408";s:5:"pt_BR";s:5:"14408";s:2:"es";s:5:"14408";s:2:"eu";s:5:"14408";s:5:"en_GB";s:5:"14528";s:2:"is";s:5:"14408";s:2:"no";s:5:"14597";s:2:"hu";s:5:"14408";s:2:"sk";s:5:"14510";s:2:"vi";s:5:"14408";s:2:"uk";s:5:"14408";s:2:"ro";s:5:"14510";s:2:"ru";s:5:"14408";s:2:"af";s:5:"14408";s:5:"es_AR";s:5:"14408";s:2:"el";s:5:"14408";s:2:"ar";s:5:"14408";s:2:"fr";s:5:"14408";s:2:"et";s:5:"14420";s:2:"nl";s:5:"14408";s:2:"pl";s:5:"14408";s:5:"es_MX";s:5:"14408";s:2:"it";s:5:"14408";s:2:"sl";s:5:"14408";s:2:"lt";s:5:"14408";s:2:"pt";s:5:"14408";s:2:"ca";s:5:"14420";s:2:"da";s:5:"14408";s:2:"sr";s:5:"14408";s:2:"tr";s:5:"14597";s:2:"ga";s:5:"14408";s:2:"bg";s:5:"14524";s:2:"de";s:5:"14408";s:2:"sv";s:5:"14597";s:2:"ja";s:5:"14510";s:5:"zh_TW";s:5:"14408";s:2:"he";s:5:"14408";s:2:"fi";s:5:"14408";s:5:"zh_CN";s:5:"14408";}i:14722;a:40:{s:2:"af";s:5:"14722";s:2:"ar";s:5:"14722";s:2:"bg";s:5:"14722";s:2:"ca";s:5:"14722";s:2:"cs";s:5:"14722";s:2:"da";s:5:"14722";s:2:"de";s:5:"14722";s:2:"el";s:5:"14722";s:5:"en_GB";s:5:"14722";s:2:"es";s:5:"14722";s:5:"es_AR";s:5:"14722";s:5:"es_MX";s:5:"14722";s:2:"et";s:5:"14722";s:2:"eu";s:5:"14722";s:2:"fi";s:5:"14722";s:2:"fr";s:5:"14722";s:2:"ga";s:5:"14722";s:2:"he";s:5:"14722";s:2:"hu";s:5:"14722";s:2:"is";s:5:"14722";s:2:"it";s:5:"14722";s:2:"ja";s:5:"14722";s:2:"lt";s:5:"14722";s:2:"lv";s:5:"14722";s:2:"nl";s:5:"14722";s:2:"no";s:5:"14722";s:2:"pl";s:5:"14722";s:2:"pt";s:5:"14722";s:5:"pt_BR";s:5:"14722";s:2:"ro";s:5:"14722";s:2:"ru";s:5:"14722";s:2:"sk";s:5:"14722";s:2:"sl";s:5:"14722";s:2:"sr";s:5:"14722";s:2:"sv";s:5:"14722";s:2:"tr";s:5:"14722";s:2:"uk";s:5:"14722";s:2:"vi";s:5:"14722";s:5:"zh_CN";s:5:"14722";s:5:"zh_TW";s:5:"14722";}i:14928;a:40:{s:2:"af";s:5:"14933";s:2:"ar";s:5:"14933";s:2:"bg";s:5:"14933";s:2:"ca";s:5:"14933";s:2:"cs";s:5:"14933";s:2:"da";s:5:"14933";s:2:"de";s:5:"14933";s:2:"el";s:5:"14933";s:5:"en_GB";s:5:"14933";s:2:"es";s:5:"14933";s:5:"es_AR";s:5:"14933";s:5:"es_MX";s:5:"14933";s:2:"et";s:5:"14933";s:2:"eu";s:5:"14933";s:2:"fi";s:5:"14933";s:2:"fr";s:5:"14933";s:2:"ga";s:5:"14933";s:2:"he";s:5:"14933";s:2:"hu";s:5:"14933";s:2:"is";s:5:"14933";s:2:"it";s:5:"14933";s:2:"ja";s:5:"14933";s:2:"lt";s:5:"14933";s:2:"lv";s:5:"14933";s:2:"nl";s:5:"14933";s:2:"no";s:5:"14928";s:2:"pl";s:5:"14933";s:2:"pt";s:5:"14933";s:5:"pt_BR";s:5:"14933";s:2:"ro";s:5:"14933";s:2:"ru";s:5:"14933";s:2:"sk";s:5:"14933";s:2:"sl";s:5:"14933";s:2:"sr";s:5:"14933";s:2:"sv";s:5:"14933";s:2:"tr";s:5:"14933";s:2:"uk";s:5:"14933";s:2:"vi";s:5:"14933";s:5:"zh_CN";s:5:"14933";s:5:"zh_TW";s:5:"14954";}i:15845;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}i:16097;a:41:{s:2:"af";s:5:"16097";s:2:"ar";s:5:"16097";s:2:"bg";s:5:"16097";s:2:"ca";s:5:"16097";s:2:"cs";s:5:"16097";s:2:"da";s:5:"16097";s:2:"de";s:5:"16097";s:2:"el";s:5:"16097";s:5:"en_GB";s:5:"16097";s:2:"es";s:5:"16097";s:5:"es_AR";s:5:"16097";s:5:"es_MX";s:5:"16097";s:2:"et";s:5:"16097";s:2:"eu";s:5:"16097";s:2:"fi";s:5:"16097";s:2:"fr";s:5:"16097";s:2:"ga";s:5:"16097";s:2:"he";s:5:"16097";s:2:"hu";s:5:"16097";s:2:"is";s:5:"16097";s:2:"it";s:5:"16097";s:2:"ja";s:5:"16097";s:2:"ko";s:5:"16097";s:2:"lt";s:5:"16097";s:2:"lv";s:5:"16097";s:2:"nl";s:5:"16097";s:2:"no";s:5:"16097";s:2:"pl";s:5:"16097";s:2:"pt";s:5:"16097";s:5:"pt_BR";s:5:"16097";s:2:"ro";s:5:"16097";s:2:"ru";s:5:"16097";s:2:"sk";s:5:"16097";s:2:"sl";s:5:"16097";s:2:"sr";s:5:"16097";s:2:"sv";s:5:"16097";s:2:"tr";s:5:"16097";s:2:"uk";s:5:"16097";s:2:"vi";s:5:"16097";s:5:"zh_CN";s:5:"16097";s:5:"zh_TW";s:5:"16097";}i:16237;a:41:{s:2:"af";s:5:"16239";s:2:"ar";s:5:"16239";s:2:"bg";s:5:"16239";s:2:"ca";s:5:"16239";s:2:"cs";s:5:"16239";s:2:"da";s:5:"16239";s:2:"de";s:5:"16239";s:2:"el";s:5:"16237";s:5:"en_GB";s:5:"16239";s:2:"es";s:5:"16239";s:5:"es_AR";s:5:"16239";s:5:"es_MX";s:5:"16239";s:2:"et";s:5:"16239";s:2:"eu";s:5:"16239";s:2:"fi";s:5:"16239";s:2:"fr";s:5:"16239";s:2:"ga";s:5:"16239";s:2:"he";s:5:"16239";s:2:"hu";s:5:"16239";s:2:"is";s:5:"16237";s:2:"it";s:5:"16239";s:2:"ja";s:5:"16239";s:2:"ko";s:5:"16239";s:2:"lt";s:5:"16239";s:2:"lv";s:5:"16239";s:2:"nl";s:5:"16239";s:2:"no";s:5:"16239";s:2:"pl";s:5:"16239";s:2:"pt";s:5:"16239";s:5:"pt_BR";s:5:"16239";s:2:"ro";s:5:"16239";s:2:"ru";s:5:"16239";s:2:"sk";s:5:"16239";s:2:"sl";s:5:"16239";s:2:"sr";s:5:"16239";s:2:"sv";s:5:"16239";s:2:"tr";s:5:"16239";s:2:"uk";s:5:"16239";s:2:"vi";s:5:"16239";s:5:"zh_CN";s:5:"16239";s:5:"zh_TW";s:5:"16239";}i:16284;a:41:{s:2:"af";s:5:"16284";s:2:"ar";s:5:"16284";s:2:"bg";s:5:"16284";s:2:"ca";s:5:"16284";s:2:"cs";s:5:"16284";s:2:"da";s:5:"16284";s:2:"de";s:5:"16284";s:2:"el";s:5:"16284";s:5:"en_GB";s:5:"16284";s:2:"es";s:5:"16284";s:5:"es_AR";s:5:"16284";s:5:"es_MX";s:5:"16284";s:2:"et";s:5:"16284";s:2:"eu";s:5:"16284";s:2:"fi";s:5:"16284";s:2:"fr";s:5:"16284";s:2:"ga";s:5:"16284";s:2:"he";s:5:"16284";s:2:"hu";s:5:"16284";s:2:"is";s:5:"16284";s:2:"it";s:5:"16284";s:2:"ja";s:5:"16284";s:2:"ko";s:5:"16284";s:2:"lt";s:5:"16284";s:2:"lv";s:5:"16284";s:2:"nl";s:5:"16284";s:2:"no";s:5:"16284";s:2:"pl";s:5:"16284";s:2:"pt";s:5:"16284";s:5:"pt_BR";s:5:"16284";s:2:"ro";s:5:"16284";s:2:"ru";s:5:"16284";s:2:"sk";s:5:"16284";s:2:"sl";s:5:"16284";s:2:"sr";s:5:"16313";s:2:"sv";s:5:"16284";s:2:"tr";s:5:"16284";s:2:"uk";s:5:"16284";s:2:"vi";s:5:"16284";s:5:"zh_CN";s:5:"16284";s:5:"zh_TW";s:5:"16284";}i:16376;a:41:{s:2:"af";s:5:"16377";s:2:"ar";s:5:"16377";s:2:"bg";s:5:"16377";s:2:"ca";s:5:"16377";s:2:"cs";s:5:"16377";s:2:"da";s:5:"16377";s:2:"de";s:5:"16377";s:2:"el";s:5:"16377";s:5:"en_GB";s:5:"16376";s:2:"es";s:5:"16377";s:5:"es_AR";s:5:"16377";s:5:"es_MX";s:5:"16377";s:2:"et";s:5:"16377";s:2:"eu";s:5:"16377";s:2:"fi";s:5:"16377";s:2:"fr";s:5:"16377";s:2:"ga";s:5:"16377";s:2:"he";s:5:"16377";s:2:"hu";s:5:"16377";s:2:"is";s:5:"16377";s:2:"it";s:5:"16377";s:2:"ja";s:5:"16377";s:2:"ko";s:5:"16377";s:2:"lt";s:5:"16377";s:2:"lv";s:5:"16377";s:2:"nl";s:5:"16377";s:2:"no";s:5:"16377";s:2:"pl";s:5:"16377";s:2:"pt";s:5:"16377";s:5:"pt_BR";s:5:"16377";s:2:"ro";s:5:"16377";s:2:"ru";s:5:"16377";s:2:"sk";s:5:"16376";s:2:"sl";s:5:"16377";s:2:"sr";s:5:"16377";s:2:"sv";s:5:"16377";s:2:"tr";s:5:"16377";s:2:"uk";s:5:"16377";s:2:"vi";s:5:"16377";s:5:"zh_CN";s:5:"16377";s:5:"zh_TW";s:5:"16377";}i:16413;a:41:{s:2:"af";s:5:"16377";s:2:"ar";s:5:"16377";s:2:"bg";s:5:"16377";s:2:"ca";s:5:"16377";s:2:"cs";s:5:"16377";s:2:"da";s:5:"16377";s:2:"de";s:5:"16435";s:2:"el";s:5:"16377";s:5:"en_GB";s:5:"16376";s:2:"es";s:5:"16377";s:5:"es_AR";s:5:"16377";s:5:"es_MX";s:5:"16377";s:2:"et";s:5:"16377";s:2:"eu";s:5:"16377";s:2:"fi";s:5:"16377";s:2:"fr";s:5:"16377";s:2:"ga";s:5:"16377";s:2:"he";s:5:"16377";s:2:"hu";s:5:"16377";s:2:"is";s:5:"16377";s:2:"it";s:5:"16377";s:2:"ja";s:5:"16377";s:2:"ko";s:5:"16377";s:2:"lt";s:5:"16377";s:2:"lv";s:5:"16377";s:2:"nl";s:5:"16377";s:2:"no";s:5:"16377";s:2:"pl";s:5:"16377";s:2:"pt";s:5:"16413";s:5:"pt_BR";s:5:"16377";s:2:"ro";s:5:"16377";s:2:"ru";s:5:"16377";s:2:"sk";s:5:"16376";s:2:"sl";s:5:"16377";s:2:"sr";s:5:"16377";s:2:"sv";s:5:"16377";s:2:"tr";s:5:"16377";s:2:"uk";s:5:"16377";s:2:"vi";s:5:"16377";s:5:"zh_CN";s:5:"16377";s:5:"zh_TW";s:5:"16377";}}}s:11:"addviaemail";a:2:{s:6:"header";a:5:{s:2:"id";s:11:"addviaemail";s:7:"version";s:5:"0.7.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"905";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"es_MX";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"et_EE";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"th_TH";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"zh_CN";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"zh_TW";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"Add via Email";s:11:"description";s:20:"Add via Email module";s:10:"groupLabel";s:6:"Import";}}}s:9:"slideshow";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"slideshow";s:7:"version";s:5:"1.0.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";i:10212;s:14:"buildTimestamp";s:3:"848";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:15:"Skyfievertoning";s:11:"description";s:15:"Skyfievertoning";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"cs_CZ";a:3:{s:4:"name";s:22:"Prezentace (slideshow)";s:11:"description";s:22:"Prezentace (slideshow)";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Fremviser";s:11:"description";s:9:"Fremviser";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Diashow";s:11:"description";s:7:"Diashow";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:19:"Presentación";s:11:"description";s:19:"Presentación";s:10:"groupLabel";s:7:"Mostrar";}s:5:"es_MX";a:3:{s:4:"name";s:19:"Presentación";s:11:"description";s:19:"Presentación";s:10:"groupLabel";s:7:"Mostrar";}s:5:"es_AR";a:3:{s:4:"name";s:19:"Presentación";s:11:"description";s:19:"Presentación";s:10:"groupLabel";s:7:"Mostrar";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Aukezpena";s:11:"description";s:9:"Aukezpena";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Diaporama";s:11:"description";s:9:"Diaporama";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:20:"Skaidrių peržiūra";s:11:"description";s:20:"Skaidrių peržiūra";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Diavetítés";s:11:"description";s:12:"Diavetítés";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Diashow";s:11:"description";s:7:"Diashow";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Pokaz slajdów";s:11:"description";s:14:"Pokaz slajdów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Mostrar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:16:"Projekcija slika";s:11:"description";s:16:"Projekcija slika";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Diaesitys";s:11:"description";s:9:"Diaesitys";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Bildspel";s:11:"description";s:8:"Bildspel";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Trình chiếu";s:11:"description";s:14:"Trình chiếu";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Slaytgösterisi";s:11:"description";s:15:"Slaytgösterisi";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Преглед";s:11:"description";s:14:"Преглед";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:17:"Слайд-шоу";s:11:"description";s:17:"Слайд-шоу";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"幻灯片放映";s:11:"description";s:15:"幻灯片放映";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"幻燈片放映";s:11:"description";s:15:"幻燈片放映";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"スライドショー";s:11:"description";s:21:"スライドショー";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:10212;a:26:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}}}s:9:"icalendar";a:2:{s:6:"header";a:5:{s:2:"id";s:9:"icalendar";s:7:"version";s:5:"0.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"847";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"en_GB";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"da_DK";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"de_DE";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"es_ES";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"es_MX";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"es_AR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"et_EE";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"el_GR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"is_IS";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"it_IT";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"no_NO";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"th_TH";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"he_IL";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"iCalendar";s:11:"description";s:22:"FIXME iCalendar format";s:10:"groupLabel";s:13:"Miscellaneous";}}}s:10:"bulkmanage";a:2:{s:6:"header";a:5:{s:2:"id";s:10:"bulkmanage";s:7:"version";s:5:"0.9.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:4:"1037";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"en_GB";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"et_EE";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"it_IT";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ru_RU";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"zh_CN";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"he_IL";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Bulk Manage";s:11:"description";s:37:"Facilitates the bulk editing of items";s:10:"groupLabel";s:11:"Bulk Manage";}}}s:12:"notification";a:2:{s:6:"header";a:5:{s:2:"id";s:12:"notification";s:7:"version";s:5:"0.9.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:1;}s:14:"buildTimestamp";s:3:"852";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"nl_NL";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"bg_BG";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"he_IL";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Notification";s:11:"description";s:53:"Allow users to be notified of events by subscription.";s:10:"groupLabel";s:7:"Gallery";}}}s:8:"download";a:2:{s:6:"header";a:5:{s:2:"id";s:8:"download";s:7:"version";s:5:"0.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:1;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"779";}s:12:"descriptions";a:42:{s:5:"en_US";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_CN";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Download";s:11:"description";s:54:"Support HTTP compression, partial downloads & resuming";s:10:"groupLabel";s:7:"Gallery";}}}s:9:"cmmigrate";a:2:{s:6:"header";a:5:{s:2:"id";s:9:"cmmigrate";s:7:"version";s:5:"0.5.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"848";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"et_EE";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"lv_LV";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"th_TH";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"bg_BG";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"zh_CN";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"zh_TW";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ko_KR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"ar_SA";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:20:"Coppermine Migration";s:11:"description";s:58:"Migrate your Coppermine Gallery albums to Gallery 2 albums";s:10:"groupLabel";s:6:"Import";}}}s:8:"calendar";a:2:{s:6:"header";a:5:{s:2:"id";s:8:"calendar";s:7:"version";s:5:"0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"848";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ru_RU";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"zh_CN";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"zh_TW";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ko_KR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ja_JP";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Calendar";s:11:"description";s:22:"FIXME An Ajax Calendar";s:10:"groupLabel";s:13:"Miscellaneous";}}}s:10:"statistics";a:2:{s:6:"header";a:5:{s:2:"id";s:10:"statistics";s:7:"version";s:5:"0.5.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:4:"1121";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Statistics";s:11:"description";s:51:"Provides statistics about this Gallery installation";s:10:"groupLabel";s:10:"Extra Data";}}}s:9:"timerange";a:2:{s:6:"header";a:5:{s:2:"id";s:9:"timerange";s:7:"version";s:5:"0.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:1;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"847";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Time Range";s:11:"description";s:69:"Support partial downloads of items with durations based on time codes";s:10:"groupLabel";s:7:"Gallery";}}}s:3:"map";a:3:{s:6:"header";a:6:{s:2:"id";s:3:"map";s:7:"version";s:7:"0.4.10c";s:15:"requiredCoreApi";a:2:{i:0;i:6;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:0;}s:15:"stringsRevision";s:3:"847";s:14:"buildTimestamp";s:3:"848";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Google Map Modul";s:11:"description";s:57:"Zeige Element in der Google Map unter Verwendung der API";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:21:"Módulo de Google Map";s:11:"description";s:40:"Mostrar item en Google Map Usando la API";s:10:"groupLabel";s:8:"Galería";}s:5:"es_MX";a:3:{s:4:"name";s:21:"Módulo de Google Map";s:11:"description";s:40:"Mostrar item en Google Map Usando la API";s:10:"groupLabel";s:8:"Galería";}s:5:"es_AR";a:3:{s:4:"name";s:21:"Módulo de Google Map";s:11:"description";s:40:"Mostrar item en Google Map Usando la API";s:10:"groupLabel";s:8:"Galería";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Module Google Map";s:11:"description";s:56:"Montre les items sur une carte google en utilisant l'API";s:10:"groupLabel";s:8:"Gallerie";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"hu_HU";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"nl_NL";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_CN";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Google Map Module";s:11:"description";s:39:"Show item on a Google Map Using the API";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:739;a:5:{s:2:"de";s:3:"739";s:2:"es";s:3:"739";s:2:"fr";s:3:"739";s:2:"no";s:3:"739";s:2:"sv";s:3:"739";}i:847;a:5:{s:2:"de";s:3:"847";s:2:"es";s:3:"847";s:2:"fr";s:3:"847";s:2:"no";s:3:"847";s:2:"sv";s:3:"847";}}}s:10:"bulkupload";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"bulkupload";s:7:"version";s:5:"1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:3:"847";s:14:"buildTimestamp";s:3:"851";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"et_EE";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"zh_CN";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Bulk Upload";s:11:"description";s:39:"Upload files from structured data files";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:745;a:1:{s:2:"de";s:3:"744";}i:847;a:1:{s:2:"de";s:3:"847";}}}s:8:"jpegtran";a:2:{s:6:"header";a:5:{s:2:"id";s:8:"jpegtran";s:7:"version";s:5:"0.9.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:3:"938";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"zh_CN";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"zh_TW";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ko_KR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ja_JP";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}}}s:7:"geturls";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"geturls";s:7:"version";s:5:"0.9.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:3:"929";s:14:"buildTimestamp";s:4:"1046";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"cs_CZ";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"de_DE";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"fr_FR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Formatted URLs";s:11:"description";s:31:"Show BBcode/HTML formatted URLs";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:929;a:1:{s:2:"ro";s:3:"942";}}}s:4:"tags";a:2:{s:6:"header";a:5:{s:2:"id";s:4:"tags";s:7:"version";s:5:"1.3.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:14:"buildTimestamp";s:4:"1088";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"da_DK";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"de_DE";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"es_ES";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"es_MX";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"es_AR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fr_FR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ga_IE";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lv_LV";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_BR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"bg_BG";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"zh_CN";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"zh_TW";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ko_KR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ar_SA";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:4:"Tags";s:11:"description";s:21:"Tag management system";s:10:"groupLabel";s:10:"Extra Data";}}}s:8:"checkout";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"checkout";s:7:"version";s:6:"0.1.17";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:4:"1132";s:14:"buildTimestamp";s:4:"1136";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_CN";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_TW";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ko_KR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Checkout";s:11:"description";s:62:"Shopping cart module supporting different products and payment";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:1132;a:4:{s:2:"de";s:4:"1132";s:2:"es";s:4:"1132";s:2:"fr";s:4:"1132";s:8:"messages";s:4:"1132";}}}s:13:"checkoutemail";a:3:{s:6:"header";a:6:{s:2:"id";s:13:"checkoutemail";s:7:"version";s:5:"0.0.9";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:4:"1132";s:14:"buildTimestamp";s:4:"1138";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"de_DE";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_CN";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_TW";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ko_KR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Checkout by Email";s:11:"description";s:26:"Complete checkout by email";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:1132;a:3:{s:2:"es";s:4:"1132";s:2:"fr";s:4:"1132";s:8:"messages";s:4:"1132";}}}s:14:"checkoutpaypal";a:3:{s:6:"header";a:6:{s:2:"id";s:14:"checkoutpaypal";s:7:"version";s:6:"0.1.11";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:4:"1132";s:14:"buildTimestamp";s:4:"1140";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"da_DK";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"de_DE";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"et_EE";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"lv_LV";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"no_NO";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"fi_FI";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"th_TH";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ko_KR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"ar_SA";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:18:"Checkout by Paypal";s:11:"description";s:27:"Complete checkout by paypal";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:1132;a:2:{s:2:"fr";s:4:"1132";s:8:"messages";s:4:"1132";}}}}s:6:"themes";a:6:{s:5:"fluid";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"fluid";s:7:"version";s:6:"0.9.10";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:1;}s:15:"stringsRevision";s:3:"525";s:14:"buildTimestamp";i:10212;}s:12:"descriptions";a:42:{s:5:"en_US";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"en_GB";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"af_ZA";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"ca_ES";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"da_DK";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"de_DE";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"es_ES";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"es_MX";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"es_AR";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"et_EE";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"eu_ES";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"fr_FR";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"ga_IE";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"el_GR";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"is_IS";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"it_IT";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"lv_LV";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"lt_LT";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"hu_HU";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"nl_NL";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"no_NO";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"pl_PL";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"pt_BR";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"pt_PT";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"ro_RO";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"sk_SK";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"sl_SI";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"sr_YU";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"fi_FI";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"sv_SE";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"th_TH";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"uk_UA";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"vi_VN";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"tr_TR";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"bg_BG";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"ru_RU";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"zh_CN";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"zh_TW";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"ja_JP";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"ar_SA";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}s:5:"he_IL";a:2:{s:4:"name";s:5:"Fluid";s:11:"description";s:19:"A Flash based Theme";}}s:9:"languages";a:1:{i:525;a:32:{s:2:"cs";s:3:"525";s:5:"pt_BR";s:3:"525";s:2:"es";s:3:"525";s:2:"eu";s:3:"525";s:5:"en_GB";s:3:"525";s:2:"is";s:3:"525";s:2:"no";s:3:"525";s:2:"hu";s:3:"525";s:2:"vi";s:3:"525";s:2:"ru";s:3:"525";s:2:"af";s:3:"525";s:5:"es_AR";s:3:"525";s:2:"el";s:3:"525";s:2:"ar";s:3:"525";s:2:"fr";s:3:"525";s:2:"nl";s:3:"525";s:2:"pl";s:3:"525";s:5:"es_MX";s:3:"525";s:2:"it";s:3:"525";s:2:"lt";s:3:"525";s:2:"pt";s:3:"525";s:2:"sr";s:3:"525";s:2:"da";s:3:"525";s:2:"tr";s:3:"525";s:2:"ga";s:3:"525";s:2:"sv";s:3:"525";s:2:"de";s:3:"525";s:2:"ja";s:3:"525";s:5:"zh_TW";s:3:"525";s:2:"he";s:3:"525";s:2:"fi";s:3:"525";s:5:"zh_CN";s:3:"525";}}}s:11:"opticalpork";a:2:{s:6:"header";a:5:{s:2:"id";s:11:"opticalpork";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:2;}s:14:"buildTimestamp";s:3:"848";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"en_GB";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"af_ZA";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ca_ES";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"da_DK";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"de_DE";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"es_ES";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"es_MX";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"es_AR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"et_EE";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"eu_ES";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"fr_FR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ga_IE";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"el_GR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"is_IS";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"it_IT";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"lv_LV";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"lt_LT";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"hu_HU";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"nl_NL";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"no_NO";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"pl_PL";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"pt_BR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"pt_PT";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ro_RO";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"sk_SK";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"sl_SI";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"sr_YU";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"fi_FI";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"sv_SE";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"th_TH";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"uk_UA";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"vi_VN";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"tr_TR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"bg_BG";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ru_RU";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"zh_CN";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"zh_TW";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ko_KR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ja_JP";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"ar_SA";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"he_IL";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}s:5:"fa_IR";a:2:{s:4:"name";s:11:"Opticalpork";s:11:"description";s:29:"Opticalpork.com Gallery theme";}}}s:7:"debaser";a:2:{s:6:"header";a:5:{s:2:"id";s:7:"debaser";s:7:"version";s:5:"0.9.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:0;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:1;}s:14:"buildTimestamp";s:3:"911";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"en_GB";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ca_ES";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"cs_CZ";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"da_DK";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"de_DE";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"es_ES";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"es_MX";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"es_AR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"et_EE";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"eu_ES";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ga_IE";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"el_GR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"is_IS";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"it_IT";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"no_NO";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"pt_BR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"pt_PT";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ro_RO";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"sk_SK";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"sl_SI";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"sv_SE";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"th_TH";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"uk_UA";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"vi_VN";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"bg_BG";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ru_RU";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"zh_CN";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"zh_TW";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ko_KR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ja_JP";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"ar_SA";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"he_IL";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}s:5:"fa_IR";a:2:{s:4:"name";s:7:"Debaser";s:11:"description";s:36:"Something different, something lower";}}}s:4:"nzdi";a:2:{s:6:"header";a:5:{s:2:"id";s:4:"nzdi";s:7:"version";s:5:"1.2.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:14:"buildTimestamp";s:4:"1092";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"en_GB";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"af_ZA";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ca_ES";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"da_DK";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"de_DE";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"es_ES";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"es_MX";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"es_AR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"et_EE";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"eu_ES";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"fr_FR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ga_IE";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"el_GR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"is_IS";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"it_IT";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"lv_LV";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"lt_LT";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"hu_HU";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"nl_NL";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"no_NO";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"pl_PL";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"pt_BR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"pt_PT";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ro_RO";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"sk_SK";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"sl_SI";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"sr_YU";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"fi_FI";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"sv_SE";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"th_TH";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"uk_UA";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"vi_VN";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"tr_TR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"bg_BG";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ru_RU";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"zh_CN";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"zh_TW";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ko_KR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ja_JP";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"ar_SA";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"he_IL";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}s:5:"fa_IR";a:2:{s:4:"name";s:4:"NZDI";s:11:"description";s:23:"NZ Digital Images theme";}}}s:10:"simplified";a:2:{s:6:"header";a:5:{s:2:"id";s:10:"simplified";s:7:"version";s:5:"1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:14:"buildTimestamp";s:3:"962";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"en_GB";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"af_ZA";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ca_ES";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"cs_CZ";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"da_DK";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"de_DE";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"es_ES";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"es_MX";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"es_AR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"et_EE";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"eu_ES";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"fr_FR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ga_IE";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"el_GR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"is_IS";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"it_IT";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"lv_LV";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"lt_LT";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"hu_HU";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"nl_NL";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"no_NO";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"pl_PL";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"pt_BR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"pt_PT";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ro_RO";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"sk_SK";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"sl_SI";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"sr_YU";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"fi_FI";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"sv_SE";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"th_TH";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"uk_UA";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"vi_VN";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"tr_TR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"bg_BG";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ru_RU";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"zh_CN";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"zh_TW";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ko_KR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ja_JP";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"ar_SA";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"he_IL";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}s:5:"fa_IR";a:2:{s:4:"name";s:10:"Simplified";s:11:"description";s:24:"Simple, uncluttered look";}}}s:7:"x_treme";a:2:{s:6:"header";a:5:{s:2:"id";s:7:"x_treme";s:7:"version";s:5:"1.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:14:"buildTimestamp";s:4:"1109";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"en_GB";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ca_ES";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"da_DK";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"de_DE";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"es_ES";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"es_MX";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"es_AR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"et_EE";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"eu_ES";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ga_IE";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"el_GR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"is_IS";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"it_IT";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"no_NO";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"pt_BR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"pt_PT";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ro_RO";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"sk_SK";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"sl_SI";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"sv_SE";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"th_TH";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"uk_UA";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"vi_VN";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"bg_BG";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ru_RU";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"zh_CN";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"zh_TW";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ko_KR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ja_JP";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"ar_SA";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"he_IL";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}s:5:"fa_IR";a:2:{s:4:"name";s:7:"X_treme";s:11:"description";s:32:"PedroGilberto.net Gallery2 theme";}}}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/index.repository b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/index.repository new file mode 100644 index 0000000..eb531c2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/index.repository @@ -0,0 +1 @@ +a:2:{s:7:"modules";a:69:{s:11:"albumselect";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"albumselect";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Albumkieser";s:11:"description";s:52:"Spring na 'n album deur 'n keuselys of boomstruktuur";s:10:"groupLabel";s:6:"Blokke";}s:5:"ca_ES";a:3:{s:4:"name";s:18:"Selecció d'Àlbum";s:11:"description";s:90:"Anar directament a qualsevol àlbum fent servir un quadre de selecció o una vista d'arbre";s:10:"groupLabel";s:5:"Blocs";}s:5:"cs_CZ";a:3:{s:4:"name";s:12:"Výběr alba";s:11:"description";s:43:"Výběr alb pomocí select boxu nebo stromu";s:10:"groupLabel";s:5:"Bloky";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Albumvælger";s:11:"description";s:73:"Hop direkte til ethvert album ved at bruge en liste eller en træstruktur";s:10:"groupLabel";s:6:"Blokke";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Albumauswahl";s:11:"description";s:76:"Mittels Auswahlliste oder Baumansicht direkt zu den einzelnen Alben springen";s:10:"groupLabel";s:7:"Blöcke";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Albumi Valik";s:11:"description";s:82:"Hüppa otse suvalise albumi juurde, kasutades selleks rippmenüüd või puu-vaadet";s:10:"groupLabel";s:6:"Blokid";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Album Hautatzea";s:11:"description";s:66:"Hautatze kutxa edo zuhaitz ikuspegia erabiliz album-era salto egin";s:10:"groupLabel";s:7:"Blokeak";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Sélection d'album";s:11:"description";s:87:"Aller directement vers n'importe quel album en utilisant un menu déroulant ou un arbre";s:10:"groupLabel";s:5:"Blocs";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Selezione Album";s:11:"description";s:83:"Salta direttamente a un album usando una casella di selezione o una vista ad albero";s:10:"groupLabel";s:7:"Blocchi";}s:5:"lv_LV";a:3:{s:4:"name";s:19:"Albumu atlasīšana";s:11:"description";s:70:"Pāriet tieši uz jebkuru albumu lietojot izvēles logu vai koka skatu";s:10:"groupLabel";s:5:"Bloki";}s:5:"lt_LT";a:3:{s:4:"name";s:19:"Albumo pasirinkimas";s:11:"description";s:69:"Peršokti tiesiai į bet kurį albumą, sąrašo arba medžio pagalba";s:10:"groupLabel";s:6:"Blokai";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Albumkiválasztás";s:11:"description";s:90:"Ugrás közvetlenül bármely albumra egy választómező vagy faszerkezet segítségével";s:10:"groupLabel";s:7:"Blokkok";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Albumkiezer";s:11:"description";s:57:"Open direct een album via een keuzelijst of boomstructuur";s:10:"groupLabel";s:7:"Blokken";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Wybieranie albumu";s:11:"description";s:79:"Przejdź bezpośrednio do danego albumu przy pomocy rozwijanej listy lub drzewa";s:10:"groupLabel";s:5:"Bloki";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Selecione o álbum";s:11:"description";s:94:"Saltar diretamente para qualquer álgum usando uma caixa de seleção ou uma visão em árvore";s:10:"groupLabel";s:6:"Blocos";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Selecteaza Album";s:11:"description";s:81:"Sari direct la orice album folosind o casuta de selectie sau vederea arborescenta";s:10:"groupLabel";s:7:"Blocuri";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Birač albuma";s:11:"description";s:68:"Direktan skok do bilo kog albuma pomoću okvira sa listom ili stabla";s:10:"groupLabel";s:7:"Blokovi";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Albumval";s:11:"description";s:66:"Hoppa direct till album m.h.a rullgardinslista-lista eller trädvy";s:10:"groupLabel";s:5:"Block";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Chọn Album";s:11:"description";s:96:"Nhảy trực tiếp đến một album bằng hộp chọn lựa hoặc chọn trên cây album";s:10:"groupLabel";s:5:"Hộp";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Albüm Seç";s:11:"description";s:84:"Seçim kutusu ya da ağaç görüntüsü kullanarak herhangi bir albüme geçiş yap";s:10:"groupLabel";s:7:"Bloklar";}s:5:"bg_BG";a:3:{s:4:"name";s:27:"Изберете Албум";s:11:"description";s:67:"Директно прескачане от албум в албум";s:10:"groupLabel";s:14:"Блокове";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Выбор Альбома";s:11:"description";s:167:"Быстрый переход к любому из альбомов с помощью выпадающего меню или иерархического дерева.";s:10:"groupLabel";s:10:"Блоки";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"相册选择";s:11:"description";s:42:"使用选择框直接跳转到任意相册";s:10:"groupLabel";s:9:"功能块";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"相簿選擇";s:11:"description";s:51:"用選單或樹狀顯示來直接跳到任意相簿";s:10:"groupLabel";s:6:"區塊";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"사진첩 선택기";s:11:"description";s:100:"어느 사진첩으로던 선택 상자 또는 구조 보기를 이용해 곧바로 이동합니다.";s:10:"groupLabel";s:6:"Blocks";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"アルバムセレクト";s:11:"description";s:84:"セレクトボックスかツリービューを使って直接アルバムへ飛ぶ";s:10:"groupLabel";s:12:"ブロック";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"he_IL";a:3:{s:4:"name";s:21:"בחירת אלבום";s:11:"description";s:84:"קפוץ ישירות לכל אלבום באמצעות תיבה או עץ בחירה";s:10:"groupLabel";s:12:"בלוקים";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}}s:9:"languages";a:1:{i:15342;a:35:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:13:"archiveupload";a:3:{s:6:"header";a:6:{s:2:"id";s:13:"archiveupload";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Laai Argief Op";s:11:"description";s:41:"Onttrek items vanuit opgelaaide ziplêers";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Càrrega d'Arxius";s:11:"description";s:37:"Extraure elements d'arxius zip pujats";s:10:"groupLabel";s:8:"Importar";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Upload archivů";s:11:"description";s:49:"Rozbalení položek z uploadovaných zip souborů";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:16:"Arkivoverførsel";s:11:"description";s:42:"Pakker elementer ud fra en uploadet zipfil";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Archiv-Hochladen";s:11:"description";s:52:"Extrahiere Elemente aus dem hochgeladenen ZIP-Archiv";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Carga de Archivos";s:11:"description";s:41:"Extraer elementos de archivos zip subidos";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Carga de Archivos";s:11:"description";s:41:"Extraer elementos de archivos zip subidos";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Carga de Archivos";s:11:"description";s:41:"Extraer elementos de archivos zip subidos";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Fitxategia Igo";s:11:"description";s:42:"Atera osagaiak igotako zip fitxategietatik";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:27:"Téléchargement d'archives";s:11:"description";s:62:"Extraire les éléments depuis les fichiers zip téléchargés";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Upload Archivio";s:11:"description";s:39:"Estrai gli oggetti da file zip caricati";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Archyvo įkėlimas";s:11:"description";s:46:"Ištraukti elementus iš įkeltų zip archyvų";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:19:"Arhívumfeltöltés";s:11:"description";s:50:"Elemek kicsomagolása a feltöltött zip fájlból";s:10:"groupLabel";s:12:"Importálás";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Archief Upload";s:11:"description";s:43:"Extract items geupload vanuit zip bestanden";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:22:"Przesyłanie archiwów";s:11:"description";s:45:"Rozpakuj pozycje z przesłanych archiwów zip";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Enviar arquivo";s:11:"description";s:38:"Extrair itens de arquivos zip enviados";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Prenos arhiva";s:11:"description";s:45:"Ekstrakcija objekata iz prenetih zip datoteka";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:19:"Pakkauksen Lähetys";s:11:"description";s:43:"Pura kuvat lähetetyistä zip -tiedostoista";s:10:"groupLabel";s:7:"Siirrä";}s:5:"sv_SE";a:3:{s:4:"name";s:20:"Uppladdning av Arkiv";s:11:"description";s:42:"Extrahera objekt från uppladdade zipfiler";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:25:"Tải lên tập tin nén";s:11:"description";s:77:"Bung các đối tượng được tải lên trong các tập tin nén (zip)";s:10:"groupLabel";s:13:"Nhập khẩu";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Arşiv Göndeme";s:11:"description";s:40:"Yüklenen zip dosyalarından ögeleri al";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:30:"Качване на архив";s:11:"description";s:79:"Изваждане на елементи от качени 'zip' файлове";s:10:"groupLabel";s:12:"Импорт";}s:5:"ru_RU";a:3:{s:4:"name";s:29:"Загрузка Архива";s:11:"description";s:78:"Распаковка файлов из загруженного zip файла";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"存档上传";s:11:"description";s:36:"从上传的ZIP文件中释放项目";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"壓縮檔上傳";s:11:"description";s:38:"從上傳的 ZIP 檔案中取出項目";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"アーカイブアップロード";s:11:"description";s:57:"アップロードされたzipファイルを展開する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"captcha";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"captcha";s:7:"version";s:7:"1.1.4.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16278";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:78:"Voorkom misbruik deur skriprobots deur gebruik te maak van visuele bevestiging";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:84:"Preveu l'abús d'atacs informàtics amb una entrada que requereix comprensió visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:84:"Zabraňuje zneužití roboty (programy) zaváděním vizuálních kontrol (obrázky)";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:101:"Forhindrer misbrug af automatiserede robotter ved at kræve inddata der kræver en visuel forståelse";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:145:"Beugt Missbrauch vor indem mittels Bildern, zu deren Erkennung visuelle Auffassungsgabe benötigt wird, automatisierte Bots ausgeschlossen werden";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Previene el abuso por disuasión de bots automáticos con una entrada que requiere comprensión visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Previene el abuso por disuasión de bots automáticos con una entrada que requiere comprensión visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Previene el abuso por disuasión de bots automáticos con una entrada que requiere comprensión visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Hoiab ära kuritarvitamise automaatsete robotite poolt, nõudes visuaalset arusaamist vajavat sisendit";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:72:"Errobot automatizatuen erasoak ekiditeko konpresio bisuala erabiltzen da";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:110:"Empêcher les abus de robots malveillants en ajoutant des saisies qui nécessitent une compréhension visuelle";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:97:"Previene gli abusi ostacolando i bot automatici con input che necessitano di comprensione visuale";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:117:"Voorkomt misbruik door geautomatiseerde computerprogramma's te hinderen met invoer dat visuele interpretatie vereist.";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:87:"Zabezpiecza przed automatycznymi botami, poprzez wymuszenie wprowadzenia kodu z obrazka";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:65:"Otežavanje automatizovanih napada sistemom vizuelnog razumevanja";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:104:"Förhindrar missbruk från automatiserade program som kommer ha svårt för att tolka texten automatiskt";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:54:"Система за Разпознаване (Captcha)";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:35:"Тест Тьюринга (Captcha)";s:11:"description";s:262:"Предотвращает посещения роботами-автоматическими регистраторами благодаря специальному вводу, требующего визуального осмысления человеком";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:54:"利用可视化组件防止自动化机器人滥用。";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:63:"利用需要人工目視的輸入來阻止自動程式的濫用";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:99:"가입시 인증 번호를 입력하게 하여 봇이나 스패머등의 가입을 차단합니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:93:"視覚による確認を要求することで、自動的なボットによる悪用を防ぐ";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"cart";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"cart";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Mandjie";s:11:"description";s:20:"Winkelmandjie Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Cistella";s:11:"description";s:31:"Módul de Cistella de la Compra";s:10:"groupLabel";s:7:"Comerç";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Košík";s:11:"description";s:26:"Modul nákupního košíku";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Indkøbskurv";s:11:"description";s:13:"Indkøbsmodul";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Warenkorb";s:11:"description";s:15:"Warenkorb-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Carrito";s:11:"description";s:28:"Módulo de Carrito de Compra";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Carrito";s:11:"description";s:28:"Módulo de Carrito de Compra";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Carrito";s:11:"description";s:28:"Módulo de Carrito de Compra";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Korv";s:11:"description";s:12:"Korvi Moodul";s:10:"groupLabel";s:8:"Kommerts";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Saskia";s:11:"description";s:22:"Erosketa Saski Modulua";s:10:"groupLabel";s:12:"Merkataritza";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"Panier";s:11:"description";s:14:"Panier d'achat";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Tralaí";s:11:"description";s:31:"Modúl Tralaí Siopadóireachta";s:10:"groupLabel";s:11:"Tráchtáil";}s:5:"el_GR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Carrello";s:11:"description";s:20:"Modulo Shopping Cart";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Bevásárlőkosár";s:11:"description";s:23:"Bevásárlokosár modul";s:10:"groupLabel";s:12:"Kereskedelem";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Mandje";s:11:"description";s:19:"Winkelmandje Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Koszyk";s:11:"description";s:25:"Moduł koszyka zamówień";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:30:"Módulo de Carrinho de Compras";s:10:"groupLabel";s:9:"Comércio";}s:5:"pt_PT";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Korpa";s:11:"description";s:16:"Korpa za šoping";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Varukorg";s:11:"description";s:14:"Varukorgsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Giỏ hàng";s:11:"description";s:28:"Module Giỏ hàng đi chợ";s:10:"groupLabel";s:14:"Thương mại";}s:5:"tr_TR";a:3:{s:4:"name";s:5:"Sepet";s:11:"description";s:27:"Alışveriş Sepeti Modulü";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Количка";s:11:"description";s:45:"Модул за Пазарна Количка";s:10:"groupLabel";s:16:"Търговия";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Корзина";s:11:"description";s:169:"Модуль Корзина позволяет отобрать фотографии (например, для последующей передачи на печать)";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"购物车";s:11:"description";s:15:"购物车模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"購物車";s:11:"description";s:15:"購物車模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:23:"바구니 쇼핑 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"カート";s:11:"description";s:42:"ショッピングカートモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:34:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"colorpack";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"colorpack";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Colour Packs";s:11:"description";s:43:"Select different colour palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Kleurpakette";s:11:"description";s:38:"Selekteer ander kleurpalette vir temas";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Paquets de Color";s:11:"description";s:51:"Selecciona diferents paletes de color per als temes";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:19:"Barevné nastavení";s:11:"description";s:20:"Výběr barev témat";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Farvepakker";s:11:"description";s:42:"Vælg forskellige farvepaletter for temaer";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Farbpaletten";s:11:"description";s:53:"Wählen Sie unterschiedliche Farbpaletten für Motive";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Paquetes de Color";s:11:"description";s:53:"Selecciona diferentes paletas de color para los temas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Paquetes de Color";s:11:"description";s:53:"Selecciona diferentes paletas de color para los temas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Paquetes de Color";s:11:"description";s:53:"Selecciona diferentes paletas de color para los temas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Kolore paketeak";s:11:"description";s:47:"Hautatu kolore paleta ezberdinak gai bakoitzeko";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Jeux de couleurs";s:11:"description";s:58:"Sélectionnez différents jeux de couleur pour les thèmes";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:45:"Seleziona differenti set di colori per i temi";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:15:"Spalvų paketai";s:11:"description";s:42:"Parinkite skirtingas temų spalvų paletes";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Színcsomagok";s:11:"description";s:58:"Különféle színpaletták kiválasztása a felületekhez";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Kleur Pakketten";s:11:"description";s:42:"Selecteer andere kleur pallet voor thema's";s:10:"groupLabel";s:9:"Weergeven";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:16:"Zestawy kolorów";s:11:"description";s:45:"Wybierz różne zestawy kolorów dla tematów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Pacotes de Cor";s:11:"description";s:52:"Selecione palhetas de cores diferentes para os temas";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Paketi boja";s:11:"description";s:42:"Biranje različitih paketa boja za izglede";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Färgpaket";s:11:"description";s:36:"Välj olika färgpaletter till teman";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Renk Paketleri";s:11:"description";s:43:"Temalar için farklı renk paletleri seçin";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:30:"Пакети с цветове";s:11:"description";s:72:"Изберете различни палитри за стиловете";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:31:"Цветовая палитра";s:11:"description";s:99:"Выбор различной цветовой палитры для оформления темы";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"彩色包";s:11:"description";s:33:"为布景主题选不同的色调";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"彩色包";s:11:"description";s:33:"為佈景主題選不同的色調";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:49:"사용하고자 하는 색상을 선택합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"カラーパック";s:11:"description";s:60:"テーマとは異なるカラーパレットを選択する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"comment";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"comment";s:7:"version";s:7:"1.1.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15508";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Kommentaar";s:11:"description";s:27:"Gebruiker kommentaarstelsel";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Comentaris";s:11:"description";s:34:"Sistema de comentaris dels usuaris";s:10:"groupLabel";s:17:"Informació Extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Komentáře";s:11:"description";s:37:"Systém pro uživatelské komentáře";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:26:"Bruger kommenteringssystem";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kommentare";s:11:"description";s:31:"System für Benutzer-Kommentare";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:11:"Datos extra";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Kommentaarid";s:11:"description";s:35:"Kasutajate kommenteerimise süsteem";s:10:"groupLabel";s:13:"Ekstra-andmed";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Iruzkinak";s:11:"description";s:28:"Erabiltzaile iruzkin sistema";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Commentaires";s:11:"description";s:40:"Système de commentaire des utilisateurs";s:10:"groupLabel";s:21:"Extraire les données";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Teachtaireachtaí";s:11:"description";s:22:"Córas teachtaireachta";s:10:"groupLabel";s:12:"Sonraí eile";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Σχόλια";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:39:"Επιπρόσθετα Στοιχεία";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Commenti";s:11:"description";s:51:"Sistema per inserire commenti da parte degli utenti";s:10:"groupLabel";s:10:"Dati extra";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Komentāri";s:11:"description";s:30:"Lietotāju komentāru sistēma";s:10:"groupLabel";s:11:"Ekstra dati";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Kometarai";s:11:"description";s:29:"Vartotojo komentavimo sistema";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Megjegyzések";s:11:"description";s:47:"Felhasználói megjegyzéshozzáfűző rendszer";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Reacties";s:11:"description";s:25:"Bezoekers reactie systeem";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Komentarze";s:11:"description";s:23:"Komentarze użytkownika";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Comentários";s:11:"description";s:41:"Sistema de comentário de usuários";s:10:"groupLabel";s:16:"Dados Adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Comentários";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Comentarii";s:11:"description";s:43:"Sistem de introducere comentarii utilizator";s:10:"groupLabel";s:10:"Extra date";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Komentari";s:11:"description";s:29:"Sistem korisničkih komentara";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Kommentit";s:11:"description";s:36:"Käyttäjäkommenttien järjestelmä";s:10:"groupLabel";s:11:"Lisätiedot";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:25:"Användarkommentarssystem";s:10:"groupLabel";s:17:"Extra Information";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Коментарі";s:11:"description";s:39:"Система коментування";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Bình luận";s:11:"description";s:25:"Hệ thống bình luận";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Yorumlar";s:11:"description";s:25:"Kullanıcı yorum sistemi";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Коментари";s:11:"description";s:65:"Система за потребителски коментари";s:10:"groupLabel";s:35:"Допълнителни Данни";}s:5:"ru_RU";a:3:{s:4:"name";s:22:"Комментарии";s:11:"description";s:74:"Добавление комментариев пользователями";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"评论";s:11:"description";s:18:"用户评论系统";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"回應";s:11:"description";s:21:"使用者回應系統";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"댓글";s:11:"description";s:50:"사용자가 댓글을 달수 있도록 합니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"コメント";s:11:"description";s:33:"ユーザコメントシステム";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"تعليقات";s:11:"description";s:55:"نظام كتابة التعليقات للمستخدم";s:10:"groupLabel";s:27:"معلومات إضافية";}s:5:"he_IL";a:3:{s:4:"name";s:12:"תגובות";s:11:"description";s:40:"מערכת תגובות המשתמשים";s:10:"groupLabel";s:25:"נתונים נוספים";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"نظرات";s:11:"description";s:36:"سیستم نظرات کاربران";s:10:"groupLabel";s:28:"داده های تکمیلی";}}s:9:"languages";a:1:{i:15508;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16476";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fa";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16476";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16476";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"customfield";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"customfield";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:17:"Pasgemaakte Velde";s:11:"description";s:44:"Skep pasgemaakte datavelde vir Gallery items";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:20:"Camps Personalitzats";s:11:"description";s:66:"Crea camps d'informació personalizats per als elements de Gallery";s:10:"groupLabel";s:17:"Informació Extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Vlastní pole";s:11:"description";s:45:"Vytvoření vlastních polí položek Galerie";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Ekstra Ffelter";s:11:"description";s:45:"Opret ekstra datafelter til Gallery elementer";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Individuelle Felder";s:11:"description";s:72:"Legen Sie individuelle Informationsfelder für Ihre Gallery-Elemente an.";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:21:"Campos Personalizados";s:11:"description";s:72:"Crea campos de información personalizados para los elementos de Gallery";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:21:"Campos Personalizados";s:11:"description";s:72:"Crea campos de información personalizados para los elementos de Gallery";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:21:"Campos Personalizados";s:11:"description";s:72:"Crea campos de información personalizados para los elementos de Gallery";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:21:"Eremu Pertsonalizatua";s:11:"description";s:55:"Galeria elementuentzat datu eremu pertsonalizatua sortu";s:10:"groupLabel";s:16:"Datu Gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:21:"Champs personnalisés";s:11:"description";s:76:"Créer les données des champs personnalisés pour les éléments de Gallery";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:20:"Campi Personalizzati";s:11:"description";s:52:"Crea campi personalizzati per gli oggetti di Gallery";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Egyedi mezők";s:11:"description";s:51:"Egyedi adatmezők létrehozása a galériaelemekhez";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Maatwerk Velden";s:11:"description";s:48:"Maatwerk data velden aanmaken voor Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Dodatkowe pola";s:11:"description";s:43:"Tworzy dodatkowe pola dla pozycji w galerii";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Posebna polja";s:11:"description";s:59:"Pravljenje posebnih polja sa podacima za objekte u Galeriji";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Specialfält";s:11:"description";s:37:"Skapa specialfält för Galleryobjekt";s:10:"groupLabel";s:17:"Extra Information";}s:5:"th_TH";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Додаткові Поля";s:11:"description";s:91:"Створення додаткових полів для елементів Галереї";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:23:"Dữ liệu tùy biến";s:11:"description";s:83:"Tạo các trường dữ liệu tùy biến cho các đối tượng của Gallery";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:24:"İsteğe Bağlı Alanlar";s:11:"description";s:61:"Galeri ögeleri için isteğe bağlı veri alanları yaratın";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:37:"Дополнительные Поля";s:11:"description";s:117:"Создание дополнительных полей с записями для элементов Галереи";s:10:"groupLabel";s:26:"Дополнительно";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"自定义字段";s:11:"description";s:42:"为图库项目新建自定义数据字段";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"自定欄位";s:11:"description";s:42:"為 Gallery 項目新建自定資料欄位";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"カスタムフィールド";s:11:"description";s:73:"Galleryアイテムのためのカスタムデータフィールド作成";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"dcraw";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"dcraw";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:55:"Hulpmiddel vir die verwerking van beelde in RAW formaat";s:10:"groupLabel";s:20:"Grafiese Hulpmiddels";}s:5:"ca_ES";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Eines gràfiques per processar imatges en format raw";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:60:"Grafický nástroj pro zpracování obrázků v raw formátu";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:59:"Grafisk værktøj til at behandle billeder i 'raw' formatet";s:10:"groupLabel";s:17:"Grafikværktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:62:"Grafik-Werkzeugsatz um BIlder im Rohdatenformat zu verarbeiten";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:61:"Herramientas gráficas para procesar imágenes en formato raw";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:61:"Herramientas gráficas para procesar imágenes en formato raw";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:61:"Herramientas gráficas para procesar imágenes en formato raw";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:55:"Raw formatuko irudiak prozesatzeko tresna-joko grafikoa";s:10:"groupLabel";s:21:"Tresna-joko Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"DCRaw";s:11:"description";s:55:"Boîte à outils graphiques pour traiter les images RAW";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:63:"Set di strumenti grafici per processare immagini in formato raw";s:10:"groupLabel";s:17:"Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lt_LT";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:18:"Grafikos įrankiai";}s:5:"hu_HU";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:48:"Toolkit voor het verwerken van RAW afbeeldingen.";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:55:"Narzędzie graficzne do obróbki zdjęć w formacie raw";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_PT";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:70:"Instrumente grafice pentru prelucrarea imaginilor in format brut (raw)";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:46:"Grafička alatka za obradu slika u RAW formatu";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:59:"Grafisk verktygslåda för bearbetning av filer i råformat";s:10:"groupLabel";s:21:"Grafisk Verktygslåda";}s:5:"th_TH";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:72:"Bộ công cụ đồ họa để xử lý ảnh theo định dạng raw";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:65:"Raw biçimindeki resim dosyalarını işlemek için Grafik Aracı";s:10:"groupLabel";s:17:"Grafik Araçları";}s:5:"bg_BG";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:136:"Графический инструмент, позволяющий работать с изображениями в формате RAW";s:10:"groupLabel";s:45:"Графические Инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:38:"处理 RAW 格式图像的图形工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:38:"處理 RAW 格式圖像的圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:70:"RAW 形式を扱うためのグラフィックツールキットです";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:1:{i:15447;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"debug";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"debug";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:1;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Soek foute";s:11:"description";s:37:"Foutspoor en ontwikkelingshulpmiddele";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Depuració";s:11:"description";s:37:"Eines de depuració i desenvolupament";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Ladění";s:11:"description";s:31:"Ladící a vývojové nástroje";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Fejlsøgning";s:11:"description";s:37:"Fejlsøgnings- og udviklerværktøjer";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Fehlersuche";s:11:"description";s:36:"Fehlersuche- und Entwicklerwerkzeuge";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Depuración";s:11:"description";s:40:"Herramientas de Depuración y Desarrollo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Depuración";s:11:"description";s:40:"Herramientas de Depuración y Desarrollo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Depuración";s:11:"description";s:40:"Herramientas de Depuración y Desarrollo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Arazpenean";s:11:"description";s:32:"Arazpen eta Garatzaile Lanabesak";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Débuggage";s:11:"description";s:38:"Outils de développement et débuggage";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:43:"Uirlisí Dífhabhtanna/Ríomhchláraitheora";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Strumenti di Debug e Sviluppo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Lāgošana";s:11:"description";s:30:"Lāgošanas un iztrādes rīks";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Debuggen";s:11:"description";s:24:"Debug en Ontwikkel Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Debugowanie";s:11:"description";s:41:"Narzędzia deweloperskie i do debugowania";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:20:"Otklanjanje grešaka";s:11:"description";s:42:"Alati za otklanjanje grešaka i programere";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Virheenmetsästys";s:11:"description";s:37:"Virheenmetsästys ja Kehitystyökalut";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Felsökning";s:11:"description";s:37:"Felsöknings- och utvecklingsverktyg ";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Hata Ayıklama";s:11:"description";s:41:"Hata Ayıklama ve Geliştirici Araçları";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Отладка";s:11:"description";s:65:"Отладка и инструменты разработчика";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"排错";s:11:"description";s:21:"除错和开发工具";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"除蟲工具";s:11:"description";s:21:"除蟲和開發工具";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:26:"디버깅과 개발 도구";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"デバッグ";s:11:"description";s:39:"デバッグと開発者向けツール";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"digibug";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"digibug";s:7:"version";s:7:"1.0.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:26:"Digibug Foto Afdruk Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:34:"Modul tisku fotografií na Digibug";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:27:"Digibug Foto Printing Modul";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:24:"Digibug Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:42:"Módulo de Impresión de Fotos con Digibug";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:42:"Módulo de Impresión de Fotos con Digibug";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:42:"Módulo de Impresión de Fotos con Digibug";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:34:"Digibug Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:23:"Impressions via Digibug";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:33:"Modulo di Stampa Foto con Digibug";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:26:"Digibug Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:25:"Moduł drukowania Digibug";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:49:"Modul za izradu fotografija preko Digibug servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug kuvantulostuslisäosa";s:10:"groupLabel";s:11:"Kaupallinen";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Foto Utskrifts Module";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:28:"Digibug Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:63:"Модуль печати фотографий на Digibug.com";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:25:"Digibug照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:26:"Digibug 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:47:"Digibug Photo 画像プリントモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16665";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16476";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:12:"dynamicalbum";a:3:{s:6:"header";a:6:{s:2:"id";s:12:"dynamicalbum";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Dynamické album";s:11:"description";s:81:"Dynamické album pro nejnovější, nejprohlíženější nebo náhodné položky";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Dynamische Alben";s:11:"description";s:75:"Dynamische Alben für die neuesten, meistgesehenen oder zufällige Elemente";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:19:"Álbumes Dinámicos";s:11:"description";s:74:"Álbumes Dinámicos para lo mas nuevo, lo mas visto o elementos aleatorios";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:19:"Álbumes Dinámicos";s:11:"description";s:74:"Álbumes Dinámicos para lo mas nuevo, lo mas visto o elementos aleatorios";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:19:"Álbumes Dinámicos";s:11:"description";s:74:"Álbumes Dinámicos para lo mas nuevo, lo mas visto o elementos aleatorios";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Albums dynamiques";s:11:"description";s:92:"Albums dynamiques pour les éléments lés plus récents, les plus consultés ou aléatoires";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:14:"Album Dinamici";s:11:"description";s:65:"Album dinamici per gli oggetti più recenti, più visti o casuali";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Albumy dynamiczne";s:11:"description";s:79:"Albumy dynamiczne dla najnowszych, najczęściej oglądanych i losowych pozycji";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:15:"Albume dinamice";s:11:"description";s:84:"Albume dinamice pentru cele mai noi, cele mai vizualizate sau articole la intimplare";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Dynamiska Album";s:11:"description";s:67:"Dynamiska album för nyaste, mest visade eller slumpmässiga objekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:17:"Dinamik Albümler";s:11:"description";s:82:"En yeniler, en çok görüntülenenler ve rastgele ögeler için Dinamik Albümler";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:39:"Динамические альбомы";s:11:"description";s:145:"Динамические альбомы для новых, часто просматриваемых или случайных элементов";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"動態相簿";s:11:"description";s:60:"顯示最新、最受歡迎、或隨機項目的動態相簿";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:30:"ダイナミックアルバム";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"ecard";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"ecard";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:9;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:29:"Poslat fotografie jako ECards";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:5:"eKort";s:11:"description";s:20:"Send fotos som eKort";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:28:"Photos als eCard verschicken";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Tarjeta Electrónica";s:11:"description";s:40:"Envía fotos como tarjetas electrónicas";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Tarjeta Electrónica";s:11:"description";s:40:"Envía fotos como tarjetas electrónicas";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Tarjeta Electrónica";s:11:"description";s:40:"Envía fotos como tarjetas electrónicas";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:7:"E-Kaart";s:11:"description";s:26:"Saada fotosid E-Kaartidena";s:10:"groupLabel";s:8:"Kommerts";}s:5:"eu_ES";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"e-Carte";s:11:"description";s:33:"Envoyer les photos comme e-Cartes";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:32:"Invia foto sotto forma di eCards";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:59:"Fényképek elküldése elektronikus képeslapként (eCard)";s:10:"groupLabel";s:12:"Kereskedelmi";}s:5:"nl_NL";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:23:"Verzend fotos als eCard";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"eKartki";s:11:"description";s:30:"Wysyłaj zdjęcia jako eKartki";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Trimite foto ca eCard";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"fi_FI";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"eKort";s:11:"description";s:22:"Skicka foton som eKort";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"E-kart";s:11:"description";s:36:"Fotoğrafları E-kart olarak gönder";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_CN";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"電子賀卡";s:11:"description";s:30:"把照片當電子賀卡寄送";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:31:"画像を eCard として送る";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"exif";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"exif";s:7:"version";s:7:"1.1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16119";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:37:"Onttrek EXIF/IPTC data uit JPEG-fotos";s:10:"groupLabel";s:12:"Onttrek Data";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:46:"Extraure les dades EXIF/IPTC de les fotos JPEG";s:10:"groupLabel";s:21:"Dades Suplementàries";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Práce s EXIF/IPTC daty z JPEG fotografií";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:37:"Udtræk EXIF/IPTC data fra JPEG fotos";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Extrahiere EXIF/IPTC Daten aus JPEG-Photos";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:41:"EXIF/IPTC datuak atera JPEG argazkietatik";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:49:"Extraire les données EXIF & IPTC des photos JPEG";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:34:"Estrai dati EXIF/IPTC da foto JPEG";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:49:"Išgauti EXIF/IPTC duomenis iš JPEG fotografijų";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:38:"Extract EXIF/IPTC data uit JPEG foto's";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:38:"Pobierz dane EXIF/IPTC ze zdjęć JPEG";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:34:"Pegar dados EXIF/IPTC da foto JPEG";s:10:"groupLabel";s:16:"Dados adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Extrage informatii EXIF/IPTC din foto JPEG";s:10:"groupLabel";s:23:"Informatii suplimentare";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:52:"Preuzimanje EXIF i IPTC podataka iz JPEG fotografija";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:35:"Purkaa EXIF/IPTC tieto JPEG-kuvista";s:10:"groupLabel";s:10:"Lisätieto";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:41:"Extrahera EXIF/IPTC data från JPEG foton";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:44:"Trích dữ liệu EXIF/IPTC từ ảnh JPEG";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:74:"Извлечение данных EXIF/IPTC из JPEG фотографий";s:10:"groupLabel";s:26:"Дополнительно";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:32:"从JPEG照片中析取EXIF数据";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:36:"從 JPEG 照片中取得 EXIF 資料";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:54:"JPEG 사진에서 EXIF/IPTC 정보를 뽑아냅니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:69:"JPEGの画像から、EXIFもしくはITPCのデータを展開する";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"ffmpeg";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"ffmpeg";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:46:"Ffmpeg hulpmiddel vir die verwerking van films";s:10:"groupLabel";s:20:"Grafiese Hulpmiddele";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"ffmpeg";s:11:"description";s:41:"Grafický nástroj pro zpracování videa";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:35:"Et værktøj til behandling af film";s:10:"groupLabel";s:20:"Grafiske værktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:6:"FFMPEG";s:11:"description";s:52:"Eine Sammlung von Werkzeugen, um Filme zu bearbeiten";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:49:"Un juego de herramientas para procesar películas";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:49:"Un juego de herramientas para procesar películas";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:49:"Un juego de herramientas para procesar películas";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:32:"Filmak prozesatzeko tresna-jokoa";s:10:"groupLabel";s:21:"Tresna-joko Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"FFMPEG";s:11:"description";s:49:"Boîte à outils pour prendre en charge les films";s:10:"groupLabel";s:26:"Boîtes à outils graphics";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:70:"Is é seo bosca uirlisí is féidir a úsáid scannáin a phróiseáil";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:41:"Un set di strumenti per elaborare filmati";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:37:"Įrankių rinkinys filmų apdorojimui";s:10:"groupLabel";s:28:"Grafikos įrankių rinkiniai";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:40:"Ffmpeg toolkit voor verwerking van films";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:45:"Narzędzie graficzne do przetwarzania filmów";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:21:"Alatka obradu filmova";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:32:"Työkalut elokuvien käsittelyyn";s:10:"groupLabel";s:19:"Graafiset Työkalut";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:48:"En verktygsuppsättning för att bearbeta filmer";s:10:"groupLabel";s:28:"Grafisk verktygsuppsättning";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:56:"Một bộ công cụ để xử lý các tập tin phim";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:37:"Filmleri işlemek için araçtakımı";s:10:"groupLabel";s:20:"Grafik Araçtakımı";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:70:"Инструмент для работы с видеороликами";s:10:"groupLabel";s:45:"Графические Инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"FFMPEG";s:11:"description";s:21:"处理电影的工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:21:"處理影片的工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:46:"동영상을 처리를 하는 도구입니다.";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"ffmpeg";s:11:"description";s:39:"動画を処理するツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:1:{i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"flashvideo";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"flashvideo";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:9;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15887";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:40:"Umožnit zobrazení flash video souborů";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:46:"Die Anzeige von Flash Video Dateien aktivieren";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Video Flash";s:11:"description";s:40:"Permite mostrar archivos de vídeo Flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Video Flash";s:11:"description";s:40:"Permite mostrar archivos de vídeo Flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Video Flash";s:11:"description";s:40:"Permite mostrar archivos de vídeo Flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Vidéo Flash";s:11:"description";s:46:"Activer l'affichage des fichiers vidéos Flash";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:48:"Attiva la visualizzazione di file video in Flash";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Flash video";s:11:"description";s:40:"Iespējot Flash video failu attēlošanu";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Flash videó";s:11:"description";s:55:"Flash videófájlok megjelenítésének engedélyezése";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Pliki Flash";s:11:"description";s:35:"Włącz wyświetlanie plików Flash";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:36:"Aktivera visning av Flash videofiler";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:66:"Flash video dosyalarının görüntülenmesini açık duruma getir";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"Flash 影片";s:11:"description";s:37:"啟用 Flash 影片檔的顯示功能";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:14:"Flashビデオ";s:11:"description";s:54:"Flash ビデオファイルの表示を有効にする";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15887;a:21:{s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"fotokasten";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"fotokasten";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:37:"Modul tisku fotografií na Fotokasten";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:29:"Fotokasten Fot Printing Modul";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:26:"Fotokasten Fotodruck Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Módulo de Impresión de Fotografías con Fotokasten";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Módulo de Impresión de Fotografías con Fotokasten";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Módulo de Impresión de Fotografías con Fotokasten";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:37:"Fotokasten Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:26:"Impressions via Fotokasten";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:36:"Modulo di Stampa Foto con Fotokasten";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:29:"Fotokasten Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:28:"Moduł drukowania Fotokasten";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Modul za izradu fotografija preko Fotokasten servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:38:"Fotokasten Utskrifts Module för Foton";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:31:"Fotokasten Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:71:"Модуль печати фотографий через Fotokasten.de";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:28:"Fotokasten照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:29:"Fotokasten 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:31:"Fotokasten 사진 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:38:"Fotokasten 画像印刷モジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:2:"gd";a:3:{s:6:"header";a:6:{s:2:"id";s:2:"gd";s:7:"version";s:5:"1.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:22:"Gd Grafiese Hulpmiddel";s:10:"groupLabel";s:19:"Grafiese Hulmiddele";}s:5:"ca_ES";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:17:"Eines Gd Graphics";s:10:"groupLabel";s:22:"Eines gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:21:"Grafický nástroj GD";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:20:"Gd grafisk værktøj";s:10:"groupLabel";s:20:"Grafiske værktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:22:"GD Grafik-Werkzeugsatz";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:34:"Juego de Herramientas Gráficas Gd";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:34:"Juego de Herramientas Gráficas Gd";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:34:"Juego de Herramientas Gráficas Gd";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:21:"Gd Graafikatööriist";s:10:"groupLabel";s:20:"Graafikatööriistad";}s:5:"eu_ES";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Gd Tresna-joko Grafikoa";s:10:"groupLabel";s:21:"Tresna-joko Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:30:"Boîte à outils graphiques GD";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:27:"Set di Strumenti Grafici Gd";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Gd grafikas aprīkojums";s:10:"groupLabel";s:20:"Grafikas aprīkojums";}s:5:"lt_LT";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:18:"Grafikos įrankiai";}s:5:"hu_HU";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Gd grafikus eszköztár";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:47:"Gd Grafische Toolkit voor verwerking van foto's";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Narzędzie graficzne Gd";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:32:"Caixa de ferramentas gráfica GD";s:10:"groupLabel";s:31:"Caixas de ferramentas gráficas";}s:5:"pt_PT";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:31:"Setul de instrumente grafice Gd";s:10:"groupLabel";s:26:"Set de instrumente grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd grafička alatka";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:20:"GD grafiikkatyökalu";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:24:"Gd Grafisk verktygslåda";s:10:"groupLabel";s:21:"Grafisk verktygslåda";}s:5:"th_TH";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:30:"Bộ công cụ đồ họa Gd";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:16:"GD Grafik Aracı";s:10:"groupLabel";s:17:"Grafik Araçları";}s:5:"bg_BG";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:48:"GD Графические Инструменты";s:10:"groupLabel";s:45:"Графические инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:14:"GD图形工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:15:"GD 圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"GD 그래픽 도구";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:39:"Gd グラフィックツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:1:{i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"getid3";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"getid3";s:7:"version";s:5:"1.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:45:"Nástroj pro získání informací z id3 tagu";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"de_DE";a:3:{s:4:"name";s:6:"GetID3";s:11:"description";s:51:"Ein Werkzeug zum Auslesen von ID3-Tag-Informationen";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:77:"Un conjunto de herramientas para obtener la información de las etiquetas id3";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:77:"Un conjunto de herramientas para obtener la información de las etiquetas id3";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:77:"Un conjunto de herramientas para obtener la información de las etiquetas id3";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"GetID3";s:11:"description";s:63:"Boîte à outils pour extraire les données des étiquettes ID3";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:60:"Un set di strumenti per estrarre le informazioni dei tag id3";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"Tookit om id3 tag informatie uit te lezen";s:10:"groupLabel";s:14:"Extra Gegevens";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"GetID3";s:11:"description";s:40:"Narzędzie do pobierania znaczników id3";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:52:"En verktygslåda för extrahering av id3 information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:37:"id3 bilgisi almak için araçtakımı";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:52:"Извлечение данных из тэга id3";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:32:"取得 id3 标签资讯的工具";s:10:"groupLabel";s:12:"额外资料";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:32:"取得 id3 標籤資訊的工具";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:60:"ID3タグの情報を取得するためのツールキット";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"hidden";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"hidden";s:7:"version";s:5:"1.0.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15352";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Skryté položky";s:11:"description";s:77:"Skrytí položek/alb pro návštěvníky, pokud nezadají přesnou URL adresu";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Skjulte Elementer";s:11:"description";s:90:"Skjul elementer-albummer for gæster indtil de direkte bliver tilgået med den rigtige URL";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Versteckte Elemente";s:11:"description";s:94:"Verstecke Elemente/Alben vor Gästen solange Sie nicht die korrekte vollständige URL benutzen";s:10:"groupLabel";s:8:"Anzeigen";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Elementos Ocultos";s:11:"description";s:105:"Ocultar elementos/álbumes a los invitados a no ser que accedan directamente a través de su correcta URL";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Elementos Ocultos";s:11:"description";s:105:"Ocultar elementos/álbumes a los invitados a no ser que accedan directamente a través de su correcta URL";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Elementos Ocultos";s:11:"description";s:105:"Ocultar elementos/álbumes a los invitados a no ser que accedan directamente a través de su correcta URL";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:23:"Ezkutatutako Elementuak";s:11:"description";s:76:"Elementu/albumak ezkutatu bezeroei zuzenean URL zehatzaren bidez sartu ezean";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Éléments cachés";s:11:"description";s:110:"Cacher des éléments et des albums de la vue des invités tant qu'ils ne sont pas accédés avec la bonne URL";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Oggetti Nascosti";s:11:"description";s:76:"Nascondi oggetti/album dai visitatori se non sono raggiunti con l'URL giusto";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"Slēptie vienumi";s:11:"description";s:76:"Slēptie vienumi/albumi viesiem līdz viesi piekļūst tiem ar korekto saiti";s:10:"groupLabel";s:9:"Atrādīt";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Rejtett elemek";s:11:"description";s:109:"Elemek/albumok elrejtése a vendég felhasználók elől, hacsak nem teljes/pontos URL-lel hivatkoznak rájuk";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Verborgen Items";s:11:"description";s:101:"Verborgen items zijn niet zichtbaar voor gast bezoekers, totdat het item rechtstreeks wordt benaderd.";s:10:"groupLabel";s:9:"Laat zien";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Ukryte pozycje";s:11:"description";s:108:"Ukrywa pozycje/albumy z pozostawioną możliwością dostępu poprzez wprowadzenie prawidłowego adresu URL.";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Ascunde articole";s:11:"description";s:97:"Ascunde articolele/albumele pina cind vizitatorii nu le acceseaza direct cu URL-ul corespunzator.";s:10:"groupLabel";s:12:"Vizualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Dolda objekt";s:11:"description";s:72:"Dölj objekt/album från gäster tills dom accessas direkt med rätt URL";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Saklı Ögeler";s:11:"description";s:91:"Ögeleri/Albümleri doğru adresle erişilene kadar ziyaretçiler için saklı duruma getir";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:31:"Скрытые Элементы";s:11:"description";s:140:"Прячет элементы/альбомы от гостей, пока они не обратятся по точному адресу URL";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"隐藏项目";s:11:"description";s:84:"在用直接指到它们的网址存取前,隐藏项目或相簿不让访客看到";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"隱藏項目";s:11:"description";s:84:"在用直接指到它們的網址存取前,隱藏項目或相簿不讓訪客看到";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:120:"손님이 아이템이나 사진첩에 곧바로 접근하는 것으로부터 아이템이나 사진첩을 숨김니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"隠されたアイテム";s:11:"description";s:114:"正しいURLで直接アクセスされるまでは、アイテムやアルバムをゲストから隠しておく";s:10:"groupLabel";s:18:"ディスプレイ";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15352;a:25:{s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"httpauth";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"httpauth";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:15;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15727";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"en_GB";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"HTTP autentizace";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:11:"Autentizace";}s:5:"da_DK";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"de_DE";a:3:{s:4:"name";s:22:"HTTP Authentifizierung";s:11:"description";s:45:"Benutzer-Anmeldung via HTTP Authentifizierung";s:10:"groupLabel";s:17:"Authentifizierung";}s:5:"es_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"es_MX";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"es_AR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"et_EE";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fr_FR";a:3:{s:4:"name";s:21:"Authentification HTTP";s:11:"description";s:46:"Connexion à l'aide de l'authentification HTTP";s:10:"groupLabel";s:16:"Authentification";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"el_GR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"is_IS";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"it_IT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:47:"Fai il login utilizzando l'autenticazione HTTP.";s:10:"groupLabel";s:14:"Autenticazione";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"no_NO";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Autentykacja HTTP";s:11:"description";s:40:"Logowanie przy użyciu autentykacji HTTP";s:10:"groupLabel";s:12:"Autentykacja";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"HTTP-Auth";s:11:"description";s:43:"Inloggning med hjälp av HTTP-autentisering";s:10:"groupLabel";s:13:"Autentisering";}s:5:"th_TH";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"HTTP 認証";s:11:"description";s:27:"使用 HTTP 認証登入。";s:10:"groupLabel";s:6:"認証";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"HTTP 認証";s:11:"description";s:37:"HTTP認証を使ったログイン。";s:10:"groupLabel";s:6:"認証";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"he_IL";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}}s:9:"languages";a:1:{i:15727;a:28:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"icons";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"icons";s:7:"version";s:5:"1.1.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:5:"Ikone";s:11:"description";s:25:"Vertoon ikone vir skakels";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Icones";s:11:"description";s:30:"Mostrar icones per a enllaços";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:5:"Ikony";s:11:"description";s:26:"Zobrazení ikon pro odkazy";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Ikoner";s:11:"description";s:20:"Vis ikoner for links";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:20:"Symbol-Paket Browser";s:11:"description";s:27:"Zeige Symbole für Verweise";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Iconos";s:11:"description";s:29:"Mostrar iconos en los enlaces";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Iconos";s:11:"description";s:29:"Mostrar iconos en los enlaces";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Iconos";s:11:"description";s:29:"Mostrar iconos en los enlaces";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Ikonoak";s:11:"description";s:29:"Loturentzat ikonoak bistarazi";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Icônes";s:11:"description";s:34:"Affichage d'icônes pour les liens";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Icone";s:11:"description";s:28:"Visualizza icone per i links";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Ikonos";s:11:"description";s:22:"Rodyti nuorodų ikonas";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Ikonok";s:11:"description";s:28:"Ikonok mutatása a linkekhez";s:10:"groupLabel";s:9:"Kijelzés";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Iconen";s:11:"description";s:27:"Iconen weergeven voor links";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Ikony";s:11:"description";s:29:"Wyświetla ikony przy linkach";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Ícones";s:11:"description";s:26:"Mostrar ícones para links";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Iconite";s:11:"description";s:32:"Afiseaza iconite pentru link-uri";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Ikone";s:11:"description";s:23:"Prikaz ikona za linkove";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Ikonit";s:11:"description";s:24:"Näytä ikonit linkeille";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Ikoner";s:11:"description";s:24:"Visa ikoner för länkar";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"İkonlar";s:11:"description";s:36:"Linkler için ikonları görüntüle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Икони";s:11:"description";s:63:"Показване на икони до всяка връзка";s:10:"groupLabel";s:14:"Дисплей";}s:5:"ru_RU";a:3:{s:4:"name";s:12:"Иконки";s:11:"description";s:67:"Отображение иконок для ссылок в меню";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"图标";s:11:"description";s:24:"在链接上显示图标";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"小圖像";s:11:"description";s:27:"在鏈接上顯示小圖像";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:36:"연결에 아이콘을 보입니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"アイコン";s:11:"description";s:51:"リンクに対してアイコンを表示します";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"imageblock";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"imageblock";s:7:"version";s:7:"1.1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16689";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"en_GB";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Beeldblok";s:11:"description";s:59:"Willekeurig, Mees Onlangse of Mees Besigtigde Foto of Album";s:10:"groupLabel";s:6:"Blokke";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Blocs d'imatges";s:11:"description";s:71:"Aleatori. Imatge o àlbum més recents o més visitat.";s:10:"groupLabel";s:5:"Blocs";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Blok s obrázky";s:11:"description";s:69:"Náhodná, poslední nebo nejprohlíženější fotografie nebo album";s:10:"groupLabel";s:5:"Bloky";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Billedblok";s:11:"description";s:52:"Tilfældig, nyeste eller mest viste foto eller album";s:10:"groupLabel";s:6:"Blokke";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Bilderblock";s:11:"description";s:67:"Zufällige Auswahl aus neuestem oder meistgesehenem Bild oder Album";s:10:"groupLabel";s:7:"Blöcke";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Bloque de Imagenes";s:11:"description";s:51:"Foto o Álbum Aleatorio, Más Reciente o Más Visto";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Bloque de Imagenes";s:11:"description";s:51:"Foto o Álbum Aleatorio, Más Reciente o Más Visto";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Bloque de Imagenes";s:11:"description";s:51:"Foto o Álbum Aleatorio, Más Reciente o Más Visto";s:10:"groupLabel";s:7:"Bloques";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Pildiblokk";s:11:"description";s:68:"Juhuslik, Kõige Hilisem või Kõige Rohkem Vaadatud Foto või Album";s:10:"groupLabel";s:6:"Blokid";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"Irudi Blokea";s:11:"description";s:52:"Ausazko, azkeneko edo Ikusien den Album edo Argazkia";s:10:"groupLabel";s:7:"Blokeak";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Bloc image";s:11:"description";s:61:"Photo ou album aléatoire, le plus récent, le plus consulté";s:10:"groupLabel";s:5:"Blocs";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Bloc Íomhá";s:11:"description";s:62:"Íomhá nó albam randamach, nó is mó nua, nó is mó cuarta";s:10:"groupLabel";s:6:"Blocks";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Blocco Immagine";s:11:"description";s:55:"Foto o Album Casuali, Più Recenti oppure Più Visitati";s:10:"groupLabel";s:7:"Blocchi";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Attēlu bloks";s:11:"description";s:67:"Nejaušs, Pēdējais vai Visvairāk apskatītais attēls vai albums";s:10:"groupLabel";s:5:"Bloks";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Képblokk";s:11:"description";s:73:"Véletlen, legfrissebb vagy a legtöbbször megtekintett fotó vagy album";s:10:"groupLabel";s:7:"Blokkok";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Afbeelding Blok";s:11:"description";s:56:"Willekeurig, Meest Recent of Meest Bekeken Foto of Album";s:10:"groupLabel";s:7:"Blokken";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Blok Zdjęć";s:11:"description";s:73:"Przypadkowe, najnowsze lub najczęściej wyświetlane zdjęcia lub albumy";s:10:"groupLabel";s:5:"Bloki";}s:5:"pt_BR";a:3:{s:4:"name";s:15:"Bloco de imagem";s:11:"description";s:53:"Foto ou Álbum Aleatório, Mais Recente ou Mais Visto";s:10:"groupLabel";s:6:"Blocos";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Bloc imagine";s:11:"description";s:64:"la intimplare, ultimele sau cele mai vizualizate foto sau albume";s:10:"groupLabel";s:7:"Blocuri";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Blok sa slikom";s:11:"description";s:68:"Slučajno izabrana, najnovija ili najgledanija fotografija ili album";s:10:"groupLabel";s:7:"Blokovi";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Kuvalohko";s:11:"description";s:58:"Satunnainen, Viimeisin tai Eniten Katsottu Kuva tai Albumi";s:10:"groupLabel";s:6:"Lohkot";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Bildblock";s:11:"description";s:56:"Slumpmässig, Senaste eller Mest Visade Foto eller Album";s:10:"groupLabel";s:5:"Block";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Hộp Ảnh";s:11:"description";s:75:"Ảnh/Album ngẫu nhiên, mới nhất, hoặc được xem nhiều nhất";s:10:"groupLabel";s:5:"Hộp";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Resim Bloğu";s:11:"description";s:64:"Rastgele, En Yeni ya da En Çok Görüntülenen Foto veya Albüm";s:10:"groupLabel";s:7:"Bloklar";}s:5:"bg_BG";a:3:{s:4:"name";s:34:"Блок с Изображения";s:11:"description";s:91:"Случайна, ай-нова или най-гледана снимка или албум";s:10:"groupLabel";s:14:"Блокове";}s:5:"ru_RU";a:3:{s:4:"name";s:31:"Блок Изображения";s:11:"description";s:128:"Случайные, последние или самые просматриваемые Фотография или Альбом";s:10:"groupLabel";s:10:"Блоки";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"图像功能块";s:11:"description";s:45:"随机,最近或最具人气照片或相册";s:10:"groupLabel";s:9:"内容块";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"圖片區塊";s:11:"description";s:51:"隨機,最近或觀賞數最高的照片或相簿";s:10:"groupLabel";s:6:"區塊";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:71:"무작위, 가장 최근또는 가장 많이 본 사진또는 사진첩";s:10:"groupLabel";s:6:"Blocks";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"イメージブロック";s:11:"description";s:90:"ランダム、最近の、あるいはもっとも閲覧数の多い画像やアルバム";s:10:"groupLabel";s:12:"ブロック";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"he_IL";a:3:{s:4:"name";s:19:"בלוק תמונה";s:11:"description";s:71:"אלבום או תמונה אקראי, אחרון או הכי נצפה.";s:10:"groupLabel";s:12:"בלוקים";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}}s:9:"languages";a:1:{i:15342;a:36:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"itemadd";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"itemadd";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15812";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Voeg Items by";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Agregar Elements";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Přidat položky";s:11:"description";s:49:"Přidat položky z místního serveru nebo z webu";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Tilføj elementer";s:11:"description";s:52:"Tilføj elementer fra lokal server eller internettet";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Element hinzufügen";s:11:"description";s:64:"Elemente vom Gallery-Server oder von anderer Website hinzufügen";s:10:"groupLabel";s:11:"Importieren";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Añadir Elementos";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Agregar Elementos";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Agregar Items";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Lisa Pilte";s:11:"description";s:44:"Lisa pilte kohalikust serverist või veebist";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:17:"Elementuak Gehitu";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:22:"Ajouter des éléments";s:11:"description";s:60:"Ajouter des éléments depuis le serveur local ou sur le web";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Cuir Míreanna";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Aggiungi Oggetti";s:11:"description";s:44:"Aggiungi oggetti dal server locale o dal web";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"Naujas elementas";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:19:"Elemek hozzáadása";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Items Toevoegen";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Dodaj pozycje";s:11:"description";s:51:"Dodaje pozycje z serwera lokalnego lub ze stron WWW";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:15:"Adicionar itens";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:15:"Adicionar Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Adauga fotografii";s:11:"description";s:38:"Adauga articole din server sau din WWW";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Pridať položky";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Dodaj Predmete";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Dodaj Predmete";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Lisää Kuvia";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Lägg till objekt";s:11:"description";s:55:"Lägg till objekt från lokal server eller från webben";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Додати Елемент";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:21:"Thêm đối tượng";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Ögeler Ekle";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"bg_BG";a:3:{s:4:"name";s:33:"Добавете Елементи";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Добавить Элементы";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"添加项目";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"增加項目";s:11:"description";s:42:"從本地伺服器或網頁上加入項目";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:22:"아이템 추가하기";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"アイテム追加";s:11:"description";s:66:"ローカルサーバかウェブからアイテムを追加する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:15:"أضف مواد";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:21:"הוסף פריטים";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15812;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"imageframe";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"imageframe";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Fotoraam";s:11:"description";s:19:"Trek rame om beelde";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:19:"Rámečky obrázků";s:11:"description";s:37:"Zobrazení rámečků okolo obrázků";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Billedramme";s:11:"description";s:31:"Generer rammer omkring billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Bilderrahmen";s:11:"description";s:16:"Bilder einrahmen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"IrudiMarkoa";s:11:"description";s:37:"Irudi inguruko errenderizazio markoak";s:10:"groupLabel";s:9:"Bistarazu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Encadrements";s:11:"description";s:35:"Afficher un cadre autour des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:40:"Visualizza cornici intorno alle immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Attēlu rāmis";s:11:"description";s:33:"Zīmēt rāmjus apkārt attēliem";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"VaizdoRėmas";s:11:"description";s:41:"Aplink paveikslėlius generuoti rėmelius";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Képkeret";s:11:"description";s:35:"Keret elhelyezése a képek körül";s:10:"groupLabel";s:9:"Kijelzés";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"AfbeeldingsKader";s:11:"description";s:33:"Genereer kaders rond afbeeldingen";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Ramki";s:11:"description";s:34:"Dodaje ramki do zdjęć i albumów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Cadre imagine";s:11:"description";s:25:"Afiseaza cadrele imaginii";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Okvir slike";s:11:"description";s:23:"Prikaz okvira oko slika";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"KuvaKehys";s:11:"description";s:35:"Näytä kehykset kuvien ympärillä";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Bildram";s:11:"description";s:25:"Rendera ramar runt bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"ResimÇerçevesi";s:11:"description";s:39:"Çerçeveleri resim etrafında çevrele";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Рамки Изображений";s:11:"description";s:61:"Создает рамки вокруг изображений";s:10:"groupLabel";s:22:"Отображения";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"图像边框";s:11:"description";s:24:"环绕图像渲染边框";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"圖片邊框";s:11:"description";s:27:"在圖片週圍畫上邊框";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:36:"이미지에 액자를 씌웁니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"イメージフレーム";s:11:"description";s:39:"フレームを画像の周りに描く";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"imagemagick";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"imagemagick";s:7:"version";s:5:"1.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Imagemagick";s:11:"description";s:48:"ImageMagick / GraphicsMagick Grafiese Hulpmiddel";s:10:"groupLabel";s:20:"Grafiese Hulpmiddele";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"Grafický nástroj ImageMagick/GraphicsMagick";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:46:"ImageMagick / GraphicsMagick grafisk værktøj";s:10:"groupLabel";s:20:"Grafiske værktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:48:"ImageMagick / GraphicsMagick Grafik-Werkzeugsatz";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:51:"Herramientas Gráficas ImageMagick / GraphicsMagick";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:51:"Herramientas Gráficas ImageMagick / GraphicsMagick";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:51:"Herramientas Gráficas ImageMagick / GraphicsMagick";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:50:"ImageMagick / GraphicsMagick Tresnabarra Grafikoak";s:10:"groupLabel";s:21:"Tresnabarra Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:56:"Boîte à outils graphiques ImageMagick / GraphicsMagick";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:41:"Εργαλειοθήκη Γραφικών";}s:5:"is_IS";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:53:"Set di Strumenti Grafici ImageMagick / GraphicsMagick";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:48:"ImageMagick / GraphicMagick grafikas aprīkojums";s:10:"groupLabel";s:20:"Grafikas aprīkojums";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:57:"ImageMagick / GraphicsMagick grafinių įrankių rinkinys";s:10:"groupLabel";s:28:"Grafikos įrankių rinkiniai";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Imagemagick";s:11:"description";s:46:"ImageMagick / GraphicsMagick Grafische Toolkit";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:28:"Pakiet graficzny ImageMagick";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:58:"Caixa de ferramentas gráfica ImageMagick / GraphicsMagick";s:10:"groupLabel";s:31:"Caixas de ferramentas gráficas";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick grafička alatka";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:47:"ImageMagick / GraphicsMagick Grafiikkatyökalut";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:40:"ImageMagick grafisk verktygsuppsättning";s:10:"groupLabel";s:31:"Grafiska verktygsuppsättningar";}s:5:"th_TH";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:46:"ImageMagick / GraphicsMagick Grafik Araçları";s:10:"groupLabel";s:17:"Grafik Araçları";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:74:"Графические Инструменты ImageMagick / GraphicsMagick";s:10:"groupLabel";s:46:"Графические Инструменты ";}s:5:"zh_CN";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:38:"ImageMagick/GraphicsMagick图像工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:41:"ImageMagick / GraphicsMagick 圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:65:"ImageMagick / GraphicsMagick グラフィックツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:1:{i:15342;a:36:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"jpegtran";a:2:{s:6:"header";a:5:{s:2:"id";s:8:"jpegtran";s:7:"version";s:5:"0.9.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:14:"buildTimestamp";s:5:"16119";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"zh_CN";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"zh_TW";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ko_KR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ja_JP";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Jpegtran";s:11:"description";s:50:"Graphics toolkit for lossless JPEG transformations";s:10:"groupLabel";s:17:"Graphics Toolkits";}}}s:8:"keyalbum";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"keyalbum";s:7:"version";s:7:"1.0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:25:"Alba s klíčovými slovy";s:11:"description";s:61:"Dynamická alba vycházející z hledaných klíčových slov";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:20:"Schlüsselwort-Alben";s:11:"description";s:55:"Dynamische Alben basierend auf der Schlüsselwort-Suche";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Albums mots clés";s:11:"description";s:55:"Albums dynamiques basés sur la recherche de mots clés";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:40:"Λέξεις Κλειδιά Άλπουμ";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:19:"Album Parola Chiave";s:11:"description";s:52:"Album dinamici basati sulla ricerca di parole chiave";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:23:"Album słów kluczowych";s:11:"description";s:62:"Album dynamiczny oparty na wyszukiwaniu po słowach kluczowych";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:20:"Albume Cuvinte-cheie";s:11:"description";s:40:"Albume dinamice pe baza cuvintelor cheie";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:22:"Albumi ključnih reči";s:11:"description";s:59:"Dinamički albumi bazirani na pretrazi po ključnim rečima";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Nyckelordsalbum";s:11:"description";s:47:"Dynamiskt album baserat på nyckelords sökning";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:25:"Anahtar Kelime Albümleri";s:11:"description";s:47:"Anahtar kelime arama tabanlı dinamik albümler";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:49:"Альбомы по ключевому слову";s:11:"description";s:114:"Динамические альбомы, основанные на поиске по ключевому слову";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"關鍵字相簿";s:11:"description";s:45:"由關鍵字搜尋結果產生的動態相簿";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"キーワードアルバム";s:11:"description";s:54:"キーワード検索に基づく動的なアルバム";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16476";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"linkitem";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"linkitem";s:7:"version";s:7:"1.1.2.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Odkaz na položky";s:11:"description";s:53:"Tvorba odkazů na jiná alba nebo externí URL adresy";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Link emner";s:11:"description";s:52:"Opret links til andre albummer eller eksterne URL'er";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Element-Verweise";s:11:"description";s:66:"Erzeugt einen Verweis auf ein anderes Album, oder eine externe URL";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Elementuak Lotu";s:11:"description";s:47:"Beste album edo kanpoko URL-etara loturak sortu";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"Liens";s:11:"description";s:52:"Créer des liens vers des albums ou des URL externes";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:29:"Σύνδεση Αρχείων";s:11:"description";s:115:"Δημιουργία συνδέσμων σε άλλα άλμπουμ ή εξωτερικές διευθύνσεις";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Oggetti Link";s:11:"description";s:40:"Crea link ad altri album o a url esterni";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Elementų nuorodos";s:11:"description";s:57:"Sukurti nuorodas į kitus albumus arba į išorinius URL.";s:10:"groupLabel";s:11:"Vaizdavimas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:58:"Linkeket készít más albumokra, vagy külső webcímekre";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:50:"Maak links naar andere albums of naar externe URLs";s:10:"groupLabel";s:9:"Weergeven";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Linki";s:11:"description";s:62:"Tworzy linki do innego albumu lub do zewnętrzych adresów URL";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Leaga articole";s:11:"description";s:54:"Creeaza legaturi catre alte albume sau URL-uri externe";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Prikaz";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Objekti-veze";s:11:"description";s:56:"Pravljenje veza ka drugim albumima ili spoljnim adresama";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Länka objekt";s:11:"description";s:49:"Skapa länk till anndra album eller externa URLer";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:64:"Diğer albümlere yada dış kaynaklı url'lere bağlantı yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Ссылки на элементы";s:11:"description";s:99:"Создает ссылки на другие альбомы или внешние адреса url";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"链接项目";s:11:"description";s:48:"产生指到其他相簿或外部网址的链接";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"鏈接項目";s:11:"description";s:48:"產生指到其他相簿或外部網址的鏈接";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:62:"사진첩또는 확장된 주소등에 연결을 만듭니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16665";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16665";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16665";s:2:"de";s:5:"16040";s:2:"el";s:5:"16665";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16665";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16665";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16665";s:2:"sr";s:5:"16665";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16665";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"members";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"members";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:4:"Lede";s:11:"description";s:21:"Ledelyste en profiele";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Membres";s:11:"description";s:28:"Llistas i Perfils de Membres";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Uživ. nastavení";s:11:"description";s:29:"Seznam uživatelů a profilů";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Medlemmer";s:11:"description";s:24:"Medlemsliste og profiler";s:10:"groupLabel";s:7:"Galleri";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Mitglieder";s:11:"description";s:27:"Mitgliederliste und Profile";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Miembros";s:11:"description";s:32:"Lista y Perfiles de los Miembros";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Miembros";s:11:"description";s:29:"Listas y Perfiles de Miembros";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Miembros";s:11:"description";s:29:"Listas y Perfiles de Miembros";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Kasutajad";s:11:"description";s:32:"Kasutajate Nimekiri ja Profiilid";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Kideak";s:11:"description";s:26:"Kide Zerrenda eta Profilak";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Membres";s:11:"description";s:28:"Liste des membres et profils";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"Baill";s:11:"description";s:30:"Liosta na baill agus achoimrí";s:10:"groupLabel";s:10:"Gailearaí";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:16:"Γκαλλερύ";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Membri";s:11:"description";s:22:"Lista Membri e Profili";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Lietotāji";s:11:"description";s:30:"Lietotāju saraksts un profili";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Nariai";s:11:"description";s:29:"Narių sąrašas ir profiliai";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:5:"Tagok";s:11:"description";s:25:"Tagok listája, es adatai";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:5:"Leden";s:11:"description";s:23:"Ledenlijst en Profielen";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Użytkownicy";s:11:"description";s:30:"Lista i profile użytkowników";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:27:"Lista de Usuários e Perfis";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Galeria";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Membri";s:11:"description";s:27:"Lista de membrii si profile";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Členovia";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:8:"Galerija";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Članovi";s:11:"description";s:25:"Spisak članova i profili";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:16:"Ryhmän Jäsenet";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Medlemmar";s:11:"description";s:25:"Medlemslista och profiler";s:10:"groupLabel";s:7:"Galleri";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Учасник";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Thành viên";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Üyeler";s:11:"description";s:26:"Üye Listesi ve Profilleri";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:22:"Потребители";s:11:"description";s:62:"Списък и Профили на Потребителите";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:39:"Список пользователей";s:11:"description";s:62:"Список пользователей и их Профили";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"用户";s:11:"description";s:21:"用户列表和档案";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"會員";s:11:"description";s:21:"會員列表和檔案";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"회원";s:11:"description";s:29:"회원 목록과 개인정보";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"メンバー";s:11:"description";s:42:"メンバーリストとプロフィール";s:10:"groupLabel";s:15:"ギャラリー";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"الأعضاء";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:14:"משתמשים";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:12:"גלרייה";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15342;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"migrate";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"migrate";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15448";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Migrasie";s:11:"description";s:39:"Migreer u Gallery 1 albums na Gallery 2";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Migrace";s:11:"description";s:40:"Migrace alb z Galerie verze 1 do verze 2";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:53:"Migrieren Sie Ihre Alben aus Gallery 1 nach Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Migración";s:11:"description";s:43:"Migra tus Álbumes de Gallery 1 a Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Migración";s:11:"description";s:43:"Migra tus Álbumes de Gallery 1 a Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Migración";s:11:"description";s:43:"Migra tus Álbumes de Gallery 1 a Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Migrazioa";s:11:"description";s:43:"Zure Gallery 1 albumak Gallery 2-ra migratu";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:64:"Migration des utilisateurs et albums de Gallery 1 vers Gallery 2";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:12:"Iompórtáil";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Migrazione";s:11:"description";s:44:"Migra i tuoi album di Gallery 1 in Gallery 2";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Migratie";s:11:"description";s:42:"Migreer uw Gallery 1 albums naar Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Migracja";s:11:"description";s:39:"Migruje albumy z Gallery 1 do Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Migracija";s:11:"description";s:50:"Migriranje albuma iz vaše Galerije 1 u Galeriju 2";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Siirto";s:11:"description";s:41:"Siirtä Gallery 1:n albumit Gallery 2:een";s:10:"groupLabel";s:3:"Tuo";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Migrering";s:11:"description";s:43:"Migrera dina Gallery 1 album till Gallery 2";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Taşıma";s:11:"description";s:47:"Galeri 1 albümlerinizi Gallery 2'ye taşıyın";s:10:"groupLabel";s:11:"Dış Alım";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:16:"Миграция";s:11:"description";s:75:"Миграция альбомов из Галереи 1 в Галерею 2";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"迁移";s:11:"description";s:35:"迁移您的图库1相册到图库2";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"遷移";s:11:"description";s:49:"把你的 Gallery 1 相簿遷移到 Gallery 2 中";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"移行";s:11:"description";s:57:"Gallery 1 のアルバムを Gallery 2 に移行します";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15448;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"mime";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"mime";s:7:"version";s:5:"1.1.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"MIME Onderhoud";s:11:"description";s:40:"Onderhou MIME tipes en lêeruitbreidings";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Manteniment MIME";s:11:"description";s:55:"Mantingues els tipus MIME i les extensions dels fitxers";s:10:"groupLabel";s:11:"Dades extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:12:"Správa MIME";s:11:"description";s:38:"Správa MIME typů a přípon souborů";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:20:"MIME Vedligeholdelse";s:11:"description";s:37:"Vedligehold MIME typer og filendelser";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:15:"MIME-Verwaltung";s:11:"description";s:38:"MIME-Typen und Dateiendungen verwalten";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Mantenimiento MIME";s:11:"description";s:57:"Mantiene los tipos MIME y las extensiones de los archivos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Mantenimiento MIME";s:11:"description";s:57:"Mantiene los tipos MIME y las extensiones de los archivos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Mantenimiento MIME";s:11:"description";s:57:"Mantiene los tipos MIME y las extensiones de los archivos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:13:"MIME Mantenua";s:11:"description";s:43:"Mime motak eta fitxategi luzapenak mantendu";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:26:"Maintenance des types MIME";s:11:"description";s:53:"Maintenir les types MIME et les extensions de fichier";s:10:"groupLabel";s:25:"Données complémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:17:"Manutenzione MIME";s:11:"description";s:45:"Gestisce i tipi MIME e le estensioni dei file";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"MIME Onderhoud";s:11:"description";s:41:"Onderhoud MIME typen en bestandsextensies";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Obsługa MIME";s:11:"description";s:42:"Obsługa typów MIME i rozszerzeń plików";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:39:"Manutenção dos tipos MIME";s:11:"description";s:49:"Mantenha tipos MIME e extensões do arquivo";s:10:"groupLabel";s:16:"Dados adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:16:"MIME održavanje";s:11:"description";s:48:"Ažuriranje MIME tipova i datotečnih ekstenzija";s:10:"groupLabel";s:14:"Dodatni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"MIME-Underhåll";s:11:"description";s:38:"Underhåll MIME-typer och filändelser";s:10:"groupLabel";s:16:"Extrainformation";}s:5:"th_TH";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"MIME Bakımı";s:11:"description";s:51:"MIME türlerinin ve dosya uzantılarının bakımı";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:24:"Поддержка MIME ";s:11:"description";s:75:"Поддержка MIME типов и файловых расширений";s:10:"groupLabel";s:41:"Дополнительные Данные";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"MIME维护";s:11:"description";s:34:"维护MIME类型和文件扩展名";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"MIME 維護";s:11:"description";s:30:"維護 MIME 類型和副檔名";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:23:"MIME メンテナンス";s:11:"description";s:59:"MIME タイプと拡張子のメンテナンスをします";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"mp3audio";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"mp3audio";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:9;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15887";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:64:"Umožnit online přehrávání mp3 audio souborů flash playerem";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:97:"Aktivieren Sie das Abspielen von MP3 Audiodateien durch einen in Gallery integrierten Flashplayer";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:86:"Habilita la reproducción en línea de archivos de sonido MP3 con un reproductor flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:86:"Habilita la reproducción en línea de archivos de sonido MP3 con un reproductor flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:86:"Habilita la reproducción en línea de archivos de sonido MP3 con un reproductor flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:72:"Activer la lecteur en ligne des fichiers audio MP3 avec un lecteur Flash";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:59:"Attiva l'ascolto in linea di audio mp3 con un lettore flash";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:3:"MP3";s:11:"description";s:61:"Włącz uruchamianie plików mp3 za pomocą odtwarzacza flash";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:71:"Permite ascultarea fisierelor audio MP3 cu ajutorului unui flash player";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"MP3 Ljud";s:11:"description";s:64:"Aktivera inbygd uppspelning av mp3 ljudfiler via en flashspelare";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:4:"MP3 ";s:11:"description";s:69:"Flahs oynatıcısı ile mp3 dosyalarının çalınmasını etkin kıl";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"MP3 音樂";s:11:"description";s:54:"使用 Flash 播放程式直接播放 MP3 音樂檔案";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:19:"MP3 オーディオ";s:11:"description";s:103:"インライン FLASH プレイヤーによるMP3オーディオファイルの再生を有効にする";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15887;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"multilang";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"multilang";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Meertalig";s:11:"description";s:38:"Ondersteun item byskrifte in meer tale";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Multillenguatje";s:11:"description";s:48:"Suport per etiquetes d'elements en varis idiomes";s:10:"groupLabel";s:17:"Informació extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Více jazyků";s:11:"description";s:42:"Podpora vícejazyčných popisků položek";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:40:"Understøt objekttekster på flere sprog";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Mehrsprachigkeit";s:11:"description";s:55:"Unterstützung für mehrsprachige Elementbeschriftungen";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:11:"MultiIdioma";s:11:"description";s:64:"Soporte para las etiquetas de los elementos en multiples idiomas";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:11:"MultiIdioma";s:11:"description";s:64:"Soporte para las etiquetas de los elementos en multiples idiomas";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:11:"MultiIdioma";s:11:"description";s:64:"Soporte para las etiquetas de los elementos en multiples idiomas";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Hizkuntz Anitz";s:11:"description";s:36:"Epigrafeak hizkuntz anitzetan onartu";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"Multilangue";s:11:"description";s:44:"Support des sous-titres en plusieurs langues";s:10:"groupLabel";s:24:"Données suplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:55:"Supporta le didascalie degli oggetti in lingue multiple";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Daugiakalbiškumas";s:11:"description";s:51:"Elementų antraščių keliomis kalbomis palaikymas";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"Többnyelvűség";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Adat";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Meertalig";s:11:"description";s:47:"Ondersteund item bijschriften in meerdere talen";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Wielojęzykowość";s:11:"description";s:45:"Wspiera obsługę podpisów w wielu językach";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:15:"Višejezičnost";s:11:"description";s:44:"Podrška za natpise objekata na više jezika";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Multipla Språk";s:11:"description";s:41:"Stöd objektrukriker på multipla språk ";s:10:"groupLabel";s:17:"Extra information";}s:5:"th_TH";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"ÇokluDil";s:11:"description";s:43:"Öge başlıklarını Çokludil'de destekle";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:45:"Многоязыковая поддержка";s:11:"description";s:89:"Поддержка заголовков элементов на разных языках";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"多语言";s:11:"description";s:27:"支持多语言项目标题";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"多國語言";s:11:"description";s:33:"支援多國語言的項目說明";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"多言語";s:11:"description";s:57:"多言語のアイテムキャプションをサポート";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"multiroot";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"multiroot";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:8;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:38:"Definovat náhradní pohled na Galerii";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:57:"Definieren Sie eine Alternative Gastansicht Ihrer Gallery";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Multi-racine";s:11:"description";s:49:"Définir une vue d'invité alternative de Gallery";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:69:"Definisci una visualizzazione alternativa di Gallery per i visitatori";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:49:"Definiuje alternatywny wygląd galerii dla gości";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:43:"Definiera en alternativ gäst-vy av Gallery";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Çoklukök";s:11:"description";s:52:"Galeri için alternatif ziyaretçi izlemesi tanımla";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"多重根相簿";s:11:"description";s:42:"定義訪客看到的不同 Gallery 畫面";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:59:"Gallery のゲスト向け代替ビューを定義します";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"netpbm";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"netpbm";s:7:"version";s:5:"1.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:24:"NetPBM Grafische Toolkit";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:25:"Grafický nástroj NetPBM";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:24:"NetPBM grafisk værktøj";s:10:"groupLabel";s:17:"Grafikværktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:26:"NetPBM Grafik-Werkzeugsatz";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"Herramienta Gráfica NetPBM";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"Herramienta Gráfica NetPBM";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"Herramienta Gráfica NetPBM";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"NetPBM Tresna-joko grafikoa";s:10:"groupLabel";s:20:"Tresna-joko Grafikoa";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:34:"Boîte à outils graphiques NetPBM";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:41:"Εργαλειοθήκη Γραφικών";}s:5:"is_IS";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:31:"Set di Strumenti Grafici NetPBM";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"NetPGM grafikas aprīkojums";s:10:"groupLabel";s:20:"Grafikas aprīkojums";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:34:"NetPBM grafikos įrankių rinkinys";s:10:"groupLabel";s:28:"Grafikos įrankių rinkiniai";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:24:"NetPBM Grafische Toolkit";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"Pakiet graficzny NetPBM";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:31:"Caixas de ferramentas gráficas";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM grafička alatka";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:26:"NetPBM Grafiikka Työkalut";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Grafiska Verktyg";s:10:"groupLabel";s:16:"Grafiska Verktyg";}s:5:"th_TH";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:34:"Bộ công cụ đồ họa NetPBM";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"NetPBM Grafik Araçtakımı";s:10:"groupLabel";s:20:"Grafik Araçtakımı";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:52:"Графические Инструменты NetPBM";s:10:"groupLabel";s:45:"Графические Инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:18:"NetPBM图形工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:19:"NetPBM 圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:43:"NetPBM グラフィックツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:40:"ערכת כלים גרפיים ל-NetPBM";s:10:"groupLabel";s:30:"ערכת כלים גרפיים";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:1:{i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"newitems";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"newitems";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Nuwe Items";s:11:"description";s:31:"Lig nuwe/opgedateerde items uit";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Nous Items";s:11:"description";s:29:"Destacar item nou/actualitzat";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:14:"Nové položky";s:11:"description";s:56:"Zvýraznění nových/zaktualizovaných položek Galerie";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Nye Objekter";s:11:"description";s:39:"Fremhæv nye/opdaterede galleriobjekter";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Neue Elemente";s:11:"description";s:45:"neue/aktualisierte Gallery-Elemente markieren";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:16:"Nuevos Elementos";s:11:"description";s:52:"Destaca los elementos nuevos/actualizados de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:16:"Nuevos Elementos";s:11:"description";s:52:"Destaca los elementos nuevos/actualizados de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:16:"Nuevos Elementos";s:11:"description";s:52:"Destaca los elementos nuevos/actualizados de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:19:"Uued Pildid/Albumid";s:11:"description";s:47:"Märgista uued/uuendatud Galerii albumid/pildid";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:16:"Elementu Berriak";s:11:"description";s:37:"Nabarmendu elementu berri/eguneratuak";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:19:"Nouveaux éléments";s:11:"description";s:77:"Mettre en avant les nouveaux éléments de Gallery ainsi que ceux mis à jour";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Oggetti Nuovi";s:11:"description";s:58:"Metti in copertina gli oggetti di Gallery nuovi/aggiornati";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:15:"Nauji elementai";s:11:"description";s:51:"Išryškinti naujus/atnaujintus Galerijos elementus";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Új elemek";s:11:"description";s:45:"Új/frissített galéria elemek megjelölése";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:12:"Nieuwe Items";s:11:"description";s:40:"Albumafbeelding nieuwe/bijgewerkte items";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Nowe pozycje";s:11:"description";s:44:"Zaznacza nowe/zaktualizowane pozycje galerii";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"Itens novos";s:11:"description";s:43:"Destacar itens novos/atualizados da Galeria";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Articole noi";s:11:"description";s:41:"Evidentiaza articolele noi sau modificate";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Novi objekti";s:11:"description";s:52:"Obeležavanje novih ili izmenjenih objekata Galerije";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Uudet Kohteet";s:11:"description";s:43:"Korosta uudet/päivitetyt Gallerian kohteet";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Nya Object";s:11:"description";s:54:"Lägg nya/uppdaterade Gallery objekt som Higlight bild";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:21:"Đối tượng mới";s:11:"description";s:58:"Đánh dấu các đối tượng mới thêm/cập nhật";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Yeni Ögeler";s:11:"description";s:47:"Yeni/Güncel Galeri ögelerini Öngösterim yap";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:25:"Нови елементи";s:11:"description";s:96:"Отличаване на новите/променените елементи в Галерия";s:10:"groupLabel";s:14:"Дисплей";}s:5:"ru_RU";a:3:{s:4:"name";s:27:"Новые Элементы";s:11:"description";s:83:"Выделяет новые/измененные элементы в Галерее";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"新项目";s:11:"description";s:43:"高亮显示新增/已更新的图库项目";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"新項目";s:11:"description";s:45:"標示新增或最近更新的 Gallery 項目";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:55:"새로운 또는 업데이트된 아이템 강조하기";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"新しいアイテム";s:11:"description";s:49:"新規/更新アイテムをハイライトする";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"nokiaupload";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"nokiaupload";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Nokia Beeld Oplaai";s:11:"description";s:55:"Implementering van Nokia Beeld Oplaai Bediener API v1.1";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:49:"Implementace "Nokia Image Upload Server API v1.1"";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementering af Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Nokia Bilder-Upload";s:11:"description";s:54:"Implementierung der Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:27:"Carga de Imágenes de Nokia";s:11:"description";s:74:"Implementación de la API v1.1 del Servidor de Carga de Imágenes de Nokia";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:27:"Carga de Imágenes de Nokia";s:11:"description";s:74:"Implementación de la API v1.1 del Servidor de Carga de Imágenes de Nokia";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:27:"Carga de Imágenes de Nokia";s:11:"description";s:74:"Implementación de la API v1.1 del Servidor de Carga de Imágenes de Nokia";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:18:"Nokia Irudi Igoera";s:11:"description";s:53:"Nokia Irudi Igoera Zerbitzari API v.1. inplementazioa";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:31:"Téléchargement d'images Nokia";s:11:"description";s:55:"Implémentation de l'API Nokia Image Upload Server v1.1";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:60:"Implementazione delle Api v1.1 del Server Nokia Image Upload";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:22:"Nokia Afbeeling Upload";s:11:"description";s:57:"Implementatie van Nokia Afbeelding Upload Server API v1.1";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:49:"Implementacja serwera Nokia Image Upload API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:48:"Implementarea Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Nokia prenos slika";s:11:"description";s:49:"Nokia Image Upload Server API v1.1 implementacija";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:22:"Nokia Bild uppladdning";s:11:"description";s:58:"Impementation av Nokia's Bild Uppladdnings Server API v1.1";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:22:"Nokia Resim Gönderimi";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:53:"Внедрение Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:44:"诺基亚图片上传服务器API v1.1工具";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"Nokia 圖片上傳";s:11:"description";s:43:"Nokia 圖片上傳伺務器 API v1.1 工具";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"ノキア画像アップロード";s:11:"description";s:44:"Nokia Image Upload Server API v1.1 の実装";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"panorama";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"panorama";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:8;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:54:"Besigtig breë jpeg/gif beelde in 'n java applet kyker";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:55:"Zobrazení širokých JPEG/GIF obrázků v java appletu";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:54:"Vis brede jpeg/gif billeder i en java-applet fremviser";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:63:"Breitformatige JPEG-/GIF-Bilder in einem Java Applet betrachten";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:66:"Ver las imágenes jpeg/gif panorámicas en un visor applet de java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:66:"Ver las imágenes jpeg/gif panorámicas en un visor applet de java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:66:"Ver las imágenes jpeg/gif panorámicas en un visor applet de java";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:58:"Bistarazi jpeg/gif irudi handiak java applet ikustatzailea";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:60:"Visualiser les images larges JPEG / GIF dans une applet Java";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:67:"Visualizza immagini jpeg/gif ampie in un visualizzatore java applet";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:65:"Žiūrėti plačias jpeg/gif fotografijas java programos pagalba.";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:62:"Bekijk brede jpeg/gif afbeeldingen in een java applet weergave";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:85:"Pokazuje szerokie obrazy jpeg/gif w przeglądarce panoramicznych zdjęć (aplet java)";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:68:"Ver imagens jpeg/gif grandes em um visualizador feito em applet java";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:53:"Pregled širokih JPEG i GIF slika pomoću Java apleta";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"Visa breda jpeg/gif bilder i en javaapplet visare";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:16:"Панорама";s:11:"description";s:99:"Перегляд широких малюнків jpeg/gif за допомогою аплету java";s:10:"groupLabel";s:24:"Відображення";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:71:"Geniş jpeg/gif resimlerini java applet görüntüleyicide görüntüle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:16:"Панорама";s:11:"description";s:100:"Просмотр широких jpeg/gif изображений с помощью java аплета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"全景";s:11:"description";s:60:"在一个JAVA程序浏览器中查看宽幅面JPEG/GIF图片";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"全景圖片";s:11:"description";s:58:"在一個 Java 瀏覽程式中觀賞寬角 JPEG/GIF 圖片";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"파노라마";s:11:"description";s:94:"자바 애플릿을 이용해 JPEG또는 GIF 이미지 파일을 와이드로 보여줍니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"パノラマ";s:11:"description";s:62:"ワイドなJPEG/GIF画像をJava applet ビューワで見る";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"password";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"password";s:7:"version";s:5:"1.0.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15352";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:21:"Zaheslované položky";s:11:"description";s:60:"Přiřadí hesla pro zobrazení určitých alb nebo položek";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:18:"Kodeords-elementer";s:11:"description";s:63:"Tildel kodeord for at kunne se bestemte albummer eller objekter";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:17:"Passwort-Elemente";s:11:"description";s:75:"Vergeben Sie Passwörter für das Betrachten bestimmter Alben oder Elemente";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:25:"Elementos con Contraseña";s:11:"description";s:64:"Asignar contraseñas para ver elementos o álbumes en particular";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:25:"Elementos con Contraseña";s:11:"description";s:64:"Asignar contraseñas para ver elementos o álbumes en particular";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:25:"Elementos con Contraseña";s:11:"description";s:64:"Asignar contraseñas para ver elementos o álbumes en particular";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:22:"Pasahitzdun Elementuak";s:11:"description";s:55:"Banakako album edo elementuak ikusteko pasahitza ezarri";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:29:"Mots de passe pour éléments";s:11:"description";s:70:"Assigner des mots de passe pour afficher certains albums ou éléments";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Oggetti Password";s:11:"description";s:66:"Assegna una password per visualizzare determinati album od oggetti";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"wachtwoord items";s:11:"description";s:61:"wachtwoord beveiliging voor specifieke albums of afbeeldingen";s:10:"groupLabel";s:9:"Laat zien";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Hasła pozycji";s:11:"description";s:86:"Ustawia hasła zabezpieczające przed oglądaniem poszczególnych albumów lub pozycji";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:18:"Articole cu parola";s:11:"description";s:61:"Alege parole pentru vizualizarea anumitor albume sau articole";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Lösenordsskydda";s:11:"description";s:49:"Tilldela lösenord för skydd av album och objekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"Şifreli Ögeler";s:11:"description";s:68:"Bazı albümlerin ya da ögelerin görüntülenmesi için şifre ata";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:27:"Защита Паролем";s:11:"description";s:110:"Защита паролем просмотра конкретных альбомов или элементов";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"密码保护项目";s:11:"description";s:48:"指定观看特定相簿或项目所需的密码";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"密碼保護項目";s:11:"description";s:48:"指定觀看特定相簿或項目所需的密碼";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"아이템 열쇠글";s:11:"description";s:62:"사진첩또는 아이템이 암호를 걸어 보호합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"パスワードアイテム";s:11:"description";s:84:"特定のアルバムやアイテムを見るためのパスワードを設定する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15352;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"permalinks";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"permalinks";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Aliasy";s:11:"description";s:42:"Aliasy (trvalé aliasy) pro Vaše položky";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Permanente Verweise";s:11:"description";s:61:"Erstellen Sie simplere permanente Verweise zu Ihren Elementen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:13:"Loturafinkoak";s:11:"description";s:53:"Zure elementuen eremura ezizen finko sinple bat sortu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Liens permanents";s:11:"description";s:69:"Créer simplement des liens permanents vers vos éléments de Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:60:"Crea degli alias permanenti più semplici per i tuoi oggetti";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:32:"Maak simpele aliases naar items.";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Linki bezpośrednie";s:11:"description";s:65:"Tworzy proste linki bezpośrednie do pozycji (albumów) w galerii";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Permalink-uri";s:11:"description";s:56:"Creeaza legaturi permanente simple catre articolele tale";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Permanentalänkar";s:11:"description";s:49:"Skapa enklare permanenta aliases till dina objekt";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Постоянные ссылки";s:11:"description";s:101:"Создание элементарных постоянных ссылок для элементов";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"固定网址";s:11:"description";s:45:"为你的项目产生简单、固定的别名";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"固定網址";s:11:"description";s:45:"為你的項目產生簡單、固定的別名";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"고유 주소";s:11:"description";s:80:"당신의 아이템에 반 영구적인 간단한 별칭을 줄수 있습니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"Permalink";s:11:"description";s:69:"アイテム空間への簡潔で永続的なエイリアスの作成";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:3:"rss";a:3:{s:6:"header";a:6:{s:2:"id";s:3:"rss";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:1;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"en_GB";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"af_ZA";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ca_ES";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"cs_CZ";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"da_DK";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:7:"Eksport";}s:5:"de_DE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:11:"Exportieren";}s:5:"es_ES";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_MX";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_AR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"et_EE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"eu_ES";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"fr_FR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exporter";}s:5:"ga_IE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"el_GR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"is_IS";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"it_IT";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:7:"Esporta";}s:5:"lv_LV";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"lt_LT";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"hu_HU";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"nl_NL";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:9:"Exporteer";}s:5:"no_NO";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"pl_PL";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"pt_BR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"pt_PT";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ro_RO";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sk_SK";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sl_SI";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sr_YU";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"fi_FI";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sv_SE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:9:"Exportera";}s:5:"th_TH";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"uk_UA";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:11:"Exportieren";}s:5:"vi_VN";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"tr_TR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:7:"İhraç";}s:5:"bg_BG";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ru_RU";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:14:"Экспорт";}s:5:"zh_CN";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"导出";}s:5:"zh_TW";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"滙出";}s:5:"ko_KR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ja_JP";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:18:"エクスポート";}s:5:"ar_SA";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"he_IL";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:10:"ייצוא";}s:5:"fa_IR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}}s:9:"languages";a:1:{i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"photoaccess";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"photoaccess";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:37:"Modul tisku fotografií na PhotoWorks";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"de_DE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:27:"PhotoWorks Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:41:"Módulo de Impresión de Fotos PhotoWorks";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:41:"Módulo de Impresión de Fotos PhotoWorks";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:41:"Módulo de Impresión de Fotos PhotoWorks";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:26:"Impressions via PhotoWorks";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:36:"Modulo di Stampa Foto con PhotoWorks";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:29:"PhotoWorks Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:28:"Moduł drukowania PhotoWorks";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:6:"Kauppa";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:30:"PhotoAccess Fotoutskriftsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:30:"PhotoWoks Foto Baskı Modülü";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:62:"Модуль печати фотографий на PhotoWorks";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:30:"PhotoAccess 照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:29:"PhotoWorks 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:31:"PhotoWorks 사진 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:38:"PhotoWorks 写真印刷モジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:20:{s:2:"af";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"picasa";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"picasa";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:30:"Import do Picasa 2 XML-Exporty";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:38:"Importfilter für Picasa 2 XML-Exporte";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:37:"Importar para XML-Exports de Picasa 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:37:"Importar para XML-Exports de Picasa 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:37:"Importar para XML-Exports de Picasa 2";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:33:"Import des export XML de Picasa 2";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Importa da Picasa 2 XML-Exports";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:41:"Importas programos Picasa 2 XML-Eksportui";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:29:"Importeer Picasa2 XML-exports";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:36:"Import albumów i zdjęć z Picasa 2";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:32:"Import för Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:2:"Al";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:47:"Импорт из Picasa 2 XML экспорта";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:29:"从 Picasa 2 XML 输出导入";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:29:"從 Picasa 2 XML 輸出引進";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"피카사";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:12:"가져오기";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"publishxp";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"publishxp";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15578";s:14:"buildTimestamp";s:5:"16119";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Publiseer XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:46:"Send fotos til 'Gallery' direkte fra Windws XP";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:25:"Mit XP veröffentlichen";s:11:"description";s:66:"Bilder direkt von Microsoft Windows zur Gallery veröffentlichen";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"XP Argitaratzea";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:61:"Publier des photos dans Gallery directement depuis Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:51:"Pubblica foto in Gallery direttamente da Windows XP";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Publikuoti XP";s:11:"description";s:54:"Publikuoti vaizdus į Galeriją tiesiai iš Windows XP";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Publiceren XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Publikacja XP";s:11:"description";s:56:"Publikuje zdjęcia do galerii bezpośrednio z Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Julkaise XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Tuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Publicera XP";s:11:"description";s:53:"Publicera bilder till Gallery direkt från Windows XP";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Yayınlama XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:40:"Опубликование через XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"XP 发布";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"發表 XP";s:11:"description";s:47:"把相片直接從 Windows XP 發表到 Gallery";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:54:"Windows XP から直接Galleryに画像を公開する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15578;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"quotas";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"quotas";s:7:"version";s:7:"1.1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15448";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Kwotas";s:11:"description";s:26:"Gebruiker/Groep Skyfkwotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Quotes";s:11:"description";s:26:"Usuari/Grup Quotes de Disc";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Kvóty";s:11:"description";s:38:"Diskové kvóty pro uživatele/skupiny";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Kvoter";s:11:"description";s:24:"Bruger/Gruppe Diskkvoter";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Höchstquoten";s:11:"description";s:51:"Festplatten-Höchstquoten für Benutzer und Gruppen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Cuotas";s:11:"description";s:32:"Cuotas de Disco de Usuario/Grupo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Cuotas";s:11:"description";s:32:"Cuotas de Disco de Usuario/Grupo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Cuotas";s:11:"description";s:32:"Cuotas de Disco de Usuario/Grupo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Kvoodid";s:11:"description";s:27:"Kasutaja/Grupi KettaKvoodid";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Kuotak";s:11:"description";s:30:"Erabiltzaile/Talde Disko Kuota";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:53:"Quotas de disque pour les utilisateurs et les groupes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Quote";s:11:"description";s:39:"Quote di spazio disco per Utenti/Gruppi";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Kvóták";s:11:"description";s:31:"Felhasználói/csoport kvóták";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Quota's";s:11:"description";s:30:"Gebruiker/Groep Schijf Quota's";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Limity";s:11:"description";s:49:"Limity przestrzeni dyskowej użytkowników i grup";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Limita de spatiu";s:11:"description";s:36:"Limite de spatiu per utilizator/grup";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Kvote";s:11:"description";s:31:"Korisničke i grupne disk kvote";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Kvoter";s:11:"description";s:27:"Användare/Grupp Diskkvoter";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:4:"Kota";s:11:"description";s:31:"Kullanıcı/Grup Disk Kotaları";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Квоты";s:11:"description";s:72:"Дисковые квоты для Пользователей/Групп";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"空间配额";s:11:"description";s:30:"用户/成员组空间配额";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"磁碟配額";s:11:"description";s:30:"用戶/成員組磁碟配額";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"할당량 관리";s:11:"description";s:46:"사용자및 동아리 디스크 용량 분배";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"クォータ";s:11:"description";s:47:"ユーザ/グループ ディスククォータ";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15448;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16665";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16665";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:15:"randomhighlight";a:3:{s:6:"header";a:6:{s:2:"id";s:15:"randomhighlight";s:7:"version";s:7:"1.0.6.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:28:"Willekeurige Albumuitligting";s:11:"description";s:43:"Verander periodiek die uitligting van album";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:29:"Destacar Aleatòriament";s:11:"description";s:52:"Canviar periódicament l'álbum destacat";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:23:"Náhodné zvýraznění";s:11:"description";s:46:"Pravidelná změna zvýrazněné položky alba";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:30:"Tilfældigt Fremhævet Billede";s:11:"description";s:51:"Periodisk ændring af albummets fremhævede billede";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:21:"Zufälliges Titelbild";s:11:"description";s:42:"Das Titelbild der Alben periodisch ändern";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:23:"Destacar Aleatoriamente";s:11:"description";s:53:"Cambiar periodicamente el objeto destacado del álbum";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:23:"Destacar Aleatoriamente";s:11:"description";s:53:"Cambiar periodicamente el objeto destacado del álbum";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:23:"Destacar Aleatoriamente";s:11:"description";s:53:"Cambiar periodicamente el objeto destacado del álbum";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Ausazko Nabarmentzea";s:11:"description";s:35:"Aldiro aldatu nabarmendutako albuma";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:25:"Vignette-titre aléatoire";s:11:"description";s:52:"Changer périodiquement la vignette-titre de l'album";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:17:"Copertina Casuale";s:11:"description";s:45:"Cambia periodicamente la copertina dell'album";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:28:"Willekeurige Albumafbeelding";s:11:"description";s:37:"Verander periodiek de albumafbeelding";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:20:"Losowa reprezentacja";s:11:"description";s:41:"Okresowo zmienia reprezentacje dla albumu";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:23:"Destacar aleatoriamente";s:11:"description";s:47:"Periodicamente mudar o destaque do álbum";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Slučajna naslovna";s:11:"description";s:41:"Periodična promena naslovne slike albuma";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:27:"Slumpmässig Förgrundsbild";s:11:"description";s:38:"Byt albumets förgrundsbild periodiskt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:21:"Rastgele Öngösterim";s:11:"description";s:49:"Albüm öngösterimini periodik olarak değiştir";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:29:"Случайный макет";s:11:"description";s:90:"Периодическое изменение обложки (макета) альбома";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"随机标记精华";s:11:"description";s:27:"周期性变更精华相册";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"隨機封面";s:11:"description";s:27:"週期性變更相簿封面";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"ランダムハイライト";s:11:"description";s:63:"アルバムのハイライトを一定時間毎に変更する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"rating";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"rating";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Hodnocení";s:11:"description";s:33:"Rozhraní pro hodnocení položek";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Vurdering";s:11:"description";s:37:"Vurderings-grænseflade for elementer";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Bewertungen";s:11:"description";s:41:"Einstellungen für die Elementbewertungen";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Calificaciones";s:11:"description";s:38:"Interfaz de Calificación de Elementos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Calificaciones";s:11:"description";s:38:"Interfaz de Calificación de Elementos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Calificaciones";s:11:"description";s:38:"Interfaz de Calificación de Elementos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Hindamine";s:11:"description";s:22:"Eseme Hindamise Liides";s:10:"groupLabel";s:13:"Ekstra Andmed";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Balorazioa";s:11:"description";s:29:"Elementu Balorazio Interfazea";s:10:"groupLabel";s:16:"Data Gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Notation";s:11:"description";s:23:"Notation des éléments";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:21:"Valutazione/Votazione";s:11:"description";s:31:"Interfaccia Valutazione Oggetto";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Vērtējums";s:11:"description";s:30:"Vienumu vērtēšanas saskarne";s:10:"groupLabel";s:13:"Papildus dati";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:14:"Extra Gegevens";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Ranking";s:11:"description";s:50:"Umożliwia prowadzenie rankingu zdjęć i albumów";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Votare";s:11:"description";s:19:"Interfata de votare";s:10:"groupLabel";s:16:"Extra informatii";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Ocena";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Ocena";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Arvostelu";s:11:"description";s:36:"Kohteiden arvostelukäyttöliittymä";s:10:"groupLabel";s:21:"Ylimääräinen tieto";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Poäng";s:11:"description";s:33:"Gränssnitt till Poängfunktionen";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Рейтинг";s:11:"description";s:54:"Інтерфейс Рейтингу Елементів";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Reyting";s:11:"description";s:22:"Öge Reyting Arayüzü";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Рейтинг";s:11:"description";s:54:"Интерфейс Рейтинга Элементов";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"评等";s:11:"description";s:18:"项目评等界面";s:10:"groupLabel";s:12:"额外资料";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"評等";s:11:"description";s:18:"項目評等界面";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"평가";s:11:"description";s:32:"아이템 평가 인터페이스";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"評価";s:11:"description";s:45:"アイテム評価のインターフェース";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:10:"דירוג";s:11:"description";s:34:"מערכת דירוג פריטים";s:10:"groupLabel";s:17:"מידע נוסף";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15447;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"rearrange";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"rearrange";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Herrangskik";s:11:"description";s:59:"Herrangskik die volgorde van alle album items tergelykertyd";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:12:"Recol·locar";s:11:"description";s:70:"Recol·loca l'ordre de tots els elements de l'àbum d'una vegada";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Uspořádat";s:11:"description";s:46:"Hromadná změna pořadí všech položek alba";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Reorganiser";s:11:"description";s:66:"Reorganiser rækkefølgen på alle objekter i albummet på en gang";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Reihenfolge ändern";s:11:"description";s:56:"Reihenfolge mehrerer Album-Elemente gleichzeitig ändern";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:9:"Recolocar";s:11:"description";s:63:"Recoloca el orden de los elementos del álbum, todos de una vez";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:9:"Recolocar";s:11:"description";s:63:"Recoloca el orden de los elementos del álbum, todos de una vez";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:9:"Recolocar";s:11:"description";s:63:"Recoloca el orden de los elementos del álbum, todos de una vez";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Ordenatu";s:11:"description";s:34:"Album guztien ordena batera aldatu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"Réarranger";s:11:"description";s:56:"Réarranger l'ordre de tous les albums en une seule fois";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Ridisponi";s:11:"description";s:62:"Modifica l'ordine degli oggetti di un album tutti in una volta";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Perrūšiuoti";s:11:"description";s:54:"Perrūšiuoti visų albumo elementų tvarką iš karto";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Átrendezés";s:11:"description";s:72:"Az összes albumelem helyzetének egyszerre történő megváltoztatása";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Herschikken";s:11:"description";s:55:"Herschik de volgorde van albums items allemaal tegelijk";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Kolejność pozycji";s:11:"description";s:38:"Zmienia kolejność pozycji na stronie";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Reordenar";s:11:"description";s:39:"Reordenar os itens do album de uma vez ";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:17:"Promena redosleda";s:11:"description";s:50:"Promena redosleda svih objekata u albumu od jednom";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Järjestele";s:11:"description";s:50:"Järjestele kaikki albumin kohteet yhdellä kertaa";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Flytta";s:11:"description";s:45:"Byt ordning på alla albumobjekt på en gång";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:15:"Bố trí lại";s:11:"description";s:92:"Bố trí lại vị trí của tất cả các đối tượng trong album cùng một lúc";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"Yeniden Düzenle";s:11:"description";s:62:"Albüm ögelerinin sıralamasını bir kerede yeniden düzenle";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:22:"Пренаредете";s:11:"description";s:66:"Променете реда на албумите наведнъж";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:28:"Упорядочивание";s:11:"description";s:103:"Изменение порядка следования элементов в альбоме за раз";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:30:"立刻重新排序相册项目";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"安排順序";s:11:"description";s:42:"一次安排相簿中所有項目的順序";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"배열";s:11:"description";s:52:"사진첩의 아이템을 한번에 정열합니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"再編集";s:11:"description";s:60:"アルバムアイテムの順序を一度に変更します";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"register";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"register";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Registrasie";s:11:"description";s:26:"Nuwe Gebruiker Registrasie";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Registre";s:11:"description";s:22:"Registre de nou usuari";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Registrace";s:11:"description";s:30:"Registrace nových uživatelů";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Registrering";s:11:"description";s:22:"Ny bruger registrering";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:21:"Benutzerregistrierung";s:11:"description";s:21:"Benutzerregistrierung";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Registro";s:11:"description";s:25:"Registro de Nuevo Usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Registro";s:11:"description";s:25:"Registro de Nuevo Usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Registro";s:11:"description";s:25:"Registro de Nuevo Usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:15:"Registreerimine";s:11:"description";s:28:"Uue Kasutaja Registreerimine";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Harpidetza";s:11:"description";s:21:"Kide berri harpidetza";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:14:"Enregistrement";s:11:"description";s:38:"Enregistrement d'un nouvel utilisateur";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Registrazione";s:11:"description";s:26:"Registrazione Nuovo Utente";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Reģistrācija";s:11:"description";s:31:"Jauna lietotāja reģistrācija";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Registracija";s:11:"description";s:28:"Naujo vartotojo registracija";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Regisztráció";s:11:"description";s:34:"Új Felhasználó Regisztrációja";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Registratie";s:11:"description";s:29:"Registratie Nieuwe Gebruikers";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Rejestracja";s:11:"description";s:31:"Rejestracja nowego użytkownika";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Registracija";s:11:"description";s:28:"Registracija novog korisnika";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Registrering";s:11:"description";s:14:"Nyregistrering";s:10:"groupLabel";s:7:"Galleri";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Kayıt";s:11:"description";s:23:"Yeni Kullanıcı Kayıt";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:22:"Регистрация";s:11:"description";s:55:"Регистрация на Нов Потребител";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:22:"Регистрация";s:11:"description";s:60:"Регистрация Нового Пользователя";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"注册";s:11:"description";s:15:"新用户注册";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"註冊";s:11:"description";s:15:"新用戶註冊";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"등록";s:11:"description";s:33:"새 사용자 등록시킵니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"登録";s:11:"description";s:27:"新しいユーザの登録";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"הרשמה";s:11:"description";s:28:"הרשמת משתמש חדש";s:10:"groupLabel";s:10:"גלריה";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15447;a:34:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"remote";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"remote";s:7:"version";s:5:"1.0.9";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15539";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementering vir die remote control protokol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"cs_CZ";a:3:{s:4:"name";s:20:"Vzdálený přístup";s:11:"description";s:47:"Implementace protokolu pro vzdálený přístup";s:10:"groupLabel";s:20:"Vzdálené rozhraní";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:40:"Implementering af fjernstyrings-protokol";s:10:"groupLabel";s:29:"Fjernbetjenings-grænseflader";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:45:"Implementierung des Remote Control Protokolls";s:10:"groupLabel";s:39:"Anwendungs- und Programm-Schnittstellen";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Remoto";s:11:"description";s:51:"Implementación para el protocolo de control remoto";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Remoto";s:11:"description";s:51:"Implementación para el protocolo de control remoto";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Remoto";s:11:"description";s:51:"Implementación para el protocolo de control remoto";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Urrunekoa";s:11:"description";s:45:"Urruneko kontrol protokoloaren inplementazioa";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Distant";s:11:"description";s:53:"Implémentation du protocole de contrôle à distance";s:10:"groupLabel";s:20:"Interfaces distantes";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:50:"Implementazione del protocollo di controllo remoto";s:10:"groupLabel";s:17:"Interfacce Remote";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Nutolusi";s:11:"description";s:50:"Nuotolinio galerijos valdymo protokolo realizacija";s:10:"groupLabel";s:19:"Nutolę interfeisai";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Távoli";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementatie voor het remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Dostęp zdalny";s:11:"description";s:42:"Implementacja protokołu dostępu zdalnego";s:10:"groupLabel";s:17:"Zdalne interfejsy";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Distante";s:11:"description";s:47:"Implementação do protocolo de controle remoto";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Daljinski";s:11:"description";s:49:"Implementacija protokola za daljinsko upravljanje";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Etäkäyttö";s:11:"description";s:32:"Etäkäyttöprotokollan toteutus";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Fjärrmanövring";s:11:"description";s:44:"Implementering av fjärrkontroll-protokollet";s:10:"groupLabel";s:26:"Fjärkontrolls gränssnitt";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Kumanda";s:11:"description";s:41:"Kumanda kontrol protokolü için uygulama";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ru_RU";a:3:{s:4:"name";s:24:"Дистанционно";s:11:"description";s:124:"Дистанционная загрузка фотографий по протоколу удаленного доступа";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"遥控";s:11:"description";s:18:"遥控协议工具";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"遠端上傳";s:11:"description";s:24:"遠端控制協定工具";s:10:"groupLabel";s:18:"遠端存取界面";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:36:"원격으로 사진을 올립니다.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"リモート";s:11:"description";s:54:"リモートコントロールプロトコルの実装";s:10:"groupLabel";s:36:"リモートインターフェース";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}}s:9:"languages";a:1:{i:15539;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"replica";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"replica";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Replica (Kopie)";s:11:"description";s:73:"Vytvořit kopie položky, které sdílí stejný původní datový soubor";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Replika";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Replik";s:11:"description";s:60:"Erstelle Elementkopien, welche dieselbe Originaldatei teilen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Réplique";s:11:"description";s:67:"Créer des copies d'éléments partageant le même fichier original";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:69:"Crea copie di oggetti mantenendo comune lo stesso file dati originale";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Replika";s:11:"description";s:73:"Tworzy kopie pozycji współdzielące dane tego samego oryginalnego pliku";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Copiaza";s:11:"description";s:69:"Crea copie di oggetti mantenendo comune lo stesso file dati originale";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"Kopia";s:11:"description";s:50:"Skapa objekt kopior som delar på samma orginalfil";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Kopyala";s:11:"description";s:56:"Orjinal veri dosyasını paylaşan öge kopyaları yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"項目副本";s:11:"description";s:54:"產生共用同一個原始資料檔案的項目拷貝";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"複製";s:11:"description";s:81:"元のデータファイルを共有するアイテムのコピーを作成する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"reupload";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"reupload";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Znovu nahrát";s:11:"description";s:34:"Umožní znovunahrání obrázků.";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Gen-upload";s:11:"description";s:40:"Gør det muligt at gen-uploade billeder.";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:18:"Erneutes Hochladen";s:11:"description";s:46:"Ermöglicht das erneute Hochladen von Bildern.";s:10:"groupLabel";s:18:"Zusätzliche Daten";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Recargar";s:11:"description";s:32:"Permite la recarga de imágenes.";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Recargar";s:11:"description";s:32:"Permite la recarga de imágenes.";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Recargar";s:11:"description";s:32:"Permite la recarga de imágenes.";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fr_FR";a:3:{s:4:"name";s:15:"Retélécharger";s:11:"description";s:20:"Remplacer les images";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:43:"Permette di rifare l'upload delle immagini.";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"Újrafeltöltés";s:11:"description";s:44:"Képek újrafeltöltését teszi lehetővé.";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Vernieuw";s:11:"description";s:56:"Maakt het vernieuwen van bestaande afbeeldingen mogelijk";s:10:"groupLabel";s:14:"Extra gegevens";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:20:"Aktualizacja plików";s:11:"description";s:65:"Pozwala na ponowne przesłanie i nadpisanie istniejących plików";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Återuppladda";s:11:"description";s:35:"Tillåter återuppladning av bilder";s:10:"groupLabel";s:10:"Extra data";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Yeniden Yükle";s:11:"description";s:44:"Resimlerin yeniden yüklenmesine izin verir.";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:35:"Повторная загрузка";s:11:"description";s:78:"Позволяет повторно загружать изображения.";s:10:"groupLabel";s:41:"Дополнительные Данные";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"重新上传";s:11:"description";s:27:"允许重新上传图片。";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"重新上載";s:11:"description";s:27:"允許重新上載圖片。";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"다시 올리기";s:11:"description";s:49:"사진을 다시 올리는것을 허용합니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"再アップロード";s:11:"description";s:48:"画像の再アップロードを許可する。";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:1:{i:15447;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"rewrite";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"rewrite";s:7:"version";s:8:"1.1.13.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15945";s:14:"buildTimestamp";s:5:"16559";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"URL Herskryf";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Přepis URL";s:11:"description";s:78:"Aktivuje krátká URL pomocí Apache mod_rewrite, ISAPI Rewrite nebo PathInfo.";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:15:"URL Omskrivning";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kurze URLs";s:11:"description";s:80:"Erlaubt kurze URLs mit Hilfe von Apache mod_rewrite, ISAPI Rewrite oder PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:16:"URL Berridazketa";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Réécriture d'URL";s:11:"description";s:93:"Activer les URL courtes en utilisant le module Apache mod_rewrite, ISAPI Rewrite ou PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Riscrittura URL";s:11:"description";s:77:"Attiva le URL brevi utilizzando Apache mod_rewrite, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Krótkie adresy URL";s:11:"description";s:95:"Włącza krótkie adresy URL przy wykorzystaniu Apache mod_rewrite, ISAPI Rewrite lub PathInfo.";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Reescrever URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Prepis adresa";s:11:"description";s:87:"Omogućuje korišćenje kratkih adresa pomoću mod_rewrite, ISAPI_Rewrite ili Path Info";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:76:"Aktiverar korta URLer med Apache mod_rewrite, ISAPI Rewrite, eller PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:96:"Apache mod_rewrite, ISAPI Rewrite, ya da PathInfo kullanarak kısa URL'leri aktif duruma getirin";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Перенаправления URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"网址改写";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"網址改寫";s:11:"description";s:81:"啟動利用 Apache mod_rewrite、ISAPI Rewrite、或 PathInfo 的短式網址。";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"URL書き換え";s:11:"description";s:91:"mod_rewrite か ISAPI Rewrite か PathInfo を使って短いURLを使えるようにする";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15945;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16550";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16550";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16550";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16550";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"search";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"search";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Soektog";s:11:"description";s:18:"Deursoek u Gallery";s:10:"groupLabel";s:15:"Gallery Soektog";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Recerca";s:11:"description";s:20:"Busca el teu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Hledat";s:11:"description";s:27:"Hledání ve Vaší Galerii";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:4:"Søg";s:11:"description";s:18:"Søg i dit galleri";s:10:"groupLabel";s:7:"Galleri";}s:5:"de_DE";a:3:{s:4:"name";s:5:"Suche";s:11:"description";s:24:"Ihre Gallery durchsuchen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Buscar";s:11:"description";s:19:"Busca en tu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Buscar";s:11:"description";s:19:"Busca en tu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Búsqueda";s:11:"description";s:19:"Busca en tu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Otsi";s:11:"description";s:14:"Otsi Galeriist";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Bilatu";s:11:"description";s:20:"Zure Galerian Bilatu";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Rechercher";s:11:"description";s:29:"Rechercher dans votre galerie";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Cuardach";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Cerca";s:11:"description";s:23:"Cerca nella tua Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Meklēt";s:11:"description";s:23:"Meklēt Jūsu Galerijā";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Paieška";s:11:"description";s:19:"Ieškoti galerijoje";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Keresés";s:11:"description";s:24:"Keresés a Galériádban";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Zoeken";s:11:"description";s:19:"Doorzoek uw Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Szukaj";s:11:"description";s:26:"Przeszukaj swoją galerię";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Procura";s:11:"description";s:22:"Procura na sua Galeria";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Pesquisar";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Pretraga";s:11:"description";s:26:"Pretražite svoju Galeriju";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Etsi";s:11:"description";s:18:"Etsi Galleriastasi";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:4:"Sök";s:11:"description";s:19:"Sök i ditt Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Пошук";s:11:"description";s:28:"Пошук у Галереї";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Tìm kiếm";s:11:"description";s:37:"Tìm kiếm trong Gallery của bạn";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:3:"Ara";s:11:"description";s:13:"Galerinde Ara";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Търсене";s:11:"description";s:36:"Търсене в Галерията";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Поиск";s:11:"description";s:28:"Поиск в Галерее";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"搜索";s:11:"description";s:18:"搜索您的图库";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"搜尋";s:11:"description";s:20:"搜尋你的 Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"찾기";s:11:"description";s:34:"Gallery에서 검색을 합니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"検索";s:11:"description";s:16:"Galleryを検索";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"بحث";s:11:"description";s:30:"ابحث داخل ألبومك";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"shutterfly";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"shutterfly";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly Foto Afdruk Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:37:"Modul tisku fotografií na Shutterfly";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:33:"Shutterfly foto-udskrivningsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:27:"Shutterfly Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:37:"Shutterfly Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:26:"Impressions via Shutterfly";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:36:"Modulo di Stampa Foto con Shutterfly";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:28:"Moduł drukowania Shutterfly";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:52:"Modul za izradu fotografija preko Shutterfly servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:34:"Shutterfly kuvien tulostus moduuli";s:10:"groupLabel";s:11:"Kaupallinen";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:30:"Shutterfly foto utskriftsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:31:"Shutterfly Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:66:"Модуль печати фотографий на Shutterfly.com";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:28:"Shutterfly照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:30:"Shutterfly Photo 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:50:"Shutterfly Photo 画像プリントモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:22:{s:2:"af";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16665";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"sitemap";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"sitemap";s:7:"version";s:5:"1.0.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Mapa stránek";s:11:"description";s:57:"Pro Vaši Galerii generuje Google Sitemap (mapu stránek)";s:10:"groupLabel";s:6:"Export";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:45:"Erzeugt eine Google Sitemap für Ihre Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Gune-mapa";s:11:"description";s:46:"Google gune-mapa bat sortu zure galeriarentzat";s:10:"groupLabel";s:9:"Esportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Carte de site";s:11:"description";s:47:"Générer une carte de site Google pour Gallery";s:10:"groupLabel";s:8:"Exporter";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:55:"Genera una Mappa del Sito con Google per la tua Gallery";s:10:"groupLabel";s:7:"Esporta";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Vietnes karte";s:11:"description";s:46:"Ģenerēt Google vietnes karti Jūsu Galerijai";s:10:"groupLabel";s:10:"Eksportēt";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:43:"Genereer een Google sitemap voor uw Gallery";s:10:"groupLabel";s:10:"Exporteren";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Mapa strony";s:11:"description";s:33:"Generuje mapę galerii dla Google";s:10:"groupLabel";s:6:"Export";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:46:"Producerar en Google Sitemap för ditt Galleri";s:10:"groupLabel";s:9:"Exportera";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Siteharitası";s:11:"description";s:45:"Galeriniz için Google Siteharitası yaratın";s:10:"groupLabel";s:7:"Gönder";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ru_RU";a:3:{s:4:"name";s:21:"Карта сайта";s:11:"description";s:91:"Генерирует карту сайта Google Sitemap для Вашей Галереи.";s:10:"groupLabel";s:14:"Экспорт";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:36:"为你的图库产生 Google Sitemap";s:10:"groupLabel";s:6:"导出";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:39:"為你的 Gallery 產生 Google Sitemap";s:10:"groupLabel";s:6:"滙出";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"サイトマップ";s:11:"description";s:48:"GalleryのためのGoogle Sitemapを作成する";s:10:"groupLabel";s:18:"エクスポート";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}}s:9:"languages";a:1:{i:15342;a:18:{s:2:"cs";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"sizelimit";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"sizelimit";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Grootte Limiet";s:11:"description";s:27:"Verskaf beeldgrootte limiet";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Límit de mida";s:11:"description";s:38:"Definir límite de tamaño";s:10:"groupLabel";s:14:"Visualització";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Limit velikosti";s:11:"description";s:27:"Omezení velikosti obrázku";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:23:"Størrelsesbegrænsning";s:11:"description";s:38:"Definer billedestørrelsesbegrænsning";s:10:"groupLabel";s:7:"Visning";}s:5:"de_DE";a:3:{s:4:"name";s:22:"Größeneinschränkung";s:11:"description";s:55:"Eine Größeneinschränkung für Ihre Bilder definieren";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Límite de Tamaño";s:11:"description";s:42:"Define el límite de tamaño de la imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Límite de Tamaño";s:11:"description";s:42:"Define el límite de tamaño de la imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Límite de Tamaño";s:11:"description";s:42:"Define el límite de tamaño de la imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"Tamaina Muga";s:11:"description";s:25:"Irudi tamaina muga ezarri";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Limite de taille";s:11:"description";s:27:"Limite de taille des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:22:"Limite alla Dimensione";s:11:"description";s:51:"Definisce il limite della dimensione delle immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:32:"Képméret korlát beállítása";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"Maximale grootte";s:11:"description";s:36:"Geef maximale afbeeldings grootte op";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Limity zdjęć";s:11:"description";s:25:"Limity wielkości zdjęć";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Limite de tamanho";s:11:"description";s:39:"Definir limite para o tamanho da figura";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:22:"Ograničenje veličine";s:11:"description";s:40:"Definisanje ograničenja veličine slika";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Storleksgräns";s:11:"description";s:35:"Definiera storleksgrän för bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Boyut Limiti";s:11:"description";s:29:"Resim boyut limitini tanımla";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Лимит размера";s:11:"description";s:63:"Определяет лимит размера картинки";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:24:"定义图片尺寸限制";s:11:"description";s:24:"定义图片尺寸限制";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"大小限制";s:11:"description";s:24:"定義圖片大小限制";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"サイズ制限";s:11:"description";s:30:"画像サイズ上限を定義";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"slideshow";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"slideshow";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:4;}s:15:"stringsRevision";s:5:"15945";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:15:"Skyfievertoning";s:11:"description";s:15:"Skyfievertoning";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:22:"Prezentace (slideshow)";s:11:"description";s:22:"Prezentace (slideshow)";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Fremviser";s:11:"description";s:9:"Fremviser";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Diashow";s:11:"description";s:7:"Diashow";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:13:"Presentación";s:11:"description";s:13:"Presentación";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:13:"Presentación";s:11:"description";s:13:"Presentación";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Presentación";s:11:"description";s:13:"Presentación";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Aurkezpena";s:11:"description";s:10:"Aurkezpena";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Diaporama";s:11:"description";s:9:"Diaporama";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Slīdrāde";s:11:"description";s:10:"Slīdrāde";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:20:"Skaidrių peržiūra";s:11:"description";s:20:"Skaidrių peržiūra";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Diavetítés";s:11:"description";s:12:"Diavetítés";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Diashow";s:11:"description";s:7:"Diashow";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Pokaz slajdów";s:11:"description";s:14:"Pokaz slajdów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Mostrar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:11:"Vizualizare";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:11:"Diapozitivi";s:10:"groupLabel";s:8:"Prikaži";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:11:"Diapozitivi";s:10:"groupLabel";s:8:"Prikaži";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Diaesitys";s:11:"description";s:9:"Diaesitys";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Bildspel";s:11:"description";s:8:"Bildspel";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Слайд-шоу";s:11:"description";s:17:"Слайд-шоу";s:10:"groupLabel";s:22:"Отображение";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Trình chiếu";s:11:"description";s:14:"Trình chiếu";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Slaytgösterisi";s:11:"description";s:15:"Slaytgösterisi";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Преглед";s:11:"description";s:14:"Преглед";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:17:"Слайд-шоу";s:11:"description";s:17:"Слайд-шоу";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"幻灯片放映";s:11:"description";s:15:"幻灯片放映";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"幻燈片放映";s:11:"description";s:15:"幻燈片放映";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"슬라이드 쇼";s:11:"description";s:16:"슬라이드 쇼";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"スライドショー";s:11:"description";s:21:"スライドショー";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15945;a:35:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:15:"slideshowapplet";a:3:{s:6:"header";a:6:{s:2:"id";s:15:"slideshowapplet";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:22:"Skyfievertoning Applet";s:11:"description";s:54:"Volskerm skyfievertoning met behulp van 'n Java applet";s:10:"groupLabel";s:9:"Vertoning";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Applet prezentace";s:11:"description";s:50:"Prezentace na celé obrazovce pomocí Java appletu";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:19:"Fremvisnings-applet";s:11:"description";s:51:"Fuldskærmsfremvisning ved hjælp af en Java applet";s:10:"groupLabel";s:7:"Visning";}s:5:"de_DE";a:3:{s:4:"name";s:14:"Diashow-Applet";s:11:"description";s:43:"Vollbild-Diashow mittels eines Java-Applets";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:23:"Applet de Presentación";s:11:"description";s:58:"Presentación a pantalla completa usando un applet de Java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:23:"Applet de Presentación";s:11:"description";s:58:"Presentación a pantalla completa usando un applet de Java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:23:"Applet de Presentación";s:11:"description";s:58:"Presentación a pantalla completa usando un applet de Java";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:23:"Slaidiesitluse Programm";s:11:"description";s:52:"Slaidiesitlus täisekraanil kasutades Java programmi";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:18:"aurkezpen Applet-a";s:11:"description";s:51:"Pantaila osorako aurkezpena java applet-a erabiliaz";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:19:"Applet de diaporama";s:11:"description";s:50:"Diaporama plein écran à l'aide d'une applet Java";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:47:"Slideshow a tutto schermo usando un'applet Java";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:30:"Skaidrių peržiūros programa";s:11:"description";s:57:"Skaidrių peržiūra visame ekrane Java programos pagalba";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:25:"Diavetítő Segédprogram";s:11:"description";s:65:"Teljesképernyős diavetítés Java segédprogram használatával";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Diashow Applet";s:11:"description";s:54:"Volledig scherm diashow met behulp van een Java applet";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:21:"Aplet pokazu slajdów";s:11:"description";s:60:"Pełnoekranowy pokaz slajdów przy wykorzystaniu apletu Javy";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:20:"Applet de prezentare";s:11:"description";s:49:"Prezentare pe tot ecranul folosind un java applet";s:10:"groupLabel";s:7:"Afisare";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:27:"Diapozitivi čez cel zaslon";s:10:"groupLabel";s:6:"Prikaz";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:27:"Diapozitivi čez cel zaslon";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Diaesitys Apletti";s:11:"description";s:46:"Koko ruudun diaesitys käyttäen Java aplettia";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:23:"Diabildsvisning Applet ";s:11:"description";s:56:"Fullskärms diabildsvisning med hjälp av en Java applet";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Аплет Слайдшоу";s:11:"description";s:88:"Слайдшоу на цілий екран використовуючи аплет Java";s:10:"groupLabel";s:20:"Показувати";}s:5:"vi_VN";a:3:{s:4:"name";s:31:"Ứng dụng con trình chiếu";s:11:"description";s:59:"Trình chiếu toàn màn hình dùng ứng dụng con Java";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:22:"Slaytgösterisi Applet";s:11:"description";s:47:"Java Apple kullanarak Tam Ekran slaytgösterisi";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:53:"Аплет за Преглед на цял екран";s:11:"description";s:76:"Преглед на цял екран използвайки Java-аплет";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:30:"Апплет Слайд-шоу";s:11:"description";s:96:"Полноэкранное слайд-шоу с использованием Java апплета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"幻灯秀程序";s:11:"description";s:45:"全屏幕的幻灯秀需要使用 Java Applet";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:24:"幻燈片放映小程式";s:11:"description";s:45:"利用 Java 小程式全螢幕放映幻燈片";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:26:"슬아이드 쇼 애플릿";s:11:"description";s:83:"자바 애플릿을 이용해 꽉찬 화면의 슬라이드 쇼를 감상합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:36:"スライドショーアプレット";s:11:"description";s:76:"Javaアプレットを使ったフルスクリーンのスライドショー";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"squarethumb";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"squarethumb";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:26:"Vierkantige Duimnaelsketse";s:11:"description";s:45:"Maak alle duimnaels sodat hulle vierkantig is";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:20:"Čtvercové náhledy";s:11:"description";s:55:"Vytváření všech náhledů tak, aby byly čtvercové";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:27:"Quadratische Vorschaubilder";s:11:"description";s:52:"Alle Vorschaubilder auf quadratische Größe bringen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Miniaturas Cuadradas";s:11:"description";s:50:"Hacer todas las miniaturas para que sean cuadradas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Miniaturas Cuadradas";s:11:"description";s:50:"Hacer todas las miniaturas para que sean cuadradas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Miniaturas Cuadradas";s:11:"description";s:50:"Hacer todas las miniaturas para que sean cuadradas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:19:"Argazkitxo Koadroak";s:11:"description";s:33:"Argazkitxoak koadro batekin sortu";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Vignettes carrées";s:11:"description";s:71:"Construire toutes les vignettes de sorte à ce qu'elles soient carrées";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Anteprime Quadrate";s:11:"description";s:46:"Genera le anteprime in modo che siano quadrate";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:20:"Vierkante Miniaturen";s:11:"description";s:43:"Bouw alle miniaturen zodat ze vierkant zijn";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:21:"Kwadratowe miniaturki";s:11:"description";s:28:"Tworzy kwadratowe miniaturki";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:26:"Kvadratni umanjeni prikazi";s:11:"description";s:39:"Pravljenje kvadratnih umanjenih prikaza";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:25:"Fyrkantiga Miniatyrbilder";s:11:"description";s:58:"Generera samtliga miniatyrbilder så att de är fytkantiga";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Kare Thumbnails";s:11:"description";s:44:"Tüm thumbnailları kare olarak yapılandır";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Квадратные Макеты";s:11:"description";s:129:"Переделывает все макеты таким образом, что они становятся квадратными";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"方形缩略图";s:11:"description";s:30:"裁切所有缩略图为方形";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"方形縮略圖";s:11:"description";s:30:"把所有縮略圖建為方形";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"正方形サムネイル";s:11:"description";s:57:"正方形になるようにサムネイルをせいせい";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"thumbnail";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"thumbnail";s:7:"version";s:7:"1.0.9.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Duimnaelbestuurder";s:11:"description";s:39:"Stel standaardbeeld vir nie-beeld items";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Správa náhledů";s:11:"description";s:69:"Nastavení výchozích náhledů pro položky, které nejsou obrázky";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Miniature Manager";s:11:"description";s:59:"Sæt standard miniaturer for elementer der ikke er billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:23:"Vorschaubild-Verwaltung";s:11:"description";s:70:"Setzen Sie das Standardvorschaubild für Elemente, die kein Bild sind.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:23:"Argazkitxo Kudeatzailea";s:11:"description";s:64:"Ezarri irudiak ez diren elementuentzat lehenetsiriko argazkitxoa";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:25:"Gestionnaire de vignettes";s:11:"description";s:83:"Spécifier les vignettes par défaut pour les éléments qui ne sont pas des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Gestione Anteprime";s:11:"description";s:67:"Imposta anteprime predefinite per gli oggetti che non sono immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Nézőkép kezelő";s:11:"description";s:64:"Alapértelmezett előnézeti kép a nem kép típusú fájlokhoz";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:17:"Miniatuur Manager";s:11:"description";s:57:"Standaard miniaturen opgeven voor niet-afbeeldingen items";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:25:"Zarządzanie miniaturkami";s:11:"description";s:68:"Ustawia domyślną miniaturkę dla pozycji nie będących zdjęciami";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:30:"Organizatorul de thumbnail-uri";s:11:"description";s:74:"Alege dimensiunea predefinita a thumbnail-ului pentru articole non-imagine";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:31:"Upravljanje umanjenim prikazima";s:11:"description";s:71:"Podešavanje podrazumevanih umanjenih prikaza objektima koji nisu slike";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:22:"Miniatyrbildshanterare";s:11:"description";s:46:"Set förvald miniatyrbild för icke bildobjekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:21:"Thumbnail Yöneticisi";s:11:"description";s:59:"Resim olmayan ögeler için varsayılan thumbnailı belirle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:37:"Управление Макетами";s:11:"description";s:140:"Установки по умолчанию для макетов элементов, не относящихся к изображениям";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"缩略图管理器";s:11:"description";s:39:"为非图片项目设定默认缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"縮略圖管理";s:11:"description";s:39:"為非圖片項目設定預設縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"썸네일 관리자";s:11:"description";s:76:"이미지가 아닌 아이템에 대한 기본 썸네일을 설정합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:30:"サムネイルマネージャ";s:11:"description";s:72:"画像以外のアイテムのデフォルトのサムネイルを設定";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16665";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16665";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16665";s:2:"fi";s:5:"16665";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16665";s:2:"lt";s:5:"16665";s:2:"nl";s:5:"16665";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16665";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16665";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16665";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16665";s:5:"zh_CN";s:5:"16665";s:5:"zh_TW";s:5:"16040";}}}s:9:"thumbpage";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"thumbpage";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Thumbnail";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Duimnaelbladsy";s:11:"description";s:67:"Kies 'n bladsy/raam van 'n multiblad lêer of film vir die duimnael";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Stránka náhledu";s:11:"description";s:68:"Výběr stránky nebo snímku pro náhled vícestránkového souboru";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Miniature side";s:11:"description";s:66:"Vælg side/ramme fra en multi-siders fil eller film til miniaturen";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:18:"Vorschaubild-Seite";s:11:"description";s:106:"Wählen Sie die Seite eines mehrseitigen Bildes oder das Einzelbild eines Films für das Vorschaubild aus.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Argazkitxo Orrialdea";s:11:"description";s:75:"Hautatu orri/markoa orri-anitzeko fitxategi edo filmetik argazkitxoarentzat";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Page vignette";s:11:"description";s:80:"Sélection d'une page ou image d'un fichier multipage ou vidéo pour la vignette";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Pagina Anteprime";s:11:"description";s:78:"Seleziona una pagina/frame da un file multipagina o un filmato per l'anteprima";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Miniatuurpagina";s:11:"description";s:80:"Selecteer een pagina/frame van een multipagina bestand of film voor de miniatuur";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Strona miniaturek";s:11:"description";s:75:"Wybierz stronę/klatkę z wielostronicowego pliku lub filmu na miniaturkę.";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:23:"Pagina cu thumbnail-uri";s:11:"description";s:85:"Selecteaza pagina/cadrul dintr-un fisier multi-pagina sau film pentru acest thumbnail";s:10:"groupLabel";s:12:"Vizualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:26:"Umanjenog prikaz sa strane";s:11:"description";s:81:"Izbor strane ili sličice za umanjen prikaz iz višestranične datoteke ili filma";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Miniatyrbildsida";s:11:"description";s:66:"Välj sida/ram från en fil med multipla sidor för miniatyrbilden";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:18:"Thumbnail Sayfası";s:11:"description";s:72:"Multisayfa dosyasından sayfa/çerceve ya da thumbnail için film seçin";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:32:"Макеты из Страниц";s:11:"description";s:180:"Выбор страницы/кадра из многостраничного файла или видеоролика для отображения в качестве макета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"缩略图页";s:11:"description";s:55:"在多页文件或电影中选择页/帧作为缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"縮略圖頁";s:11:"description";s:63:"在多頁檔案或影片中選擇一頁或一格作為縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"サムネイルページ";s:11:"description";s:126:"multipageファイルか動画から、サムネイルにするページもしくはフレームを選択してください。";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:12:"uploadapplet";a:3:{s:6:"header";a:6:{s:2:"id";s:12:"uploadapplet";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Oplaai Applet";s:11:"description";s:47:"Eenvoudig om te gebruik oplaai applet vir media";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:20:"Aplicació de Pujada";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:7:"Importa";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Applet pro upload";s:11:"description";s:41:"Jednoduše použitelný applet pro upload";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Upload-program";s:11:"description";s:30:"Nemt at benytte upload-program";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:15:"Hochlade-Applet";s:11:"description";s:73:"Dies ist ein einfach zu handhabendes Applet um Mediendateien hochzuladen.";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:23:"Üleslaadimise Programm";s:11:"description";s:48:"Kergelt kasutatav meedia üleslaadimise programm";s:10:"groupLabel";s:7:"Impordi";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Igoera Applet-a";s:11:"description";s:49:"Elementuak igotzeko erabiliera errazteko applet-a";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:26:"Applet de téléchargement";s:11:"description";s:47:"Applet de téléchargement simple d'utilisation";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:45:"Un'applet per caricare facilmente nuovi media";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:28:"Augšupielādes sīklietotne";s:11:"description";s:51:"Viegli lietojama failu augšupielādes sīklietotne";s:10:"groupLabel";s:9:"Importēt";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Įkėlimo programa";s:11:"description";s:35:"Paprasta naudoti įkėlimo programa";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:24:"Feltöltő Segédprogram";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:12:"Importálás";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:47:"Eenvoudig te gebruiken upload applet voor media";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:44:"Prosty w użyciu aplet do wysyłania plików";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:16:"Applet de upload";s:11:"description";s:41:"Applet de upload de mídia fácil de usar";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:22:"Aplicatie de incarcare";s:11:"description";s:57:"Aplicatie usor de folosit pentru incarcarea fotografiilor";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:16:"Alatka za prenos";s:11:"description";s:37:"Alatka za jednostavan prenos datoteka";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Julkaisu-Appletti";s:11:"description";s:45:"Helppokäyttöinen julkaisu-appletti medialle";s:10:"groupLabel";s:14:"Sisääntuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:19:"Uppladdnings Applet";s:11:"description";s:51:"En lättanvänd uppladdnings applet för mediafiler";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Applet Yükle";s:11:"description";s:50:"Kullanması kolay, medya için applet ile yükleme";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:21:"Через Аплет";s:11:"description";s:96:"Удобная в использовании загрузка данных через аплет";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"上传工具";s:11:"description";s:39:"用于媒体文件的易用上传工具";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"上傳小程式";s:11:"description";s:39:"上傳媒體檔案用的簡易小程式";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:45:"손쉬운 파일올리기를 제공합니다.";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"アップロードアプレット";s:11:"description";s:72:"簡単にメディアをアップロードできるアプレットです";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"useralbum";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"useralbum";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:16:"Gebruikersalbums";s:11:"description";s:37:"Skep 'n album vir elke nuwe gebruiker";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:23:"Àlbums d'usuaris";s:11:"description";s:39:"Crear un àlbum per a cada usuari";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Alba uživatelů";s:11:"description";s:49:"Vytvoření alba pro každého nového uživatele";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:15:"Bruger albummer";s:11:"description";s:33:"Opret et album for hver ny bruger";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Benutzeralben";s:11:"description";s:53:"Ein separates Album für jeden neuen Benutzer anlegen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Álbumes de usuarios";s:11:"description";s:39:"Crear un álbum para cada nuevo usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Álbumes de usuarios";s:11:"description";s:39:"Crear un álbum para cada nuevo usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Álbumes de usuarios";s:11:"description";s:39:"Crear un álbum para cada nuevo usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:16:"Kasutaja Albumid";s:11:"description";s:32:"Loo album igale uuele kasutajale";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Erabiltzaile Albumak";s:11:"description";s:50:"Erabiltzaile berri bakoitzarentzat album bat sortu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:20:"Albums d'utilisateur";s:11:"description";s:46:"Créer un album pour chaque nouvel utilisateur";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Album degli Utenti";s:11:"description";s:35:"Crea un album per ogni nuovo utente";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Lietotāja albumi";s:11:"description";s:45:"Veidot jaunu albumu katram jaunam lietotājam";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:22:"Felhasználói albumok";s:11:"description";s:47:"Album létrehozása minden új felhasználóhoz";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"Gebruikersalbums";s:11:"description";s:41:"Maak een album voor elke nieuwe gebruiker";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:21:"Albumy użytkowników";s:11:"description";s:45:"Tworzy album dla każdego nowego użytkownika";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:23:"Albumele utilizatorilor";s:11:"description";s:46:"Creeaza un album pentru fiecare utilizator nou";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Korisnički albumi";s:11:"description";s:43:"Pravljenje albuma za svakog novog korisnika";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Användaralbum";s:11:"description";s:40:"Skapa ett album för varje ny användare";s:10:"groupLabel";s:7:"Galleri";}s:5:"th_TH";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:22:"Kullanıcı Albümleri";s:11:"description";s:39:"Her yeni kullanıcı için albüm yarat";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:39:"Потребителски Албуми";s:11:"description";s:74:"Създава на албум за всеки нов потребител";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:41:"Альбомы Пользователей";s:11:"description";s:91:"Создание альбома для каждого нового пользователя";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:24:"用户个人相册设置";s:11:"description";s:36:"为每个新用户新建个人相册";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"用戶個人相簿";s:11:"description";s:36:"為每個新用戶建立個人相簿";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"사용자 사진첩";s:11:"description";s:47:"각 새 사용자를 위한 사진첩 만들기";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"ユーザアルバム";s:11:"description";s:51:"新規ユーザそれぞれにアルバムを作成";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:25:"אלבום משתמשים";s:11:"description";s:44:"צור אלבום בשביל כל משתמש";s:10:"groupLabel";s:10:"גלריה";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:1:{i:15447;a:34:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"watermark";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"watermark";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Watermerk";s:11:"description";s:22:"Watermerk vir u beelde";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:13:"Marca d'aigua";s:11:"description";s:41:"Aplicar les marques d'aigua a les imatges";s:10:"groupLabel";s:9:"Affichage";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Vodotisk";s:11:"description";s:31:"Aplikace vodotisků na obrázky";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Vandmærke";s:11:"description";s:33:"Sæt vandmærke på dine billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Wasserzeichen";s:11:"description";s:42:"Versehen Sie Ihre Bilder mit Wasserzeichen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Marcas de Agua";s:11:"description";s:37:"Añade marcas de agua a tus imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Marcas de Agua";s:11:"description";s:37:"Añade marcas de agua a tus imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Marcas de Agua";s:11:"description";s:37:"Añade marcas de agua a tus imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Ur-marka";s:11:"description";s:21:"Zure irudien ur-marka";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Filigrane";s:11:"description";s:38:"Appliquez des filigranes à vos images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Filigrana";s:11:"description";s:39:"Applica una filigrana alle tue immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Vízjel";s:11:"description";s:27:"Lásd el vízjellel képeid";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Watermerk";s:11:"description";s:25:"Watermerk uw afbeeldingen";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Znak wodny";s:11:"description";s:29:"Dodaje znaki wodne do zdjęć";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:19:"Marca d'água";s:11:"description";s:41:"Usar marca d'água nas suas imagens";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:35:"Aplica watermark tuturor imaginilor";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Vodeni žig";s:11:"description";s:40:"Dodavanje vodenih žigova na vaše slike";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Vattenstämpel";s:11:"description";s:26:"Vattenstämpla dina bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Filigran";s:11:"description";s:28:"Resimlerinizi Filigranlayın";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Водяные знаки";s:11:"description";s:96:"Делает наложение водяного знака на Ваши изображения";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"水印";s:11:"description";s:27:"为您的图片添加水印";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"浮水印";s:11:"description";s:30:"在你的圖片加上浮水印";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"무늬";s:11:"description";s:16:"사용할 무늬";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"透かし";s:11:"description";s:30:"画像に透かしを入れる";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"webcam";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"webcam";s:7:"version";s:7:"1.0.5.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16119";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:6:"WebCam";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:64:"Ondersteuning vir periodies bygewerkte beelde soos vir 'n webcam";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"Webkamera";s:11:"description";s:66:"Podpora pravidelně aktualizovaných obrázků, např. z webkamery";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:64:"Tillad billeder der regelmæssigt opdateres fra f.eks. et webcam";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:73:"Unterstützung für sich periodisch ändernde Bilder wie z.B. eine Webcam";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Cámara Web";s:11:"description";s:83:"Soporte de imágenes actualizadas de forma periódica, cómo las de una cámara web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Cámara Web";s:11:"description";s:83:"Soporte de imágenes actualizadas de forma periódica, cómo las de una cámara web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Cámara Web";s:11:"description";s:83:"Soporte de imágenes actualizadas de forma periódica, cómo las de una cámara web";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"WEbCam";s:11:"description";s:57:"Onartu web kamerenak bezala aldiro aldatzen diren irudiak";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:80:"Prise en charge des images mises régulièrement à jour comme celles des webcam";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:59:"Supporta immagini periodicamente aggiornate come una webcam";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:71:"Ondersteuning voor periodiek bijgewerkte afbeeldingen, zoals een webcam";s:10:"groupLabel";s:9:"Importeer";}s:5:"no_NO";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Kamera internetowa";s:11:"description";s:60:"Umożliwia czasowe ładowanie obrazów z podanego adresu URL";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"WebKamera";s:11:"description";s:71:"Podrška za periodično ažurirane izvore slika, kao što je web kamera";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Webbkamera";s:11:"description";s:64:"Understödjer periodiskt uppdaterade bilder t ex från en webcam";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:60:"Periyodik olarak webcam gibi güncellenen resimleri destekle";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:16:"Web-камера";s:11:"description";s:153:"Обеспечивает поддержку переодически обновляемых изображений, например, с web-камеры";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"网络摄像头";s:11:"description";s:48:"支持类似网络摄像头的周期更新图片";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"網路攝影機";s:11:"description";s:51:"支持如網路攝影機之類的定期更新圖片";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:72:"webcamのような一定時間毎に更新される画像のサポート";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"webdav";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"webdav";s:7:"version";s:7:"1.0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:17;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15749";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"en_GB";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:20:"Vzdálené rozhraní";}s:5:"da_DK";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:34:"Monter Gallery på dit skrivebord.";s:10:"groupLabel";s:29:"Fjernbetjenings-grænseflader";}s:5:"de_DE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:51:"Gallery von Ihrem Computer als Netzlaufwerk öffnen";s:10:"groupLabel";s:39:"Anwendungs- und Programm-Schnittstellen";}s:5:"es_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:62:"Accès à Gallery depuis votre bureau avec le protocole WebDAV";s:10:"groupLabel";s:20:"Interfaces distantes";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"el_GR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"is_IS";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"it_IT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:34:"Monta Gallery sulla tua scrivania.";s:10:"groupLabel";s:17:"Interfacce Remote";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"no_NO";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:28:"Mapowanie galerii na pulpit.";s:10:"groupLabel";s:17:"Zdalne interfejsy";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:36:"Montiranje Galerije na vaš desktop.";s:10:"groupLabel";s:20:"Daljinski interfejsi";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:35:"Montera Gallery på ditt skrivbord.";s:10:"groupLabel";s:25:"Fjärstyrningsgränssnitt";}s:5:"th_TH";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:35:"在你的桌面上搭載 Gallery。";s:10:"groupLabel";s:18:"遠端存取界面";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:48:"GalleryをあなたのPCにマウントします";s:10:"groupLabel";s:36:"リモートインターフェース";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"he_IL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}}s:9:"languages";a:1:{i:15749;a:14:{s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16476";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"zipcart";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"zipcart";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:33:"Download cart items in a zip file";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Zip Aflaai";s:11:"description";s:40:"Laai items in die mandjie as ziplêer af";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Descarregar Zip";s:11:"description";s:55:"Descarregar els elements de la cistella en un arxiu Zip";s:10:"groupLabel";s:7:"Comerç";}s:5:"cs_CZ";a:3:{s:4:"name";s:25:"Stahování v ZIP souboru";s:11:"description";s:43:"Stahování položek košíku v ZIP souboru";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:42:"Download elementerne i kurven i en zip fil";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:12:"ZIP-Download";s:11:"description";s:64:"Laden Sie alle Ihre gesammelten Elemente als ZIP-Datei herunter.";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:13:"Descargar Zip";s:11:"description";s:53:"Descargar los elementos del carrito en un archivo Zip";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:13:"Descargar Zip";s:11:"description";s:53:"Descargar los elementos del carrito en un archivo Zip";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Descargar Zip";s:11:"description";s:53:"Descargar los elementos del carrito en un archivo Zip";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:19:"Tõmba Zip'ina Alla";s:11:"description";s:40:"Tõmba Korvis olevad pildid Zip'ina Alla";s:10:"groupLabel";s:8:"Kommerts";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"ZIP Deskarga";s:11:"description";s:51:"Saskiko elementuak zip fitxategi batetan deskargatu";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:20:"Télécharger en ZIP";s:11:"description";s:63:"Télécharger le contenu du panier sous forme d'une archive ZIP";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:47:"Scarica gli oggetti nel carrello in un file zip";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:47:"Download items in het mandje in een zip bestand";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Pobieranie ZIP";s:11:"description";s:35:"Pobiera pozycje koszyka w pliku zip";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:31:"Descarca articole ca arhiva ZIP";s:11:"description";s:46:"Descarca articolele din cos intr-un fisier ZIP";s:10:"groupLabel";s:6:"Comert";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:15:"Zip preuzimanje";s:11:"description";s:44:"Preuzimanje objekata iz korpe u zip datoteci";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Zip Nedladdning";s:11:"description";s:41:"Ladda ner varukorgens objekt i en zip fil";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Zip Yükleme";s:11:"description";s:38:"Kart ögelerini zip dosyasında yükle";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:20:"Загрузка Zip";s:11:"description";s:73:"Загрузка элементов из корзины в zip файле";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"ZIP下载";s:11:"description";s:39:"下载购物车项目为ZIP压缩文件";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Zip 下載";s:11:"description";s:44:"把購物車中的項目用 Zip 形式下載";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:48:"바구니의 아이템 Zip파일로 내려받기";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:22:"ZIP ダウンロード";s:11:"description";s:69:"カートのアイテムをzipファイルでダウンロードする";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"core";a:3:{s:6:"header";a:9:{s:2:"id";s:4:"core";s:7:"version";s:7:"1.2.0.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:18;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:4;}s:15:"stringsRevision";s:5:"16550";s:14:"buildTimestamp";s:5:"16666";s:14:"coreApiVersion";a:2:{i:0;i:7;i:1;i:18;}s:16:"moduleApiVersion";a:2:{i:0;i:3;i:1;i:5;}s:15:"themeApiVersion";a:2:{i:0;i:2;i:1;i:5;}}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Central";s:11:"description";s:27:"Mòdul Central de Gallery 2";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Jádro";s:11:"description";s:23:"Hlavní modul Galerie 2";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:5:"Kerne";s:11:"description";s:20:"Gallery 2 kernemodul";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:14:"Kernfunktionen";s:11:"description";s:19:"Gallery 2 Kernmodul";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Núcleo";s:11:"description";s:30:"Módulo Principal de Gallery 2";s:10:"groupLabel";s:8:"Galería";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Núcleo";s:11:"description";s:30:"Módulo Principal de Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Núcleo";s:11:"description";s:30:"Módulo Principal de Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Tuum";s:11:"description";s:21:"Galerii 2 Tuum-moodul";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:5:"Muina";s:11:"description";s:22:"Gallery 2 Muin Modulua";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"Noyau";s:11:"description";s:15:"Noyau Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:10:"Gailearaí";}s:5:"el_GR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:14:"Γκαλερί";}s:5:"is_IS";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:24:"Modulo Core di Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Kodols";s:11:"description";s:25:"Galerija 2 kodola modulis";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Pagrindas";s:11:"description";s:29:"Gallery 2 pagrindinis modulis";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:3:"Mag";s:11:"description";s:20:"Gallery 2 Core modul";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:15:"Moduł główny";s:11:"description";s:27:"Gallery 2 - Moduł główny";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:4:"Base";s:11:"description";s:23:"Módulo base da galeria";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Galeria";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Nucleu";s:11:"description";s:25:"Modul nucleu al Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"Jadro";s:11:"description";s:24:"Hlavný modul Galérie 2";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Jedro";s:11:"description";s:22:"Gallery 2 Jedrni Modul";s:10:"groupLabel";s:8:"Galerija";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Jedro";s:11:"description";s:22:"Gallery 2 Jedrni Modul";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Ydin";s:11:"description";s:24:"Galleria 2:n Ydinmoduuli";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Kärna";s:11:"description";s:20:"Gallery 2 kärnmodul";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Ядро";s:11:"description";s:37:"Головні Модулі Gallery 2";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:4:"Lõi";s:11:"description";s:27:"Module Lõi của Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"Çekirdek";s:11:"description";s:25:"Galeri 2 Çekirdek Modül";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:32:"Ядро на Галерията";s:11:"description";s:42:"Модул Ядро на Галерия v2";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Основые файлы";s:11:"description";s:45:"Основные файлы Галереи 2.";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"核心";s:11:"description";s:19:"图库2核心模块";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"核心";s:11:"description";s:21:"Gallery2 核心模組";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core 모듈";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:32:"Gallery 2 コア モジュール";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:29:"البنية الرئيسية";s:11:"description";s:50:"الموديول الرئيسي للجاليري 2";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"גלעין";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:12:"גלרייה";}s:5:"fa_IR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:3:{i:15845;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}i:16476;a:41:{s:2:"af";s:5:"16476";s:2:"ar";s:5:"16476";s:2:"bg";s:5:"16476";s:2:"ca";s:5:"16476";s:2:"cs";s:5:"16476";s:2:"da";s:5:"16476";s:2:"de";s:5:"16476";s:2:"el";s:5:"16476";s:5:"en_GB";s:5:"16476";s:2:"es";s:5:"16476";s:5:"es_AR";s:5:"16476";s:5:"es_MX";s:5:"16476";s:2:"et";s:5:"16476";s:2:"eu";s:5:"16476";s:2:"fi";s:5:"16476";s:2:"fr";s:5:"16476";s:2:"ga";s:5:"16476";s:2:"he";s:5:"16476";s:2:"hu";s:5:"16476";s:2:"is";s:5:"16476";s:2:"it";s:5:"16476";s:2:"ja";s:5:"16476";s:2:"ko";s:5:"16476";s:2:"lt";s:5:"16476";s:2:"lv";s:5:"16476";s:2:"nl";s:5:"16476";s:2:"no";s:5:"16476";s:2:"pl";s:5:"16476";s:2:"pt";s:5:"16476";s:5:"pt_BR";s:5:"16476";s:2:"ro";s:5:"16476";s:2:"ru";s:5:"16476";s:2:"sk";s:5:"16476";s:2:"sl";s:5:"16476";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16476";s:2:"tr";s:5:"16476";s:2:"uk";s:5:"16476";s:2:"vi";s:5:"16476";s:5:"zh_CN";s:5:"16476";s:5:"zh_TW";s:5:"16476";}i:16550;a:41:{s:2:"af";s:5:"16550";s:2:"ar";s:5:"16550";s:2:"bg";s:5:"16550";s:2:"ca";s:5:"16550";s:2:"cs";s:5:"16550";s:2:"da";s:5:"16665";s:2:"de";s:5:"16550";s:2:"el";s:5:"16550";s:5:"en_GB";s:5:"16550";s:2:"es";s:5:"16550";s:5:"es_AR";s:5:"16550";s:5:"es_MX";s:5:"16550";s:2:"et";s:5:"16550";s:2:"eu";s:5:"16550";s:2:"fi";s:5:"16550";s:2:"fr";s:5:"16550";s:2:"ga";s:5:"16550";s:2:"he";s:5:"16550";s:2:"hu";s:5:"16550";s:2:"is";s:5:"16550";s:2:"it";s:5:"16557";s:2:"ja";s:5:"16550";s:2:"ko";s:5:"16550";s:2:"lt";s:5:"16550";s:2:"lv";s:5:"16550";s:2:"nl";s:5:"16550";s:2:"no";s:5:"16550";s:2:"pl";s:5:"16550";s:2:"pt";s:5:"16550";s:5:"pt_BR";s:5:"16550";s:2:"ro";s:5:"16550";s:2:"ru";s:5:"16550";s:2:"sk";s:5:"16550";s:2:"sl";s:5:"16550";s:2:"sr";s:5:"16550";s:2:"sv";s:5:"16550";s:2:"tr";s:5:"16550";s:2:"uk";s:5:"16550";s:2:"vi";s:5:"16550";s:5:"zh_CN";s:5:"16550";s:5:"zh_TW";s:5:"16550";}}}}s:6:"themes";a:9:{s:7:"ajaxian";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"ajaxian";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"en_GB";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ca_ES";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:21:"DHTML slideshow téma";}s:5:"da_DK";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:36:"Fremvisnings-tema der benytter DHTML";}s:5:"de_DE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTNL-basiertes Diashow Motiv";}s:5:"es_ES";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:31:"Tema Presentación usando DHTML";}s:5:"es_MX";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:31:"Tema Presentación usando DHTML";}s:5:"es_AR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:31:"Tema Presentación usando DHTML";}s:5:"et_EE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"eu_ES";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:25:"Thème diaporama en DHTML";}s:5:"ga_IE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"el_GR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"is_IS";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"it_IT";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:34:"Tema con Slideshow basata su DHTML";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:23:"DHTML slīdrādes tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"no_NO";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:35:"Temat wykorzystujacy slajdy w DHTML";}s:5:"pt_BR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"pt_PT";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ro_RO";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"sk_SK";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"sl_SI";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:19:"DHTML diashow teema";}s:5:"sv_SE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:37:"Diabildsvisnings tema med DHTML-stöd";}s:5:"th_TH";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"uk_UA";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"vi_VN";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:30:"DHTML-açık Slaytşov teması";}s:5:"bg_BG";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ru_RU";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"zh_CN";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"zh_TW";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:37:"使用 DHTML 的幻燈片佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ja_JP";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:47:"DHTMLが有効なスライドショーテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"he_IL";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"fa_IR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}}s:9:"languages";a:1:{i:15407;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"carbon";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"carbon";s:7:"version";s:7:"1.2.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 téma od mincel.com";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:27:"Gallery2 tema af mincel.com";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:29:"Gallery2 Motiv von mincel.com";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:36:"Thème pour Gallery 2 par mincel.com";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:35:"Gallery2 Θέμα από mincel.com";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:30:"Tema di Gallery2 by mincel.com";}s:5:"lv_LV";a:2:{s:4:"name";s:4:"Ogle";s:11:"description";s:26:"mincel.com galerija2 tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:27:"Temat galerii by mincel.com";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Ugljenik";s:11:"description";s:29:"Gallery2 izgled od mincel.com";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:36:"Gallery2 teema tekijänä mincel.com";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:30:"Gallery2 tema från mincel.com";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"vi_VN";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:40:"Gallery2 teması geliştiren mincel.com";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ru_RU";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:56:"Тема Carbon для Gallery2. Дизайн mincel.com";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:42:"mincel.com 製作的 Gallery2 佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:40:"mincel.com によるGallery2のテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}}s:9:"languages";a:1:{i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16492";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16492";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"classic";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"classic";s:7:"version";s:5:"1.1.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"en_GB";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Klassiek";s:11:"description";s:27:"Standaard Gallery2 voorkoms";}s:5:"ca_ES";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"cs_CZ";a:2:{s:4:"name";s:16:"Klasik (classic)";s:11:"description";s:44:"Klasický vzhled kořenového alba Galerie 2";}s:5:"da_DK";a:2:{s:4:"name";s:8:"Klassisk";s:11:"description";s:35:"Standard Klassisk Gallery2 udseende";}s:5:"de_DE";a:2:{s:4:"name";s:9:"Klassisch";s:11:"description";s:62:"Klassisches 'Look and Feel' für die Albenansicht von Gallery2";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Clásico";s:11:"description";s:53:""Look and feel" clásico del álbum raíz de Gallery2";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Clásico";s:11:"description";s:41:"Look&Feel clásico de Gallery 2";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Clásico";s:11:"description";s:53:""Look and feel" clásico del álbum raíz de Gallery2";}s:5:"et_EE";a:2:{s:4:"name";s:12:"Klassikaline";s:11:"description";s:49:"Klassikalise Gallery2 peaalbumi välimus ja tunne";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Klasikoa";s:11:"description";s:54:"Gallery 2 erroa album ikuspegi eta erabilera klasikoa.";}s:5:"fr_FR";a:2:{s:4:"name";s:9:"Classique";s:11:"description";s:69:"Thème Classique de Gallery 2 pour la présentation de l'album racine";}s:5:"ga_IE";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"el_GR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"is_IS";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"it_IT";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:42:"Aspetto dell'album radice Classic Gallery2";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Klasika";s:11:"description";s:53:"Klasika Galerija2 pirmsākuma albums skaties un jūti";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:32:"Standaard Gallery2 look-and-feel";}s:5:"no_NO";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:25:"Klasyczny wygląd Galerii";}s:5:"pt_BR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"pt_PT";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"ro_RO";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"sk_SK";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"sl_SI";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"sr_YU";a:2:{s:4:"name";s:9:"Klasičan";s:11:"description";s:43:"Klasičan izgled osnovnog albuma Galerije 2";}s:5:"fi_FI";a:2:{s:4:"name";s:9:"Klassinen";s:11:"description";s:39:"Klassinen Gallery2 juurialbumin ulkoasu";}s:5:"sv_SE";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:39:"Klassiskt Gallery2 utseende och känsla";}s:5:"th_TH";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"uk_UA";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"vi_VN";a:2:{s:4:"name";s:12:"Cổ điển";s:11:"description";s:62:"Kiểu trình bày cổ điển cho album gốc của Gallery2";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Klasik";s:11:"description";s:40:"Klasik Galeri 2 kök albüm görünümü";}s:5:"bg_BG";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"ru_RU";a:2:{s:4:"name";s:24:"Классическая";s:11:"description";s:98:"Классический интерфейс Gallery2 в виде корневого альбома";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"经典";s:11:"description";s:31:"经典的图库2根相册风格";}s:5:"zh_TW";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:31:"傳統 Gallery2 主相簿風格";}s:5:"ko_KR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"ja_JP";a:2:{s:4:"name";s:15:"クラシック";s:11:"description";s:60:"昔のGallery2ルートアルバムのルック&フィール";}s:5:"ar_SA";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"he_IL";a:2:{s:4:"name";s:10:"קלאסי";s:11:"description";s:64:"המראה הקלאסי של אלבום הראשי של Gallery2";}s:5:"fa_IR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"floatrix";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"floatrix";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"en_GB";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ca_ES";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:49:"Téma variabilního sloupce založené na Matrixu";}s:5:"da_DK";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:43:"Foranderlig Kolonne tema baseret på Matrix";}s:5:"de_DE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:64:"Theme mit variabler Spaltenanzahl basierend auf dem Matrix theme";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema de culumna variable basado en Matrix";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema de culumna variable basado en Matrix";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema de culumna variable basado en Matrix";}s:5:"et_EE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:45:"Matrix-en oinarrituriko zutabe aldagarri gaia";}s:5:"fr_FR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:51:"Thème basé sur Matrix avec des colonnes variables";}s:5:"ga_IE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"el_GR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"is_IS";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"it_IT";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema a colonna variabile basato su Matrix";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:50:"Mainīgu kolonnu tēma balstīta uz Matricas tēmu";}s:5:"lt_LT";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:46:"Kintamo stulpelio tema sukurta Matrix pagrindu";}s:5:"hu_HU";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"nl_NL";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:47:"variabel kolom thema gebasseerd op Matrix thema";}s:5:"no_NO";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"pl_PL";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:31:"Temat oparty na temacie Matrix.";}s:5:"pt_BR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"pt_PT";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ro_RO";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"sk_SK";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"sl_SI";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"fi_FI";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:46:"Vaihtele sarake teema, joka perustuu Matrixiin";}s:5:"sv_SE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:38:"Variabel kolumntema baserad på matris";}s:5:"th_TH";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"uk_UA";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"vi_VN";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"tr_TR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Değişken sütun teması Matrix tabanlı";}s:5:"bg_BG";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Клетка";s:11:"description";s:97:"Тема с настраиваемыми колонками на базе темы Матрица";}s:5:"zh_CN";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:39:"基于Matrix主题的可变列的主题";}s:5:"zh_TW";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"基於 Matrix 的可變行數佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ja_JP";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:53:"Marixをベースにした可変カラムのテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"he_IL";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"fa_IR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}}s:9:"languages";a:1:{i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"hybrid";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"hybrid";s:7:"version";s:7:"1.1.4.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Hibriede";s:11:"description";s:51:"Gekombineerde dinamiese album/beeld/skyfievertoning";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombinovaný dynamický pohled album/obrázek/prezentace";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombineret og dynamisk album/billede/fremvisning visning";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombinierte dynamische Ansicht von Alben/Bildern/Diashow";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:54:"Konbinaturiko album/irudi/aurkezpen ikuspegi dinamikoa";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"Hybride";s:11:"description";s:49:"Vue dymamique combinée album / image / diaporama";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:53:"Vista dinamica combinata album/immagine/presentazione";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Hibrīda";s:11:"description";s:58:"Kombinēts albumu/attēlu/slīdrādes dinamisks skatījums";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Hybride";s:11:"description";s:58:"Gecombineerde dynamische album/afbeelding/diashow weergave";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Hybryda";s:11:"description";s:60:"Połączona dynamiczna prezentacja albumów/zdjęć/slajdów";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Hibridni";s:11:"description";s:44:"Kombinovan prikaz albuma, slike i projekcije";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"Hybridi";s:11:"description";s:52:"Yhdistetty albumi/kuva/diaesitys dynaaminen näkymä";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:51:"Kombinerad album/bild/bildspel med dynamisk visning";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"vi_VN";a:2:{s:4:"name";s:3:"Lai";s:11:"description";s:57:"Trình bày động gồm cả album/ảnh/trình chiếu";}s:5:"tr_TR";a:2:{s:4:"name";s:5:"Melez";s:11:"description";s:66:"Biraraya getir albüm/resim/slaytgösterisi dinamik görüntüleme";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Гибрид";s:11:"description";s:110:"Комбинация динамического вида альбома/фотографии/слайд-шоу";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:50:"组合动态视图:相册/图片/幻灯片放映";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:60:"結合相簿/圖片/幻燈片放映的動態顯示畫面";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:90:"アルバム/画像/スライドショー を組み合わせたダイナミックビュー";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}}s:9:"languages";a:1:{i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16492";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16509";s:5:"zh_TW";s:5:"16040";}}}s:6:"matrix";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"matrix";s:7:"version";s:5:"1.1.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:23:"Standaard Gallery2 styl";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:43:""Look and feel" estàndar de Gallery2";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:28:"Standardní vzhled Galerie 2";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:26:"Standard Gallery2 udseende";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:38:"Standard-'Look and Feel' für Gallery2";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:""Look and feel" estándar de Gallery2";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:""Look and feel" estándar de Gallery2";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:""Look and feel" estándar de Gallery2";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Matrizea";s:11:"description";s:30:"Gallery 2 ikuspegi estandarra!";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:28:"Thème standard de Gallery 2";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:"Cuma agus mothú Gallery2 clasaiceach";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:69:"Πρότυπη εμφάνιση και αίσθηση της Gallery2";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:28:"Aspetto standard di Gallery2";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Matrica";s:11:"description";s:36:"Standarta Galerija2 skaties un jūti";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Matrica";s:11:"description";s:41:"Standartinis Galerija2 vaizdas ir jausmas";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Mátrix";s:11:"description";s:29:"Általános Gallery2 kinézet";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:32:"Standaard Gallery2 look-and-feel";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:27:"Standardowy wygląd galerii";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:24:"Aspect standard Gallery2";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"sr_YU";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:38:"Standardni izgled i osećaj Galerije 2";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:22:"Vakio Gallery2 ulkoasu";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Matris";s:11:"description";s:38:"Klassisk Gallery2 utseende och känsla";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"vi_VN";a:2:{s:4:"name";s:9:"Ma trận";s:11:"description";s:41:"Kiểu trình bày chuẩn của Gallery2";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:30:"Standart Galeri 2 görünümü";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Матрица";s:11:"description";s:50:"Стандартный интерфейс Gallery2";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:19:"标准图库2风格";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:22:"標準 Gallery2 風格";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:29:"Gallery2 기분 좋은 테마";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:44:"Gallery2 標準のルック&フィール";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:46:"التصميم الأصلي لـ جاليري2";}s:5:"he_IL";a:2:{s:4:"name";s:21:"מטריצה (Matrix)";s:11:"description";s:41:"המראה הסטנדרטי של Gallery2";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}}s:9:"languages";a:1:{i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"siriux";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"siriux";s:7:"version";s:5:"1.1.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net Gallery tema";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Téma Galerie Siriux.net";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net galleri tema";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:25:"Siriux.net Galllery-Motiv";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:29:"Tema de Gallery de Siriux.net";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:29:"Tema de Gallery de Siriux.net";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:29:"Tema de Gallery de Siriux.net";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net Gallery gaia";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:30:"Thème Siriux.net pour Gallery";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Tema Gallery Siriux.net";}s:5:"lv_LV";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:26:"Siriux.net galerijas tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery thema";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Temat galerii Siriux.net";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"sr_YU";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:26:"Izgled Siriux.net Galerije";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:26:"Siriux.net Gallerian teema";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net Gallery tema";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"vi_VN";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:43:"Kiểu trình bày Gallery của Siriux.net";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:25:"Siriux.net Galeri teması";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Сириус";s:11:"description";s:35:"Тема Галереи Siriux.net ";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net 图库主题";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:31:"Siriux.net Gallery 佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:32:"Siriux.net の Gallery テーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"slider";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"slider";s:7:"version";s:7:"1.0.7.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"Skuiwer";s:11:"description";s:71:"Beeld vertoning/skyfievertoning; sub-albums/ander items nie vertoon nie";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"cs_CZ";a:2:{s:4:"name";s:17:"Kinofilm (slider)";s:11:"description";s:88:"Prohlížení obrázků a prezentace; vnořená alba a další položky nejsou zobrazeny";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:65:"Billedeviser/fremvisning; underalbummer/andre objekter vises ikke";}s:5:"de_DE";a:2:{s:4:"name";s:12:"Diaprojektor";s:11:"description";s:79:"Bildbetrachter/Diashow; Unteralben und sonstige Elemente werden nicht angezeigt";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"eu_ES";a:2:{s:4:"name";s:9:"Aurkezlea";s:11:"description";s:74:"Irudi ikustatzaile/aurkezpena; azpi-album/beste elementuak ez dira ikusiko";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:84:"Visualiseur d'image / diaporama  sous-albums et autres éléments non affichés";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:72:"Visualizzatore/presentazione immagine; sottoalbum/altro non visualizzato";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Šļūce";s:11:"description";s:67:"Attēlu skats/slīdrāde; apakšalbumi/citi vienumi netiek rādīti";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"nl_NL";a:2:{s:4:"name";s:11:"Verschuiven";s:11:"description";s:67:"Afbeelding weergave/diashow; sub-albums/andere items niet weergeven";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Slajdy";s:11:"description";s:53:"Pokaz slajdów; podalbumy i inne elementy niewidoczne";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"Trakast";s:11:"description";s:70:"Prikazuje i projektuje slike; podalbumi i drugi objekti nisu prikazani";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:66:"Kuvien katselu/diaesitys; albumeita ja muita kohteita ei näytetä";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:68:"Bildvisare/Bildspel; underliggande album och andra objekt visas inte";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"vi_VN";a:2:{s:4:"name";s:18:"Máy chiếu slide";s:11:"description";s:98:"Xem từng ảnh/trình chiếu; album con/các đối tượng khác không được hiển thị";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"Sürgü";s:11:"description";s:87:"Resim görüntüleyici/slaytgösterisi; altalbümler/diğer ögeler görüntülenemiyor";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Бегунок";s:11:"description";s:165:"Режим просмотра изображений/слайд-шоу; вложенные альбомы/другие элементы не отображаются";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:61:"图片查看/幻灯片放映; 子相册/其他项目未显示";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:69:"圖片顯示及幻燈片放映;不顯示子相簿和其他的項目";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}}s:9:"languages";a:1:{i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"tile";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"tile";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"en_GB";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"af_ZA";a:2:{s:4:"name";s:5:"Teël";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ca_ES";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"cs_CZ";a:2:{s:4:"name";s:16:"Dlaždice (tile)";s:11:"description";s:42:"Dlaždicový pohled na pozadí a náhledy ";}s:5:"da_DK";a:2:{s:4:"name";s:5:"Flise";s:11:"description";s:55:"Flise-visning af baggrunds-billede og billed-miniaturer";}s:5:"de_DE";a:2:{s:4:"name";s:7:"Kacheln";s:11:"description";s:56:"Kachelansicht aus Hintergrundbild und Photo-Voransichten";}s:5:"es_ES";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:55:"Vista en mosaico de la imagen de fondo y las miniaturas";}s:5:"es_MX";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:55:"Vista en mosaico de la imagen de fondo y las miniaturas";}s:5:"es_AR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:55:"Vista en mosaico de la imagen de fondo y las miniaturas";}s:5:"et_EE";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Mosaikoa";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"fr_FR";a:2:{s:4:"name";s:5:"Pavé";s:11:"description";s:57:"Vue en pavage de l'image d'arrière plan et des vignettes";}s:5:"ga_IE";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"el_GR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"is_IS";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"it_IT";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:73:"Visualizzazione a mattonelle dell'immagine di sfondo e anteprime immagine";}s:5:"lv_LV";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"lt_LT";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"hu_HU";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"nl_NL";a:2:{s:4:"name";s:5:"Tegel";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"no_NO";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"pl_PL";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:43:"Widok tła i miniaturek w postaci kafelków";}s:5:"pt_BR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"pt_PT";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ro_RO";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"sk_SK";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"sl_SI";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Pločast";s:11:"description";s:58:"Pločast prikaz pozadinske slike i umanjenih prikaza slika";}s:5:"fi_FI";a:2:{s:4:"name";s:9:"Laatoitus";s:11:"description";s:49:"Laattanäkymä taustakuvalla ja esikatselukuvilla";}s:5:"sv_SE";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:48:"Kakelvisning av bakgrundsbild och miniatyrbilder";}s:5:"th_TH";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"uk_UA";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"vi_VN";a:2:{s:4:"name";s:9:"Ô gạch";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"tr_TR";a:2:{s:4:"name";s:8:"Döşeli";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"bg_BG";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Мозаика";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"zh_CN";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"zh_TW";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:51:"用拼格方式顯示背景圖片和圖片縮略圖";}s:5:"ko_KR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ja_JP";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:45:"タイル状の背景画像とサムネイル";}s:5:"ar_SA";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"he_IL";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"fa_IR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}}s:9:"languages";a:1:{i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/comment-1.1.3.1-16510.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/comment-1.1.3.1-16510.descriptor new file mode 100644 index 0000000..c597770 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/comment-1.1.3.1-16510.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"comment";s:7:"version";s:7:"1.1.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15508";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Kommentaar";s:11:"description";s:27:"Gebruiker kommentaarstelsel";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Comentaris";s:11:"description";s:34:"Sistema de comentaris dels usuaris";s:10:"groupLabel";s:17:"Informació Extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Komentáře";s:11:"description";s:37:"Systém pro uživatelské komentáře";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:26:"Bruger kommenteringssystem";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kommentare";s:11:"description";s:31:"System für Benutzer-Kommentare";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:11:"Datos extra";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Kommentaarid";s:11:"description";s:35:"Kasutajate kommenteerimise süsteem";s:10:"groupLabel";s:13:"Ekstra-andmed";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Iruzkinak";s:11:"description";s:28:"Erabiltzaile iruzkin sistema";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Commentaires";s:11:"description";s:40:"Système de commentaire des utilisateurs";s:10:"groupLabel";s:21:"Extraire les données";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Teachtaireachtaí";s:11:"description";s:22:"Córas teachtaireachta";s:10:"groupLabel";s:12:"Sonraí eile";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Σχόλια";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:39:"Επιπρόσθετα Στοιχεία";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Commenti";s:11:"description";s:51:"Sistema per inserire commenti da parte degli utenti";s:10:"groupLabel";s:10:"Dati extra";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Komentāri";s:11:"description";s:30:"Lietotāju komentāru sistēma";s:10:"groupLabel";s:11:"Ekstra dati";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Kometarai";s:11:"description";s:29:"Vartotojo komentavimo sistema";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Megjegyzések";s:11:"description";s:47:"Felhasználói megjegyzéshozzáfűző rendszer";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Reacties";s:11:"description";s:25:"Bezoekers reactie systeem";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Komentarze";s:11:"description";s:23:"Komentarze użytkownika";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Comentários";s:11:"description";s:41:"Sistema de comentário de usuários";s:10:"groupLabel";s:16:"Dados Adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Comentários";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Comentarii";s:11:"description";s:43:"Sistem de introducere comentarii utilizator";s:10:"groupLabel";s:10:"Extra date";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Komentari";s:11:"description";s:29:"Sistem korisničkih komentara";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Kommentit";s:11:"description";s:36:"Käyttäjäkommenttien järjestelmä";s:10:"groupLabel";s:11:"Lisätiedot";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:25:"Användarkommentarssystem";s:10:"groupLabel";s:17:"Extra Information";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Коментарі";s:11:"description";s:39:"Система коментування";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Bình luận";s:11:"description";s:25:"Hệ thống bình luận";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Yorumlar";s:11:"description";s:25:"Kullanıcı yorum sistemi";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Коментари";s:11:"description";s:65:"Система за потребителски коментари";s:10:"groupLabel";s:35:"Допълнителни Данни";}s:5:"ru_RU";a:3:{s:4:"name";s:22:"Комментарии";s:11:"description";s:74:"Добавление комментариев пользователями";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"评论";s:11:"description";s:18:"用户评论系统";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"回應";s:11:"description";s:21:"使用者回應系統";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"댓글";s:11:"description";s:50:"사용자가 댓글을 달수 있도록 합니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"コメント";s:11:"description";s:33:"ユーザコメントシステム";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"تعليقات";s:11:"description";s:55:"نظام كتابة التعليقات للمستخدم";s:10:"groupLabel";s:27:"معلومات إضافية";}s:5:"he_IL";a:3:{s:4:"name";s:12:"תגובות";s:11:"description";s:40:"מערכת תגובות המשתמשים";s:10:"groupLabel";s:25:"נתונים נוספים";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"نظرات";s:11:"description";s:36:"سیستم نظرات کاربران";s:10:"groupLabel";s:28:"داده های تکمیلی";}}s:5:"files";a:122:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"2384";s:4:"hash";s:10:"2291194381";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"AddComment.inc";a:3:{s:5:"bytes";s:4:"6673";s:4:"hash";s:10:"3399979474";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"Callbacks.inc";a:3:{s:5:"bytes";s:4:"3798";s:4:"hash";s:10:"4002130173";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"CommentChangeConfirmation.inc";a:3:{s:5:"bytes";s:4:"1506";s:4:"hash";s:10:"1918159307";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"CommentSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"3317";s:4:"hash";s:10:"1907241120";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"DeleteComment.inc";a:3:{s:5:"bytes";s:4:"4501";s:4:"hash";s:10:"2655089860";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"EditComment.inc";a:3:{s:5:"bytes";s:4:"7055";s:4:"hash";s:9:"216862135";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"ShowAllComments.inc";a:3:{s:5:"bytes";s:4:"5606";s:4:"hash";s:10:"2701092187";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"ShowComments.inc";a:3:{s:5:"bytes";s:4:"2988";s:4:"hash";s:9:"262122271";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"classes/CommentCaptchaAdminOption.class";a:3:{s:5:"bytes";s:4:"1535";s:4:"hash";s:10:"2700187124";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"classes/Entities.inc";a:3:{s:5:"bytes";s:3:"951";s:4:"hash";s:9:"953243210";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/GalleryComment.class";a:3:{s:5:"bytes";s:4:"4854";s:4:"hash";s:9:"364689015";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryCommentHelper.class";a:3:{s:5:"bytes";s:5:"10388";s:4:"hash";s:10:"2090313395";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryCommentSearch.class";a:3:{s:5:"bytes";s:4:"5539";s:4:"hash";s:7:"6675042";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"6403";s:4:"hash";s:9:"738003739";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_GalleryComment_1.0.xml";a:3:{s:5:"bytes";s:3:"632";s:4:"hash";s:10:"1002137142";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_GalleryComment_1.1.xml";a:3:{s:5:"bytes";s:3:"551";s:4:"hash";s:9:"655476383";s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"comment.css";a:3:{s:5:"bytes";s:3:"154";s:4:"hash";s:9:"514053237";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/af/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3690";s:4:"hash";s:9:"878864331";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:40:"locale/ar/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3913";s:4:"hash";s:9:"790669509";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:40:"locale/bg/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4666";s:4:"hash";s:10:"2611319726";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:40:"locale/ca/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4197";s:4:"hash";s:10:"1933064445";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:40:"locale/cs/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4701";s:4:"hash";s:10:"3036286126";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/da/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4448";s:4:"hash";s:9:"410487847";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:40:"locale/de/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4597";s:4:"hash";s:10:"4183503186";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:40:"locale/el/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3620";s:4:"hash";s:10:"3255778068";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:43:"locale/en_GB/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:3:"491";s:4:"hash";s:10:"2142290241";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4596";s:4:"hash";s:10:"1360917489";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/es_AR/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"1039";s:4:"hash";s:10:"1018254713";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:43:"locale/es_MX/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"1807";s:4:"hash";s:10:"1632038898";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:40:"locale/et/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4175";s:4:"hash";s:10:"3503380839";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:40:"locale/eu/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4100";s:4:"hash";s:10:"1714418181";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fa/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4094";s:4:"hash";s:9:"959294833";s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:40:"locale/fi/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4475";s:4:"hash";s:8:"80880145";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4902";s:4:"hash";s:10:"4138902631";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/ga/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3692";s:4:"hash";s:10:"2643509033";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:40:"locale/he/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4510";s:4:"hash";s:10:"3291833575";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:40:"locale/hu/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4817";s:4:"hash";s:10:"3457616065";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:40:"locale/is/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:3:"461";s:4:"hash";s:9:"607731198";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:40:"locale/it/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4519";s:4:"hash";s:10:"4075413108";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4799";s:4:"hash";s:10:"2222811319";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/ko/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4253";s:4:"hash";s:10:"3822851025";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:40:"locale/lt/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4657";s:4:"hash";s:10:"2425671251";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:40:"locale/lv/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4625";s:4:"hash";s:9:"304900269";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:40:"locale/nl/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4047";s:4:"hash";s:10:"2554281037";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4497";s:4:"hash";s:10:"1905792854";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4641";s:4:"hash";s:10:"2541529673";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:40:"locale/pt/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"2887";s:4:"hash";s:9:"209861242";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:43:"locale/pt_BR/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3951";s:4:"hash";s:10:"3221834986";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:40:"locale/ro/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4525";s:4:"hash";s:10:"3135399594";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:40:"locale/ru/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"5856";s:4:"hash";s:9:"281838955";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sk/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"1201";s:4:"hash";s:10:"1120383045";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:40:"locale/sr/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4473";s:4:"hash";s:10:"3263019003";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:40:"locale/sv/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4643";s:4:"hash";s:10:"4038649815";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4135";s:4:"hash";s:10:"2983871281";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:40:"locale/uk/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"5300";s:4:"hash";s:10:"1730367275";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:40:"locale/vi/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3815";s:4:"hash";s:10:"1910128527";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3893";s:4:"hash";s:10:"1125279474";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4240";s:4:"hash";s:10:"4246819487";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"9276";s:4:"hash";s:10:"1561668646";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"5947";s:4:"hash";s:10:"1291156007";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"6316";s:4:"hash";s:10:"2238722749";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"7310";s:4:"hash";s:10:"3651482026";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"5992";s:4:"hash";s:9:"955289710";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"6326";s:4:"hash";s:10:"3480862780";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"5533";s:4:"hash";s:10:"1001216843";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"6317";s:4:"hash";s:8:"82424889";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"7225";s:4:"hash";s:10:"4152299752";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"5324";s:4:"hash";s:10:"2992568190";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"5746";s:4:"hash";s:10:"2309259692";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"6235";s:4:"hash";s:10:"2774093950";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"6490";s:4:"hash";s:10:"4285327225";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"5685";s:4:"hash";s:10:"2451193432";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"5803";s:4:"hash";s:10:"3633794768";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fa.po";a:3:{s:5:"bytes";s:4:"6372";s:4:"hash";s:10:"3869380133";s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"6074";s:4:"hash";s:10:"3869279219";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"5939";s:4:"hash";s:10:"2975051853";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"6924";s:4:"hash";s:10:"1017265857";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"6266";s:4:"hash";s:10:"3343473582";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"6003";s:4:"hash";s:10:"2910727145";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"4123";s:4:"hash";s:10:"3946914145";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"5583";s:4:"hash";s:10:"1639567607";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"5979";s:4:"hash";s:10:"1737071497";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"6004";s:4:"hash";s:9:"332831845";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"5926";s:4:"hash";s:9:"290759554";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"5669";s:4:"hash";s:9:"995474430";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"5980";s:4:"hash";s:10:"4287050117";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"5648";s:4:"hash";s:10:"3266363787";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5712";s:4:"hash";s:10:"3373091908";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"5979";s:4:"hash";s:10:"3861144195";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"6313";s:4:"hash";s:10:"2720129735";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5589";s:4:"hash";s:10:"2851128733";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"8278";s:4:"hash";s:8:"69929123";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"4643";s:4:"hash";s:9:"747620177";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"5842";s:4:"hash";s:10:"3280770076";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"3428";s:4:"hash";s:10:"2179537472";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"6026";s:4:"hash";s:10:"1782583776";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5756";s:4:"hash";s:10:"2102520296";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"7099";s:4:"hash";s:10:"3617282186";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"6114";s:4:"hash";s:10:"3920919441";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"5628";s:4:"hash";s:10:"1984483227";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"5243";s:4:"hash";s:9:"153533643";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:24:"templates/AddComment.tpl";a:3:{s:5:"bytes";s:4:"3315";s:4:"hash";s:10:"1831584937";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/Comment.tpl";a:3:{s:5:"bytes";s:4:"2961";s:4:"hash";s:10:"4202419980";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"templates/CommentChangeConfirmation.tpl";a:3:{s:5:"bytes";s:3:"932";s:4:"hash";s:10:"2632942182";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/CommentSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"1470";s:4:"hash";s:10:"3068560383";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/DeleteComment.tpl";a:3:{s:5:"bytes";s:4:"1724";s:4:"hash";s:10:"3542618473";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/EditComment.tpl";a:3:{s:5:"bytes";s:4:"3528";s:4:"hash";s:10:"3738059347";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"templates/ShowAllComments.tpl";a:3:{s:5:"bytes";s:4:"2331";s:4:"hash";s:10:"2284733406";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/ShowComments.tpl";a:3:{s:5:"bytes";s:4:"1018";s:4:"hash";s:10:"2454373611";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"templates/blocks/AddComment.tpl";a:3:{s:5:"bytes";s:4:"1244";s:4:"hash";s:9:"268019560";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"templates/blocks/ViewComments.tpl";a:3:{s:5:"bytes";s:4:"1332";s:4:"hash";s:10:"3012994880";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/blocks/blocks.inc";a:3:{s:5:"bytes";s:3:"915";s:4:"hash";s:9:"139562107";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"test/phpunit/AddCommentControllerTest.class";a:3:{s:5:"bytes";s:5:"19588";s:4:"hash";s:10:"2309268781";s:8:"packages";a:0:{}}s:36:"test/phpunit/CommentSearchTest.class";a:3:{s:5:"bytes";s:4:"9328";s:4:"hash";s:9:"491192330";s:8:"packages";a:0:{}}s:49:"test/phpunit/CommentSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"3432";s:4:"hash";s:10:"1058724829";s:8:"packages";a:0:{}}s:30:"test/phpunit/CommentTest.class";a:3:{s:5:"bytes";s:5:"10055";s:4:"hash";s:10:"1551152641";s:8:"packages";a:0:{}}s:46:"test/phpunit/DeleteCommentControllerTest.class";a:3:{s:5:"bytes";s:4:"4150";s:4:"hash";s:9:"665997995";s:8:"packages";a:0:{}}s:44:"test/phpunit/EditCommentControllerTest.class";a:3:{s:5:"bytes";s:5:"12087";s:4:"hash";s:9:"434782559";s:8:"packages";a:0:{}}}s:11:"directories";a:91:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fa/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:9:"locale/fa";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"templates/blocks";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15508;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16476";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fa";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16476";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16476";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/exif-1.1.0.1-16119.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/exif-1.1.0.1-16119.descriptor new file mode 100644 index 0000000..f8610f7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/exif-1.1.0.1-16119.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:4:"exif";s:7:"version";s:7:"1.1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16119";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:37:"Onttrek EXIF/IPTC data uit JPEG-fotos";s:10:"groupLabel";s:12:"Onttrek Data";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:46:"Extraure les dades EXIF/IPTC de les fotos JPEG";s:10:"groupLabel";s:21:"Dades Suplementàries";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Práce s EXIF/IPTC daty z JPEG fotografií";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:37:"Udtræk EXIF/IPTC data fra JPEG fotos";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Extrahiere EXIF/IPTC Daten aus JPEG-Photos";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:41:"EXIF/IPTC datuak atera JPEG argazkietatik";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:49:"Extraire les données EXIF & IPTC des photos JPEG";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:34:"Estrai dati EXIF/IPTC da foto JPEG";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:49:"Išgauti EXIF/IPTC duomenis iš JPEG fotografijų";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:38:"Extract EXIF/IPTC data uit JPEG foto's";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:38:"Pobierz dane EXIF/IPTC ze zdjęć JPEG";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:34:"Pegar dados EXIF/IPTC da foto JPEG";s:10:"groupLabel";s:16:"Dados adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Extrage informatii EXIF/IPTC din foto JPEG";s:10:"groupLabel";s:23:"Informatii suplimentare";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:52:"Preuzimanje EXIF i IPTC podataka iz JPEG fotografija";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:35:"Purkaa EXIF/IPTC tieto JPEG-kuvista";s:10:"groupLabel";s:10:"Lisätieto";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:41:"Extrahera EXIF/IPTC data från JPEG foton";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:44:"Trích dữ liệu EXIF/IPTC từ ảnh JPEG";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:74:"Извлечение данных EXIF/IPTC из JPEG фотографий";s:10:"groupLabel";s:26:"Дополнительно";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:32:"从JPEG照片中析取EXIF数据";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:36:"從 JPEG 照片中取得 EXIF 資料";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:54:"JPEG 사진에서 EXIF/IPTC 정보를 뽑아냅니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:69:"JPEGの画像から、EXIFもしくはITPCのデータを展開する";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}}s:5:"files";a:107:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1858";s:4:"hash";s:9:"487791013";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"AdminExif.inc";a:3:{s:5:"bytes";s:5:"12337";s:4:"hash";s:10:"3117261894";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"Callbacks.inc";a:3:{s:5:"bytes";s:4:"2812";s:4:"hash";s:10:"2057565291";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"ExifDescriptionOption.inc";a:3:{s:5:"bytes";s:4:"6865";s:4:"hash";s:10:"3532722632";s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"Preloads.inc";a:3:{s:5:"bytes";s:4:"1237";s:4:"hash";s:10:"2335892792";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"SwitchDetailMode.inc";a:3:{s:5:"bytes";s:4:"3325";s:4:"hash";s:10:"2377449304";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"classes/ExifExtractor.class";a:3:{s:5:"bytes";s:4:"2960";s:4:"hash";s:10:"4049714568";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"classes/ExifHelper.class";a:3:{s:5:"bytes";s:5:"38688";s:4:"hash";s:10:"1727291833";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"classes/ExifInterface_1_0.class";a:3:{s:5:"bytes";s:4:"1697";s:4:"hash";s:10:"1590320328";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"classes/ExifToolkit.class";a:3:{s:5:"bytes";s:4:"1630";s:4:"hash";s:10:"3014854713";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"2344";s:4:"hash";s:10:"3891696948";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"classes/Maps.inc";a:3:{s:5:"bytes";s:3:"366";s:4:"hash";s:9:"198338354";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"classes/Maps.xml";a:3:{s:5:"bytes";s:3:"798";s:4:"hash";s:10:"1215849070";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"lib/JPEG/JPEG.inc";a:3:{s:5:"bytes";s:6:"105845";s:4:"hash";s:10:"1603201423";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"lib/exifer/exif.inc";a:3:{s:5:"bytes";s:5:"39861";s:4:"hash";s:9:"860713159";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"lib/exifer/makers/canon.inc";a:3:{s:5:"bytes";s:5:"19534";s:4:"hash";s:9:"301969404";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"lib/exifer/makers/fujifilm.inc";a:3:{s:5:"bytes";s:4:"8602";s:4:"hash";s:10:"2586206162";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"lib/exifer/makers/gps.inc";a:3:{s:5:"bytes";s:4:"8686";s:4:"hash";s:10:"1286151642";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"lib/exifer/makers/nikon.inc";a:3:{s:5:"bytes";s:5:"11554";s:4:"hash";s:10:"1448861190";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"lib/exifer/makers/olympus.inc";a:3:{s:5:"bytes";s:4:"5762";s:4:"hash";s:9:"140708777";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"lib/exifer/makers/sanyo.inc";a:3:{s:5:"bytes";s:4:"5403";s:4:"hash";s:10:"1069425848";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"locale/af/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"14284";s:4:"hash";s:10:"2985036685";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:37:"locale/ar/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:3:"776";s:4:"hash";s:10:"1182930423";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:37:"locale/ca/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"14769";s:4:"hash";s:10:"2598007355";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:37:"locale/cs/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"16345";s:4:"hash";s:10:"1022434325";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:37:"locale/da/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"12881";s:4:"hash";s:10:"2064277617";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:37:"locale/de/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"16697";s:4:"hash";s:10:"3668372319";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:40:"locale/en_GB/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:4:"2204";s:4:"hash";s:9:"716107925";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:37:"locale/es/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"17351";s:4:"hash";s:10:"4285922269";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:37:"locale/eu/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"16873";s:4:"hash";s:9:"839548901";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:37:"locale/fi/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"14236";s:4:"hash";s:10:"3934583458";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:37:"locale/fr/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"18029";s:4:"hash";s:9:"209110248";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:37:"locale/ga/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:4:"6082";s:4:"hash";s:9:"700095934";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:37:"locale/hu/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:4:"2796";s:4:"hash";s:10:"2646987915";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:37:"locale/is/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:3:"461";s:4:"hash";s:9:"395428149";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:37:"locale/it/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"14183";s:4:"hash";s:10:"2469996994";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:37:"locale/ja/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"15013";s:4:"hash";s:10:"2071778005";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:37:"locale/ko/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:4:"5797";s:4:"hash";s:9:"678905503";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:37:"locale/lt/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"13100";s:4:"hash";s:10:"4001995413";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:37:"locale/nl/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"11312";s:4:"hash";s:10:"2956177726";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:37:"locale/no/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"17165";s:4:"hash";s:10:"3907638070";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:37:"locale/pl/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:4:"7333";s:4:"hash";s:10:"2809322709";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:40:"locale/pt_BR/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"14598";s:4:"hash";s:10:"3378495283";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:37:"locale/ro/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"13516";s:4:"hash";s:9:"417855386";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:37:"locale/ru/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"18421";s:4:"hash";s:9:"501935401";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:37:"locale/sk/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:3:"905";s:4:"hash";s:10:"1054578487";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:37:"locale/sr/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"11659";s:4:"hash";s:9:"923899796";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:37:"locale/sv/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"16656";s:4:"hash";s:8:"75810470";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:37:"locale/tr/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:4:"4343";s:4:"hash";s:10:"3235773638";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:37:"locale/uk/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:3:"910";s:4:"hash";s:10:"3836509529";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:37:"locale/vi/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"13160";s:4:"hash";s:10:"3948801453";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:40:"locale/zh_CN/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"15927";s:4:"hash";s:10:"3194160196";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:40:"locale/zh_TW/LC_MESSAGES/modules_exif.mo";a:3:{s:5:"bytes";s:5:"15990";s:4:"hash";s:10:"3755581989";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"5897";s:4:"hash";s:10:"2018612868";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:5:"17161";s:4:"hash";s:9:"777222646";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:5:"12122";s:4:"hash";s:10:"1852043323";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:5:"18030";s:4:"hash";s:10:"2476038960";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:5:"18772";s:4:"hash";s:10:"2007605235";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:5:"16469";s:4:"hash";s:10:"3735017970";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:5:"18246";s:4:"hash";s:8:"95344085";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:5:"17297";s:4:"hash";s:10:"2624184170";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:5:"18697";s:4:"hash";s:10:"2023216301";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:5:"17886";s:4:"hash";s:10:"3549589514";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:5:"17185";s:4:"hash";s:10:"3615890630";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:5:"19075";s:4:"hash";s:9:"667684708";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:5:"15720";s:4:"hash";s:10:"2901918997";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:5:"12729";s:4:"hash";s:10:"2536400678";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:5:"11968";s:4:"hash";s:9:"264154262";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:5:"18243";s:4:"hash";s:10:"4087438922";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:5:"17929";s:4:"hash";s:10:"3998340582";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:5:"14287";s:4:"hash";s:10:"2013772530";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:5:"17378";s:4:"hash";s:10:"4166056879";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:5:"18176";s:4:"hash";s:10:"2289290572";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:5:"17862";s:4:"hash";s:10:"3327227622";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:5:"18494";s:4:"hash";s:10:"2924410477";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:5:"17494";s:4:"hash";s:9:"792235732";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:5:"18294";s:4:"hash";s:10:"1008417197";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:5:"23447";s:4:"hash";s:10:"1685671956";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:5:"12395";s:4:"hash";s:10:"2418272217";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:5:"16458";s:4:"hash";s:9:"655185375";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"8541";s:4:"hash";s:10:"1612065085";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:5:"17991";s:4:"hash";s:9:"853024203";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:5:"13394";s:4:"hash";s:10:"2416286529";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:5:"12400";s:4:"hash";s:10:"2598016800";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:5:"17527";s:4:"hash";s:10:"2332385175";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:5:"17000";s:4:"hash";s:10:"3758372037";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:5:"16405";s:4:"hash";s:10:"1595821920";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:23:"templates/AdminExif.tpl";a:3:{s:5:"bytes";s:4:"8772";s:4:"hash";s:10:"2508315230";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"templates/blocks/ExifInfo.tpl";a:3:{s:5:"bytes";s:4:"2876";s:4:"hash";s:10:"3529296902";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/blocks/blocks.inc";a:3:{s:5:"bytes";s:3:"111";s:4:"hash";s:10:"4231301880";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"test/data/CanonS30.small.jpg";a:3:{s:5:"bytes";s:4:"8163";s:4:"hash";s:10:"2552529221";s:8:"packages";a:0:{}}s:19:"test/data/descr.jpg";a:3:{s:5:"bytes";s:4:"2365";s:4:"hash";s:10:"1814766410";s:8:"packages";a:0:{}}s:34:"test/data/exif-embedded-script.jpg";a:3:{s:5:"bytes";s:3:"513";s:4:"hash";s:10:"2216722996";s:8:"packages";a:0:{}}s:30:"test/data/exif-iptc-xmp-ps.jpg";a:3:{s:5:"bytes";s:5:"10885";s:4:"hash";s:9:"572756148";s:8:"packages";a:0:{}}s:34:"test/data/iptc-embedded-script.jpg";a:3:{s:5:"bytes";s:4:"8879";s:4:"hash";s:10:"4089754057";s:8:"packages";a:0:{}}s:25:"test/data/iptc-exifer.jpg";a:3:{s:5:"bytes";s:3:"478";s:4:"hash";s:10:"1779730468";s:8:"packages";a:0:{}}s:28:"test/data/iptc-irfanview.jpg";a:3:{s:5:"bytes";s:3:"843";s:4:"hash";s:10:"1264377947";s:8:"packages";a:0:{}}s:29:"test/data/iptc-iso-8859-1.jpg";a:3:{s:5:"bytes";s:3:"371";s:4:"hash";s:9:"498548500";s:8:"packages";a:0:{}}s:42:"test/phpunit/AdminExifControllerTest.class";a:3:{s:5:"bytes";s:5:"17646";s:4:"hash";s:10:"2734323042";s:8:"packages";a:0:{}}s:44:"test/phpunit/ExifDescriptionOptionTest.class";a:3:{s:5:"bytes";s:5:"13999";s:4:"hash";s:10:"1628040043";s:8:"packages";a:0:{}}s:36:"test/phpunit/ExifExtractorTest.class";a:3:{s:5:"bytes";s:4:"7014";s:4:"hash";s:9:"535476312";s:8:"packages";a:0:{}}s:33:"test/phpunit/ExifHelperTest.class";a:3:{s:5:"bytes";s:5:"22189";s:4:"hash";s:9:"351204828";s:8:"packages";a:0:{}}s:34:"test/phpunit/ExifToolkitTest.class";a:3:{s:5:"bytes";s:4:"1656";s:4:"hash";s:10:"3734504528";s:8:"packages";a:0:{}}s:49:"test/phpunit/SwitchDetailModeControllerTest.class";a:3:{s:5:"bytes";s:4:"5932";s:4:"hash";s:10:"1484366613";s:8:"packages";a:0:{}}}s:11:"directories";a:77:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"lib/JPEG";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:3:"lib";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:10:"lib/exifer";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"lib/exifer/makers";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"templates/blocks";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"test/data";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/keyalbum-1.0.0.2-16510.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/keyalbum-1.0.0.2-16510.descriptor new file mode 100644 index 0000000..9820962 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/keyalbum-1.0.0.2-16510.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:8:"keyalbum";s:7:"version";s:7:"1.0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:25:"Alba s klíčovými slovy";s:11:"description";s:61:"Dynamická alba vycházející z hledaných klíčových slov";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:20:"Schlüsselwort-Alben";s:11:"description";s:55:"Dynamische Alben basierend auf der Schlüsselwort-Suche";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Albums mots clés";s:11:"description";s:55:"Albums dynamiques basés sur la recherche de mots clés";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:40:"Λέξεις Κλειδιά Άλπουμ";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:19:"Album Parola Chiave";s:11:"description";s:52:"Album dinamici basati sulla ricerca di parole chiave";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:23:"Album słów kluczowych";s:11:"description";s:62:"Album dynamiczny oparty na wyszukiwaniu po słowach kluczowych";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:20:"Albume Cuvinte-cheie";s:11:"description";s:40:"Albume dinamice pe baza cuvintelor cheie";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:22:"Albumi ključnih reči";s:11:"description";s:59:"Dinamički albumi bazirani na pretrazi po ključnim rečima";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Nyckelordsalbum";s:11:"description";s:47:"Dynamiskt album baserat på nyckelords sökning";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:25:"Anahtar Kelime Albümleri";s:11:"description";s:47:"Anahtar kelime arama tabanlı dinamik albümler";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:49:"Альбомы по ключевому слову";s:11:"description";s:114:"Динамические альбомы, основанные на поиске по ключевому слову";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"關鍵字相簿";s:11:"description";s:45:"由關鍵字搜尋結果產生的動態相簿";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"キーワードアルバム";s:11:"description";s:54:"キーワード検索に基づく動的なアルバム";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:91:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"578";s:4:"hash";s:10:"1785141419";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"Callbacks.inc";a:3:{s:5:"bytes";s:4:"6417";s:4:"hash";s:10:"2683670004";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"KeywordAlbum.inc";a:3:{s:5:"bytes";s:4:"6649";s:4:"hash";s:10:"1476762926";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"KeywordAlbumSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"6258";s:4:"hash";s:9:"382800370";s:8:"packages";a:1:{i:0;s:4:"base";}}s:41:"locale/af/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1053";s:4:"hash";s:10:"1199999559";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:41:"locale/ar/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1044";s:4:"hash";s:10:"2310128569";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:41:"locale/bg/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"871";s:4:"hash";s:10:"1384707140";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:41:"locale/ca/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1087";s:4:"hash";s:10:"4029702539";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:41:"locale/cs/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3955";s:4:"hash";s:10:"3042884692";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:41:"locale/da/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1237";s:4:"hash";s:10:"4100541359";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:41:"locale/de/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"4064";s:4:"hash";s:10:"1177605533";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:41:"locale/el/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"2103";s:4:"hash";s:9:"853815032";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:44:"locale/en_GB/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"497";s:4:"hash";s:10:"1558923756";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:41:"locale/es/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"4073";s:4:"hash";s:10:"1240721509";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:44:"locale/es_AR/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"607";s:4:"hash";s:10:"2801024520";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:44:"locale/es_MX/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"931";s:4:"hash";s:10:"2867497193";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:41:"locale/et/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"795";s:4:"hash";s:10:"3540174799";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:41:"locale/eu/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1092";s:4:"hash";s:9:"503912580";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:41:"locale/fi/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1031";s:4:"hash";s:10:"1758912605";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:41:"locale/fr/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3869";s:4:"hash";s:10:"3248036003";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:41:"locale/ga/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"808";s:4:"hash";s:10:"3812159376";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:41:"locale/he/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1060";s:4:"hash";s:9:"276662825";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:41:"locale/hu/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1010";s:4:"hash";s:10:"3098260494";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:41:"locale/it/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3919";s:4:"hash";s:10:"1972202476";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:41:"locale/ja/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"2507";s:4:"hash";s:9:"440186224";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:41:"locale/ko/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1105";s:4:"hash";s:9:"326198994";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:41:"locale/lt/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1103";s:4:"hash";s:10:"1676305880";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:41:"locale/nl/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1037";s:4:"hash";s:10:"3807818036";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:41:"locale/no/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3703";s:4:"hash";s:10:"3279990262";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:41:"locale/pl/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"4257";s:4:"hash";s:10:"4236529470";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:41:"locale/pt/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"839";s:4:"hash";s:10:"4116677335";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:44:"locale/pt_BR/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"905";s:4:"hash";s:10:"1272010532";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:41:"locale/ro/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3838";s:4:"hash";s:10:"3198558093";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:41:"locale/ru/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"5230";s:4:"hash";s:10:"4270085246";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:41:"locale/sk/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1032";s:4:"hash";s:10:"3327796544";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:41:"locale/sl/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"831";s:4:"hash";s:10:"1936167654";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:41:"locale/sr/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3816";s:4:"hash";s:9:"930531046";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:41:"locale/sv/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3715";s:4:"hash";s:10:"1359496291";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:41:"locale/tr/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"2811";s:4:"hash";s:10:"2454139190";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:41:"locale/uk/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1129";s:4:"hash";s:10:"2388553071";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:41:"locale/vi/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"1028";s:4:"hash";s:10:"1173106427";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:44:"locale/zh_CN/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:3:"970";s:4:"hash";s:10:"2097588463";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:44:"locale/zh_TW/LC_MESSAGES/modules_keyalbum.mo";a:3:{s:5:"bytes";s:4:"3569";s:4:"hash";s:10:"3224815981";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"5416";s:4:"hash";s:10:"2865120519";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"3581";s:4:"hash";s:10:"1738689394";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3563";s:4:"hash";s:10:"2264135888";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"3707";s:4:"hash";s:10:"1704201177";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3679";s:4:"hash";s:10:"3592206582";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"4821";s:4:"hash";s:10:"4258016917";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"3511";s:4:"hash";s:10:"1430910080";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"5277";s:4:"hash";s:10:"4219458802";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"4308";s:4:"hash";s:8:"50277193";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"4278";s:4:"hash";s:10:"3275174184";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"4960";s:4:"hash";s:9:"898828164";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"4936";s:4:"hash";s:10:"3703340616";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"5099";s:4:"hash";s:8:"95753286";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"3413";s:4:"hash";s:10:"4268800742";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3597";s:4:"hash";s:10:"2062129489";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3609";s:4:"hash";s:9:"409577747";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"4700";s:4:"hash";s:9:"116661568";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"4138";s:4:"hash";s:10:"3846339276";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"3621";s:4:"hash";s:10:"3514529940";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"3644";s:4:"hash";s:9:"368737727";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"4853";s:4:"hash";s:9:"249048717";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"4157";s:4:"hash";s:10:"2895678785";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3509";s:4:"hash";s:10:"2507101749";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"3672";s:4:"hash";s:10:"1668764244";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3730";s:4:"hash";s:10:"3800432786";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"4581";s:4:"hash";s:10:"2766625135";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5038";s:4:"hash";s:10:"1058000527";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"3499";s:4:"hash";s:10:"3330889211";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"3480";s:4:"hash";s:9:"111499524";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"4664";s:4:"hash";s:10:"2458427927";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"6244";s:4:"hash";s:10:"2263341498";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3685";s:4:"hash";s:10:"4101451297";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sl.po";a:3:{s:5:"bytes";s:4:"3461";s:4:"hash";s:10:"1012822534";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"4681";s:4:"hash";s:10:"3126259145";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1844";s:4:"hash";s:10:"2543297169";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"4486";s:4:"hash";s:10:"3152759338";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"4301";s:4:"hash";s:10:"2489535021";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3916";s:4:"hash";s:10:"3240537316";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3561";s:4:"hash";s:10:"2482650842";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3463";s:4:"hash";s:10:"2381122615";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"4419";s:4:"hash";s:9:"171958798";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:35:"templates/KeywordAlbumSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"4704";s:4:"hash";s:9:"121218460";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"templates/blocks/KeywordLinks.tpl";a:3:{s:5:"bytes";s:4:"1968";s:4:"hash";s:10:"1156982747";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/blocks/blocks.inc";a:3:{s:5:"bytes";s:3:"830";s:4:"hash";s:10:"1141396741";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"test/phpunit/KeywordAlbumCallbacksTest.class";a:3:{s:5:"bytes";s:5:"19111";s:4:"hash";s:10:"2677631392";s:8:"packages";a:0:{}}s:54:"test/phpunit/KeywordAlbumSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"6076";s:4:"hash";s:9:"418487813";s:8:"packages";a:0:{}}s:35:"test/phpunit/KeywordAlbumTest.class";a:3:{s:5:"bytes";s:5:"10217";s:4:"hash";s:9:"677956898";s:8:"packages";a:0:{}}}s:11:"directories";a:84:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:9:"locale/sl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"templates/blocks";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16476";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/linkitem-1.1.2.1-16666.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/linkitem-1.1.2.1-16666.descriptor new file mode 100644 index 0000000..706e397 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/linkitem-1.1.2.1-16666.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:8:"linkitem";s:7:"version";s:7:"1.1.2.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Odkaz na položky";s:11:"description";s:53:"Tvorba odkazů na jiná alba nebo externí URL adresy";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Link emner";s:11:"description";s:52:"Opret links til andre albummer eller eksterne URL'er";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Element-Verweise";s:11:"description";s:66:"Erzeugt einen Verweis auf ein anderes Album, oder eine externe URL";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Elementuak Lotu";s:11:"description";s:47:"Beste album edo kanpoko URL-etara loturak sortu";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"Liens";s:11:"description";s:52:"Créer des liens vers des albums ou des URL externes";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:29:"Σύνδεση Αρχείων";s:11:"description";s:115:"Δημιουργία συνδέσμων σε άλλα άλμπουμ ή εξωτερικές διευθύνσεις";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Oggetti Link";s:11:"description";s:40:"Crea link ad altri album o a url esterni";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Elementų nuorodos";s:11:"description";s:57:"Sukurti nuorodas į kitus albumus arba į išorinius URL.";s:10:"groupLabel";s:11:"Vaizdavimas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:58:"Linkeket készít más albumokra, vagy külső webcímekre";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:50:"Maak links naar andere albums of naar externe URLs";s:10:"groupLabel";s:9:"Weergeven";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Linki";s:11:"description";s:62:"Tworzy linki do innego albumu lub do zewnętrzych adresów URL";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Leaga articole";s:11:"description";s:54:"Creeaza legaturi catre alte albume sau URL-uri externe";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Prikaz";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Objekti-veze";s:11:"description";s:56:"Pravljenje veza ka drugim albumima ili spoljnim adresama";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Länka objekt";s:11:"description";s:49:"Skapa länk till anndra album eller externa URLer";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:64:"Diğer albümlere yada dış kaynaklı url'lere bağlantı yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Ссылки на элементы";s:11:"description";s:99:"Создает ссылки на другие альбомы или внешние адреса url";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"链接项目";s:11:"description";s:48:"产生指到其他相簿或外部网址的链接";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"鏈接項目";s:11:"description";s:48:"產生指到其他相簿或外部網址的鏈接";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:62:"사진첩또는 확장된 주소등에 연결을 만듭니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:101:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1258";s:4:"hash";s:9:"562486083";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"ItemAddLinkItem.inc";a:3:{s:5:"bytes";s:4:"8126";s:4:"hash";s:10:"1446560054";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"LinkItemOption.inc";a:3:{s:5:"bytes";s:4:"2529";s:4:"hash";s:10:"1206993501";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"LinkItemSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"3221";s:4:"hash";s:10:"2285407062";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"classes/Entities.inc";a:3:{s:5:"bytes";s:3:"400";s:4:"hash";s:10:"3282770995";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"classes/GalleryLinkItem.class";a:3:{s:5:"bytes";s:4:"5231";s:4:"hash";s:10:"2948403242";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"5050";s:4:"hash";s:10:"1581424150";s:8:"packages";a:1:{i:0;s:4:"base";}}s:56:"classes/GalleryStorage/xml-src/A_GalleryLinkItem_1.0.xml";a:3:{s:5:"bytes";s:3:"568";s:4:"hash";s:10:"2980542609";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"classes/LinkItemToolkit.class";a:3:{s:5:"bytes";s:4:"4401";s:4:"hash";s:10:"4050126237";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/arrow.png";a:3:{s:5:"bytes";s:3:"330";s:4:"hash";s:10:"2771826340";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/link.jpg";a:3:{s:5:"bytes";s:4:"9207";s:4:"hash";s:10:"3372251726";s:8:"packages";a:1:{i:0;s:4:"base";}}s:41:"locale/af/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"778";s:4:"hash";s:10:"2984717373";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:41:"locale/ar/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"702";s:4:"hash";s:10:"1867107296";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:41:"locale/bg/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"794";s:4:"hash";s:10:"2739405514";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:41:"locale/ca/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"754";s:4:"hash";s:10:"1324573194";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:41:"locale/cs/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3733";s:4:"hash";s:10:"1662309616";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:41:"locale/da/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3558";s:4:"hash";s:9:"418408738";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:41:"locale/de/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"4277";s:4:"hash";s:10:"2464104678";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:41:"locale/el/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"5140";s:4:"hash";s:9:"402558708";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:44:"locale/en_GB/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"493";s:4:"hash";s:10:"3031269343";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:41:"locale/es/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3953";s:4:"hash";s:10:"4047003924";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:44:"locale/es_AR/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"509";s:4:"hash";s:10:"1250345541";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:44:"locale/es_MX/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"678";s:4:"hash";s:9:"167156958";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:41:"locale/et/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"629";s:4:"hash";s:10:"3851775615";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:41:"locale/eu/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1282";s:4:"hash";s:9:"304491465";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:41:"locale/fi/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"724";s:4:"hash";s:10:"1142110005";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:41:"locale/fr/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3908";s:4:"hash";s:10:"3072491047";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:41:"locale/ga/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"675";s:4:"hash";s:10:"2791062045";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:41:"locale/he/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"698";s:4:"hash";s:10:"2867778625";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:41:"locale/hu/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1269";s:4:"hash";s:10:"2901875396";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:41:"locale/it/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3649";s:4:"hash";s:10:"2525828520";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:41:"locale/ja/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1241";s:4:"hash";s:10:"3300883704";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:41:"locale/ko/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1340";s:4:"hash";s:10:"3957249569";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:41:"locale/lt/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3859";s:4:"hash";s:10:"4293077727";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:41:"locale/nl/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1195";s:4:"hash";s:10:"3841705422";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:41:"locale/no/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3752";s:4:"hash";s:10:"2586416010";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:41:"locale/pl/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"4063";s:4:"hash";s:10:"1142820909";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:41:"locale/pt/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"627";s:4:"hash";s:8:"61583609";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:44:"locale/pt_BR/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"719";s:4:"hash";s:10:"3800159427";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:41:"locale/ro/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1672";s:4:"hash";s:10:"3169474156";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:41:"locale/ru/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1753";s:4:"hash";s:10:"3180766374";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:41:"locale/sk/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"838";s:4:"hash";s:10:"2333657466";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:41:"locale/sl/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"738";s:4:"hash";s:10:"1733842580";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:41:"locale/sr/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3696";s:4:"hash";s:10:"3220391911";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:41:"locale/sv/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3616";s:4:"hash";s:10:"2204630112";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:41:"locale/tr/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1349";s:4:"hash";s:9:"114774198";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:41:"locale/uk/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"758";s:4:"hash";s:10:"1927815339";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:41:"locale/vi/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"705";s:4:"hash";s:10:"1559687752";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:44:"locale/zh_CN/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1347";s:4:"hash";s:10:"2950188552";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:44:"locale/zh_TW/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3534";s:4:"hash";s:10:"1556301406";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"5802";s:4:"hash";s:8:"19118761";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"3258";s:4:"hash";s:10:"3214912952";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3196";s:4:"hash";s:10:"2471393645";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"3441";s:4:"hash";s:10:"3145879834";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3324";s:4:"hash";s:10:"1971600963";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"4610";s:4:"hash";s:9:"249211504";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"4644";s:4:"hash";s:10:"3769020275";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"5275";s:4:"hash";s:10:"2579197107";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"6119";s:4:"hash";s:10:"1753757319";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"4362";s:4:"hash";s:10:"1367252784";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"4954";s:4:"hash";s:10:"4292264530";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"4854";s:4:"hash";s:9:"674235591";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"4934";s:4:"hash";s:10:"3211117985";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"3153";s:4:"hash";s:10:"2618745660";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3423";s:4:"hash";s:10:"1164834652";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3299";s:4:"hash";s:10:"3171408286";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"4762";s:4:"hash";s:10:"1733846072";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"3863";s:4:"hash";s:10:"3842065304";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"3235";s:4:"hash";s:9:"815694069";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"3387";s:4:"hash";s:10:"2235798218";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"4601";s:4:"hash";s:9:"327122031";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3509";s:4:"hash";s:9:"705093186";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3528";s:4:"hash";s:10:"2898863324";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"4975";s:4:"hash";s:9:"573693350";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3478";s:4:"hash";s:10:"1700937391";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"4718";s:4:"hash";s:10:"3370469963";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5040";s:4:"hash";s:10:"1680453791";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"3202";s:4:"hash";s:10:"2398728637";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"3175";s:4:"hash";s:10:"3135308589";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"3732";s:4:"hash";s:9:"228561724";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"3976";s:4:"hash";s:10:"3193533501";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3397";s:4:"hash";s:8:"67522570";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sl.po";a:3:{s:5:"bytes";s:4:"3310";s:4:"hash";s:9:"967692863";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"4551";s:4:"hash";s:9:"681536129";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1841";s:4:"hash";s:10:"2456958145";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"4518";s:4:"hash";s:9:"743390629";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3539";s:4:"hash";s:9:"251458465";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3495";s:4:"hash";s:10:"3653280144";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3196";s:4:"hash";s:10:"2317360461";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3397";s:4:"hash";s:9:"299557905";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"4373";s:4:"hash";s:10:"2420776412";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:29:"templates/ItemAddLinkItem.tpl";a:3:{s:5:"bytes";s:4:"2000";s:4:"hash";s:10:"3168698319";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"templates/LinkItemOption.tpl";a:3:{s:5:"bytes";s:3:"633";s:4:"hash";s:10:"3696569324";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"templates/LinkItemSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"3099";s:4:"hash";s:10:"2428580714";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"test/phpunit/ItemAddLinkItemTest.class";a:3:{s:5:"bytes";s:4:"8648";s:4:"hash";s:9:"498728000";s:8:"packages";a:0:{}}s:37:"test/phpunit/LinkItemOptionTest.class";a:3:{s:5:"bytes";s:4:"3155";s:4:"hash";s:10:"1925314080";s:8:"packages";a:0:{}}s:50:"test/phpunit/LinkItemSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"2625";s:4:"hash";s:10:"1621262214";s:8:"packages";a:0:{}}s:31:"test/phpunit/LinkItemTest.class";a:3:{s:5:"bytes";s:5:"10254";s:4:"hash";s:10:"4115735468";s:8:"packages";a:0:{}}}s:11:"directories";a:87:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:9:"locale/sl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16665";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16665";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16665";s:2:"de";s:5:"16040";s:2:"el";s:5:"16665";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16665";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16665";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16665";s:2:"sr";s:5:"16665";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16665";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/publishxp-1.0.7.1-16119-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/publishxp-1.0.7.1-16119-base.package new file mode 100644 index 0000000..15c88e4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/publishxp-1.0.7.1-16119-base.package @@ -0,0 +1,36 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/publishxp-1.0.7.1-16119.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/publishxp-1.0.7.1-16119.descriptor new file mode 100644 index 0000000..0d7b133 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/publishxp-1.0.7.1-16119.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:9:"publishxp";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15578";s:14:"buildTimestamp";s:5:"16119";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Publiseer XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:46:"Send fotos til 'Gallery' direkte fra Windws XP";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:25:"Mit XP veröffentlichen";s:11:"description";s:66:"Bilder direkt von Microsoft Windows zur Gallery veröffentlichen";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"XP Argitaratzea";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:61:"Publier des photos dans Gallery directement depuis Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:51:"Pubblica foto in Gallery direttamente da Windows XP";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Publikuoti XP";s:11:"description";s:54:"Publikuoti vaizdus į Galeriją tiesiai iš Windows XP";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Publiceren XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Publikacja XP";s:11:"description";s:56:"Publikuje zdjęcia do galerii bezpośrednio z Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Julkaise XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Tuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Publicera XP";s:11:"description";s:53:"Publicera bilder till Gallery direkt från Windows XP";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Yayınlama XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:40:"Опубликование через XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"XP 发布";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"發表 XP";s:11:"description";s:47:"把相片直接從 Windows XP 發表到 Gallery";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:54:"Windows XP から直接Galleryに画像を公開する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}}s:5:"files";a:85:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1335";s:4:"hash";s:10:"1593010731";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"DownloadRegistryFile.inc";a:3:{s:5:"bytes";s:4:"6761";s:4:"hash";s:10:"2376561539";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"ItemAddPublishXp.inc";a:3:{s:5:"bytes";s:4:"2060";s:4:"hash";s:10:"1925869948";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"Login.inc";a:3:{s:5:"bytes";s:4:"1487";s:4:"hash";s:10:"1558715797";s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"NewAlbum.inc";a:3:{s:5:"bytes";s:4:"4644";s:4:"hash";s:10:"1160967678";s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"Options.inc";a:3:{s:5:"bytes";s:4:"4375";s:4:"hash";s:10:"3492862698";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"PublishXpLogin.inc";a:3:{s:5:"bytes";s:4:"3975";s:4:"hash";s:10:"4152428981";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"SelectAlbum.inc";a:3:{s:5:"bytes";s:4:"4456";s:4:"hash";s:10:"2194656842";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"UploadItems.inc";a:3:{s:5:"bytes";s:4:"9324";s:4:"hash";s:10:"2833184618";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"UploadedItem.inc";a:3:{s:5:"bytes";s:4:"1731";s:4:"hash";s:10:"4090352472";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"locale/af/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5576";s:4:"hash";s:8:"56876778";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:42:"locale/ar/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2505";s:4:"hash";s:10:"1212971418";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:42:"locale/ca/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2263";s:4:"hash";s:10:"1527752249";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:42:"locale/cs/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5764";s:4:"hash";s:10:"2777628173";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:42:"locale/da/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5610";s:4:"hash";s:10:"3847949719";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:42:"locale/de/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6463";s:4:"hash";s:10:"3180446167";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:45:"locale/en_GB/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:3:"457";s:4:"hash";s:10:"1240607830";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:42:"locale/es/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6240";s:4:"hash";s:10:"1295036588";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:42:"locale/eu/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5621";s:4:"hash";s:10:"3402429614";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:42:"locale/fi/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5491";s:4:"hash";s:9:"627757696";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:42:"locale/fr/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6175";s:4:"hash";s:10:"1055490218";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:42:"locale/hu/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2134";s:4:"hash";s:10:"1103996066";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:42:"locale/it/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5917";s:4:"hash";s:10:"2638327254";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:42:"locale/ja/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"3954";s:4:"hash";s:9:"781809218";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:42:"locale/ko/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"3878";s:4:"hash";s:9:"296458081";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:42:"locale/lt/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6173";s:4:"hash";s:10:"3722580115";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:42:"locale/nl/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5764";s:4:"hash";s:10:"3831739429";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:42:"locale/no/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5953";s:4:"hash";s:10:"3798961896";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:42:"locale/pl/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6276";s:4:"hash";s:9:"345897922";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:42:"locale/ro/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2250";s:4:"hash";s:9:"149201986";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:42:"locale/ru/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"7941";s:4:"hash";s:8:"39845113";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:42:"locale/sk/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"1687";s:4:"hash";s:10:"1519354548";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:42:"locale/sr/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5573";s:4:"hash";s:10:"3923365516";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:42:"locale/sv/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6111";s:4:"hash";s:10:"1239099848";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/tr/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"3477";s:4:"hash";s:10:"1125157883";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:42:"locale/uk/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2682";s:4:"hash";s:10:"1779330328";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:42:"locale/vi/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2422";s:4:"hash";s:10:"3075885131";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:45:"locale/zh_CN/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5517";s:4:"hash";s:10:"3885609608";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:45:"locale/zh_TW/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5789";s:4:"hash";s:9:"708879907";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"2125";s:4:"hash";s:8:"71572985";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"7084";s:4:"hash";s:10:"1427865290";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"5485";s:4:"hash";s:10:"2793259470";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"5360";s:4:"hash";s:10:"1786166343";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"7205";s:4:"hash";s:10:"4174874769";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"6777";s:4:"hash";s:8:"77999152";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"7769";s:4:"hash";s:10:"1711075517";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"6734";s:4:"hash";s:10:"3047057173";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"7251";s:4:"hash";s:10:"2618367619";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"6823";s:4:"hash";s:10:"2180907443";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"6948";s:4:"hash";s:10:"2068335010";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"7135";s:4:"hash";s:10:"4056392996";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"5242";s:4:"hash";s:9:"195718069";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"6939";s:4:"hash";s:10:"3232817951";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"6132";s:4:"hash";s:10:"3124742298";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"5980";s:4:"hash";s:10:"1620287438";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"7164";s:4:"hash";s:10:"1187038457";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"7111";s:4:"hash";s:10:"1817467806";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"7038";s:4:"hash";s:9:"971930430";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"7205";s:4:"hash";s:10:"2888611280";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5289";s:4:"hash";s:9:"853090785";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"9768";s:4:"hash";s:9:"554441155";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"5134";s:4:"hash";s:10:"1149682758";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"7118";s:4:"hash";s:10:"1762784387";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"3102";s:4:"hash";s:10:"4180263015";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"7173";s:4:"hash";s:10:"3219323892";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5918";s:4:"hash";s:10:"1023495262";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"5875";s:4:"hash";s:10:"2633997461";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"5404";s:4:"hash";s:10:"1445108066";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"6900";s:4:"hash";s:10:"2099531452";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"7020";s:4:"hash";s:8:"41505947";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:34:"templates/DownloadRegistryFile.tpl";a:3:{s:5:"bytes";s:4:"1031";s:4:"hash";s:9:"156079321";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"templates/Head.tpl";a:3:{s:5:"bytes";s:4:"1952";s:4:"hash";s:10:"2086441253";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/ItemAddPublishXp.tpl";a:3:{s:5:"bytes";s:4:"2811";s:4:"hash";s:10:"2254270643";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"templates/NewAlbum.tpl";a:3:{s:5:"bytes";s:4:"4025";s:4:"hash";s:10:"1337790020";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/Options.tpl";a:3:{s:5:"bytes";s:4:"1974";s:4:"hash";s:10:"3084907713";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"templates/PublishXpLogin.tpl";a:3:{s:5:"bytes";s:4:"2067";s:4:"hash";s:10:"3853036797";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/SelectAlbum.tpl";a:3:{s:5:"bytes";s:4:"2093";s:4:"hash";s:10:"3197482729";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/UploadItems.tpl";a:3:{s:5:"bytes";s:4:"2822";s:4:"hash";s:10:"4219189280";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"test/phpunit/DownloadRegistryFileTest.class";a:3:{s:5:"bytes";s:4:"3760";s:4:"hash";s:10:"2523375641";s:8:"packages";a:0:{}}s:41:"test/phpunit/NewAlbumControllerTest.class";a:3:{s:5:"bytes";s:4:"4527";s:4:"hash";s:10:"3298484915";s:8:"packages";a:0:{}}s:40:"test/phpunit/OptionsControllerTest.class";a:3:{s:5:"bytes";s:4:"3483";s:4:"hash";s:10:"2654600399";s:8:"packages";a:0:{}}s:47:"test/phpunit/PublishXpLoginControllerTest.class";a:3:{s:5:"bytes";s:4:"3175";s:4:"hash";s:10:"2822466520";s:8:"packages";a:0:{}}s:44:"test/phpunit/SelectAlbumControllerTest.class";a:3:{s:5:"bytes";s:4:"2656";s:4:"hash";s:10:"1162816234";s:8:"packages";a:0:{}}s:44:"test/phpunit/UploadItemsControllerTest.class";a:3:{s:5:"bytes";s:4:"8676";s:4:"hash";s:10:"3854719536";s:8:"packages";a:0:{}}}s:11:"directories";a:63:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15578;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/rewrite-1.1.13.2-16559-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/rewrite-1.1.13.2-16559-base.package new file mode 100644 index 0000000..9af0af9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/rewrite-1.1.13.2-16559-base.package @@ -0,0 +1,93 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/rewrite-1.1.13.2-16559.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/rewrite-1.1.13.2-16559.descriptor new file mode 100644 index 0000000..3a37106 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/rewrite-1.1.13.2-16559.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"rewrite";s:7:"version";s:8:"1.1.13.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15945";s:14:"buildTimestamp";s:5:"16559";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"URL Herskryf";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Přepis URL";s:11:"description";s:78:"Aktivuje krátká URL pomocí Apache mod_rewrite, ISAPI Rewrite nebo PathInfo.";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:15:"URL Omskrivning";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kurze URLs";s:11:"description";s:80:"Erlaubt kurze URLs mit Hilfe von Apache mod_rewrite, ISAPI Rewrite oder PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:16:"URL Berridazketa";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Réécriture d'URL";s:11:"description";s:93:"Activer les URL courtes en utilisant le module Apache mod_rewrite, ISAPI Rewrite ou PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Riscrittura URL";s:11:"description";s:77:"Attiva le URL brevi utilizzando Apache mod_rewrite, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Krótkie adresy URL";s:11:"description";s:95:"Włącza krótkie adresy URL przy wykorzystaniu Apache mod_rewrite, ISAPI Rewrite lub PathInfo.";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Reescrever URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Prepis adresa";s:11:"description";s:87:"Omogućuje korišćenje kratkih adresa pomoću mod_rewrite, ISAPI_Rewrite ili Path Info";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:76:"Aktiverar korta URLer med Apache mod_rewrite, ISAPI Rewrite, eller PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:96:"Apache mod_rewrite, ISAPI Rewrite, ya da PathInfo kullanarak kısa URL'leri aktif duruma getirin";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Перенаправления URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"网址改写";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"網址改寫";s:11:"description";s:81:"啟動利用 Apache mod_rewrite、ISAPI Rewrite、或 PathInfo 的短式網址。";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"URL書き換え";s:11:"description";s:91:"mod_rewrite か ISAPI Rewrite か PathInfo を使って短いURLを使えるようにする";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}}s:5:"files";a:138:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"4740";s:4:"hash";s:10:"2596514745";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"AdminRewrite.inc";a:3:{s:5:"bytes";s:5:"10806";s:4:"hash";s:10:"2417279975";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"DownloadItem.inc";a:3:{s:5:"bytes";s:4:"3019";s:4:"hash";s:9:"850018523";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"FileNotFound.inc";a:3:{s:5:"bytes";s:4:"1878";s:4:"hash";s:10:"3395542683";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"RewriteModuleExtras.inc";a:3:{s:5:"bytes";s:5:"12569";s:4:"hash";s:10:"2411151223";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"SetupRewrite.inc";a:3:{s:5:"bytes";s:4:"5717";s:4:"hash";s:10:"2750371662";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:3:"717";s:4:"hash";s:10:"1135532778";s:8:"packages";a:1:{i:0;s:4:"base";}}s:51:"classes/GalleryStorage/xml-src/R_RewriteMap_1.0.xml";a:3:{s:5:"bytes";s:3:"280";s:4:"hash";s:10:"2901457058";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"classes/RewriteApi.class";a:3:{s:5:"bytes";s:4:"7964";s:4:"hash";s:10:"1268532425";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"classes/RewriteCheckConflictTask.class";a:3:{s:5:"bytes";s:4:"3965";s:4:"hash";s:10:"1557912255";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"classes/RewriteHelper.class";a:3:{s:5:"bytes";s:5:"14551";s:4:"hash";s:9:"819803452";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"classes/RewriteParser.class";a:3:{s:5:"bytes";s:4:"8625";s:4:"hash";s:10:"1267351612";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/RewriteSimpleHelper.class";a:3:{s:5:"bytes";s:4:"5040";s:4:"hash";s:10:"1284139963";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/RewriteUrlGenerator.class";a:3:{s:5:"bytes";s:4:"7456";s:4:"hash";s:9:"596771324";s:8:"packages";a:1:{i:0;s:4:"base";}}s:53:"classes/parsers/isapirewrite/IsapiRewriteHelper.class";a:3:{s:5:"bytes";s:5:"20077";s:4:"hash";s:10:"1360680031";s:8:"packages";a:1:{i:0;s:4:"base";}}s:59:"classes/parsers/isapirewrite/IsapiRewriteUrlGenerator.class";a:3:{s:5:"bytes";s:4:"3251";s:4:"hash";s:10:"3465775059";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"classes/parsers/isapirewrite/parser.inc";a:3:{s:5:"bytes";s:4:"8401";s:4:"hash";s:9:"159629566";s:8:"packages";a:1:{i:0;s:4:"base";}}s:49:"classes/parsers/modrewrite/ModRewriteHelper.class";a:3:{s:5:"bytes";s:5:"21938";s:4:"hash";s:10:"3355584072";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/parsers/modrewrite/ModRewriteUrlGenerator.class";a:3:{s:5:"bytes";s:4:"3160";s:4:"hash";s:10:"3341121990";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"classes/parsers/modrewrite/parser.inc";a:3:{s:5:"bytes";s:4:"8227";s:4:"hash";s:10:"3383861900";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"classes/parsers/pathinfo/PathInfoHelper.class";a:3:{s:5:"bytes";s:4:"5407";s:4:"hash";s:10:"1964351315";s:8:"packages";a:1:{i:0;s:4:"base";}}s:51:"classes/parsers/pathinfo/PathInfoUrlGenerator.class";a:3:{s:5:"bytes";s:4:"7499";s:4:"hash";s:10:"3429584984";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"classes/parsers/pathinfo/parser.inc";a:3:{s:5:"bytes";s:4:"2969";s:4:"hash";s:10:"2019410490";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"data/isapi_rewrite/Rewrite.txt";a:3:{s:5:"bytes";s:2:"21";s:4:"hash";s:10:"3441905064";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"data/isapi_rewrite/Works.txt";a:3:{s:5:"bytes";s:2:"18";s:4:"hash";s:10:"2699422569";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"data/mod_rewrite/custom/.htaccess";a:3:{s:5:"bytes";s:3:"285";s:4:"hash";s:9:"686534986";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite/custom/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"data/mod_rewrite/custom/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"data/mod_rewrite/gallery/.htaccess";a:3:{s:5:"bytes";s:3:"183";s:4:"hash";s:10:"3845462014";s:8:"packages";a:1:{i:0;s:4:"base";}}s:36:"data/mod_rewrite/gallery/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"data/mod_rewrite/gallery/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite/gallery2/.htaccess";a:3:{s:5:"bytes";s:3:"186";s:4:"hash";s:10:"1868455283";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"data/mod_rewrite/gallery2/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite/gallery2/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"data/mod_rewrite_no_options/custom/.htaccess";a:3:{s:5:"bytes";s:3:"272";s:4:"hash";s:10:"2187990769";s:8:"packages";a:1:{i:0;s:4:"base";}}s:46:"data/mod_rewrite_no_options/custom/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"data/mod_rewrite_no_options/custom/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"data/mod_rewrite_no_options/gallery/.htaccess";a:3:{s:5:"bytes";s:3:"170";s:4:"hash";s:10:"2916859382";s:8:"packages";a:1:{i:0;s:4:"base";}}s:47:"data/mod_rewrite_no_options/gallery/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"data/mod_rewrite_no_options/gallery/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:46:"data/mod_rewrite_no_options/gallery2/.htaccess";a:3:{s:5:"bytes";s:3:"172";s:4:"hash";s:10:"3024768581";s:8:"packages";a:1:{i:0;s:4:"base";}}s:48:"data/mod_rewrite_no_options/gallery2/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:46:"data/mod_rewrite_no_options/gallery2/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"data/path_info/index.php";a:3:{s:5:"bytes";s:4:"1179";s:4:"hash";s:10:"3698470196";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/af/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"6162";s:4:"hash";s:10:"1925464369";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:40:"locale/ar/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"987";s:4:"hash";s:10:"1560898132";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:40:"locale/ca/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"911";s:4:"hash";s:9:"768217155";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:40:"locale/cs/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15940";s:4:"hash";s:10:"3398143257";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/da/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"12694";s:4:"hash";s:9:"462078293";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:40:"locale/de/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16790";s:4:"hash";s:10:"1594939694";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:43:"locale/en_GB/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"929";s:4:"hash";s:10:"3529398826";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16361";s:4:"hash";s:10:"3109575847";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:40:"locale/eu/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"14548";s:4:"hash";s:10:"1527731364";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fi/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1002";s:4:"hash";s:10:"3107016603";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16588";s:4:"hash";s:10:"4218924054";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/hu/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"969";s:4:"hash";s:10:"3176219312";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:40:"locale/it/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15705";s:4:"hash";s:10:"3217646109";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"11839";s:4:"hash";s:10:"2040562247";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/ko/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"7505";s:4:"hash";s:10:"2113012283";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:40:"locale/lt/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1079";s:4:"hash";s:10:"2204091161";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:40:"locale/nl/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"14072";s:4:"hash";s:10:"4151886574";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15490";s:4:"hash";s:9:"995140722";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16377";s:4:"hash";s:10:"3577742333";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:43:"locale/pt_BR/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"6190";s:4:"hash";s:9:"666869208";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:40:"locale/ro/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"992";s:4:"hash";s:10:"3039505141";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:40:"locale/ru/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"19706";s:4:"hash";s:10:"1149509786";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sk/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1045";s:4:"hash";s:10:"3032897563";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:40:"locale/sr/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15878";s:4:"hash";s:9:"965645305";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:40:"locale/sv/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15550";s:4:"hash";s:10:"4277132835";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"5539";s:4:"hash";s:10:"3499092403";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:40:"locale/uk/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1022";s:4:"hash";s:10:"3618557443";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:40:"locale/vi/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"969";s:4:"hash";s:9:"594132818";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"13554";s:4:"hash";s:9:"248119491";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"14906";s:4:"hash";s:10:"3859654684";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:5:"10466";s:4:"hash";s:9:"642226040";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:5:"18803";s:4:"hash";s:10:"4142318790";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:5:"10129";s:4:"hash";s:10:"3971898886";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:5:"10198";s:4:"hash";s:10:"1366894478";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:5:"21707";s:4:"hash";s:10:"2179062023";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:5:"15546";s:4:"hash";s:9:"100911806";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:5:"17912";s:4:"hash";s:10:"4020998651";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:5:"15780";s:4:"hash";s:10:"2474859056";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:5:"17257";s:4:"hash";s:10:"2382530924";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:5:"16559";s:4:"hash";s:10:"1282474863";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:5:"10297";s:4:"hash";s:10:"2645528086";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:5:"17491";s:4:"hash";s:10:"2005772200";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:5:"10214";s:4:"hash";s:9:"871527271";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:5:"16718";s:4:"hash";s:10:"3413457523";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:5:"15824";s:4:"hash";s:10:"2860096427";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:5:"13407";s:4:"hash";s:8:"90989831";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:5:"10256";s:4:"hash";s:10:"3679674069";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:5:"16645";s:4:"hash";s:10:"3456817423";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:5:"16461";s:4:"hash";s:10:"1696085809";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:5:"17279";s:4:"hash";s:10:"2185397393";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:5:"18989";s:4:"hash";s:10:"1139680247";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:5:"10200";s:4:"hash";s:10:"2070662564";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:5:"29531";s:4:"hash";s:10:"1560354458";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:5:"10293";s:4:"hash";s:10:"4185010488";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:5:"21651";s:4:"hash";s:10:"2395758194";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"8795";s:4:"hash";s:9:"180094944";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:5:"16851";s:4:"hash";s:9:"341188472";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:5:"12638";s:4:"hash";s:10:"3491844071";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:5:"10421";s:4:"hash";s:9:"995891082";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:5:"10142";s:4:"hash";s:10:"1530472756";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:5:"15596";s:4:"hash";s:10:"4183002084";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:5:"15681";s:4:"hash";s:10:"3547828258";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:26:"templates/AdminRewrite.tpl";a:3:{s:5:"bytes";s:4:"9575";s:4:"hash";s:10:"1858764699";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/DownloadItem.tpl";a:3:{s:5:"bytes";s:3:"626";s:4:"hash";s:10:"2997879901";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/FileNotFound.tpl";a:3:{s:5:"bytes";s:3:"382";s:4:"hash";s:10:"2827047125";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"templates/Htaccess.tpl";a:3:{s:5:"bytes";s:4:"1234";s:4:"hash";s:9:"323023967";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"templates/Httpdini.tpl";a:3:{s:5:"bytes";s:4:"1041";s:4:"hash";s:10:"2681255387";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"templates/IsapiRewriteAdminParser.tpl";a:3:{s:5:"bytes";s:4:"1458";s:4:"hash";s:10:"2819608120";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"templates/IsapiRewriteTestResults.tpl";a:3:{s:5:"bytes";s:4:"3661";s:4:"hash";s:9:"552384875";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"templates/ModRewriteAdminParser.tpl";a:3:{s:5:"bytes";s:4:"1157";s:4:"hash";s:10:"2525476746";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"templates/ModRewriteTestResults.tpl";a:3:{s:5:"bytes";s:4:"7999";s:4:"hash";s:10:"3133568822";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"templates/PathInfoTestResults.tpl";a:3:{s:5:"bytes";s:4:"1978";s:4:"hash";s:10:"2509325668";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/SetupRewrite.tpl";a:3:{s:5:"bytes";s:4:"3978";s:4:"hash";s:10:"1822960147";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"test/phpunit/AdminRewriteControllerTest.class";a:3:{s:5:"bytes";s:5:"22360";s:4:"hash";s:10:"4264625474";s:8:"packages";a:0:{}}s:41:"test/phpunit/IsapiRewriteHelperTest.class";a:3:{s:5:"bytes";s:5:"10077";s:4:"hash";s:10:"4053527576";s:8:"packages";a:0:{}}s:41:"test/phpunit/IsapiRewriteParserTest.class";a:3:{s:5:"bytes";s:5:"14475";s:4:"hash";s:10:"2130632061";s:8:"packages";a:0:{}}s:47:"test/phpunit/IsapiRewriteUrlGeneratorTest.class";a:3:{s:5:"bytes";s:4:"2951";s:4:"hash";s:9:"789257845";s:8:"packages";a:0:{}}s:39:"test/phpunit/ModRewriteHelperTest.class";a:3:{s:5:"bytes";s:5:"14553";s:4:"hash";s:10:"4146869790";s:8:"packages";a:0:{}}s:39:"test/phpunit/ModRewriteParserTest.class";a:3:{s:5:"bytes";s:5:"15749";s:4:"hash";s:10:"3407596657";s:8:"packages";a:0:{}}s:45:"test/phpunit/ModRewriteUrlGeneratorTest.class";a:3:{s:5:"bytes";s:4:"4267";s:4:"hash";s:10:"1426735905";s:8:"packages";a:0:{}}s:37:"test/phpunit/PathInfoHelperTest.class";a:3:{s:5:"bytes";s:4:"5912";s:4:"hash";s:10:"3712570510";s:8:"packages";a:0:{}}s:37:"test/phpunit/PathInfoParserTest.class";a:3:{s:5:"bytes";s:4:"2972";s:4:"hash";s:10:"2661369311";s:8:"packages";a:0:{}}s:43:"test/phpunit/PathInfoUrlGeneratorTest.class";a:3:{s:5:"bytes";s:5:"35643";s:4:"hash";s:10:"2828927395";s:8:"packages";a:0:{}}s:33:"test/phpunit/RewriteApiTest.class";a:3:{s:5:"bytes";s:5:"13012";s:4:"hash";s:10:"2734417504";s:8:"packages";a:0:{}}s:36:"test/phpunit/RewriteHelperTest.class";a:3:{s:5:"bytes";s:5:"26890";s:4:"hash";s:10:"2972719967";s:8:"packages";a:0:{}}s:36:"test/phpunit/RewriteModuleTest.class";a:3:{s:5:"bytes";s:5:"12288";s:4:"hash";s:10:"3731240133";s:8:"packages";a:0:{}}s:40:"test/phpunit/RewriteParserTestCase.class";a:3:{s:5:"bytes";s:5:"19789";s:4:"hash";s:10:"3249037017";s:8:"packages";a:0:{}}s:42:"test/phpunit/RewriteSimpleHelperTest.class";a:3:{s:5:"bytes";s:4:"6055";s:4:"hash";s:9:"232213593";s:8:"packages";a:0:{}}s:42:"test/phpunit/RewriteUrlGeneratorTest.class";a:3:{s:5:"bytes";s:4:"3887";s:4:"hash";s:10:"3243148584";s:8:"packages";a:0:{}}s:46:"test/phpunit/RewriteUrlGeneratorTestCase.class";a:3:{s:5:"bytes";s:5:"49816";s:4:"hash";s:10:"3958259784";s:8:"packages";a:0:{}}s:45:"test/phpunit/SetupRewriteControllerTest.class";a:3:{s:5:"bytes";s:4:"8208";s:4:"hash";s:10:"2436813616";s:8:"packages";a:0:{}}}s:11:"directories";a:83:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/parsers/isapirewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"classes/parsers";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"classes/parsers/modrewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"classes/parsers/pathinfo";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"data/isapi_rewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:4:"data";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"data/mod_rewrite/custom";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"data/mod_rewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"data/mod_rewrite/gallery";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"data/mod_rewrite/gallery2";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"data/mod_rewrite_no_options/custom";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"data/mod_rewrite_no_options";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite_no_options/gallery";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:36:"data/mod_rewrite_no_options/gallery2";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"data/path_info";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15945;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16550";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16550";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16550";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16550";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/shutterfly-1.0.7.1-16666.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/shutterfly-1.0.7.1-16666.descriptor new file mode 100644 index 0000000..d53112c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/shutterfly-1.0.7.1-16666.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:10:"shutterfly";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly Foto Afdruk Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:37:"Modul tisku fotografií na Shutterfly";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:33:"Shutterfly foto-udskrivningsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:27:"Shutterfly Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:37:"Shutterfly Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:26:"Impressions via Shutterfly";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:36:"Modulo di Stampa Foto con Shutterfly";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:28:"Moduł drukowania Shutterfly";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:52:"Modul za izradu fotografija preko Shutterfly servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:34:"Shutterfly kuvien tulostus moduuli";s:10:"groupLabel";s:11:"Kaupallinen";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:30:"Shutterfly foto utskriftsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:31:"Shutterfly Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:66:"Модуль печати фотографий на Shutterfly.com";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:28:"Shutterfly照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:30:"Shutterfly Photo 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:50:"Shutterfly Photo 画像プリントモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:5:"files";a:53:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"366";s:4:"hash";s:10:"3253592346";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"PrintPhotos.inc";a:3:{s:5:"bytes";s:4:"6787";s:4:"hash";s:10:"1500661381";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/ShutterflyCartPlugin.class";a:3:{s:5:"bytes";s:4:"2082";s:4:"hash";s:10:"3148012052";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"locale/af/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"721";s:4:"hash";s:10:"4137365090";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:43:"locale/cs/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"886";s:4:"hash";s:10:"3336451554";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:43:"locale/da/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"722";s:4:"hash";s:10:"1776362304";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:43:"locale/de/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"793";s:4:"hash";s:10:"2347266850";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:46:"locale/en_GB/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"457";s:4:"hash";s:9:"405699738";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:43:"locale/es/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"813";s:4:"hash";s:10:"2290006704";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/eu/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"717";s:4:"hash";s:10:"4253229854";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:43:"locale/fi/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"847";s:4:"hash";s:10:"3020629196";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:43:"locale/fr/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"742";s:4:"hash";s:10:"3804831218";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:43:"locale/is/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"421";s:4:"hash";s:10:"2559113618";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:43:"locale/it/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"750";s:4:"hash";s:10:"1450031882";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:43:"locale/ja/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"763";s:4:"hash";s:10:"3654593710";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:43:"locale/ko/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"819";s:4:"hash";s:9:"129723486";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:43:"locale/nl/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"763";s:4:"hash";s:10:"3987191018";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:43:"locale/no/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"793";s:4:"hash";s:10:"1587586981";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:43:"locale/pl/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"851";s:4:"hash";s:10:"2605044609";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:43:"locale/ru/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"907";s:4:"hash";s:10:"1759440214";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:43:"locale/sr/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"795";s:4:"hash";s:10:"2523712830";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:43:"locale/sv/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"827";s:4:"hash";s:10:"3738142713";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:43:"locale/tr/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"788";s:4:"hash";s:9:"469920630";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:46:"locale/zh_CN/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"649";s:4:"hash";s:10:"1034308011";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:46:"locale/zh_TW/LC_MESSAGES/modules_shutterfly.mo";a:3:{s:5:"bytes";s:3:"781";s:4:"hash";s:10:"1672933735";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"4229";s:4:"hash";s:10:"3506017372";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"1700";s:4:"hash";s:8:"15213025";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"1778";s:4:"hash";s:10:"2110308253";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"1668";s:4:"hash";s:9:"153765333";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"1785";s:4:"hash";s:10:"1608077188";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"1662";s:4:"hash";s:10:"1874870876";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"1807";s:4:"hash";s:10:"2481117095";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"1597";s:4:"hash";s:10:"2889747112";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"1957";s:4:"hash";s:10:"3465613783";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"1673";s:4:"hash";s:10:"4145958873";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"1512";s:4:"hash";s:10:"3324715778";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"1626";s:4:"hash";s:10:"3469669614";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"1639";s:4:"hash";s:10:"3993029737";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"1743";s:4:"hash";s:8:"98219034";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"1727";s:4:"hash";s:10:"1307791955";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"1788";s:4:"hash";s:10:"2279626670";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"1736";s:4:"hash";s:10:"2611889567";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"1979";s:4:"hash";s:10:"4246536760";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"1675";s:4:"hash";s:10:"3904713480";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:3:"300";s:4:"hash";s:10:"1553599558";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"1707";s:4:"hash";s:9:"903565190";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"1672";s:4:"hash";s:9:"963992739";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"1732";s:4:"hash";s:10:"1530817950";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"1665";s:4:"hash";s:10:"1362724431";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:25:"templates/PrintPhotos.tpl";a:3:{s:5:"bytes";s:4:"2272";s:4:"hash";s:10:"2043612498";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"test/phpunit/ShutterflyCartPluginTest.class";a:3:{s:5:"bytes";s:4:"6680";s:4:"hash";s:10:"2735938999";s:8:"packages";a:0:{}}s:48:"test/phpunit/ShutterflyPrintPhotosViewTest.class";a:3:{s:5:"bytes";s:4:"5854";s:4:"hash";s:10:"1820050111";s:8:"packages";a:0:{}}}s:11:"directories";a:50:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:22:{s:2:"af";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16665";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbnail-1.0.9.1-16666.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbnail-1.0.9.1-16666.descriptor new file mode 100644 index 0000000..4956863 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbnail-1.0.9.1-16666.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:9:"thumbnail";s:7:"version";s:7:"1.0.9.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16666";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Duimnaelbestuurder";s:11:"description";s:39:"Stel standaardbeeld vir nie-beeld items";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Správa náhledů";s:11:"description";s:69:"Nastavení výchozích náhledů pro položky, které nejsou obrázky";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Miniature Manager";s:11:"description";s:59:"Sæt standard miniaturer for elementer der ikke er billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:23:"Vorschaubild-Verwaltung";s:11:"description";s:70:"Setzen Sie das Standardvorschaubild für Elemente, die kein Bild sind.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:23:"Argazkitxo Kudeatzailea";s:11:"description";s:64:"Ezarri irudiak ez diren elementuentzat lehenetsiriko argazkitxoa";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:25:"Gestionnaire de vignettes";s:11:"description";s:83:"Spécifier les vignettes par défaut pour les éléments qui ne sont pas des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Gestione Anteprime";s:11:"description";s:67:"Imposta anteprime predefinite per gli oggetti che non sono immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Nézőkép kezelő";s:11:"description";s:64:"Alapértelmezett előnézeti kép a nem kép típusú fájlokhoz";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:17:"Miniatuur Manager";s:11:"description";s:57:"Standaard miniaturen opgeven voor niet-afbeeldingen items";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:25:"Zarządzanie miniaturkami";s:11:"description";s:68:"Ustawia domyślną miniaturkę dla pozycji nie będących zdjęciami";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:30:"Organizatorul de thumbnail-uri";s:11:"description";s:74:"Alege dimensiunea predefinita a thumbnail-ului pentru articole non-imagine";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:31:"Upravljanje umanjenim prikazima";s:11:"description";s:71:"Podešavanje podrazumevanih umanjenih prikaza objektima koji nisu slike";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:22:"Miniatyrbildshanterare";s:11:"description";s:46:"Set förvald miniatyrbild för icke bildobjekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:21:"Thumbnail Yöneticisi";s:11:"description";s:59:"Resim olmayan ögeler için varsayılan thumbnailı belirle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:37:"Управление Макетами";s:11:"description";s:140:"Установки по умолчанию для макетов элементов, не относящихся к изображениям";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"缩略图管理器";s:11:"description";s:39:"为非图片项目设定默认缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"縮略圖管理";s:11:"description";s:39:"為非圖片項目設定預設縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"썸네일 관리자";s:11:"description";s:76:"이미지가 아닌 아이템에 대한 기본 썸네일을 설정합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:30:"サムネイルマネージャ";s:11:"description";s:72:"画像以外のアイテムのデフォルトのサムネイルを設定";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:84:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1412";s:4:"hash";s:10:"1226970391";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"CustomThumbnailOption.inc";a:3:{s:5:"bytes";s:4:"4206";s:4:"hash";s:10:"2822861495";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"ThumbnailModuleExtras.inc";a:3:{s:5:"bytes";s:5:"12322";s:4:"hash";s:10:"3477036938";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"ThumbnailSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"5423";s:4:"hash";s:10:"3339803865";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"classes/Entities.inc";a:3:{s:5:"bytes";s:3:"817";s:4:"hash";s:9:"467279930";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"5170";s:4:"hash";s:10:"1715744367";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_ThumbnailImage_1.0.xml";a:3:{s:5:"bytes";s:3:"393";s:4:"hash";s:10:"3084293411";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_ThumbnailImage_1.1.xml";a:3:{s:5:"bytes";s:3:"456";s:4:"hash";s:10:"3855592580";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"classes/ThumbnailHelper.class";a:3:{s:5:"bytes";s:5:"13758";s:4:"hash";s:10:"1667252224";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/ThumbnailImage.class";a:3:{s:5:"bytes";s:5:"14603";s:4:"hash";s:10:"4112218221";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/ThumbnailToolkit.class";a:3:{s:5:"bytes";s:4:"3313";s:4:"hash";s:9:"847933823";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"images/G2audio.jpg";a:3:{s:5:"bytes";s:5:"15472";s:4:"hash";s:10:"3650686913";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"images/G2video.jpg";a:3:{s:5:"bytes";s:5:"15777";s:4:"hash";s:10:"4287254857";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"locale/af/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3580";s:4:"hash";s:9:"462903831";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:42:"locale/ar/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"702";s:4:"hash";s:9:"902893379";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:42:"locale/ca/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1287";s:4:"hash";s:10:"3077792885";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:42:"locale/cs/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4252";s:4:"hash";s:10:"2682587346";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:42:"locale/da/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4249";s:4:"hash";s:10:"4019149847";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:42:"locale/de/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4465";s:4:"hash";s:10:"3646964523";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:45:"locale/en_GB/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"464";s:4:"hash";s:10:"2195402611";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:42:"locale/es/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4432";s:4:"hash";s:9:"864352045";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:42:"locale/eu/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3780";s:4:"hash";s:10:"3022570874";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:42:"locale/fi/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1110";s:4:"hash";s:9:"171514667";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:42:"locale/fr/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4447";s:4:"hash";s:10:"3436167736";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:42:"locale/hu/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4231";s:4:"hash";s:9:"542654308";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:42:"locale/is/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"428";s:4:"hash";s:10:"1246097933";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:42:"locale/it/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4323";s:4:"hash";s:10:"1476022782";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:42:"locale/ja/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4450";s:4:"hash";s:8:"98621584";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:42:"locale/ko/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3262";s:4:"hash";s:9:"461147828";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:42:"locale/lt/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1216";s:4:"hash";s:10:"2535772439";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:42:"locale/nl/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3885";s:4:"hash";s:10:"1985495171";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:42:"locale/no/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4214";s:4:"hash";s:10:"1085454641";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:42:"locale/pl/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4378";s:4:"hash";s:10:"2381609159";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:42:"locale/ro/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4328";s:4:"hash";s:10:"3760928416";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:42:"locale/ru/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"5237";s:4:"hash";s:9:"508257522";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:42:"locale/sk/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"826";s:4:"hash";s:10:"2477126953";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:42:"locale/sr/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4057";s:4:"hash";s:10:"3604170703";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:42:"locale/sv/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4264";s:4:"hash";s:9:"906327364";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/tr/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3992";s:4:"hash";s:10:"2896089473";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:42:"locale/uk/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"747";s:4:"hash";s:10:"4228550238";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:42:"locale/vi/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1042";s:4:"hash";s:10:"2311417646";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:45:"locale/zh_CN/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3535";s:4:"hash";s:10:"1741132519";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:45:"locale/zh_TW/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3904";s:4:"hash";s:10:"1296898076";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"5527";s:4:"hash";s:9:"644850217";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"4952";s:4:"hash";s:9:"997907639";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3510";s:4:"hash";s:10:"3071703021";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3870";s:4:"hash";s:10:"2269706698";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"5109";s:4:"hash";s:9:"254273511";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"5202";s:4:"hash";s:10:"1968439616";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"5415";s:4:"hash";s:10:"3713017026";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"4764";s:4:"hash";s:9:"901477849";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"5351";s:4:"hash";s:10:"3644625301";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"4987";s:4:"hash";s:10:"3574024112";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3803";s:4:"hash";s:10:"1505606017";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"5310";s:4:"hash";s:10:"3290359963";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"5149";s:4:"hash";s:10:"4218605935";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"3384";s:4:"hash";s:10:"4074024214";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"5150";s:4:"hash";s:10:"3152588710";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"5363";s:4:"hash";s:10:"2101555554";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"4777";s:4:"hash";s:9:"907534078";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"3847";s:4:"hash";s:10:"3229670483";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"5217";s:4:"hash";s:10:"2878864372";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"5122";s:4:"hash";s:9:"834182741";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5182";s:4:"hash";s:10:"1271194000";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5181";s:4:"hash";s:9:"313452938";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"6772";s:4:"hash";s:10:"3106054045";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3715";s:4:"hash";s:10:"3441315918";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"5232";s:4:"hash";s:10:"3387636981";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"2127";s:4:"hash";s:10:"3796407259";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"5223";s:4:"hash";s:9:"609603158";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5302";s:4:"hash";s:10:"2418706915";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3798";s:4:"hash";s:9:"740828465";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3672";s:4:"hash";s:10:"1638646600";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"4696";s:4:"hash";s:10:"2375167547";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"4734";s:4:"hash";s:10:"4005595987";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:29:"templates/CustomThumbnail.tpl";a:3:{s:5:"bytes";s:4:"1419";s:4:"hash";s:10:"1480586344";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"templates/ThumbnailSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"5365";s:4:"hash";s:10:"1573761086";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"test/phpunit/CustomThumbnailOptionTest.class";a:3:{s:5:"bytes";s:5:"17787";s:4:"hash";s:10:"3501579735";s:8:"packages";a:0:{}}s:37:"test/phpunit/ThumbnailImageTest.class";a:3:{s:5:"bytes";s:4:"5336";s:4:"hash";s:10:"2890040609";s:8:"packages";a:0:{}}s:51:"test/phpunit/ThumbnailSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"8933";s:4:"hash";s:9:"548188035";s:8:"packages";a:0:{}}s:39:"test/phpunit/ThumbnailToolkitTest.class";a:3:{s:5:"bytes";s:4:"7336";s:4:"hash";s:10:"2178818965";s:8:"packages";a:0:{}}}s:11:"directories";a:69:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16665";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16665";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16665";s:2:"fi";s:5:"16665";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16665";s:2:"lt";s:5:"16665";s:2:"nl";s:5:"16665";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16665";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16665";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16665";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16665";s:5:"zh_CN";s:5:"16665";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbpage-1.0.5-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbpage-1.0.5-16041-base.package new file mode 100644 index 0000000..701a129 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbpage-1.0.5-16041-base.package @@ -0,0 +1,25 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbpage-1.0.5-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbpage-1.0.5-16041.descriptor new file mode 100644 index 0000000..49a0f4b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/modules/thumbpage-1.0.5-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:9:"thumbpage";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Thumbnail";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Duimnaelbladsy";s:11:"description";s:67:"Kies 'n bladsy/raam van 'n multiblad lêer of film vir die duimnael";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Stránka náhledu";s:11:"description";s:68:"Výběr stránky nebo snímku pro náhled vícestránkového souboru";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Miniature side";s:11:"description";s:66:"Vælg side/ramme fra en multi-siders fil eller film til miniaturen";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:18:"Vorschaubild-Seite";s:11:"description";s:106:"Wählen Sie die Seite eines mehrseitigen Bildes oder das Einzelbild eines Films für das Vorschaubild aus.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Argazkitxo Orrialdea";s:11:"description";s:75:"Hautatu orri/markoa orri-anitzeko fitxategi edo filmetik argazkitxoarentzat";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Page vignette";s:11:"description";s:80:"Sélection d'une page ou image d'un fichier multipage ou vidéo pour la vignette";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Pagina Anteprime";s:11:"description";s:78:"Seleziona una pagina/frame da un file multipagina o un filmato per l'anteprima";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Miniatuurpagina";s:11:"description";s:80:"Selecteer een pagina/frame van een multipagina bestand of film voor de miniatuur";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Strona miniaturek";s:11:"description";s:75:"Wybierz stronę/klatkę z wielostronicowego pliku lub filmu na miniaturkę.";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:23:"Pagina cu thumbnail-uri";s:11:"description";s:85:"Selecteaza pagina/cadrul dintr-un fisier multi-pagina sau film pentru acest thumbnail";s:10:"groupLabel";s:12:"Vizualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:26:"Umanjenog prikaz sa strane";s:11:"description";s:81:"Izbor strane ili sličice za umanjen prikaz iz višestranične datoteke ili filma";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Miniatyrbildsida";s:11:"description";s:66:"Välj sida/ram från en fil med multipla sidor för miniatyrbilden";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:18:"Thumbnail Sayfası";s:11:"description";s:72:"Multisayfa dosyasından sayfa/çerceve ya da thumbnail için film seçin";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:32:"Макеты из Страниц";s:11:"description";s:180:"Выбор страницы/кадра из многостраничного файла или видеоролика для отображения в качестве макета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"缩略图页";s:11:"description";s:55:"在多页文件或电影中选择页/帧作为缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"縮略圖頁";s:11:"description";s:63:"在多頁檔案或影片中選擇一頁或一格作為縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"サムネイルページ";s:11:"description";s:126:"multipageファイルか動画から、サムネイルにするページもしくはフレームを選択してください。";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:72:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"559";s:4:"hash";s:7:"2328139";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"CantActivate.inc";a:3:{s:5:"bytes";s:4:"1285";s:4:"hash";s:10:"1106685312";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"ItemEditThumbOffset.inc";a:3:{s:5:"bytes";s:4:"5171";s:4:"hash";s:10:"1560468724";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"ItemEditThumbPage.inc";a:3:{s:5:"bytes";s:4:"5038";s:4:"hash";s:10:"2837098759";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"locale/af/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"1983";s:4:"hash";s:10:"2227464744";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:42:"locale/ar/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"729";s:4:"hash";s:10:"1761114050";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:42:"locale/ca/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"773";s:4:"hash";s:10:"3276570496";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:42:"locale/cs/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2133";s:4:"hash";s:10:"1093666016";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:42:"locale/da/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2000";s:4:"hash";s:10:"1884306348";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:42:"locale/de/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2240";s:4:"hash";s:10:"2406506539";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:45:"locale/en_GB/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"510";s:4:"hash";s:10:"2260164974";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:42:"locale/es/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2113";s:4:"hash";s:10:"3615580119";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:42:"locale/eu/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2041";s:4:"hash";s:10:"4199980756";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:42:"locale/fi/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"754";s:4:"hash";s:8:"34443267";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:42:"locale/fr/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2087";s:4:"hash";s:10:"2624283878";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:42:"locale/hu/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"684";s:4:"hash";s:10:"3618235046";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:42:"locale/is/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"425";s:4:"hash";s:9:"179373881";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:42:"locale/it/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"1994";s:4:"hash";s:10:"1976022033";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:42:"locale/ja/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2281";s:4:"hash";s:10:"3762050244";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:42:"locale/ko/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"779";s:4:"hash";s:10:"2139934575";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:42:"locale/lt/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"794";s:4:"hash";s:10:"2323527768";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:42:"locale/nl/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2002";s:4:"hash";s:9:"870049452";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:42:"locale/no/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2064";s:4:"hash";s:10:"3220518702";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:42:"locale/pl/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2089";s:4:"hash";s:10:"1007849330";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:42:"locale/ro/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"1928";s:4:"hash";s:10:"3919079052";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:42:"locale/ru/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2761";s:4:"hash";s:10:"1624630415";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:42:"locale/sk/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"844";s:4:"hash";s:10:"1649667776";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:42:"locale/sr/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2084";s:4:"hash";s:10:"3380368655";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:42:"locale/sv/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2159";s:4:"hash";s:10:"3157169027";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/tr/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"2127";s:4:"hash";s:10:"2278149288";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:42:"locale/uk/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"752";s:4:"hash";s:10:"3897939936";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:42:"locale/vi/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:3:"655";s:4:"hash";s:10:"2430667414";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:45:"locale/zh_CN/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"1950";s:4:"hash";s:10:"2524799265";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:45:"locale/zh_TW/LC_MESSAGES/modules_thumbpage.mo";a:3:{s:5:"bytes";s:4:"1967";s:4:"hash";s:10:"4271592930";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"6231";s:4:"hash";s:10:"3524545944";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"2821";s:4:"hash";s:10:"1943536026";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"2394";s:4:"hash";s:8:"97382623";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"2514";s:4:"hash";s:10:"1389570874";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"2963";s:4:"hash";s:10:"1776812213";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"2927";s:4:"hash";s:10:"1307139910";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"3227";s:4:"hash";s:10:"2317533199";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"2801";s:4:"hash";s:9:"889477163";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"3045";s:4:"hash";s:10:"3105382748";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"2862";s:4:"hash";s:10:"1317849960";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"2500";s:4:"hash";s:10:"2268572307";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"2928";s:4:"hash";s:10:"3966033231";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"2477";s:4:"hash";s:10:"1604835706";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"2218";s:4:"hash";s:10:"2285903098";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"2834";s:4:"hash";s:9:"879778126";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3101";s:4:"hash";s:10:"2483149883";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"2455";s:4:"hash";s:10:"1047651785";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"2519";s:4:"hash";s:10:"2276239262";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"2932";s:4:"hash";s:10:"1704222486";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"2997";s:4:"hash";s:10:"1479588386";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"2912";s:4:"hash";s:10:"2199910731";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"2828";s:4:"hash";s:9:"102409153";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"3713";s:4:"hash";s:9:"521473328";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"2574";s:4:"hash";s:10:"3565706852";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"2908";s:4:"hash";s:9:"339199829";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1102";s:4:"hash";s:10:"4135917962";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"3149";s:4:"hash";s:10:"3849432736";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3135";s:4:"hash";s:10:"2182175652";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"2660";s:4:"hash";s:10:"2514128645";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"2350";s:4:"hash";s:10:"4215597602";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"2771";s:4:"hash";s:10:"2378757340";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"2789";s:4:"hash";s:10:"3061433716";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:26:"templates/CantActivate.tpl";a:3:{s:5:"bytes";s:3:"856";s:4:"hash";s:9:"959497115";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/Offset.tpl";a:3:{s:5:"bytes";s:4:"1080";s:4:"hash";s:9:"669729908";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"templates/Page.tpl";a:3:{s:5:"bytes";s:3:"925";s:4:"hash";s:10:"2427389216";s:8:"packages";a:1:{i:0;s:4:"base";}}s:48:"test/phpunit/ThumbOffsetItemEditPluginTest.class";a:3:{s:5:"bytes";s:4:"4610";s:4:"hash";s:10:"1346913492";s:8:"packages";a:0:{}}s:46:"test/phpunit/ThumbPageItemEditPluginTest.class";a:3:{s:5:"bytes";s:4:"4207";s:4:"hash";s:10:"2454121387";s:8:"packages";a:0:{}}}s:11:"directories";a:65:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/carbon-1.2.3.1-16510.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/carbon-1.2.3.1-16510.descriptor new file mode 100644 index 0000000..1facaac --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/carbon-1.2.3.1-16510.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:6:"carbon";s:7:"version";s:7:"1.2.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 téma od mincel.com";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:27:"Gallery2 tema af mincel.com";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:29:"Gallery2 Motiv von mincel.com";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:36:"Thème pour Gallery 2 par mincel.com";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:35:"Gallery2 Θέμα από mincel.com";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:30:"Tema di Gallery2 by mincel.com";}s:5:"lv_LV";a:2:{s:4:"name";s:4:"Ogle";s:11:"description";s:26:"mincel.com galerija2 tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:27:"Temat galerii by mincel.com";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Ugljenik";s:11:"description";s:29:"Gallery2 izgled od mincel.com";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:36:"Gallery2 teema tekijänä mincel.com";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:30:"Gallery2 tema från mincel.com";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"vi_VN";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:40:"Gallery2 teması geliştiren mincel.com";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ru_RU";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:56:"Тема Carbon для Gallery2. Дизайн mincel.com";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:42:"mincel.com 製作的 Gallery2 佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:40:"mincel.com によるGallery2のテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}}s:5:"files";a:112:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"2201";s:4:"hash";s:10:"3697574725";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/addcomment.gif";a:3:{s:5:"bytes";s:3:"120";s:4:"hash";s:10:"3012454672";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/album.gif";a:3:{s:5:"bytes";s:2:"79";s:4:"hash";s:10:"1670959616";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/cart.gif";a:3:{s:5:"bytes";s:3:"126";s:4:"hash";s:10:"3006607762";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/close.gif";a:3:{s:5:"bytes";s:3:"128";s:4:"hash";s:9:"799973728";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/exif.gif";a:3:{s:5:"bytes";s:3:"161";s:4:"hash";s:10:"1149438373";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/first.gif";a:3:{s:5:"bytes";s:3:"126";s:4:"hash";s:10:"3310581193";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"images/hidesidebar.gif";a:3:{s:5:"bytes";s:3:"134";s:4:"hash";s:10:"2590014142";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/last.gif";a:3:{s:5:"bytes";s:3:"125";s:4:"hash";s:10:"2981543415";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/next.gif";a:3:{s:5:"bytes";s:3:"120";s:4:"hash";s:10:"4264851911";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/popup.gif";a:3:{s:5:"bytes";s:3:"132";s:4:"hash";s:10:"3102148430";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/prev.gif";a:3:{s:5:"bytes";s:3:"122";s:4:"hash";s:10:"4132103365";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/screenshot.png";a:3:{s:5:"bytes";s:5:"84797";s:4:"hash";s:10:"1062588495";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"images/showsidebar.gif";a:3:{s:5:"bytes";s:3:"133";s:4:"hash";s:9:"810548463";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"images/slideshow.gif";a:3:{s:5:"bytes";s:3:"118";s:4:"hash";s:10:"1040814411";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/table_left.gif";a:3:{s:5:"bytes";s:4:"1330";s:4:"hash";s:9:"797291551";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"images/table_left_on.gif";a:3:{s:5:"bytes";s:4:"1293";s:4:"hash";s:10:"1517146987";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"images/table_right.gif";a:3:{s:5:"bytes";s:4:"1327";s:4:"hash";s:10:"4184977618";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"images/table_right_on.gif";a:3:{s:5:"bytes";s:4:"1298";s:4:"hash";s:10:"1255736425";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"images/viewcomments.gif";a:3:{s:5:"bytes";s:3:"125";s:4:"hash";s:10:"2010951113";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"locale/af/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1236";s:4:"hash";s:10:"2669786805";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:38:"locale/ar/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1208";s:4:"hash";s:10:"1919072138";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:38:"locale/ca/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1219";s:4:"hash";s:10:"2632739288";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:38:"locale/cs/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3053";s:4:"hash";s:10:"1526364226";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:38:"locale/da/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2611";s:4:"hash";s:10:"2720257547";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:38:"locale/de/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3188";s:4:"hash";s:9:"463559004";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:38:"locale/el/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3809";s:4:"hash";s:9:"475958423";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:41:"locale/en_GB/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"443";s:4:"hash";s:10:"3575975106";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:38:"locale/es/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3090";s:4:"hash";s:9:"494993492";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:41:"locale/es_AR/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"446";s:4:"hash";s:10:"3451252036";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:41:"locale/es_MX/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"626";s:4:"hash";s:10:"1347013648";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:38:"locale/eu/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1256";s:4:"hash";s:10:"2439437926";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:38:"locale/fi/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3032";s:4:"hash";s:10:"2253262253";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:38:"locale/fr/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3178";s:4:"hash";s:10:"3992679536";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:38:"locale/ga/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"867";s:4:"hash";s:10:"1512807357";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:38:"locale/he/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1111";s:4:"hash";s:10:"4196017212";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:38:"locale/hu/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1289";s:4:"hash";s:10:"3254036642";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:38:"locale/is/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"464";s:4:"hash";s:9:"403556951";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:38:"locale/it/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3108";s:4:"hash";s:9:"989447488";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:38:"locale/ja/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2409";s:4:"hash";s:10:"2440006691";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:38:"locale/ko/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1157";s:4:"hash";s:10:"1578990557";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:38:"locale/lt/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1309";s:4:"hash";s:10:"1217701221";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:38:"locale/lv/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2771";s:4:"hash";s:9:"239383769";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:38:"locale/nl/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1242";s:4:"hash";s:9:"542786952";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:38:"locale/no/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2998";s:4:"hash";s:10:"2506632648";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:38:"locale/pl/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2979";s:4:"hash";s:10:"3695445539";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:38:"locale/pt/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"608";s:4:"hash";s:10:"4057681469";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:41:"locale/pt_BR/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1021";s:4:"hash";s:8:"57122632";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:38:"locale/ro/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1293";s:4:"hash";s:10:"2894713974";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:38:"locale/ru/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3951";s:4:"hash";s:9:"411992875";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:38:"locale/sk/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"929";s:4:"hash";s:10:"4204811332";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:38:"locale/sr/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2962";s:4:"hash";s:10:"1101614807";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:38:"locale/sv/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3015";s:4:"hash";s:10:"1370001215";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:38:"locale/tr/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"3051";s:4:"hash";s:10:"2147136388";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:38:"locale/uk/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:3:"859";s:4:"hash";s:10:"1035980249";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:38:"locale/vi/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1309";s:4:"hash";s:10:"3548235720";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:41:"locale/zh_CN/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"1007";s:4:"hash";s:10:"3028918490";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:41:"locale/zh_TW/LC_MESSAGES/themes_carbon.mo";a:3:{s:5:"bytes";s:4:"2882";s:4:"hash";s:10:"3597942145";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"3185";s:4:"hash";s:8:"98793059";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3194";s:4:"hash";s:10:"2344799799";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3258";s:4:"hash";s:10:"4186133773";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"3910";s:4:"hash";s:10:"1577821130";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"3707";s:4:"hash";s:9:"272804262";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"4213";s:4:"hash";s:10:"1278630106";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"4928";s:4:"hash";s:10:"1195133758";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"3628";s:4:"hash";s:10:"1254323759";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"4020";s:4:"hash";s:10:"4144292898";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"3928";s:4:"hash";s:10:"3067446478";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"4012";s:4:"hash";s:10:"2391130610";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3227";s:4:"hash";s:10:"2950216752";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"4016";s:4:"hash";s:10:"2574724623";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"3969";s:4:"hash";s:10:"1060768727";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"3786";s:4:"hash";s:8:"19882950";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"3165";s:4:"hash";s:10:"3061814649";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"3291";s:4:"hash";s:9:"782480669";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"2872";s:4:"hash";s:10:"3081516012";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"3928";s:4:"hash";s:10:"3689941336";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3724";s:4:"hash";s:10:"1664623637";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3243";s:4:"hash";s:9:"881900615";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"3362";s:4:"hash";s:10:"2918539816";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"3775";s:4:"hash";s:10:"1959202337";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3287";s:4:"hash";s:9:"526951492";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"3873";s:4:"hash";s:10:"1633906982";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"3876";s:4:"hash";s:9:"394382026";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"3056";s:4:"hash";s:9:"889346204";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"3131";s:4:"hash";s:10:"1611393623";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"3227";s:4:"hash";s:10:"3698581927";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"4888";s:4:"hash";s:10:"2382097124";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3278";s:4:"hash";s:9:"664829382";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"3824";s:4:"hash";s:10:"4025691213";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1621";s:4:"hash";s:10:"2669592495";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"3839";s:4:"hash";s:10:"3997210014";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3909";s:4:"hash";s:10:"3818877668";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3325";s:4:"hash";s:10:"1491957304";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3234";s:4:"hash";s:10:"4198039738";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3108";s:4:"hash";s:10:"1271584087";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"3671";s:4:"hash";s:10:"3127222337";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:19:"templates/admin.tpl";a:3:{s:5:"bytes";s:3:"359";s:4:"hash";s:10:"4284374174";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"templates/ads.tpl";a:3:{s:5:"bytes";s:3:"279";s:4:"hash";s:10:"3177546228";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/album.tpl";a:3:{s:5:"bytes";s:4:"7443";s:4:"hash";s:10:"1514990400";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/error.tpl";a:3:{s:5:"bytes";s:3:"990";s:4:"hash";s:10:"1868004229";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/module.tpl";a:3:{s:5:"bytes";s:3:"580";s:4:"hash";s:10:"1810295604";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"templates/navigator.tpl";a:3:{s:5:"bytes";s:4:"3846";s:4:"hash";s:9:"111114025";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"templates/navigatorMicroThumbs.tpl";a:3:{s:5:"bytes";s:4:"1757";s:4:"hash";s:10:"3135997955";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/photo.tpl";a:3:{s:5:"bytes";s:4:"6348";s:4:"hash";s:10:"2653129038";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/progressbar.tpl";a:3:{s:5:"bytes";s:4:"2599";s:4:"hash";s:9:"898086774";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/sidebar.tpl";a:3:{s:5:"bytes";s:4:"1167";s:4:"hash";s:10:"2789025423";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/theme.tpl";a:3:{s:5:"bytes";s:4:"4749";s:4:"hash";s:10:"1492494974";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"theme.css";a:3:{s:5:"bytes";s:5:"14444";s:4:"hash";s:10:"2315196583";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"theme.inc";a:3:{s:5:"bytes";s:4:"9970";s:4:"hash";s:9:"578785271";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"theme.js";a:3:{s:5:"bytes";s:4:"6979";s:4:"hash";s:10:"2401585437";s:8:"packages";a:1:{i:0;s:4:"base";}}}s:11:"directories";a:80:{s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}}s:9:"languages";a:1:{i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16492";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16492";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/hybrid-1.1.4.1-16510.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/hybrid-1.1.4.1-16510.descriptor new file mode 100644 index 0000000..876d3ed --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/hybrid-1.1.4.1-16510.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:6:"hybrid";s:7:"version";s:7:"1.1.4.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Hibriede";s:11:"description";s:51:"Gekombineerde dinamiese album/beeld/skyfievertoning";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombinovaný dynamický pohled album/obrázek/prezentace";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombineret og dynamisk album/billede/fremvisning visning";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombinierte dynamische Ansicht von Alben/Bildern/Diashow";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:54:"Konbinaturiko album/irudi/aurkezpen ikuspegi dinamikoa";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"Hybride";s:11:"description";s:49:"Vue dymamique combinée album / image / diaporama";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:53:"Vista dinamica combinata album/immagine/presentazione";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Hibrīda";s:11:"description";s:58:"Kombinēts albumu/attēlu/slīdrādes dinamisks skatījums";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Hybride";s:11:"description";s:58:"Gecombineerde dynamische album/afbeelding/diashow weergave";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Hybryda";s:11:"description";s:60:"Połączona dynamiczna prezentacja albumów/zdjęć/slajdów";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Hibridni";s:11:"description";s:44:"Kombinovan prikaz albuma, slike i projekcije";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"Hybridi";s:11:"description";s:52:"Yhdistetty albumi/kuva/diaesitys dynaaminen näkymä";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:51:"Kombinerad album/bild/bildspel med dynamisk visning";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"vi_VN";a:2:{s:4:"name";s:3:"Lai";s:11:"description";s:57:"Trình bày động gồm cả album/ảnh/trình chiếu";}s:5:"tr_TR";a:2:{s:4:"name";s:5:"Melez";s:11:"description";s:66:"Biraraya getir albüm/resim/slaytgösterisi dinamik görüntüleme";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Гибрид";s:11:"description";s:110:"Комбинация динамического вида альбома/фотографии/слайд-шоу";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:50:"组合动态视图:相册/图片/幻灯片放映";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:60:"結合相簿/圖片/幻燈片放映的動態顯示畫面";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:90:"アルバム/画像/スライドショー を組み合わせたダイナミックビュー";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}}s:5:"files";a:95:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1929";s:4:"hash";s:9:"576002808";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"hybrid.js";a:3:{s:5:"bytes";s:5:"19397";s:4:"hash";s:10:"2793452865";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/alb.png";a:3:{s:5:"bytes";s:3:"291";s:4:"hash";s:10:"1100119617";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/down.png";a:3:{s:5:"bytes";s:3:"295";s:4:"hash";s:10:"3276952406";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/fit.png";a:3:{s:5:"bytes";s:3:"348";s:4:"hash";s:10:"2488583742";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/full.png";a:3:{s:5:"bytes";s:3:"367";s:4:"hash";s:10:"1745942779";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/fwd.png";a:3:{s:5:"bytes";s:3:"298";s:4:"hash";s:9:"385393509";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/info.png";a:3:{s:5:"bytes";s:3:"360";s:4:"hash";s:10:"3758732936";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/left.png";a:3:{s:5:"bytes";s:3:"296";s:4:"hash";s:10:"2414822539";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/menu.png";a:3:{s:5:"bytes";s:3:"350";s:4:"hash";s:10:"1950698010";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/next-off.png";a:3:{s:5:"bytes";s:3:"295";s:4:"hash";s:10:"2294250142";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/next.png";a:3:{s:5:"bytes";s:3:"303";s:4:"hash";s:8:"65629795";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/poz.png";a:3:{s:5:"bytes";s:3:"258";s:4:"hash";s:10:"4067153868";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/prev-off.png";a:3:{s:5:"bytes";s:3:"302";s:4:"hash";s:9:"852880203";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/prev.png";a:3:{s:5:"bytes";s:3:"311";s:4:"hash";s:9:"562152296";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/rand.png";a:3:{s:5:"bytes";s:3:"331";s:4:"hash";s:10:"3054243119";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/rev.png";a:3:{s:5:"bytes";s:3:"297";s:4:"hash";s:10:"3305594486";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/right.png";a:3:{s:5:"bytes";s:3:"295";s:4:"hash";s:10:"2648542820";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/screenshot.png";a:3:{s:5:"bytes";s:6:"124058";s:4:"hash";s:10:"2474814543";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"images/up-off.png";a:3:{s:5:"bytes";s:3:"285";s:4:"hash";s:10:"1925326063";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"images/up.png";a:3:{s:5:"bytes";s:3:"293";s:4:"hash";s:10:"1160557875";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"locale/af/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"2762";s:4:"hash";s:10:"1358515450";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:38:"locale/ar/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"828";s:4:"hash";s:10:"1129508401";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:38:"locale/ca/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"874";s:4:"hash";s:10:"1492354082";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:38:"locale/cs/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4742";s:4:"hash";s:10:"3211550652";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:38:"locale/da/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4422";s:4:"hash";s:9:"172255400";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:38:"locale/de/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4605";s:4:"hash";s:10:"3864918030";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:41:"locale/en_GB/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"592";s:4:"hash";s:10:"1933148043";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:38:"locale/es/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4915";s:4:"hash";s:10:"1370921007";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:38:"locale/eu/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4498";s:4:"hash";s:10:"3890979137";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:38:"locale/fi/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4746";s:4:"hash";s:10:"2202717891";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:38:"locale/fr/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4735";s:4:"hash";s:10:"2931786342";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:38:"locale/hu/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"844";s:4:"hash";s:9:"528690824";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:38:"locale/is/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"464";s:4:"hash";s:10:"1661054733";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:38:"locale/it/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4661";s:4:"hash";s:10:"3156066793";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:38:"locale/ja/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"3707";s:4:"hash";s:10:"1563051118";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:38:"locale/ko/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"953";s:4:"hash";s:10:"2727790735";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:38:"locale/lt/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"951";s:4:"hash";s:10:"1828091355";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:38:"locale/lv/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4821";s:4:"hash";s:10:"1518594976";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:38:"locale/nl/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4608";s:4:"hash";s:10:"2281202557";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:38:"locale/no/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4453";s:4:"hash";s:10:"2668833293";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:38:"locale/pl/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4677";s:4:"hash";s:10:"1012440228";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:38:"locale/ro/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"909";s:4:"hash";s:10:"2037301791";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:38:"locale/ru/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"5863";s:4:"hash";s:10:"3818425620";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:38:"locale/sk/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"915";s:4:"hash";s:10:"4068608677";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:38:"locale/sr/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4709";s:4:"hash";s:10:"2003914508";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:38:"locale/sv/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4530";s:4:"hash";s:10:"3721160590";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:38:"locale/tr/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4737";s:4:"hash";s:10:"4245487207";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:38:"locale/uk/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:3:"847";s:4:"hash";s:10:"1354652326";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:38:"locale/vi/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"2978";s:4:"hash";s:10:"4021383215";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:41:"locale/zh_CN/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"2197";s:4:"hash";s:10:"3744291012";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:41:"locale/zh_TW/LC_MESSAGES/themes_hybrid.mo";a:3:{s:5:"bytes";s:4:"4410";s:4:"hash";s:10:"1103011251";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"4577";s:4:"hash";s:10:"3136900449";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"4045";s:4:"hash";s:10:"2486784477";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"4087";s:4:"hash";s:10:"2468369269";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"5679";s:4:"hash";s:10:"3934348852";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"5412";s:4:"hash";s:10:"1380907027";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"5766";s:4:"hash";s:10:"3317114251";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"5123";s:4:"hash";s:9:"197952741";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"5817";s:4:"hash";s:9:"797447390";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"5530";s:4:"hash";s:10:"3079966923";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"5653";s:4:"hash";s:10:"2198432763";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"5596";s:4:"hash";s:9:"200697584";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"4055";s:4:"hash";s:10:"2864965111";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"3833";s:4:"hash";s:9:"716716385";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"5587";s:4:"hash";s:10:"3055578084";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"5021";s:4:"hash";s:10:"4071529627";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"4047";s:4:"hash";s:9:"218169488";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"4120";s:4:"hash";s:10:"2412428564";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"5739";s:4:"hash";s:10:"3221898108";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"5619";s:4:"hash";s:9:"260635819";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"5376";s:4:"hash";s:10:"4174793065";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5478";s:4:"hash";s:10:"2655913164";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"4064";s:4:"hash";s:10:"2177179653";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"6933";s:4:"hash";s:10:"1750669498";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"4192";s:4:"hash";s:9:"712085441";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"5494";s:4:"hash";s:9:"125817445";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"2314";s:4:"hash";s:10:"1337003199";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"5611";s:4:"hash";s:10:"1197796688";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5630";s:4:"hash";s:9:"920492966";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"4215";s:4:"hash";s:9:"440694018";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"4776";s:4:"hash";s:10:"3808988564";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"4749";s:4:"hash";s:10:"1212829074";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"5298";s:4:"hash";s:10:"3970851015";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:20:"templates/detail.tpl";a:3:{s:5:"bytes";s:4:"1795";s:4:"hash";s:10:"2845287353";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/error.tpl";a:3:{s:5:"bytes";s:3:"990";s:4:"hash";s:10:"1868004229";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/header.tpl";a:3:{s:5:"bytes";s:4:"1904";s:4:"hash";s:10:"4164063708";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/hybrid.tpl";a:3:{s:5:"bytes";s:5:"12466";s:4:"hash";s:10:"2656927102";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/progressbar.tpl";a:3:{s:5:"bytes";s:4:"2599";s:4:"hash";s:9:"898086774";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/render.tpl";a:3:{s:5:"bytes";s:3:"628";s:4:"hash";s:10:"1648242633";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/sidebar.tpl";a:3:{s:5:"bytes";s:4:"3125";s:4:"hash";s:10:"3168845583";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/theme.tpl";a:3:{s:5:"bytes";s:4:"2781";s:4:"hash";s:9:"810902640";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"theme.css";a:3:{s:5:"bytes";s:5:"13832";s:4:"hash";s:10:"3021413080";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"theme.inc";a:3:{s:5:"bytes";s:5:"12304";s:4:"hash";s:10:"1379748097";s:8:"packages";a:1:{i:0;s:4:"base";}}}s:11:"directories";a:66:{s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}}s:9:"languages";a:1:{i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16492";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16509";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/slider-1.0.7.2-16510.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/slider-1.0.7.2-16510.descriptor new file mode 100644 index 0000000..ae48c46 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/experimental/themes/slider-1.0.7.2-16510.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:6:"slider";s:7:"version";s:7:"1.0.7.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16510";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"Skuiwer";s:11:"description";s:71:"Beeld vertoning/skyfievertoning; sub-albums/ander items nie vertoon nie";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"cs_CZ";a:2:{s:4:"name";s:17:"Kinofilm (slider)";s:11:"description";s:88:"Prohlížení obrázků a prezentace; vnořená alba a další položky nejsou zobrazeny";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:65:"Billedeviser/fremvisning; underalbummer/andre objekter vises ikke";}s:5:"de_DE";a:2:{s:4:"name";s:12:"Diaprojektor";s:11:"description";s:79:"Bildbetrachter/Diashow; Unteralben und sonstige Elemente werden nicht angezeigt";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"eu_ES";a:2:{s:4:"name";s:9:"Aurkezlea";s:11:"description";s:74:"Irudi ikustatzaile/aurkezpena; azpi-album/beste elementuak ez dira ikusiko";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:84:"Visualiseur d'image / diaporama  sous-albums et autres éléments non affichés";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:72:"Visualizzatore/presentazione immagine; sottoalbum/altro non visualizzato";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Šļūce";s:11:"description";s:67:"Attēlu skats/slīdrāde; apakšalbumi/citi vienumi netiek rādīti";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"nl_NL";a:2:{s:4:"name";s:11:"Verschuiven";s:11:"description";s:67:"Afbeelding weergave/diashow; sub-albums/andere items niet weergeven";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Slajdy";s:11:"description";s:53:"Pokaz slajdów; podalbumy i inne elementy niewidoczne";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"Trakast";s:11:"description";s:70:"Prikazuje i projektuje slike; podalbumi i drugi objekti nisu prikazani";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:66:"Kuvien katselu/diaesitys; albumeita ja muita kohteita ei näytetä";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:68:"Bildvisare/Bildspel; underliggande album och andra objekt visas inte";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"vi_VN";a:2:{s:4:"name";s:18:"Máy chiếu slide";s:11:"description";s:98:"Xem từng ảnh/trình chiếu; album con/các đối tượng khác không được hiển thị";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"Sürgü";s:11:"description";s:87:"Resim görüntüleyici/slaytgösterisi; altalbümler/diğer ögeler görüntülenemiyor";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Бегунок";s:11:"description";s:165:"Режим просмотра изображений/слайд-шоу; вложенные альбомы/другие элементы не отображаются";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:61:"图片查看/幻灯片放映; 子相册/其他项目未显示";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:69:"圖片顯示及幻燈片放映;不顯示子相簿和其他的項目";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}}s:5:"files";a:89:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1566";s:4:"hash";s:10:"2743976860";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/arrow-left.gif";a:3:{s:5:"bytes";s:3:"365";s:4:"hash";s:10:"1356648957";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"images/arrow-right.gif";a:3:{s:5:"bytes";s:3:"362";s:4:"hash";s:9:"275318514";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/fit.png";a:3:{s:5:"bytes";s:3:"348";s:4:"hash";s:10:"2488583742";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/full.png";a:3:{s:5:"bytes";s:3:"367";s:4:"hash";s:10:"1745942779";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/fwd.png";a:3:{s:5:"bytes";s:3:"298";s:4:"hash";s:9:"385393509";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/next-off.png";a:3:{s:5:"bytes";s:3:"295";s:4:"hash";s:10:"2294250142";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/next.png";a:3:{s:5:"bytes";s:3:"303";s:4:"hash";s:8:"65629795";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/poz.png";a:3:{s:5:"bytes";s:3:"258";s:4:"hash";s:10:"4067153868";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/prev-off.png";a:3:{s:5:"bytes";s:3:"302";s:4:"hash";s:9:"852880203";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/prev.png";a:3:{s:5:"bytes";s:3:"311";s:4:"hash";s:9:"562152296";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/rand.png";a:3:{s:5:"bytes";s:3:"331";s:4:"hash";s:10:"3054243119";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"images/rev.png";a:3:{s:5:"bytes";s:3:"297";s:4:"hash";s:10:"3305594486";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/screenshot.png";a:3:{s:5:"bytes";s:6:"141087";s:4:"hash";s:10:"2824504586";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/tool.png";a:3:{s:5:"bytes";s:3:"312";s:4:"hash";s:9:"993787435";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"locale/af/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"1956";s:4:"hash";s:10:"3148189707";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:38:"locale/ar/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"818";s:4:"hash";s:10:"1709652896";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:38:"locale/ca/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"792";s:4:"hash";s:9:"798177075";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:38:"locale/cs/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2208";s:4:"hash";s:10:"3110667377";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:38:"locale/da/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2111";s:4:"hash";s:10:"2002428973";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:38:"locale/de/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2176";s:4:"hash";s:10:"1660816890";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:41:"locale/en_GB/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"459";s:4:"hash";s:10:"4079241485";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:38:"locale/es/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2184";s:4:"hash";s:10:"4264126662";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:38:"locale/eu/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2201";s:4:"hash";s:10:"3031892075";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:38:"locale/fi/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2130";s:4:"hash";s:10:"1931811888";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:38:"locale/fr/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2071";s:4:"hash";s:9:"146260333";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:38:"locale/hu/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"736";s:4:"hash";s:10:"2737011502";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:38:"locale/is/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"423";s:4:"hash";s:10:"2224471145";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:38:"locale/it/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2251";s:4:"hash";s:9:"229800957";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:38:"locale/ja/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"1905";s:4:"hash";s:9:"182543325";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:38:"locale/ko/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"869";s:4:"hash";s:10:"4035142888";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:38:"locale/lt/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"865";s:4:"hash";s:10:"2707322992";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:38:"locale/lv/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2298";s:4:"hash";s:10:"3226282477";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:38:"locale/nl/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"1992";s:4:"hash";s:10:"1625959712";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:38:"locale/no/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2182";s:4:"hash";s:10:"2998607578";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:38:"locale/pl/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2262";s:4:"hash";s:10:"1269710285";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:38:"locale/ro/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"798";s:4:"hash";s:10:"1576390727";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:38:"locale/ru/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2601";s:4:"hash";s:9:"694111958";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:38:"locale/sk/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"846";s:4:"hash";s:10:"3469150986";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:38:"locale/sr/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2174";s:4:"hash";s:10:"2547689069";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:38:"locale/sv/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2247";s:4:"hash";s:9:"290015073";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:38:"locale/tr/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2255";s:4:"hash";s:10:"1027035565";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:38:"locale/uk/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:3:"763";s:4:"hash";s:10:"3457704224";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:38:"locale/vi/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2071";s:4:"hash";s:10:"2839759506";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:41:"locale/zh_CN/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"1899";s:4:"hash";s:10:"3407466667";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:41:"locale/zh_TW/LC_MESSAGES/themes_slider.mo";a:3:{s:5:"bytes";s:4:"2092";s:4:"hash";s:10:"2916023534";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"2974";s:4:"hash";s:9:"419966598";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"2589";s:4:"hash";s:9:"441633228";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"2680";s:4:"hash";s:10:"2682907732";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"3099";s:4:"hash";s:9:"157939871";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"3028";s:4:"hash";s:10:"3671349545";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"3349";s:4:"hash";s:10:"3123861955";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"2904";s:4:"hash";s:10:"1394587214";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"3158";s:4:"hash";s:10:"3999067017";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3085";s:4:"hash";s:9:"843641693";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3109";s:4:"hash";s:10:"4185523257";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"3006";s:4:"hash";s:9:"514158344";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"2663";s:4:"hash";s:10:"2183656919";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"2404";s:4:"hash";s:10:"3628669931";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"3204";s:4:"hash";s:10:"3575830225";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3019";s:4:"hash";s:10:"1178438291";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"2651";s:4:"hash";s:10:"2369834331";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"2696";s:4:"hash";s:10:"3578103971";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"3175";s:4:"hash";s:10:"3590141579";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3108";s:4:"hash";s:10:"3117364537";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"3123";s:4:"hash";s:7:"1006920";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"3047";s:4:"hash";s:10:"4294173549";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"2656";s:4:"hash";s:10:"3879849850";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"3737";s:4:"hash";s:10:"2131327120";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"2777";s:4:"hash";s:10:"1934490359";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"3060";s:4:"hash";s:9:"831171634";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1049";s:4:"hash";s:10:"1931496302";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"3284";s:4:"hash";s:9:"352709115";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3304";s:4:"hash";s:10:"2942853095";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"2798";s:4:"hash";s:9:"257801641";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3068";s:4:"hash";s:9:"758045426";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"2900";s:4:"hash";s:10:"3972811575";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"2976";s:4:"hash";s:10:"1333599383";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:9:"slider.js";a:3:{s:5:"bytes";s:5:"15337";s:4:"hash";s:10:"2251944303";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/error.tpl";a:3:{s:5:"bytes";s:3:"990";s:4:"hash";s:10:"1868004229";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/header.tpl";a:3:{s:5:"bytes";s:3:"845";s:4:"hash";s:10:"3829289532";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/progressbar.tpl";a:3:{s:5:"bytes";s:4:"2599";s:4:"hash";s:9:"898086774";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/render.tpl";a:3:{s:5:"bytes";s:3:"628";s:4:"hash";s:10:"1648242633";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/sidebar.tpl";a:3:{s:5:"bytes";s:4:"3288";s:4:"hash";s:10:"1078523306";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/slider.tpl";a:3:{s:5:"bytes";s:4:"5452";s:4:"hash";s:10:"2612691189";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"templates/theme.tpl";a:3:{s:5:"bytes";s:4:"3028";s:4:"hash";s:10:"2564564587";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"theme.css";a:3:{s:5:"bytes";s:5:"11781";s:4:"hash";s:9:"902265553";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"theme.inc";a:3:{s:5:"bytes";s:4:"8656";s:4:"hash";s:10:"3890230068";s:8:"packages";a:1:{i:0;s:4:"base";}}}s:11:"directories";a:66:{s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}}s:9:"languages";a:1:{i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16509";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/index.repository b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/index.repository new file mode 100644 index 0000000..9beafdd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/index.repository @@ -0,0 +1 @@ +a:2:{s:7:"modules";a:68:{s:7:"rewrite";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"rewrite";s:7:"version";s:8:"1.1.13.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15945";s:14:"buildTimestamp";s:5:"16558";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"URL Herskryf";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Přepis URL";s:11:"description";s:78:"Aktivuje krátká URL pomocí Apache mod_rewrite, ISAPI Rewrite nebo PathInfo.";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:15:"URL Omskrivning";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kurze URLs";s:11:"description";s:80:"Erlaubt kurze URLs mit Hilfe von Apache mod_rewrite, ISAPI Rewrite oder PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:16:"URL Berridazketa";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Réécriture d'URL";s:11:"description";s:93:"Activer les URL courtes en utilisant le module Apache mod_rewrite, ISAPI Rewrite ou PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Riscrittura URL";s:11:"description";s:77:"Attiva le URL brevi utilizzando Apache mod_rewrite, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Krótkie adresy URL";s:11:"description";s:95:"Włącza krótkie adresy URL przy wykorzystaniu Apache mod_rewrite, ISAPI Rewrite lub PathInfo.";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Reescrever URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Prepis adresa";s:11:"description";s:87:"Omogućuje korišćenje kratkih adresa pomoću mod_rewrite, ISAPI_Rewrite ili Path Info";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:76:"Aktiverar korta URLer med Apache mod_rewrite, ISAPI Rewrite, eller PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:96:"Apache mod_rewrite, ISAPI Rewrite, ya da PathInfo kullanarak kısa URL'leri aktif duruma getirin";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Перенаправления URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"网址改写";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"網址改寫";s:11:"description";s:81:"啟動利用 Apache mod_rewrite、ISAPI Rewrite、或 PathInfo 的短式網址。";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"URL書き換え";s:11:"description";s:91:"mod_rewrite か ISAPI Rewrite か PathInfo を使って短いURLを使えるようにする";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:18:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15945;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16548";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16548";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16548";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16548";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"thumbnail";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"thumbnail";s:7:"version";s:7:"1.0.9.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Duimnaelbestuurder";s:11:"description";s:39:"Stel standaardbeeld vir nie-beeld items";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Správa náhledů";s:11:"description";s:69:"Nastavení výchozích náhledů pro položky, které nejsou obrázky";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Miniature Manager";s:11:"description";s:59:"Sæt standard miniaturer for elementer der ikke er billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:23:"Vorschaubild-Verwaltung";s:11:"description";s:70:"Setzen Sie das Standardvorschaubild für Elemente, die kein Bild sind.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:23:"Argazkitxo Kudeatzailea";s:11:"description";s:64:"Ezarri irudiak ez diren elementuentzat lehenetsiriko argazkitxoa";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:25:"Gestionnaire de vignettes";s:11:"description";s:83:"Spécifier les vignettes par défaut pour les éléments qui ne sont pas des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Gestione Anteprime";s:11:"description";s:67:"Imposta anteprime predefinite per gli oggetti che non sono immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Nézőkép kezelő";s:11:"description";s:64:"Alapértelmezett előnézeti kép a nem kép típusú fájlokhoz";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:17:"Miniatuur Manager";s:11:"description";s:57:"Standaard miniaturen opgeven voor niet-afbeeldingen items";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:25:"Zarządzanie miniaturkami";s:11:"description";s:68:"Ustawia domyślną miniaturkę dla pozycji nie będących zdjęciami";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:30:"Organizatorul de thumbnail-uri";s:11:"description";s:74:"Alege dimensiunea predefinita a thumbnail-ului pentru articole non-imagine";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:31:"Upravljanje umanjenim prikazima";s:11:"description";s:71:"Podešavanje podrazumevanih umanjenih prikaza objektima koji nisu slike";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:22:"Miniatyrbildshanterare";s:11:"description";s:46:"Set förvald miniatyrbild för icke bildobjekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:21:"Thumbnail Yöneticisi";s:11:"description";s:59:"Resim olmayan ögeler için varsayılan thumbnailı belirle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:37:"Управление Макетами";s:11:"description";s:140:"Установки по умолчанию для макетов элементов, не относящихся к изображениям";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"缩略图管理器";s:11:"description";s:39:"为非图片项目设定默认缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"縮略圖管理";s:11:"description";s:39:"為非圖片項目設定預設縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"썸네일 관리자";s:11:"description";s:76:"이미지가 아닌 아이템에 대한 기본 썸네일을 설정합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:30:"サムネイルマネージャ";s:11:"description";s:72:"画像以外のアイテムのデフォルトのサムネイルを設定";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:19:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:30:{s:2:"af";s:5:"16635";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16635";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16635";s:2:"fi";s:5:"16635";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16635";s:2:"lt";s:5:"16635";s:2:"nl";s:5:"16635";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16635";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16635";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16635";s:5:"zh_CN";s:5:"16635";s:5:"zh_TW";s:5:"16040";}}}s:6:"rating";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"rating";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Hodnocení";s:11:"description";s:33:"Rozhraní pro hodnocení položek";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Vurdering";s:11:"description";s:37:"Vurderings-grænseflade for elementer";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Bewertungen";s:11:"description";s:41:"Einstellungen für die Elementbewertungen";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Calificaciones";s:11:"description";s:38:"Interfaz de Calificación de Elementos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Calificaciones";s:11:"description";s:38:"Interfaz de Calificación de Elementos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Calificaciones";s:11:"description";s:38:"Interfaz de Calificación de Elementos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Hindamine";s:11:"description";s:22:"Eseme Hindamise Liides";s:10:"groupLabel";s:13:"Ekstra Andmed";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Balorazioa";s:11:"description";s:29:"Elementu Balorazio Interfazea";s:10:"groupLabel";s:16:"Data Gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Notation";s:11:"description";s:23:"Notation des éléments";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:21:"Valutazione/Votazione";s:11:"description";s:31:"Interfaccia Valutazione Oggetto";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Vērtējums";s:11:"description";s:30:"Vienumu vērtēšanas saskarne";s:10:"groupLabel";s:13:"Papildus dati";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:14:"Extra Gegevens";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Ranking";s:11:"description";s:50:"Umożliwia prowadzenie rankingu zdjęć i albumów";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Votare";s:11:"description";s:19:"Interfata de votare";s:10:"groupLabel";s:16:"Extra informatii";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Ocena";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Ocena";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Arvostelu";s:11:"description";s:36:"Kohteiden arvostelukäyttöliittymä";s:10:"groupLabel";s:21:"Ylimääräinen tieto";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Poäng";s:11:"description";s:33:"Gränssnitt till Poängfunktionen";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Рейтинг";s:11:"description";s:54:"Інтерфейс Рейтингу Елементів";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Reyting";s:11:"description";s:22:"Öge Reyting Arayüzü";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Рейтинг";s:11:"description";s:54:"Интерфейс Рейтинга Элементов";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"评等";s:11:"description";s:18:"项目评等界面";s:10:"groupLabel";s:12:"额外资料";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"評等";s:11:"description";s:18:"項目評等界面";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"평가";s:11:"description";s:32:"아이템 평가 인터페이스";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"評価";s:11:"description";s:45:"アイテム評価のインターフェース";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:10:"דירוג";s:11:"description";s:34:"מערכת דירוג פריטים";s:10:"groupLabel";s:17:"מידע נוסף";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Rating";s:11:"description";s:21:"Item Rating Interface";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:14:{s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"register";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"register";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Registrasie";s:11:"description";s:26:"Nuwe Gebruiker Registrasie";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Registre";s:11:"description";s:22:"Registre de nou usuari";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Registrace";s:11:"description";s:30:"Registrace nových uživatelů";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Registrering";s:11:"description";s:22:"Ny bruger registrering";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:21:"Benutzerregistrierung";s:11:"description";s:21:"Benutzerregistrierung";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Registro";s:11:"description";s:25:"Registro de Nuevo Usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Registro";s:11:"description";s:25:"Registro de Nuevo Usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Registro";s:11:"description";s:25:"Registro de Nuevo Usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:15:"Registreerimine";s:11:"description";s:28:"Uue Kasutaja Registreerimine";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Harpidetza";s:11:"description";s:21:"Kide berri harpidetza";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:14:"Enregistrement";s:11:"description";s:38:"Enregistrement d'un nouvel utilisateur";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Registrazione";s:11:"description";s:26:"Registrazione Nuovo Utente";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Reģistrācija";s:11:"description";s:31:"Jauna lietotāja reģistrācija";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Registracija";s:11:"description";s:28:"Naujo vartotojo registracija";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Regisztráció";s:11:"description";s:34:"Új Felhasználó Regisztrációja";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Registratie";s:11:"description";s:29:"Registratie Nieuwe Gebruikers";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Rejestracja";s:11:"description";s:31:"Rejestracja nowego użytkownika";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Registracija";s:11:"description";s:28:"Registracija novog korisnika";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Registrering";s:11:"description";s:14:"Nyregistrering";s:10:"groupLabel";s:7:"Galleri";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Kayıt";s:11:"description";s:23:"Yeni Kullanıcı Kayıt";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:22:"Регистрация";s:11:"description";s:55:"Регистрация на Нов Потребител";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:22:"Регистрация";s:11:"description";s:60:"Регистрация Нового Пользователя";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"注册";s:11:"description";s:15:"新用户注册";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"註冊";s:11:"description";s:15:"新用戶註冊";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"등록";s:11:"description";s:33:"새 사용자 등록시킵니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"登録";s:11:"description";s:27:"新しいユーザの登録";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"הרשמה";s:11:"description";s:28:"הרשמת משתמש חדש";s:10:"groupLabel";s:10:"גלריה";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Registration";s:11:"description";s:21:"New User Registration";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:22:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:34:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"netpbm";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"netpbm";s:7:"version";s:5:"1.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:24:"NetPBM Grafische Toolkit";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:25:"Grafický nástroj NetPBM";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:24:"NetPBM grafisk værktøj";s:10:"groupLabel";s:17:"Grafikværktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:26:"NetPBM Grafik-Werkzeugsatz";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"Herramienta Gráfica NetPBM";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"Herramienta Gráfica NetPBM";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"Herramienta Gráfica NetPBM";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"NetPBM Tresna-joko grafikoa";s:10:"groupLabel";s:20:"Tresna-joko Grafikoa";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:34:"Boîte à outils graphiques NetPBM";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:41:"Εργαλειοθήκη Γραφικών";}s:5:"is_IS";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:31:"Set di Strumenti Grafici NetPBM";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"NetPGM grafikas aprīkojums";s:10:"groupLabel";s:20:"Grafikas aprīkojums";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:34:"NetPBM grafikos įrankių rinkinys";s:10:"groupLabel";s:28:"Grafikos įrankių rinkiniai";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:24:"NetPBM Grafische Toolkit";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"Pakiet graficzny NetPBM";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:31:"Caixas de ferramentas gráficas";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM grafička alatka";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:26:"NetPBM Grafiikka Työkalut";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Grafiska Verktyg";s:10:"groupLabel";s:16:"Grafiska Verktyg";}s:5:"th_TH";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:34:"Bộ công cụ đồ họa NetPBM";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:27:"NetPBM Grafik Araçtakımı";s:10:"groupLabel";s:20:"Grafik Araçtakımı";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:52:"Графические Инструменты NetPBM";s:10:"groupLabel";s:45:"Графические Инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:18:"NetPBM图形工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:19:"NetPBM 圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:43:"NetPBM グラフィックツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:40:"ערכת כלים גרפיים ל-NetPBM";s:10:"groupLabel";s:30:"ערכת כלים גרפיים";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"NetPBM";s:11:"description";s:23:"NetPBM Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:2:{i:10212;a:29:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"he";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"debug";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"debug";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:1;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Soek foute";s:11:"description";s:37:"Foutspoor en ontwikkelingshulpmiddele";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Depuració";s:11:"description";s:37:"Eines de depuració i desenvolupament";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Ladění";s:11:"description";s:31:"Ladící a vývojové nástroje";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Fejlsøgning";s:11:"description";s:37:"Fejlsøgnings- og udviklerværktøjer";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Fehlersuche";s:11:"description";s:36:"Fehlersuche- und Entwicklerwerkzeuge";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Depuración";s:11:"description";s:40:"Herramientas de Depuración y Desarrollo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Depuración";s:11:"description";s:40:"Herramientas de Depuración y Desarrollo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Depuración";s:11:"description";s:40:"Herramientas de Depuración y Desarrollo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Arazpenean";s:11:"description";s:32:"Arazpen eta Garatzaile Lanabesak";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Débuggage";s:11:"description";s:38:"Outils de développement et débuggage";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:43:"Uirlisí Dífhabhtanna/Ríomhchláraitheora";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Strumenti di Debug e Sviluppo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Lāgošana";s:11:"description";s:30:"Lāgošanas un iztrādes rīks";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Debuggen";s:11:"description";s:24:"Debug en Ontwikkel Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Debugowanie";s:11:"description";s:41:"Narzędzia deweloperskie i do debugowania";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:20:"Otklanjanje grešaka";s:11:"description";s:42:"Alati za otklanjanje grešaka i programere";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Virheenmetsästys";s:11:"description";s:37:"Virheenmetsästys ja Kehitystyökalut";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Felsökning";s:11:"description";s:37:"Felsöknings- och utvecklingsverktyg ";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Hata Ayıklama";s:11:"description";s:41:"Hata Ayıklama ve Geliştirici Araçları";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Отладка";s:11:"description";s:65:"Отладка и инструменты разработчика";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"排错";s:11:"description";s:21:"除错和开发工具";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"除蟲工具";s:11:"description";s:21:"除蟲和開發工具";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:26:"디버깅과 개발 도구";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"デバッグ";s:11:"description";s:39:"デバッグと開発者向けツール";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Debugging";s:11:"description";s:29:"Debugging and Developer Tools";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:23:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"migrate";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"migrate";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15448";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Migrasie";s:11:"description";s:39:"Migreer u Gallery 1 albums na Gallery 2";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Migrace";s:11:"description";s:40:"Migrace alb z Galerie verze 1 do verze 2";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:53:"Migrieren Sie Ihre Alben aus Gallery 1 nach Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Migración";s:11:"description";s:43:"Migra tus Álbumes de Gallery 1 a Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Migración";s:11:"description";s:43:"Migra tus Álbumes de Gallery 1 a Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Migración";s:11:"description";s:43:"Migra tus Álbumes de Gallery 1 a Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Migrazioa";s:11:"description";s:43:"Zure Gallery 1 albumak Gallery 2-ra migratu";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:64:"Migration des utilisateurs et albums de Gallery 1 vers Gallery 2";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:12:"Iompórtáil";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Migrazione";s:11:"description";s:44:"Migra i tuoi album di Gallery 1 in Gallery 2";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Migratie";s:11:"description";s:42:"Migreer uw Gallery 1 albums naar Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Migracja";s:11:"description";s:39:"Migruje albumy z Gallery 1 do Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:8:"Importar";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Migracija";s:11:"description";s:50:"Migriranje albuma iz vaše Galerije 1 u Galeriju 2";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Siirto";s:11:"description";s:41:"Siirtä Gallery 1:n albumit Gallery 2:een";s:10:"groupLabel";s:3:"Tuo";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Migrering";s:11:"description";s:43:"Migrera dina Gallery 1 album till Gallery 2";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Taşıma";s:11:"description";s:47:"Galeri 1 albümlerinizi Gallery 2'ye taşıyın";s:10:"groupLabel";s:11:"Dış Alım";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:16:"Миграция";s:11:"description";s:75:"Миграция альбомов из Галереи 1 в Галерею 2";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"迁移";s:11:"description";s:35:"迁移您的图库1相册到图库2";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"遷移";s:11:"description";s:49:"把你的 Gallery 1 相簿遷移到 Gallery 2 中";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"移行";s:11:"description";s:57:"Gallery 1 のアルバムを Gallery 2 に移行します";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Migration";s:11:"description";s:42:"Migrate your Gallery 1 albums to Gallery 2";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:20:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15448;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"cart";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"cart";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Mandjie";s:11:"description";s:20:"Winkelmandjie Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Cistella";s:11:"description";s:31:"Módul de Cistella de la Compra";s:10:"groupLabel";s:7:"Comerç";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Košík";s:11:"description";s:26:"Modul nákupního košíku";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Indkøbskurv";s:11:"description";s:13:"Indkøbsmodul";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Warenkorb";s:11:"description";s:15:"Warenkorb-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Carrito";s:11:"description";s:28:"Módulo de Carrito de Compra";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Carrito";s:11:"description";s:28:"Módulo de Carrito de Compra";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Carrito";s:11:"description";s:28:"Módulo de Carrito de Compra";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Korv";s:11:"description";s:12:"Korvi Moodul";s:10:"groupLabel";s:8:"Kommerts";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Saskia";s:11:"description";s:22:"Erosketa Saski Modulua";s:10:"groupLabel";s:12:"Merkataritza";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"Panier";s:11:"description";s:14:"Panier d'achat";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Tralaí";s:11:"description";s:31:"Modúl Tralaí Siopadóireachta";s:10:"groupLabel";s:11:"Tráchtáil";}s:5:"el_GR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Carrello";s:11:"description";s:20:"Modulo Shopping Cart";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Bevásárlőkosár";s:11:"description";s:23:"Bevásárlokosár modul";s:10:"groupLabel";s:12:"Kereskedelem";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Mandje";s:11:"description";s:19:"Winkelmandje Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Koszyk";s:11:"description";s:25:"Moduł koszyka zamówień";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:30:"Módulo de Carrinho de Compras";s:10:"groupLabel";s:9:"Comércio";}s:5:"pt_PT";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Korpa";s:11:"description";s:16:"Korpa za šoping";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Varukorg";s:11:"description";s:14:"Varukorgsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Giỏ hàng";s:11:"description";s:28:"Module Giỏ hàng đi chợ";s:10:"groupLabel";s:14:"Thương mại";}s:5:"tr_TR";a:3:{s:4:"name";s:5:"Sepet";s:11:"description";s:27:"Alışveriş Sepeti Modulü";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Количка";s:11:"description";s:45:"Модул за Пазарна Количка";s:10:"groupLabel";s:16:"Търговия";}s:5:"ru_RU";a:3:{s:4:"name";s:14:"Корзина";s:11:"description";s:169:"Модуль Корзина позволяет отобрать фотографии (например, для последующей передачи на печать)";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"购物车";s:11:"description";s:15:"购物车模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"購物車";s:11:"description";s:15:"購物車模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:23:"바구니 쇼핑 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"カート";s:11:"description";s:42:"ショッピングカートモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:4:"Cart";s:11:"description";s:20:"Shopping Cart Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:2:{i:10212;a:24:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:34:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"dcraw";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"dcraw";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:55:"Hulpmiddel vir die verwerking van beelde in RAW formaat";s:10:"groupLabel";s:20:"Grafiese Hulpmiddels";}s:5:"ca_ES";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Eines gràfiques per processar imatges en format raw";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:60:"Grafický nástroj pro zpracování obrázků v raw formátu";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:59:"Grafisk værktøj til at behandle billeder i 'raw' formatet";s:10:"groupLabel";s:17:"Grafikværktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:62:"Grafik-Werkzeugsatz um BIlder im Rohdatenformat zu verarbeiten";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:61:"Herramientas gráficas para procesar imágenes en formato raw";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:61:"Herramientas gráficas para procesar imágenes en formato raw";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:61:"Herramientas gráficas para procesar imágenes en formato raw";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:55:"Raw formatuko irudiak prozesatzeko tresna-joko grafikoa";s:10:"groupLabel";s:21:"Tresna-joko Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"DCRaw";s:11:"description";s:55:"Boîte à outils graphiques pour traiter les images RAW";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:63:"Set di strumenti grafici per processare immagini in formato raw";s:10:"groupLabel";s:17:"Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lt_LT";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:18:"Grafikos įrankiai";}s:5:"hu_HU";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:48:"Toolkit voor het verwerken van RAW afbeeldingen.";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:55:"Narzędzie graficzne do obróbki zdjęć w formacie raw";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_PT";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:70:"Instrumente grafice pentru prelucrarea imaginilor in format brut (raw)";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:46:"Grafička alatka za obradu slika u RAW formatu";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:59:"Grafisk verktygslåda för bearbetning av filer i råformat";s:10:"groupLabel";s:21:"Grafisk Verktygslåda";}s:5:"th_TH";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:72:"Bộ công cụ đồ họa để xử lý ảnh theo định dạng raw";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:65:"Raw biçimindeki resim dosyalarını işlemek için Grafik Aracı";s:10:"groupLabel";s:17:"Grafik Araçları";}s:5:"bg_BG";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:136:"Графический инструмент, позволяющий работать с изображениями в формате RAW";s:10:"groupLabel";s:45:"Графические Инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:38:"处理 RAW 格式图像的图形工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:38:"處理 RAW 格式圖像的圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:70:"RAW 形式を扱うためのグラフィックツールキットです";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:5:"Dcraw";s:11:"description";s:52:"Graphics toolkit for processing images in raw format";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:2:{i:10212;a:19:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"members";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"members";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:4:"Lede";s:11:"description";s:21:"Ledelyste en profiele";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Membres";s:11:"description";s:28:"Llistas i Perfils de Membres";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Uživ. nastavení";s:11:"description";s:29:"Seznam uživatelů a profilů";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Medlemmer";s:11:"description";s:24:"Medlemsliste og profiler";s:10:"groupLabel";s:7:"Galleri";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Mitglieder";s:11:"description";s:27:"Mitgliederliste und Profile";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Miembros";s:11:"description";s:32:"Lista y Perfiles de los Miembros";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Miembros";s:11:"description";s:29:"Listas y Perfiles de Miembros";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Miembros";s:11:"description";s:29:"Listas y Perfiles de Miembros";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Kasutajad";s:11:"description";s:32:"Kasutajate Nimekiri ja Profiilid";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Kideak";s:11:"description";s:26:"Kide Zerrenda eta Profilak";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Membres";s:11:"description";s:28:"Liste des membres et profils";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"Baill";s:11:"description";s:30:"Liosta na baill agus achoimrí";s:10:"groupLabel";s:10:"Gailearaí";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:16:"Γκαλλερύ";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Membri";s:11:"description";s:22:"Lista Membri e Profili";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Lietotāji";s:11:"description";s:30:"Lietotāju saraksts un profili";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Nariai";s:11:"description";s:29:"Narių sąrašas ir profiliai";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:5:"Tagok";s:11:"description";s:25:"Tagok listája, es adatai";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:5:"Leden";s:11:"description";s:23:"Ledenlijst en Profielen";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Użytkownicy";s:11:"description";s:30:"Lista i profile użytkowników";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:27:"Lista de Usuários e Perfis";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Galeria";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Membri";s:11:"description";s:27:"Lista de membrii si profile";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Členovia";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:8:"Galerija";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Članovi";s:11:"description";s:25:"Spisak članova i profili";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:16:"Ryhmän Jäsenet";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Medlemmar";s:11:"description";s:25:"Medlemslista och profiler";s:10:"groupLabel";s:7:"Galleri";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Учасник";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Thành viên";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Üyeler";s:11:"description";s:26:"Üye Listesi ve Profilleri";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:22:"Потребители";s:11:"description";s:62:"Списък и Профили на Потребителите";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:39:"Список пользователей";s:11:"description";s:62:"Список пользователей и их Профили";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"用户";s:11:"description";s:21:"用户列表和档案";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"會員";s:11:"description";s:21:"會員列表和檔案";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"회원";s:11:"description";s:29:"회원 목록과 개인정보";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"メンバー";s:11:"description";s:42:"メンバーリストとプロフィール";s:10:"groupLabel";s:15:"ギャラリー";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"الأعضاء";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:14:"משתמשים";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:12:"גלרייה";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Members";s:11:"description";s:25:"Members List and Profiles";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:24:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:12:"uploadapplet";a:3:{s:6:"header";a:6:{s:2:"id";s:12:"uploadapplet";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Oplaai Applet";s:11:"description";s:47:"Eenvoudig om te gebruik oplaai applet vir media";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:20:"Aplicació de Pujada";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:7:"Importa";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Applet pro upload";s:11:"description";s:41:"Jednoduše použitelný applet pro upload";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Upload-program";s:11:"description";s:30:"Nemt at benytte upload-program";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:15:"Hochlade-Applet";s:11:"description";s:73:"Dies ist ein einfach zu handhabendes Applet um Mediendateien hochzuladen.";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:23:"Üleslaadimise Programm";s:11:"description";s:48:"Kergelt kasutatav meedia üleslaadimise programm";s:10:"groupLabel";s:7:"Impordi";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Igoera Applet-a";s:11:"description";s:49:"Elementuak igotzeko erabiliera errazteko applet-a";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:26:"Applet de téléchargement";s:11:"description";s:47:"Applet de téléchargement simple d'utilisation";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:45:"Un'applet per caricare facilmente nuovi media";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:28:"Augšupielādes sīklietotne";s:11:"description";s:51:"Viegli lietojama failu augšupielādes sīklietotne";s:10:"groupLabel";s:9:"Importēt";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Įkėlimo programa";s:11:"description";s:35:"Paprasta naudoti įkėlimo programa";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:24:"Feltöltő Segédprogram";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:12:"Importálás";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:47:"Eenvoudig te gebruiken upload applet voor media";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:44:"Prosty w użyciu aplet do wysyłania plików";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:16:"Applet de upload";s:11:"description";s:41:"Applet de upload de mídia fácil de usar";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:22:"Aplicatie de incarcare";s:11:"description";s:57:"Aplicatie usor de folosit pentru incarcarea fotografiilor";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:16:"Alatka za prenos";s:11:"description";s:37:"Alatka za jednostavan prenos datoteka";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Julkaisu-Appletti";s:11:"description";s:45:"Helppokäyttöinen julkaisu-appletti medialle";s:10:"groupLabel";s:14:"Sisääntuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:19:"Uppladdnings Applet";s:11:"description";s:51:"En lättanvänd uppladdnings applet för mediafiler";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Applet Yükle";s:11:"description";s:50:"Kullanması kolay, medya için applet ile yükleme";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:21:"Через Аплет";s:11:"description";s:96:"Удобная в использовании загрузка данных через аплет";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"上传工具";s:11:"description";s:39:"用于媒体文件的易用上传工具";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"上傳小程式";s:11:"description";s:39:"上傳媒體檔案用的簡易小程式";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:45:"손쉬운 파일올리기를 제공합니다.";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"アップロードアプレット";s:11:"description";s:72:"簡単にメディアをアップロードできるアプレットです";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:22:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"hidden";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"hidden";s:7:"version";s:5:"1.0.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15352";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Skryté položky";s:11:"description";s:77:"Skrytí položek/alb pro návštěvníky, pokud nezadají přesnou URL adresu";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Skjulte Elementer";s:11:"description";s:90:"Skjul elementer-albummer for gæster indtil de direkte bliver tilgået med den rigtige URL";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Versteckte Elemente";s:11:"description";s:94:"Verstecke Elemente/Alben vor Gästen solange Sie nicht die korrekte vollständige URL benutzen";s:10:"groupLabel";s:8:"Anzeigen";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Elementos Ocultos";s:11:"description";s:105:"Ocultar elementos/álbumes a los invitados a no ser que accedan directamente a través de su correcta URL";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Elementos Ocultos";s:11:"description";s:105:"Ocultar elementos/álbumes a los invitados a no ser que accedan directamente a través de su correcta URL";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Elementos Ocultos";s:11:"description";s:105:"Ocultar elementos/álbumes a los invitados a no ser que accedan directamente a través de su correcta URL";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:23:"Ezkutatutako Elementuak";s:11:"description";s:76:"Elementu/albumak ezkutatu bezeroei zuzenean URL zehatzaren bidez sartu ezean";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Éléments cachés";s:11:"description";s:110:"Cacher des éléments et des albums de la vue des invités tant qu'ils ne sont pas accédés avec la bonne URL";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Oggetti Nascosti";s:11:"description";s:76:"Nascondi oggetti/album dai visitatori se non sono raggiunti con l'URL giusto";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"Slēptie vienumi";s:11:"description";s:76:"Slēptie vienumi/albumi viesiem līdz viesi piekļūst tiem ar korekto saiti";s:10:"groupLabel";s:9:"Atrādīt";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Rejtett elemek";s:11:"description";s:109:"Elemek/albumok elrejtése a vendég felhasználók elől, hacsak nem teljes/pontos URL-lel hivatkoznak rájuk";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Verborgen Items";s:11:"description";s:101:"Verborgen items zijn niet zichtbaar voor gast bezoekers, totdat het item rechtstreeks wordt benaderd.";s:10:"groupLabel";s:9:"Laat zien";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Ukryte pozycje";s:11:"description";s:108:"Ukrywa pozycje/albumy z pozostawioną możliwością dostępu poprzez wprowadzenie prawidłowego adresu URL.";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Ascunde articole";s:11:"description";s:97:"Ascunde articolele/albumele pina cind vizitatorii nu le acceseaza direct cu URL-ul corespunzator.";s:10:"groupLabel";s:12:"Vizualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Dolda objekt";s:11:"description";s:72:"Dölj objekt/album från gäster tills dom accessas direkt med rätt URL";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Saklı Ögeler";s:11:"description";s:91:"Ögeleri/Albümleri doğru adresle erişilene kadar ziyaretçiler için saklı duruma getir";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:31:"Скрытые Элементы";s:11:"description";s:140:"Прячет элементы/альбомы от гостей, пока они не обратятся по точному адресу URL";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"隐藏项目";s:11:"description";s:84:"在用直接指到它们的网址存取前,隐藏项目或相簿不让访客看到";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"隱藏項目";s:11:"description";s:84:"在用直接指到它們的網址存取前,隱藏項目或相簿不讓訪客看到";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:120:"손님이 아이템이나 사진첩에 곧바로 접근하는 것으로부터 아이템이나 사진첩을 숨김니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"隠されたアイテム";s:11:"description";s:114:"正しいURLで直接アクセスされるまでは、アイテムやアルバムをゲストから隠しておく";s:10:"groupLabel";s:18:"ディスプレイ";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Hidden Items";s:11:"description";s:72:"Hide items/albums from guests until directly accessed with the right URL";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:13:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15352;a:25:{s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"imageframe";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"imageframe";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Fotoraam";s:11:"description";s:19:"Trek rame om beelde";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:19:"Rámečky obrázků";s:11:"description";s:37:"Zobrazení rámečků okolo obrázků";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Billedramme";s:11:"description";s:31:"Generer rammer omkring billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Bilderrahmen";s:11:"description";s:16:"Bilder einrahmen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"IrudiMarkoa";s:11:"description";s:37:"Irudi inguruko errenderizazio markoak";s:10:"groupLabel";s:9:"Bistarazu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Encadrements";s:11:"description";s:35:"Afficher un cadre autour des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:40:"Visualizza cornici intorno alle immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Attēlu rāmis";s:11:"description";s:33:"Zīmēt rāmjus apkārt attēliem";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"VaizdoRėmas";s:11:"description";s:41:"Aplink paveikslėlius generuoti rėmelius";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Képkeret";s:11:"description";s:35:"Keret elhelyezése a képek körül";s:10:"groupLabel";s:9:"Kijelzés";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"AfbeeldingsKader";s:11:"description";s:33:"Genereer kaders rond afbeeldingen";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Ramki";s:11:"description";s:34:"Dodaje ramki do zdjęć i albumów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Cadre imagine";s:11:"description";s:25:"Afiseaza cadrele imaginii";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Okvir slike";s:11:"description";s:23:"Prikaz okvira oko slika";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"KuvaKehys";s:11:"description";s:35:"Näytä kehykset kuvien ympärillä";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Bildram";s:11:"description";s:25:"Rendera ramar runt bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"ResimÇerçevesi";s:11:"description";s:39:"Çerçeveleri resim etrafında çevrele";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Рамки Изображений";s:11:"description";s:61:"Создает рамки вокруг изображений";s:10:"groupLabel";s:22:"Отображения";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"图像边框";s:11:"description";s:24:"环绕图像渲染边框";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"圖片邊框";s:11:"description";s:27:"在圖片週圍畫上邊框";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:36:"이미지에 액자를 씌웁니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"イメージフレーム";s:11:"description";s:39:"フレームを画像の周りに描く";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"imageblock";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"imageblock";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"en_GB";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Beeldblok";s:11:"description";s:59:"Willekeurig, Mees Onlangse of Mees Besigtigde Foto of Album";s:10:"groupLabel";s:6:"Blokke";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Blocs d'imatges";s:11:"description";s:71:"Aleatori. Imatge o àlbum més recents o més visitat.";s:10:"groupLabel";s:5:"Blocs";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Blok s obrázky";s:11:"description";s:69:"Náhodná, poslední nebo nejprohlíženější fotografie nebo album";s:10:"groupLabel";s:5:"Bloky";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Billedblok";s:11:"description";s:52:"Tilfældig, nyeste eller mest viste foto eller album";s:10:"groupLabel";s:6:"Blokke";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Bilderblock";s:11:"description";s:67:"Zufällige Auswahl aus neuestem oder meistgesehenem Bild oder Album";s:10:"groupLabel";s:7:"Blöcke";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Bloque de Imagenes";s:11:"description";s:51:"Foto o Álbum Aleatorio, Más Reciente o Más Visto";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Bloque de Imagenes";s:11:"description";s:51:"Foto o Álbum Aleatorio, Más Reciente o Más Visto";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Bloque de Imagenes";s:11:"description";s:51:"Foto o Álbum Aleatorio, Más Reciente o Más Visto";s:10:"groupLabel";s:7:"Bloques";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Pildiblokk";s:11:"description";s:68:"Juhuslik, Kõige Hilisem või Kõige Rohkem Vaadatud Foto või Album";s:10:"groupLabel";s:6:"Blokid";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"Irudi Blokea";s:11:"description";s:52:"Ausazko, azkeneko edo Ikusien den Album edo Argazkia";s:10:"groupLabel";s:7:"Blokeak";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Bloc image";s:11:"description";s:61:"Photo ou album aléatoire, le plus récent, le plus consulté";s:10:"groupLabel";s:5:"Blocs";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Bloc Íomhá";s:11:"description";s:62:"Íomhá nó albam randamach, nó is mó nua, nó is mó cuarta";s:10:"groupLabel";s:6:"Blocks";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Blocco Immagine";s:11:"description";s:55:"Foto o Album Casuali, Più Recenti oppure Più Visitati";s:10:"groupLabel";s:7:"Blocchi";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Attēlu bloks";s:11:"description";s:67:"Nejaušs, Pēdējais vai Visvairāk apskatītais attēls vai albums";s:10:"groupLabel";s:5:"Bloks";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Képblokk";s:11:"description";s:73:"Véletlen, legfrissebb vagy a legtöbbször megtekintett fotó vagy album";s:10:"groupLabel";s:7:"Blokkok";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Afbeelding Blok";s:11:"description";s:56:"Willekeurig, Meest Recent of Meest Bekeken Foto of Album";s:10:"groupLabel";s:7:"Blokken";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Blok Zdjęć";s:11:"description";s:73:"Przypadkowe, najnowsze lub najczęściej wyświetlane zdjęcia lub albumy";s:10:"groupLabel";s:5:"Bloki";}s:5:"pt_BR";a:3:{s:4:"name";s:15:"Bloco de imagem";s:11:"description";s:53:"Foto ou Álbum Aleatório, Mais Recente ou Mais Visto";s:10:"groupLabel";s:6:"Blocos";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Bloc imagine";s:11:"description";s:64:"la intimplare, ultimele sau cele mai vizualizate foto sau albume";s:10:"groupLabel";s:7:"Blocuri";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Blok sa slikom";s:11:"description";s:68:"Slučajno izabrana, najnovija ili najgledanija fotografija ili album";s:10:"groupLabel";s:7:"Blokovi";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Kuvalohko";s:11:"description";s:58:"Satunnainen, Viimeisin tai Eniten Katsottu Kuva tai Albumi";s:10:"groupLabel";s:6:"Lohkot";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Bildblock";s:11:"description";s:56:"Slumpmässig, Senaste eller Mest Visade Foto eller Album";s:10:"groupLabel";s:5:"Block";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Hộp Ảnh";s:11:"description";s:75:"Ảnh/Album ngẫu nhiên, mới nhất, hoặc được xem nhiều nhất";s:10:"groupLabel";s:5:"Hộp";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Resim Bloğu";s:11:"description";s:64:"Rastgele, En Yeni ya da En Çok Görüntülenen Foto veya Albüm";s:10:"groupLabel";s:7:"Bloklar";}s:5:"bg_BG";a:3:{s:4:"name";s:34:"Блок с Изображения";s:11:"description";s:91:"Случайна, ай-нова или най-гледана снимка или албум";s:10:"groupLabel";s:14:"Блокове";}s:5:"ru_RU";a:3:{s:4:"name";s:31:"Блок Изображения";s:11:"description";s:128:"Случайные, последние или самые просматриваемые Фотография или Альбом";s:10:"groupLabel";s:10:"Блоки";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"图像功能块";s:11:"description";s:45:"随机,最近或最具人气照片或相册";s:10:"groupLabel";s:9:"内容块";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"圖片區塊";s:11:"description";s:51:"隨機,最近或觀賞數最高的照片或相簿";s:10:"groupLabel";s:6:"區塊";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:71:"무작위, 가장 최근또는 가장 많이 본 사진또는 사진첩";s:10:"groupLabel";s:6:"Blocks";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"イメージブロック";s:11:"description";s:90:"ランダム、最近の、あるいはもっとも閲覧数の多い画像やアルバム";s:10:"groupLabel";s:12:"ブロック";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}s:5:"he_IL";a:3:{s:4:"name";s:19:"בלוק תמונה";s:11:"description";s:71:"אלבום או תמונה אקראי, אחרון או הכי נצפה.";s:10:"groupLabel";s:12:"בלוקים";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Image Block";s:11:"description";s:49:"Random, Most Recent or Most Viewed Photo or Album";s:10:"groupLabel";s:6:"Blocks";}}s:9:"languages";a:2:{i:10212;a:25:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:36:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"imagemagick";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"imagemagick";s:7:"version";s:5:"1.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Imagemagick";s:11:"description";s:48:"ImageMagick / GraphicsMagick Grafiese Hulpmiddel";s:10:"groupLabel";s:20:"Grafiese Hulpmiddele";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"Grafický nástroj ImageMagick/GraphicsMagick";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:46:"ImageMagick / GraphicsMagick grafisk værktøj";s:10:"groupLabel";s:20:"Grafiske værktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:48:"ImageMagick / GraphicsMagick Grafik-Werkzeugsatz";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:51:"Herramientas Gráficas ImageMagick / GraphicsMagick";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:51:"Herramientas Gráficas ImageMagick / GraphicsMagick";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:51:"Herramientas Gráficas ImageMagick / GraphicsMagick";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:50:"ImageMagick / GraphicsMagick Tresnabarra Grafikoak";s:10:"groupLabel";s:21:"Tresnabarra Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:56:"Boîte à outils graphiques ImageMagick / GraphicsMagick";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:41:"Εργαλειοθήκη Γραφικών";}s:5:"is_IS";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:53:"Set di Strumenti Grafici ImageMagick / GraphicsMagick";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:48:"ImageMagick / GraphicMagick grafikas aprīkojums";s:10:"groupLabel";s:20:"Grafikas aprīkojums";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:57:"ImageMagick / GraphicsMagick grafinių įrankių rinkinys";s:10:"groupLabel";s:28:"Grafikos įrankių rinkiniai";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Imagemagick";s:11:"description";s:46:"ImageMagick / GraphicsMagick Grafische Toolkit";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:28:"Pakiet graficzny ImageMagick";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:58:"Caixa de ferramentas gráfica ImageMagick / GraphicsMagick";s:10:"groupLabel";s:31:"Caixas de ferramentas gráficas";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick grafička alatka";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:47:"ImageMagick / GraphicsMagick Grafiikkatyökalut";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:40:"ImageMagick grafisk verktygsuppsättning";s:10:"groupLabel";s:31:"Grafiska verktygsuppsättningar";}s:5:"th_TH";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:46:"ImageMagick / GraphicsMagick Grafik Araçları";s:10:"groupLabel";s:17:"Grafik Araçları";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:74:"Графические Инструменты ImageMagick / GraphicsMagick";s:10:"groupLabel";s:46:"Графические Инструменты ";}s:5:"zh_CN";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:38:"ImageMagick/GraphicsMagick图像工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:41:"ImageMagick / GraphicsMagick 圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:65:"ImageMagick / GraphicsMagick グラフィックツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"ImageMagick";s:11:"description";s:45:"ImageMagick / GraphicsMagick Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:2:{i:10212;a:28:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:36:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"useralbum";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"useralbum";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:16:"Gebruikersalbums";s:11:"description";s:37:"Skep 'n album vir elke nuwe gebruiker";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:23:"Àlbums d'usuaris";s:11:"description";s:39:"Crear un àlbum per a cada usuari";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Alba uživatelů";s:11:"description";s:49:"Vytvoření alba pro každého nového uživatele";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:15:"Bruger albummer";s:11:"description";s:33:"Opret et album for hver ny bruger";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Benutzeralben";s:11:"description";s:53:"Ein separates Album für jeden neuen Benutzer anlegen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Álbumes de usuarios";s:11:"description";s:39:"Crear un álbum para cada nuevo usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Álbumes de usuarios";s:11:"description";s:39:"Crear un álbum para cada nuevo usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Álbumes de usuarios";s:11:"description";s:39:"Crear un álbum para cada nuevo usuario";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:16:"Kasutaja Albumid";s:11:"description";s:32:"Loo album igale uuele kasutajale";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Erabiltzaile Albumak";s:11:"description";s:50:"Erabiltzaile berri bakoitzarentzat album bat sortu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:20:"Albums d'utilisateur";s:11:"description";s:46:"Créer un album pour chaque nouvel utilisateur";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Album degli Utenti";s:11:"description";s:35:"Crea un album per ogni nuovo utente";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Lietotāja albumi";s:11:"description";s:45:"Veidot jaunu albumu katram jaunam lietotājam";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:22:"Felhasználói albumok";s:11:"description";s:47:"Album létrehozása minden új felhasználóhoz";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"Gebruikersalbums";s:11:"description";s:41:"Maak een album voor elke nieuwe gebruiker";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:21:"Albumy użytkowników";s:11:"description";s:45:"Tworzy album dla każdego nowego użytkownika";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:23:"Albumele utilizatorilor";s:11:"description";s:46:"Creeaza un album pentru fiecare utilizator nou";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Korisnički albumi";s:11:"description";s:43:"Pravljenje albuma za svakog novog korisnika";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Användaralbum";s:11:"description";s:40:"Skapa ett album för varje ny användare";s:10:"groupLabel";s:7:"Galleri";}s:5:"th_TH";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:22:"Kullanıcı Albümleri";s:11:"description";s:39:"Her yeni kullanıcı için albüm yarat";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:39:"Потребителски Албуми";s:11:"description";s:74:"Създава на албум за всеки нов потребител";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:41:"Альбомы Пользователей";s:11:"description";s:91:"Создание альбома для каждого нового пользователя";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:24:"用户个人相册设置";s:11:"description";s:36:"为每个新用户新建个人相册";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"用戶個人相簿";s:11:"description";s:36:"為每個新用戶建立個人相簿";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"사용자 사진첩";s:11:"description";s:47:"각 새 사용자를 위한 사진첩 만들기";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"ユーザアルバム";s:11:"description";s:51:"新規ユーザそれぞれにアルバムを作成";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:25:"אלבום משתמשים";s:11:"description";s:44:"צור אלבום בשביל כל משתמש";s:10:"groupLabel";s:10:"גלריה";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"User Albums";s:11:"description";s:33:"Create an album for each new user";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:34:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"slideshow";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"slideshow";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:4;}s:15:"stringsRevision";s:5:"15945";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:15:"Skyfievertoning";s:11:"description";s:15:"Skyfievertoning";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:22:"Prezentace (slideshow)";s:11:"description";s:22:"Prezentace (slideshow)";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Fremviser";s:11:"description";s:9:"Fremviser";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Diashow";s:11:"description";s:7:"Diashow";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:13:"Presentación";s:11:"description";s:13:"Presentación";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:13:"Presentación";s:11:"description";s:13:"Presentación";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Presentación";s:11:"description";s:13:"Presentación";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Aurkezpena";s:11:"description";s:10:"Aurkezpena";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Diaporama";s:11:"description";s:9:"Diaporama";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Slīdrāde";s:11:"description";s:10:"Slīdrāde";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:20:"Skaidrių peržiūra";s:11:"description";s:20:"Skaidrių peržiūra";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Diavetítés";s:11:"description";s:12:"Diavetítés";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Diashow";s:11:"description";s:7:"Diashow";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Pokaz slajdów";s:11:"description";s:14:"Pokaz slajdów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Mostrar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:11:"Vizualizare";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:11:"Diapozitivi";s:10:"groupLabel";s:8:"Prikaži";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:11:"Diapozitivi";s:10:"groupLabel";s:8:"Prikaži";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Diaesitys";s:11:"description";s:9:"Diaesitys";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Bildspel";s:11:"description";s:8:"Bildspel";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Слайд-шоу";s:11:"description";s:17:"Слайд-шоу";s:10:"groupLabel";s:22:"Отображение";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Trình chiếu";s:11:"description";s:14:"Trình chiếu";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Slaytgösterisi";s:11:"description";s:15:"Slaytgösterisi";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Преглед";s:11:"description";s:14:"Преглед";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:17:"Слайд-шоу";s:11:"description";s:17:"Слайд-шоу";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"幻灯片放映";s:11:"description";s:15:"幻灯片放映";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"幻燈片放映";s:11:"description";s:15:"幻燈片放映";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"슬라이드 쇼";s:11:"description";s:16:"슬라이드 쇼";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"スライドショー";s:11:"description";s:21:"スライドショー";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Slideshow";s:11:"description";s:9:"Slideshow";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:26:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15945;a:35:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"mime";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"mime";s:7:"version";s:5:"1.1.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"MIME Onderhoud";s:11:"description";s:40:"Onderhou MIME tipes en lêeruitbreidings";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Manteniment MIME";s:11:"description";s:55:"Mantingues els tipus MIME i les extensions dels fitxers";s:10:"groupLabel";s:11:"Dades extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:12:"Správa MIME";s:11:"description";s:38:"Správa MIME typů a přípon souborů";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:20:"MIME Vedligeholdelse";s:11:"description";s:37:"Vedligehold MIME typer og filendelser";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:15:"MIME-Verwaltung";s:11:"description";s:38:"MIME-Typen und Dateiendungen verwalten";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Mantenimiento MIME";s:11:"description";s:57:"Mantiene los tipos MIME y las extensiones de los archivos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Mantenimiento MIME";s:11:"description";s:57:"Mantiene los tipos MIME y las extensiones de los archivos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Mantenimiento MIME";s:11:"description";s:57:"Mantiene los tipos MIME y las extensiones de los archivos";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:13:"MIME Mantenua";s:11:"description";s:43:"Mime motak eta fitxategi luzapenak mantendu";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:26:"Maintenance des types MIME";s:11:"description";s:53:"Maintenir les types MIME et les extensions de fichier";s:10:"groupLabel";s:25:"Données complémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:17:"Manutenzione MIME";s:11:"description";s:45:"Gestisce i tipi MIME e le estensioni dei file";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"MIME Onderhoud";s:11:"description";s:41:"Onderhoud MIME typen en bestandsextensies";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Obsługa MIME";s:11:"description";s:42:"Obsługa typów MIME i rozszerzeń plików";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:39:"Manutenção dos tipos MIME";s:11:"description";s:49:"Mantenha tipos MIME e extensões do arquivo";s:10:"groupLabel";s:16:"Dados adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:16:"MIME održavanje";s:11:"description";s:48:"Ažuriranje MIME tipova i datotečnih ekstenzija";s:10:"groupLabel";s:14:"Dodatni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"MIME-Underhåll";s:11:"description";s:38:"Underhåll MIME-typer och filändelser";s:10:"groupLabel";s:16:"Extrainformation";}s:5:"th_TH";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"MIME Bakımı";s:11:"description";s:51:"MIME türlerinin ve dosya uzantılarının bakımı";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:24:"Поддержка MIME ";s:11:"description";s:75:"Поддержка MIME типов и файловых расширений";s:10:"groupLabel";s:41:"Дополнительные Данные";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"MIME维护";s:11:"description";s:34:"维护MIME类型和文件扩展名";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"MIME 維護";s:11:"description";s:30:"維護 MIME 類型和副檔名";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:23:"MIME メンテナンス";s:11:"description";s:59:"MIME タイプと拡張子のメンテナンスをします";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:16:"MIME Maintenance";s:11:"description";s:39:"Maintain MIME types and file extensions";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:18:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"sitemap";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"sitemap";s:7:"version";s:5:"1.0.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Mapa stránek";s:11:"description";s:57:"Pro Vaši Galerii generuje Google Sitemap (mapu stránek)";s:10:"groupLabel";s:6:"Export";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:45:"Erzeugt eine Google Sitemap für Ihre Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Gune-mapa";s:11:"description";s:46:"Google gune-mapa bat sortu zure galeriarentzat";s:10:"groupLabel";s:9:"Esportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Carte de site";s:11:"description";s:47:"Générer une carte de site Google pour Gallery";s:10:"groupLabel";s:8:"Exporter";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:55:"Genera una Mappa del Sito con Google per la tua Gallery";s:10:"groupLabel";s:7:"Esporta";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Vietnes karte";s:11:"description";s:46:"Ģenerēt Google vietnes karti Jūsu Galerijai";s:10:"groupLabel";s:10:"Eksportēt";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:43:"Genereer een Google sitemap voor uw Gallery";s:10:"groupLabel";s:10:"Exporteren";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Mapa strony";s:11:"description";s:33:"Generuje mapę galerii dla Google";s:10:"groupLabel";s:6:"Export";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:46:"Producerar en Google Sitemap för ditt Galleri";s:10:"groupLabel";s:9:"Exportera";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Siteharitası";s:11:"description";s:45:"Galeriniz için Google Siteharitası yaratın";s:10:"groupLabel";s:7:"Gönder";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ru_RU";a:3:{s:4:"name";s:21:"Карта сайта";s:11:"description";s:91:"Генерирует карту сайта Google Sitemap для Вашей Галереи.";s:10:"groupLabel";s:14:"Экспорт";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:36:"为你的图库产生 Google Sitemap";s:10:"groupLabel";s:6:"导出";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:39:"為你的 Gallery 產生 Google Sitemap";s:10:"groupLabel";s:6:"滙出";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"サイトマップ";s:11:"description";s:48:"GalleryのためのGoogle Sitemapを作成する";s:10:"groupLabel";s:18:"エクスポート";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}}s:9:"languages";a:2:{i:10212;a:13:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:18:{s:2:"cs";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"permalinks";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"permalinks";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Aliasy";s:11:"description";s:42:"Aliasy (trvalé aliasy) pro Vaše položky";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Permanente Verweise";s:11:"description";s:61:"Erstellen Sie simplere permanente Verweise zu Ihren Elementen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:13:"Loturafinkoak";s:11:"description";s:53:"Zure elementuen eremura ezizen finko sinple bat sortu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Liens permanents";s:11:"description";s:69:"Créer simplement des liens permanents vers vos éléments de Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:60:"Crea degli alias permanenti più semplici per i tuoi oggetti";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:32:"Maak simpele aliases naar items.";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Linki bezpośrednie";s:11:"description";s:65:"Tworzy proste linki bezpośrednie do pozycji (albumów) w galerii";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Permalink-uri";s:11:"description";s:56:"Creeaza legaturi permanente simple catre articolele tale";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Permanentalänkar";s:11:"description";s:49:"Skapa enklare permanenta aliases till dina objekt";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Постоянные ссылки";s:11:"description";s:101:"Создание элементарных постоянных ссылок для элементов";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"固定网址";s:11:"description";s:45:"为你的项目产生简单、固定的别名";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"固定網址";s:11:"description";s:45:"為你的項目產生簡單、固定的別名";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"고유 주소";s:11:"description";s:80:"당신의 아이템에 반 영구적인 간단한 별칭을 줄수 있습니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"Permalink";s:11:"description";s:69:"アイテム空間への簡潔で永続的なエイリアスの作成";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:13:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"search";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"search";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Soektog";s:11:"description";s:18:"Deursoek u Gallery";s:10:"groupLabel";s:15:"Gallery Soektog";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Recerca";s:11:"description";s:20:"Busca el teu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Hledat";s:11:"description";s:27:"Hledání ve Vaší Galerii";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:4:"Søg";s:11:"description";s:18:"Søg i dit galleri";s:10:"groupLabel";s:7:"Galleri";}s:5:"de_DE";a:3:{s:4:"name";s:5:"Suche";s:11:"description";s:24:"Ihre Gallery durchsuchen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Buscar";s:11:"description";s:19:"Busca en tu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Buscar";s:11:"description";s:19:"Busca en tu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Búsqueda";s:11:"description";s:19:"Busca en tu Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Otsi";s:11:"description";s:14:"Otsi Galeriist";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Bilatu";s:11:"description";s:20:"Zure Galerian Bilatu";s:10:"groupLabel";s:7:"Gallery";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Rechercher";s:11:"description";s:29:"Rechercher dans votre galerie";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Cuardach";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Cerca";s:11:"description";s:23:"Cerca nella tua Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Meklēt";s:11:"description";s:23:"Meklēt Jūsu Galerijā";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Paieška";s:11:"description";s:19:"Ieškoti galerijoje";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Keresés";s:11:"description";s:24:"Keresés a Galériádban";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Zoeken";s:11:"description";s:19:"Doorzoek uw Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Szukaj";s:11:"description";s:26:"Przeszukaj swoją galerię";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Procura";s:11:"description";s:22:"Procura na sua Galeria";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Pesquisar";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Pretraga";s:11:"description";s:26:"Pretražite svoju Galeriju";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Etsi";s:11:"description";s:18:"Etsi Galleriastasi";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:4:"Sök";s:11:"description";s:19:"Sök i ditt Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Пошук";s:11:"description";s:28:"Пошук у Галереї";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Tìm kiếm";s:11:"description";s:37:"Tìm kiếm trong Gallery của bạn";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:3:"Ara";s:11:"description";s:13:"Galerinde Ara";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Търсене";s:11:"description";s:36:"Търсене в Галерията";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Поиск";s:11:"description";s:28:"Поиск в Галерее";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"搜索";s:11:"description";s:18:"搜索您的图库";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"搜尋";s:11:"description";s:20:"搜尋你的 Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"찾기";s:11:"description";s:34:"Gallery에서 검색을 합니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"検索";s:11:"description";s:16:"Galleryを検索";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"بحث";s:11:"description";s:30:"ابحث داخل ألبومك";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Search";s:11:"description";s:19:"Search your Gallery";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:30:{s:2:"af";i:10212;s:2:"ar";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"nokiaupload";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"nokiaupload";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Nokia Beeld Oplaai";s:11:"description";s:55:"Implementering van Nokia Beeld Oplaai Bediener API v1.1";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:49:"Implementace "Nokia Image Upload Server API v1.1"";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementering af Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Nokia Bilder-Upload";s:11:"description";s:54:"Implementierung der Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:27:"Carga de Imágenes de Nokia";s:11:"description";s:74:"Implementación de la API v1.1 del Servidor de Carga de Imágenes de Nokia";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:27:"Carga de Imágenes de Nokia";s:11:"description";s:74:"Implementación de la API v1.1 del Servidor de Carga de Imágenes de Nokia";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:27:"Carga de Imágenes de Nokia";s:11:"description";s:74:"Implementación de la API v1.1 del Servidor de Carga de Imágenes de Nokia";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:18:"Nokia Irudi Igoera";s:11:"description";s:53:"Nokia Irudi Igoera Zerbitzari API v.1. inplementazioa";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:31:"Téléchargement d'images Nokia";s:11:"description";s:55:"Implémentation de l'API Nokia Image Upload Server v1.1";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:60:"Implementazione delle Api v1.1 del Server Nokia Image Upload";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:22:"Nokia Afbeeling Upload";s:11:"description";s:57:"Implementatie van Nokia Afbeelding Upload Server API v1.1";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:49:"Implementacja serwera Nokia Image Upload API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:48:"Implementarea Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Nokia prenos slika";s:11:"description";s:49:"Nokia Image Upload Server API v1.1 implementacija";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:22:"Nokia Bild uppladdning";s:11:"description";s:58:"Impementation av Nokia's Bild Uppladdnings Server API v1.1";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:22:"Nokia Resim Gönderimi";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:53:"Внедрение Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:44:"诺基亚图片上传服务器API v1.1工具";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"Nokia 圖片上傳";s:11:"description";s:43:"Nokia 圖片上傳伺務器 API v1.1 工具";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"ノキア画像アップロード";s:11:"description";s:44:"Nokia Image Upload Server API v1.1 の実装";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:18:"Nokia Image Upload";s:11:"description";s:52:"Implementation of Nokia Image Upload Server API v1.1";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:18:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"rearrange";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"rearrange";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Herrangskik";s:11:"description";s:59:"Herrangskik die volgorde van alle album items tergelykertyd";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:12:"Recol·locar";s:11:"description";s:70:"Recol·loca l'ordre de tots els elements de l'àbum d'una vegada";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Uspořádat";s:11:"description";s:46:"Hromadná změna pořadí všech položek alba";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Reorganiser";s:11:"description";s:66:"Reorganiser rækkefølgen på alle objekter i albummet på en gang";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Reihenfolge ändern";s:11:"description";s:56:"Reihenfolge mehrerer Album-Elemente gleichzeitig ändern";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:9:"Recolocar";s:11:"description";s:63:"Recoloca el orden de los elementos del álbum, todos de una vez";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:9:"Recolocar";s:11:"description";s:63:"Recoloca el orden de los elementos del álbum, todos de una vez";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:9:"Recolocar";s:11:"description";s:63:"Recoloca el orden de los elementos del álbum, todos de una vez";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Ordenatu";s:11:"description";s:34:"Album guztien ordena batera aldatu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"Réarranger";s:11:"description";s:56:"Réarranger l'ordre de tous les albums en une seule fois";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Ridisponi";s:11:"description";s:62:"Modifica l'ordine degli oggetti di un album tutti in una volta";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Perrūšiuoti";s:11:"description";s:54:"Perrūšiuoti visų albumo elementų tvarką iš karto";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Átrendezés";s:11:"description";s:72:"Az összes albumelem helyzetének egyszerre történő megváltoztatása";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Herschikken";s:11:"description";s:55:"Herschik de volgorde van albums items allemaal tegelijk";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Kolejność pozycji";s:11:"description";s:38:"Zmienia kolejność pozycji na stronie";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Reordenar";s:11:"description";s:39:"Reordenar os itens do album de uma vez ";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:17:"Promena redosleda";s:11:"description";s:50:"Promena redosleda svih objekata u albumu od jednom";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Järjestele";s:11:"description";s:50:"Järjestele kaikki albumin kohteet yhdellä kertaa";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Flytta";s:11:"description";s:45:"Byt ordning på alla albumobjekt på en gång";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:15:"Bố trí lại";s:11:"description";s:92:"Bố trí lại vị trí của tất cả các đối tượng trong album cùng một lúc";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"Yeniden Düzenle";s:11:"description";s:62:"Albüm ögelerinin sıralamasını bir kerede yeniden düzenle";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:22:"Пренаредете";s:11:"description";s:66:"Променете реда на албумите наведнъж";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:28:"Упорядочивание";s:11:"description";s:103:"Изменение порядка следования элементов в альбоме за раз";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:30:"立刻重新排序相册项目";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"安排順序";s:11:"description";s:42:"一次安排相簿中所有項目的順序";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"배열";s:11:"description";s:52:"사진첩의 아이템을 한번에 정열합니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"再編集";s:11:"description";s:60:"アルバムアイテムの順序を一度に変更します";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Rearrange";s:11:"description";s:46:"Rearrange the order of album items all at once";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:25:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:15:"slideshowapplet";a:3:{s:6:"header";a:6:{s:2:"id";s:15:"slideshowapplet";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:22:"Skyfievertoning Applet";s:11:"description";s:54:"Volskerm skyfievertoning met behulp van 'n Java applet";s:10:"groupLabel";s:9:"Vertoning";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Applet prezentace";s:11:"description";s:50:"Prezentace na celé obrazovce pomocí Java appletu";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:19:"Fremvisnings-applet";s:11:"description";s:51:"Fuldskærmsfremvisning ved hjælp af en Java applet";s:10:"groupLabel";s:7:"Visning";}s:5:"de_DE";a:3:{s:4:"name";s:14:"Diashow-Applet";s:11:"description";s:43:"Vollbild-Diashow mittels eines Java-Applets";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:23:"Applet de Presentación";s:11:"description";s:58:"Presentación a pantalla completa usando un applet de Java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:23:"Applet de Presentación";s:11:"description";s:58:"Presentación a pantalla completa usando un applet de Java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:23:"Applet de Presentación";s:11:"description";s:58:"Presentación a pantalla completa usando un applet de Java";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:23:"Slaidiesitluse Programm";s:11:"description";s:52:"Slaidiesitlus täisekraanil kasutades Java programmi";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:18:"aurkezpen Applet-a";s:11:"description";s:51:"Pantaila osorako aurkezpena java applet-a erabiliaz";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:19:"Applet de diaporama";s:11:"description";s:50:"Diaporama plein écran à l'aide d'une applet Java";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:47:"Slideshow a tutto schermo usando un'applet Java";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:30:"Skaidrių peržiūros programa";s:11:"description";s:57:"Skaidrių peržiūra visame ekrane Java programos pagalba";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:25:"Diavetítő Segédprogram";s:11:"description";s:65:"Teljesképernyős diavetítés Java segédprogram használatával";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Diashow Applet";s:11:"description";s:54:"Volledig scherm diashow met behulp van een Java applet";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:21:"Aplet pokazu slajdów";s:11:"description";s:60:"Pełnoekranowy pokaz slajdów przy wykorzystaniu apletu Javy";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:20:"Applet de prezentare";s:11:"description";s:49:"Prezentare pe tot ecranul folosind un java applet";s:10:"groupLabel";s:7:"Afisare";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:27:"Diapozitivi čez cel zaslon";s:10:"groupLabel";s:6:"Prikaz";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Diapozitivi";s:11:"description";s:27:"Diapozitivi čez cel zaslon";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Diaesitys Apletti";s:11:"description";s:46:"Koko ruudun diaesitys käyttäen Java aplettia";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:23:"Diabildsvisning Applet ";s:11:"description";s:56:"Fullskärms diabildsvisning med hjälp av en Java applet";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Аплет Слайдшоу";s:11:"description";s:88:"Слайдшоу на цілий екран використовуючи аплет Java";s:10:"groupLabel";s:20:"Показувати";}s:5:"vi_VN";a:3:{s:4:"name";s:31:"Ứng dụng con trình chiếu";s:11:"description";s:59:"Trình chiếu toàn màn hình dùng ứng dụng con Java";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:22:"Slaytgösterisi Applet";s:11:"description";s:47:"Java Apple kullanarak Tam Ekran slaytgösterisi";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:53:"Аплет за Преглед на цял екран";s:11:"description";s:76:"Преглед на цял екран използвайки Java-аплет";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:30:"Апплет Слайд-шоу";s:11:"description";s:96:"Полноэкранное слайд-шоу с использованием Java апплета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"幻灯秀程序";s:11:"description";s:45:"全屏幕的幻灯秀需要使用 Java Applet";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:24:"幻燈片放映小程式";s:11:"description";s:45:"利用 Java 小程式全螢幕放映幻燈片";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:26:"슬아이드 쇼 애플릿";s:11:"description";s:83:"자바 애플릿을 이용해 꽉찬 화면의 슬라이드 쇼를 감상합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:36:"スライドショーアプレット";s:11:"description";s:76:"Javaアプレットを使ったフルスクリーンのスライドショー";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:16:"Slideshow Applet";s:11:"description";s:40:"Fullscreen slideshow using a Java applet";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:23:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:5:"en_GB";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:2:"gd";a:3:{s:6:"header";a:6:{s:2:"id";s:2:"gd";s:7:"version";s:5:"1.1.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:22:"Gd Grafiese Hulpmiddel";s:10:"groupLabel";s:19:"Grafiese Hulmiddele";}s:5:"ca_ES";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:17:"Eines Gd Graphics";s:10:"groupLabel";s:22:"Eines gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:21:"Grafický nástroj GD";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:20:"Gd grafisk værktøj";s:10:"groupLabel";s:20:"Grafiske værktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:22:"GD Grafik-Werkzeugsatz";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:34:"Juego de Herramientas Gráficas Gd";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:34:"Juego de Herramientas Gráficas Gd";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:34:"Juego de Herramientas Gráficas Gd";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:21:"Gd Graafikatööriist";s:10:"groupLabel";s:20:"Graafikatööriistad";}s:5:"eu_ES";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Gd Tresna-joko Grafikoa";s:10:"groupLabel";s:21:"Tresna-joko Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:30:"Boîte à outils graphiques GD";s:10:"groupLabel";s:28:"Boîtes à outils graphiques";}s:5:"ga_IE";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:27:"Set di Strumenti Grafici Gd";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Gd grafikas aprīkojums";s:10:"groupLabel";s:20:"Grafikas aprīkojums";}s:5:"lt_LT";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:18:"Grafikos įrankiai";}s:5:"hu_HU";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Gd grafikus eszköztár";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:47:"Gd Grafische Toolkit voor verwerking van foto's";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:23:"Narzędzie graficzne Gd";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:32:"Caixa de ferramentas gráfica GD";s:10:"groupLabel";s:31:"Caixas de ferramentas gráficas";}s:5:"pt_PT";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:31:"Setul de instrumente grafice Gd";s:10:"groupLabel";s:26:"Set de instrumente grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd grafička alatka";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:20:"GD grafiikkatyökalu";s:10:"groupLabel";s:18:"Grafiikkatyökalut";}s:5:"sv_SE";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:24:"Gd Grafisk verktygslåda";s:10:"groupLabel";s:21:"Grafisk verktygslåda";}s:5:"th_TH";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:30:"Bộ công cụ đồ họa Gd";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:16:"GD Grafik Aracı";s:10:"groupLabel";s:17:"Grafik Araçları";}s:5:"bg_BG";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:48:"GD Графические Инструменты";s:10:"groupLabel";s:45:"Графические инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:2:"GD";s:11:"description";s:14:"GD图形工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:15:"GD 圖形工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"GD 그래픽 도구";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:39:"Gd グラフィックツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:2:"Gd";s:11:"description";s:19:"Gd Graphics Toolkit";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"shutterfly";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"shutterfly";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly Foto Afdruk Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:37:"Modul tisku fotografií na Shutterfly";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:33:"Shutterfly foto-udskrivningsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:27:"Shutterfly Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:43:"Módulo de Impresion de Fotos en Shutterfly";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:37:"Shutterfly Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:26:"Impressions via Shutterfly";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:36:"Modulo di Stampa Foto con Shutterfly";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:28:"Moduł drukowania Shutterfly";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:52:"Modul za izradu fotografija preko Shutterfly servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:34:"Shutterfly kuvien tulostus moduuli";s:10:"groupLabel";s:11:"Kaupallinen";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:30:"Shutterfly foto utskriftsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:31:"Shutterfly Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:66:"Модуль печати фотографий на Shutterfly.com";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:28:"Shutterfly照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:29:"Shutterfly 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:30:"Shutterfly Photo 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:50:"Shutterfly Photo 画像プリントモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Shutterfly";s:11:"description";s:32:"Shutterfly Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:2:{i:10212;a:16:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:22:{s:2:"af";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16607";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"sizelimit";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"sizelimit";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Grootte Limiet";s:11:"description";s:27:"Verskaf beeldgrootte limiet";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Límit de mida";s:11:"description";s:38:"Definir límite de tamaño";s:10:"groupLabel";s:14:"Visualització";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Limit velikosti";s:11:"description";s:27:"Omezení velikosti obrázku";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:23:"Størrelsesbegrænsning";s:11:"description";s:38:"Definer billedestørrelsesbegrænsning";s:10:"groupLabel";s:7:"Visning";}s:5:"de_DE";a:3:{s:4:"name";s:22:"Größeneinschränkung";s:11:"description";s:55:"Eine Größeneinschränkung für Ihre Bilder definieren";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Límite de Tamaño";s:11:"description";s:42:"Define el límite de tamaño de la imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Límite de Tamaño";s:11:"description";s:42:"Define el límite de tamaño de la imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Límite de Tamaño";s:11:"description";s:42:"Define el límite de tamaño de la imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"Tamaina Muga";s:11:"description";s:25:"Irudi tamaina muga ezarri";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Limite de taille";s:11:"description";s:27:"Limite de taille des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:22:"Limite alla Dimensione";s:11:"description";s:51:"Definisce il limite della dimensione delle immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:32:"Képméret korlát beállítása";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"Maximale grootte";s:11:"description";s:36:"Geef maximale afbeeldings grootte op";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Limity zdjęć";s:11:"description";s:25:"Limity wielkości zdjęć";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Limite de tamanho";s:11:"description";s:39:"Definir limite para o tamanho da figura";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:22:"Ograničenje veličine";s:11:"description";s:40:"Definisanje ograničenja veličine slika";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Storleksgräns";s:11:"description";s:35:"Definiera storleksgrän för bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Boyut Limiti";s:11:"description";s:29:"Resim boyut limitini tanımla";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Лимит размера";s:11:"description";s:63:"Определяет лимит размера картинки";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:24:"定义图片尺寸限制";s:11:"description";s:24:"定义图片尺寸限制";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"大小限制";s:11:"description";s:24:"定義圖片大小限制";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"サイズ制限";s:11:"description";s:30:"画像サイズ上限を定義";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Size Limit";s:11:"description";s:25:"Define picture size limit";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"reupload";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"reupload";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Znovu nahrát";s:11:"description";s:34:"Umožní znovunahrání obrázků.";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Gen-upload";s:11:"description";s:40:"Gør det muligt at gen-uploade billeder.";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:18:"Erneutes Hochladen";s:11:"description";s:46:"Ermöglicht das erneute Hochladen von Bildern.";s:10:"groupLabel";s:18:"Zusätzliche Daten";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Recargar";s:11:"description";s:32:"Permite la recarga de imágenes.";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Recargar";s:11:"description";s:32:"Permite la recarga de imágenes.";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Recargar";s:11:"description";s:32:"Permite la recarga de imágenes.";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fr_FR";a:3:{s:4:"name";s:15:"Retélécharger";s:11:"description";s:20:"Remplacer les images";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:43:"Permette di rifare l'upload delle immagini.";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"Újrafeltöltés";s:11:"description";s:44:"Képek újrafeltöltését teszi lehetővé.";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Vernieuw";s:11:"description";s:56:"Maakt het vernieuwen van bestaande afbeeldingen mogelijk";s:10:"groupLabel";s:14:"Extra gegevens";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:20:"Aktualizacja plików";s:11:"description";s:65:"Pozwala na ponowne przesłanie i nadpisanie istniejących plików";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Återuppladda";s:11:"description";s:35:"Tillåter återuppladning av bilder";s:10:"groupLabel";s:10:"Extra data";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Yeniden Yükle";s:11:"description";s:44:"Resimlerin yeniden yüklenmesine izin verir.";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:35:"Повторная загрузка";s:11:"description";s:78:"Позволяет повторно загружать изображения.";s:10:"groupLabel";s:41:"Дополнительные Данные";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"重新上传";s:11:"description";s:27:"允许重新上传图片。";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"重新上載";s:11:"description";s:27:"允許重新上載圖片。";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"다시 올리기";s:11:"description";s:49:"사진을 다시 올리는것을 허용합니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"再アップロード";s:11:"description";s:48:"画像の再アップロードを許可する。";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Reupload";s:11:"description";s:28:"Allows reupload of pictures.";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:13:{s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"linkitem";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"linkitem";s:7:"version";s:7:"1.1.2.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Odkaz na položky";s:11:"description";s:53:"Tvorba odkazů na jiná alba nebo externí URL adresy";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Link emner";s:11:"description";s:52:"Opret links til andre albummer eller eksterne URL'er";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Element-Verweise";s:11:"description";s:66:"Erzeugt einen Verweis auf ein anderes Album, oder eine externe URL";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Elementuak Lotu";s:11:"description";s:47:"Beste album edo kanpoko URL-etara loturak sortu";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"Liens";s:11:"description";s:52:"Créer des liens vers des albums ou des URL externes";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:29:"Σύνδεση Αρχείων";s:11:"description";s:115:"Δημιουργία συνδέσμων σε άλλα άλμπουμ ή εξωτερικές διευθύνσεις";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Oggetti Link";s:11:"description";s:40:"Crea link ad altri album o a url esterni";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Elementų nuorodos";s:11:"description";s:57:"Sukurti nuorodas į kitus albumus arba į išorinius URL.";s:10:"groupLabel";s:11:"Vaizdavimas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:58:"Linkeket készít más albumokra, vagy külső webcímekre";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:50:"Maak links naar andere albums of naar externe URLs";s:10:"groupLabel";s:9:"Weergeven";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Linki";s:11:"description";s:62:"Tworzy linki do innego albumu lub do zewnętrzych adresów URL";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Leaga articole";s:11:"description";s:54:"Creeaza legaturi catre alte albume sau URL-uri externe";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Prikaz";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Objekti-veze";s:11:"description";s:56:"Pravljenje veza ka drugim albumima ili spoljnim adresama";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Länka objekt";s:11:"description";s:49:"Skapa länk till anndra album eller externa URLer";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:64:"Diğer albümlere yada dış kaynaklı url'lere bağlantı yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Ссылки на элементы";s:11:"description";s:99:"Создает ссылки на другие альбомы или внешние адреса url";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"链接项目";s:11:"description";s:48:"产生指到其他相簿或外部网址的链接";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"鏈接項目";s:11:"description";s:48:"產生指到其他相簿或外部網址的鏈接";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:62:"사진첩또는 확장된 주소등에 연결을 만듭니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:14:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:39:{s:2:"af";s:5:"16634";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16634";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16634";s:2:"de";s:5:"16040";s:2:"el";s:5:"16634";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16634";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16634";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16634";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16634";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"colorpack";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"colorpack";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Colour Packs";s:11:"description";s:43:"Select different colour palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Kleurpakette";s:11:"description";s:38:"Selekteer ander kleurpalette vir temas";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Paquets de Color";s:11:"description";s:51:"Selecciona diferents paletes de color per als temes";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:19:"Barevné nastavení";s:11:"description";s:20:"Výběr barev témat";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Farvepakker";s:11:"description";s:42:"Vælg forskellige farvepaletter for temaer";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Farbpaletten";s:11:"description";s:53:"Wählen Sie unterschiedliche Farbpaletten für Motive";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Paquetes de Color";s:11:"description";s:53:"Selecciona diferentes paletas de color para los temas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Paquetes de Color";s:11:"description";s:53:"Selecciona diferentes paletas de color para los temas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Paquetes de Color";s:11:"description";s:53:"Selecciona diferentes paletas de color para los temas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Kolore paketeak";s:11:"description";s:47:"Hautatu kolore paleta ezberdinak gai bakoitzeko";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Jeux de couleurs";s:11:"description";s:58:"Sélectionnez différents jeux de couleur pour les thèmes";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:45:"Seleziona differenti set di colori per i temi";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:15:"Spalvų paketai";s:11:"description";s:42:"Parinkite skirtingas temų spalvų paletes";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Színcsomagok";s:11:"description";s:58:"Különféle színpaletták kiválasztása a felületekhez";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Kleur Pakketten";s:11:"description";s:42:"Selecteer andere kleur pallet voor thema's";s:10:"groupLabel";s:9:"Weergeven";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:16:"Zestawy kolorów";s:11:"description";s:45:"Wybierz różne zestawy kolorów dla tematów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Pacotes de Cor";s:11:"description";s:52:"Selecione palhetas de cores diferentes para os temas";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Paketi boja";s:11:"description";s:42:"Biranje različitih paketa boja za izglede";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Färgpaket";s:11:"description";s:36:"Välj olika färgpaletter till teman";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:14:"Renk Paketleri";s:11:"description";s:43:"Temalar için farklı renk paletleri seçin";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:30:"Пакети с цветове";s:11:"description";s:72:"Изберете различни палитри за стиловете";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:31:"Цветовая палитра";s:11:"description";s:99:"Выбор различной цветовой палитры для оформления темы";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"彩色包";s:11:"description";s:33:"为布景主题选不同的色调";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"彩色包";s:11:"description";s:33:"為佈景主題選不同的色調";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:49:"사용하고자 하는 색상을 선택합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"カラーパック";s:11:"description";s:60:"テーマとは異なるカラーパレットを選択する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Color Packs";s:11:"description";s:42:"Select different color palettes for themes";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:23:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"fotokasten";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"fotokasten";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:37:"Modul tisku fotografií na Fotokasten";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:29:"Fotokasten Fot Printing Modul";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:26:"Fotokasten Fotodruck Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Módulo de Impresión de Fotografías con Fotokasten";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Módulo de Impresión de Fotografías con Fotokasten";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Módulo de Impresión de Fotografías con Fotokasten";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:37:"Fotokasten Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:26:"Impressions via Fotokasten";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:36:"Modulo di Stampa Foto con Fotokasten";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:29:"Fotokasten Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:28:"Moduł drukowania Fotokasten";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:52:"Modul za izradu fotografija preko Fotokasten servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:38:"Fotokasten Utskrifts Module för Foton";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:31:"Fotokasten Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:71:"Модуль печати фотографий через Fotokasten.de";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:28:"Fotokasten照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:29:"Fotokasten 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:31:"Fotokasten 사진 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:38:"Fotokasten 画像印刷モジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Fotokasten";s:11:"description";s:32:"Fotokasten Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:2:{i:10212;a:17:{s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"publishxp";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"publishxp";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15578";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Publiseer XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:46:"Send fotos til 'Gallery' direkte fra Windws XP";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:25:"Mit XP veröffentlichen";s:11:"description";s:66:"Bilder direkt von Microsoft Windows zur Gallery veröffentlichen";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"XP Argitaratzea";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:61:"Publier des photos dans Gallery directement depuis Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:51:"Pubblica foto in Gallery direttamente da Windows XP";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Publikuoti XP";s:11:"description";s:54:"Publikuoti vaizdus į Galeriją tiesiai iš Windows XP";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Publiceren XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Publikacja XP";s:11:"description";s:56:"Publikuje zdjęcia do galerii bezpośrednio z Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Julkaise XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Tuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Publicera XP";s:11:"description";s:53:"Publicera bilder till Gallery direkt från Windows XP";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Yayınlama XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:40:"Опубликование через XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"XP 发布";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"發表 XP";s:11:"description";s:47:"把相片直接從 Windows XP 發表到 Gallery";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:54:"Windows XP から直接Galleryに画像を公開する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:19:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15578;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"getid3";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"getid3";s:7:"version";s:5:"1.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:45:"Nástroj pro získání informací z id3 tagu";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"de_DE";a:3:{s:4:"name";s:6:"GetID3";s:11:"description";s:51:"Ein Werkzeug zum Auslesen von ID3-Tag-Informationen";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:77:"Un conjunto de herramientas para obtener la información de las etiquetas id3";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:77:"Un conjunto de herramientas para obtener la información de las etiquetas id3";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:77:"Un conjunto de herramientas para obtener la información de las etiquetas id3";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"GetID3";s:11:"description";s:63:"Boîte à outils pour extraire les données des étiquettes ID3";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:60:"Un set di strumenti per estrarre le informazioni dei tag id3";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"Tookit om id3 tag informatie uit te lezen";s:10:"groupLabel";s:14:"Extra Gegevens";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"GetID3";s:11:"description";s:40:"Narzędzie do pobierania znaczników id3";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:52:"En verktygslåda för extrahering av id3 information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:37:"id3 bilgisi almak için araçtakımı";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:52:"Извлечение данных из тэга id3";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:32:"取得 id3 标签资讯的工具";s:10:"groupLabel";s:12:"额外资料";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:32:"取得 id3 標籤資訊的工具";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:60:"ID3タグの情報を取得するためのツールキット";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Getid3";s:11:"description";s:41:"A toolkit for getting id3 tag information";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:12:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:13:"archiveupload";a:3:{s:6:"header";a:6:{s:2:"id";s:13:"archiveupload";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Laai Argief Op";s:11:"description";s:41:"Onttrek items vanuit opgelaaide ziplêers";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Càrrega d'Arxius";s:11:"description";s:37:"Extraure elements d'arxius zip pujats";s:10:"groupLabel";s:8:"Importar";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Upload archivů";s:11:"description";s:49:"Rozbalení položek z uploadovaných zip souborů";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:16:"Arkivoverførsel";s:11:"description";s:42:"Pakker elementer ud fra en uploadet zipfil";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Archiv-Hochladen";s:11:"description";s:52:"Extrahiere Elemente aus dem hochgeladenen ZIP-Archiv";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Carga de Archivos";s:11:"description";s:41:"Extraer elementos de archivos zip subidos";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Carga de Archivos";s:11:"description";s:41:"Extraer elementos de archivos zip subidos";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Carga de Archivos";s:11:"description";s:41:"Extraer elementos de archivos zip subidos";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Fitxategia Igo";s:11:"description";s:42:"Atera osagaiak igotako zip fitxategietatik";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:27:"Téléchargement d'archives";s:11:"description";s:62:"Extraire les éléments depuis les fichiers zip téléchargés";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Upload Archivio";s:11:"description";s:39:"Estrai gli oggetti da file zip caricati";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Archyvo įkėlimas";s:11:"description";s:46:"Ištraukti elementus iš įkeltų zip archyvų";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:19:"Arhívumfeltöltés";s:11:"description";s:50:"Elemek kicsomagolása a feltöltött zip fájlból";s:10:"groupLabel";s:12:"Importálás";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Archief Upload";s:11:"description";s:43:"Extract items geupload vanuit zip bestanden";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:22:"Przesyłanie archiwów";s:11:"description";s:45:"Rozpakuj pozycje z przesłanych archiwów zip";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Enviar arquivo";s:11:"description";s:38:"Extrair itens de arquivos zip enviados";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Prenos arhiva";s:11:"description";s:45:"Ekstrakcija objekata iz prenetih zip datoteka";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:19:"Pakkauksen Lähetys";s:11:"description";s:43:"Pura kuvat lähetetyistä zip -tiedostoista";s:10:"groupLabel";s:7:"Siirrä";}s:5:"sv_SE";a:3:{s:4:"name";s:20:"Uppladdning av Arkiv";s:11:"description";s:42:"Extrahera objekt från uppladdade zipfiler";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:25:"Tải lên tập tin nén";s:11:"description";s:77:"Bung các đối tượng được tải lên trong các tập tin nén (zip)";s:10:"groupLabel";s:13:"Nhập khẩu";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Arşiv Göndeme";s:11:"description";s:40:"Yüklenen zip dosyalarından ögeleri al";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:30:"Качване на архив";s:11:"description";s:79:"Изваждане на елементи от качени 'zip' файлове";s:10:"groupLabel";s:12:"Импорт";}s:5:"ru_RU";a:3:{s:4:"name";s:29:"Загрузка Архива";s:11:"description";s:78:"Распаковка файлов из загруженного zip файла";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"存档上传";s:11:"description";s:36:"从上传的ZIP文件中释放项目";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"壓縮檔上傳";s:11:"description";s:38:"從上傳的 ZIP 檔案中取出項目";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"アーカイブアップロード";s:11:"description";s:57:"アップロードされたzipファイルを展開する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Archive Upload";s:11:"description";s:37:"Extract items from uploaded zip files";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:25:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"newitems";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"newitems";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Nuwe Items";s:11:"description";s:31:"Lig nuwe/opgedateerde items uit";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Nous Items";s:11:"description";s:29:"Destacar item nou/actualitzat";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:14:"Nové položky";s:11:"description";s:56:"Zvýraznění nových/zaktualizovaných položek Galerie";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Nye Objekter";s:11:"description";s:39:"Fremhæv nye/opdaterede galleriobjekter";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Neue Elemente";s:11:"description";s:45:"neue/aktualisierte Gallery-Elemente markieren";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:16:"Nuevos Elementos";s:11:"description";s:52:"Destaca los elementos nuevos/actualizados de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:16:"Nuevos Elementos";s:11:"description";s:52:"Destaca los elementos nuevos/actualizados de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:16:"Nuevos Elementos";s:11:"description";s:52:"Destaca los elementos nuevos/actualizados de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:19:"Uued Pildid/Albumid";s:11:"description";s:47:"Märgista uued/uuendatud Galerii albumid/pildid";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:16:"Elementu Berriak";s:11:"description";s:37:"Nabarmendu elementu berri/eguneratuak";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:19:"Nouveaux éléments";s:11:"description";s:77:"Mettre en avant les nouveaux éléments de Gallery ainsi que ceux mis à jour";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Oggetti Nuovi";s:11:"description";s:58:"Metti in copertina gli oggetti di Gallery nuovi/aggiornati";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:15:"Nauji elementai";s:11:"description";s:51:"Išryškinti naujus/atnaujintus Galerijos elementus";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Új elemek";s:11:"description";s:45:"Új/frissített galéria elemek megjelölése";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:12:"Nieuwe Items";s:11:"description";s:40:"Albumafbeelding nieuwe/bijgewerkte items";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:12:"Nowe pozycje";s:11:"description";s:44:"Zaznacza nowe/zaktualizowane pozycje galerii";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"Itens novos";s:11:"description";s:43:"Destacar itens novos/atualizados da Galeria";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:12:"Articole noi";s:11:"description";s:41:"Evidentiaza articolele noi sau modificate";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Novi objekti";s:11:"description";s:52:"Obeležavanje novih ili izmenjenih objekata Galerije";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Uudet Kohteet";s:11:"description";s:43:"Korosta uudet/päivitetyt Gallerian kohteet";s:10:"groupLabel";s:7:"Näytä";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Nya Object";s:11:"description";s:54:"Lägg nya/uppdaterade Gallery objekt som Higlight bild";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:21:"Đối tượng mới";s:11:"description";s:58:"Đánh dấu các đối tượng mới thêm/cập nhật";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Yeni Ögeler";s:11:"description";s:47:"Yeni/Güncel Galeri ögelerini Öngösterim yap";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:25:"Нови елементи";s:11:"description";s:96:"Отличаване на новите/променените елементи в Галерия";s:10:"groupLabel";s:14:"Дисплей";}s:5:"ru_RU";a:3:{s:4:"name";s:27:"Новые Элементы";s:11:"description";s:83:"Выделяет новые/измененные элементы в Галерее";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"新项目";s:11:"description";s:43:"高亮显示新增/已更新的图库项目";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"新項目";s:11:"description";s:45:"標示新增或最近更新的 Gallery 項目";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:55:"새로운 또는 업데이트된 아이템 강조하기";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:21:"新しいアイテム";s:11:"description";s:49:"新規/更新アイテムをハイライトする";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"New Items";s:11:"description";s:35:"Highlight new/updated Gallery items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:25:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"exif";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"exif";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:37:"Onttrek EXIF/IPTC data uit JPEG-fotos";s:10:"groupLabel";s:12:"Onttrek Data";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:46:"Extraure les dades EXIF/IPTC de les fotos JPEG";s:10:"groupLabel";s:21:"Dades Suplementàries";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Práce s EXIF/IPTC daty z JPEG fotografií";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:37:"Udtræk EXIF/IPTC data fra JPEG fotos";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Extrahiere EXIF/IPTC Daten aus JPEG-Photos";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:45:"Extraer los datos EXIF/IPTC de las fotos JPEG";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:41:"EXIF/IPTC datuak atera JPEG argazkietatik";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:49:"Extraire les données EXIF & IPTC des photos JPEG";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:34:"Estrai dati EXIF/IPTC da foto JPEG";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:49:"Išgauti EXIF/IPTC duomenis iš JPEG fotografijų";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:38:"Extract EXIF/IPTC data uit JPEG foto's";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:38:"Pobierz dane EXIF/IPTC ze zdjęć JPEG";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:34:"Pegar dados EXIF/IPTC da foto JPEG";s:10:"groupLabel";s:16:"Dados adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:42:"Extrage informatii EXIF/IPTC din foto JPEG";s:10:"groupLabel";s:23:"Informatii suplimentare";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:52:"Preuzimanje EXIF i IPTC podataka iz JPEG fotografija";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:35:"Purkaa EXIF/IPTC tieto JPEG-kuvista";s:10:"groupLabel";s:10:"Lisätieto";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:41:"Extrahera EXIF/IPTC data från JPEG foton";s:10:"groupLabel";s:10:"Extra Data";}s:5:"th_TH";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:44:"Trích dữ liệu EXIF/IPTC từ ảnh JPEG";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:74:"Извлечение данных EXIF/IPTC из JPEG фотографий";s:10:"groupLabel";s:26:"Дополнительно";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:32:"从JPEG照片中析取EXIF数据";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:36:"從 JPEG 照片中取得 EXIF 資料";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:54:"JPEG 사진에서 EXIF/IPTC 정보를 뽑아냅니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:69:"JPEGの画像から、EXIFもしくはITPCのデータを展開する";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"EXIF/IPTC";s:11:"description";s:39:"Extract EXIF/IPTC data from JPEG photos";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:24:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"remote";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"remote";s:7:"version";s:5:"1.0.9";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15539";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementering vir die remote control protokol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"cs_CZ";a:3:{s:4:"name";s:20:"Vzdálený přístup";s:11:"description";s:47:"Implementace protokolu pro vzdálený přístup";s:10:"groupLabel";s:20:"Vzdálené rozhraní";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:40:"Implementering af fjernstyrings-protokol";s:10:"groupLabel";s:29:"Fjernbetjenings-grænseflader";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:45:"Implementierung des Remote Control Protokolls";s:10:"groupLabel";s:39:"Anwendungs- und Programm-Schnittstellen";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Remoto";s:11:"description";s:51:"Implementación para el protocolo de control remoto";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Remoto";s:11:"description";s:51:"Implementación para el protocolo de control remoto";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Remoto";s:11:"description";s:51:"Implementación para el protocolo de control remoto";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Urrunekoa";s:11:"description";s:45:"Urruneko kontrol protokoloaren inplementazioa";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Distant";s:11:"description";s:53:"Implémentation du protocole de contrôle à distance";s:10:"groupLabel";s:20:"Interfaces distantes";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:50:"Implementazione del protocollo di controllo remoto";s:10:"groupLabel";s:17:"Interfacce Remote";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Nutolusi";s:11:"description";s:50:"Nuotolinio galerijos valdymo protokolo realizacija";s:10:"groupLabel";s:19:"Nutolę interfeisai";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Távoli";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementatie voor het remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Dostęp zdalny";s:11:"description";s:42:"Implementacja protokołu dostępu zdalnego";s:10:"groupLabel";s:17:"Zdalne interfejsy";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Distante";s:11:"description";s:47:"Implementação do protocolo de controle remoto";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Daljinski";s:11:"description";s:49:"Implementacija protokola za daljinsko upravljanje";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Etäkäyttö";s:11:"description";s:32:"Etäkäyttöprotokollan toteutus";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Fjärrmanövring";s:11:"description";s:44:"Implementering av fjärrkontroll-protokollet";s:10:"groupLabel";s:26:"Fjärkontrolls gränssnitt";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Kumanda";s:11:"description";s:41:"Kumanda kontrol protokolü için uygulama";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ru_RU";a:3:{s:4:"name";s:24:"Дистанционно";s:11:"description";s:124:"Дистанционная загрузка фотографий по протоколу удаленного доступа";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"遥控";s:11:"description";s:18:"遥控协议工具";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"遠端上傳";s:11:"description";s:24:"遠端控制協定工具";s:10:"groupLabel";s:18:"遠端存取界面";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:36:"원격으로 사진을 올립니다.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"リモート";s:11:"description";s:54:"リモートコントロールプロトコルの実装";s:10:"groupLabel";s:36:"リモートインターフェース";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Remote";s:11:"description";s:46:"Implementation for the remote control protocol";s:10:"groupLabel";s:17:"Remote Interfaces";}}s:9:"languages";a:2:{i:10212;a:23:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15539;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"multilang";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"multilang";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Meertalig";s:11:"description";s:38:"Ondersteun item byskrifte in meer tale";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Multillenguatje";s:11:"description";s:48:"Suport per etiquetes d'elements en varis idiomes";s:10:"groupLabel";s:17:"Informació extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Více jazyků";s:11:"description";s:42:"Podpora vícejazyčných popisků položek";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:40:"Understøt objekttekster på flere sprog";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Mehrsprachigkeit";s:11:"description";s:55:"Unterstützung für mehrsprachige Elementbeschriftungen";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:11:"MultiIdioma";s:11:"description";s:64:"Soporte para las etiquetas de los elementos en multiples idiomas";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:11:"MultiIdioma";s:11:"description";s:64:"Soporte para las etiquetas de los elementos en multiples idiomas";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:11:"MultiIdioma";s:11:"description";s:64:"Soporte para las etiquetas de los elementos en multiples idiomas";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Hizkuntz Anitz";s:11:"description";s:36:"Epigrafeak hizkuntz anitzetan onartu";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:11:"Multilangue";s:11:"description";s:44:"Support des sous-titres en plusieurs langues";s:10:"groupLabel";s:24:"Données suplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:55:"Supporta le didascalie degli oggetti in lingue multiple";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Daugiakalbiškumas";s:11:"description";s:51:"Elementų antraščių keliomis kalbomis palaikymas";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"Többnyelvűség";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Adat";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Meertalig";s:11:"description";s:47:"Ondersteund item bijschriften in meerdere talen";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Wielojęzykowość";s:11:"description";s:45:"Wspiera obsługę podpisów w wielu językach";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:15:"Višejezičnost";s:11:"description";s:44:"Podrška za natpise objekata na više jezika";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Multipla Språk";s:11:"description";s:41:"Stöd objektrukriker på multipla språk ";s:10:"groupLabel";s:17:"Extra information";}s:5:"th_TH";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"vi_VN";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"ÇokluDil";s:11:"description";s:43:"Öge başlıklarını Çokludil'de destekle";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:45:"Многоязыковая поддержка";s:11:"description";s:89:"Поддержка заголовков элементов на разных языках";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"多语言";s:11:"description";s:27:"支持多语言项目标题";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"多國語言";s:11:"description";s:33:"支援多國語言的項目說明";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"多言語";s:11:"description";s:57:"多言語のアイテムキャプションをサポート";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"MultiLanguage";s:11:"description";s:43:"Support item captions in multiple languages";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"watermark";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"watermark";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Watermerk";s:11:"description";s:22:"Watermerk vir u beelde";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:13:"Marca d'aigua";s:11:"description";s:41:"Aplicar les marques d'aigua a les imatges";s:10:"groupLabel";s:9:"Affichage";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Vodotisk";s:11:"description";s:31:"Aplikace vodotisků na obrázky";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Vandmærke";s:11:"description";s:33:"Sæt vandmærke på dine billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Wasserzeichen";s:11:"description";s:42:"Versehen Sie Ihre Bilder mit Wasserzeichen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Marcas de Agua";s:11:"description";s:37:"Añade marcas de agua a tus imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Marcas de Agua";s:11:"description";s:37:"Añade marcas de agua a tus imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Marcas de Agua";s:11:"description";s:37:"Añade marcas de agua a tus imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Ur-marka";s:11:"description";s:21:"Zure irudien ur-marka";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Filigrane";s:11:"description";s:38:"Appliquez des filigranes à vos images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Filigrana";s:11:"description";s:39:"Applica una filigrana alle tue immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Vízjel";s:11:"description";s:27:"Lásd el vízjellel képeid";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Watermerk";s:11:"description";s:25:"Watermerk uw afbeeldingen";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Znak wodny";s:11:"description";s:29:"Dodaje znaki wodne do zdjęć";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:19:"Marca d'água";s:11:"description";s:41:"Usar marca d'água nas suas imagens";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:35:"Aplica watermark tuturor imaginilor";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Vodeni žig";s:11:"description";s:40:"Dodavanje vodenih žigova na vaše slike";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:14:"Vattenstämpel";s:11:"description";s:26:"Vattenstämpla dina bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Filigran";s:11:"description";s:28:"Resimlerinizi Filigranlayın";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Водяные знаки";s:11:"description";s:96:"Делает наложение водяного знака на Ваши изображения";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"水印";s:11:"description";s:27:"为您的图片添加水印";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"浮水印";s:11:"description";s:30:"在你的圖片加上浮水印";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"무늬";s:11:"description";s:16:"사용할 무늬";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"透かし";s:11:"description";s:30:"画像に透かしを入れる";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Watermark";s:11:"description";s:21:"Watermark your images";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:19:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"panorama";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"panorama";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:8;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:54:"Besigtig breë jpeg/gif beelde in 'n java applet kyker";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:55:"Zobrazení širokých JPEG/GIF obrázků v java appletu";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:54:"Vis brede jpeg/gif billeder i en java-applet fremviser";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:63:"Breitformatige JPEG-/GIF-Bilder in einem Java Applet betrachten";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:66:"Ver las imágenes jpeg/gif panorámicas en un visor applet de java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:66:"Ver las imágenes jpeg/gif panorámicas en un visor applet de java";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:66:"Ver las imágenes jpeg/gif panorámicas en un visor applet de java";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:58:"Bistarazi jpeg/gif irudi handiak java applet ikustatzailea";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:60:"Visualiser les images larges JPEG / GIF dans une applet Java";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:67:"Visualizza immagini jpeg/gif ampie in un visualizzatore java applet";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:65:"Žiūrėti plačias jpeg/gif fotografijas java programos pagalba.";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:62:"Bekijk brede jpeg/gif afbeeldingen in een java applet weergave";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:85:"Pokazuje szerokie obrazy jpeg/gif w przeglądarce panoramicznych zdjęć (aplet java)";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:68:"Ver imagens jpeg/gif grandes em um visualizador feito em applet java";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:53:"Pregled širokih JPEG i GIF slika pomoću Java apleta";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"Visa breda jpeg/gif bilder i en javaapplet visare";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:16:"Панорама";s:11:"description";s:99:"Перегляд широких малюнків jpeg/gif за допомогою аплету java";s:10:"groupLabel";s:24:"Відображення";}s:5:"vi_VN";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:71:"Geniş jpeg/gif resimlerini java applet görüntüleyicide görüntüle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:16:"Панорама";s:11:"description";s:100:"Просмотр широких jpeg/gif изображений с помощью java аплета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"全景";s:11:"description";s:60:"在一个JAVA程序浏览器中查看宽幅面JPEG/GIF图片";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"全景圖片";s:11:"description";s:58:"在一個 Java 瀏覽程式中觀賞寬角 JPEG/GIF 圖片";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"파노라마";s:11:"description";s:94:"자바 애플릿을 이용해 JPEG또는 GIF 이미지 파일을 와이드로 보여줍니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"パノラマ";s:11:"description";s:62:"ワイドなJPEG/GIF画像をJava applet ビューワで見る";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:8:"Panorama";s:11:"description";s:49:"View wide jpeg/gif images in a java applet viewer";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:20:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"webcam";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"webcam";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:6:"WebCam";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:64:"Ondersteuning vir periodies bygewerkte beelde soos vir 'n webcam";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"Webkamera";s:11:"description";s:66:"Podpora pravidelně aktualizovaných obrázků, např. z webkamery";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:64:"Tillad billeder der regelmæssigt opdateres fra f.eks. et webcam";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:73:"Unterstützung für sich periodisch ändernde Bilder wie z.B. eine Webcam";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Cámara Web";s:11:"description";s:83:"Soporte de imágenes actualizadas de forma periódica, cómo las de una cámara web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Cámara Web";s:11:"description";s:83:"Soporte de imágenes actualizadas de forma periódica, cómo las de una cámara web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Cámara Web";s:11:"description";s:83:"Soporte de imágenes actualizadas de forma periódica, cómo las de una cámara web";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"WEbCam";s:11:"description";s:57:"Onartu web kamerenak bezala aldiro aldatzen diren irudiak";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:80:"Prise en charge des images mises régulièrement à jour comme celles des webcam";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:59:"Supporta immagini periodicamente aggiornate come una webcam";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:71:"Ondersteuning voor periodiek bijgewerkte afbeeldingen, zoals een webcam";s:10:"groupLabel";s:9:"Importeer";}s:5:"no_NO";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:18:"Kamera internetowa";s:11:"description";s:60:"Umożliwia czasowe ładowanie obrazów z podanego adresu URL";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"WebKamera";s:11:"description";s:71:"Podrška za periodično ažurirane izvore slika, kao što je web kamera";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"Webbkamera";s:11:"description";s:64:"Understödjer periodiskt uppdaterade bilder t ex från en webcam";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:60:"Periyodik olarak webcam gibi güncellenen resimleri destekle";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:16:"Web-камера";s:11:"description";s:153:"Обеспечивает поддержку переодически обновляемых изображений, например, с web-камеры";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"网络摄像头";s:11:"description";s:48:"支持类似网络摄像头的周期更新图片";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"網路攝影機";s:11:"description";s:51:"支持如網路攝影機之類的定期更新圖片";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:72:"webcamのような一定時間毎に更新される画像のサポート";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"WebCam";s:11:"description";s:49:"Support periodically updated images like a webcam";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:17:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"albumselect";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"albumselect";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Albumkieser";s:11:"description";s:52:"Spring na 'n album deur 'n keuselys of boomstruktuur";s:10:"groupLabel";s:6:"Blokke";}s:5:"ca_ES";a:3:{s:4:"name";s:18:"Selecció d'Àlbum";s:11:"description";s:90:"Anar directament a qualsevol àlbum fent servir un quadre de selecció o una vista d'arbre";s:10:"groupLabel";s:5:"Blocs";}s:5:"cs_CZ";a:3:{s:4:"name";s:12:"Výběr alba";s:11:"description";s:43:"Výběr alb pomocí select boxu nebo stromu";s:10:"groupLabel";s:5:"Bloky";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Albumvælger";s:11:"description";s:73:"Hop direkte til ethvert album ved at bruge en liste eller en træstruktur";s:10:"groupLabel";s:6:"Blokke";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Albumauswahl";s:11:"description";s:76:"Mittels Auswahlliste oder Baumansicht direkt zu den einzelnen Alben springen";s:10:"groupLabel";s:7:"Blöcke";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Albumi Valik";s:11:"description";s:82:"Hüppa otse suvalise albumi juurde, kasutades selleks rippmenüüd või puu-vaadet";s:10:"groupLabel";s:6:"Blokid";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Album Hautatzea";s:11:"description";s:66:"Hautatze kutxa edo zuhaitz ikuspegia erabiliz album-era salto egin";s:10:"groupLabel";s:7:"Blokeak";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Sélection d'album";s:11:"description";s:87:"Aller directement vers n'importe quel album en utilisant un menu déroulant ou un arbre";s:10:"groupLabel";s:5:"Blocs";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Selezione Album";s:11:"description";s:83:"Salta direttamente a un album usando una casella di selezione o una vista ad albero";s:10:"groupLabel";s:7:"Blocchi";}s:5:"lv_LV";a:3:{s:4:"name";s:19:"Albumu atlasīšana";s:11:"description";s:70:"Pāriet tieši uz jebkuru albumu lietojot izvēles logu vai koka skatu";s:10:"groupLabel";s:5:"Bloki";}s:5:"lt_LT";a:3:{s:4:"name";s:19:"Albumo pasirinkimas";s:11:"description";s:69:"Peršokti tiesiai į bet kurį albumą, sąrašo arba medžio pagalba";s:10:"groupLabel";s:6:"Blokai";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Albumkiválasztás";s:11:"description";s:90:"Ugrás közvetlenül bármely albumra egy választómező vagy faszerkezet segítségével";s:10:"groupLabel";s:7:"Blokkok";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Albumkiezer";s:11:"description";s:57:"Open direct een album via een keuzelijst of boomstructuur";s:10:"groupLabel";s:7:"Blokken";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Wybieranie albumu";s:11:"description";s:79:"Przejdź bezpośrednio do danego albumu przy pomocy rozwijanej listy lub drzewa";s:10:"groupLabel";s:5:"Bloki";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Selecione o álbum";s:11:"description";s:94:"Saltar diretamente para qualquer álgum usando uma caixa de seleção ou uma visão em árvore";s:10:"groupLabel";s:6:"Blocos";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Selecteaza Album";s:11:"description";s:81:"Sari direct la orice album folosind o casuta de selectie sau vederea arborescenta";s:10:"groupLabel";s:7:"Blocuri";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Birač albuma";s:11:"description";s:68:"Direktan skok do bilo kog albuma pomoću okvira sa listom ili stabla";s:10:"groupLabel";s:7:"Blokovi";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Albumval";s:11:"description";s:66:"Hoppa direct till album m.h.a rullgardinslista-lista eller trädvy";s:10:"groupLabel";s:5:"Block";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Chọn Album";s:11:"description";s:96:"Nhảy trực tiếp đến một album bằng hộp chọn lựa hoặc chọn trên cây album";s:10:"groupLabel";s:5:"Hộp";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Albüm Seç";s:11:"description";s:84:"Seçim kutusu ya da ağaç görüntüsü kullanarak herhangi bir albüme geçiş yap";s:10:"groupLabel";s:7:"Bloklar";}s:5:"bg_BG";a:3:{s:4:"name";s:27:"Изберете Албум";s:11:"description";s:67:"Директно прескачане от албум в албум";s:10:"groupLabel";s:14:"Блокове";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Выбор Альбома";s:11:"description";s:167:"Быстрый переход к любому из альбомов с помощью выпадающего меню или иерархического дерева.";s:10:"groupLabel";s:10:"Блоки";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"相册选择";s:11:"description";s:42:"使用选择框直接跳转到任意相册";s:10:"groupLabel";s:9:"功能块";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"相簿選擇";s:11:"description";s:51:"用選單或樹狀顯示來直接跳到任意相簿";s:10:"groupLabel";s:6:"區塊";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"사진첩 선택기";s:11:"description";s:100:"어느 사진첩으로던 선택 상자 또는 구조 보기를 이용해 곧바로 이동합니다.";s:10:"groupLabel";s:6:"Blocks";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"アルバムセレクト";s:11:"description";s:84:"セレクトボックスかツリービューを使って直接アルバムへ飛ぶ";s:10:"groupLabel";s:12:"ブロック";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"he_IL";a:3:{s:4:"name";s:21:"בחירת אלבום";s:11:"description";s:84:"קפוץ ישירות לכל אלבום באמצעות תיבה או עץ בחירה";s:10:"groupLabel";s:12:"בלוקים";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}}s:9:"languages";a:2:{i:10212;a:24:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:35:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"picasa";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"picasa";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:30:"Import do Picasa 2 XML-Exporty";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:38:"Importfilter für Picasa 2 XML-Exporte";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:37:"Importar para XML-Exports de Picasa 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:37:"Importar para XML-Exports de Picasa 2";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:37:"Importar para XML-Exports de Picasa 2";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:33:"Import des export XML de Picasa 2";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Importa da Picasa 2 XML-Exports";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:41:"Importas programos Picasa 2 XML-Eksportui";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:29:"Importeer Picasa2 XML-exports";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:36:"Import albumów i zdjęć z Picasa 2";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:32:"Import för Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:2:"Al";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:47:"Импорт из Picasa 2 XML экспорта";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:29:"从 Picasa 2 XML 输出导入";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:29:"從 Picasa 2 XML 輸出引進";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"피카사";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:12:"가져오기";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Picasa";s:11:"description";s:31:"Import for Picasa 2 XML-Exports";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:2:{i:10212;a:12:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"squarethumb";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"squarethumb";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:26:"Vierkantige Duimnaelsketse";s:11:"description";s:45:"Maak alle duimnaels sodat hulle vierkantig is";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:20:"Čtvercové náhledy";s:11:"description";s:55:"Vytváření všech náhledů tak, aby byly čtvercové";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:27:"Quadratische Vorschaubilder";s:11:"description";s:52:"Alle Vorschaubilder auf quadratische Größe bringen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Miniaturas Cuadradas";s:11:"description";s:50:"Hacer todas las miniaturas para que sean cuadradas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Miniaturas Cuadradas";s:11:"description";s:50:"Hacer todas las miniaturas para que sean cuadradas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Miniaturas Cuadradas";s:11:"description";s:50:"Hacer todas las miniaturas para que sean cuadradas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:19:"Argazkitxo Koadroak";s:11:"description";s:33:"Argazkitxoak koadro batekin sortu";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Vignettes carrées";s:11:"description";s:71:"Construire toutes les vignettes de sorte à ce qu'elles soient carrées";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Anteprime Quadrate";s:11:"description";s:46:"Genera le anteprime in modo che siano quadrate";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:20:"Vierkante Miniaturen";s:11:"description";s:43:"Bouw alle miniaturen zodat ze vierkant zijn";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:21:"Kwadratowe miniaturki";s:11:"description";s:28:"Tworzy kwadratowe miniaturki";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:26:"Kvadratni umanjeni prikazi";s:11:"description";s:39:"Pravljenje kvadratnih umanjenih prikaza";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:25:"Fyrkantiga Miniatyrbilder";s:11:"description";s:58:"Generera samtliga miniatyrbilder så att de är fytkantiga";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:15:"Kare Thumbnails";s:11:"description";s:44:"Tüm thumbnailları kare olarak yapılandır";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Квадратные Макеты";s:11:"description";s:129:"Переделывает все макеты таким образом, что они становятся квадратными";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"方形缩略图";s:11:"description";s:30:"裁切所有缩略图为方形";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"方形縮略圖";s:11:"description";s:30:"把所有縮略圖建為方形";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"正方形サムネイル";s:11:"description";s:57:"正方形になるようにサムネイルをせいせい";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Square Thumbnails";s:11:"description";s:39:"Build all thumbnails so they are square";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:18:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"de";i:10212;s:5:"en_GB";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"password";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"password";s:7:"version";s:5:"1.0.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15352";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:21:"Zaheslované položky";s:11:"description";s:60:"Přiřadí hesla pro zobrazení určitých alb nebo položek";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:18:"Kodeords-elementer";s:11:"description";s:63:"Tildel kodeord for at kunne se bestemte albummer eller objekter";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:17:"Passwort-Elemente";s:11:"description";s:75:"Vergeben Sie Passwörter für das Betrachten bestimmter Alben oder Elemente";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:25:"Elementos con Contraseña";s:11:"description";s:64:"Asignar contraseñas para ver elementos o álbumes en particular";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:25:"Elementos con Contraseña";s:11:"description";s:64:"Asignar contraseñas para ver elementos o álbumes en particular";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:25:"Elementos con Contraseña";s:11:"description";s:64:"Asignar contraseñas para ver elementos o álbumes en particular";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:22:"Pasahitzdun Elementuak";s:11:"description";s:55:"Banakako album edo elementuak ikusteko pasahitza ezarri";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:29:"Mots de passe pour éléments";s:11:"description";s:70:"Assigner des mots de passe pour afficher certains albums ou éléments";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Oggetti Password";s:11:"description";s:66:"Assegna una password per visualizzare determinati album od oggetti";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"wachtwoord items";s:11:"description";s:61:"wachtwoord beveiliging voor specifieke albums of afbeeldingen";s:10:"groupLabel";s:9:"Laat zien";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Hasła pozycji";s:11:"description";s:86:"Ustawia hasła zabezpieczające przed oglądaniem poszczególnych albumów lub pozycji";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:18:"Articole cu parola";s:11:"description";s:61:"Alege parole pentru vizualizarea anumitor albume sau articole";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Lösenordsskydda";s:11:"description";s:49:"Tilldela lösenord för skydd av album och objekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"Şifreli Ögeler";s:11:"description";s:68:"Bazı albümlerin ya da ögelerin görüntülenmesi için şifre ata";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:27:"Защита Паролем";s:11:"description";s:110:"Защита паролем просмотра конкретных альбомов или элементов";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"密码保护项目";s:11:"description";s:48:"指定观看特定相簿或项目所需的密码";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:18:"密碼保護項目";s:11:"description";s:48:"指定觀看特定相簿或項目所需的密碼";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"아이템 열쇠글";s:11:"description";s:62:"사진첩또는 아이템이 암호를 걸어 보호합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"パスワードアイテム";s:11:"description";s:84:"特定のアルバムやアイテムを見るためのパスワードを設定する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Password Items";s:11:"description";s:55:"Assign passwords for viewing particular albums or items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:13:{s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15352;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"comment";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"comment";s:7:"version";s:7:"1.1.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15508";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Kommentaar";s:11:"description";s:27:"Gebruiker kommentaarstelsel";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Comentaris";s:11:"description";s:34:"Sistema de comentaris dels usuaris";s:10:"groupLabel";s:17:"Informació Extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Komentáře";s:11:"description";s:37:"Systém pro uživatelské komentáře";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:26:"Bruger kommenteringssystem";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kommentare";s:11:"description";s:31:"System für Benutzer-Kommentare";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:11:"Datos extra";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Kommentaarid";s:11:"description";s:35:"Kasutajate kommenteerimise süsteem";s:10:"groupLabel";s:13:"Ekstra-andmed";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Iruzkinak";s:11:"description";s:28:"Erabiltzaile iruzkin sistema";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Commentaires";s:11:"description";s:40:"Système de commentaire des utilisateurs";s:10:"groupLabel";s:21:"Extraire les données";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Teachtaireachtaí";s:11:"description";s:22:"Córas teachtaireachta";s:10:"groupLabel";s:12:"Sonraí eile";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Σχόλια";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:39:"Επιπρόσθετα Στοιχεία";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Commenti";s:11:"description";s:51:"Sistema per inserire commenti da parte degli utenti";s:10:"groupLabel";s:10:"Dati extra";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Komentāri";s:11:"description";s:30:"Lietotāju komentāru sistēma";s:10:"groupLabel";s:11:"Ekstra dati";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Kometarai";s:11:"description";s:29:"Vartotojo komentavimo sistema";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Megjegyzések";s:11:"description";s:47:"Felhasználói megjegyzéshozzáfűző rendszer";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Reacties";s:11:"description";s:25:"Bezoekers reactie systeem";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Komentarze";s:11:"description";s:23:"Komentarze użytkownika";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Comentários";s:11:"description";s:41:"Sistema de comentário de usuários";s:10:"groupLabel";s:16:"Dados Adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Comentários";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Comentarii";s:11:"description";s:43:"Sistem de introducere comentarii utilizator";s:10:"groupLabel";s:10:"Extra date";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Komentari";s:11:"description";s:29:"Sistem korisničkih komentara";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Kommentit";s:11:"description";s:36:"Käyttäjäkommenttien järjestelmä";s:10:"groupLabel";s:11:"Lisätiedot";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:25:"Användarkommentarssystem";s:10:"groupLabel";s:17:"Extra Information";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Коментарі";s:11:"description";s:39:"Система коментування";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Bình luận";s:11:"description";s:25:"Hệ thống bình luận";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Yorumlar";s:11:"description";s:25:"Kullanıcı yorum sistemi";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Коментари";s:11:"description";s:65:"Система за потребителски коментари";s:10:"groupLabel";s:35:"Допълнителни Данни";}s:5:"ru_RU";a:3:{s:4:"name";s:22:"Комментарии";s:11:"description";s:74:"Добавление комментариев пользователями";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"评论";s:11:"description";s:18:"用户评论系统";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"回應";s:11:"description";s:21:"使用者回應系統";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"댓글";s:11:"description";s:50:"사용자가 댓글을 달수 있도록 합니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"コメント";s:11:"description";s:33:"ユーザコメントシステム";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"تعليقات";s:11:"description";s:55:"نظام كتابة التعليقات للمستخدم";s:10:"groupLabel";s:27:"معلومات إضافية";}s:5:"he_IL";a:3:{s:4:"name";s:12:"תגובות";s:11:"description";s:40:"מערכת תגובות המשתמשים";s:10:"groupLabel";s:25:"נתונים נוספים";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"نظرات";s:11:"description";s:36:"سیستم نظرات کاربران";s:10:"groupLabel";s:28:"داده های تکمیلی";}}s:9:"languages";a:2:{i:10212;a:33:{s:2:"af";i:10212;s:2:"ar";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:5:"es_MX";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"he";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15508;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16475";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fa";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16475";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16475";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"captcha";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"captcha";s:7:"version";s:5:"1.1.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:78:"Voorkom misbruik deur skriprobots deur gebruik te maak van visuele bevestiging";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:84:"Preveu l'abús d'atacs informàtics amb una entrada que requereix comprensió visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:84:"Zabraňuje zneužití roboty (programy) zaváděním vizuálních kontrol (obrázky)";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:101:"Forhindrer misbrug af automatiserede robotter ved at kræve inddata der kræver en visuel forståelse";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:145:"Beugt Missbrauch vor indem mittels Bildern, zu deren Erkennung visuelle Auffassungsgabe benötigt wird, automatisierte Bots ausgeschlossen werden";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Previene el abuso por disuasión de bots automáticos con una entrada que requiere comprensión visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Previene el abuso por disuasión de bots automáticos con una entrada que requiere comprensión visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Previene el abuso por disuasión de bots automáticos con una entrada que requiere comprensión visual";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:102:"Hoiab ära kuritarvitamise automaatsete robotite poolt, nõudes visuaalset arusaamist vajavat sisendit";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:72:"Errobot automatizatuen erasoak ekiditeko konpresio bisuala erabiltzen da";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:110:"Empêcher les abus de robots malveillants en ajoutant des saisies qui nécessitent une compréhension visuelle";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:97:"Previene gli abusi ostacolando i bot automatici con input che necessitano di comprensione visuale";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:117:"Voorkomt misbruik door geautomatiseerde computerprogramma's te hinderen met invoer dat visuele interpretatie vereist.";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:87:"Zabezpiecza przed automatycznymi botami, poprzez wymuszenie wprowadzenia kodu z obrazka";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:65:"Otežavanje automatizovanih napada sistemom vizuelnog razumevanja";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:104:"Förhindrar missbruk från automatiserade program som kommer ha svårt för att tolka texten automatiskt";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:54:"Система за Разпознаване (Captcha)";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:35:"Тест Тьюринга (Captcha)";s:11:"description";s:262:"Предотвращает посещения роботами-автоматическими регистраторами благодаря специальному вводу, требующего визуального осмысления человеком";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:54:"利用可视化组件防止自动化机器人滥用。";s:10:"groupLabel";s:6:"图库";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:63:"利用需要人工目視的輸入來阻止自動程式的濫用";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:99:"가입시 인증 번호를 입력하게 하여 봇이나 스패머등의 가입을 차단합니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:93:"視覚による確認を要求することで、自動的なボットによる悪用を防ぐ";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Captcha";s:11:"description";s:88:"Prevents abuse by deterring automated bots with input that requires visual comprehension";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:20:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"ffmpeg";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"ffmpeg";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:46:"Ffmpeg hulpmiddel vir die verwerking van films";s:10:"groupLabel";s:20:"Grafiese Hulpmiddele";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:16:"Eines Gràfiques";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"ffmpeg";s:11:"description";s:41:"Grafický nástroj pro zpracování videa";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:35:"Et værktøj til behandling af film";s:10:"groupLabel";s:20:"Grafiske værktøjer";}s:5:"de_DE";a:3:{s:4:"name";s:6:"FFMPEG";s:11:"description";s:52:"Eine Sammlung von Werkzeugen, um Filme zu bearbeiten";s:10:"groupLabel";s:16:"Grafik-Werkzeuge";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:49:"Un juego de herramientas para procesar películas";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:49:"Un juego de herramientas para procesar películas";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:49:"Un juego de herramientas para procesar películas";s:10:"groupLabel";s:22:"Herramientas Gráficas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:32:"Filmak prozesatzeko tresna-jokoa";s:10:"groupLabel";s:21:"Tresna-joko Grafikoak";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"FFMPEG";s:11:"description";s:49:"Boîte à outils pour prendre en charge les films";s:10:"groupLabel";s:26:"Boîtes à outils graphics";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:70:"Is é seo bosca uirlisí is féidir a úsáid scannáin a phróiseáil";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"it_IT";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:41:"Un set di strumenti per elaborare filmati";s:10:"groupLabel";s:24:"Set di Strumenti Grafici";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:37:"Įrankių rinkinys filmų apdorojimui";s:10:"groupLabel";s:28:"Grafikos įrankių rinkiniai";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:20:"Grafikus eszköztár";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:40:"Ffmpeg toolkit voor verwerking van films";s:10:"groupLabel";s:18:"Grafische Toolkits";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:45:"Narzędzie graficzne do przetwarzania filmów";s:10:"groupLabel";s:20:"Narzędzia graficzne";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:19:"Instrumente Grafice";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:19:"Grafické nástroje";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:21:"Alatka obradu filmova";s:10:"groupLabel";s:16:"Grafičke alatke";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:32:"Työkalut elokuvien käsittelyyn";s:10:"groupLabel";s:19:"Graafiset Työkalut";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:48:"En verktygsuppsättning för att bearbeta filmer";s:10:"groupLabel";s:28:"Grafisk verktygsuppsättning";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:39:"Графічні Інструменти";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:56:"Một bộ công cụ để xử lý các tập tin phim";s:10:"groupLabel";s:27:"Bộ công cụ đồ họa";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:37:"Filmleri işlemek için araçtakımı";s:10:"groupLabel";s:20:"Grafik Araçtakımı";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:70:"Инструмент для работы с видеороликами";s:10:"groupLabel";s:45:"Графические Инструменты";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"FFMPEG";s:11:"description";s:21:"处理电影的工具";s:10:"groupLabel";s:12:"图形工具";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:21:"處理影片的工具";s:10:"groupLabel";s:12:"圖形工具";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:46:"동영상을 처리를 하는 도구입니다.";s:10:"groupLabel";s:16:"그래픽 툴킷";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"ffmpeg";s:11:"description";s:39:"動画を処理するツールキット";s:10:"groupLabel";s:36:"グラフィックツールキット";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Ffmpeg";s:11:"description";s:31:"A toolkit for processing movies";s:10:"groupLabel";s:17:"Graphics Toolkits";}}s:9:"languages";a:2:{i:10212;a:23:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:32:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:3:"rss";a:3:{s:6:"header";a:6:{s:2:"id";s:3:"rss";s:7:"version";s:5:"1.1.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:1;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"en_GB";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"af_ZA";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ca_ES";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"cs_CZ";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"da_DK";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:7:"Eksport";}s:5:"de_DE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:11:"Exportieren";}s:5:"es_ES";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_MX";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_AR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"et_EE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"eu_ES";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"fr_FR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exporter";}s:5:"ga_IE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"el_GR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"is_IS";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"it_IT";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:7:"Esporta";}s:5:"lv_LV";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"lt_LT";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"hu_HU";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"nl_NL";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:9:"Exporteer";}s:5:"no_NO";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"pl_PL";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"pt_BR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:8:"Exportar";}s:5:"pt_PT";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ro_RO";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sk_SK";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sl_SI";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sr_YU";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"fi_FI";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"sv_SE";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:9:"Exportera";}s:5:"th_TH";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"uk_UA";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:11:"Exportieren";}s:5:"vi_VN";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"tr_TR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:7:"İhraç";}s:5:"bg_BG";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ru_RU";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:14:"Экспорт";}s:5:"zh_CN";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"导出";}s:5:"zh_TW";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"滙出";}s:5:"ko_KR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"ja_JP";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:18:"エクスポート";}s:5:"ar_SA";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}s:5:"he_IL";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:10:"ייצוא";}s:5:"fa_IR";a:3:{s:4:"name";s:3:"RSS";s:11:"description";s:3:"RSS";s:10:"groupLabel";s:6:"Export";}}s:9:"languages";a:2:{i:10212;a:13:{s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:15:"randomhighlight";a:3:{s:6:"header";a:6:{s:2:"id";s:15:"randomhighlight";s:7:"version";s:7:"1.0.6.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:28:"Willekeurige Albumuitligting";s:11:"description";s:43:"Verander periodiek die uitligting van album";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:29:"Destacar Aleatòriament";s:11:"description";s:52:"Canviar periódicament l'álbum destacat";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:23:"Náhodné zvýraznění";s:11:"description";s:46:"Pravidelná změna zvýrazněné položky alba";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:30:"Tilfældigt Fremhævet Billede";s:11:"description";s:51:"Periodisk ændring af albummets fremhævede billede";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:21:"Zufälliges Titelbild";s:11:"description";s:42:"Das Titelbild der Alben periodisch ändern";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:23:"Destacar Aleatoriamente";s:11:"description";s:53:"Cambiar periodicamente el objeto destacado del álbum";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:23:"Destacar Aleatoriamente";s:11:"description";s:53:"Cambiar periodicamente el objeto destacado del álbum";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:23:"Destacar Aleatoriamente";s:11:"description";s:53:"Cambiar periodicamente el objeto destacado del álbum";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Ausazko Nabarmentzea";s:11:"description";s:35:"Aldiro aldatu nabarmendutako albuma";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:25:"Vignette-titre aléatoire";s:11:"description";s:52:"Changer périodiquement la vignette-titre de l'album";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:17:"Copertina Casuale";s:11:"description";s:45:"Cambia periodicamente la copertina dell'album";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:28:"Willekeurige Albumafbeelding";s:11:"description";s:37:"Verander periodiek de albumafbeelding";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:20:"Losowa reprezentacja";s:11:"description";s:41:"Okresowo zmienia reprezentacje dla albumu";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:23:"Destacar aleatoriamente";s:11:"description";s:47:"Periodicamente mudar o destaque do álbum";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:18:"Slučajna naslovna";s:11:"description";s:41:"Periodična promena naslovne slike albuma";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:27:"Slumpmässig Förgrundsbild";s:11:"description";s:38:"Byt albumets förgrundsbild periodiskt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:21:"Rastgele Öngösterim";s:11:"description";s:49:"Albüm öngösterimini periodik olarak değiştir";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:29:"Случайный макет";s:11:"description";s:90:"Периодическое изменение обложки (макета) альбома";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"随机标记精华";s:11:"description";s:27:"周期性变更精华相册";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"隨機封面";s:11:"description";s:27:"週期性變更相簿封面";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"ランダムハイライト";s:11:"description";s:63:"アルバムのハイライトを一定時間毎に変更する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:16:"Random Highlight";s:11:"description";s:39:"Periodically change the album highlight";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:20:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"photoaccess";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"photoaccess";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:37:"Modul tisku fotografií na PhotoWorks";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"de_DE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:27:"PhotoWorks Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:41:"Módulo de Impresión de Fotos PhotoWorks";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:41:"Módulo de Impresión de Fotos PhotoWorks";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:41:"Módulo de Impresión de Fotos PhotoWorks";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:26:"Impressions via PhotoWorks";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:36:"Modulo di Stampa Foto con PhotoWorks";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:29:"PhotoWorks Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:28:"Moduł drukowania PhotoWorks";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:6:"Kauppa";}s:5:"sv_SE";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:30:"PhotoAccess Fotoutskriftsmodul";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:30:"PhotoWoks Foto Baskı Modülü";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:62:"Модуль печати фотографий на PhotoWorks";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:30:"PhotoAccess 照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:29:"PhotoWorks 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:31:"PhotoWorks 사진 출력 모듈";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:38:"PhotoWorks 写真印刷モジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"PhotoWorks";s:11:"description";s:32:"PhotoWorks Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:2:{i:10212;a:17:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"de";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:20:{s:2:"af";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:5:"icons";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"icons";s:7:"version";s:5:"1.1.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:5:"Ikone";s:11:"description";s:25:"Vertoon ikone vir skakels";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Icones";s:11:"description";s:30:"Mostrar icones per a enllaços";s:10:"groupLabel";s:7:"Mostrar";}s:5:"cs_CZ";a:3:{s:4:"name";s:5:"Ikony";s:11:"description";s:26:"Zobrazení ikon pro odkazy";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Ikoner";s:11:"description";s:20:"Vis ikoner for links";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:20:"Symbol-Paket Browser";s:11:"description";s:27:"Zeige Symbole für Verweise";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Iconos";s:11:"description";s:29:"Mostrar iconos en los enlaces";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Iconos";s:11:"description";s:29:"Mostrar iconos en los enlaces";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Iconos";s:11:"description";s:29:"Mostrar iconos en los enlaces";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Ikonoak";s:11:"description";s:29:"Loturentzat ikonoak bistarazi";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Icônes";s:11:"description";s:34:"Affichage d'icônes pour les liens";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Icone";s:11:"description";s:28:"Visualizza icone per i links";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Ikonos";s:11:"description";s:22:"Rodyti nuorodų ikonas";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"Ikonok";s:11:"description";s:28:"Ikonok mutatása a linkekhez";s:10:"groupLabel";s:9:"Kijelzés";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"Iconen";s:11:"description";s:27:"Iconen weergeven voor links";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Ikony";s:11:"description";s:29:"Wyświetla ikony przy linkach";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Ícones";s:11:"description";s:26:"Mostrar ícones para links";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Iconite";s:11:"description";s:32:"Afiseaza iconite pentru link-uri";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Ikone";s:11:"description";s:23:"Prikaz ikona za linkove";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Ikonit";s:11:"description";s:24:"Näytä ikonit linkeille";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Ikoner";s:11:"description";s:24:"Visa ikoner för länkar";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"İkonlar";s:11:"description";s:36:"Linkler için ikonları görüntüle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Икони";s:11:"description";s:63:"Показване на икони до всяка връзка";s:10:"groupLabel";s:14:"Дисплей";}s:5:"ru_RU";a:3:{s:4:"name";s:12:"Иконки";s:11:"description";s:67:"Отображение иконок для ссылок в меню";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"图标";s:11:"description";s:24:"在链接上显示图标";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"小圖像";s:11:"description";s:27:"在鏈接上顯示小圖像";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:36:"연결에 아이콘을 보입니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"アイコン";s:11:"description";s:51:"リンクに対してアイコンを表示します";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:5:"Icons";s:11:"description";s:23:"Display icons for links";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:23:{s:2:"af";i:10212;s:2:"bg";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"quotas";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"quotas";s:7:"version";s:7:"1.1.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15448";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"Kwotas";s:11:"description";s:26:"Gebruiker/Groep Skyfkwotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"Quotes";s:11:"description";s:26:"Usuari/Grup Quotes de Disc";s:10:"groupLabel";s:7:"Gallery";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Kvóty";s:11:"description";s:38:"Diskové kvóty pro uživatele/skupiny";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:6:"Kvoter";s:11:"description";s:24:"Bruger/Gruppe Diskkvoter";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:13:"Höchstquoten";s:11:"description";s:51:"Festplatten-Höchstquoten für Benutzer und Gruppen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:6:"Cuotas";s:11:"description";s:32:"Cuotas de Disco de Usuario/Grupo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:6:"Cuotas";s:11:"description";s:32:"Cuotas de Disco de Usuario/Grupo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:6:"Cuotas";s:11:"description";s:32:"Cuotas de Disco de Usuario/Grupo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Kvoodid";s:11:"description";s:27:"Kasutaja/Grupi KettaKvoodid";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"Kuotak";s:11:"description";s:30:"Erabiltzaile/Talde Disko Kuota";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:53:"Quotas de disque pour les utilisateurs et les groupes";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:5:"Quote";s:11:"description";s:39:"Quote di spazio disco per Utenti/Gruppi";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:8:"Kvóták";s:11:"description";s:31:"Felhasználói/csoport kvóták";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Quota's";s:11:"description";s:30:"Gebruiker/Groep Schijf Quota's";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"Limity";s:11:"description";s:49:"Limity przestrzeni dyskowej użytkowników i grup";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Limita de spatiu";s:11:"description";s:36:"Limite de spatiu per utilizator/grup";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Kvote";s:11:"description";s:31:"Korisničke i grupne disk kvote";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Kvoter";s:11:"description";s:27:"Användare/Grupp Diskkvoter";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:4:"Kota";s:11:"description";s:31:"Kullanıcı/Grup Disk Kotaları";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:10:"Квоты";s:11:"description";s:72:"Дисковые квоты для Пользователей/Групп";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"空间配额";s:11:"description";s:30:"用户/成员组空间配额";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"磁碟配額";s:11:"description";s:30:"用戶/成員組磁碟配額";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:16:"할당량 관리";s:11:"description";s:46:"사용자및 동아리 디스크 용량 분배";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"クォータ";s:11:"description";s:47:"ユーザ/グループ ディスククォータ";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"Quotas";s:11:"description";s:22:"User/Group Disk Quotas";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:2:{i:10212;a:18:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15448;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16635";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"thumbpage";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"thumbpage";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Thumbnail";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Duimnaelbladsy";s:11:"description";s:67:"Kies 'n bladsy/raam van 'n multiblad lêer of film vir die duimnael";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Stránka náhledu";s:11:"description";s:68:"Výběr stránky nebo snímku pro náhled vícestránkového souboru";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Miniature side";s:11:"description";s:66:"Vælg side/ramme fra en multi-siders fil eller film til miniaturen";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:18:"Vorschaubild-Seite";s:11:"description";s:106:"Wählen Sie die Seite eines mehrseitigen Bildes oder das Einzelbild eines Films für das Vorschaubild aus.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Miniatura de Página";s:11:"description";s:83:"Seleccionar página/cuadro de un archivo multipágina o película para la miniatura";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:20:"Argazkitxo Orrialdea";s:11:"description";s:75:"Hautatu orri/markoa orri-anitzeko fitxategi edo filmetik argazkitxoarentzat";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Page vignette";s:11:"description";s:80:"Sélection d'une page ou image d'un fichier multipage ou vidéo pour la vignette";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Pagina Anteprime";s:11:"description";s:78:"Seleziona una pagina/frame da un file multipagina o un filmato per l'anteprima";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Miniatuurpagina";s:11:"description";s:80:"Selecteer een pagina/frame van een multipagina bestand of film voor de miniatuur";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Strona miniaturek";s:11:"description";s:75:"Wybierz stronę/klatkę z wielostronicowego pliku lub filmu na miniaturkę.";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:23:"Pagina cu thumbnail-uri";s:11:"description";s:85:"Selecteaza pagina/cadrul dintr-un fisier multi-pagina sau film pentru acest thumbnail";s:10:"groupLabel";s:12:"Vizualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:26:"Umanjenog prikaz sa strane";s:11:"description";s:81:"Izbor strane ili sličice za umanjen prikaz iz višestranične datoteke ili filma";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:16:"Miniatyrbildsida";s:11:"description";s:66:"Välj sida/ram från en fil med multipla sidor för miniatyrbilden";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:18:"Thumbnail Sayfası";s:11:"description";s:72:"Multisayfa dosyasından sayfa/çerceve ya da thumbnail için film seçin";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:32:"Макеты из Страниц";s:11:"description";s:180:"Выбор страницы/кадра из многостраничного файла или видеоролика для отображения в качестве макета";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"缩略图页";s:11:"description";s:55:"在多页文件或电影中选择页/帧作为缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"縮略圖頁";s:11:"description";s:63:"在多頁檔案或影片中選擇一頁或一格作為縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"サムネイルページ";s:11:"description";s:126:"multipageファイルか動画から、サムネイルにするページもしくはフレームを選択してください。";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Thumbnail Page";s:11:"description";s:66:"Select page/frame from a multipage file or movie for the thumbnail";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:2:{i:10212;a:18:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"zipcart";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"zipcart";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:33:"Download cart items in a zip file";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Zip Aflaai";s:11:"description";s:40:"Laai items in die mandjie as ziplêer af";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:15:"Descarregar Zip";s:11:"description";s:55:"Descarregar els elements de la cistella en un arxiu Zip";s:10:"groupLabel";s:7:"Comerç";}s:5:"cs_CZ";a:3:{s:4:"name";s:25:"Stahování v ZIP souboru";s:11:"description";s:43:"Stahování položek košíku v ZIP souboru";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:42:"Download elementerne i kurven i en zip fil";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:12:"ZIP-Download";s:11:"description";s:64:"Laden Sie alle Ihre gesammelten Elemente als ZIP-Datei herunter.";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:13:"Descargar Zip";s:11:"description";s:53:"Descargar los elementos del carrito en un archivo Zip";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:13:"Descargar Zip";s:11:"description";s:53:"Descargar los elementos del carrito en un archivo Zip";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Descargar Zip";s:11:"description";s:53:"Descargar los elementos del carrito en un archivo Zip";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:19:"Tõmba Zip'ina Alla";s:11:"description";s:40:"Tõmba Korvis olevad pildid Zip'ina Alla";s:10:"groupLabel";s:8:"Kommerts";}s:5:"eu_ES";a:3:{s:4:"name";s:12:"ZIP Deskarga";s:11:"description";s:51:"Saskiko elementuak zip fitxategi batetan deskargatu";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:20:"Télécharger en ZIP";s:11:"description";s:63:"Télécharger le contenu du panier sous forme d'une archive ZIP";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:47:"Scarica gli oggetti nel carrello in un file zip";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:47:"Download items in het mandje in een zip bestand";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Pobieranie ZIP";s:11:"description";s:35:"Pobiera pozycje koszyka w pliku zip";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:31:"Descarca articole ca arhiva ZIP";s:11:"description";s:46:"Descarca articolele din cos intr-un fisier ZIP";s:10:"groupLabel";s:6:"Comert";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:15:"Zip preuzimanje";s:11:"description";s:44:"Preuzimanje objekata iz korpe u zip datoteci";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Zip Nedladdning";s:11:"description";s:41:"Ladda ner varukorgens objekt i en zip fil";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Zip Yükleme";s:11:"description";s:38:"Kart ögelerini zip dosyasında yükle";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:20:"Загрузка Zip";s:11:"description";s:73:"Загрузка элементов из корзины в zip файле";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"ZIP下载";s:11:"description";s:39:"下载购物车项目为ZIP压缩文件";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"Zip 下載";s:11:"description";s:44:"把購物車中的項目用 Zip 形式下載";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:48:"바구니의 아이템 Zip파일로 내려받기";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:22:"ZIP ダウンロード";s:11:"description";s:69:"カートのアイテムをzipファイルでダウンロードする";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Zip Download";s:11:"description";s:33:"Download cart items in a zip file";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:2:{i:10212;a:19:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:11:"customfield";a:3:{s:6:"header";a:6:{s:2:"id";s:11:"customfield";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:17:"Pasgemaakte Velde";s:11:"description";s:44:"Skep pasgemaakte datavelde vir Gallery items";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:20:"Camps Personalitzats";s:11:"description";s:66:"Crea camps d'informació personalizats per als elements de Gallery";s:10:"groupLabel";s:17:"Informació Extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Vlastní pole";s:11:"description";s:45:"Vytvoření vlastních polí položek Galerie";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Ekstra Ffelter";s:11:"description";s:45:"Opret ekstra datafelter til Gallery elementer";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Individuelle Felder";s:11:"description";s:72:"Legen Sie individuelle Informationsfelder für Ihre Gallery-Elemente an.";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:21:"Campos Personalizados";s:11:"description";s:72:"Crea campos de información personalizados para los elementos de Gallery";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:21:"Campos Personalizados";s:11:"description";s:72:"Crea campos de información personalizados para los elementos de Gallery";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_AR";a:3:{s:4:"name";s:21:"Campos Personalizados";s:11:"description";s:72:"Crea campos de información personalizados para los elementos de Gallery";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"eu_ES";a:3:{s:4:"name";s:21:"Eremu Pertsonalizatua";s:11:"description";s:55:"Galeria elementuentzat datu eremu pertsonalizatua sortu";s:10:"groupLabel";s:16:"Datu Gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:21:"Champs personnalisés";s:11:"description";s:76:"Créer les données des champs personnalisés pour les éléments de Gallery";s:10:"groupLabel";s:25:"Données supplémentaires";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"el_GR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"is_IS";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:20:"Campi Personalizzati";s:11:"description";s:52:"Crea campi personalizzati per gli oggetti di Gallery";s:10:"groupLabel";s:10:"Dati Extra";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Egyedi mezők";s:11:"description";s:51:"Egyedi adatmezők létrehozása a galériaelemekhez";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Maatwerk Velden";s:11:"description";s:48:"Maatwerk data velden aanmaken voor Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:14:"Dodatkowe pola";s:11:"description";s:43:"Tworzy dodatkowe pola dla pozycji w galerii";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Posebna polja";s:11:"description";s:59:"Pravljenje posebnih polja sa podacima za objekte u Galeriji";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Specialfält";s:11:"description";s:37:"Skapa specialfält för Galleryobjekt";s:10:"groupLabel";s:17:"Extra Information";}s:5:"th_TH";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Додаткові Поля";s:11:"description";s:91:"Створення додаткових полів для елементів Галереї";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:23:"Dữ liệu tùy biến";s:11:"description";s:83:"Tạo các trường dữ liệu tùy biến cho các đối tượng của Gallery";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:24:"İsteğe Bağlı Alanlar";s:11:"description";s:61:"Galeri ögeleri için isteğe bağlı veri alanları yaratın";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ru_RU";a:3:{s:4:"name";s:37:"Дополнительные Поля";s:11:"description";s:117:"Создание дополнительных полей с записями для элементов Галереи";s:10:"groupLabel";s:26:"Дополнительно";}s:5:"zh_CN";a:3:{s:4:"name";s:15:"自定义字段";s:11:"description";s:42:"为图库项目新建自定义数据字段";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"自定欄位";s:11:"description";s:42:"為 Gallery 項目新建自定資料欄位";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"カスタムフィールド";s:11:"description";s:73:"Galleryアイテムのためのカスタムデータフィールド作成";s:10:"groupLabel";s:15:"拡張データ";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"he_IL";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"Custom Fields";s:11:"description";s:43:"Create custom data fields for Gallery items";s:10:"groupLabel";s:10:"Extra Data";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fr";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15447;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"core";a:3:{s:6:"header";a:9:{s:2:"id";s:4:"core";s:7:"version";s:7:"1.2.0.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:18;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:4;}s:15:"stringsRevision";s:5:"16548";s:14:"buildTimestamp";s:5:"16580";s:14:"coreApiVersion";a:2:{i:0;i:7;i:1;i:18;}s:16:"moduleApiVersion";a:2:{i:0;i:3;i:1;i:5;}s:15:"themeApiVersion";a:2:{i:0;i:2;i:1;i:5;}}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Central";s:11:"description";s:27:"Mòdul Central de Gallery 2";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Jádro";s:11:"description";s:23:"Hlavní modul Galerie 2";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:5:"Kerne";s:11:"description";s:20:"Gallery 2 kernemodul";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:14:"Kernfunktionen";s:11:"description";s:19:"Gallery 2 Kernmodul";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Núcleo";s:11:"description";s:30:"Módulo Principal de Gallery 2";s:10:"groupLabel";s:8:"Galería";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Núcleo";s:11:"description";s:30:"Módulo Principal de Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Núcleo";s:11:"description";s:30:"Módulo Principal de Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:4:"Tuum";s:11:"description";s:21:"Galerii 2 Tuum-moodul";s:10:"groupLabel";s:7:"Galerii";}s:5:"eu_ES";a:3:{s:4:"name";s:5:"Muina";s:11:"description";s:22:"Gallery 2 Muin Modulua";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"Noyau";s:11:"description";s:15:"Noyau Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:10:"Gailearaí";}s:5:"el_GR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:14:"Γκαλερί";}s:5:"is_IS";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:24:"Modulo Core di Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"Kodols";s:11:"description";s:25:"Galerija 2 kodola modulis";s:10:"groupLabel";s:8:"Galerija";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Pagrindas";s:11:"description";s:29:"Gallery 2 pagrindinis modulis";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:3:"Mag";s:11:"description";s:20:"Gallery 2 Core modul";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:15:"Moduł główny";s:11:"description";s:27:"Gallery 2 - Moduł główny";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:4:"Base";s:11:"description";s:23:"Módulo base da galeria";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Galeria";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"Nucleu";s:11:"description";s:25:"Modul nucleu al Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"Jadro";s:11:"description";s:24:"Hlavný modul Galérie 2";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"Jedro";s:11:"description";s:22:"Gallery 2 Jedrni Modul";s:10:"groupLabel";s:8:"Galerija";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"Jedro";s:11:"description";s:22:"Gallery 2 Jedrni Modul";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:4:"Ydin";s:11:"description";s:24:"Galleria 2:n Ydinmoduuli";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"Kärna";s:11:"description";s:20:"Gallery 2 kärnmodul";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:8:"Ядро";s:11:"description";s:37:"Головні Модулі Gallery 2";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:4:"Lõi";s:11:"description";s:27:"Module Lõi của Gallery 2";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"Çekirdek";s:11:"description";s:25:"Galeri 2 Çekirdek Modül";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:32:"Ядро на Галерията";s:11:"description";s:42:"Модул Ядро на Галерия v2";s:10:"groupLabel";s:14:"Галерия";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Основые файлы";s:11:"description";s:45:"Основные файлы Галереи 2.";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"核心";s:11:"description";s:19:"图库2核心模块";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"核心";s:11:"description";s:21:"Gallery2 核心模組";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core 모듈";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:32:"Gallery 2 コア モジュール";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:29:"البنية الرئيسية";s:11:"description";s:50:"الموديول الرئيسي للجاليري 2";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"גלעין";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:12:"גלרייה";}s:5:"fa_IR";a:3:{s:4:"name";s:4:"Core";s:11:"description";s:21:"Gallery 2 Core Module";s:10:"groupLabel";s:7:"Gallery";}}s:9:"languages";a:3:{i:15845;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}i:16471;a:41:{s:2:"af";s:5:"16471";s:2:"ar";s:5:"16471";s:2:"bg";s:5:"16471";s:2:"ca";s:5:"16471";s:2:"cs";s:5:"16471";s:2:"da";s:5:"16471";s:2:"de";s:5:"16471";s:2:"el";s:5:"16472";s:5:"en_GB";s:5:"16472";s:2:"es";s:5:"16471";s:5:"es_AR";s:5:"16471";s:5:"es_MX";s:5:"16471";s:2:"et";s:5:"16471";s:2:"eu";s:5:"16471";s:2:"fi";s:5:"16471";s:2:"fr";s:5:"16471";s:2:"ga";s:5:"16471";s:2:"he";s:5:"16471";s:2:"hu";s:5:"16472";s:2:"is";s:5:"16471";s:2:"it";s:5:"16471";s:2:"ja";s:5:"16471";s:2:"ko";s:5:"16471";s:2:"lt";s:5:"16471";s:2:"lv";s:5:"16472";s:2:"nl";s:5:"16471";s:2:"no";s:5:"16471";s:2:"pl";s:5:"16471";s:2:"pt";s:5:"16472";s:5:"pt_BR";s:5:"16472";s:2:"ro";s:5:"16471";s:2:"ru";s:5:"16471";s:2:"sk";s:5:"16472";s:2:"sl";s:5:"16471";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16471";s:2:"tr";s:5:"16471";s:2:"uk";s:5:"16471";s:2:"vi";s:5:"16471";s:5:"zh_CN";s:5:"16471";s:5:"zh_TW";s:5:"16471";}i:16548;a:41:{s:2:"af";s:5:"16548";s:2:"ar";s:5:"16548";s:2:"bg";s:5:"16548";s:2:"ca";s:5:"16548";s:2:"cs";s:5:"16548";s:2:"da";s:5:"16548";s:2:"de";s:5:"16548";s:2:"el";s:5:"16548";s:5:"en_GB";s:5:"16548";s:2:"es";s:5:"16548";s:5:"es_AR";s:5:"16548";s:5:"es_MX";s:5:"16548";s:2:"et";s:5:"16548";s:2:"eu";s:5:"16548";s:2:"fi";s:5:"16548";s:2:"fr";s:5:"16548";s:2:"ga";s:5:"16548";s:2:"he";s:5:"16548";s:2:"hu";s:5:"16548";s:2:"is";s:5:"16548";s:2:"it";s:5:"16555";s:2:"ja";s:5:"16548";s:2:"ko";s:5:"16548";s:2:"lt";s:5:"16548";s:2:"lv";s:5:"16548";s:2:"nl";s:5:"16548";s:2:"no";s:5:"16548";s:2:"pl";s:5:"16548";s:2:"pt";s:5:"16548";s:5:"pt_BR";s:5:"16548";s:2:"ro";s:5:"16548";s:2:"ru";s:5:"16548";s:2:"sk";s:5:"16548";s:2:"sl";s:5:"16548";s:2:"sr";s:5:"16548";s:2:"sv";s:5:"16548";s:2:"tr";s:5:"16548";s:2:"uk";s:5:"16548";s:2:"vi";s:5:"16548";s:5:"zh_CN";s:5:"16548";s:5:"zh_TW";s:5:"16548";}}}s:5:"ecard";a:3:{s:6:"header";a:6:{s:2:"id";s:5:"ecard";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:9;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ca_ES";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:29:"Poslat fotografie jako ECards";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:5:"eKort";s:11:"description";s:20:"Send fotos som eKort";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:28:"Photos als eCard verschicken";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Tarjeta Electrónica";s:11:"description";s:40:"Envía fotos como tarjetas electrónicas";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Tarjeta Electrónica";s:11:"description";s:40:"Envía fotos como tarjetas electrónicas";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Tarjeta Electrónica";s:11:"description";s:40:"Envía fotos como tarjetas electrónicas";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:7:"E-Kaart";s:11:"description";s:26:"Saada fotosid E-Kaartidena";s:10:"groupLabel";s:8:"Kommerts";}s:5:"eu_ES";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"e-Carte";s:11:"description";s:33:"Envoyer les photos comme e-Cartes";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:32:"Invia foto sotto forma di eCards";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:59:"Fényképek elküldése elektronikus képeslapként (eCard)";s:10:"groupLabel";s:12:"Kereskedelmi";}s:5:"nl_NL";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:23:"Verzend fotos als eCard";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"eKartki";s:11:"description";s:30:"Wysyłaj zdjęcia jako eKartki";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Trimite foto ca eCard";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"fi_FI";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"eKort";s:11:"description";s:22:"Skicka foton som eKort";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"E-kart";s:11:"description";s:36:"Fotoğrafları E-kart olarak gönder";s:10:"groupLabel";s:7:"Ticaret";}s:5:"bg_BG";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_CN";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"電子賀卡";s:11:"description";s:30:"把照片當電子賀卡寄送";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:31:"画像を eCard として送る";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:5:"eCard";s:11:"description";s:21:"Send photos as eCards";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"digibug";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"digibug";s:7:"version";s:7:"1.0.0.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:2;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:3;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:26:"Digibug Foto Afdruk Module";s:10:"groupLabel";s:6:"Handel";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"cs_CZ";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:34:"Modul tisku fotografií na Digibug";s:10:"groupLabel";s:7:"Komerce";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:27:"Digibug Foto Printing Modul";s:10:"groupLabel";s:11:"Kommercielt";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:24:"Digibug Photodruck-Modul";s:10:"groupLabel";s:15:"Geschäftliches";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:42:"Módulo de Impresión de Fotos con Digibug";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:42:"Módulo de Impresión de Fotos con Digibug";s:10:"groupLabel";s:8:"Comercio";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:42:"Módulo de Impresión de Fotos con Digibug";s:10:"groupLabel";s:8:"Comercio";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:34:"Digibug Argazki Inprimatze Modulua";s:10:"groupLabel";s:10:"Komertzioa";}s:5:"fr_FR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:23:"Impressions via Digibug";s:10:"groupLabel";s:8:"Commerce";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:33:"Modulo di Stampa Foto con Digibug";s:10:"groupLabel";s:9:"Commercio";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:26:"Digibug Foto Afdruk Module";s:10:"groupLabel";s:8:"Zakelijk";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:25:"Moduł drukowania Digibug";s:10:"groupLabel";s:5:"Sklep";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:49:"Modul za izradu fotografija preko Digibug servisa";s:10:"groupLabel";s:12:"Komercijalni";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug kuvantulostuslisäosa";s:10:"groupLabel";s:11:"Kaupallinen";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Foto Utskrifts Module";s:10:"groupLabel";s:6:"Handel";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:28:"Digibug Foto Baskı Modülü";s:10:"groupLabel";s:6:"Ticari";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ru_RU";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:63:"Модуль печати фотографий на Digibug.com";s:10:"groupLabel";s:18:"Коммерция";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:25:"Digibug照片打印模块";s:10:"groupLabel";s:6:"商业";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:26:"Digibug 照片列印模組";s:10:"groupLabel";s:6:"商業";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"ja_JP";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:47:"Digibug Photo 画像プリントモジュール";s:10:"groupLabel";s:6:"商用";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Digibug";s:11:"description";s:29:"Digibug Photo Printing Module";s:10:"groupLabel";s:8:"Commerce";}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16607";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16472";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:12:"dynamicalbum";a:3:{s:6:"header";a:6:{s:2:"id";s:12:"dynamicalbum";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Dynamické album";s:11:"description";s:81:"Dynamické album pro nejnovější, nejprohlíženější nebo náhodné položky";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Dynamische Alben";s:11:"description";s:75:"Dynamische Alben für die neuesten, meistgesehenen oder zufällige Elemente";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:19:"Álbumes Dinámicos";s:11:"description";s:74:"Álbumes Dinámicos para lo mas nuevo, lo mas visto o elementos aleatorios";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:19:"Álbumes Dinámicos";s:11:"description";s:74:"Álbumes Dinámicos para lo mas nuevo, lo mas visto o elementos aleatorios";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:19:"Álbumes Dinámicos";s:11:"description";s:74:"Álbumes Dinámicos para lo mas nuevo, lo mas visto o elementos aleatorios";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Albums dynamiques";s:11:"description";s:92:"Albums dynamiques pour les éléments lés plus récents, les plus consultés ou aléatoires";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:14:"Album Dinamici";s:11:"description";s:65:"Album dinamici per gli oggetti più recenti, più visti o casuali";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Albumy dynamiczne";s:11:"description";s:79:"Albumy dynamiczne dla najnowszych, najczęściej oglądanych i losowych pozycji";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:15:"Albume dinamice";s:11:"description";s:84:"Albume dinamice pentru cele mai noi, cele mai vizualizate sau articole la intimplare";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Dynamiska Album";s:11:"description";s:67:"Dynamiska album för nyaste, mest visade eller slumpmässiga objekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:17:"Dinamik Albümler";s:11:"description";s:82:"En yeniler, en çok görüntülenenler ve rastgele ögeler için Dinamik Albümler";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:39:"Динамические альбомы";s:11:"description";s:145:"Динамические альбомы для новых, часто просматриваемых или случайных элементов";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"動態相簿";s:11:"description";s:60:"顯示最新、最受歡迎、或隨機項目的動態相簿";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:30:"ダイナミックアルバム";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Dynamic Albums";s:11:"description";s:54:"Dynamic albums for newest, most viewed or random items";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:10:"flashvideo";a:3:{s:6:"header";a:6:{s:2:"id";s:10:"flashvideo";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:9;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15887";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:40:"Umožnit zobrazení flash video souborů";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:46:"Die Anzeige von Flash Video Dateien aktivieren";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Video Flash";s:11:"description";s:40:"Permite mostrar archivos de vídeo Flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Video Flash";s:11:"description";s:40:"Permite mostrar archivos de vídeo Flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Video Flash";s:11:"description";s:40:"Permite mostrar archivos de vídeo Flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Vidéo Flash";s:11:"description";s:46:"Activer l'affichage des fichiers vidéos Flash";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:48:"Attiva la visualizzazione di file video in Flash";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"Flash video";s:11:"description";s:40:"Iespējot Flash video failu attēlošanu";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:12:"Flash videó";s:11:"description";s:55:"Flash videófájlok megjelenítésének engedélyezése";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Pliki Flash";s:11:"description";s:35:"Włącz wyświetlanie plików Flash";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:36:"Aktivera visning av Flash videofiler";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:66:"Flash video dosyalarının görüntülenmesini açık duruma getir";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"Flash 影片";s:11:"description";s:37:"啟用 Flash 影片檔的顯示功能";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:14:"Flashビデオ";s:11:"description";s:54:"Flash ビデオファイルの表示を有効にする";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"Flash Video";s:11:"description";s:35:"Enable display of Flash video files";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15887;a:21:{s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"httpauth";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"httpauth";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:15;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15727";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"en_GB";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"HTTP autentizace";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:11:"Autentizace";}s:5:"da_DK";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"de_DE";a:3:{s:4:"name";s:22:"HTTP Authentifizierung";s:11:"description";s:45:"Benutzer-Anmeldung via HTTP Authentifizierung";s:10:"groupLabel";s:17:"Authentifizierung";}s:5:"es_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"es_MX";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"es_AR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"et_EE";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fr_FR";a:3:{s:4:"name";s:21:"Authentification HTTP";s:11:"description";s:46:"Connexion à l'aide de l'authentification HTTP";s:10:"groupLabel";s:16:"Authentification";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"el_GR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"is_IS";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"it_IT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:47:"Fai il login utilizzando l'autenticazione HTTP.";s:10:"groupLabel";s:14:"Autenticazione";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"no_NO";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Autentykacja HTTP";s:11:"description";s:40:"Logowanie przy użyciu autentykacji HTTP";s:10:"groupLabel";s:12:"Autentykacja";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"HTTP-Auth";s:11:"description";s:43:"Inloggning med hjälp av HTTP-autentisering";s:10:"groupLabel";s:13:"Autentisering";}s:5:"th_TH";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"HTTP 認証";s:11:"description";s:27:"使用 HTTP 認証登入。";s:10:"groupLabel";s:6:"認証";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"HTTP 認証";s:11:"description";s:37:"HTTP認証を使ったログイン。";s:10:"groupLabel";s:6:"認証";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"he_IL";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}}s:9:"languages";a:1:{i:15727;a:28:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"itemadd";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"itemadd";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15812";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Voeg Items by";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Agregar Elements";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Přidat položky";s:11:"description";s:49:"Přidat položky z místního serveru nebo z webu";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Tilføj elementer";s:11:"description";s:52:"Tilføj elementer fra lokal server eller internettet";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Element hinzufügen";s:11:"description";s:64:"Elemente vom Gallery-Server oder von anderer Website hinzufügen";s:10:"groupLabel";s:11:"Importieren";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Añadir Elementos";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Agregar Elementos";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Agregar Items";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Lisa Pilte";s:11:"description";s:44:"Lisa pilte kohalikust serverist või veebist";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:17:"Elementuak Gehitu";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:22:"Ajouter des éléments";s:11:"description";s:60:"Ajouter des éléments depuis le serveur local ou sur le web";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Cuir Míreanna";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Aggiungi Oggetti";s:11:"description";s:44:"Aggiungi oggetti dal server locale o dal web";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"Naujas elementas";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:19:"Elemek hozzáadása";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Items Toevoegen";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Dodaj pozycje";s:11:"description";s:51:"Dodaje pozycje z serwera lokalnego lub ze stron WWW";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:15:"Adicionar itens";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:15:"Adicionar Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Adauga fotografii";s:11:"description";s:38:"Adauga articole din server sau din WWW";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Pridať položky";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Dodaj Predmete";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Dodaj Predmete";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Lisää Kuvia";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Lägg till objekt";s:11:"description";s:55:"Lägg till objekt från lokal server eller från webben";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Додати Елемент";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:21:"Thêm đối tượng";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Ögeler Ekle";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"bg_BG";a:3:{s:4:"name";s:33:"Добавете Елементи";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Добавить Элементы";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"添加项目";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"增加項目";s:11:"description";s:42:"從本地伺服器或網頁上加入項目";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:22:"아이템 추가하기";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"アイテム追加";s:11:"description";s:66:"ローカルサーバかウェブからアイテムを追加する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:15:"أضف مواد";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:21:"הוסף פריטים";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}}s:9:"languages";a:1:{i:15812;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"keyalbum";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"keyalbum";s:7:"version";s:7:"1.0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15447";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:25:"Alba s klíčovými slovy";s:11:"description";s:61:"Dynamická alba vycházející z hledaných klíčových slov";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:20:"Schlüsselwort-Alben";s:11:"description";s:55:"Dynamische Alben basierend auf der Schlüsselwort-Suche";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:29:"Álbumes desde Palabras Clave";s:11:"description";s:61:"Álbumes dinámicos basados en la búsqueda de palabras clave";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:17:"Albums mots clés";s:11:"description";s:55:"Albums dynamiques basés sur la recherche de mots clés";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:40:"Λέξεις Κλειδιά Άλπουμ";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:19:"Album Parola Chiave";s:11:"description";s:52:"Album dinamici basati sulla ricerca di parole chiave";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:23:"Album słów kluczowych";s:11:"description";s:62:"Album dynamiczny oparty na wyszukiwaniu po słowach kluczowych";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:20:"Albume Cuvinte-cheie";s:11:"description";s:40:"Albume dinamice pe baza cuvintelor cheie";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:22:"Albumi ključnih reči";s:11:"description";s:59:"Dinamički albumi bazirani na pretrazi po ključnim rečima";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:15:"Nyckelordsalbum";s:11:"description";s:47:"Dynamiskt album baserat på nyckelords sökning";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:25:"Anahtar Kelime Albümleri";s:11:"description";s:47:"Anahtar kelime arama tabanlı dinamik albümler";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:49:"Альбомы по ключевому слову";s:11:"description";s:114:"Динамические альбомы, основанные на поиске по ключевому слову";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"關鍵字相簿";s:11:"description";s:45:"由關鍵字搜尋結果產生的動態相簿";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:27:"キーワードアルバム";s:11:"description";s:54:"キーワード検索に基づく動的なアルバム";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:14:"Keyword Albums";s:11:"description";s:38:"Dynamic albums based on keyword search";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15447;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16475";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"mp3audio";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"mp3audio";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:9;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15887";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:64:"Umožnit online přehrávání mp3 audio souborů flash playerem";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:97:"Aktivieren Sie das Abspielen von MP3 Audiodateien durch einen in Gallery integrierten Flashplayer";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:86:"Habilita la reproducción en línea de archivos de sonido MP3 con un reproductor flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:86:"Habilita la reproducción en línea de archivos de sonido MP3 con un reproductor flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:86:"Habilita la reproducción en línea de archivos de sonido MP3 con un reproductor flash";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:72:"Activer la lecteur en ligne des fichiers audio MP3 avec un lecteur Flash";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:59:"Attiva l'ascolto in linea di audio mp3 con un lettore flash";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:3:"MP3";s:11:"description";s:61:"Włącz uruchamianie plików mp3 za pomocą odtwarzacza flash";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Audio MP3";s:11:"description";s:71:"Permite ascultarea fisierelor audio MP3 cu ajutorului unui flash player";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"MP3 Ljud";s:11:"description";s:64:"Aktivera inbygd uppspelning av mp3 ljudfiler via en flashspelare";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:4:"MP3 ";s:11:"description";s:69:"Flahs oynatıcısı ile mp3 dosyalarının çalınmasını etkin kıl";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:10:"MP3 音樂";s:11:"description";s:54:"使用 Flash 播放程式直接播放 MP3 音樂檔案";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:19:"MP3 オーディオ";s:11:"description";s:103:"インライン FLASH プレイヤーによるMP3オーディオファイルの再生を有効にする";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"MP3 Audio";s:11:"description";s:57:"Enable inline play of mp3 audio files with a flash player";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15887;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:9:"multiroot";a:3:{s:6:"header";a:6:{s:2:"id";s:9:"multiroot";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:8;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:38:"Definovat náhradní pohled na Galerii";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:57:"Definieren Sie eine Alternative Gastansicht Ihrer Gallery";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Multi-racine";s:11:"description";s:49:"Définir une vue d'invité alternative de Gallery";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:69:"Definisci una visualizzazione alternativa di Gallery per i visitatori";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:49:"Definiuje alternatywny wygląd galerii dla gości";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:43:"Definiera en alternativ gäst-vy av Gallery";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Çoklukök";s:11:"description";s:52:"Galeri için alternatif ziyaretçi izlemesi tanımla";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"多重根相簿";s:11:"description";s:42:"定義訪客看到的不同 Gallery 畫面";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:59:"Gallery のゲスト向け代替ビューを定義します";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"replica";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"replica";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Replica (Kopie)";s:11:"description";s:73:"Vytvořit kopie položky, které sdílí stejný původní datový soubor";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Replika";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Replik";s:11:"description";s:60:"Erstelle Elementkopien, welche dieselbe Originaldatei teilen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Réplique";s:11:"description";s:67:"Créer des copies d'éléments partageant le même fichier original";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:69:"Crea copie di oggetti mantenendo comune lo stesso file dati originale";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Replika";s:11:"description";s:73:"Tworzy kopie pozycji współdzielące dane tego samego oryginalnego pliku";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Copiaza";s:11:"description";s:69:"Crea copie di oggetti mantenendo comune lo stesso file dati originale";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"Kopia";s:11:"description";s:50:"Skapa objekt kopior som delar på samma orginalfil";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Kopyala";s:11:"description";s:56:"Orjinal veri dosyasını paylaşan öge kopyaları yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"項目副本";s:11:"description";s:54:"產生共用同一個原始資料檔案的項目拷貝";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"複製";s:11:"description";s:81:"元のデータファイルを共有するアイテムのコピーを作成する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"webdav";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"webdav";s:7:"version";s:7:"1.0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:17;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15749";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"en_GB";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:20:"Vzdálené rozhraní";}s:5:"da_DK";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:34:"Monter Gallery på dit skrivebord.";s:10:"groupLabel";s:29:"Fjernbetjenings-grænseflader";}s:5:"de_DE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:51:"Gallery von Ihrem Computer als Netzlaufwerk öffnen";s:10:"groupLabel";s:39:"Anwendungs- und Programm-Schnittstellen";}s:5:"es_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:62:"Accès à Gallery depuis votre bureau avec le protocole WebDAV";s:10:"groupLabel";s:20:"Interfaces distantes";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"el_GR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"is_IS";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"it_IT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:34:"Monta Gallery sulla tua scrivania.";s:10:"groupLabel";s:17:"Interfacce Remote";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"no_NO";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:28:"Mapowanie galerii na pulpit.";s:10:"groupLabel";s:17:"Zdalne interfejsy";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:36:"Montiranje Galerije na vaš desktop.";s:10:"groupLabel";s:20:"Daljinski interfejsi";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:35:"Montera Gallery på ditt skrivbord.";s:10:"groupLabel";s:25:"Fjärstyrningsgränssnitt";}s:5:"th_TH";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:35:"在你的桌面上搭載 Gallery。";s:10:"groupLabel";s:18:"遠端存取界面";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:48:"GalleryをあなたのPCにマウントします";s:10:"groupLabel";s:36:"リモートインターフェース";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"he_IL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}}s:9:"languages";a:1:{i:15749;a:14:{s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16472";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}}s:6:"themes";a:9:{s:6:"matrix";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"matrix";s:7:"version";s:5:"1.1.4";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:23:"Standaard Gallery2 styl";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:43:""Look and feel" estàndar de Gallery2";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:28:"Standardní vzhled Galerie 2";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:26:"Standard Gallery2 udseende";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:38:"Standard-'Look and Feel' für Gallery2";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:""Look and feel" estándar de Gallery2";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:""Look and feel" estándar de Gallery2";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:""Look and feel" estándar de Gallery2";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Matrizea";s:11:"description";s:30:"Gallery 2 ikuspegi estandarra!";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:28:"Thème standard de Gallery 2";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:37:"Cuma agus mothú Gallery2 clasaiceach";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:69:"Πρότυπη εμφάνιση και αίσθηση της Gallery2";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:28:"Aspetto standard di Gallery2";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Matrica";s:11:"description";s:36:"Standarta Galerija2 skaties un jūti";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Matrica";s:11:"description";s:41:"Standartinis Galerija2 vaizdas ir jausmas";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Mátrix";s:11:"description";s:29:"Általános Gallery2 kinézet";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:32:"Standaard Gallery2 look-and-feel";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:27:"Standardowy wygląd galerii";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:24:"Aspect standard Gallery2";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"sr_YU";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:38:"Standardni izgled i osećaj Galerije 2";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:22:"Vakio Gallery2 ulkoasu";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Matris";s:11:"description";s:38:"Klassisk Gallery2 utseende och känsla";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"vi_VN";a:2:{s:4:"name";s:9:"Ma trận";s:11:"description";s:41:"Kiểu trình bày chuẩn của Gallery2";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:30:"Standart Galeri 2 görünümü";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Матрица";s:11:"description";s:50:"Стандартный интерфейс Gallery2";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:19:"标准图库2风格";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:22:"標準 Gallery2 風格";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:29:"Gallery2 기분 좋은 테마";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:44:"Gallery2 標準のルック&フィール";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:46:"التصميم الأصلي لـ جاليري2";}s:5:"he_IL";a:2:{s:4:"name";s:21:"מטריצה (Matrix)";s:11:"description";s:41:"המראה הסטנדרטי של Gallery2";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:31:"Standard Gallery2 look and feel";}}s:9:"languages";a:2:{i:10212;a:32:{s:2:"af";i:10212;s:2:"ar";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:5:"es_MX";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"he";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"classic";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"classic";s:7:"version";s:5:"1.1.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"en_GB";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Klassiek";s:11:"description";s:27:"Standaard Gallery2 voorkoms";}s:5:"ca_ES";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"cs_CZ";a:2:{s:4:"name";s:16:"Klasik (classic)";s:11:"description";s:44:"Klasický vzhled kořenového alba Galerie 2";}s:5:"da_DK";a:2:{s:4:"name";s:8:"Klassisk";s:11:"description";s:35:"Standard Klassisk Gallery2 udseende";}s:5:"de_DE";a:2:{s:4:"name";s:9:"Klassisch";s:11:"description";s:62:"Klassisches 'Look and Feel' für die Albenansicht von Gallery2";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Clásico";s:11:"description";s:53:""Look and feel" clásico del álbum raíz de Gallery2";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Clásico";s:11:"description";s:41:"Look&Feel clásico de Gallery 2";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Clásico";s:11:"description";s:53:""Look and feel" clásico del álbum raíz de Gallery2";}s:5:"et_EE";a:2:{s:4:"name";s:12:"Klassikaline";s:11:"description";s:49:"Klassikalise Gallery2 peaalbumi välimus ja tunne";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Klasikoa";s:11:"description";s:54:"Gallery 2 erroa album ikuspegi eta erabilera klasikoa.";}s:5:"fr_FR";a:2:{s:4:"name";s:9:"Classique";s:11:"description";s:69:"Thème Classique de Gallery 2 pour la présentation de l'album racine";}s:5:"ga_IE";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"el_GR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"is_IS";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"it_IT";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:42:"Aspetto dell'album radice Classic Gallery2";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Klasika";s:11:"description";s:53:"Klasika Galerija2 pirmsākuma albums skaties un jūti";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:32:"Standaard Gallery2 look-and-feel";}s:5:"no_NO";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:25:"Klasyczny wygląd Galerii";}s:5:"pt_BR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"pt_PT";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"ro_RO";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"sk_SK";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"sl_SI";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"sr_YU";a:2:{s:4:"name";s:9:"Klasičan";s:11:"description";s:43:"Klasičan izgled osnovnog albuma Galerije 2";}s:5:"fi_FI";a:2:{s:4:"name";s:9:"Klassinen";s:11:"description";s:39:"Klassinen Gallery2 juurialbumin ulkoasu";}s:5:"sv_SE";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:39:"Klassiskt Gallery2 utseende och känsla";}s:5:"th_TH";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"uk_UA";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"vi_VN";a:2:{s:4:"name";s:12:"Cổ điển";s:11:"description";s:62:"Kiểu trình bày cổ điển cho album gốc của Gallery2";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Klasik";s:11:"description";s:40:"Klasik Galeri 2 kök albüm görünümü";}s:5:"bg_BG";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"ru_RU";a:2:{s:4:"name";s:24:"Классическая";s:11:"description";s:98:"Классический интерфейс Gallery2 в виде корневого альбома";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"经典";s:11:"description";s:31:"经典的图库2根相册风格";}s:5:"zh_TW";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:31:"傳統 Gallery2 主相簿風格";}s:5:"ko_KR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"ja_JP";a:2:{s:4:"name";s:15:"クラシック";s:11:"description";s:60:"昔のGallery2ルートアルバムのルック&フィール";}s:5:"ar_SA";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}s:5:"he_IL";a:2:{s:4:"name";s:10:"קלאסי";s:11:"description";s:64:"המראה הקלאסי של אלבום הראשי של Gallery2";}s:5:"fa_IR";a:2:{s:4:"name";s:7:"Classic";s:11:"description";s:41:"Classic Gallery2 root album look and feel";}}s:9:"languages";a:2:{i:10212;a:30:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:5:"es_MX";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"he";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"hybrid";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"hybrid";s:7:"version";s:7:"1.1.4.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Hibriede";s:11:"description";s:51:"Gekombineerde dinamiese album/beeld/skyfievertoning";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombinovaný dynamický pohled album/obrázek/prezentace";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombineret og dynamisk album/billede/fremvisning visning";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:56:"Kombinierte dynamische Ansicht von Alben/Bildern/Diashow";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Híbrido";s:11:"description";s:56:"Álbum Combinado/Imagen/Vista Dinámica de Presentación";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:54:"Konbinaturiko album/irudi/aurkezpen ikuspegi dinamikoa";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"Hybride";s:11:"description";s:49:"Vue dymamique combinée album / image / diaporama";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:53:"Vista dinamica combinata album/immagine/presentazione";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Hibrīda";s:11:"description";s:58:"Kombinēts albumu/attēlu/slīdrādes dinamisks skatījums";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Hybride";s:11:"description";s:58:"Gecombineerde dynamische album/afbeelding/diashow weergave";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Hybryda";s:11:"description";s:60:"Połączona dynamiczna prezentacja albumów/zdjęć/slajdów";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Hibridni";s:11:"description";s:44:"Kombinovan prikaz albuma, slike i projekcije";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"Hybridi";s:11:"description";s:52:"Yhdistetty albumi/kuva/diaesitys dynaaminen näkymä";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:51:"Kombinerad album/bild/bildspel med dynamisk visning";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"vi_VN";a:2:{s:4:"name";s:3:"Lai";s:11:"description";s:57:"Trình bày động gồm cả album/ảnh/trình chiếu";}s:5:"tr_TR";a:2:{s:4:"name";s:5:"Melez";s:11:"description";s:66:"Biraraya getir albüm/resim/slaytgösterisi dinamik görüntüleme";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Гибрид";s:11:"description";s:110:"Комбинация динамического вида альбома/фотографии/слайд-шоу";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:50:"组合动态视图:相册/图片/幻灯片放映";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:60:"結合相簿/圖片/幻燈片放映的動態顯示畫面";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:90:"アルバム/画像/スライドショー を組み合わせたダイナミックビュー";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Hybrid";s:11:"description";s:43:"Combined album/image/slideshow dynamic view";}}s:9:"languages";a:2:{i:10212;a:21:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16488";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16507";s:5:"zh_TW";s:5:"16040";}}}s:6:"slider";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"slider";s:7:"version";s:7:"1.0.7.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"Skuiwer";s:11:"description";s:71:"Beeld vertoning/skyfievertoning; sub-albums/ander items nie vertoon nie";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"cs_CZ";a:2:{s:4:"name";s:17:"Kinofilm (slider)";s:11:"description";s:88:"Prohlížení obrázků a prezentace; vnořená alba a další položky nejsou zobrazeny";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:65:"Billedeviser/fremvisning; underalbummer/andre objekter vises ikke";}s:5:"de_DE";a:2:{s:4:"name";s:12:"Diaprojektor";s:11:"description";s:79:"Bildbetrachter/Diashow; Unteralben und sonstige Elemente werden nicht angezeigt";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:77:"Visor de imagen/presentación; no se muestran los subálbumes/otros elementos";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"eu_ES";a:2:{s:4:"name";s:9:"Aurkezlea";s:11:"description";s:74:"Irudi ikustatzaile/aurkezpena; azpi-album/beste elementuak ez dira ikusiko";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:84:"Visualiseur d'image / diaporama  sous-albums et autres éléments non affichés";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:72:"Visualizzatore/presentazione immagine; sottoalbum/altro non visualizzato";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Šļūce";s:11:"description";s:67:"Attēlu skats/slīdrāde; apakšalbumi/citi vienumi netiek rādīti";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"nl_NL";a:2:{s:4:"name";s:11:"Verschuiven";s:11:"description";s:67:"Afbeelding weergave/diashow; sub-albums/andere items niet weergeven";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Slajdy";s:11:"description";s:53:"Pokaz slajdów; podalbumy i inne elementy niewidoczne";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"Trakast";s:11:"description";s:70:"Prikazuje i projektuje slike; podalbumi i drugi objekti nisu prikazani";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:66:"Kuvien katselu/diaesitys; albumeita ja muita kohteita ei näytetä";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:68:"Bildvisare/Bildspel; underliggande album och andra objekt visas inte";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"vi_VN";a:2:{s:4:"name";s:18:"Máy chiếu slide";s:11:"description";s:98:"Xem từng ảnh/trình chiếu; album con/các đối tượng khác không được hiển thị";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"Sürgü";s:11:"description";s:87:"Resim görüntüleyici/slaytgösterisi; altalbümler/diğer ögeler görüntülenemiyor";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Бегунок";s:11:"description";s:165:"Режим просмотра изображений/слайд-шоу; вложенные альбомы/другие элементы не отображаются";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:61:"图片查看/幻灯片放映; 子相册/其他项目未显示";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:69:"圖片顯示及幻燈片放映;不顯示子相簿和其他的項目";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Slider";s:11:"description";s:55:"Image viewer/slideshow; subalbums/other items not shown";}}s:9:"languages";a:2:{i:10212;a:20:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"siriux";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"siriux";s:7:"version";s:5:"1.1.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:4;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net Gallery tema";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Téma Galerie Siriux.net";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net galleri tema";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:25:"Siriux.net Galllery-Motiv";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:29:"Tema de Gallery de Siriux.net";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:29:"Tema de Gallery de Siriux.net";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:29:"Tema de Gallery de Siriux.net";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net Gallery gaia";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:30:"Thème Siriux.net pour Gallery";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Tema Gallery Siriux.net";}s:5:"lv_LV";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:26:"Siriux.net galerijas tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery thema";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Temat galerii Siriux.net";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"sr_YU";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:26:"Izgled Siriux.net Galerije";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:26:"Siriux.net Gallerian teema";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net Gallery tema";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"vi_VN";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:43:"Kiểu trình bày Gallery của Siriux.net";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:25:"Siriux.net Galeri teması";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Сириус";s:11:"description";s:35:"Тема Галереи Siriux.net ";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:23:"Siriux.net 图库主题";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:31:"Siriux.net Gallery 佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:32:"Siriux.net の Gallery テーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Siriux";s:11:"description";s:24:"Siriux.net Gallery theme";}}s:9:"languages";a:2:{i:10212;a:30:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:5:"es_MX";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"he";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:8:"floatrix";a:3:{s:6:"header";a:6:{s:2:"id";s:8:"floatrix";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"en_GB";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"af_ZA";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ca_ES";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Matrix";s:11:"description";s:49:"Téma variabilního sloupce založené na Matrixu";}s:5:"da_DK";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:43:"Foranderlig Kolonne tema baseret på Matrix";}s:5:"de_DE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:64:"Theme mit variabler Spaltenanzahl basierend auf dem Matrix theme";}s:5:"es_ES";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema de culumna variable basado en Matrix";}s:5:"es_MX";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema de culumna variable basado en Matrix";}s:5:"es_AR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema de culumna variable basado en Matrix";}s:5:"et_EE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:45:"Matrix-en oinarrituriko zutabe aldagarri gaia";}s:5:"fr_FR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:51:"Thème basé sur Matrix avec des colonnes variables";}s:5:"ga_IE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"el_GR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"is_IS";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"it_IT";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Tema a colonna variabile basato su Matrix";}s:5:"lv_LV";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:50:"Mainīgu kolonnu tēma balstīta uz Matricas tēmu";}s:5:"lt_LT";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:46:"Kintamo stulpelio tema sukurta Matrix pagrindu";}s:5:"hu_HU";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"nl_NL";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:47:"variabel kolom thema gebasseerd op Matrix thema";}s:5:"no_NO";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"pl_PL";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:31:"Temat oparty na temacie Matrix.";}s:5:"pt_BR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"pt_PT";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ro_RO";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"sk_SK";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"sl_SI";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"fi_FI";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:46:"Vaihtele sarake teema, joka perustuu Matrixiin";}s:5:"sv_SE";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:38:"Variabel kolumntema baserad på matris";}s:5:"th_TH";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"uk_UA";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"vi_VN";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"tr_TR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"Değişken sütun teması Matrix tabanlı";}s:5:"bg_BG";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ru_RU";a:2:{s:4:"name";s:12:"Клетка";s:11:"description";s:97:"Тема с настраиваемыми колонками на базе темы Матрица";}s:5:"zh_CN";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:39:"基于Matrix主题的可变列的主题";}s:5:"zh_TW";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:41:"基於 Matrix 的可變行數佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"ja_JP";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:53:"Marixをベースにした可変カラムのテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"he_IL";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}s:5:"fa_IR";a:2:{s:4:"name";s:8:"Floatrix";s:11:"description";s:37:"Variable column theme based on Matrix";}}s:9:"languages";a:2:{i:10212;a:31:{s:2:"ar";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"el";i:10212;s:5:"en_GB";i:10212;s:2:"es";i:10212;s:5:"es_AR";i:10212;s:5:"es_MX";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"ga";i:10212;s:2:"he";i:10212;s:2:"hu";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"ja";i:10212;s:2:"lt";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"pt";i:10212;s:5:"pt_BR";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:4:"tile";a:3:{s:6:"header";a:6:{s:2:"id";s:4:"tile";s:7:"version";s:7:"1.0.7.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"en_GB";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"af_ZA";a:2:{s:4:"name";s:5:"Teël";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ca_ES";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"cs_CZ";a:2:{s:4:"name";s:16:"Dlaždice (tile)";s:11:"description";s:42:"Dlaždicový pohled na pozadí a náhledy ";}s:5:"da_DK";a:2:{s:4:"name";s:5:"Flise";s:11:"description";s:55:"Flise-visning af baggrunds-billede og billed-miniaturer";}s:5:"de_DE";a:2:{s:4:"name";s:7:"Kacheln";s:11:"description";s:56:"Kachelansicht aus Hintergrundbild und Photo-Voransichten";}s:5:"es_ES";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:55:"Vista en mosaico de la imagen de fondo y las miniaturas";}s:5:"es_MX";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:55:"Vista en mosaico de la imagen de fondo y las miniaturas";}s:5:"es_AR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:55:"Vista en mosaico de la imagen de fondo y las miniaturas";}s:5:"et_EE";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"eu_ES";a:2:{s:4:"name";s:8:"Mosaikoa";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"fr_FR";a:2:{s:4:"name";s:5:"Pavé";s:11:"description";s:57:"Vue en pavage de l'image d'arrière plan et des vignettes";}s:5:"ga_IE";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"el_GR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"is_IS";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"it_IT";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:73:"Visualizzazione a mattonelle dell'immagine di sfondo e anteprime immagine";}s:5:"lv_LV";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"lt_LT";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"hu_HU";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"nl_NL";a:2:{s:4:"name";s:5:"Tegel";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"no_NO";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"pl_PL";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:43:"Widok tła i miniaturek w postaci kafelków";}s:5:"pt_BR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"pt_PT";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ro_RO";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"sk_SK";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"sl_SI";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Pločast";s:11:"description";s:58:"Pločast prikaz pozadinske slike i umanjenih prikaza slika";}s:5:"fi_FI";a:2:{s:4:"name";s:9:"Laatoitus";s:11:"description";s:49:"Laattanäkymä taustakuvalla ja esikatselukuvilla";}s:5:"sv_SE";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:48:"Kakelvisning av bakgrundsbild och miniatyrbilder";}s:5:"th_TH";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"uk_UA";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"vi_VN";a:2:{s:4:"name";s:9:"Ô gạch";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"tr_TR";a:2:{s:4:"name";s:8:"Döşeli";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"bg_BG";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ru_RU";a:2:{s:4:"name";s:14:"Мозаика";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"zh_CN";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"zh_TW";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:51:"用拼格方式顯示背景圖片和圖片縮略圖";}s:5:"ko_KR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"ja_JP";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:45:"タイル状の背景画像とサムネイル";}s:5:"ar_SA";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"he_IL";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}s:5:"fa_IR";a:2:{s:4:"name";s:4:"Tile";s:11:"description";s:50:"Tile view of background image and image thumbnails";}}s:9:"languages";a:2:{i:10212;a:20:{s:2:"af";i:10212;s:2:"cs";i:10212;s:2:"da";i:10212;s:2:"de";i:10212;s:2:"es";i:10212;s:2:"eu";i:10212;s:2:"fi";i:10212;s:2:"fr";i:10212;s:2:"is";i:10212;s:2:"it";i:10212;s:2:"nl";i:10212;s:2:"no";i:10212;s:2:"pl";i:10212;s:2:"ru";i:10212;s:2:"sr";i:10212;s:2:"sv";i:10212;s:2:"tr";i:10212;s:2:"vi";i:10212;s:5:"zh_CN";i:10212;s:5:"zh_TW";i:10212;}i:15407;a:31:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:7:"ajaxian";a:3:{s:6:"header";a:6:{s:2:"id";s:7:"ajaxian";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15407";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"en_GB";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"af_ZA";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ca_ES";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"cs_CZ";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:21:"DHTML slideshow téma";}s:5:"da_DK";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:36:"Fremvisnings-tema der benytter DHTML";}s:5:"de_DE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTNL-basiertes Diashow Motiv";}s:5:"es_ES";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:31:"Tema Presentación usando DHTML";}s:5:"es_MX";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:31:"Tema Presentación usando DHTML";}s:5:"es_AR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:31:"Tema Presentación usando DHTML";}s:5:"et_EE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"eu_ES";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"fr_FR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:25:"Thème diaporama en DHTML";}s:5:"ga_IE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"el_GR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"is_IS";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"it_IT";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:34:"Tema con Slideshow basata su DHTML";}s:5:"lv_LV";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:23:"DHTML slīdrādes tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"hu_HU";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"nl_NL";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"no_NO";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"pl_PL";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:35:"Temat wykorzystujacy slajdy w DHTML";}s:5:"pt_BR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"pt_PT";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ro_RO";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"sk_SK";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"sl_SI";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"sr_YU";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"fi_FI";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:19:"DHTML diashow teema";}s:5:"sv_SE";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:37:"Diabildsvisnings tema med DHTML-stöd";}s:5:"th_TH";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"uk_UA";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"vi_VN";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"tr_TR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:30:"DHTML-açık Slaytşov teması";}s:5:"bg_BG";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ru_RU";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"zh_CN";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"zh_TW";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:37:"使用 DHTML 的幻燈片佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"ja_JP";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:47:"DHTMLが有効なスライドショーテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"he_IL";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}s:5:"fa_IR";a:2:{s:4:"name";s:7:"Ajaxian";s:11:"description";s:29:"DHTML-enabled Slideshow theme";}}s:9:"languages";a:1:{i:15407;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}s:6:"carbon";a:3:{s:6:"header";a:6:{s:2:"id";s:6:"carbon";s:7:"version";s:7:"1.2.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:2;i:1;i:5;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"en_GB";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"af_ZA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ca_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"cs_CZ";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 téma od mincel.com";}s:5:"da_DK";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:27:"Gallery2 tema af mincel.com";}s:5:"de_DE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:29:"Gallery2 Motiv von mincel.com";}s:5:"es_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"es_MX";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"es_AR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:32:"Tema de Gallery 2 por mincel.com";}s:5:"et_EE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"eu_ES";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"fr_FR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:36:"Thème pour Gallery 2 par mincel.com";}s:5:"ga_IE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"el_GR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:35:"Gallery2 Θέμα από mincel.com";}s:5:"is_IS";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"it_IT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:30:"Tema di Gallery2 by mincel.com";}s:5:"lv_LV";a:2:{s:4:"name";s:4:"Ogle";s:11:"description";s:26:"mincel.com galerija2 tēma";}s:5:"lt_LT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"hu_HU";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"nl_NL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"no_NO";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"pl_PL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:27:"Temat galerii by mincel.com";}s:5:"pt_BR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"pt_PT";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ro_RO";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sk_SK";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sl_SI";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"sr_YU";a:2:{s:4:"name";s:8:"Ugljenik";s:11:"description";s:29:"Gallery2 izgled od mincel.com";}s:5:"fi_FI";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:36:"Gallery2 teema tekijänä mincel.com";}s:5:"sv_SE";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:30:"Gallery2 tema från mincel.com";}s:5:"th_TH";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"uk_UA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"vi_VN";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"tr_TR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:40:"Gallery2 teması geliştiren mincel.com";}s:5:"bg_BG";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ru_RU";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:56:"Тема Carbon для Gallery2. Дизайн mincel.com";}s:5:"zh_CN";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"zh_TW";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:42:"mincel.com 製作的 Gallery2 佈景主題";}s:5:"ko_KR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"ja_JP";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:40:"mincel.com によるGallery2のテーマ";}s:5:"ar_SA";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"he_IL";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}s:5:"fa_IR";a:2:{s:4:"name";s:6:"Carbon";s:11:"description";s:28:"Gallery2 theme by mincel.com";}}s:9:"languages";a:1:{i:15342;a:38:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16488";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16488";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/albumselect-1.0.6-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/albumselect-1.0.6-16041-base.package new file mode 100644 index 0000000..dc9cc86 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/albumselect-1.0.6-16041-base.package @@ -0,0 +1,51 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/albumselect-1.0.6-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/albumselect-1.0.6-16041.descriptor new file mode 100644 index 0000000..bc6d6de --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/albumselect-1.0.6-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:11:"albumselect";s:7:"version";s:5:"1.0.6";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"en_GB";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"af_ZA";a:3:{s:4:"name";s:11:"Albumkieser";s:11:"description";s:52:"Spring na 'n album deur 'n keuselys of boomstruktuur";s:10:"groupLabel";s:6:"Blokke";}s:5:"ca_ES";a:3:{s:4:"name";s:18:"Selecció d'Àlbum";s:11:"description";s:90:"Anar directament a qualsevol àlbum fent servir un quadre de selecció o una vista d'arbre";s:10:"groupLabel";s:5:"Blocs";}s:5:"cs_CZ";a:3:{s:4:"name";s:12:"Výběr alba";s:11:"description";s:43:"Výběr alb pomocí select boxu nebo stromu";s:10:"groupLabel";s:5:"Bloky";}s:5:"da_DK";a:3:{s:4:"name";s:12:"Albumvælger";s:11:"description";s:73:"Hop direkte til ethvert album ved at bruge en liste eller en træstruktur";s:10:"groupLabel";s:6:"Blokke";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Albumauswahl";s:11:"description";s:76:"Mittels Auswahlliste oder Baumansicht direkt zu den einzelnen Alben springen";s:10:"groupLabel";s:7:"Blöcke";}s:5:"es_ES";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_MX";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"es_AR";a:3:{s:4:"name";s:20:"Selección de Álbum";s:11:"description";s:87:"Ir directamente a cualquier álbum usando un cuadro de selección o una vista de árbol";s:10:"groupLabel";s:7:"Bloques";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Albumi Valik";s:11:"description";s:82:"Hüppa otse suvalise albumi juurde, kasutades selleks rippmenüüd või puu-vaadet";s:10:"groupLabel";s:6:"Blokid";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Album Hautatzea";s:11:"description";s:66:"Hautatze kutxa edo zuhaitz ikuspegia erabiliz album-era salto egin";s:10:"groupLabel";s:7:"Blokeak";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Sélection d'album";s:11:"description";s:87:"Aller directement vers n'importe quel album en utilisant un menu déroulant ou un arbre";s:10:"groupLabel";s:5:"Blocs";}s:5:"ga_IE";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"is_IS";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Selezione Album";s:11:"description";s:83:"Salta direttamente a un album usando una casella di selezione o una vista ad albero";s:10:"groupLabel";s:7:"Blocchi";}s:5:"lv_LV";a:3:{s:4:"name";s:19:"Albumu atlasīšana";s:11:"description";s:70:"Pāriet tieši uz jebkuru albumu lietojot izvēles logu vai koka skatu";s:10:"groupLabel";s:5:"Bloki";}s:5:"lt_LT";a:3:{s:4:"name";s:19:"Albumo pasirinkimas";s:11:"description";s:69:"Peršokti tiesiai į bet kurį albumą, sąrašo arba medžio pagalba";s:10:"groupLabel";s:6:"Blokai";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Albumkiválasztás";s:11:"description";s:90:"Ugrás közvetlenül bármely albumra egy választómező vagy faszerkezet segítségével";s:10:"groupLabel";s:7:"Blokkok";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"Albumkiezer";s:11:"description";s:57:"Open direct een album via een keuzelijst of boomstructuur";s:10:"groupLabel";s:7:"Blokken";}s:5:"no_NO";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Wybieranie albumu";s:11:"description";s:79:"Przejdź bezpośrednio do danego albumu przy pomocy rozwijanej listy lub drzewa";s:10:"groupLabel";s:5:"Bloki";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Selecione o álbum";s:11:"description";s:94:"Saltar diretamente para qualquer álgum usando uma caixa de seleção ou uma visão em árvore";s:10:"groupLabel";s:6:"Blocos";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"ro_RO";a:3:{s:4:"name";s:16:"Selecteaza Album";s:11:"description";s:81:"Sari direct la orice album folosind o casuta de selectie sau vederea arborescenta";s:10:"groupLabel";s:7:"Blocuri";}s:5:"sk_SK";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sl_SI";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Birač albuma";s:11:"description";s:68:"Direktan skok do bilo kog albuma pomoću okvira sa listom ili stabla";s:10:"groupLabel";s:7:"Blokovi";}s:5:"fi_FI";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"sv_SE";a:3:{s:4:"name";s:8:"Albumval";s:11:"description";s:66:"Hoppa direct till album m.h.a rullgardinslista-lista eller trädvy";s:10:"groupLabel";s:5:"Block";}s:5:"th_TH";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"uk_UA";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Chọn Album";s:11:"description";s:96:"Nhảy trực tiếp đến một album bằng hộp chọn lựa hoặc chọn trên cây album";s:10:"groupLabel";s:5:"Hộp";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"Albüm Seç";s:11:"description";s:84:"Seçim kutusu ya da ağaç görüntüsü kullanarak herhangi bir albüme geçiş yap";s:10:"groupLabel";s:7:"Bloklar";}s:5:"bg_BG";a:3:{s:4:"name";s:27:"Изберете Албум";s:11:"description";s:67:"Директно прескачане от албум в албум";s:10:"groupLabel";s:14:"Блокове";}s:5:"ru_RU";a:3:{s:4:"name";s:25:"Выбор Альбома";s:11:"description";s:167:"Быстрый переход к любому из альбомов с помощью выпадающего меню или иерархического дерева.";s:10:"groupLabel";s:10:"Блоки";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"相册选择";s:11:"description";s:42:"使用选择框直接跳转到任意相册";s:10:"groupLabel";s:9:"功能块";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"相簿選擇";s:11:"description";s:51:"用選單或樹狀顯示來直接跳到任意相簿";s:10:"groupLabel";s:6:"區塊";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"사진첩 선택기";s:11:"description";s:100:"어느 사진첩으로던 선택 상자 또는 구조 보기를 이용해 곧바로 이동합니다.";s:10:"groupLabel";s:6:"Blocks";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"アルバムセレクト";s:11:"description";s:84:"セレクトボックスかツリービューを使って直接アルバムへ飛ぶ";s:10:"groupLabel";s:12:"ブロック";}s:5:"ar_SA";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}s:5:"he_IL";a:3:{s:4:"name";s:21:"בחירת אלבום";s:11:"description";s:84:"קפוץ ישירות לכל אלבום באמצעות תיבה או עץ בחירה";s:10:"groupLabel";s:12:"בלוקים";}s:5:"fa_IR";a:3:{s:4:"name";s:12:"Album Select";s:11:"description";s:58:"Jump directly to any album using a select box or tree view";s:10:"groupLabel";s:6:"Blocks";}}s:5:"files";a:106:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"2237";s:4:"hash";s:10:"2398857268";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"AlbumSelectSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"3089";s:4:"hash";s:10:"3116611913";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"Callbacks.inc";a:3:{s:5:"bytes";s:4:"8833";s:4:"hash";s:9:"864964945";s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"Preloads.inc";a:3:{s:5:"bytes";s:4:"1435";s:4:"hash";s:10:"3627351619";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"dtree.css";a:3:{s:5:"bytes";s:3:"565";s:4:"hash";s:10:"2381733050";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"dtree.js";a:3:{s:5:"bytes";s:5:"11250";s:4:"hash";s:10:"2233329303";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/base.gif";a:3:{s:5:"bytes";s:4:"1040";s:4:"hash";s:9:"316939052";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/empty.gif";a:3:{s:5:"bytes";s:2:"62";s:4:"hash";s:10:"1416609399";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"images/folder.gif";a:3:{s:5:"bytes";s:3:"372";s:4:"hash";s:9:"670194113";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/folderopen.gif";a:3:{s:5:"bytes";s:3:"376";s:4:"hash";s:10:"1423723325";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"images/imgfolder.gif";a:3:{s:5:"bytes";s:3:"622";s:4:"hash";s:10:"3502992601";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/join.gif";a:3:{s:5:"bytes";s:2:"69";s:4:"hash";s:10:"3054803109";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/join_rtl.gif";a:3:{s:5:"bytes";s:2:"67";s:4:"hash";s:10:"2665245046";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/joinbottom.gif";a:3:{s:5:"bytes";s:2:"66";s:4:"hash";s:10:"2769746376";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"images/joinbottom_rtl.gif";a:3:{s:5:"bytes";s:2:"64";s:4:"hash";s:9:"251910654";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/line.gif";a:3:{s:5:"bytes";s:2:"66";s:4:"hash";s:10:"3843155732";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/line_rtl.gif";a:3:{s:5:"bytes";s:2:"65";s:4:"hash";s:10:"3351472384";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/minus.gif";a:3:{s:5:"bytes";s:2:"86";s:4:"hash";s:9:"278786801";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"images/minus_rtl.gif";a:3:{s:5:"bytes";s:2:"86";s:4:"hash";s:10:"3226303241";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"images/minusbottom.gif";a:3:{s:5:"bytes";s:2:"85";s:4:"hash";s:9:"382107573";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"images/minusbottom_rtl.gif";a:3:{s:5:"bytes";s:2:"85";s:4:"hash";s:9:"216002116";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"images/nolines_minus.gif";a:3:{s:5:"bytes";s:3:"861";s:4:"hash";s:9:"710306091";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"images/nolines_plus.gif";a:3:{s:5:"bytes";s:3:"870";s:4:"hash";s:10:"1594159029";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/plus.gif";a:3:{s:5:"bytes";s:2:"89";s:4:"hash";s:10:"1359509001";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"images/plus_rtl.gif";a:3:{s:5:"bytes";s:2:"89";s:4:"hash";s:9:"919754713";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"images/plusbottom.gif";a:3:{s:5:"bytes";s:2:"88";s:4:"hash";s:10:"2430757682";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"images/plusbottom_rtl.gif";a:3:{s:5:"bytes";s:2:"88";s:4:"hash";s:10:"4196910978";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"locale/af/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2543";s:4:"hash";s:10:"3043448499";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:44:"locale/ar/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:3:"721";s:4:"hash";s:9:"993866794";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:44:"locale/bg/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"3309";s:4:"hash";s:10:"2303408307";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:44:"locale/ca/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2583";s:4:"hash";s:10:"2780610986";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:44:"locale/cs/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2423";s:4:"hash";s:10:"1537077553";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:44:"locale/da/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2462";s:4:"hash";s:10:"1305444250";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:44:"locale/de/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2698";s:4:"hash";s:10:"1739538569";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:47:"locale/en_GB/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:3:"459";s:4:"hash";s:10:"1795183187";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:44:"locale/es/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2589";s:4:"hash";s:10:"1984768226";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:44:"locale/et/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2286";s:4:"hash";s:9:"163066983";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:44:"locale/eu/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2416";s:4:"hash";s:10:"1094107811";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:44:"locale/fi/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:3:"710";s:4:"hash";s:10:"3949649092";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:44:"locale/fr/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2606";s:4:"hash";s:10:"3445009772";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:44:"locale/he/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2697";s:4:"hash";s:10:"4211227150";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:44:"locale/hu/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2600";s:4:"hash";s:10:"1359412689";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:44:"locale/is/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:3:"423";s:4:"hash";s:10:"4104100426";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:44:"locale/it/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2516";s:4:"hash";s:9:"884917250";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:44:"locale/ja/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2737";s:4:"hash";s:9:"948212371";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:44:"locale/ko/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"1976";s:4:"hash";s:10:"2089156957";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:44:"locale/lt/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2707";s:4:"hash";s:10:"1345468224";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:44:"locale/lv/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2539";s:4:"hash";s:9:"771714970";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:44:"locale/nl/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2477";s:4:"hash";s:10:"3236728324";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:44:"locale/no/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2473";s:4:"hash";s:10:"4244527516";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:44:"locale/pl/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2567";s:4:"hash";s:10:"2830132494";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:47:"locale/pt_BR/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2456";s:4:"hash";s:10:"3767706702";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:44:"locale/ro/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2433";s:4:"hash";s:10:"1982808363";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:44:"locale/ru/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"3513";s:4:"hash";s:9:"172203997";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:44:"locale/sk/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:3:"807";s:4:"hash";s:10:"1248317863";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:44:"locale/sr/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2529";s:4:"hash";s:10:"4277257106";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:44:"locale/sv/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2553";s:4:"hash";s:9:"999446826";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:44:"locale/tr/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2619";s:4:"hash";s:10:"1147910944";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:44:"locale/uk/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:3:"783";s:4:"hash";s:10:"3489404802";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:44:"locale/vi/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2581";s:4:"hash";s:10:"3335375809";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:47:"locale/zh_CN/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2209";s:4:"hash";s:10:"2844587707";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:47:"locale/zh_TW/LC_MESSAGES/modules_albumselect.mo";a:3:{s:5:"bytes";s:4:"2329";s:4:"hash";s:9:"291169060";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"4737";s:4:"hash";s:10:"2194347541";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"3466";s:4:"hash";s:10:"1579369149";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"2589";s:4:"hash";s:9:"328887936";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"4359";s:4:"hash";s:9:"156476896";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3484";s:4:"hash";s:10:"1206051372";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"3208";s:4:"hash";s:9:"670677673";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"3249";s:4:"hash";s:10:"1836848801";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"3733";s:4:"hash";s:9:"686020536";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"3138";s:4:"hash";s:9:"556876272";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"3490";s:4:"hash";s:10:"1057498124";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"3122";s:4:"hash";s:9:"101949929";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3200";s:4:"hash";s:10:"1642746674";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"2700";s:4:"hash";s:10:"1416113888";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"3391";s:4:"hash";s:10:"2504242149";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"3516";s:4:"hash";s:10:"2329583780";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"3541";s:4:"hash";s:7:"7419779";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"2421";s:4:"hash";s:10:"2537469734";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"3310";s:4:"hash";s:9:"916440656";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3517";s:4:"hash";s:10:"1467501181";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3209";s:4:"hash";s:10:"2062497841";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"3619";s:4:"hash";s:9:"172991821";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"3331";s:4:"hash";s:10:"4236169765";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3435";s:4:"hash";s:10:"1737981742";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"3373";s:4:"hash";s:10:"2874523300";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"3356";s:4:"hash";s:10:"3782707873";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"3402";s:4:"hash";s:9:"918057804";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"3317";s:4:"hash";s:10:"2015386503";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"4568";s:4:"hash";s:8:"64219390";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"2781";s:4:"hash";s:10:"3195643339";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"3455";s:4:"hash";s:10:"2637739895";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1178";s:4:"hash";s:9:"185875069";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"3508";s:4:"hash";s:10:"1297462013";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3599";s:4:"hash";s:9:"490168304";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"2861";s:4:"hash";s:10:"3390614670";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3522";s:4:"hash";s:10:"3534417552";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3094";s:4:"hash";s:10:"2765329136";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"3202";s:4:"hash";s:10:"3558620742";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:34:"templates/AlbumSelectSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"3079";s:4:"hash";s:10:"2958127655";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"templates/blocks/AlbumSelect.tpl";a:3:{s:5:"bytes";s:3:"946";s:4:"hash";s:10:"4052149542";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/blocks/AlbumTree.tpl";a:3:{s:5:"bytes";s:4:"3079";s:4:"hash";s:10:"3543728576";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/blocks/blocks.inc";a:3:{s:5:"bytes";s:3:"213";s:4:"hash";s:9:"644573625";s:8:"packages";a:1:{i:0;s:4:"base";}}s:53:"test/phpunit/AlbumSelectSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"2819";s:4:"hash";s:10:"2226766782";s:8:"packages";a:0:{}}s:34:"test/phpunit/AlbumSelectTest.class";a:3:{s:5:"bytes";s:5:"13930";s:4:"hash";s:10:"3603053009";s:8:"packages";a:0:{}}}s:11:"directories";a:77:{s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"templates/blocks";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:35:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-1.1.3.1-16513-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-1.1.3.1-16513-base.package new file mode 100644 index 0000000..2fff4dd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-1.1.3.1-16513-base.package @@ -0,0 +1,53 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-1.1.3.1-16513.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-1.1.3.1-16513.descriptor new file mode 100644 index 0000000..a0ba433 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-1.1.3.1-16513.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"comment";s:7:"version";s:7:"1.1.3.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15508";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"en_GB";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Kommentaar";s:11:"description";s:27:"Gebruiker kommentaarstelsel";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Comentaris";s:11:"description";s:34:"Sistema de comentaris dels usuaris";s:10:"groupLabel";s:17:"Informació Extra";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Komentáře";s:11:"description";s:37:"Systém pro uživatelské komentáře";s:10:"groupLabel";s:12:"Další data";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:26:"Bruger kommenteringssystem";s:10:"groupLabel";s:11:"Ekstra Data";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kommentare";s:11:"description";s:31:"System für Benutzer-Kommentare";s:10:"groupLabel";s:11:"Zusatzdaten";}s:5:"es_ES";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"es_MX";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:11:"Datos extra";}s:5:"es_AR";a:3:{s:4:"name";s:11:"Comentarios";s:11:"description";s:38:"Sistema de comentarios de los usuarios";s:10:"groupLabel";s:18:"Información Extra";}s:5:"et_EE";a:3:{s:4:"name";s:12:"Kommentaarid";s:11:"description";s:35:"Kasutajate kommenteerimise süsteem";s:10:"groupLabel";s:13:"Ekstra-andmed";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Iruzkinak";s:11:"description";s:28:"Erabiltzaile iruzkin sistema";s:10:"groupLabel";s:16:"Datu gehigarriak";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Commentaires";s:11:"description";s:40:"Système de commentaire des utilisateurs";s:10:"groupLabel";s:21:"Extraire les données";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Teachtaireachtaí";s:11:"description";s:22:"Córas teachtaireachta";s:10:"groupLabel";s:12:"Sonraí eile";}s:5:"el_GR";a:3:{s:4:"name";s:12:"Σχόλια";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:39:"Επιπρόσθετα Στοιχεία";}s:5:"is_IS";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"it_IT";a:3:{s:4:"name";s:8:"Commenti";s:11:"description";s:51:"Sistema per inserire commenti da parte degli utenti";s:10:"groupLabel";s:10:"Dati extra";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Komentāri";s:11:"description";s:30:"Lietotāju komentāru sistēma";s:10:"groupLabel";s:11:"Ekstra dati";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Kometarai";s:11:"description";s:29:"Vartotojo komentavimo sistema";s:10:"groupLabel";s:18:"Papildomi duomenys";}s:5:"hu_HU";a:3:{s:4:"name";s:13:"Megjegyzések";s:11:"description";s:47:"Felhasználói megjegyzéshozzáfűző rendszer";s:10:"groupLabel";s:12:"Extra adatok";}s:5:"nl_NL";a:3:{s:4:"name";s:8:"Reacties";s:11:"description";s:25:"Bezoekers reactie systeem";s:10:"groupLabel";s:10:"Extra Data";}s:5:"no_NO";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"pl_PL";a:3:{s:4:"name";s:10:"Komentarze";s:11:"description";s:23:"Komentarze użytkownika";s:10:"groupLabel";s:14:"Dodatkowe dane";}s:5:"pt_BR";a:3:{s:4:"name";s:18:"Comentários";s:11:"description";s:41:"Sistema de comentário de usuários";s:10:"groupLabel";s:16:"Dados Adicionais";}s:5:"pt_PT";a:3:{s:4:"name";s:12:"Comentários";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Comentarii";s:11:"description";s:43:"Sistem de introducere comentarii utilizator";s:10:"groupLabel";s:10:"Extra date";}s:5:"sk_SK";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sl_SI";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Komentari";s:11:"description";s:29:"Sistem korisničkih komentara";s:10:"groupLabel";s:14:"Posebni podaci";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Kommentit";s:11:"description";s:36:"Käyttäjäkommenttien järjestelmä";s:10:"groupLabel";s:11:"Lisätiedot";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"Kommentarer";s:11:"description";s:25:"Användarkommentarssystem";s:10:"groupLabel";s:17:"Extra Information";}s:5:"th_TH";a:3:{s:4:"name";s:8:"Comments";s:11:"description";s:22:"User commenting system";s:10:"groupLabel";s:10:"Extra Data";}s:5:"uk_UA";a:3:{s:4:"name";s:18:"Коментарі";s:11:"description";s:39:"Система коментування";s:10:"groupLabel";s:27:"Додаткові Дані";}s:5:"vi_VN";a:3:{s:4:"name";s:12:"Bình luận";s:11:"description";s:25:"Hệ thống bình luận";s:10:"groupLabel";s:17:"Dữ liệu thêm";}s:5:"tr_TR";a:3:{s:4:"name";s:8:"Yorumlar";s:11:"description";s:25:"Kullanıcı yorum sistemi";s:10:"groupLabel";s:11:"Ekstra Veri";}s:5:"bg_BG";a:3:{s:4:"name";s:18:"Коментари";s:11:"description";s:65:"Система за потребителски коментари";s:10:"groupLabel";s:35:"Допълнителни Данни";}s:5:"ru_RU";a:3:{s:4:"name";s:22:"Комментарии";s:11:"description";s:74:"Добавление комментариев пользователями";s:10:"groupLabel";s:41:"Дополнительные данные";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"评论";s:11:"description";s:18:"用户评论系统";s:10:"groupLabel";s:12:"额外数据";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"回應";s:11:"description";s:21:"使用者回應系統";s:10:"groupLabel";s:12:"額外資料";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"댓글";s:11:"description";s:50:"사용자가 댓글을 달수 있도록 합니다.";s:10:"groupLabel";s:10:"Extra Data";}s:5:"ja_JP";a:3:{s:4:"name";s:12:"コメント";s:11:"description";s:33:"ユーザコメントシステム";s:10:"groupLabel";s:15:"追加データ";}s:5:"ar_SA";a:3:{s:4:"name";s:14:"تعليقات";s:11:"description";s:55:"نظام كتابة التعليقات للمستخدم";s:10:"groupLabel";s:27:"معلومات إضافية";}s:5:"he_IL";a:3:{s:4:"name";s:12:"תגובות";s:11:"description";s:40:"מערכת תגובות המשתמשים";s:10:"groupLabel";s:25:"נתונים נוספים";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"نظرات";s:11:"description";s:36:"سیستم نظرات کاربران";s:10:"groupLabel";s:28:"داده های تکمیلی";}}s:5:"files";a:122:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"2384";s:4:"hash";s:10:"3871801402";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"AddComment.inc";a:3:{s:5:"bytes";s:4:"6673";s:4:"hash";s:10:"3399979474";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"Callbacks.inc";a:3:{s:5:"bytes";s:4:"3798";s:4:"hash";s:10:"4002130173";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"CommentChangeConfirmation.inc";a:3:{s:5:"bytes";s:4:"1506";s:4:"hash";s:10:"1918159307";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"CommentSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"3317";s:4:"hash";s:10:"1907241120";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"DeleteComment.inc";a:3:{s:5:"bytes";s:4:"4501";s:4:"hash";s:10:"2655089860";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"EditComment.inc";a:3:{s:5:"bytes";s:4:"7055";s:4:"hash";s:9:"216862135";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"ShowAllComments.inc";a:3:{s:5:"bytes";s:4:"5606";s:4:"hash";s:10:"3800729052";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"ShowComments.inc";a:3:{s:5:"bytes";s:4:"2988";s:4:"hash";s:9:"262122271";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"classes/CommentCaptchaAdminOption.class";a:3:{s:5:"bytes";s:4:"1535";s:4:"hash";s:10:"2700187124";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"classes/Entities.inc";a:3:{s:5:"bytes";s:3:"951";s:4:"hash";s:9:"953243210";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/GalleryComment.class";a:3:{s:5:"bytes";s:4:"4854";s:4:"hash";s:9:"364689015";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryCommentHelper.class";a:3:{s:5:"bytes";s:5:"10388";s:4:"hash";s:10:"2090313395";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryCommentSearch.class";a:3:{s:5:"bytes";s:4:"5539";s:4:"hash";s:7:"6675042";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"6403";s:4:"hash";s:9:"738003739";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_GalleryComment_1.0.xml";a:3:{s:5:"bytes";s:3:"632";s:4:"hash";s:10:"1002137142";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_GalleryComment_1.1.xml";a:3:{s:5:"bytes";s:3:"551";s:4:"hash";s:9:"655476383";s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"comment.css";a:3:{s:5:"bytes";s:3:"154";s:4:"hash";s:9:"514053237";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/af/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3690";s:4:"hash";s:9:"878864331";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:40:"locale/ar/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3913";s:4:"hash";s:9:"790669509";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:40:"locale/bg/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4666";s:4:"hash";s:10:"2611319726";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:40:"locale/ca/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4197";s:4:"hash";s:10:"1933064445";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:40:"locale/cs/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4701";s:4:"hash";s:10:"3036286126";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/da/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4448";s:4:"hash";s:9:"410487847";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:40:"locale/de/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4597";s:4:"hash";s:10:"4183503186";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:40:"locale/el/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3620";s:4:"hash";s:10:"3255778068";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:43:"locale/en_GB/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:3:"491";s:4:"hash";s:10:"2142290241";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4596";s:4:"hash";s:10:"1360917489";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/es_AR/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"1039";s:4:"hash";s:10:"1018254713";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:43:"locale/es_MX/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"1807";s:4:"hash";s:10:"1632038898";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:40:"locale/et/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4175";s:4:"hash";s:10:"3503380839";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:40:"locale/eu/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4100";s:4:"hash";s:10:"1714418181";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fa/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4094";s:4:"hash";s:9:"959294833";s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:40:"locale/fi/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4475";s:4:"hash";s:8:"80880145";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4902";s:4:"hash";s:10:"4138902631";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/ga/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3692";s:4:"hash";s:10:"2643509033";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:40:"locale/he/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4510";s:4:"hash";s:10:"3291833575";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:40:"locale/hu/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4817";s:4:"hash";s:10:"3457616065";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:40:"locale/is/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:3:"461";s:4:"hash";s:9:"607731198";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:40:"locale/it/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4519";s:4:"hash";s:10:"4075413108";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4799";s:4:"hash";s:10:"2222811319";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/ko/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4253";s:4:"hash";s:10:"3822851025";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:40:"locale/lt/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4657";s:4:"hash";s:10:"2425671251";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:40:"locale/lv/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4625";s:4:"hash";s:9:"304900269";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:40:"locale/nl/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4047";s:4:"hash";s:10:"2554281037";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4497";s:4:"hash";s:10:"1905792854";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4641";s:4:"hash";s:10:"2541529673";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:40:"locale/pt/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"2887";s:4:"hash";s:9:"209861242";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:43:"locale/pt_BR/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3951";s:4:"hash";s:10:"3221834986";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:40:"locale/ro/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4525";s:4:"hash";s:10:"3135399594";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:40:"locale/ru/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"5856";s:4:"hash";s:9:"281838955";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sk/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"1201";s:4:"hash";s:10:"1120383045";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:40:"locale/sr/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4473";s:4:"hash";s:10:"3263019003";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:40:"locale/sv/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4643";s:4:"hash";s:10:"4038649815";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4135";s:4:"hash";s:10:"2983871281";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:40:"locale/uk/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"5300";s:4:"hash";s:10:"1730367275";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:40:"locale/vi/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3815";s:4:"hash";s:10:"1910128527";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"3893";s:4:"hash";s:10:"1125279474";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_comment.mo";a:3:{s:5:"bytes";s:4:"4240";s:4:"hash";s:10:"4246819487";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"9276";s:4:"hash";s:10:"3777261514";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"5947";s:4:"hash";s:10:"1291156007";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"6316";s:4:"hash";s:10:"2238722749";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"7310";s:4:"hash";s:10:"3651482026";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"5992";s:4:"hash";s:9:"955289710";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"6326";s:4:"hash";s:10:"3480862780";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"5533";s:4:"hash";s:10:"1001216843";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"6317";s:4:"hash";s:8:"82424889";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"7225";s:4:"hash";s:9:"461593308";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"5324";s:4:"hash";s:10:"2992568190";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"5746";s:4:"hash";s:10:"2309259692";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"6235";s:4:"hash";s:10:"2774093950";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"6490";s:4:"hash";s:10:"4285327225";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"5685";s:4:"hash";s:10:"2451193432";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"5803";s:4:"hash";s:10:"3633794768";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fa.po";a:3:{s:5:"bytes";s:4:"6372";s:4:"hash";s:10:"3869380133";s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"6074";s:4:"hash";s:10:"3869279219";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"5939";s:4:"hash";s:10:"2975051853";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"6924";s:4:"hash";s:10:"1017265857";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"6266";s:4:"hash";s:10:"3343473582";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"6003";s:4:"hash";s:10:"4206147062";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"4123";s:4:"hash";s:10:"3946914145";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"5583";s:4:"hash";s:10:"1639567607";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"5979";s:4:"hash";s:10:"1737071497";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"6004";s:4:"hash";s:9:"332831845";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"5926";s:4:"hash";s:9:"290759554";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"5669";s:4:"hash";s:9:"995474430";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"5980";s:4:"hash";s:10:"4287050117";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"5648";s:4:"hash";s:10:"3266363787";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5712";s:4:"hash";s:10:"3373091908";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"5979";s:4:"hash";s:10:"1281134771";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"6313";s:4:"hash";s:10:"2720129735";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5589";s:4:"hash";s:10:"2851128733";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"8278";s:4:"hash";s:8:"69929123";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"4643";s:4:"hash";s:9:"747620177";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"5840";s:4:"hash";s:10:"2183650886";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"3428";s:4:"hash";s:10:"2179537472";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"6026";s:4:"hash";s:10:"1782583776";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5756";s:4:"hash";s:10:"2102520296";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"7099";s:4:"hash";s:10:"3617282186";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"6114";s:4:"hash";s:10:"3920919441";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"5628";s:4:"hash";s:10:"1984483227";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"5243";s:4:"hash";s:9:"153533643";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:24:"templates/AddComment.tpl";a:3:{s:5:"bytes";s:4:"3315";s:4:"hash";s:10:"1831584937";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/Comment.tpl";a:3:{s:5:"bytes";s:4:"2961";s:4:"hash";s:10:"4202419980";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"templates/CommentChangeConfirmation.tpl";a:3:{s:5:"bytes";s:3:"932";s:4:"hash";s:10:"2632942182";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/CommentSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"1470";s:4:"hash";s:10:"3068560383";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/DeleteComment.tpl";a:3:{s:5:"bytes";s:4:"1724";s:4:"hash";s:10:"3542618473";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/EditComment.tpl";a:3:{s:5:"bytes";s:4:"3528";s:4:"hash";s:10:"3738059347";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"templates/ShowAllComments.tpl";a:3:{s:5:"bytes";s:4:"2331";s:4:"hash";s:10:"2284733406";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/ShowComments.tpl";a:3:{s:5:"bytes";s:4:"1018";s:4:"hash";s:10:"2454373611";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"templates/blocks/AddComment.tpl";a:3:{s:5:"bytes";s:4:"1244";s:4:"hash";s:9:"268019560";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"templates/blocks/ViewComments.tpl";a:3:{s:5:"bytes";s:4:"1332";s:4:"hash";s:10:"3012994880";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/blocks/blocks.inc";a:3:{s:5:"bytes";s:3:"915";s:4:"hash";s:9:"139562107";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"test/phpunit/AddCommentControllerTest.class";a:3:{s:5:"bytes";s:5:"19588";s:4:"hash";s:10:"2309268781";s:8:"packages";a:0:{}}s:36:"test/phpunit/CommentSearchTest.class";a:3:{s:5:"bytes";s:4:"9328";s:4:"hash";s:9:"491192330";s:8:"packages";a:0:{}}s:49:"test/phpunit/CommentSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"3432";s:4:"hash";s:10:"1058724829";s:8:"packages";a:0:{}}s:30:"test/phpunit/CommentTest.class";a:3:{s:5:"bytes";s:5:"10055";s:4:"hash";s:10:"1551152641";s:8:"packages";a:0:{}}s:46:"test/phpunit/DeleteCommentControllerTest.class";a:3:{s:5:"bytes";s:4:"4150";s:4:"hash";s:9:"665997995";s:8:"packages";a:0:{}}s:44:"test/phpunit/EditCommentControllerTest.class";a:3:{s:5:"bytes";s:5:"12087";s:4:"hash";s:9:"434782559";s:8:"packages";a:0:{}}}s:11:"directories";a:91:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fa/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:9:"locale/fa";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fa";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"templates/blocks";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15508;a:41:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16475";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fa";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16475";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16475";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-lang-el-15508-16475.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-lang-el-15508-16475.package new file mode 100644 index 0000000..5decfac --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/comment-lang-el-15508-16475.package @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-1.0.0-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-1.0.0-16041-base.package new file mode 100644 index 0000000..29e669e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-1.0.0-16041-base.package @@ -0,0 +1,31 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-1.0.0-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-1.0.0-16041.descriptor new file mode 100644 index 0000000..24938bd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-1.0.0-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:8:"httpauth";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:15;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15727";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"en_GB";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"HTTP autentizace";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:11:"Autentizace";}s:5:"da_DK";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"de_DE";a:3:{s:4:"name";s:22:"HTTP Authentifizierung";s:11:"description";s:45:"Benutzer-Anmeldung via HTTP Authentifizierung";s:10:"groupLabel";s:17:"Authentifizierung";}s:5:"es_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"es_MX";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"es_AR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:41:"Identificarse usando autenticación HTTP.";s:10:"groupLabel";s:14:"Autenticación";}s:5:"et_EE";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fr_FR";a:3:{s:4:"name";s:21:"Authentification HTTP";s:11:"description";s:46:"Connexion à l'aide de l'authentification HTTP";s:10:"groupLabel";s:16:"Authentification";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"el_GR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"is_IS";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"it_IT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:47:"Fai il login utilizzando l'autenticazione HTTP.";s:10:"groupLabel";s:14:"Autenticazione";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"no_NO";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"pl_PL";a:3:{s:4:"name";s:17:"Autentykacja HTTP";s:11:"description";s:40:"Logowanie przy użyciu autentykacji HTTP";s:10:"groupLabel";s:12:"Autentykacja";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"HTTP-Auth";s:11:"description";s:43:"Inloggning med hjälp av HTTP-autentisering";s:10:"groupLabel";s:13:"Autentisering";}s:5:"th_TH";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"tr_TR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"zh_TW";a:3:{s:4:"name";s:11:"HTTP 認証";s:11:"description";s:27:"使用 HTTP 認証登入。";s:10:"groupLabel";s:6:"認証";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"ja_JP";a:3:{s:4:"name";s:11:"HTTP 認証";s:11:"description";s:37:"HTTP認証を使ったログイン。";s:10:"groupLabel";s:6:"認証";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"he_IL";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"HTTP Auth";s:11:"description";s:32:"Login using HTTP authentication.";s:10:"groupLabel";s:14:"Authentication";}}s:5:"files";a:75:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"945";s:4:"hash";s:10:"2217701771";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"FinishLogout.inc";a:3:{s:5:"bytes";s:4:"1881";s:4:"hash";s:10:"2156036505";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"HttpAuthSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"4487";s:4:"hash";s:10:"3697830463";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"HttpAuthWorks.inc";a:3:{s:5:"bytes";s:4:"1466";s:4:"hash";s:10:"3564895414";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"TryLogout.inc";a:3:{s:5:"bytes";s:4:"2220";s:4:"hash";s:10:"3164766767";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/HttpAuthHelper.class";a:3:{s:5:"bytes";s:5:"11159";s:4:"hash";s:9:"162822701";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"classes/HttpAuthInterface_1_0.class";a:3:{s:5:"bytes";s:4:"2671";s:4:"hash";s:10:"3488205236";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/HttpAuthPlugin.class";a:3:{s:5:"bytes";s:4:"2506";s:4:"hash";s:10:"1941443290";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/ServerAuthPlugin.class";a:3:{s:5:"bytes";s:4:"2216";s:4:"hash";s:9:"488216817";s:8:"packages";a:1:{i:0;s:4:"base";}}s:41:"locale/af/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"693";s:4:"hash";s:10:"2538755643";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:41:"locale/ar/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"665";s:4:"hash";s:10:"1070311869";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:41:"locale/ca/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"662";s:4:"hash";s:10:"2381231108";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:41:"locale/cs/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"2351";s:4:"hash";s:10:"4267896778";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:41:"locale/da/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"1367";s:4:"hash";s:10:"2032409174";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:41:"locale/de/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"8816";s:4:"hash";s:10:"2846753926";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:44:"locale/en_GB/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"1222";s:4:"hash";s:10:"1191710935";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:41:"locale/es/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"8333";s:4:"hash";s:10:"2639058577";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:41:"locale/eu/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"668";s:4:"hash";s:10:"2188319748";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:41:"locale/fi/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"652";s:4:"hash";s:10:"4293801256";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:41:"locale/fr/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"9140";s:4:"hash";s:9:"239539579";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:41:"locale/hu/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"638";s:4:"hash";s:9:"340175821";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:41:"locale/it/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"8235";s:4:"hash";s:10:"4019326006";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:41:"locale/ja/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"3233";s:4:"hash";s:9:"997364067";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:41:"locale/ko/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"724";s:4:"hash";s:10:"1230165009";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:41:"locale/lt/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"744";s:4:"hash";s:10:"2918410786";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:41:"locale/no/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"8140";s:4:"hash";s:10:"3565569188";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:41:"locale/pl/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"8666";s:4:"hash";s:10:"2854247320";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:41:"locale/ro/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"697";s:4:"hash";s:10:"2935809327";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:41:"locale/ru/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"824";s:4:"hash";s:10:"2188822239";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:41:"locale/sk/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"793";s:4:"hash";s:9:"571745362";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:41:"locale/sr/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"665";s:4:"hash";s:10:"2730945639";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:41:"locale/sv/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"8205";s:4:"hash";s:9:"992903304";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:41:"locale/tr/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"668";s:4:"hash";s:10:"3042311600";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:41:"locale/uk/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"709";s:4:"hash";s:9:"225979130";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:41:"locale/vi/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"626";s:4:"hash";s:10:"2908411174";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:44:"locale/zh_CN/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:3:"625";s:4:"hash";s:10:"3282642019";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:44:"locale/zh_TW/LC_MESSAGES/modules_httpauth.mo";a:3:{s:5:"bytes";s:4:"7464";s:4:"hash";s:9:"306084868";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:5:"11203";s:4:"hash";s:9:"600951025";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"5694";s:4:"hash";s:9:"905008230";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"5639";s:4:"hash";s:9:"979342796";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"5753";s:4:"hash";s:9:"106998498";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"6615";s:4:"hash";s:10:"3698443022";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"6028";s:4:"hash";s:10:"2023454649";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:5:"10802";s:4:"hash";s:9:"955737838";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"8859";s:4:"hash";s:10:"3265768099";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"9689";s:4:"hash";s:10:"3304649076";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"5687";s:4:"hash";s:10:"1281033817";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"5748";s:4:"hash";s:9:"429795958";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:5:"10200";s:4:"hash";s:10:"2835833112";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"5740";s:4:"hash";s:10:"3745885624";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"9367";s:4:"hash";s:10:"1808304076";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"7263";s:4:"hash";s:9:"185909892";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"5709";s:4:"hash";s:10:"1917481933";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"5778";s:4:"hash";s:10:"3712272387";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"9292";s:4:"hash";s:9:"183054194";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"9718";s:4:"hash";s:10:"1428787095";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5730";s:4:"hash";s:9:"366794190";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"5925";s:4:"hash";s:9:"748631104";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"5873";s:4:"hash";s:10:"3067416693";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"5642";s:4:"hash";s:10:"1651041216";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"3884";s:4:"hash";s:10:"3537158385";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"9239";s:4:"hash";s:10:"4068216183";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5647";s:4:"hash";s:10:"1536364880";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"5893";s:4:"hash";s:10:"2081431156";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"5622";s:4:"hash";s:10:"3098445651";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"5601";s:4:"hash";s:10:"1336284373";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"8459";s:4:"hash";s:10:"1610590697";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:26:"templates/FinishLogout.tpl";a:3:{s:5:"bytes";s:3:"524";s:4:"hash";s:9:"949127898";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"templates/HttpAuthSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"8621";s:4:"hash";s:10:"2958560327";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"templates/TryLogout.tpl";a:3:{s:5:"bytes";s:3:"836";s:4:"hash";s:10:"4224264967";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"test/phpunit/HttpAuthHelperTest.class";a:3:{s:5:"bytes";s:5:"22478";s:4:"hash";s:10:"3470112957";s:8:"packages";a:0:{}}s:37:"test/phpunit/HttpAuthModuleTest.class";a:3:{s:5:"bytes";s:4:"9759";s:4:"hash";s:9:"966365076";s:8:"packages";a:0:{}}s:37:"test/phpunit/HttpAuthPluginTest.class";a:3:{s:5:"bytes";s:4:"4343";s:4:"hash";s:9:"555438452";s:8:"packages";a:0:{}}s:39:"test/phpunit/ServerAuthPluginTest.class";a:3:{s:5:"bytes";s:4:"2858";s:4:"hash";s:10:"3333842922";s:8:"packages";a:0:{}}}s:11:"directories";a:62:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15727;a:28:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-lang-es-15727-16040.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-lang-es-15727-16040.package new file mode 100644 index 0000000..070cda6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/httpauth-lang-es-15727-16040.package @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/imageframe-1.0.5-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/imageframe-1.0.5-16041-base.package new file mode 100644 index 0000000..530fe5c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/imageframe-1.0.5-16041-base.package @@ -0,0 +1,258 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/imageframe-1.0.5-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/imageframe-1.0.5-16041.descriptor new file mode 100644 index 0000000..f33d7ba --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/imageframe-1.0.5-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:10:"imageframe";s:7:"version";s:5:"1.0.5";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:2;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:8:"Fotoraam";s:11:"description";s:19:"Trek rame om beelde";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:19:"Rámečky obrázků";s:11:"description";s:37:"Zobrazení rámečků okolo obrázků";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:11:"Billedramme";s:11:"description";s:31:"Generer rammer omkring billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:12:"Bilderrahmen";s:11:"description";s:16:"Bilder einrahmen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Marco de Imagen";s:11:"description";s:40:"Dibuja marcos alrededor de las imágenes";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:11:"IrudiMarkoa";s:11:"description";s:37:"Irudi inguruko errenderizazio markoak";s:10:"groupLabel";s:9:"Bistarazu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Encadrements";s:11:"description";s:35:"Afficher un cadre autour des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:40:"Visualizza cornici intorno alle immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:14:"Attēlu rāmis";s:11:"description";s:33:"Zīmēt rāmjus apkārt attēliem";s:10:"groupLabel";s:8:"Attēlot";}s:5:"lt_LT";a:3:{s:4:"name";s:12:"VaizdoRėmas";s:11:"description";s:41:"Aplink paveikslėlius generuoti rėmelius";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Képkeret";s:11:"description";s:35:"Keret elhelyezése a képek körül";s:10:"groupLabel";s:9:"Kijelzés";}s:5:"nl_NL";a:3:{s:4:"name";s:16:"AfbeeldingsKader";s:11:"description";s:33:"Genereer kaders rond afbeeldingen";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Ramki";s:11:"description";s:34:"Dodaje ramki do zdjęć i albumów";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Cadre imagine";s:11:"description";s:25:"Afiseaza cadrele imaginii";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:11:"Okvir slike";s:11:"description";s:23:"Prikaz okvira oko slika";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"KuvaKehys";s:11:"description";s:35:"Näytä kehykset kuvien ympärillä";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Bildram";s:11:"description";s:25:"Rendera ramar runt bilder";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:16:"ResimÇerçevesi";s:11:"description";s:39:"Çerçeveleri resim etrafında çevrele";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Рамки Изображений";s:11:"description";s:61:"Создает рамки вокруг изображений";s:10:"groupLabel";s:22:"Отображения";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"图像边框";s:11:"description";s:24:"环绕图像渲染边框";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"圖片邊框";s:11:"description";s:27:"在圖片週圍畫上邊框";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:36:"이미지에 액자를 씌웁니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:24:"イメージフレーム";s:11:"description";s:39:"フレームを画像の周りに描く";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"ImageFrame";s:11:"description";s:27:"Render frames around images";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:278:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:5:"15586";s:4:"hash";s:10:"3980600847";s:8:"packages";a:1:{i:0;s:4:"base";}}s:7:"CSS.inc";a:3:{s:5:"bytes";s:4:"3300";s:4:"hash";s:10:"1329121201";s:8:"packages";a:1:{i:0;s:4:"base";}}s:10:"Sample.inc";a:3:{s:5:"bytes";s:4:"3569";s:4:"hash";s:10:"3127112337";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/ImageFrameImpl.class";a:3:{s:5:"bytes";s:4:"5485";s:4:"hash";s:9:"975280835";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"classes/ImageFrameInterface_1_1.class";a:3:{s:5:"bytes";s:4:"2603";s:4:"hash";s:10:"3602734140";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/README.html";a:3:{s:5:"bytes";s:4:"3556";s:4:"hash";s:10:"4223968113";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/BB.gif";a:3:{s:5:"bytes";s:4:"1139";s:4:"hash";s:10:"2421711625";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/BBL.gif";a:3:{s:5:"bytes";s:4:"1127";s:4:"hash";s:8:"47905217";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/BBR.gif";a:3:{s:5:"bytes";s:4:"1129";s:4:"hash";s:10:"1297244259";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/BL.gif";a:3:{s:5:"bytes";s:4:"1181";s:4:"hash";s:10:"3304872160";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/BR.gif";a:3:{s:5:"bytes";s:4:"1217";s:4:"hash";s:10:"1980468781";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/LL.gif";a:3:{s:5:"bytes";s:4:"1269";s:4:"hash";s:9:"548120118";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/LLB.gif";a:3:{s:5:"bytes";s:4:"1279";s:4:"hash";s:10:"2461150154";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/LLT.gif";a:3:{s:5:"bytes";s:4:"1274";s:4:"hash";s:10:"2197215114";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/RR.gif";a:3:{s:5:"bytes";s:4:"1264";s:4:"hash";s:10:"3652919976";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/RRB.gif";a:3:{s:5:"bytes";s:4:"1269";s:4:"hash";s:10:"2327337193";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/RRT.gif";a:3:{s:5:"bytes";s:4:"1275";s:4:"hash";s:10:"2132450001";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/TL.gif";a:3:{s:5:"bytes";s:4:"1217";s:4:"hash";s:10:"1980468781";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/TR.gif";a:3:{s:5:"bytes";s:4:"1217";s:4:"hash";s:10:"1980468781";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/bamboo/TT.gif";a:3:{s:5:"bytes";s:4:"1137";s:4:"hash";s:8:"60986664";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/TTL.gif";a:3:{s:5:"bytes";s:4:"1141";s:4:"hash";s:10:"2147880121";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/bamboo/TTR.gif";a:3:{s:5:"bytes";s:4:"1127";s:4:"hash";s:9:"149192587";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/bamboo/frame.inc";a:3:{s:5:"bytes";s:4:"1033";s:4:"hash";s:8:"75138482";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/book/BB.gif";a:3:{s:5:"bytes";s:2:"49";s:4:"hash";s:9:"922057793";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/book/BL.gif";a:3:{s:5:"bytes";s:2:"52";s:4:"hash";s:10:"1863523508";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/book/BR.gif";a:3:{s:5:"bytes";s:2:"67";s:4:"hash";s:10:"4268019184";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/book/RR.gif";a:3:{s:5:"bytes";s:2:"63";s:4:"hash";s:10:"1194765051";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/book/TR.gif";a:3:{s:5:"bytes";s:2:"50";s:4:"hash";s:10:"3396600407";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/book/frame.inc";a:3:{s:5:"bytes";s:3:"903";s:4:"hash";s:10:"2957092432";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/BB.jpg";a:3:{s:5:"bytes";s:3:"342";s:4:"hash";s:10:"3133489043";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/BBL.jpg";a:3:{s:5:"bytes";s:3:"526";s:4:"hash";s:10:"1807198160";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/BBR.jpg";a:3:{s:5:"bytes";s:3:"545";s:4:"hash";s:9:"388361801";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/BL.jpg";a:3:{s:5:"bytes";s:3:"556";s:4:"hash";s:10:"2632831581";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/BR.jpg";a:3:{s:5:"bytes";s:3:"546";s:4:"hash";s:10:"4138496059";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/LL.jpg";a:3:{s:5:"bytes";s:3:"361";s:4:"hash";s:10:"1928021510";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/LLB.jpg";a:3:{s:5:"bytes";s:3:"542";s:4:"hash";s:10:"2021761703";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/LLT.jpg";a:3:{s:5:"bytes";s:3:"529";s:4:"hash";s:10:"3570682825";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/RR.jpg";a:3:{s:5:"bytes";s:3:"359";s:4:"hash";s:10:"3091039748";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/RRB.jpg";a:3:{s:5:"bytes";s:3:"572";s:4:"hash";s:10:"3882315800";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/RRT.jpg";a:3:{s:5:"bytes";s:3:"556";s:4:"hash";s:10:"3900795591";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/TL.jpg";a:3:{s:5:"bytes";s:3:"567";s:4:"hash";s:10:"1343185269";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/TR.jpg";a:3:{s:5:"bytes";s:3:"559";s:4:"hash";s:10:"2042919526";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/brand/TT.jpg";a:3:{s:5:"bytes";s:3:"341";s:4:"hash";s:10:"1698052410";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/TTL.jpg";a:3:{s:5:"bytes";s:3:"521";s:4:"hash";s:10:"1271614636";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/brand/TTR.jpg";a:3:{s:5:"bytes";s:3:"543";s:4:"hash";s:10:"2549110413";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/brand/frame.inc";a:3:{s:5:"bytes";s:4:"1039";s:4:"hash";s:10:"1652402785";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/BB.gif";a:3:{s:5:"bytes";s:4:"1027";s:4:"hash";s:10:"3791352794";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/BL.gif";a:3:{s:5:"bytes";s:3:"456";s:4:"hash";s:10:"1052790307";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/BR.gif";a:3:{s:5:"bytes";s:3:"468";s:4:"hash";s:9:"799996887";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/LL.gif";a:3:{s:5:"bytes";s:4:"1197";s:4:"hash";s:10:"3351605297";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/RR.gif";a:3:{s:5:"bytes";s:4:"1159";s:4:"hash";s:10:"1384584765";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/TL.gif";a:3:{s:5:"bytes";s:3:"490";s:4:"hash";s:10:"2832349255";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/TR.gif";a:3:{s:5:"bytes";s:3:"477";s:4:"hash";s:10:"2987994836";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/dotapple/TT.gif";a:3:{s:5:"bytes";s:4:"1024";s:4:"hash";s:9:"283120355";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/dotapple/frame.inc";a:3:{s:5:"bytes";s:3:"970";s:4:"hash";s:10:"1289665796";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/dots/frame.inc";a:3:{s:5:"bytes";s:3:"200";s:4:"hash";s:10:"3555852088";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/BB.gif";a:3:{s:5:"bytes";s:3:"931";s:4:"hash";s:8:"73290888";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"frames/filmedges/BBL.gif";a:3:{s:5:"bytes";s:4:"1653";s:4:"hash";s:10:"1900728516";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/BL.gif";a:3:{s:5:"bytes";s:3:"875";s:4:"hash";s:10:"2657174219";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/BR.gif";a:3:{s:5:"bytes";s:3:"881";s:4:"hash";s:10:"3292488356";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/LL.gif";a:3:{s:5:"bytes";s:3:"879";s:4:"hash";s:10:"1237533927";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/RR.gif";a:3:{s:5:"bytes";s:3:"871";s:4:"hash";s:10:"1611468148";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/TL.gif";a:3:{s:5:"bytes";s:3:"866";s:4:"hash";s:10:"2464736404";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/TR.gif";a:3:{s:5:"bytes";s:3:"880";s:4:"hash";s:10:"1446582445";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/filmedges/TT.gif";a:3:{s:5:"bytes";s:4:"2267";s:4:"hash";s:9:"692754815";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"frames/filmedges/TTL.gif";a:3:{s:5:"bytes";s:4:"1602";s:4:"hash";s:10:"1354140232";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/filmedges/frame.inc";a:3:{s:5:"bytes";s:3:"985";s:4:"hash";s:10:"2680751590";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/BB.gif";a:3:{s:5:"bytes";s:3:"814";s:4:"hash";s:9:"519897628";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/BL.gif";a:3:{s:5:"bytes";s:3:"832";s:4:"hash";s:10:"3887138229";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/BR.gif";a:3:{s:5:"bytes";s:3:"830";s:4:"hash";s:10:"3155837350";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/LL.gif";a:3:{s:5:"bytes";s:3:"810";s:4:"hash";s:10:"1513069506";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/RR.gif";a:3:{s:5:"bytes";s:3:"810";s:4:"hash";s:9:"394095109";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/TL.gif";a:3:{s:5:"bytes";s:3:"819";s:4:"hash";s:10:"1423828513";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/TR.gif";a:3:{s:5:"bytes";s:3:"819";s:4:"hash";s:9:"545067145";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/flicking/TT.gif";a:3:{s:5:"bytes";s:3:"810";s:4:"hash";s:9:"364574179";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/flicking/frame.inc";a:3:{s:5:"bytes";s:3:"960";s:4:"hash";s:9:"412860255";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/BB.gif";a:3:{s:5:"bytes";s:4:"1368";s:4:"hash";s:10:"1565808633";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/BL.gif";a:3:{s:5:"bytes";s:4:"1568";s:4:"hash";s:9:"349438457";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/BR.gif";a:3:{s:5:"bytes";s:4:"1560";s:4:"hash";s:9:"799709413";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/LL.gif";a:3:{s:5:"bytes";s:4:"1414";s:4:"hash";s:10:"3286977659";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/RR.gif";a:3:{s:5:"bytes";s:4:"1422";s:4:"hash";s:10:"3455143771";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/TL.gif";a:3:{s:5:"bytes";s:4:"1555";s:4:"hash";s:10:"2472832552";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/TR.gif";a:3:{s:5:"bytes";s:4:"1574";s:4:"hash";s:10:"1249242811";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/gold/TT.gif";a:3:{s:5:"bytes";s:4:"1370";s:4:"hash";s:8:"67815526";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/gold/frame.inc";a:3:{s:5:"bytes";s:3:"967";s:4:"hash";s:8:"86359405";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/BB.jpg";a:3:{s:5:"bytes";s:3:"396";s:4:"hash";s:10:"1630506388";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/BBL.jpg";a:3:{s:5:"bytes";s:3:"574";s:4:"hash";s:10:"2807230815";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/BBR.jpg";a:3:{s:5:"bytes";s:3:"587";s:4:"hash";s:10:"2919447319";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/BL.jpg";a:3:{s:5:"bytes";s:3:"735";s:4:"hash";s:10:"2984626737";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/BR.jpg";a:3:{s:5:"bytes";s:3:"713";s:4:"hash";s:10:"1471931515";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/LL.jpg";a:3:{s:5:"bytes";s:3:"394";s:4:"hash";s:10:"3821411407";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/LLB.jpg";a:3:{s:5:"bytes";s:3:"449";s:4:"hash";s:10:"4206189180";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/LLT.jpg";a:3:{s:5:"bytes";s:3:"449";s:4:"hash";s:10:"1787454599";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/RR.jpg";a:3:{s:5:"bytes";s:3:"389";s:4:"hash";s:8:"19138138";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/RRB.jpg";a:3:{s:5:"bytes";s:3:"459";s:4:"hash";s:10:"1346742899";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/RRT.jpg";a:3:{s:5:"bytes";s:3:"459";s:4:"hash";s:10:"2197722152";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/TL.jpg";a:3:{s:5:"bytes";s:3:"711";s:4:"hash";s:10:"3394040231";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/TR.jpg";a:3:{s:5:"bytes";s:3:"734";s:4:"hash";s:8:"44016216";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/gold2/TT.jpg";a:3:{s:5:"bytes";s:3:"402";s:4:"hash";s:10:"3486697624";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/TTL.jpg";a:3:{s:5:"bytes";s:3:"578";s:4:"hash";s:10:"1281669600";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/gold2/TTR.jpg";a:3:{s:5:"bytes";s:3:"594";s:4:"hash";s:10:"2882245650";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/gold2/frame.inc";a:3:{s:5:"bytes";s:4:"1033";s:4:"hash";s:10:"2519239408";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/BB.gif";a:3:{s:5:"bytes";s:3:"184";s:4:"hash";s:10:"2204724996";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/BL.gif";a:3:{s:5:"bytes";s:3:"658";s:4:"hash";s:10:"3300848859";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/BR.gif";a:3:{s:5:"bytes";s:3:"342";s:4:"hash";s:10:"2597791243";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/LL.gif";a:3:{s:5:"bytes";s:4:"1106";s:4:"hash";s:10:"3103229424";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/RR.gif";a:3:{s:5:"bytes";s:3:"198";s:4:"hash";s:10:"1558883715";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/TL.gif";a:3:{s:5:"bytes";s:3:"632";s:4:"hash";s:10:"1258715099";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/TR.gif";a:3:{s:5:"bytes";s:3:"330";s:4:"hash";s:10:"4268292438";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/notebook/TT.gif";a:3:{s:5:"bytes";s:3:"169";s:4:"hash";s:9:"349669551";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/notebook/frame.inc";a:3:{s:5:"bytes";s:3:"986";s:4:"hash";s:10:"1632394971";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/BB.gif";a:3:{s:5:"bytes";s:3:"184";s:4:"hash";s:10:"2204724996";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/BL.gif";a:3:{s:5:"bytes";s:3:"658";s:4:"hash";s:10:"3300848859";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/BR.gif";a:3:{s:5:"bytes";s:3:"342";s:4:"hash";s:10:"2597791243";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/CC.gif";a:3:{s:5:"bytes";s:2:"48";s:4:"hash";s:10:"1095166875";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/LL.gif";a:3:{s:5:"bytes";s:4:"1106";s:4:"hash";s:10:"3103229424";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/RR.gif";a:3:{s:5:"bytes";s:3:"198";s:4:"hash";s:10:"1558883715";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/TL.gif";a:3:{s:5:"bytes";s:3:"632";s:4:"hash";s:10:"1258715099";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/TR.gif";a:3:{s:5:"bytes";s:3:"330";s:4:"hash";s:10:"4268292438";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/notebooksquare/TT.gif";a:3:{s:5:"bytes";s:3:"169";s:4:"hash";s:9:"349669551";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"frames/notebooksquare/frame.inc";a:3:{s:5:"bytes";s:4:"1050";s:4:"hash";s:10:"1666509689";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/BB.gif";a:3:{s:5:"bytes";s:3:"964";s:4:"hash";s:10:"1379412384";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/BL.gif";a:3:{s:5:"bytes";s:4:"3154";s:4:"hash";s:10:"2485289673";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/BR.gif";a:3:{s:5:"bytes";s:4:"3168";s:4:"hash";s:9:"116820103";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/LL.gif";a:3:{s:5:"bytes";s:4:"1000";s:4:"hash";s:10:"4056469233";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/RR.gif";a:3:{s:5:"bytes";s:3:"998";s:4:"hash";s:10:"2314942344";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/TL.gif";a:3:{s:5:"bytes";s:4:"3156";s:4:"hash";s:10:"4166728546";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/TR.gif";a:3:{s:5:"bytes";s:4:"3139";s:4:"hash";s:10:"3446785657";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/photocorners/TT.gif";a:3:{s:5:"bytes";s:3:"962";s:4:"hash";s:10:"2045905948";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"frames/photocorners/frame.inc";a:3:{s:5:"bytes";s:3:"978";s:4:"hash";s:9:"446197885";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/BB.gif";a:3:{s:5:"bytes";s:3:"836";s:4:"hash";s:9:"221175360";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/BL.gif";a:3:{s:5:"bytes";s:4:"1073";s:4:"hash";s:9:"487753965";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/BR.gif";a:3:{s:5:"bytes";s:4:"1065";s:4:"hash";s:10:"3347839864";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/LL.gif";a:3:{s:5:"bytes";s:3:"838";s:4:"hash";s:10:"2564346529";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/RR.gif";a:3:{s:5:"bytes";s:3:"835";s:4:"hash";s:9:"666176881";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/TL.gif";a:3:{s:5:"bytes";s:4:"1087";s:4:"hash";s:10:"3837114035";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/TR.gif";a:3:{s:5:"bytes";s:4:"1073";s:4:"hash";s:10:"4013627626";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"frames/photocorners_small/TT.gif";a:3:{s:5:"bytes";s:3:"835";s:4:"hash";s:10:"1747517690";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"frames/photocorners_small/frame.inc";a:3:{s:5:"bytes";s:3:"986";s:4:"hash";s:10:"2133405510";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/BB.gif";a:3:{s:5:"bytes";s:2:"44";s:4:"hash";s:9:"688726079";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/BL.gif";a:3:{s:5:"bytes";s:2:"81";s:4:"hash";s:10:"2970501908";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/BR.gif";a:3:{s:5:"bytes";s:2:"73";s:4:"hash";s:10:"1249990999";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/LL.gif";a:3:{s:5:"bytes";s:2:"50";s:4:"hash";s:10:"3495933725";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/RR.gif";a:3:{s:5:"bytes";s:2:"42";s:4:"hash";s:10:"3188377406";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/TL.gif";a:3:{s:5:"bytes";s:2:"64";s:4:"hash";s:10:"1158751472";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/TR.gif";a:3:{s:5:"bytes";s:2:"64";s:4:"hash";s:10:"3432555852";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/polaroid/TT.gif";a:3:{s:5:"bytes";s:2:"50";s:4:"hash";s:10:"2630212311";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/polaroid/frame.inc";a:3:{s:5:"bytes";s:3:"937";s:4:"hash";s:10:"2618889702";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/BB.gif";a:3:{s:5:"bytes";s:2:"47";s:4:"hash";s:9:"850231272";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/BL.gif";a:3:{s:5:"bytes";s:3:"102";s:4:"hash";s:10:"2690281127";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/BR.gif";a:3:{s:5:"bytes";s:3:"125";s:4:"hash";s:9:"613417322";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/LL.gif";a:3:{s:5:"bytes";s:2:"50";s:4:"hash";s:10:"3495933725";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/RR.gif";a:3:{s:5:"bytes";s:2:"44";s:4:"hash";s:10:"1737123900";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/TL.gif";a:3:{s:5:"bytes";s:2:"64";s:4:"hash";s:10:"1158751472";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/TR.gif";a:3:{s:5:"bytes";s:2:"80";s:4:"hash";s:10:"3210578365";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/polaroids/TT.gif";a:3:{s:5:"bytes";s:2:"50";s:4:"hash";s:10:"2630212311";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"frames/polaroids/frame.inc";a:3:{s:5:"bytes";s:3:"938";s:4:"hash";s:10:"3835896160";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/BB5.gif";a:3:{s:5:"bytes";s:3:"872";s:4:"hash";s:10:"3911925927";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/BL5.gif";a:3:{s:5:"bytes";s:2:"69";s:4:"hash";s:10:"3858099581";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/BR5.gif";a:3:{s:5:"bytes";s:2:"69";s:4:"hash";s:10:"2291539089";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/LL5.gif";a:3:{s:5:"bytes";s:3:"874";s:4:"hash";s:10:"3178835887";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/RR5.gif";a:3:{s:5:"bytes";s:3:"879";s:4:"hash";s:9:"796278811";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/TL5.gif";a:3:{s:5:"bytes";s:2:"68";s:4:"hash";s:10:"2338384281";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/TR5.gif";a:3:{s:5:"bytes";s:2:"69";s:4:"hash";s:10:"1810194834";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/postage/TT5.gif";a:3:{s:5:"bytes";s:3:"873";s:4:"hash";s:10:"3517665299";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"frames/postage/frame.inc";a:3:{s:5:"bytes";s:3:"979";s:4:"hash";s:10:"4219765232";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/shadow/BB.png";a:3:{s:5:"bytes";s:3:"187";s:4:"hash";s:10:"3127255451";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/shadow/BBL.png";a:3:{s:5:"bytes";s:3:"277";s:4:"hash";s:10:"4027018186";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/shadow/BR.png";a:3:{s:5:"bytes";s:3:"263";s:4:"hash";s:10:"2610974460";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"frames/shadow/RR.png";a:3:{s:5:"bytes";s:3:"167";s:4:"hash";s:10:"1973009174";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/shadow/RRT.png";a:3:{s:5:"bytes";s:3:"291";s:4:"hash";s:9:"587473276";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"frames/shadow/frame.inc";a:3:{s:5:"bytes";s:3:"908";s:4:"hash";s:10:"3163001609";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/BB.jpg";a:3:{s:5:"bytes";s:4:"1120";s:4:"hash";s:10:"3351408703";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/BL.jpg";a:3:{s:5:"bytes";s:5:"10883";s:4:"hash";s:10:"3608062087";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/BR.jpg";a:3:{s:5:"bytes";s:5:"10985";s:4:"hash";s:10:"1879304288";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/LL.jpg";a:3:{s:5:"bytes";s:3:"899";s:4:"hash";s:10:"2309387221";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/RR.jpg";a:3:{s:5:"bytes";s:3:"900";s:4:"hash";s:10:"1504490709";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/TL.jpg";a:3:{s:5:"bytes";s:4:"1069";s:4:"hash";s:10:"2373044274";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/TR.jpg";a:3:{s:5:"bytes";s:4:"1123";s:4:"hash";s:10:"3222994650";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/shell/TT.jpg";a:3:{s:5:"bytes";s:4:"1045";s:4:"hash";s:10:"1102939964";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/shell/frame.inc";a:3:{s:5:"bytes";s:3:"969";s:4:"hash";s:10:"3032379596";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/BB.gif";a:3:{s:5:"bytes";s:3:"124";s:4:"hash";s:9:"453921154";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/BL.gif";a:3:{s:5:"bytes";s:3:"454";s:4:"hash";s:9:"480744660";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/BR.gif";a:3:{s:5:"bytes";s:3:"454";s:4:"hash";s:9:"577794196";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/LL.gif";a:3:{s:5:"bytes";s:3:"129";s:4:"hash";s:10:"1322165446";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/RR.gif";a:3:{s:5:"bytes";s:3:"129";s:4:"hash";s:8:"79178272";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/TL.gif";a:3:{s:5:"bytes";s:3:"454";s:4:"hash";s:10:"2420017403";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/TR.gif";a:3:{s:5:"bytes";s:3:"455";s:4:"hash";s:10:"2118035780";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/slide/TT.gif";a:3:{s:5:"bytes";s:3:"124";s:4:"hash";s:9:"239177280";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"frames/slide/frame.inc";a:3:{s:5:"bytes";s:3:"964";s:4:"hash";s:10:"1683961752";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/BB.gif";a:3:{s:5:"bytes";s:3:"114";s:4:"hash";s:10:"2131443653";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/BL.gif";a:3:{s:5:"bytes";s:3:"195";s:4:"hash";s:10:"2516158710";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/BR.gif";a:3:{s:5:"bytes";s:3:"217";s:4:"hash";s:9:"509014933";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/CC.gif";a:3:{s:5:"bytes";s:2:"48";s:4:"hash";s:10:"1095166875";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/CC.png";a:3:{s:5:"bytes";s:3:"826";s:4:"hash";s:10:"3183921730";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/LL.gif";a:3:{s:5:"bytes";s:2:"85";s:4:"hash";s:10:"4229514024";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/RR.gif";a:3:{s:5:"bytes";s:3:"173";s:4:"hash";s:10:"1276207023";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/TL.gif";a:3:{s:5:"bytes";s:3:"117";s:4:"hash";s:10:"3567394235";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/TR.gif";a:3:{s:5:"bytes";s:3:"183";s:4:"hash";s:10:"2197484039";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/slidesquare/TT.gif";a:3:{s:5:"bytes";s:2:"79";s:4:"hash";s:10:"2902979072";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"frames/slidesquare/frame.inc";a:3:{s:5:"bytes";s:4:"1155";s:4:"hash";s:10:"2862142491";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/BB.gif";a:3:{s:5:"bytes";s:3:"947";s:4:"hash";s:10:"2045394578";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/BL.gif";a:3:{s:5:"bytes";s:4:"1505";s:4:"hash";s:10:"2209108768";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/BR.gif";a:3:{s:5:"bytes";s:4:"1506";s:4:"hash";s:10:"1351363522";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/LL.gif";a:3:{s:5:"bytes";s:3:"946";s:4:"hash";s:10:"4076649904";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/RR.gif";a:3:{s:5:"bytes";s:3:"949";s:4:"hash";s:10:"2264776948";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/TL.gif";a:3:{s:5:"bytes";s:4:"1511";s:4:"hash";s:10:"2583590289";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/TR.gif";a:3:{s:5:"bytes";s:4:"1513";s:4:"hash";s:10:"2173158634";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/wood/TT.gif";a:3:{s:5:"bytes";s:3:"946";s:4:"hash";s:10:"1114424752";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/wood/frame.inc";a:3:{s:5:"bytes";s:3:"967";s:4:"hash";s:10:"2776487927";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"images/sample.jpg";a:3:{s:5:"bytes";s:5:"10407";s:4:"hash";s:10:"3494279573";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"locale/af/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1253";s:4:"hash";s:10:"3600861982";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:43:"locale/ca/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:3:"556";s:4:"hash";s:9:"652291239";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:43:"locale/cs/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1717";s:4:"hash";s:9:"445536842";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:43:"locale/da/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1491";s:4:"hash";s:10:"2763489874";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:43:"locale/de/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1514";s:4:"hash";s:9:"338997144";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:46:"locale/en_GB/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:3:"457";s:4:"hash";s:10:"2349274307";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:43:"locale/es/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1625";s:4:"hash";s:10:"1114793967";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/eu/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1261";s:4:"hash";s:10:"3465193256";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:43:"locale/fi/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1291";s:4:"hash";s:10:"1243406355";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:43:"locale/fr/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1645";s:4:"hash";s:10:"1978237264";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:43:"locale/hu/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1686";s:4:"hash";s:10:"1955188454";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:43:"locale/is/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:3:"421";s:4:"hash";s:10:"1156460605";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:43:"locale/it/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1441";s:4:"hash";s:10:"1428382507";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:43:"locale/ja/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1710";s:4:"hash";s:10:"1797011197";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:43:"locale/ko/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1063";s:4:"hash";s:9:"166983889";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:43:"locale/lt/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1662";s:4:"hash";s:9:"149878921";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:43:"locale/lv/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1684";s:4:"hash";s:9:"155965726";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:43:"locale/nl/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1232";s:4:"hash";s:10:"4253605251";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:43:"locale/no/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1593";s:4:"hash";s:10:"1774066456";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:43:"locale/pl/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1655";s:4:"hash";s:10:"2134657838";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:43:"locale/ro/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1261";s:4:"hash";s:10:"4028409925";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:43:"locale/ru/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1589";s:4:"hash";s:9:"130596430";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:43:"locale/sk/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:3:"636";s:4:"hash";s:10:"3359374980";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:43:"locale/sr/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1251";s:4:"hash";s:10:"4146415239";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:43:"locale/sv/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1642";s:4:"hash";s:10:"3420702914";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:43:"locale/tr/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1244";s:4:"hash";s:10:"3717117836";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:43:"locale/uk/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:3:"524";s:4:"hash";s:10:"2049417753";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:46:"locale/zh_CN/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1290";s:4:"hash";s:10:"3642731989";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:46:"locale/zh_TW/LC_MESSAGES/modules_imageframe.mo";a:3:{s:5:"bytes";s:4:"1619";s:4:"hash";s:10:"1667152545";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"1815";s:4:"hash";s:10:"4224091053";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"2387";s:4:"hash";s:10:"1601745702";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"2310";s:4:"hash";s:10:"4293144572";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"2578";s:4:"hash";s:9:"452519220";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"2447";s:4:"hash";s:10:"2992132824";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"2610";s:4:"hash";s:10:"2231879344";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"2392";s:4:"hash";s:10:"3018172854";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"2619";s:4:"hash";s:9:"779364073";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"2329";s:4:"hash";s:9:"747012431";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"2331";s:4:"hash";s:10:"1604334318";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"2458";s:4:"hash";s:10:"1073326748";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"2574";s:4:"hash";s:10:"2522268154";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"2087";s:4:"hash";s:9:"517042394";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"2419";s:4:"hash";s:10:"1768996869";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"2522";s:4:"hash";s:10:"3634298551";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"2465";s:4:"hash";s:10:"3468438966";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"2675";s:4:"hash";s:10:"2370363682";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"2506";s:4:"hash";s:10:"4174444637";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"2425";s:4:"hash";s:10:"2608891567";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"2522";s:4:"hash";s:9:"420352205";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"2474";s:4:"hash";s:9:"816012122";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"2369";s:4:"hash";s:10:"2331465062";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"2742";s:4:"hash";s:9:"560225386";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"2379";s:4:"hash";s:10:"2735522983";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"2318";s:4:"hash";s:10:"3326072774";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1444";s:4:"hash";s:9:"163756166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"2653";s:4:"hash";s:10:"1199343014";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"2529";s:4:"hash";s:9:"202468215";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"2437";s:4:"hash";s:10:"3987710561";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"2320";s:4:"hash";s:10:"3348692496";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"2403";s:4:"hash";s:10:"1528050053";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:28:"templates/ImageFrameHead.tpl";a:3:{s:5:"bytes";s:3:"461";s:4:"hash";s:10:"3377712248";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"templates/ImageFrameStyle.tpl";a:3:{s:5:"bytes";s:4:"3507";s:4:"hash";s:10:"1631770410";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"templates/SampleBody.tpl";a:3:{s:5:"bytes";s:4:"1215";s:4:"hash";s:10:"2094828730";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"templates/containers/ImageFrame.tpl";a:3:{s:5:"bytes";s:4:"3398";s:4:"hash";s:10:"1187312660";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"test/data/counter.tpl";a:3:{s:5:"bytes";s:3:"344";s:4:"hash";s:10:"3917915000";s:8:"packages";a:0:{}}s:33:"test/phpunit/ImageFrameTest.class";a:3:{s:5:"bytes";s:4:"5432";s:4:"hash";s:10:"2912432465";s:8:"packages";a:0:{}}}s:11:"directories";a:89:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:6:"frames";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"frames/bamboo";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"frames/book";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"frames/brand";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"frames/dotapple";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"frames/dots";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"frames/filmedges";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"frames/flicking";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"frames/gold";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"frames/gold2";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"frames/notebook";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"frames/notebooksquare";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"frames/photocorners";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"frames/photocorners_small";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"frames/polaroid";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"frames/polaroids";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"frames/postage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"frames/shadow";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"frames/shell";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"frames/slide";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"frames/slidesquare";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"frames/wood";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"templates/containers";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"test/data";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/itemadd-1.0.0-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/itemadd-1.0.0-16041-base.package new file mode 100644 index 0000000..a772168 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/itemadd-1.0.0-16041-base.package @@ -0,0 +1,25 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/itemadd-1.0.0-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/itemadd-1.0.0-16041.descriptor new file mode 100644 index 0000000..c84e065 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/itemadd-1.0.0-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"itemadd";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15812";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Voeg Items by";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ca_ES";a:3:{s:4:"name";s:16:"Agregar Elements";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:16:"Přidat položky";s:11:"description";s:49:"Přidat položky z místního serveru nebo z webu";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Tilføj elementer";s:11:"description";s:52:"Tilføj elementer fra lokal server eller internettet";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Element hinzufügen";s:11:"description";s:64:"Elemente vom Gallery-Server oder von anderer Website hinzufügen";s:10:"groupLabel";s:11:"Importieren";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Añadir Elementos";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Agregar Elementos";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:13:"Agregar Items";s:11:"description";s:50:"Añadir elementos desde el servidor local o la web";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Lisa Pilte";s:11:"description";s:44:"Lisa pilte kohalikust serverist või veebist";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:17:"Elementuak Gehitu";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fr_FR";a:3:{s:4:"name";s:22:"Ajouter des éléments";s:11:"description";s:60:"Ajouter des éléments depuis le serveur local ou sur le web";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:14:"Cuir Míreanna";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:16:"Aggiungi Oggetti";s:11:"description";s:44:"Aggiungi oggetti dal server locale o dal web";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:16:"Naujas elementas";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"hu_HU";a:3:{s:4:"name";s:19:"Elemek hozzáadása";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:15:"Items Toevoegen";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Dodaj pozycje";s:11:"description";s:51:"Dodaje pozycje z serwera lokalnego lub ze stron WWW";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:15:"Adicionar itens";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:15:"Adicionar Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:17:"Adauga fotografii";s:11:"description";s:38:"Adauga articole din server sau din WWW";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:16:"Pridať položky";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:14:"Dodaj Predmete";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:14:"Dodaj Predmete";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fi_FI";a:3:{s:4:"name";s:13:"Lisää Kuvia";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Lägg till objekt";s:11:"description";s:55:"Lägg till objekt från lokal server eller från webben";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:27:"Додати Елемент";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:21:"Thêm đối tượng";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:12:"Ögeler Ekle";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"bg_BG";a:3:{s:4:"name";s:33:"Добавете Елементи";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Добавить Элементы";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"添加项目";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"增加項目";s:11:"description";s:42:"從本地伺服器或網頁上加入項目";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:22:"아이템 추가하기";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"アイテム追加";s:11:"description";s:66:"ローカルサーバかウェブからアイテムを追加する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:15:"أضف مواد";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:21:"הוסף פריטים";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Add Items";s:11:"description";s:38:"Add items from local server or the web";s:10:"groupLabel";s:6:"Import";}}s:5:"files";a:100:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"579";s:4:"hash";s:9:"912389590";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"ItemAddFromServer.inc";a:3:{s:5:"bytes";s:5:"18427";s:4:"hash";s:10:"1661644349";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"ItemAddFromWeb.inc";a:3:{s:5:"bytes";s:5:"13441";s:4:"hash";s:10:"1489980954";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"ItemAddSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"5984";s:4:"hash";s:9:"805709817";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/af/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6913";s:4:"hash";s:10:"1903123154";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:40:"locale/ar/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8154";s:4:"hash";s:9:"558673693";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:40:"locale/bg/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"3067";s:4:"hash";s:10:"1510602529";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:40:"locale/ca/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7214";s:4:"hash";s:10:"3685549672";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:40:"locale/cs/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7580";s:4:"hash";s:10:"1970571354";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/da/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7983";s:4:"hash";s:10:"3191642400";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:40:"locale/de/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8433";s:4:"hash";s:10:"1603793159";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:43:"locale/en_GB/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:3:"627";s:4:"hash";s:10:"1898449998";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8000";s:4:"hash";s:8:"44968229";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/es_AR/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"1867";s:4:"hash";s:10:"1649912284";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:43:"locale/es_MX/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"4494";s:4:"hash";s:9:"433173579";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:40:"locale/et/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7466";s:4:"hash";s:10:"2325020760";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:40:"locale/eu/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6986";s:4:"hash";s:10:"3116626220";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fi/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6716";s:4:"hash";s:10:"3017990138";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8721";s:4:"hash";s:9:"798736755";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/ga/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"3543";s:4:"hash";s:10:"2886370530";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:40:"locale/he/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"5862";s:4:"hash";s:9:"368942004";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:40:"locale/hu/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6502";s:4:"hash";s:10:"1841768843";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:40:"locale/is/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:3:"461";s:4:"hash";s:9:"256126170";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:40:"locale/it/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8286";s:4:"hash";s:10:"3181126406";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8316";s:4:"hash";s:10:"2521898434";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/ko/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"4795";s:4:"hash";s:10:"3465729241";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:40:"locale/lt/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7049";s:4:"hash";s:10:"4037601825";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:40:"locale/nl/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6805";s:4:"hash";s:10:"2587826098";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8338";s:4:"hash";s:10:"3294893681";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8554";s:4:"hash";s:9:"916736354";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:40:"locale/pt/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"3443";s:4:"hash";s:8:"69379822";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:43:"locale/pt_BR/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6614";s:4:"hash";s:10:"2239600156";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:40:"locale/ro/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8125";s:4:"hash";s:10:"2577714747";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:40:"locale/ru/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"9166";s:4:"hash";s:9:"723861584";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sk/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"3325";s:4:"hash";s:10:"3715184923";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:40:"locale/sl/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:3:"880";s:4:"hash";s:10:"3101203998";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:40:"locale/sr/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6978";s:4:"hash";s:10:"2822898741";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:40:"locale/sv/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8553";s:4:"hash";s:10:"1765374658";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"2308";s:4:"hash";s:10:"1740043900";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:40:"locale/uk/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"8349";s:4:"hash";s:9:"548635323";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:40:"locale/vi/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7600";s:4:"hash";s:10:"1839404609";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"6352";s:4:"hash";s:10:"4221565247";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_itemadd.mo";a:3:{s:5:"bytes";s:4:"7856";s:4:"hash";s:10:"2662918530";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"2745";s:4:"hash";s:10:"1756736480";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"8850";s:4:"hash";s:10:"2067682411";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"9980";s:4:"hash";s:10:"4070797468";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"7459";s:4:"hash";s:10:"2238401678";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"9082";s:4:"hash";s:10:"1474971663";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"9017";s:4:"hash";s:10:"4146364182";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"9163";s:4:"hash";s:10:"2634336554";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"9659";s:4:"hash";s:10:"2675064123";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"9018";s:4:"hash";s:8:"73069008";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"9440";s:4:"hash";s:10:"4189624431";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"9357";s:4:"hash";s:10:"3688404230";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"9331";s:4:"hash";s:10:"4186678495";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"8747";s:4:"hash";s:9:"333340399";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"8764";s:4:"hash";s:9:"471130530";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"8531";s:4:"hash";s:9:"841391979";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"9747";s:4:"hash";s:10:"3368289894";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"7833";s:4:"hash";s:10:"1852448071";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"8704";s:4:"hash";s:9:"741428716";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"8478";s:4:"hash";s:10:"1238891516";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"5932";s:4:"hash";s:10:"2258917916";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"9438";s:4:"hash";s:10:"4089246647";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"9694";s:4:"hash";s:10:"3918458175";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"7805";s:4:"hash";s:10:"1287577850";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"8821";s:4:"hash";s:10:"2944859509";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"8758";s:4:"hash";s:10:"1529704598";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"9263";s:4:"hash";s:7:"5164738";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"9581";s:4:"hash";s:10:"2812253992";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"7877";s:4:"hash";s:10:"2106639248";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"8810";s:4:"hash";s:9:"573476997";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"9173";s:4:"hash";s:10:"3677651926";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:5:"10994";s:4:"hash";s:9:"806650901";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"7350";s:4:"hash";s:9:"393572507";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sl.po";a:3:{s:5:"bytes";s:4:"6141";s:4:"hash";s:10:"4173296668";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"8753";s:4:"hash";s:10:"3324760819";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"4382";s:4:"hash";s:10:"3060069102";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"9522";s:4:"hash";s:10:"1397877748";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"6574";s:4:"hash";s:10:"3930560608";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:5:"10638";s:4:"hash";s:9:"606572794";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"9387";s:4:"hash";s:10:"1721333567";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"8080";s:4:"hash";s:10:"3388680853";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"8717";s:4:"hash";s:10:"2093612160";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:31:"templates/ItemAddFromServer.tpl";a:3:{s:5:"bytes";s:5:"10822";s:4:"hash";s:10:"3732312539";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"templates/ItemAddFromWeb.tpl";a:3:{s:5:"bytes";s:4:"5496";s:4:"hash";s:10:"2649826255";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/ItemAddSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"4437";s:4:"hash";s:10:"1864487738";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"test/data/localUploadDir/test1.gif";a:3:{s:5:"bytes";s:4:"1083";s:4:"hash";s:10:"1305344521";s:8:"packages";a:0:{}}s:34:"test/data/localUploadDir/test1.jpg";a:3:{s:5:"bytes";s:4:"1966";s:4:"hash";s:10:"1964933131";s:8:"packages";a:0:{}}s:34:"test/data/localUploadDir/test2.gif";a:3:{s:5:"bytes";s:5:"15068";s:4:"hash";s:10:"2424198006";s:8:"packages";a:0:{}}s:34:"test/data/localUploadDir/test4.gif";a:3:{s:5:"bytes";s:5:"26020";s:4:"hash";s:10:"3593619326";s:8:"packages";a:0:{}}s:36:"test/data/localUploadDir/test[3].gif";a:3:{s:5:"bytes";s:4:"2959";s:4:"hash";s:9:"795576511";s:8:"packages";a:0:{}}s:19:"test/data/test1.gif";a:3:{s:5:"bytes";s:4:"1083";s:4:"hash";s:10:"1305344521";s:8:"packages";a:0:{}}s:19:"test/data/test1.jpg";a:3:{s:5:"bytes";s:4:"1966";s:4:"hash";s:10:"1964933131";s:8:"packages";a:0:{}}s:19:"test/data/test2.gif";a:3:{s:5:"bytes";s:5:"15068";s:4:"hash";s:10:"2424198006";s:8:"packages";a:0:{}}s:21:"test/data/test[3].gif";a:3:{s:5:"bytes";s:4:"2959";s:4:"hash";s:9:"795576511";s:8:"packages";a:0:{}}s:40:"test/phpunit/ItemAddFromServerTest.class";a:3:{s:5:"bytes";s:5:"20942";s:4:"hash";s:10:"3771053428";s:8:"packages";a:0:{}}s:37:"test/phpunit/ItemAddFromWebTest.class";a:3:{s:5:"bytes";s:5:"26621";s:4:"hash";s:9:"705748601";s:8:"packages";a:0:{}}s:49:"test/phpunit/ItemAddSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:5:"17845";s:4:"hash";s:10:"2995469971";s:8:"packages";a:0:{}}}s:11:"directories";a:85:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:9:"locale/sl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"test/data/localUploadDir";a:1:{s:8:"packages";a:0:{}}s:9:"test/data";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15812;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/linkitem-1.1.2.1-16636-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/linkitem-1.1.2.1-16636-base.package new file mode 100644 index 0000000..4b2a6ec --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/linkitem-1.1.2.1-16636-base.package @@ -0,0 +1,38 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/linkitem-1.1.2.1-16636.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/linkitem-1.1.2.1-16636.descriptor new file mode 100644 index 0000000..4c7003e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/linkitem-1.1.2.1-16636.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:8:"linkitem";s:7:"version";s:7:"1.1.2.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Odkaz na položky";s:11:"description";s:53:"Tvorba odkazů na jiná alba nebo externí URL adresy";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Link emner";s:11:"description";s:52:"Opret links til andre albummer eller eksterne URL'er";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:16:"Element-Verweise";s:11:"description";s:66:"Erzeugt einen Verweis auf ein anderes Album, oder eine externe URL";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Enlazar Elementos";s:11:"description";s:48:"Crear enlaces a otros álbumes o a urls externas";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Elementuak Lotu";s:11:"description";s:47:"Beste album edo kanpoko URL-etara loturak sortu";s:10:"groupLabel";s:9:"Bistarazi";}s:5:"fr_FR";a:3:{s:4:"name";s:5:"Liens";s:11:"description";s:52:"Créer des liens vers des albums ou des URL externes";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:29:"Σύνδεση Αρχείων";s:11:"description";s:115:"Δημιουργία συνδέσμων σε άλλα άλμπουμ ή εξωτερικές διευθύνσεις";s:10:"groupLabel";s:14:"Προβολή";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:12:"Oggetti Link";s:11:"description";s:40:"Crea link ad altri album o a url esterni";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Elementų nuorodos";s:11:"description";s:57:"Sukurti nuorodas į kitus albumus arba į išorinius URL.";s:10:"groupLabel";s:11:"Vaizdavimas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:58:"Linkeket készít más albumokra, vagy külső webcímekre";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:50:"Maak links naar andere albums of naar externe URLs";s:10:"groupLabel";s:9:"Weergeven";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:5:"Linki";s:11:"description";s:62:"Tworzy linki do innego albumu lub do zewnętrzych adresów URL";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Visualizar";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:14:"Leaga articole";s:11:"description";s:54:"Creeaza legaturi catre alte albume sau URL-uri externe";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"Prikaz";}s:5:"sr_YU";a:3:{s:4:"name";s:12:"Objekti-veze";s:11:"description";s:56:"Pravljenje veza ka drugim albumima ili spoljnim adresama";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:13:"Länka objekt";s:11:"description";s:49:"Skapa länk till anndra album eller externa URLer";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:64:"Diğer albümlere yada dış kaynaklı url'lere bağlantı yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:18:"Показване";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Ссылки на элементы";s:11:"description";s:99:"Создает ссылки на другие альбомы или внешние адреса url";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"链接项目";s:11:"description";s:48:"产生指到其他相簿或外部网址的链接";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"鏈接項目";s:11:"description";s:48:"產生指到其他相簿或外部網址的鏈接";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:62:"사진첩또는 확장된 주소등에 연결을 만듭니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Link Items";s:11:"description";s:45:"Create links to other albums or external urls";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:101:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1260";s:4:"hash";s:10:"1884142615";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"ItemAddLinkItem.inc";a:3:{s:5:"bytes";s:4:"8126";s:4:"hash";s:10:"1446560054";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"LinkItemOption.inc";a:3:{s:5:"bytes";s:4:"2529";s:4:"hash";s:10:"1206993501";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"LinkItemSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"3221";s:4:"hash";s:10:"2285407062";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"classes/Entities.inc";a:3:{s:5:"bytes";s:3:"400";s:4:"hash";s:10:"3282770995";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"classes/GalleryLinkItem.class";a:3:{s:5:"bytes";s:4:"5231";s:4:"hash";s:10:"2948403242";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"5050";s:4:"hash";s:10:"1581424150";s:8:"packages";a:1:{i:0;s:4:"base";}}s:56:"classes/GalleryStorage/xml-src/A_GalleryLinkItem_1.0.xml";a:3:{s:5:"bytes";s:3:"568";s:4:"hash";s:10:"2980542609";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"classes/LinkItemToolkit.class";a:3:{s:5:"bytes";s:4:"4401";s:4:"hash";s:10:"4050126237";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"images/arrow.png";a:3:{s:5:"bytes";s:3:"330";s:4:"hash";s:10:"2771826340";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"images/link.jpg";a:3:{s:5:"bytes";s:4:"9207";s:4:"hash";s:10:"3372251726";s:8:"packages";a:1:{i:0;s:4:"base";}}s:41:"locale/af/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"778";s:4:"hash";s:10:"2984717373";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:41:"locale/ar/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"702";s:4:"hash";s:10:"1867107296";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:41:"locale/bg/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"794";s:4:"hash";s:10:"2739405514";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:41:"locale/ca/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"754";s:4:"hash";s:10:"1324573194";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:41:"locale/cs/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3733";s:4:"hash";s:10:"1662309616";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:41:"locale/da/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3558";s:4:"hash";s:9:"418408738";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:41:"locale/de/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"4277";s:4:"hash";s:10:"2464104678";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:41:"locale/el/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"5140";s:4:"hash";s:9:"402558708";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:44:"locale/en_GB/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"493";s:4:"hash";s:10:"3031269343";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:41:"locale/es/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3953";s:4:"hash";s:10:"4047003924";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:44:"locale/es_AR/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"509";s:4:"hash";s:10:"1250345541";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:44:"locale/es_MX/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"678";s:4:"hash";s:9:"167156958";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:41:"locale/et/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"629";s:4:"hash";s:10:"3851775615";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:41:"locale/eu/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1282";s:4:"hash";s:9:"304491465";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:41:"locale/fi/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"724";s:4:"hash";s:10:"1142110005";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:41:"locale/fr/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3908";s:4:"hash";s:10:"3072491047";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:41:"locale/ga/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"675";s:4:"hash";s:10:"2791062045";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:41:"locale/he/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"698";s:4:"hash";s:10:"2867778625";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:41:"locale/hu/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1269";s:4:"hash";s:10:"2901875396";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:41:"locale/it/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3649";s:4:"hash";s:10:"2525828520";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:41:"locale/ja/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1241";s:4:"hash";s:10:"3300883704";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:41:"locale/ko/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1340";s:4:"hash";s:10:"3957249569";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:41:"locale/lt/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3859";s:4:"hash";s:10:"4293077727";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:41:"locale/nl/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1195";s:4:"hash";s:10:"3841705422";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:41:"locale/no/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3752";s:4:"hash";s:10:"2586416010";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:41:"locale/pl/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"4063";s:4:"hash";s:10:"1142820909";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:41:"locale/pt/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"627";s:4:"hash";s:8:"61583609";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:44:"locale/pt_BR/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"719";s:4:"hash";s:10:"3800159427";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:41:"locale/ro/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1672";s:4:"hash";s:10:"3169474156";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:41:"locale/ru/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1753";s:4:"hash";s:10:"3180766374";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:41:"locale/sk/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"838";s:4:"hash";s:10:"2333657466";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:41:"locale/sl/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"738";s:4:"hash";s:10:"1733842580";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:41:"locale/sr/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3696";s:4:"hash";s:10:"3220391911";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:41:"locale/sv/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3616";s:4:"hash";s:10:"2204630112";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:41:"locale/tr/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1349";s:4:"hash";s:9:"114774198";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:41:"locale/uk/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"758";s:4:"hash";s:10:"1927815339";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:41:"locale/vi/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:3:"705";s:4:"hash";s:10:"1559687752";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:44:"locale/zh_CN/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"1347";s:4:"hash";s:10:"2950188552";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:44:"locale/zh_TW/LC_MESSAGES/modules_linkitem.mo";a:3:{s:5:"bytes";s:4:"3534";s:4:"hash";s:10:"1556301406";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"5802";s:4:"hash";s:10:"2374684836";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"3258";s:4:"hash";s:10:"4023075537";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3196";s:4:"hash";s:10:"2471393645";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"3441";s:4:"hash";s:10:"2582432756";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3324";s:4:"hash";s:10:"1971600963";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"4610";s:4:"hash";s:9:"249211504";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"4644";s:4:"hash";s:10:"1609964911";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"5275";s:4:"hash";s:10:"2579197107";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"6119";s:4:"hash";s:10:"4152878029";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"4362";s:4:"hash";s:10:"1367252784";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"4954";s:4:"hash";s:10:"4292264530";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"4854";s:4:"hash";s:9:"674235591";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"4934";s:4:"hash";s:10:"3211117985";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"3153";s:4:"hash";s:10:"2618745660";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3423";s:4:"hash";s:10:"1164834652";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3299";s:4:"hash";s:10:"3171408286";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"4762";s:4:"hash";s:10:"1733846072";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"3863";s:4:"hash";s:10:"3842065304";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"3235";s:4:"hash";s:9:"815694069";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"3387";s:4:"hash";s:10:"2235798218";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"4601";s:4:"hash";s:9:"327122031";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3509";s:4:"hash";s:9:"705093186";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3528";s:4:"hash";s:8:"62877313";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"4975";s:4:"hash";s:9:"573693350";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3478";s:4:"hash";s:10:"1700937391";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"4718";s:4:"hash";s:10:"3370469963";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5040";s:4:"hash";s:10:"1680453791";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"3202";s:4:"hash";s:10:"2398728637";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"3175";s:4:"hash";s:10:"4019076345";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"3732";s:4:"hash";s:9:"228561724";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"3976";s:4:"hash";s:10:"3193533501";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3397";s:4:"hash";s:8:"67522570";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sl.po";a:3:{s:5:"bytes";s:4:"3310";s:4:"hash";s:9:"101837543";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"4551";s:4:"hash";s:10:"3781645769";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1841";s:4:"hash";s:10:"2456958145";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"4518";s:4:"hash";s:9:"743390629";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3539";s:4:"hash";s:9:"251458465";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3495";s:4:"hash";s:10:"3653280144";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3196";s:4:"hash";s:9:"785568720";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3397";s:4:"hash";s:9:"299557905";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"4373";s:4:"hash";s:10:"2420776412";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:29:"templates/ItemAddLinkItem.tpl";a:3:{s:5:"bytes";s:4:"2000";s:4:"hash";s:10:"3168698319";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"templates/LinkItemOption.tpl";a:3:{s:5:"bytes";s:3:"633";s:4:"hash";s:10:"3696569324";s:8:"packages";a:1:{i:0;s:4:"base";}}s:31:"templates/LinkItemSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"3099";s:4:"hash";s:10:"2428580714";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"test/phpunit/ItemAddLinkItemTest.class";a:3:{s:5:"bytes";s:4:"8648";s:4:"hash";s:9:"498728000";s:8:"packages";a:0:{}}s:37:"test/phpunit/LinkItemOptionTest.class";a:3:{s:5:"bytes";s:4:"3155";s:4:"hash";s:10:"1925314080";s:8:"packages";a:0:{}}s:50:"test/phpunit/LinkItemSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"2625";s:4:"hash";s:10:"1621262214";s:8:"packages";a:0:{}}s:31:"test/phpunit/LinkItemTest.class";a:3:{s:5:"bytes";s:5:"10254";s:4:"hash";s:10:"4115735468";s:8:"packages";a:0:{}}}s:11:"directories";a:87:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:9:"locale/sl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16634";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16634";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16634";s:2:"de";s:5:"16040";s:2:"el";s:5:"16634";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16634";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16634";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16634";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16634";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/multiroot-1.0.0-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/multiroot-1.0.0-16041-base.package new file mode 100644 index 0000000..c739062 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/multiroot-1.0.0-16041-base.package @@ -0,0 +1,21 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/multiroot-1.0.0-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/multiroot-1.0.0-16041.descriptor new file mode 100644 index 0000000..10958bc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/multiroot-1.0.0-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:9:"multiroot";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:8;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:38:"Definovat náhradní pohled na Galerii";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:57:"Definieren Sie eine Alternative Gastansicht Ihrer Gallery";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:10:"Multiraíz";s:11:"description";s:51:"Define una vista de invitado alternativa de Gallery";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:6:"Näita";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:12:"Multi-racine";s:11:"description";s:49:"Définir une vue d'invité alternative de Gallery";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:69:"Definisci una visualizzazione alternativa di Gallery per i visitatori";s:10:"groupLabel";s:10:"Visualizza";}s:5:"lv_LV";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:49:"Definiuje alternatywny wygląd galerii dla gości";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:12:"Visualizeaza";}s:5:"sk_SK";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:43:"Definiera en alternativ gäst-vy av Gallery";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Çoklukök";s:11:"description";s:52:"Galeri için alternatif ziyaretçi izlemesi tanımla";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"多重根相簿";s:11:"description";s:42:"定義訪客看到的不同 Gallery 畫面";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:59:"Gallery のゲスト向け代替ビューを定義します";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:9:"Multiroot";s:11:"description";s:45:"Define an alternate guest view of the Gallery";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:80:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"288";s:4:"hash";s:9:"691536087";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"ConfigureMultiroot.inc";a:3:{s:5:"bytes";s:4:"5770";s:4:"hash";s:10:"1310999388";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"locale/af/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"591";s:4:"hash";s:9:"335865812";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:42:"locale/ar/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"553";s:4:"hash";s:10:"2899007793";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:42:"locale/bg/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"600";s:4:"hash";s:10:"3423813576";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:42:"locale/ca/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"587";s:4:"hash";s:10:"1337274187";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:42:"locale/cs/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"1276";s:4:"hash";s:10:"1812832739";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:42:"locale/da/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"732";s:4:"hash";s:10:"3708373019";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:42:"locale/de/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"6059";s:4:"hash";s:10:"2826627204";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:45:"locale/en_GB/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"492";s:4:"hash";s:10:"2064495665";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:42:"locale/es/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"5779";s:4:"hash";s:10:"2070680218";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:45:"locale/es_AR/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"508";s:4:"hash";s:10:"2866311277";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:45:"locale/es_MX/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"586";s:4:"hash";s:9:"592487938";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:42:"locale/et/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"527";s:4:"hash";s:10:"1156601537";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:42:"locale/eu/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"597";s:4:"hash";s:9:"500954716";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:42:"locale/fi/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"573";s:4:"hash";s:9:"772845894";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:42:"locale/fr/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"6099";s:4:"hash";s:10:"3643420433";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:42:"locale/ga/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"558";s:4:"hash";s:10:"3861051340";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:42:"locale/he/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"550";s:4:"hash";s:9:"817667284";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:42:"locale/hu/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"531";s:4:"hash";s:10:"4046206458";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:42:"locale/it/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"6037";s:4:"hash";s:10:"1491738837";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:42:"locale/ja/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"2385";s:4:"hash";s:10:"3391094161";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:42:"locale/ko/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"619";s:4:"hash";s:8:"25169899";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:42:"locale/lt/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"635";s:4:"hash";s:10:"3387781019";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:42:"locale/nl/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"555";s:4:"hash";s:9:"311864930";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:42:"locale/no/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"5626";s:4:"hash";s:10:"1253719618";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:42:"locale/pl/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"6211";s:4:"hash";s:10:"1107193871";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:42:"locale/pt/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"513";s:4:"hash";s:10:"2470115097";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:45:"locale/pt_BR/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"526";s:4:"hash";s:9:"102495791";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:42:"locale/ro/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"630";s:4:"hash";s:10:"3748696305";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:42:"locale/ru/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"687";s:4:"hash";s:10:"2211363628";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:42:"locale/sk/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"676";s:4:"hash";s:9:"136643917";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:42:"locale/sl/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"678";s:4:"hash";s:10:"2074327059";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:42:"locale/sr/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"562";s:4:"hash";s:9:"788173318";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:42:"locale/sv/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"5792";s:4:"hash";s:10:"1035478383";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/tr/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"1779";s:4:"hash";s:10:"1515735801";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:42:"locale/uk/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"568";s:4:"hash";s:9:"501089995";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:45:"locale/zh_CN/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:3:"534";s:4:"hash";s:10:"3001017362";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:45:"locale/zh_TW/LC_MESSAGES/modules_multiroot.mo";a:3:{s:5:"bytes";s:4:"5290";s:4:"hash";s:10:"2358345470";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"1935";s:4:"hash";s:9:"475741084";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"4144";s:4:"hash";s:10:"3814714815";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"4079";s:4:"hash";s:9:"595629002";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"4265";s:4:"hash";s:10:"3027567445";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"4205";s:4:"hash";s:10:"1293417831";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"4381";s:4:"hash";s:10:"1138616361";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"4153";s:4:"hash";s:7:"2437359";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"7373";s:4:"hash";s:10:"2631008164";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"6343";s:4:"hash";s:10:"2165964911";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"6832";s:4:"hash";s:10:"2063579819";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"6771";s:4:"hash";s:9:"543824021";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"6857";s:4:"hash";s:10:"3739122176";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"4053";s:4:"hash";s:9:"807679936";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"4143";s:4:"hash";s:10:"3791222329";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"4196";s:4:"hash";s:10:"2401745548";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"7045";s:4:"hash";s:10:"2737802000";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"4740";s:4:"hash";s:10:"3146128159";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"4119";s:4:"hash";s:10:"4126465001";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"4185";s:4:"hash";s:10:"1207643896";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"7077";s:4:"hash";s:10:"1289597717";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"5066";s:4:"hash";s:10:"1168812160";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"4156";s:4:"hash";s:10:"3348262795";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"4221";s:4:"hash";s:10:"3848577871";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"4267";s:4:"hash";s:9:"355587771";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"6677";s:4:"hash";s:10:"4150811288";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"7204";s:4:"hash";s:10:"4053112493";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"4084";s:4:"hash";s:8:"43160363";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"4055";s:4:"hash";s:10:"2283953633";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"4190";s:4:"hash";s:10:"4186800135";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"4340";s:4:"hash";s:9:"669962563";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"4283";s:4:"hash";s:10:"1445338132";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sl.po";a:3:{s:5:"bytes";s:4:"4216";s:4:"hash";s:10:"1621536668";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"4091";s:4:"hash";s:10:"3002415763";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"2582";s:4:"hash";s:10:"1331862206";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"6775";s:4:"hash";s:9:"312182738";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"4586";s:4:"hash";s:10:"3107856867";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"4337";s:4:"hash";s:10:"4027629793";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"4062";s:4:"hash";s:9:"172689651";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"6200";s:4:"hash";s:10:"1627260782";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:32:"templates/ConfigureMultiroot.tpl";a:3:{s:5:"bytes";s:4:"5915";s:4:"hash";s:9:"697235210";s:8:"packages";a:1:{i:0;s:4:"base";}}}s:11:"directories";a:77:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:9:"locale/sl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}}s:9:"languages";a:1:{i:15342;a:37:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/permalinks-1.0.8-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/permalinks-1.0.8-16041-base.package new file mode 100644 index 0000000..528f61b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/permalinks-1.0.8-16041-base.package @@ -0,0 +1,34 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/permalinks-1.0.8-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/permalinks-1.0.8-16041.descriptor new file mode 100644 index 0000000..3cde4e5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/permalinks-1.0.8-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:10:"permalinks";s:7:"version";s:5:"1.0.8";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"Aliasy";s:11:"description";s:42:"Aliasy (trvalé aliasy) pro Vaše položky";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:19:"Permanente Verweise";s:11:"description";s:61:"Erstellen Sie simplere permanente Verweise zu Ihren Elementen";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:19:"Enlaces Permanentes";s:11:"description";s:49:"Crea alias permanentes simples para tus elementos";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:13:"Loturafinkoak";s:11:"description";s:53:"Zure elementuen eremura ezizen finko sinple bat sortu";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:16:"Liens permanents";s:11:"description";s:69:"Créer simplement des liens permanents vers vos éléments de Gallery";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:60:"Crea degli alias permanenti più semplici per i tuoi oggetti";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:32:"Maak simpele aliases naar items.";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Linki bezpośrednie";s:11:"description";s:65:"Tworzy proste linki bezpośrednie do pozycji (albumów) w galerii";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:13:"Permalink-uri";s:11:"description";s:56:"Creeaza legaturi permanente simple catre articolele tale";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:17:"Permanentalänkar";s:11:"description";s:49:"Skapa enklare permanenta aliases till dina objekt";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:33:"Постоянные ссылки";s:11:"description";s:101:"Создание элементарных постоянных ссылок для элементов";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"固定网址";s:11:"description";s:45:"为你的项目产生简单、固定的别名";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"固定網址";s:11:"description";s:45:"為你的項目產生簡單、固定的別名";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"고유 주소";s:11:"description";s:80:"당신의 아이템에 반 영구적인 간단한 별칭을 줄수 있습니다.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:9:"Permalink";s:11:"description";s:69:"アイテム空間への簡潔で永続的なエイリアスの作成";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Permalinks";s:11:"description";s:52:"Create simpler permanent aliases to your items space";s:10:"groupLabel";s:7:"Gallery";}}s:5:"files";a:78:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1112";s:4:"hash";s:10:"3582328280";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"ActivationWarning.inc";a:3:{s:5:"bytes";s:4:"1350";s:4:"hash";s:10:"1757896647";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"PermalinksOption.inc";a:3:{s:5:"bytes";s:4:"3145";s:4:"hash";s:10:"1554267715";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"PermalinksSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"3605";s:4:"hash";s:10:"2662164195";s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"Redirect.inc";a:3:{s:5:"bytes";s:4:"1954";s:4:"hash";s:10:"2006834183";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"2450";s:4:"hash";s:10:"1026403548";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"classes/Maps.inc";a:3:{s:5:"bytes";s:3:"319";s:4:"hash";s:7:"9999237";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"classes/Maps.xml";a:3:{s:5:"bytes";s:3:"552";s:4:"hash";s:10:"1470125389";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/PermalinksMapHelper.class";a:3:{s:5:"bytes";s:4:"3363";s:4:"hash";s:10:"2947523994";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"locale/af/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"621";s:4:"hash";s:10:"2664350222";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:43:"locale/ar/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"605";s:4:"hash";s:10:"2532309785";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:43:"locale/ca/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"609";s:4:"hash";s:10:"2383368908";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:43:"locale/cs/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2707";s:4:"hash";s:10:"1902758763";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:43:"locale/da/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"614";s:4:"hash";s:10:"1088330868";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:43:"locale/de/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"3220";s:4:"hash";s:10:"1080773381";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:46:"locale/en_GB/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"457";s:4:"hash";s:9:"105957958";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:43:"locale/es/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"3015";s:4:"hash";s:10:"4188111330";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/eu/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2832";s:4:"hash";s:10:"3863182091";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:43:"locale/fi/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"618";s:4:"hash";s:9:"692203811";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:43:"locale/fr/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"3032";s:4:"hash";s:10:"1889282290";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:43:"locale/hu/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"587";s:4:"hash";s:10:"2003511662";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:43:"locale/it/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2750";s:4:"hash";s:10:"1021957735";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:43:"locale/ja/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"1390";s:4:"hash";s:10:"4287443732";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:43:"locale/ko/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2282";s:4:"hash";s:9:"688637020";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:43:"locale/lt/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"692";s:4:"hash";s:10:"1556052653";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:43:"locale/nl/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2571";s:4:"hash";s:10:"1219627209";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:43:"locale/no/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2851";s:4:"hash";s:10:"3025064471";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:43:"locale/pl/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"3186";s:4:"hash";s:10:"1616879669";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:43:"locale/ro/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2734";s:4:"hash";s:9:"988561143";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:43:"locale/ru/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"4300";s:4:"hash";s:10:"3197036762";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:43:"locale/sk/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"699";s:4:"hash";s:9:"733484407";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:43:"locale/sr/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"627";s:4:"hash";s:10:"2656474494";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:43:"locale/sv/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"3024";s:4:"hash";s:10:"2899326847";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:43:"locale/tr/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"1095";s:4:"hash";s:10:"1782300388";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:43:"locale/uk/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"649";s:4:"hash";s:9:"847047487";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:43:"locale/vi/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:3:"569";s:4:"hash";s:10:"3148367392";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:46:"locale/zh_CN/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2758";s:4:"hash";s:10:"1518689736";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:46:"locale/zh_TW/LC_MESSAGES/modules_permalinks.mo";a:3:{s:5:"bytes";s:4:"2723";s:4:"hash";s:10:"3666873420";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"6113";s:4:"hash";s:10:"3862032772";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"2868";s:4:"hash";s:10:"3922933414";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"2793";s:4:"hash";s:10:"2759093868";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"2914";s:4:"hash";s:9:"844129421";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"3570";s:4:"hash";s:10:"3887527737";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"2983";s:4:"hash";s:10:"2425579478";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"4249";s:4:"hash";s:10:"2124854906";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"3650";s:4:"hash";s:10:"1100140925";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"4047";s:4:"hash";s:10:"2157874053";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3698";s:4:"hash";s:10:"2589918373";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"2928";s:4:"hash";s:9:"122169126";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"3946";s:4:"hash";s:10:"4133593634";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"2903";s:4:"hash";s:10:"2366864932";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"3742";s:4:"hash";s:10:"3368569501";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"3223";s:4:"hash";s:10:"2869904509";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3589";s:4:"hash";s:10:"2159490495";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"2940";s:4:"hash";s:10:"4227453838";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3760";s:4:"hash";s:10:"2465917880";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"3878";s:4:"hash";s:10:"1113665016";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"4072";s:4:"hash";s:10:"3643077186";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"3753";s:4:"hash";s:10:"4282025407";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"5456";s:4:"hash";s:10:"2340899604";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"2993";s:4:"hash";s:9:"264400679";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"2818";s:4:"hash";s:10:"1097866114";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1657";s:4:"hash";s:10:"2451642056";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"3950";s:4:"hash";s:10:"1936357762";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3071";s:4:"hash";s:9:"458754969";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3047";s:4:"hash";s:10:"1529042760";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"2788";s:4:"hash";s:10:"1545469270";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3658";s:4:"hash";s:10:"3555911213";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"3623";s:4:"hash";s:10:"1223131090";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:31:"templates/ActivationWarning.tpl";a:3:{s:5:"bytes";s:3:"672";s:4:"hash";s:10:"1824191376";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/PermalinksOption.tpl";a:3:{s:5:"bytes";s:4:"1673";s:4:"hash";s:8:"85120122";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"templates/PermalinksSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"1939";s:4:"hash";s:10:"2926857941";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"test/phpunit/PermalinksOptionTest.class";a:3:{s:5:"bytes";s:4:"4459";s:4:"hash";s:10:"1115453263";s:8:"packages";a:0:{}}s:52:"test/phpunit/PermalinksSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"2832";s:4:"hash";s:10:"3345590113";s:8:"packages";a:0:{}}s:33:"test/phpunit/PermalinksTest.class";a:3:{s:5:"bytes";s:4:"7960";s:4:"hash";s:10:"2527804103";s:8:"packages";a:0:{}}}s:11:"directories";a:65:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-1.0.7-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-1.0.7-16041-base.package new file mode 100644 index 0000000..e5b0371 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-1.0.7-16041-base.package @@ -0,0 +1,36 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-1.0.7-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-1.0.7-16041.descriptor new file mode 100644 index 0000000..d86b35e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-1.0.7-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:9:"publishxp";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15578";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"Publiseer XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"cs_CZ";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:46:"Send fotos til 'Gallery' direkte fra Windws XP";s:10:"groupLabel";s:8:"Importer";}s:5:"de_DE";a:3:{s:4:"name";s:25:"Mit XP veröffentlichen";s:11:"description";s:66:"Bilder direkt von Microsoft Windows zur Gallery veröffentlichen";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:17:"Publicar desde XP";s:11:"description";s:55:"Publicar fotos en Gallery directamente desde Windows XP";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"XP Argitaratzea";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:61:"Publier des photos dans Gallery directement depuis Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ga_IE";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:51:"Pubblica foto in Gallery direttamente da Windows XP";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"lt_LT";a:3:{s:4:"name";s:13:"Publikuoti XP";s:11:"description";s:54:"Publikuoti vaizdus į Galeriją tiesiai iš Windows XP";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Publiceren XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Publikacja XP";s:11:"description";s:56:"Publikuje zdjęcia do galerii bezpośrednio z Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"pt_PT";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"Julkaise XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Tuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:12:"Publicera XP";s:11:"description";s:53:"Publicera bilder till Gallery direkt från Windows XP";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Yayınlama XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:40:"Опубликование через XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:9:"XP 发布";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:9:"發表 XP";s:11:"description";s:47:"把相片直接從 Windows XP 發表到 Gallery";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:54:"Windows XP から直接Galleryに画像を公開する";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:10:"Publish XP";s:11:"description";s:50:"Publish photos to Gallery directly from Windows XP";s:10:"groupLabel";s:6:"Import";}}s:5:"files";a:85:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1325";s:4:"hash";s:10:"2530389796";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"DownloadRegistryFile.inc";a:3:{s:5:"bytes";s:4:"6625";s:4:"hash";s:8:"33325117";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"ItemAddPublishXp.inc";a:3:{s:5:"bytes";s:4:"1754";s:4:"hash";s:9:"364830763";s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"Login.inc";a:3:{s:5:"bytes";s:4:"1487";s:4:"hash";s:10:"1558715797";s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"NewAlbum.inc";a:3:{s:5:"bytes";s:4:"4644";s:4:"hash";s:10:"1160967678";s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"Options.inc";a:3:{s:5:"bytes";s:4:"4375";s:4:"hash";s:10:"3492862698";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"PublishXpLogin.inc";a:3:{s:5:"bytes";s:4:"3975";s:4:"hash";s:10:"4152428981";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"SelectAlbum.inc";a:3:{s:5:"bytes";s:4:"4456";s:4:"hash";s:10:"2194656842";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"UploadItems.inc";a:3:{s:5:"bytes";s:4:"9324";s:4:"hash";s:10:"2833184618";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"UploadedItem.inc";a:3:{s:5:"bytes";s:4:"1731";s:4:"hash";s:10:"4090352472";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"locale/af/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5576";s:4:"hash";s:8:"56876778";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:42:"locale/ar/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2505";s:4:"hash";s:10:"1212971418";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:42:"locale/ca/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2263";s:4:"hash";s:10:"1527752249";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:42:"locale/cs/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5764";s:4:"hash";s:10:"2777628173";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:42:"locale/da/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5610";s:4:"hash";s:10:"3847949719";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:42:"locale/de/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6463";s:4:"hash";s:10:"3180446167";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:45:"locale/en_GB/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:3:"457";s:4:"hash";s:10:"1240607830";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:42:"locale/es/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6240";s:4:"hash";s:10:"1295036588";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:42:"locale/eu/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5621";s:4:"hash";s:10:"3402429614";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:42:"locale/fi/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5491";s:4:"hash";s:9:"627757696";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:42:"locale/fr/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6175";s:4:"hash";s:10:"1055490218";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:42:"locale/hu/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2134";s:4:"hash";s:10:"1103996066";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:42:"locale/it/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5917";s:4:"hash";s:10:"2638327254";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:42:"locale/ja/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"3954";s:4:"hash";s:9:"781809218";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:42:"locale/ko/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"3878";s:4:"hash";s:9:"296458081";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:42:"locale/lt/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6173";s:4:"hash";s:10:"3722580115";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:42:"locale/nl/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5764";s:4:"hash";s:10:"3831739429";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:42:"locale/no/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5953";s:4:"hash";s:10:"3798961896";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:42:"locale/pl/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6276";s:4:"hash";s:9:"345897922";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:42:"locale/ro/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2250";s:4:"hash";s:9:"149201986";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:42:"locale/ru/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"7941";s:4:"hash";s:8:"39845113";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:42:"locale/sk/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"1687";s:4:"hash";s:10:"1519354548";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:42:"locale/sr/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5573";s:4:"hash";s:10:"3923365516";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:42:"locale/sv/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"6111";s:4:"hash";s:10:"1239099848";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/tr/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"3477";s:4:"hash";s:10:"1125157883";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:42:"locale/uk/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2682";s:4:"hash";s:10:"1779330328";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:42:"locale/vi/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"2422";s:4:"hash";s:10:"3075885131";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:45:"locale/zh_CN/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5517";s:4:"hash";s:10:"3885609608";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:45:"locale/zh_TW/LC_MESSAGES/modules_publishxp.mo";a:3:{s:5:"bytes";s:4:"5789";s:4:"hash";s:9:"708879907";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"2123";s:4:"hash";s:9:"889442549";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"7084";s:4:"hash";s:10:"1427865290";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"5485";s:4:"hash";s:10:"2793259470";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"5360";s:4:"hash";s:10:"1786166343";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"7205";s:4:"hash";s:10:"4174874769";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"6777";s:4:"hash";s:8:"77999152";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"7769";s:4:"hash";s:10:"1711075517";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"6734";s:4:"hash";s:10:"3047057173";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"7251";s:4:"hash";s:10:"2618367619";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"6823";s:4:"hash";s:10:"2180907443";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"6948";s:4:"hash";s:10:"2068335010";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"7135";s:4:"hash";s:10:"4056392996";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"5242";s:4:"hash";s:9:"195718069";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"6939";s:4:"hash";s:10:"3232817951";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"6132";s:4:"hash";s:10:"3124742298";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"5980";s:4:"hash";s:10:"1620287438";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"7164";s:4:"hash";s:10:"1187038457";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"7111";s:4:"hash";s:10:"1817467806";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"7038";s:4:"hash";s:9:"971930430";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"7205";s:4:"hash";s:10:"2888611280";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5289";s:4:"hash";s:9:"853090785";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"9768";s:4:"hash";s:9:"554441155";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"5134";s:4:"hash";s:10:"1149682758";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"7118";s:4:"hash";s:10:"1762784387";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"3102";s:4:"hash";s:10:"4180263015";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"7173";s:4:"hash";s:10:"3219323892";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5918";s:4:"hash";s:10:"1023495262";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"5875";s:4:"hash";s:10:"2633997461";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"5404";s:4:"hash";s:10:"1445108066";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"6900";s:4:"hash";s:10:"2099531452";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"7020";s:4:"hash";s:8:"41505947";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:34:"templates/DownloadRegistryFile.tpl";a:3:{s:5:"bytes";s:3:"827";s:4:"hash";s:10:"3875068982";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"templates/Head.tpl";a:3:{s:5:"bytes";s:4:"1933";s:4:"hash";s:9:"537071753";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/ItemAddPublishXp.tpl";a:3:{s:5:"bytes";s:4:"1680";s:4:"hash";s:9:"736007399";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"templates/NewAlbum.tpl";a:3:{s:5:"bytes";s:4:"4006";s:4:"hash";s:8:"66551572";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"templates/Options.tpl";a:3:{s:5:"bytes";s:4:"1923";s:4:"hash";s:9:"334676927";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"templates/PublishXpLogin.tpl";a:3:{s:5:"bytes";s:4:"2016";s:4:"hash";s:10:"2774640329";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/SelectAlbum.tpl";a:3:{s:5:"bytes";s:4:"2074";s:4:"hash";s:10:"1154710772";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/UploadItems.tpl";a:3:{s:5:"bytes";s:4:"2822";s:4:"hash";s:10:"4219189280";s:8:"packages";a:1:{i:0;s:4:"base";}}s:43:"test/phpunit/DownloadRegistryFileTest.class";a:3:{s:5:"bytes";s:4:"3760";s:4:"hash";s:10:"2523375641";s:8:"packages";a:0:{}}s:41:"test/phpunit/NewAlbumControllerTest.class";a:3:{s:5:"bytes";s:4:"4527";s:4:"hash";s:10:"3298484915";s:8:"packages";a:0:{}}s:40:"test/phpunit/OptionsControllerTest.class";a:3:{s:5:"bytes";s:4:"3483";s:4:"hash";s:10:"2654600399";s:8:"packages";a:0:{}}s:47:"test/phpunit/PublishXpLoginControllerTest.class";a:3:{s:5:"bytes";s:4:"3175";s:4:"hash";s:10:"2822466520";s:8:"packages";a:0:{}}s:44:"test/phpunit/SelectAlbumControllerTest.class";a:3:{s:5:"bytes";s:4:"2656";s:4:"hash";s:10:"1162816234";s:8:"packages";a:0:{}}s:44:"test/phpunit/UploadItemsControllerTest.class";a:3:{s:5:"bytes";s:4:"8676";s:4:"hash";s:10:"3854719536";s:8:"packages";a:0:{}}}s:11:"directories";a:63:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15578;a:29:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-lang-es-15578-16040.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-lang-es-15578-16040.package new file mode 100644 index 0000000..fe222a4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/publishxp-lang-es-15578-16040.package @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/replica-1.0.0-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/replica-1.0.0-16041-base.package new file mode 100644 index 0000000..ab86a4d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/replica-1.0.0-16041-base.package @@ -0,0 +1,23 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/replica-1.0.0-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/replica-1.0.0-16041.descriptor new file mode 100644 index 0000000..7afba12 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/replica-1.0.0-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"replica";s:7:"version";s:5:"1.0.0";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:15:"Replica (Kopie)";s:11:"description";s:73:"Vytvořit kopie položky, které sdílí stejný původní datový soubor";s:10:"groupLabel";s:8:"Zobrazit";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Replika";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:6:"Replik";s:11:"description";s:60:"Erstelle Elementkopien, welche dieselbe Originaldatei teilen";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:74:"Crea copias de un elemento compartiendo el mismo fichero de datos original";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:9:"Bistaratu";}s:5:"fr_FR";a:3:{s:4:"name";s:9:"Réplique";s:11:"description";s:67:"Créer des copies d'éléments partageant le même fichier original";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:69:"Crea copie di oggetti mantenendo comune lo stesso file dati originale";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:7:"Replika";s:11:"description";s:73:"Tworzy kopie pozycji współdzielące dane tego samego oryginalnego pliku";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Copiaza";s:11:"description";s:69:"Crea copie di oggetti mantenendo comune lo stesso file dati originale";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:5:"Kopia";s:11:"description";s:50:"Skapa objekt kopior som delar på samma orginalfil";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"tr_TR";a:3:{s:4:"name";s:7:"Kopyala";s:11:"description";s:56:"Orjinal veri dosyasını paylaşan öge kopyaları yarat";s:10:"groupLabel";s:7:"Göster";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"項目副本";s:11:"description";s:54:"產生共用同一個原始資料檔案的項目拷貝";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"複製";s:11:"description";s:81:"元のデータファイルを共有するアイテムのコピーを作成する";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Replica";s:11:"description";s:54:"Create item copies sharing the same original data file";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:88:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"443";s:4:"hash";s:9:"800256865";s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"ItemCreateReplica.inc";a:3:{s:5:"bytes";s:4:"9940";s:4:"hash";s:9:"311151896";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"ItemCreateReplicaSingle.inc";a:3:{s:5:"bytes";s:4:"6220";s:4:"hash";s:10:"1042156118";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/af/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1118";s:4:"hash";s:10:"1655251021";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:40:"locale/ar/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1195";s:4:"hash";s:9:"361461273";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:40:"locale/bg/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1148";s:4:"hash";s:10:"1998685378";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:40:"locale/ca/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1209";s:4:"hash";s:10:"3978344049";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:40:"locale/cs/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3119";s:4:"hash";s:10:"4131651009";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/da/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1482";s:4:"hash";s:10:"1394066745";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:40:"locale/de/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3378";s:4:"hash";s:9:"522806157";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:40:"locale/el/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"965";s:4:"hash";s:10:"1167180738";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:43:"locale/en_GB/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"579";s:4:"hash";s:10:"1312308229";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3077";s:4:"hash";s:10:"2948841244";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:43:"locale/es_AR/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"508";s:4:"hash";s:10:"4046745470";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:43:"locale/es_MX/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"744";s:4:"hash";s:10:"2381947053";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:40:"locale/eu/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1227";s:4:"hash";s:9:"731593692";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fi/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1201";s:4:"hash";s:10:"1922630698";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3066";s:4:"hash";s:10:"2728222292";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/ga/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"785";s:4:"hash";s:10:"3654262809";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:40:"locale/he/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1021";s:4:"hash";s:10:"1836104308";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:40:"locale/hu/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1090";s:4:"hash";s:10:"3987703714";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:40:"locale/is/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"459";s:4:"hash";s:8:"88046650";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:40:"locale/it/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3127";s:4:"hash";s:9:"854405904";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3263";s:4:"hash";s:9:"286861909";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/ko/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1163";s:4:"hash";s:9:"739110916";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:40:"locale/lt/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1192";s:4:"hash";s:9:"179863411";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:40:"locale/nl/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1069";s:4:"hash";s:10:"2511475407";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"2924";s:4:"hash";s:10:"3736302349";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"3308";s:4:"hash";s:7:"7905791";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:40:"locale/pt/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"677";s:4:"hash";s:9:"812824985";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:43:"locale/pt_BR/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"964";s:4:"hash";s:10:"3356900277";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:40:"locale/ro/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"2787";s:4:"hash";s:10:"2526630916";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:40:"locale/ru/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1407";s:4:"hash";s:10:"3693639731";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sk/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"932";s:4:"hash";s:10:"1801372646";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:40:"locale/sl/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:3:"611";s:4:"hash";s:9:"561036873";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:40:"locale/sr/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1107";s:4:"hash";s:10:"1955341738";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:40:"locale/sv/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"2993";s:4:"hash";s:10:"4204870655";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"2301";s:4:"hash";s:9:"773035253";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:40:"locale/uk/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1314";s:4:"hash";s:10:"3574025075";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:40:"locale/vi/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1110";s:4:"hash";s:10:"1201053273";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"1055";s:4:"hash";s:9:"154405092";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_replica.mo";a:3:{s:5:"bytes";s:4:"2920";s:4:"hash";s:10:"2344502758";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"3579";s:4:"hash";s:10:"3694007887";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"3101";s:4:"hash";s:8:"52488103";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3178";s:4:"hash";s:10:"1849503975";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/bg.po";a:3:{s:5:"bytes";s:4:"3301";s:4:"hash";s:10:"2691990546";s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3151";s:4:"hash";s:10:"3754468766";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"3997";s:4:"hash";s:10:"2162835715";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"3245";s:4:"hash";s:10:"1997387169";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"4262";s:4:"hash";s:9:"486806204";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:8:"po/el.po";a:3:{s:5:"bytes";s:4:"3320";s:4:"hash";s:10:"1834395223";s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"3766";s:4:"hash";s:10:"2400057771";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"4093";s:4:"hash";s:10:"3211435862";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:11:"po/es_AR.po";a:3:{s:5:"bytes";s:4:"3907";s:4:"hash";s:10:"2495109644";s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:11:"po/es_MX.po";a:3:{s:5:"bytes";s:4:"4020";s:4:"hash";s:9:"276295093";s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"3173";s:4:"hash";s:10:"3896436244";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3144";s:4:"hash";s:10:"3714223003";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"3998";s:4:"hash";s:10:"2088422942";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/ga.po";a:3:{s:5:"bytes";s:4:"3188";s:4:"hash";s:9:"507097206";s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:8:"po/he.po";a:3:{s:5:"bytes";s:4:"3076";s:4:"hash";s:10:"3136465825";s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"3073";s:4:"hash";s:10:"2038394842";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"2895";s:4:"hash";s:10:"2189186224";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"4036";s:4:"hash";s:10:"4067314385";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"4114";s:4:"hash";s:9:"866762146";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"3188";s:4:"hash";s:10:"2913899586";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"3182";s:4:"hash";s:10:"3875758413";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"3048";s:4:"hash";s:10:"1978856529";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"3905";s:4:"hash";s:9:"999795804";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"4196";s:4:"hash";s:8:"66192184";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/pt.po";a:3:{s:5:"bytes";s:4:"3055";s:4:"hash";s:10:"1076963470";s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"3051";s:4:"hash";s:9:"320524406";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"3652";s:4:"hash";s:9:"278208329";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"3397";s:4:"hash";s:10:"3586766228";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3240";s:4:"hash";s:10:"2178768679";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sl.po";a:3:{s:5:"bytes";s:4:"3026";s:4:"hash";s:10:"1863364550";s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"3094";s:4:"hash";s:10:"3087567640";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"1743";s:4:"hash";s:10:"4186835161";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"3904";s:4:"hash";s:9:"620465106";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"3532";s:4:"hash";s:10:"2224563399";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3541";s:4:"hash";s:10:"1500469376";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3089";s:4:"hash";s:10:"3810408881";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"3037";s:4:"hash";s:10:"1221847324";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"3767";s:4:"hash";s:10:"2587771199";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:31:"templates/ItemCreateReplica.tpl";a:3:{s:5:"bytes";s:4:"5117";s:4:"hash";s:10:"1823122247";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"templates/ItemCreateReplicaSingle.tpl";a:3:{s:5:"bytes";s:4:"1834";s:4:"hash";s:10:"2246640461";s:8:"packages";a:1:{i:0;s:4:"base";}}s:50:"test/phpunit/ItemCreateReplicaControllerTest.class";a:3:{s:5:"bytes";s:4:"9789";s:4:"hash";s:9:"466081468";s:8:"packages";a:0:{}}s:56:"test/phpunit/ItemCreateReplicaSingleControllerTest.class";a:3:{s:5:"bytes";s:4:"4807";s:4:"hash";s:10:"4212570639";s:8:"packages";a:0:{}}}s:11:"directories";a:83:{s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/bg/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:9:"locale/bg";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-bg";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:21:"locale/el/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:9:"locale/el";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-el";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:24:"locale/es_AR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:12:"locale/es_AR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_AR";}}s:24:"locale/es_MX/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:12:"locale/es_MX";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-es_MX";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/ga/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:9:"locale/ga";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ga";}}s:21:"locale/he/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:9:"locale/he";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-he";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/pt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:9:"locale/pt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pt";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:9:"locale/sl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:39:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"bg";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:2:"el";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:5:"es_AR";s:5:"16040";s:5:"es_MX";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"ga";s:5:"16040";s:2:"he";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"pt";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sl";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-1.1.13.2-16558-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-1.1.13.2-16558-base.package new file mode 100644 index 0000000..0a84402 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-1.1.13.2-16558-base.package @@ -0,0 +1,93 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-1.1.13.2-16558.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-1.1.13.2-16558.descriptor new file mode 100644 index 0000000..cfeda64 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-1.1.13.2-16558.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"rewrite";s:7:"version";s:8:"1.1.13.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15945";s:14:"buildTimestamp";s:5:"16558";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"en_GB";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"af_ZA";a:3:{s:4:"name";s:12:"URL Herskryf";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ca_ES";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"cs_CZ";a:3:{s:4:"name";s:11:"Přepis URL";s:11:"description";s:78:"Aktivuje krátká URL pomocí Apache mod_rewrite, ISAPI Rewrite nebo PathInfo.";s:10:"groupLabel";s:7:"Galerie";}s:5:"da_DK";a:3:{s:4:"name";s:15:"URL Omskrivning";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"de_DE";a:3:{s:4:"name";s:10:"Kurze URLs";s:11:"description";s:80:"Erlaubt kurze URLs mit Hilfe von Apache mod_rewrite, ISAPI Rewrite oder PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_ES";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_MX";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"es_AR";a:3:{s:4:"name";s:18:"Reescritura de URL";s:11:"description";s:76:"Habilita URLs cortas usando mod_rewrite de Apache, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"et_EE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"eu_ES";a:3:{s:4:"name";s:16:"URL Berridazketa";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"fr_FR";a:3:{s:4:"name";s:18:"Réécriture d'URL";s:11:"description";s:93:"Activer les URL courtes en utilisant le module Apache mod_rewrite, ISAPI Rewrite ou PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"ga_IE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"el_GR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"is_IS";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"it_IT";a:3:{s:4:"name";s:15:"Riscrittura URL";s:11:"description";s:77:"Attiva le URL brevi utilizzando Apache mod_rewrite, ISAPI Rewrite, o PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lv_LV";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"lt_LT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galerija";}s:5:"hu_HU";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"nl_NL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"no_NO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"pl_PL";a:3:{s:4:"name";s:19:"Krótkie adresy URL";s:11:"description";s:95:"Włącza krótkie adresy URL przy wykorzystaniu Apache mod_rewrite, ISAPI Rewrite lub PathInfo.";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_BR";a:3:{s:4:"name";s:14:"Reescrever URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Galeria";}s:5:"pt_PT";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ro_RO";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sk_SK";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galéria";}s:5:"sl_SI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"sr_YU";a:3:{s:4:"name";s:13:"Prepis adresa";s:11:"description";s:87:"Omogućuje korišćenje kratkih adresa pomoću mod_rewrite, ISAPI_Rewrite ili Path Info";s:10:"groupLabel";s:8:"Galerija";}s:5:"fi_FI";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:8:"Galleria";}s:5:"sv_SE";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:76:"Aktiverar korta URLer med Apache mod_rewrite, ISAPI Rewrite, eller PathInfo.";s:10:"groupLabel";s:7:"Gallery";}s:5:"th_TH";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"uk_UA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"vi_VN";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"tr_TR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:96:"Apache mod_rewrite, ISAPI Rewrite, ya da PathInfo kullanarak kısa URL'leri aktif duruma getirin";s:10:"groupLabel";s:6:"Galeri";}s:5:"bg_BG";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ru_RU";a:3:{s:4:"name";s:34:"Перенаправления URL";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:14:"Галерея";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"网址改写";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"zh_TW";a:3:{s:4:"name";s:12:"網址改寫";s:11:"description";s:81:"啟動利用 Apache mod_rewrite、ISAPI Rewrite、或 PathInfo 的短式網址。";s:10:"groupLabel";s:7:"Gallery";}s:5:"ko_KR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"ja_JP";a:3:{s:4:"name";s:15:"URL書き換え";s:11:"description";s:91:"mod_rewrite か ISAPI Rewrite か PathInfo を使って短いURLを使えるようにする";s:10:"groupLabel";s:7:"Gallery";}s:5:"ar_SA";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:16:"الجاليري";}s:5:"he_IL";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}s:5:"fa_IR";a:3:{s:4:"name";s:11:"URL Rewrite";s:11:"description";s:71:"Enables short URLs using Apache mod_rewrite, ISAPI Rewrite, or PathInfo";s:10:"groupLabel";s:7:"Gallery";}}s:5:"files";a:138:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"4741";s:4:"hash";s:10:"3921171513";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"AdminRewrite.inc";a:3:{s:5:"bytes";s:5:"10806";s:4:"hash";s:10:"2417279975";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"DownloadItem.inc";a:3:{s:5:"bytes";s:4:"3019";s:4:"hash";s:9:"850018523";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"FileNotFound.inc";a:3:{s:5:"bytes";s:4:"1878";s:4:"hash";s:10:"3395542683";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"RewriteModuleExtras.inc";a:3:{s:5:"bytes";s:5:"12569";s:4:"hash";s:10:"2690565140";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"SetupRewrite.inc";a:3:{s:5:"bytes";s:4:"5717";s:4:"hash";s:10:"2750371662";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:3:"717";s:4:"hash";s:10:"1135532778";s:8:"packages";a:1:{i:0;s:4:"base";}}s:51:"classes/GalleryStorage/xml-src/R_RewriteMap_1.0.xml";a:3:{s:5:"bytes";s:3:"280";s:4:"hash";s:10:"2901457058";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"classes/RewriteApi.class";a:3:{s:5:"bytes";s:4:"7964";s:4:"hash";s:10:"1268532425";s:8:"packages";a:1:{i:0;s:4:"base";}}s:38:"classes/RewriteCheckConflictTask.class";a:3:{s:5:"bytes";s:4:"3965";s:4:"hash";s:10:"1557912255";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"classes/RewriteHelper.class";a:3:{s:5:"bytes";s:5:"14551";s:4:"hash";s:9:"819803452";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"classes/RewriteParser.class";a:3:{s:5:"bytes";s:4:"8625";s:4:"hash";s:10:"1267351612";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/RewriteSimpleHelper.class";a:3:{s:5:"bytes";s:4:"5040";s:4:"hash";s:10:"1284139963";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/RewriteUrlGenerator.class";a:3:{s:5:"bytes";s:4:"7456";s:4:"hash";s:10:"1268821418";s:8:"packages";a:1:{i:0;s:4:"base";}}s:53:"classes/parsers/isapirewrite/IsapiRewriteHelper.class";a:3:{s:5:"bytes";s:5:"20079";s:4:"hash";s:10:"3329128190";s:8:"packages";a:1:{i:0;s:4:"base";}}s:59:"classes/parsers/isapirewrite/IsapiRewriteUrlGenerator.class";a:3:{s:5:"bytes";s:4:"3306";s:4:"hash";s:10:"3776707115";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"classes/parsers/isapirewrite/parser.inc";a:3:{s:5:"bytes";s:4:"8401";s:4:"hash";s:9:"159629566";s:8:"packages";a:1:{i:0;s:4:"base";}}s:49:"classes/parsers/modrewrite/ModRewriteHelper.class";a:3:{s:5:"bytes";s:5:"21938";s:4:"hash";s:10:"3355584072";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/parsers/modrewrite/ModRewriteUrlGenerator.class";a:3:{s:5:"bytes";s:4:"3160";s:4:"hash";s:10:"1044086165";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"classes/parsers/modrewrite/parser.inc";a:3:{s:5:"bytes";s:4:"8227";s:4:"hash";s:10:"3383861900";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"classes/parsers/pathinfo/PathInfoHelper.class";a:3:{s:5:"bytes";s:4:"5407";s:4:"hash";s:10:"1964351315";s:8:"packages";a:1:{i:0;s:4:"base";}}s:51:"classes/parsers/pathinfo/PathInfoUrlGenerator.class";a:3:{s:5:"bytes";s:4:"7503";s:4:"hash";s:10:"3289143665";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"classes/parsers/pathinfo/parser.inc";a:3:{s:5:"bytes";s:4:"2969";s:4:"hash";s:10:"2019410490";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"data/isapi_rewrite/Rewrite.txt";a:3:{s:5:"bytes";s:2:"21";s:4:"hash";s:10:"3441905064";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"data/isapi_rewrite/Works.txt";a:3:{s:5:"bytes";s:2:"18";s:4:"hash";s:10:"2699422569";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"data/mod_rewrite/custom/.htaccess";a:3:{s:5:"bytes";s:3:"285";s:4:"hash";s:9:"686534986";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite/custom/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"data/mod_rewrite/custom/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"data/mod_rewrite/gallery/.htaccess";a:3:{s:5:"bytes";s:3:"183";s:4:"hash";s:10:"3845462014";s:8:"packages";a:1:{i:0;s:4:"base";}}s:36:"data/mod_rewrite/gallery/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"data/mod_rewrite/gallery/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite/gallery2/.htaccess";a:3:{s:5:"bytes";s:3:"186";s:4:"hash";s:10:"1868455283";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"data/mod_rewrite/gallery2/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite/gallery2/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"data/mod_rewrite_no_options/custom/.htaccess";a:3:{s:5:"bytes";s:3:"272";s:4:"hash";s:10:"2187990769";s:8:"packages";a:1:{i:0;s:4:"base";}}s:46:"data/mod_rewrite_no_options/custom/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"data/mod_rewrite_no_options/custom/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"data/mod_rewrite_no_options/gallery/.htaccess";a:3:{s:5:"bytes";s:3:"170";s:4:"hash";s:10:"2916859382";s:8:"packages";a:1:{i:0;s:4:"base";}}s:47:"data/mod_rewrite_no_options/gallery/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"data/mod_rewrite_no_options/gallery/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:46:"data/mod_rewrite_no_options/gallery2/.htaccess";a:3:{s:5:"bytes";s:3:"172";s:4:"hash";s:10:"3024768581";s:8:"packages";a:1:{i:0;s:4:"base";}}s:48:"data/mod_rewrite_no_options/gallery2/Rewrite.txt";a:3:{s:5:"bytes";s:2:"15";s:4:"hash";s:10:"2916074531";s:8:"packages";a:1:{i:0;s:4:"base";}}s:46:"data/mod_rewrite_no_options/gallery2/Works.txt";a:3:{s:5:"bytes";s:2:"13";s:4:"hash";s:8:"28724129";s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"data/path_info/index.php";a:3:{s:5:"bytes";s:4:"1179";s:4:"hash";s:10:"3698470196";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/af/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"6162";s:4:"hash";s:10:"1925464369";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:40:"locale/ar/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"987";s:4:"hash";s:10:"1560898132";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:40:"locale/ca/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"911";s:4:"hash";s:9:"768217155";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:40:"locale/cs/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15940";s:4:"hash";s:10:"3398143257";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/da/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"12694";s:4:"hash";s:9:"462078293";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:40:"locale/de/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16790";s:4:"hash";s:10:"1594939694";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:43:"locale/en_GB/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"929";s:4:"hash";s:10:"3529398826";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16361";s:4:"hash";s:10:"3109575847";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:40:"locale/eu/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"14548";s:4:"hash";s:10:"1527731364";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fi/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1002";s:4:"hash";s:10:"3107016603";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16588";s:4:"hash";s:10:"4218924054";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/hu/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"969";s:4:"hash";s:10:"3176219312";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:40:"locale/it/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15705";s:4:"hash";s:10:"3217646109";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"11839";s:4:"hash";s:10:"2040562247";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/ko/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"7505";s:4:"hash";s:10:"2113012283";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:40:"locale/lt/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1079";s:4:"hash";s:10:"2204091161";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:40:"locale/nl/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"14072";s:4:"hash";s:10:"4151886574";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15490";s:4:"hash";s:9:"995140722";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"16377";s:4:"hash";s:10:"3577742333";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:43:"locale/pt_BR/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"6190";s:4:"hash";s:9:"666869208";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:40:"locale/ro/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"992";s:4:"hash";s:10:"3039505141";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:40:"locale/ru/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"19706";s:4:"hash";s:10:"1149509786";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sk/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1045";s:4:"hash";s:10:"3032897563";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:40:"locale/sr/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15878";s:4:"hash";s:9:"965645305";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:40:"locale/sv/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"15550";s:4:"hash";s:10:"4277132835";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"5539";s:4:"hash";s:10:"3499092403";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:40:"locale/uk/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:4:"1022";s:4:"hash";s:10:"3618557443";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:40:"locale/vi/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:3:"969";s:4:"hash";s:9:"594132818";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"13554";s:4:"hash";s:9:"248119491";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_rewrite.mo";a:3:{s:5:"bytes";s:5:"14906";s:4:"hash";s:10:"3859654684";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:5:"10466";s:4:"hash";s:10:"4148047242";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:5:"18803";s:4:"hash";s:10:"4142318790";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:5:"10129";s:4:"hash";s:10:"3971898886";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:5:"10198";s:4:"hash";s:10:"1366894478";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:5:"21707";s:4:"hash";s:10:"2179062023";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:5:"15546";s:4:"hash";s:9:"100911806";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:5:"17912";s:4:"hash";s:10:"4020998651";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:5:"15780";s:4:"hash";s:10:"2474859056";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:5:"17257";s:4:"hash";s:10:"2382530924";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:5:"16559";s:4:"hash";s:10:"1282474863";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:5:"10297";s:4:"hash";s:10:"1850443958";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:5:"17491";s:4:"hash";s:10:"2005772200";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:5:"10214";s:4:"hash";s:10:"3975707387";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:5:"16718";s:4:"hash";s:10:"3413457523";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:5:"15824";s:4:"hash";s:10:"2860096427";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:5:"13407";s:4:"hash";s:8:"90989831";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:5:"10256";s:4:"hash";s:9:"459403440";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:5:"16645";s:4:"hash";s:10:"3456817423";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:5:"16461";s:4:"hash";s:10:"1696085809";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:5:"17279";s:4:"hash";s:10:"2185397393";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:5:"18989";s:4:"hash";s:10:"1139680247";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:5:"10200";s:4:"hash";s:9:"502750647";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:5:"29531";s:4:"hash";s:10:"1560354458";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:5:"10293";s:4:"hash";s:10:"4185010488";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:5:"21649";s:4:"hash";s:10:"2629605385";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"8795";s:4:"hash";s:9:"180094944";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:5:"16851";s:4:"hash";s:9:"341188472";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:5:"12638";s:4:"hash";s:10:"3491844071";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:5:"10421";s:4:"hash";s:9:"995891082";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:5:"10142";s:4:"hash";s:10:"1530472756";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:5:"15596";s:4:"hash";s:10:"4183002084";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:5:"15681";s:4:"hash";s:10:"3547828258";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:26:"templates/AdminRewrite.tpl";a:3:{s:5:"bytes";s:4:"9575";s:4:"hash";s:10:"1858764699";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/DownloadItem.tpl";a:3:{s:5:"bytes";s:3:"626";s:4:"hash";s:10:"2997879901";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/FileNotFound.tpl";a:3:{s:5:"bytes";s:3:"382";s:4:"hash";s:10:"2827047125";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"templates/Htaccess.tpl";a:3:{s:5:"bytes";s:4:"1234";s:4:"hash";s:9:"323023967";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"templates/Httpdini.tpl";a:3:{s:5:"bytes";s:4:"1041";s:4:"hash";s:10:"2681255387";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"templates/IsapiRewriteAdminParser.tpl";a:3:{s:5:"bytes";s:4:"1458";s:4:"hash";s:10:"2819608120";s:8:"packages";a:1:{i:0;s:4:"base";}}s:37:"templates/IsapiRewriteTestResults.tpl";a:3:{s:5:"bytes";s:4:"3661";s:4:"hash";s:9:"552384875";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"templates/ModRewriteAdminParser.tpl";a:3:{s:5:"bytes";s:4:"1157";s:4:"hash";s:10:"2525476746";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"templates/ModRewriteTestResults.tpl";a:3:{s:5:"bytes";s:4:"7999";s:4:"hash";s:10:"3133568822";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"templates/PathInfoTestResults.tpl";a:3:{s:5:"bytes";s:4:"1978";s:4:"hash";s:10:"2509325668";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"templates/SetupRewrite.tpl";a:3:{s:5:"bytes";s:4:"3978";s:4:"hash";s:10:"1822960147";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"test/phpunit/AdminRewriteControllerTest.class";a:3:{s:5:"bytes";s:5:"22360";s:4:"hash";s:10:"4264625474";s:8:"packages";a:0:{}}s:41:"test/phpunit/IsapiRewriteHelperTest.class";a:3:{s:5:"bytes";s:5:"10077";s:4:"hash";s:10:"4053527576";s:8:"packages";a:0:{}}s:41:"test/phpunit/IsapiRewriteParserTest.class";a:3:{s:5:"bytes";s:5:"14475";s:4:"hash";s:10:"2130632061";s:8:"packages";a:0:{}}s:47:"test/phpunit/IsapiRewriteUrlGeneratorTest.class";a:3:{s:5:"bytes";s:4:"2951";s:4:"hash";s:9:"789257845";s:8:"packages";a:0:{}}s:39:"test/phpunit/ModRewriteHelperTest.class";a:3:{s:5:"bytes";s:5:"14553";s:4:"hash";s:10:"1672249520";s:8:"packages";a:0:{}}s:39:"test/phpunit/ModRewriteParserTest.class";a:3:{s:5:"bytes";s:5:"15749";s:4:"hash";s:10:"3407596657";s:8:"packages";a:0:{}}s:45:"test/phpunit/ModRewriteUrlGeneratorTest.class";a:3:{s:5:"bytes";s:4:"4267";s:4:"hash";s:10:"3038226339";s:8:"packages";a:0:{}}s:37:"test/phpunit/PathInfoHelperTest.class";a:3:{s:5:"bytes";s:4:"5912";s:4:"hash";s:10:"3712570510";s:8:"packages";a:0:{}}s:37:"test/phpunit/PathInfoParserTest.class";a:3:{s:5:"bytes";s:4:"2972";s:4:"hash";s:10:"2661369311";s:8:"packages";a:0:{}}s:43:"test/phpunit/PathInfoUrlGeneratorTest.class";a:3:{s:5:"bytes";s:5:"35643";s:4:"hash";s:10:"2666942738";s:8:"packages";a:0:{}}s:33:"test/phpunit/RewriteApiTest.class";a:3:{s:5:"bytes";s:5:"13012";s:4:"hash";s:10:"2734417504";s:8:"packages";a:0:{}}s:36:"test/phpunit/RewriteHelperTest.class";a:3:{s:5:"bytes";s:5:"26890";s:4:"hash";s:10:"2972719967";s:8:"packages";a:0:{}}s:36:"test/phpunit/RewriteModuleTest.class";a:3:{s:5:"bytes";s:5:"12288";s:4:"hash";s:10:"3731240133";s:8:"packages";a:0:{}}s:40:"test/phpunit/RewriteParserTestCase.class";a:3:{s:5:"bytes";s:5:"19789";s:4:"hash";s:10:"3249037017";s:8:"packages";a:0:{}}s:42:"test/phpunit/RewriteSimpleHelperTest.class";a:3:{s:5:"bytes";s:4:"6055";s:4:"hash";s:9:"232213593";s:8:"packages";a:0:{}}s:42:"test/phpunit/RewriteUrlGeneratorTest.class";a:3:{s:5:"bytes";s:4:"3887";s:4:"hash";s:10:"3243148584";s:8:"packages";a:0:{}}s:46:"test/phpunit/RewriteUrlGeneratorTestCase.class";a:3:{s:5:"bytes";s:5:"49816";s:4:"hash";s:10:"3296238102";s:8:"packages";a:0:{}}s:45:"test/phpunit/SetupRewriteControllerTest.class";a:3:{s:5:"bytes";s:4:"8208";s:4:"hash";s:10:"2436813616";s:8:"packages";a:0:{}}}s:11:"directories";a:83:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/parsers/isapirewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"classes/parsers";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"classes/parsers/modrewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"classes/parsers/pathinfo";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"data/isapi_rewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:4:"data";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"data/mod_rewrite/custom";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"data/mod_rewrite";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:24:"data/mod_rewrite/gallery";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"data/mod_rewrite/gallery2";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"data/mod_rewrite_no_options/custom";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"data/mod_rewrite_no_options";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"data/mod_rewrite_no_options/gallery";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:36:"data/mod_rewrite_no_options/gallery2";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"data/path_info";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15945;a:30:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16548";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16548";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16548";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16548";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-lang-es-15945-16040.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-lang-es-15945-16040.package new file mode 100644 index 0000000..3ec16ff --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/rewrite-lang-es-15945-16040.package @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-1.0.3-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-1.0.3-16041-base.package new file mode 100644 index 0000000..9e60cbc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-1.0.3-16041-base.package @@ -0,0 +1,22 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-1.0.3-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-1.0.3-16041.descriptor new file mode 100644 index 0000000..4d48c72 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-1.0.3-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:7:"sitemap";s:7:"version";s:5:"1.0.3";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:5;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"en_GB";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"af_ZA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ca_ES";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"cs_CZ";a:3:{s:4:"name";s:13:"Mapa stránek";s:11:"description";s:57:"Pro Vaši Galerii generuje Google Sitemap (mapu stránek)";s:10:"groupLabel";s:6:"Export";}s:5:"da_DK";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"de_DE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:45:"Erzeugt eine Google Sitemap für Ihre Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"es_ES";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_MX";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"es_AR";a:3:{s:4:"name";s:14:"Mapa del Sitio";s:11:"description";s:50:"Genera un Mapa del Sitio de Google para tu Gallery";s:10:"groupLabel";s:8:"Exportar";}s:5:"et_EE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"eu_ES";a:3:{s:4:"name";s:9:"Gune-mapa";s:11:"description";s:46:"Google gune-mapa bat sortu zure galeriarentzat";s:10:"groupLabel";s:9:"Esportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:13:"Carte de site";s:11:"description";s:47:"Générer une carte de site Google pour Gallery";s:10:"groupLabel";s:8:"Exporter";}s:5:"ga_IE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"el_GR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"is_IS";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"it_IT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:55:"Genera una Mappa del Sito con Google per la tua Gallery";s:10:"groupLabel";s:7:"Esporta";}s:5:"lv_LV";a:3:{s:4:"name";s:13:"Vietnes karte";s:11:"description";s:46:"Ģenerēt Google vietnes karti Jūsu Galerijai";s:10:"groupLabel";s:10:"Eksportēt";}s:5:"lt_LT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"hu_HU";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"nl_NL";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:43:"Genereer een Google sitemap voor uw Gallery";s:10:"groupLabel";s:10:"Exporteren";}s:5:"no_NO";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"pl_PL";a:3:{s:4:"name";s:11:"Mapa strony";s:11:"description";s:33:"Generuje mapę galerii dla Google";s:10:"groupLabel";s:6:"Export";}s:5:"pt_BR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"pt_PT";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ro_RO";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sk_SK";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sl_SI";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sr_YU";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"fi_FI";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"sv_SE";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:46:"Producerar en Google Sitemap för ditt Galleri";s:10:"groupLabel";s:9:"Exportera";}s:5:"th_TH";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"uk_UA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"vi_VN";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Siteharitası";s:11:"description";s:45:"Galeriniz için Google Siteharitası yaratın";s:10:"groupLabel";s:7:"Gönder";}s:5:"bg_BG";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ru_RU";a:3:{s:4:"name";s:21:"Карта сайта";s:11:"description";s:91:"Генерирует карту сайта Google Sitemap для Вашей Галереи.";s:10:"groupLabel";s:14:"Экспорт";}s:5:"zh_CN";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:36:"为你的图库产生 Google Sitemap";s:10:"groupLabel";s:6:"导出";}s:5:"zh_TW";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:39:"為你的 Gallery 產生 Google Sitemap";s:10:"groupLabel";s:6:"滙出";}s:5:"ko_KR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"ja_JP";a:3:{s:4:"name";s:18:"サイトマップ";s:11:"description";s:48:"GalleryのためのGoogle Sitemapを作成する";s:10:"groupLabel";s:18:"エクスポート";}s:5:"ar_SA";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"he_IL";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}s:5:"fa_IR";a:3:{s:4:"name";s:7:"Sitemap";s:11:"description";s:42:"Generate a Google Sitemap for your Gallery";s:10:"groupLabel";s:6:"Export";}}s:5:"files";a:44:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"333";s:4:"hash";s:10:"2431082024";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"AdminSitemap.inc";a:3:{s:5:"bytes";s:4:"1586";s:4:"hash";s:10:"1284174201";s:8:"packages";a:1:{i:0;s:4:"base";}}s:11:"Sitemap.inc";a:3:{s:5:"bytes";s:4:"4688";s:4:"hash";s:10:"3788515675";s:8:"packages";a:1:{i:0;s:4:"base";}}s:40:"locale/cs/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1255";s:4:"hash";s:10:"2107235883";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:40:"locale/de/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1124";s:4:"hash";s:9:"345236371";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:43:"locale/en_GB/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:3:"454";s:4:"hash";s:9:"895365258";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:40:"locale/es/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1310";s:4:"hash";s:10:"1445295643";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:40:"locale/eu/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1208";s:4:"hash";s:10:"4120474024";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:40:"locale/fi/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:3:"514";s:4:"hash";s:10:"3982148093";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:40:"locale/fr/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1306";s:4:"hash";s:10:"1330074941";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:40:"locale/it/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1095";s:4:"hash";s:10:"4060552026";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:40:"locale/ja/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1329";s:4:"hash";s:10:"2245465324";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:40:"locale/lv/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1330";s:4:"hash";s:10:"4229645583";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:40:"locale/nl/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:3:"981";s:4:"hash";s:10:"2265923445";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:40:"locale/no/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1110";s:4:"hash";s:10:"2263375373";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:40:"locale/pl/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1180";s:4:"hash";s:10:"2865309574";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:40:"locale/ru/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1504";s:4:"hash";s:10:"1680090868";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:40:"locale/sv/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1138";s:4:"hash";s:10:"1530912154";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:40:"locale/tr/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1317";s:4:"hash";s:10:"1497111425";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:43:"locale/zh_CN/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1031";s:4:"hash";s:10:"1169012752";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:43:"locale/zh_TW/LC_MESSAGES/modules_sitemap.mo";a:3:{s:5:"bytes";s:4:"1041";s:4:"hash";s:10:"2484742467";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"2039";s:4:"hash";s:10:"3931420481";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"2154";s:4:"hash";s:10:"1863833179";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"2109";s:4:"hash";s:10:"3884888467";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"2057";s:4:"hash";s:8:"45999389";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"2277";s:4:"hash";s:10:"2908875583";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"2058";s:4:"hash";s:9:"648236783";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"1982";s:4:"hash";s:10:"1152724359";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"2158";s:4:"hash";s:10:"1860959068";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"2099";s:4:"hash";s:10:"1945862367";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"2240";s:4:"hash";s:10:"4069818666";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"2191";s:4:"hash";s:9:"765815884";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"2138";s:4:"hash";s:9:"391907542";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"2225";s:4:"hash";s:10:"4170136055";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"2183";s:4:"hash";s:10:"1536388237";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"2599";s:4:"hash";s:10:"2937362822";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:3:"487";s:4:"hash";s:10:"3695381758";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"2146";s:4:"hash";s:10:"3081060588";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"2175";s:4:"hash";s:10:"3734698780";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"2034";s:4:"hash";s:10:"3261213955";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"2044";s:4:"hash";s:10:"2405792300";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:26:"templates/AdminSitemap.tpl";a:3:{s:5:"bytes";s:4:"1287";s:4:"hash";s:10:"1221727398";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"test/phpunit/SitemapViewTest.class";a:3:{s:5:"bytes";s:4:"6443";s:4:"hash";s:10:"2713773563";s:8:"packages";a:0:{}}}s:11:"directories";a:41:{s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:18:{s:2:"cs";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-lang-es-15342-16040.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-lang-es-15342-16040.package new file mode 100644 index 0000000..5984bdc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/sitemap-lang-es-15342-16040.package @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/thumbnail-1.0.9.1-16636-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/thumbnail-1.0.9.1-16636-base.package new file mode 100644 index 0000000..1102073 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/thumbnail-1.0.9.1-16636-base.package @@ -0,0 +1,39 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/thumbnail-1.0.9.1-16636.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/thumbnail-1.0.9.1-16636.descriptor new file mode 100644 index 0000000..eb6774d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/thumbnail-1.0.9.1-16636.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:9:"thumbnail";s:7:"version";s:7:"1.0.9.1";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16636";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"en_GB";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"af_ZA";a:3:{s:4:"name";s:18:"Duimnaelbestuurder";s:11:"description";s:39:"Stel standaardbeeld vir nie-beeld items";s:10:"groupLabel";s:7:"Vertoon";}s:5:"ca_ES";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:13:"Visualizació";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Správa náhledů";s:11:"description";s:69:"Nastavení výchozích náhledů pro položky, které nejsou obrázky";s:10:"groupLabel";s:10:"Zobrazení";}s:5:"da_DK";a:3:{s:4:"name";s:17:"Miniature Manager";s:11:"description";s:59:"Sæt standard miniaturer for elementer der ikke er billeder";s:10:"groupLabel";s:3:"Vis";}s:5:"de_DE";a:3:{s:4:"name";s:23:"Vorschaubild-Verwaltung";s:11:"description";s:70:"Setzen Sie das Standardvorschaubild für Elemente, die kein Bild sind.";s:10:"groupLabel";s:7:"Anzeige";}s:5:"es_ES";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_MX";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"es_AR";a:3:{s:4:"name";s:27:"Administrador de Miniaturas";s:11:"description";s:70:"Ajustar miniaturas por defecto para los elementos que no seán imágen";s:10:"groupLabel";s:14:"Visualización";}s:5:"et_EE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"eu_ES";a:3:{s:4:"name";s:23:"Argazkitxo Kudeatzailea";s:11:"description";s:64:"Ezarri irudiak ez diren elementuentzat lehenetsiriko argazkitxoa";s:10:"groupLabel";s:11:"Bistaratzea";}s:5:"fr_FR";a:3:{s:4:"name";s:25:"Gestionnaire de vignettes";s:11:"description";s:83:"Spécifier les vignettes par défaut pour les éléments qui ne sont pas des images";s:10:"groupLabel";s:9:"Affichage";}s:5:"ga_IE";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"el_GR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"is_IS";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"it_IT";a:3:{s:4:"name";s:18:"Gestione Anteprime";s:11:"description";s:67:"Imposta anteprime predefinite per gli oggetti che non sono immagini";s:10:"groupLabel";s:15:"Visualizzazione";}s:5:"lv_LV";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"lt_LT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Vaizdas";}s:5:"hu_HU";a:3:{s:4:"name";s:18:"Nézőkép kezelő";s:11:"description";s:64:"Alapértelmezett előnézeti kép a nem kép típusú fájlokhoz";s:10:"groupLabel";s:14:"Megjelenítés";}s:5:"nl_NL";a:3:{s:4:"name";s:17:"Miniatuur Manager";s:11:"description";s:57:"Standaard miniaturen opgeven voor niet-afbeeldingen items";s:10:"groupLabel";s:8:"Weergave";}s:5:"no_NO";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pl_PL";a:3:{s:4:"name";s:25:"Zarządzanie miniaturkami";s:11:"description";s:68:"Ustawia domyślną miniaturkę dla pozycji nie będących zdjęciami";s:10:"groupLabel";s:7:"Wygląd";}s:5:"pt_BR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"pt_PT";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ro_RO";a:3:{s:4:"name";s:30:"Organizatorul de thumbnail-uri";s:11:"description";s:74:"Alege dimensiunea predefinita a thumbnail-ului pentru articole non-imagine";s:10:"groupLabel";s:8:"Afiseaza";}s:5:"sk_SK";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:10:"Zobrazenie";}s:5:"sl_SI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"sr_YU";a:3:{s:4:"name";s:31:"Upravljanje umanjenim prikazima";s:11:"description";s:71:"Podešavanje podrazumevanih umanjenih prikaza objektima koji nisu slike";s:10:"groupLabel";s:6:"Prikaz";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:8:"Näyttö";}s:5:"sv_SE";a:3:{s:4:"name";s:22:"Miniatyrbildshanterare";s:11:"description";s:46:"Set förvald miniatyrbild för icke bildobjekt";s:10:"groupLabel";s:4:"Visa";}s:5:"th_TH";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"uk_UA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"vi_VN";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:12:"Hiển thị";}s:5:"tr_TR";a:3:{s:4:"name";s:21:"Thumbnail Yöneticisi";s:11:"description";s:59:"Resim olmayan ögeler için varsayılan thumbnailı belirle";s:10:"groupLabel";s:12:"Görüntüle";}s:5:"bg_BG";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"ru_RU";a:3:{s:4:"name";s:37:"Управление Макетами";s:11:"description";s:140:"Установки по умолчанию для макетов элементов, не относящихся к изображениям";s:10:"groupLabel";s:22:"Отображение";}s:5:"zh_CN";a:3:{s:4:"name";s:18:"缩略图管理器";s:11:"description";s:39:"为非图片项目设定默认缩略图";s:10:"groupLabel";s:6:"显示";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"縮略圖管理";s:11:"description";s:39:"為非圖片項目設定預設縮略圖";s:10:"groupLabel";s:6:"顯示";}s:5:"ko_KR";a:3:{s:4:"name";s:19:"썸네일 관리자";s:11:"description";s:76:"이미지가 아닌 아이템에 대한 기본 썸네일을 설정합니다.";s:10:"groupLabel";s:7:"Display";}s:5:"ja_JP";a:3:{s:4:"name";s:30:"サムネイルマネージャ";s:11:"description";s:72:"画像以外のアイテムのデフォルトのサムネイルを設定";s:10:"groupLabel";s:6:"表示";}s:5:"ar_SA";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"he_IL";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}s:5:"fa_IR";a:3:{s:4:"name";s:17:"Thumbnail Manager";s:11:"description";s:42:"Set default thumbnails for non-image items";s:10:"groupLabel";s:7:"Display";}}s:5:"files";a:84:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1412";s:4:"hash";s:10:"2855835927";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"CustomThumbnailOption.inc";a:3:{s:5:"bytes";s:4:"4206";s:4:"hash";s:10:"2822861495";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"ThumbnailModuleExtras.inc";a:3:{s:5:"bytes";s:5:"12322";s:4:"hash";s:10:"2270063101";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"ThumbnailSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"5423";s:4:"hash";s:10:"3339803865";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"classes/Entities.inc";a:3:{s:5:"bytes";s:3:"817";s:4:"hash";s:9:"467279930";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"5170";s:4:"hash";s:10:"1715744367";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_ThumbnailImage_1.0.xml";a:3:{s:5:"bytes";s:3:"393";s:4:"hash";s:10:"3084293411";s:8:"packages";a:1:{i:0;s:4:"base";}}s:55:"classes/GalleryStorage/xml-src/A_ThumbnailImage_1.1.xml";a:3:{s:5:"bytes";s:3:"456";s:4:"hash";s:10:"3855592580";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"classes/ThumbnailHelper.class";a:3:{s:5:"bytes";s:5:"13758";s:4:"hash";s:10:"1667252224";s:8:"packages";a:1:{i:0;s:4:"base";}}s:28:"classes/ThumbnailImage.class";a:3:{s:5:"bytes";s:5:"14603";s:4:"hash";s:10:"4112218221";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/ThumbnailToolkit.class";a:3:{s:5:"bytes";s:4:"3313";s:4:"hash";s:9:"847933823";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"images/G2audio.jpg";a:3:{s:5:"bytes";s:5:"15472";s:4:"hash";s:10:"3650686913";s:8:"packages";a:1:{i:0;s:4:"base";}}s:18:"images/G2video.jpg";a:3:{s:5:"bytes";s:5:"15777";s:4:"hash";s:10:"4287254857";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"locale/af/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3580";s:4:"hash";s:9:"462903831";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:42:"locale/ar/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"702";s:4:"hash";s:9:"902893379";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:42:"locale/ca/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1287";s:4:"hash";s:10:"3077792885";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:42:"locale/cs/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4252";s:4:"hash";s:10:"2682587346";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:42:"locale/da/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4249";s:4:"hash";s:10:"4019149847";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:42:"locale/de/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4465";s:4:"hash";s:10:"3646964523";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:45:"locale/en_GB/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"464";s:4:"hash";s:10:"2195402611";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:42:"locale/es/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4432";s:4:"hash";s:9:"864352045";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:42:"locale/eu/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3780";s:4:"hash";s:10:"3022570874";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:42:"locale/fi/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1110";s:4:"hash";s:9:"171514667";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:42:"locale/fr/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4447";s:4:"hash";s:10:"3436167736";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:42:"locale/hu/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4231";s:4:"hash";s:9:"542654308";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:42:"locale/is/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"428";s:4:"hash";s:10:"1246097933";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:42:"locale/it/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4323";s:4:"hash";s:10:"1476022782";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:42:"locale/ja/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4450";s:4:"hash";s:8:"98621584";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:42:"locale/ko/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3262";s:4:"hash";s:9:"461147828";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:42:"locale/lt/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1216";s:4:"hash";s:10:"2535772439";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:42:"locale/nl/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3885";s:4:"hash";s:10:"1985495171";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:42:"locale/no/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4214";s:4:"hash";s:10:"1085454641";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:42:"locale/pl/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4378";s:4:"hash";s:10:"2381609159";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:42:"locale/ro/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4328";s:4:"hash";s:10:"3760928416";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:42:"locale/ru/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"5237";s:4:"hash";s:9:"508257522";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:42:"locale/sk/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"826";s:4:"hash";s:10:"2477126953";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:42:"locale/sr/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4057";s:4:"hash";s:10:"3604170703";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:42:"locale/sv/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"4264";s:4:"hash";s:9:"906327364";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/tr/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3992";s:4:"hash";s:10:"2896089473";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:42:"locale/uk/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:3:"747";s:4:"hash";s:10:"4228550238";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:42:"locale/vi/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"1042";s:4:"hash";s:10:"2311417646";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:45:"locale/zh_CN/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3535";s:4:"hash";s:10:"1741132519";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:45:"locale/zh_TW/LC_MESSAGES/modules_thumbnail.mo";a:3:{s:5:"bytes";s:4:"3904";s:4:"hash";s:10:"1296898076";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"5527";s:4:"hash";s:10:"3918464833";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"4952";s:4:"hash";s:10:"1165313463";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"3510";s:4:"hash";s:10:"3071703021";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"3870";s:4:"hash";s:10:"4200600451";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"5109";s:4:"hash";s:9:"254273511";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"5202";s:4:"hash";s:10:"1968439616";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"5415";s:4:"hash";s:10:"3713017026";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"4764";s:4:"hash";s:9:"901477849";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"5351";s:4:"hash";s:10:"3644625301";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"4987";s:4:"hash";s:10:"3380351865";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"3803";s:4:"hash";s:10:"2637675831";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"5310";s:4:"hash";s:10:"3290359963";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"5149";s:4:"hash";s:10:"4218605935";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"3384";s:4:"hash";s:10:"4074024214";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"5150";s:4:"hash";s:10:"3152588710";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"5363";s:4:"hash";s:10:"2101555554";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"4777";s:4:"hash";s:10:"3975439825";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"3847";s:4:"hash";s:10:"2852547061";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"5217";s:4:"hash";s:10:"1913992379";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"5122";s:4:"hash";s:9:"834182741";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"5182";s:4:"hash";s:10:"1271194000";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"5181";s:4:"hash";s:9:"313452938";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"6772";s:4:"hash";s:9:"372003228";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"3715";s:4:"hash";s:10:"3441315918";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"5232";s:4:"hash";s:10:"2437207165";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"2127";s:4:"hash";s:10:"3796407259";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"5223";s:4:"hash";s:9:"609603158";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"5302";s:4:"hash";s:10:"3066918432";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"3798";s:4:"hash";s:9:"740828465";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"3672";s:4:"hash";s:10:"2324181697";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"4696";s:4:"hash";s:9:"955004908";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"4734";s:4:"hash";s:10:"4005595987";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:29:"templates/CustomThumbnail.tpl";a:3:{s:5:"bytes";s:4:"1419";s:4:"hash";s:10:"1480586344";s:8:"packages";a:1:{i:0;s:4:"base";}}s:32:"templates/ThumbnailSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"5365";s:4:"hash";s:10:"1573761086";s:8:"packages";a:1:{i:0;s:4:"base";}}s:44:"test/phpunit/CustomThumbnailOptionTest.class";a:3:{s:5:"bytes";s:5:"17787";s:4:"hash";s:10:"3501579735";s:8:"packages";a:0:{}}s:37:"test/phpunit/ThumbnailImageTest.class";a:3:{s:5:"bytes";s:4:"5336";s:4:"hash";s:10:"2890040609";s:8:"packages";a:0:{}}s:51:"test/phpunit/ThumbnailSiteAdminControllerTest.class";a:3:{s:5:"bytes";s:4:"8933";s:4:"hash";s:9:"548188035";s:8:"packages";a:0:{}}s:39:"test/phpunit/ThumbnailToolkitTest.class";a:3:{s:5:"bytes";s:4:"7336";s:4:"hash";s:10:"2178818965";s:8:"packages";a:0:{}}}s:11:"directories";a:69:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"classes/GalleryStorage/xml-src";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:6:"images";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15342;a:30:{s:2:"af";s:5:"16635";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16635";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"eu";s:5:"16635";s:2:"fi";s:5:"16635";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16635";s:2:"lt";s:5:"16635";s:2:"nl";s:5:"16635";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16635";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16635";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16635";s:5:"zh_CN";s:5:"16635";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-1.0.7-16041-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-1.0.7-16041-base.package new file mode 100644 index 0000000..82fd635 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-1.0.7-16041-base.package @@ -0,0 +1,27 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-1.0.7-16041.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-1.0.7-16041.descriptor new file mode 100644 index 0000000..b92fe7d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-1.0.7-16041.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:12:"uploadapplet";s:7:"version";s:5:"1.0.7";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:4;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:0;}s:15:"stringsRevision";s:5:"15342";s:14:"buildTimestamp";s:5:"16041";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"en_GB";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"af_ZA";a:3:{s:4:"name";s:13:"Oplaai Applet";s:11:"description";s:47:"Eenvoudig om te gebruik oplaai applet vir media";s:10:"groupLabel";s:7:"Voer in";}s:5:"ca_ES";a:3:{s:4:"name";s:20:"Aplicació de Pujada";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:7:"Importa";}s:5:"cs_CZ";a:3:{s:4:"name";s:17:"Applet pro upload";s:11:"description";s:41:"Jednoduše použitelný applet pro upload";s:10:"groupLabel";s:6:"Import";}s:5:"da_DK";a:3:{s:4:"name";s:14:"Upload-program";s:11:"description";s:30:"Nemt at benytte upload-program";s:10:"groupLabel";s:6:"Import";}s:5:"de_DE";a:3:{s:4:"name";s:15:"Hochlade-Applet";s:11:"description";s:73:"Dies ist ein einfach zu handhabendes Applet um Mediendateien hochzuladen.";s:10:"groupLabel";s:6:"Import";}s:5:"es_ES";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"es_MX";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"es_AR";a:3:{s:4:"name";s:15:"Applet de Carga";s:11:"description";s:39:"Applet fácil de usar para subir medios";s:10:"groupLabel";s:8:"Importar";}s:5:"et_EE";a:3:{s:4:"name";s:23:"Üleslaadimise Programm";s:11:"description";s:48:"Kergelt kasutatav meedia üleslaadimise programm";s:10:"groupLabel";s:7:"Impordi";}s:5:"eu_ES";a:3:{s:4:"name";s:15:"Igoera Applet-a";s:11:"description";s:49:"Elementuak igotzeko erabiliera errazteko applet-a";s:10:"groupLabel";s:9:"Inportatu";}s:5:"fr_FR";a:3:{s:4:"name";s:26:"Applet de téléchargement";s:11:"description";s:47:"Applet de téléchargement simple d'utilisation";s:10:"groupLabel";s:8:"Importer";}s:5:"ga_IE";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"el_GR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"is_IS";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"it_IT";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:45:"Un'applet per caricare facilmente nuovi media";s:10:"groupLabel";s:7:"Importa";}s:5:"lv_LV";a:3:{s:4:"name";s:28:"Augšupielādes sīklietotne";s:11:"description";s:51:"Viegli lietojama failu augšupielādes sīklietotne";s:10:"groupLabel";s:9:"Importēt";}s:5:"lt_LT";a:3:{s:4:"name";s:18:"Įkėlimo programa";s:11:"description";s:35:"Paprasta naudoti įkėlimo programa";s:10:"groupLabel";s:8:"Importas";}s:5:"hu_HU";a:3:{s:4:"name";s:24:"Feltöltő Segédprogram";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:12:"Importálás";}s:5:"nl_NL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:47:"Eenvoudig te gebruiken upload applet voor media";s:10:"groupLabel";s:10:"Importeren";}s:5:"no_NO";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"pl_PL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:44:"Prosty w użyciu aplet do wysyłania plików";s:10:"groupLabel";s:6:"Import";}s:5:"pt_BR";a:3:{s:4:"name";s:16:"Applet de upload";s:11:"description";s:41:"Applet de upload de mídia fácil de usar";s:10:"groupLabel";s:8:"Importar";}s:5:"pt_PT";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"ro_RO";a:3:{s:4:"name";s:22:"Aplicatie de incarcare";s:11:"description";s:57:"Aplicatie usor de folosit pentru incarcarea fotografiilor";s:10:"groupLabel";s:6:"Import";}s:5:"sk_SK";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"sl_SI";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"sr_YU";a:3:{s:4:"name";s:16:"Alatka za prenos";s:11:"description";s:37:"Alatka za jednostavan prenos datoteka";s:10:"groupLabel";s:6:"Prenos";}s:5:"fi_FI";a:3:{s:4:"name";s:17:"Julkaisu-Appletti";s:11:"description";s:45:"Helppokäyttöinen julkaisu-appletti medialle";s:10:"groupLabel";s:14:"Sisääntuonti";}s:5:"sv_SE";a:3:{s:4:"name";s:19:"Uppladdnings Applet";s:11:"description";s:51:"En lättanvänd uppladdnings applet för mediafiler";s:10:"groupLabel";s:9:"Importera";}s:5:"th_TH";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"uk_UA";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"vi_VN";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"tr_TR";a:3:{s:4:"name";s:13:"Applet Yükle";s:11:"description";s:50:"Kullanması kolay, medya için applet ile yükleme";s:10:"groupLabel";s:10:"Dışalım";}s:5:"bg_BG";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"ru_RU";a:3:{s:4:"name";s:21:"Через Аплет";s:11:"description";s:96:"Удобная в использовании загрузка данных через аплет";s:10:"groupLabel";s:12:"Импорт";}s:5:"zh_CN";a:3:{s:4:"name";s:12:"上传工具";s:11:"description";s:39:"用于媒体文件的易用上传工具";s:10:"groupLabel";s:6:"导入";}s:5:"zh_TW";a:3:{s:4:"name";s:15:"上傳小程式";s:11:"description";s:39:"上傳媒體檔案用的簡易小程式";s:10:"groupLabel";s:6:"引進";}s:5:"ko_KR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:45:"손쉬운 파일올리기를 제공합니다.";s:10:"groupLabel";s:6:"Import";}s:5:"ja_JP";a:3:{s:4:"name";s:33:"アップロードアプレット";s:11:"description";s:72:"簡単にメディアをアップロードできるアプレットです";s:10:"groupLabel";s:15:"インポート";}s:5:"ar_SA";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"he_IL";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}s:5:"fa_IR";a:3:{s:4:"name";s:13:"Upload Applet";s:11:"description";s:35:"Easy to use upload applet for media";s:10:"groupLabel";s:6:"Import";}}s:5:"files";a:77:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:3:"731";s:4:"hash";s:10:"1154591790";s:8:"packages";a:1:{i:0;s:4:"base";}}s:23:"ItemAddUploadApplet.inc";a:3:{s:5:"bytes";s:4:"3943";s:4:"hash";s:10:"3258148603";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"UploadAppletSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"4920";s:4:"hash";s:10:"3869837668";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"applets/GalleryRemoteAppletMini.jar";a:3:{s:5:"bytes";s:6:"357432";s:4:"hash";s:10:"3541687025";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"applets/GalleryRemoteHTTPClient.jar";a:3:{s:5:"bytes";s:6:"219701";s:4:"hash";s:10:"1127274517";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"applets/applet_img.jar";a:3:{s:5:"bytes";s:4:"9914";s:4:"hash";s:10:"3040025735";s:8:"packages";a:1:{i:0;s:4:"base";}}s:45:"locale/af/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"1443";s:4:"hash";s:10:"1747263122";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:45:"locale/ar/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:3:"613";s:4:"hash";s:10:"1972846055";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:45:"locale/ca/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5425";s:4:"hash";s:10:"2152463733";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:45:"locale/cs/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5575";s:4:"hash";s:10:"2711557314";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:45:"locale/da/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5462";s:4:"hash";s:10:"3378631518";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:45:"locale/de/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5713";s:4:"hash";s:10:"1176981381";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:48:"locale/en_GB/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:3:"460";s:4:"hash";s:10:"3220106124";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:45:"locale/es/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5433";s:4:"hash";s:10:"2946319860";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:45:"locale/et/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5243";s:4:"hash";s:10:"4075378693";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:45:"locale/eu/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5295";s:4:"hash";s:9:"549583885";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:45:"locale/fi/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"1387";s:4:"hash";s:10:"2805288906";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:45:"locale/fr/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5779";s:4:"hash";s:8:"47653962";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:45:"locale/hu/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"1375";s:4:"hash";s:10:"1633585770";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:45:"locale/is/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:3:"424";s:4:"hash";s:10:"2512490236";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:45:"locale/it/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5456";s:4:"hash";s:9:"821060143";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:45:"locale/ja/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5946";s:4:"hash";s:10:"1693336712";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:45:"locale/ko/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"1785";s:4:"hash";s:10:"4213559214";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:45:"locale/lt/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5615";s:4:"hash";s:10:"4105429913";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:45:"locale/lv/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"3175";s:4:"hash";s:10:"1266217282";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:45:"locale/nl/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5399";s:4:"hash";s:9:"109680480";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:45:"locale/no/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5369";s:4:"hash";s:10:"3953039901";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:45:"locale/pl/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5536";s:4:"hash";s:10:"2490229252";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:48:"locale/pt_BR/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"1428";s:4:"hash";s:10:"3395108023";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:45:"locale/ro/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5434";s:4:"hash";s:10:"1220451649";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:45:"locale/ru/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"7635";s:4:"hash";s:10:"3431514936";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:45:"locale/sk/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:3:"712";s:4:"hash";s:10:"1767101955";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:45:"locale/sr/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"1375";s:4:"hash";s:10:"1583926405";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:45:"locale/sv/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"5497";s:4:"hash";s:10:"2432799858";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:45:"locale/tr/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"2217";s:4:"hash";s:10:"3169526739";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:45:"locale/uk/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:3:"605";s:4:"hash";s:10:"4013601994";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:45:"locale/vi/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:3:"632";s:4:"hash";s:10:"2725461881";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:48:"locale/zh_CN/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"4837";s:4:"hash";s:9:"538866547";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:48:"locale/zh_TW/LC_MESSAGES/modules_uploadapplet.mo";a:3:{s:5:"bytes";s:4:"4932";s:4:"hash";s:10:"1154578674";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:4:"2676";s:4:"hash";s:10:"3997731079";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/af.po";a:3:{s:5:"bytes";s:4:"4589";s:4:"hash";s:10:"3542291706";s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:8:"po/ar.po";a:3:{s:5:"bytes";s:4:"4125";s:4:"hash";s:10:"3859446068";s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:8:"po/ca.po";a:3:{s:5:"bytes";s:4:"6567";s:4:"hash";s:10:"3979357724";s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"6429";s:4:"hash";s:10:"1592809957";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:4:"6417";s:4:"hash";s:10:"1822184779";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:4:"6772";s:4:"hash";s:10:"2156504724";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"5963";s:4:"hash";s:10:"1270607446";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:4:"6455";s:4:"hash";s:10:"1776010002";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/et.po";a:3:{s:5:"bytes";s:4:"6049";s:4:"hash";s:10:"2274771373";s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:8:"po/eu.po";a:3:{s:5:"bytes";s:4:"6148";s:4:"hash";s:10:"2960404460";s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"4545";s:4:"hash";s:9:"245962954";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:4:"6732";s:4:"hash";s:9:"597051743";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/hu.po";a:3:{s:5:"bytes";s:4:"4612";s:4:"hash";s:9:"271318231";s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:8:"po/is.po";a:3:{s:5:"bytes";s:4:"4014";s:4:"hash";s:10:"1899645851";s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:4:"6326";s:4:"hash";s:10:"3106998653";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"6749";s:4:"hash";s:10:"3937344597";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/ko.po";a:3:{s:5:"bytes";s:4:"4597";s:4:"hash";s:10:"3425928224";s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:8:"po/lt.po";a:3:{s:5:"bytes";s:4:"6480";s:4:"hash";s:10:"4017712539";s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:8:"po/lv.po";a:3:{s:5:"bytes";s:4:"5189";s:4:"hash";s:10:"2607785306";s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:8:"po/nl.po";a:3:{s:5:"bytes";s:4:"6434";s:4:"hash";s:10:"2885709020";s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:4:"6294";s:4:"hash";s:10:"3761129245";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:4:"6571";s:4:"hash";s:10:"3921326149";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:11:"po/pt_BR.po";a:3:{s:5:"bytes";s:4:"4515";s:4:"hash";s:10:"1007053836";s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:8:"po/ro.po";a:3:{s:5:"bytes";s:4:"6337";s:4:"hash";s:10:"3010397767";s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:8:"po/ru.po";a:3:{s:5:"bytes";s:4:"8582";s:4:"hash";s:10:"3192862312";s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:8:"po/sk.po";a:3:{s:5:"bytes";s:4:"4330";s:4:"hash";s:10:"2350126464";s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:4:"4496";s:4:"hash";s:10:"3706552591";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"2573";s:4:"hash";s:10:"1858646721";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:4:"6316";s:4:"hash";s:10:"1006468116";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:8:"po/tr.po";a:3:{s:5:"bytes";s:4:"4903";s:4:"hash";s:10:"3160274919";s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:8:"po/uk.po";a:3:{s:5:"bytes";s:4:"4374";s:4:"hash";s:10:"1326975409";s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:8:"po/vi.po";a:3:{s:5:"bytes";s:4:"4143";s:4:"hash";s:10:"4011014400";s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:11:"po/zh_CN.po";a:3:{s:5:"bytes";s:4:"5611";s:4:"hash";s:10:"1671633747";s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"5710";s:4:"hash";s:10:"1991573628";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:33:"templates/ItemAddUploadApplet.tpl";a:3:{s:5:"bytes";s:4:"6040";s:4:"hash";s:10:"2467543521";s:8:"packages";a:1:{i:0;s:4:"base";}}s:35:"templates/UploadAppletSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"6249";s:4:"hash";s:10:"2260463706";s:8:"packages";a:1:{i:0;s:4:"base";}}}s:11:"directories";a:70:{s:7:"applets";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/af/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:9:"locale/af";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-af";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/ar/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:9:"locale/ar";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ar";}}s:21:"locale/ca/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:9:"locale/ca";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ca";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/et/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:9:"locale/et";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-et";}}s:21:"locale/eu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:9:"locale/eu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-eu";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/hu/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:9:"locale/hu";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-hu";}}s:21:"locale/is/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:9:"locale/is";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-is";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/ko/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:9:"locale/ko";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ko";}}s:21:"locale/lt/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:9:"locale/lt";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lt";}}s:21:"locale/lv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:9:"locale/lv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-lv";}}s:21:"locale/nl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:9:"locale/nl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-nl";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:24:"locale/pt_BR/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:12:"locale/pt_BR";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-pt_BR";}}s:21:"locale/ro/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:9:"locale/ro";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ro";}}s:21:"locale/ru/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:9:"locale/ru";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ru";}}s:21:"locale/sk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:9:"locale/sk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sk";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:21:"locale/tr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:9:"locale/tr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-tr";}}s:21:"locale/uk/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:9:"locale/uk";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-uk";}}s:21:"locale/vi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:9:"locale/vi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-vi";}}s:24:"locale/zh_CN/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:12:"locale/zh_CN";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_CN";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}}s:9:"languages";a:1:{i:15342;a:33:{s:2:"af";s:5:"16040";s:2:"ar";s:5:"16040";s:2:"ca";s:5:"16040";s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16040";s:2:"et";s:5:"16040";s:2:"eu";s:5:"16040";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"hu";s:5:"16040";s:2:"is";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"ko";s:5:"16040";s:2:"lt";s:5:"16040";s:2:"lv";s:5:"16040";s:2:"nl";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:5:"pt_BR";s:5:"16040";s:2:"ro";s:5:"16040";s:2:"ru";s:5:"16040";s:2:"sk";s:5:"16040";s:2:"sr";s:5:"16040";s:2:"sv";s:5:"16040";s:2:"tr";s:5:"16040";s:2:"uk";s:5:"16040";s:2:"vi";s:5:"16040";s:5:"zh_CN";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-lang-es-15342-16040.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-lang-es-15342-16040.package new file mode 100644 index 0000000..0b4ae80 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/uploadapplet-lang-es-15342-16040.package @@ -0,0 +1,16 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/webdav-1.0.0.2-16513-base.package b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/webdav-1.0.0.2-16513-base.package new file mode 100644 index 0000000..46be36e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/webdav-1.0.0.2-16513-base.package @@ -0,0 +1,52 @@ + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/webdav-1.0.0.2-16513.descriptor b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/webdav-1.0.0.2-16513.descriptor new file mode 100644 index 0000000..3853905 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/repository/released/modules/webdav-1.0.0.2-16513.descriptor @@ -0,0 +1 @@ +a:5:{s:6:"header";a:6:{s:2:"id";s:6:"webdav";s:7:"version";s:7:"1.0.0.2";s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:17;}s:17:"requiredPluginApi";a:2:{i:0;i:3;i:1;i:5;}s:15:"stringsRevision";s:5:"15749";s:14:"buildTimestamp";s:5:"16513";}s:12:"descriptions";a:44:{s:5:"en_US";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"en_GB";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"af_ZA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ca_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"cs_CZ";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:20:"Vzdálené rozhraní";}s:5:"da_DK";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:34:"Monter Gallery på dit skrivebord.";s:10:"groupLabel";s:29:"Fjernbetjenings-grænseflader";}s:5:"de_DE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:51:"Gallery von Ihrem Computer als Netzlaufwerk öffnen";s:10:"groupLabel";s:39:"Anwendungs- und Programm-Schnittstellen";}s:5:"es_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_MX";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"es_AR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:31:"Monta Gallery en tu escritorio.";s:10:"groupLabel";s:18:"Interfaces Remotas";}s:5:"et_EE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"eu_ES";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fr_FR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:62:"Accès à Gallery depuis votre bureau avec le protocole WebDAV";s:10:"groupLabel";s:20:"Interfaces distantes";}s:5:"ga_IE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"el_GR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"is_IS";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"it_IT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:34:"Monta Gallery sulla tua scrivania.";s:10:"groupLabel";s:17:"Interfacce Remote";}s:5:"lv_LV";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"lt_LT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"hu_HU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"nl_NL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"no_NO";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pl_PL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:28:"Mapowanie galerii na pulpit.";s:10:"groupLabel";s:17:"Zdalne interfejsy";}s:5:"pt_BR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"pt_PT";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ro_RO";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sk_SK";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sl_SI";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sr_YU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:36:"Montiranje Galerije na vaš desktop.";s:10:"groupLabel";s:20:"Daljinski interfejsi";}s:5:"fi_FI";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"sv_SE";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:35:"Montera Gallery på ditt skrivbord.";s:10:"groupLabel";s:25:"Fjärstyrningsgränssnitt";}s:5:"th_TH";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"uk_UA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"vi_VN";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"tr_TR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"bg_BG";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ru_RU";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_CN";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"zh_TW";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:35:"在你的桌面上搭載 Gallery。";s:10:"groupLabel";s:18:"遠端存取界面";}s:5:"ko_KR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"ja_JP";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:48:"GalleryをあなたのPCにマウントします";s:10:"groupLabel";s:36:"リモートインターフェース";}s:5:"ar_SA";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"he_IL";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}s:5:"fa_IR";a:3:{s:4:"name";s:6:"WebDAV";s:11:"description";s:30:"Mount Gallery on your desktop.";s:10:"groupLabel";s:17:"Remote Interfaces";}}s:5:"files";a:61:{s:8:"MANIFEST";a:3:{s:5:"bytes";s:4:"1854";s:4:"hash";s:10:"1992379623";s:8:"packages";a:1:{i:0;s:4:"base";}}s:13:"Callbacks.inc";a:3:{s:5:"bytes";s:4:"1439";s:4:"hash";s:10:"2358814663";s:8:"packages";a:1:{i:0;s:4:"base";}}s:20:"DownloadDavMount.inc";a:3:{s:5:"bytes";s:4:"2786";s:4:"hash";s:9:"926099365";s:8:"packages";a:1:{i:0;s:4:"base";}}s:17:"ItemAddWebDav.inc";a:3:{s:5:"bytes";s:5:"10783";s:4:"hash";s:10:"2523881622";s:8:"packages";a:1:{i:0;s:4:"base";}}s:10:"WebDav.inc";a:3:{s:5:"bytes";s:4:"7614";s:4:"hash";s:9:"296137277";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"WebDavMount.inc";a:3:{s:5:"bytes";s:4:"1587";s:4:"hash";s:10:"1838621692";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"WebDavSiteAdmin.inc";a:3:{s:5:"bytes";s:4:"1698";s:4:"hash";s:9:"553960122";s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"WebDavWorks.inc";a:3:{s:5:"bytes";s:4:"1308";s:4:"hash";s:10:"2574696807";s:8:"packages";a:1:{i:0;s:4:"base";}}s:19:"classes/GNUmakefile";a:3:{s:5:"bytes";s:2:"51";s:4:"hash";s:10:"1995366819";s:8:"packages";a:1:{i:0;s:4:"base";}}s:34:"classes/GalleryStorage/GNUmakefile";a:3:{s:5:"bytes";s:2:"61";s:4:"hash";s:10:"1465776782";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/GalleryStorage/schema.tpl";a:3:{s:5:"bytes";s:4:"2241";s:4:"hash";s:10:"3361478170";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"classes/Maps.inc";a:3:{s:5:"bytes";s:3:"580";s:4:"hash";s:10:"3097969041";s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"classes/Maps.xml";a:3:{s:5:"bytes";s:4:"1049";s:4:"hash";s:9:"389449069";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"classes/WebDavHelper.class";a:3:{s:5:"bytes";s:5:"59906";s:4:"hash";s:9:"952450599";s:8:"packages";a:1:{i:0;s:4:"base";}}s:33:"classes/WebDavRewriteHelper.class";a:3:{s:5:"bytes";s:4:"2434";s:4:"hash";s:9:"107529024";s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"data/options/.htaccess";a:3:{s:5:"bytes";s:4:"1316";s:4:"hash";s:10:"1142116337";s:8:"packages";a:1:{i:0;s:4:"base";}}s:26:"lib/HTTP/WebDAV/Server.php";a:3:{s:5:"bytes";s:5:"74761";s:4:"hash";s:10:"2461613593";s:8:"packages";a:1:{i:0;s:4:"base";}}s:41:"lib/HTTP/WebDAV/Tools/_parse_lockinfo.php";a:3:{s:5:"bytes";s:4:"6213";s:4:"hash";s:8:"11587171";s:8:"packages";a:1:{i:0;s:4:"base";}}s:41:"lib/HTTP/WebDAV/Tools/_parse_propfind.php";a:3:{s:5:"bytes";s:4:"4574";s:4:"hash";s:10:"2397186960";s:8:"packages";a:1:{i:0;s:4:"base";}}s:42:"lib/HTTP/WebDAV/Tools/_parse_proppatch.php";a:3:{s:5:"bytes";s:4:"5688";s:4:"hash";s:10:"3422974363";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"locale/cs/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"1214";s:4:"hash";s:10:"1047684311";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:39:"locale/da/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"6771";s:4:"hash";s:10:"2510260108";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:39:"locale/de/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"9485";s:4:"hash";s:10:"3114598404";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:42:"locale/en_GB/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:3:"453";s:4:"hash";s:10:"1413919835";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:39:"locale/es/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"8066";s:4:"hash";s:10:"2921815291";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:39:"locale/fi/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:3:"513";s:4:"hash";s:9:"721612248";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:39:"locale/fr/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"9951";s:4:"hash";s:9:"423636460";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:39:"locale/it/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"9203";s:4:"hash";s:9:"951994282";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:39:"locale/ja/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"1345";s:4:"hash";s:9:"509026931";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:39:"locale/no/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"9161";s:4:"hash";s:10:"1385045948";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:39:"locale/pl/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"9502";s:4:"hash";s:9:"362302417";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:39:"locale/sr/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"8882";s:4:"hash";s:9:"670662386";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:39:"locale/sv/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"8890";s:4:"hash";s:10:"2854839760";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:42:"locale/zh_TW/LC_MESSAGES/modules_webdav.mo";a:3:{s:5:"bytes";s:4:"8314";s:4:"hash";s:10:"1556634049";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:10:"module.inc";a:3:{s:5:"bytes";s:5:"11462";s:4:"hash";s:8:"77555575";s:8:"packages";a:1:{i:0;s:4:"base";}}s:14:"po/GNUmakefile";a:3:{s:5:"bytes";s:2:"98";s:4:"hash";s:10:"1866879166";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/cs.po";a:3:{s:5:"bytes";s:4:"7255";s:4:"hash";s:10:"2370490924";s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:8:"po/da.po";a:3:{s:5:"bytes";s:5:"10362";s:4:"hash";s:9:"739748635";s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:8:"po/de.po";a:3:{s:5:"bytes";s:5:"11455";s:4:"hash";s:10:"1545511418";s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:11:"po/en_GB.po";a:3:{s:5:"bytes";s:4:"9762";s:4:"hash";s:10:"3614209927";s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:8:"po/es.po";a:3:{s:5:"bytes";s:5:"11394";s:4:"hash";s:9:"121984932";s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:8:"po/fi.po";a:3:{s:5:"bytes";s:4:"6204";s:4:"hash";s:10:"3605972956";s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:8:"po/fr.po";a:3:{s:5:"bytes";s:5:"11111";s:4:"hash";s:10:"1051384353";s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:8:"po/it.po";a:3:{s:5:"bytes";s:5:"10336";s:4:"hash";s:10:"3154788012";s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:8:"po/ja.po";a:3:{s:5:"bytes";s:4:"6413";s:4:"hash";s:8:"65674916";s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:8:"po/no.po";a:3:{s:5:"bytes";s:5:"10410";s:4:"hash";s:10:"3049735091";s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:8:"po/pl.po";a:3:{s:5:"bytes";s:5:"10710";s:4:"hash";s:10:"1563022598";s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:8:"po/sr.po";a:3:{s:5:"bytes";s:5:"10007";s:4:"hash";s:10:"1502528896";s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:14:"po/strings.raw";a:3:{s:5:"bytes";s:4:"4443";s:4:"hash";s:10:"1636664032";s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"po/sv.po";a:3:{s:5:"bytes";s:5:"10080";s:4:"hash";s:9:"215764433";s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:11:"po/zh_TW.po";a:3:{s:5:"bytes";s:4:"9954";s:4:"hash";s:10:"3457626786";s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:27:"templates/ItemAddWebDav.tpl";a:3:{s:5:"bytes";s:3:"387";s:4:"hash";s:10:"1353965866";s:8:"packages";a:1:{i:0;s:4:"base";}}s:25:"templates/WebDavMount.tpl";a:3:{s:5:"bytes";s:4:"1678";s:4:"hash";s:10:"2057727104";s:8:"packages";a:1:{i:0;s:4:"base";}}s:29:"templates/WebDavSiteAdmin.tpl";a:3:{s:5:"bytes";s:4:"8485";s:4:"hash";s:10:"1888656763";s:8:"packages";a:1:{i:0;s:4:"base";}}s:30:"templates/blocks/WebDavUrl.tpl";a:3:{s:5:"bytes";s:3:"430";s:4:"hash";s:10:"2356653701";s:8:"packages";a:1:{i:0;s:4:"base";}}s:27:"templates/blocks/blocks.inc";a:3:{s:5:"bytes";s:3:"102";s:4:"hash";s:9:"740358944";s:8:"packages";a:1:{i:0;s:4:"base";}}s:39:"test/phpunit/WebDavControllerTest.class";a:3:{s:5:"bytes";s:4:"2716";s:4:"hash";s:10:"1936323244";s:8:"packages";a:0:{}}s:35:"test/phpunit/WebDavHelperTest.class";a:3:{s:5:"bytes";s:5:"24560";s:4:"hash";s:10:"1177326421";s:8:"packages";a:0:{}}s:35:"test/phpunit/WebDavModuleTest.class";a:3:{s:5:"bytes";s:5:"10533";s:4:"hash";s:10:"4260492541";s:8:"packages";a:0:{}}s:42:"test/phpunit/WebDavRewriteHelperTest.class";a:3:{s:5:"bytes";s:4:"4834";s:4:"hash";s:10:"1374179425";s:8:"packages";a:0:{}}s:29:"test/phpunit/WebDavTest.class";a:3:{s:5:"bytes";s:5:"36601";s:4:"hash";s:10:"1695219300";s:8:"packages";a:0:{}}}s:11:"directories";a:42:{s:7:"classes";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:22:"classes/GalleryStorage";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"data/options";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:4:"data";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:15:"lib/HTTP/WebDAV";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:8:"lib/HTTP";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:3:"lib";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"lib/HTTP/WebDAV/Tools";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/cs/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:9:"locale/cs";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-cs";}}s:6:"locale";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:21:"locale/da/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:9:"locale/da";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-da";}}s:21:"locale/de/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:9:"locale/de";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-de";}}s:24:"locale/en_GB/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:12:"locale/en_GB";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-en_GB";}}s:21:"locale/es/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:9:"locale/es";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-es";}}s:21:"locale/fi/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:9:"locale/fi";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fi";}}s:21:"locale/fr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:9:"locale/fr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-fr";}}s:21:"locale/it/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:9:"locale/it";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-it";}}s:21:"locale/ja/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:9:"locale/ja";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-ja";}}s:21:"locale/no/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:9:"locale/no";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-no";}}s:21:"locale/pl/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:9:"locale/pl";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-pl";}}s:21:"locale/sr/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:9:"locale/sr";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sr";}}s:21:"locale/sv/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:9:"locale/sv";a:1:{s:8:"packages";a:1:{i:0;s:7:"lang-sv";}}s:24:"locale/zh_TW/LC_MESSAGES";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:12:"locale/zh_TW";a:1:{s:8:"packages";a:1:{i:0;s:10:"lang-zh_TW";}}s:2:"po";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:9:"templates";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:16:"templates/blocks";a:1:{s:8:"packages";a:1:{i:0;s:4:"base";}}s:12:"test/phpunit";a:1:{s:8:"packages";a:0:{}}s:4:"test";a:1:{s:8:"packages";a:0:{}}}s:9:"languages";a:1:{i:15749;a:14:{s:2:"cs";s:5:"16040";s:2:"da";s:5:"16040";s:2:"de";s:5:"16040";s:5:"en_GB";s:5:"16040";s:2:"es";s:5:"16472";s:2:"fi";s:5:"16040";s:2:"fr";s:5:"16040";s:2:"it";s:5:"16040";s:2:"ja";s:5:"16040";s:2:"no";s:5:"16040";s:2:"pl";s:5:"16040";s:2:"sr";s:5:"16501";s:2:"sv";s:5:"16040";s:5:"zh_TW";s:5:"16040";}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc new file mode 100644 index 0000000..2425688 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc @@ -0,0 +1 @@ +|a:9:{s:5:"abeto";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.1.3";s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:16:"requiredThemeApi";a:2:{i:0;i:2;i:1;i:4;}}s:6:"siriux";a:6:{s:6:"active";s:1:"1";s:9:"available";i:1;s:7:"version";s:5:"1.1.3";s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:7;i:1;i:10;}s:16:"requiredThemeApi";a:2:{i:0;i:2;i:1;i:4;}}s:6:"matrix";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}s:8:"floatrix";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}s:7:"classic";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}s:6:"hybrid";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}s:6:"carbon";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}s:6:"slider";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}s:7:"ajaxian";a:5:{s:9:"available";i:1;s:7:"version";N;s:9:"callbacks";N;s:15:"requiredCoreApi";a:2:{i:0;i:-1;i:1;i:-1;}s:16:"requiredThemeApi";a:2:{i:0;i:-1;i:1;i:-1;}}} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/0/0.inc new file mode 100644 index 0000000..cb0578c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/0/0.inc @@ -0,0 +1 @@ +|a:9:{s:11:"albumBlocks";s:218:"a:2:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:0:{}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:8:{s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:12:"contentWidth";s:3:"930";s:14:"enableImageMap";s:1:"0";s:11:"groupByYear";s:1:"0";s:7:"perPage";s:1:"9";s:11:"photoBlocks";s:218:"a:2:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:0:{}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:8:{s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:16:"_requiredCoreApi";s:4:"7,10";s:17:"_requiredThemeApi";s:3:"2,4";s:8:"_version";s:5:"1.1.3";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/0/7.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/0/7.inc new file mode 100644 index 0000000..c4588a4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/0/7.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:726:"a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:2;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/11.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/11.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/11.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/13.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/13.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/13.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/14.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/14.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/14.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/15.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/15.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/1/15.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/9/97.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/9/97.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/0/9/97.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/2/121.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/2/121.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/2/121.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/4/144.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/4/144.inc new file mode 100644 index 0000000..c4588a4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/4/144.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:726:"a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:2;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/4/146.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/4/146.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/4/146.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/5/156.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/5/156.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/5/156.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/6/162.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/6/162.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/6/162.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/6/168.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/6/168.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/6/168.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/8/183.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/8/183.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/8/183.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/9/193.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/9/193.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/9/193.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/9/194.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/9/194.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/1/9/194.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/0/205.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/0/205.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/0/205.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/3/232.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/3/232.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/3/232.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/5/250.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/5/250.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/5/250.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/9/298.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/9/298.inc new file mode 100644 index 0000000..c4588a4 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/2/9/298.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:726:"a:3:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:1;a:2:{i:0;s:13:"core.PeerList";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}i:2;a:2:{i:0;s:18:"search.SearchBlock";i:1;a:13:{s:8:"hexToRgb";N;s:8:"rgbToHex";N;s:9:"associate";N;s:6:"extend";N;s:4:"test";N;s:6:"remove";N;s:4:"copy";N;s:4:"each";N;s:7:"indexOf";N;s:4:"some";N;s:5:"every";N;s:3:"map";N;s:7:"forEach";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/3/1/316.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/3/1/316.inc new file mode 100644 index 0000000..8a5173e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/abeto/3/1/316.inc @@ -0,0 +1 @@ +|a:2:{s:11:"albumBlocks";s:245:"a:1:{i:0;a:2:{i:0;s:14:"core.ItemLinks";i:1;a:13:{s:7:"forEach";N;s:3:"map";N;s:5:"every";N;s:4:"some";N;s:7:"indexOf";N;s:4:"each";N;s:4:"copy";N;s:6:"remove";N;s:4:"test";N;s:6:"extend";N;s:9:"associate";N;s:8:"rgbToHex";N;s:8:"hexToRgb";N;}}}";s:7:"perPage";s:3:"999";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/ajaxian/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/ajaxian/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/ajaxian/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/carbon/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/carbon/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/carbon/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/classic/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/classic/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/classic/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/floatrix/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/floatrix/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/floatrix/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/hybrid/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/hybrid/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/hybrid/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/matrix/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/matrix/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/matrix/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/siriux/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/siriux/0/0/0.inc new file mode 100644 index 0000000..9dbd38d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/siriux/0/0/0.inc @@ -0,0 +1 @@ +|a:9:{s:11:"albumBlocks";s:58:"a:1:{i:0;a:2:{i:0;s:20:"comment.ViewComments";i:1;a:0:{}}}";s:12:"contentWidth";s:3:"950";s:14:"enableImageMap";s:1:"1";s:11:"groupByYear";s:1:"0";s:7:"perPage";s:1:"9";s:11:"photoBlocks";s:103:"a:2:{i:0;a:2:{i:0;s:13:"exif.ExifInfo";i:1;a:0:{}}i:1;a:2:{i:0;s:20:"comment.ViewComments";i:1;a:0:{}}}";s:16:"_requiredCoreApi";s:4:"7,10";s:17:"_requiredThemeApi";s:3:"2,4";s:8:"_version";s:5:"1.1.3";} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/cache/theme/slider/0/0/0.inc b/Source/gallery2/g2data_2e6106f57b/cache/theme/slider/0/0/0.inc new file mode 100644 index 0000000..348d287 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/cache/theme/slider/0/0/0.inc @@ -0,0 +1 @@ +|a:0:{} \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/install_57a714167e.log b/Source/gallery2/g2data_2e6106f57b/install_57a714167e.log new file mode 100644 index 0000000..4eec6be --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/install_57a714167e.log @@ -0,0 +1,2246 @@ +2007-06-28 19:56:26 [] + + +-------------------------------------------------------- + Prepare installation of the core module +-------------------------------------------------------- + + +2007-06-28 19:56:26 [] [1183053386] can't guarantee 120 -- extending! +2007-06-28 19:56:26 [] Init first pass +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqli): SET NAMES "utf8"   +
+ +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] + +-------------------------------------------------------- +System and Gallery information: +-------------------------------------------------------- + Gallery version: 1.2.0.4 + File integrity: Ok + SVN install: No + PHP version: 5.2.2 apache + PHP memory limit: 32M + PHP disable_functions: + PHP zend.ze1_compatibility_mode: 0 + Webserver: Apache 3 - FENIXER + Database: mysqli 5.0.27-standard-log + Operating system: Linux toledo.serverenred.com 2.6.20-1.2316.fc5smp #1 SMP Fri Apr 27 20:34:56 EDT 2007 i686 + Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4 +-------------------------------------------------------- + + + +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Clear the cache directory +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #56) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/142.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/142.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/142-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/142-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/143.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/143.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/144.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/144.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #66) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/4/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #87) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/188.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/188.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #87) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/188-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/188-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #87) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/183.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/183.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #87) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #87) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #87) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/8/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/193.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/193.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/195.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/195.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/199-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/199-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/194.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/194.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/199.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/199.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #105) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/9/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/172.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/172.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/175.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/175.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/171.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/171.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/173.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/173.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/173-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/173-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/170.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/170.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/171-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/171-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/174.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/174.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/174-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/174-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/179.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/179.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #129) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/7/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #168) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5/156.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5/156.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #168) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5/157.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5/157.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #168) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #168) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #168) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/5/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #183) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6/169.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6/169.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #183) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6/168.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6/168.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #183) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #183) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #183) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/6/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #56) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #202) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/15.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/15.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/13.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/13.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/14.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/14.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/11.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/11.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #207) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #202) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/9) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/9) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/9/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #228) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/9/97.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/9/97.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #228) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #228) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #228) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/9/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #202) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #240) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/6.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/6.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #240) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/7.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/7.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #240) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/5.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/5.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #240) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #240) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #240) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #202) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #202) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #202) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #56) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #267) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1/211.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1/211.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #267) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1/211-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1/211-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #267) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #267) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #267) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/274-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/274-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/273.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/273.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/271-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/271-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/270.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/270.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/274.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/274.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/271.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/271.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/275.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/275.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/272.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/272.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #282) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/7/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #315) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/204-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/204-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #315) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/200.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/200.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #315) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/204.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/204.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #315) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #315) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #315) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/268-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/268-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/266.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/266.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/269.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/269.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/264.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/264.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/264-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/264-fast.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/268.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/268.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/267.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/267.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/263.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/263.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/265.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/265.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #333) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/6/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #262) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/2/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #56) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #56) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #56) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/entity/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #386) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #391) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #391) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #391) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #391) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #386) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #386) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #386) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/_all/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #411) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #416) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #421) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #421) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #421) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #421) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #416) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #416) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #416) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #411) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #411) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #411) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/matrix/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #441) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #446) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #451) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #451) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #451) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #451) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #446) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #446) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #446) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #441) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #441) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #441) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/floatrix/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #471) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #476) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/6) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/6) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/6/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #481) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/6/168.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/6/168.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #481) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #481) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #481) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/6/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #476) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #476) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #476) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #471) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #497) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #502) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1/15.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1/15.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #502) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #502) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #502) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1/11.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1/11.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #502) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/1/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #497) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #517) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0/7.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0/7.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #517) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #517) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #517) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #517) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #497) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #497) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #497) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #471) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #471) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #471) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/abeto/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #540) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #545) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #550) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #550) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #550) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #550) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #545) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #545) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #545) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #540) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #540) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #540) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/siriux/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #570) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #575) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #580) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #580) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #580) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #580) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #575) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #575) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #575) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #570) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #570) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #570) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/classic/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #600) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #605) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #610) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #610) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #610) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #610) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #605) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #605) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #605) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #600) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #600) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #600) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/hybrid/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #630) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #635) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #640) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #640) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #640) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #640) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #635) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #635) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #635) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #630) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #630) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #630) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/carbon/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #661) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #666) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #671) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #671) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #671) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #671) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #666) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #666) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #666) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #661) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #661) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #661) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/slider/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #691) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #696) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #701) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #701) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #701) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #701) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #696) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #696) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #696) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #691) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #691) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #691) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/ajaxian/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #376) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/theme/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #728) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #733) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #738) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #738) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #738) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #738) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #733) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #733) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #733) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #728) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #728) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #728) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/uploadapplet/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #758) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #763) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #768) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #768) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #768) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #768) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #763) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #763) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #763) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #758) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #758) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #758) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/keyalbum/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #788) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #793) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #798) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #798) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #798) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #798) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #793) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #793) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #793) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #788) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #788) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #788) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/slideshow/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #818) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #823) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #828) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #828) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #828) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #828) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #823) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #823) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #823) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #818) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #818) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #818) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/shutterfly/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #848) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #853) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #858) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #858) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #858) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #858) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #853) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #853) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #853) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #848) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #848) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #848) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/core/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #878) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #883) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #888) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #888) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #888) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #888) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #883) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #883) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #883) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #878) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #878) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #878) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/webdav/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #908) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #913) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #918) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #918) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #918) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #918) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #913) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #913) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #913) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #908) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #908) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #908) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/permalinks/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #938) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #943) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #948) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #948) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #948) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #948) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #943) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #943) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #943) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #938) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #938) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #938) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbnail/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #968) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #973) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #978) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #978) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #978) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #978) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #973) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #973) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #973) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #968) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #968) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #968) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/replica/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #998) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1003) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1008) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1008) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1008) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1008) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1003) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1003) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1003) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #998) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #998) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #998) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rearrange/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1028) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1033) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1038) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1038) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1038) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1038) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1033) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1033) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1033) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1028) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1028) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1028) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imageframe/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1058) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1063) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1068) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1068) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1068) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1068) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1063) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1063) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1063) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1058) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1058) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1058) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/exif/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1088) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1093) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/0) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1098) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/0/0.inc) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1098) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1098) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1098) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1093) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1093) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1093) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/0/) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1088) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1088) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1088) +2007-06-28 19:56:26 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/search/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1118) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1123) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryPluginHelper_fetchPluginStatus.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryStorage_describeMap.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryStorage_describeMap.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryMimeTypeHelper_mimeData.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryMimeTypeHelper_mimeData.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryFactoryHelper_loadRegistry.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryFactoryHelper_loadRegistry.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryStorage_describeEntity.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/GalleryStorage_describeEntity.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1128) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1123) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1123) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1123) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1118) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1118) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1118) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/_all/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1160) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1165) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1170) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1170) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1170) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1170) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1165) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1165) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1165) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1160) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1160) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1160) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rating/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1195) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1200) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1200) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1200) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1200) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1195) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1195) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1195) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/ffmpeg/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1220) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1225) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1230) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1230) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1230) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1230) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1225) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1225) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1225) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1220) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1220) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1220) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/imagemagick/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1250) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1255) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1260) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1260) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1260) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1260) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1255) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1255) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1255) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1250) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1250) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1250) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/rewrite/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1280) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1285) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1290) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1290) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1290) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1290) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1285) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1285) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1285) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1280) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1280) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1280) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/gd/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1310) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1315) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1320) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1320) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1320) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1320) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1315) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1315) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1315) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1310) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1310) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1310) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/thumbpage/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1340) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1345) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1350) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1350) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1350) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1350) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1345) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1345) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1345) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1340) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1340) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1340) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/archiveupload/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1370) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1375) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1380) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1380) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1380) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1380) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1375) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1375) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1375) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1370) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1370) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1370) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/itemadd/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1400) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1405) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1410) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1410) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1410) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1410) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1405) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1405) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1405) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1400) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1400) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1400) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/comment/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1430) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1435) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1440) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1440) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1440) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1440) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1435) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1435) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1435) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1430) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1430) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1430) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/linkitem/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1461) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1466) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1471) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1471) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1471) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1471) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1466) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1466) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1466) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1461) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1461) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1461) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/netpbm/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1491) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1496) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1501) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1501) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1501) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1501) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1496) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1496) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1496) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1491) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1491) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1491) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/icons/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1521) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1526) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1531) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1531) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1531) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1531) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1526) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1526) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1526) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1521) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1521) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1521) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/httpauth/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1552) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1557) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1562) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/0/0.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1562) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1562) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1562) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1557) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1557) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1557) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1552) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1552) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1552) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/publishxp/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #723) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/module/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1583) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/143-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/143-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/148-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/148-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/149-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/149-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/142.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/142.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/142-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/142-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/148.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/148.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/143.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/143.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/149.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/149.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1593) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/4/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/188.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/188.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/185-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/185-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/185.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/185.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/187-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/187-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/180.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/180.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/186.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/186.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/182.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/182.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/187.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/187.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/186-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/186-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/180-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/180-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/188-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/188-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/182-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/182-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/181.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/181.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/181-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/181-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1626) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/8/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/190.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/190.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/199-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/199-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/192-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/192-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/191-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/191-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/197-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/197-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/198-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/198-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/197.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/197.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/198.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/198.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/192.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/192.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/190-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/190-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/191.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/191.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/199.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/199.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/196.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/196.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/196-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/196-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/9/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/178-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/178-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/172.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/172.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/171-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/171-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/174-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/174-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/176.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/176.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/177-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/177-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/177.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/177.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/173-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/173-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/176-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/176-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/171.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/171.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/170-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/170-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/174.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/174.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/178.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/178.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/170.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/170.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/172-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/172-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/173.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/173.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1728) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/7/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1785) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1785) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1785) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/150.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/150.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/154.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/154.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/159.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/159.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/159-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/159-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/158-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/158-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/153-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/153-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/150-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/150-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/151-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/151-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/151.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/151.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/158.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/158.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/154-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/154-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/153.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/153.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1794) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/5/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/161-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/161-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/166.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/166.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/165-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/165-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/164-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/164-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/164.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/164.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/160-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/160-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/165.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/165.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/166-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/166-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/161.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/161.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/160.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/160.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/167-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/167-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/167.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/167.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1839) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/6/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/135-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/135-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/136-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/136-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/135.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/135.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/130.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/130.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/136.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/136.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/130-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/130-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/131-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/131-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/134.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/134.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/134-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/134-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/132.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/132.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/131.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/131.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/132-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/132-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1884) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/3/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/124.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/124.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/123-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/123-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/124-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/124-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/125.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/125.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/126.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/126.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/123.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/123.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/125-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/125-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/126-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/126-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1929) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1588) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/1/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1583) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/4) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/4) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/4/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1971) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1971) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1971) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/4/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/8) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/8) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/8/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1980) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1980) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1980) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/8/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/1) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/1) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/1/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1989) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1989) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1989) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/1/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/9) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/9) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/9/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1998) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1998) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1998) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/9/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/7) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/7) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/7/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2007) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2007) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2007) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/7/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/5) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/5) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/5/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2016) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2016) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2016) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/5/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/6) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/6) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/6/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2025) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2025) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2025) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/6/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/3) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/3) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/3/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2034) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2034) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2034) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/3/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2043) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2043) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2043) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1966) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1583) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/240.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/240.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/243-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/243-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/240-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/240-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/243.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/243.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/244.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/244.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/248.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/248.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/244-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/244-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/241.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/241.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/247.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/247.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/241-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/241-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/247-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/247-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/248-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/248-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2061) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/4/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/217-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/217-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/213.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/213.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/210-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/210-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/218-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/218-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/218.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/218.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/213-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/213-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/210.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/210.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/211-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/211-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/214-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/214-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/217.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/217.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/211.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/211.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/214.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/214.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2106) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/1/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/271.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/271.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/272-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/272-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/274-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/274-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/276.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/276.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/275-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/275-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/275.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/275.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/274.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/274.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/276-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/276-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/271-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/271-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/272.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/272.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2151) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/7/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/202-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/202-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/208-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/208-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/209.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/209.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/204.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/204.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/204-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/204-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/209-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/209-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/203-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/203-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/202.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/202.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/201.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/201.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/203.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/203.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/207-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/207-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/208.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/208.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/207.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/207.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/201-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/201-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2190) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/0/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/252.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/252.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/255.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/255.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/255-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/255-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/253-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/253-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/254.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/254.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/254-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/254-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/252-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/252-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/253.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/253.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2241) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/5/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/266.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/266.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/269-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/269-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/268.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/268.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/266-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/266-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/265.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/265.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/264-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/264-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/264.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/264.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/268-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/268-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/269.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/269.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/265-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/265-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2274) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/6/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/231.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/231.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/239.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/239.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/235-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/235-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/236-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/236-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/237-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/237-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/230.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/230.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/234.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/234.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/236.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/236.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/237.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/237.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/239-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/239-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/235.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/235.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/234-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/234-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/231-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/231-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/230-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/230-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2313) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/3/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] recursiveRmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/229-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/229-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/222-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/222-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/222.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/222.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/221-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/221-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/225-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/225-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/221.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/221.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/225.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/225.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/227.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/227.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/226.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/226.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/227-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/227-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/226-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/226-meta.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/229.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] unlink(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/229.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2364) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2056) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/2/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1583) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1583) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1583) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] rmdir(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b//cache/derivative/) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] [1183053387] can't guarantee 180 -- extending! +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Check if the persistent storage is installed +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqli): SHOW TABLES   +
+ +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Load core module +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin core +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(/home/rodaxcs/public_html/abetoarmarios/gallery2/modules/core/module.inc) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] core plugin successfully instantiated +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] NOT installing, rollback! +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/versions.dat) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] file(/home/rodaxcs/public_html/abetoarmarios/gallery2/g2data_2e6106f57b/versions.dat, ) +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Core module version is ok +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Finish install core module step +2007-06-28 19:56:27 [TMP_SESSION_ID_DI_NOISSES_PMT] Install core module step completed successfully diff --git a/Source/gallery2/g2data_2e6106f57b/install_f5f544fb85.log b/Source/gallery2/g2data_2e6106f57b/install_f5f544fb85.log new file mode 100644 index 0000000..c207df6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/install_f5f544fb85.log @@ -0,0 +1,4248 @@ +2007-06-18 17:43:26 [] + + +-------------------------------------------------------- + Prepare installation of the core module +-------------------------------------------------------- + + +2007-06-18 17:43:26 [] [1182181406] can't guarantee 120 -- extending! +2007-06-18 17:43:26 [] Init first pass +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET NAMES "utf8"   +
+ +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] + +-------------------------------------------------------- +System and Gallery information: +-------------------------------------------------------- + Gallery version: 1.2.0.1 + File integrity: Ok + SVN install: No + PHP version: 5.1.6 apache2handler + PHP memory limit: + PHP disable_functions: + PHP zend.ze1_compatibility_mode: + Webserver: Apache/2.2.3 (Win32) PHP/5.1.5 + Database: mysqlt 5.0.24a-community-nt + Operating system: Windows NT DAVID 5.1 build 2600 + Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4 +-------------------------------------------------------- + + + +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Clear the cache directory +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\/cache/entity) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\/cache/theme) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\/cache/module) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\/cache/derivative) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] [1182181406] can't guarantee 180 -- extending! +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Check if the persistent storage is installed +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Load core module +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin core +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] core plugin successfully instantiated +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Hand over admin user parameters +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Install core module now! +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryModule::installOrUpgrade core module +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] In bootstrap mode (core module) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] Configure store for core module +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_Schema( + g_name varchar(128) NOT NULL, + g_major int(11) NOT NULL, + g_minor int(11) NOT NULL, + PRIMARY KEY(g_name) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('Schema', 1, 0)   +
+ +2007-06-18 17:43:26 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): create table g2_SequenceLock (id int not null)   +
+
+(mysqlt): insert into g2_SequenceLock values (0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): create table g2_SequenceId (id int not null)   +
+
+(mysqlt): insert into g2_SequenceId values (0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_ExternalIdMap( + g_externalId varchar(128) NOT NULL, + g_entityType varchar(32) NOT NULL, + g_entityId int(11) NOT NULL, + PRIMARY KEY(g_externalId, g_entityType) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('ExternalIdMap', 1, 0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_FailedLoginsMap( + g_userName varchar(32) NOT NULL, + g_count int(11) NOT NULL, + g_lastAttempt int(11) NOT NULL, + PRIMARY KEY(g_userName) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('FailedLoginsMap', 1, 0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_AccessMap( + g_accessListId int(11) NOT NULL, + g_userOrGroupId int(11) NOT NULL, + g_permission int(11) NOT NULL, + PRIMARY KEY(g_accessListId, g_userOrGroupId), + INDEX g2_AccessMap_83732(g_accessListId), + INDEX g2_AccessMap_48775(g_userOrGroupId), + INDEX g2_AccessMap_18058(g_permission) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('AccessMap', 1, 3)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_AccessSubscriberMap( + g_itemId int(11) NOT NULL, + g_accessListId int(11) NOT NULL, + PRIMARY KEY(g_itemId), + INDEX g2_AccessSubscriberMap_83732(g_accessListId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('AccessSubscriberMap', 1, 0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_AlbumItem( + g_id int(11) NOT NULL, + g_theme varchar(32), + g_orderBy varchar(128), + g_orderDirection varchar(32), + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('AlbumItem', 1, 1)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_AnimationItem( + g_id int(11) NOT NULL, + g_width int(11), + g_height int(11), + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('AnimationItem', 1, 0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_CacheMap( + g_key varchar(32) NOT NULL, + g_value longtext, + g_userId int(11) NOT NULL, + g_itemId int(11) NOT NULL, + g_type varchar(32) NOT NULL, + g_timestamp int(11) NOT NULL, + g_isEmpty int(1), + PRIMARY KEY(g_key, g_userId, g_itemId, g_type), + INDEX g2_CacheMap_75985(g_itemId), + INDEX g2_CacheMap_21979(g_userId, g_timestamp, g_isEmpty) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('CacheMap', 1, 1)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_ChildEntity( + g_id int(11) NOT NULL, + g_parentId int(11) NOT NULL, + PRIMARY KEY(g_id), + INDEX g2_ChildEntity_52718(g_parentId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('ChildEntity', 1, 0)   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_DataItem( + g_id int(11) NOT NULL, + g_mimeType varchar(128), + g_size int(11), + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:27 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('DataItem', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_Derivative( + g_id int(11) NOT NULL, + g_derivativeSourceId int(11) NOT NULL, + g_derivativeOperations varchar(255), + g_derivativeOrder int(11) NOT NULL, + g_derivativeSize int(11), + g_derivativeType int(11) NOT NULL, + g_mimeType varchar(128) NOT NULL, + g_postFilterOperations varchar(255), + g_isBroken int(1), + PRIMARY KEY(g_id), + INDEX g2_Derivative_85338(g_derivativeSourceId), + INDEX g2_Derivative_25243(g_derivativeOrder), + INDEX g2_Derivative_97216(g_derivativeType) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('Derivative', 1, 1)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_DerivativeImage( + g_id int(11) NOT NULL, + g_width int(11), + g_height int(11), + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('DerivativeImage', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_DerivativePrefsMap( + g_itemId int(11), + g_order int(11), + g_derivativeType int(11), + g_derivativeOperations varchar(255), + INDEX g2_DerivativePrefsMap_75985(g_itemId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('DerivativePrefsMap', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_DescendentCountsMap( + g_userId int(11) NOT NULL, + g_itemId int(11) NOT NULL, + g_descendentCount int(11) NOT NULL, + PRIMARY KEY(g_userId, g_itemId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('DescendentCountsMap', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_Entity( + g_id int(11) NOT NULL, + g_creationTimestamp int(11) NOT NULL, + g_isLinkable int(1) NOT NULL, + g_linkId int(11), + g_modificationTimestamp int(11) NOT NULL, + g_serialNumber int(11) NOT NULL, + g_entityType varchar(32) NOT NULL, + g_onLoadHandlers varchar(128), + PRIMARY KEY(g_id), + INDEX g2_Entity_76255(g_creationTimestamp), + INDEX g2_Entity_35978(g_isLinkable), + INDEX g2_Entity_44738(g_linkId), + INDEX g2_Entity_63025(g_modificationTimestamp), + INDEX g2_Entity_60702(g_serialNumber) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('Entity', 1, 2)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_FactoryMap( + g_classType varchar(128), + g_className varchar(128), + g_implId varchar(128), + g_implPath varchar(128), + g_implModuleId varchar(128), + g_hints varchar(255), + g_orderWeight varchar(255) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('FactoryMap', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_FileSystemEntity( + g_id int(11) NOT NULL, + g_pathComponent varchar(128), + PRIMARY KEY(g_id), + INDEX g2_FileSystemEntity_3406(g_pathComponent) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('FileSystemEntity', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_Group( + g_id int(11) NOT NULL, + g_groupType int(11) NOT NULL, + g_groupName varchar(128), + PRIMARY KEY(g_id), + UNIQUE (g_groupName) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('Group', 1, 1)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_Item( + g_id int(11) NOT NULL, + g_canContainChildren int(1) NOT NULL, + g_description text, + g_keywords varchar(255), + g_ownerId int(11) NOT NULL, + g_renderer varchar(128), + g_summary varchar(255), + g_title varchar(128), + g_viewedSinceTimestamp int(11) NOT NULL, + g_originationTimestamp int(11) NOT NULL, + PRIMARY KEY(g_id), + INDEX g2_Item_99070(g_keywords), + INDEX g2_Item_21573(g_ownerId), + INDEX g2_Item_54147(g_summary), + INDEX g2_Item_90059(g_title) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('Item', 1, 2)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_ItemAttributesMap( + g_itemId int(11) NOT NULL, + g_viewCount int(11), + g_orderWeight int(11), + g_parentSequence varchar(255) NOT NULL, + PRIMARY KEY(g_itemId), + INDEX g2_ItemAttributesMap_95270(g_parentSequence) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('ItemAttributesMap', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_MaintenanceMap( + g_runId int(11) NOT NULL, + g_taskId varchar(128) NOT NULL, + g_timestamp int(11), + g_success int(1), + g_details text, + PRIMARY KEY(g_runId), + INDEX g2_MaintenanceMap_21687(g_taskId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('MaintenanceMap', 1, 0)   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_MimeTypeMap( + g_extension varchar(32) NOT NULL, + g_mimeType varchar(32) NOT NULL, + g_viewable int(1), + PRIMARY KEY(g_extension) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('MimeTypeMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_MovieItem( + g_id int(11) NOT NULL, + g_width int(11), + g_height int(11), + g_duration int(11), + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('MovieItem', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_PermissionSetMap( + g_module varchar(128) NOT NULL, + g_permission varchar(128) NOT NULL, + g_description varchar(255), + g_bits int(11) NOT NULL, + g_flags int(11) NOT NULL, + UNIQUE (g_permission) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('PermissionSetMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_PhotoItem( + g_id int(11) NOT NULL, + g_width int(11), + g_height int(11), + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('PhotoItem', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_PluginMap( + g_pluginType varchar(32) NOT NULL, + g_pluginId varchar(32) NOT NULL, + g_active int(1) NOT NULL, + PRIMARY KEY(g_pluginType, g_pluginId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('PluginMap', 1, 1)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_PluginPackageMap( + g_pluginType varchar(32) NOT NULL, + g_pluginId varchar(32) NOT NULL, + g_packageName varchar(32) NOT NULL, + g_packageVersion varchar(32) NOT NULL, + g_packageBuild varchar(32) NOT NULL, + g_locked int(1) NOT NULL, + INDEX g2_PluginPackageMap_80596(g_pluginType) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('PluginPackageMap', 1, 1)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_PluginParameterMap( + g_pluginType varchar(32) NOT NULL, + g_pluginId varchar(32) NOT NULL, + g_itemId int(11) NOT NULL, + g_parameterName varchar(128) NOT NULL, + g_parameterValue text NOT NULL, + UNIQUE (g_pluginType, g_pluginId, g_itemId, g_parameterName), + INDEX g2_PluginParameterMap_80596(g_pluginType), + INDEX g2_PluginParameterMap_12808(g_pluginType, g_pluginId, g_itemId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('PluginParameterMap', 1, 3)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_RecoverPasswordMap( + g_userName varchar(32) NOT NULL, + g_authString varchar(32) NOT NULL, + g_requestExpires int(11) NOT NULL, + PRIMARY KEY(g_userName) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('RecoverPasswordMap', 1, 1)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_SessionMap( + g_id varchar(32) NOT NULL, + g_userId int(11) NOT NULL, + g_remoteIdentifier varchar(128) NOT NULL, + g_creationTimestamp int(11) NOT NULL, + g_modificationTimestamp int(11) NOT NULL, + g_data text, + PRIMARY KEY(g_id), + INDEX g2_SessionMap_53500(g_userId, g_creationTimestamp, g_modificationTimestamp) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('SessionMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_TkOperatnMap( + g_name varchar(128) NOT NULL, + g_parametersCrc varchar(32) NOT NULL, + g_outputMimeType varchar(128), + g_description varchar(255), + PRIMARY KEY(g_name) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('TkOperatnMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_TkOperatnMimeTypeMap( + g_operationName varchar(128) NOT NULL, + g_toolkitId varchar(128) NOT NULL, + g_mimeType varchar(128) NOT NULL, + g_priority int(11) NOT NULL, + INDEX g2_TkOperatnMimeTypeMap_2014(g_operationName), + INDEX g2_TkOperatnMimeTypeMap_79463(g_mimeType) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('TkOperatnMimeTypeMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_TkOperatnParameterMap( + g_operationName varchar(128) NOT NULL, + g_position int(11) NOT NULL, + g_type varchar(128) NOT NULL, + g_description varchar(255), + INDEX g2_TkOperatnParameterMap_2014(g_operationName) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('TkOperatnParameterMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_TkPropertyMap( + g_name varchar(128) NOT NULL, + g_type varchar(128) NOT NULL, + g_description varchar(128) NOT NULL +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('TkPropertyMap', 1, 0)   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_TkPropertyMimeTypeMap( + g_propertyName varchar(128) NOT NULL, + g_toolkitId varchar(128) NOT NULL, + g_mimeType varchar(128) NOT NULL, + INDEX g2_TkPropertyMimeTypeMap_52881(g_propertyName), + INDEX g2_TkPropertyMimeTypeMap_79463(g_mimeType) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('TkPropertyMimeTypeMap', 1, 0)   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_UnknownItem( + g_id int(11) NOT NULL, + PRIMARY KEY(g_id) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('UnknownItem', 1, 0)   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_User( + g_id int(11) NOT NULL, + g_userName varchar(32) NOT NULL, + g_fullName varchar(128), + g_hashedPassword varchar(128), + g_email varchar(255), + g_language varchar(128), + g_locked int(1) DEFAULT '0', + PRIMARY KEY(g_id), + UNIQUE (g_userName) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('User', 1, 2)   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_UserGroupMap( + g_userId int(11) NOT NULL, + g_groupId int(11) NOT NULL, + INDEX g2_UserGroupMap_69068(g_userId), + INDEX g2_UserGroupMap_89328(g_groupId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('UserGroupMap', 1, 0)   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): CREATE TABLE g2_Lock( + g_lockId int(11), + g_readEntityId int(11), + g_writeEntityId int(11), + g_freshUntil int(11), + g_request int(11), + INDEX g2_Lock_11039(g_lockId) +) ENGINE=InnoDB +/*!40100 DEFAULT CHARACTER SET utf8 */   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Schema ( + g_name, + g_major, + g_minor +) VALUES('Lock', 1, 0)   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Upgrade (or install) core module +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Entering CoreModuleExtras::upgrade +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\versions.dat) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Current version not set +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter permissions.directory for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Old version: 0 New version: 1.2.0.1 +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] The current version is 0 +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Install core module +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] realpath(T:\Web Abeto Armarios\Source\www\gallery2\modules\core\classes/../../..) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Binding text domain: modules_core -> T:\Web Abeto Armarios\Source\www\gallery2/modules/core/locale +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] [1182181410] can't guarantee 180 -- extending! +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Locktype database selected +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Set core module parameters +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter permissions.directory for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #196) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'permissions.directory','0755')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter permissions.directory for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter permissions.file for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'permissions.file','0644')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter permissions.file for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter exec.expectedStatus for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'exec.expectedStatus','0')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter exec.expectedStatus for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter exec.beNice for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'exec.beNice','0')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter exec.beNice for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter default.orderBy for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'default.orderBy','orderWeight')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter default.orderBy for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter default.orderDirection for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'default.orderDirection','1')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter default.orderDirection for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter default.theme for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'default.theme','matrix')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter default.theme for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter default.language for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'default.language','es_ES')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter default.language for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter language.useBrowserPref for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'language.useBrowserPref','0')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter language.useBrowserPref for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter default.newAlbumsUseDefaults for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'default.newAlbumsUseDefaults','false')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter default.newAlbumsUseDefaults for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter session.lifetime for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'session.lifetime','1814400')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter session.lifetime for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter session.inactivityTimeout for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'session.inactivityTimeout','604800')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter session.inactivityTimeout for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter misc.markup for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'misc.markup','bbcode')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter misc.markup for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter lock.system for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'lock.system','database')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter lock.system for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter format.date for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'format.date','%x')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter format.date for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter format.time for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'format.time','%X')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter format.time for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter format.datetime for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'format.datetime','%c')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter format.datetime for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter repository.updateTime for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'repository.updateTime','0')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter repository.updateTime for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter acceleration for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'acceleration','a:2:{s:5:\"guest\";a:1:{s:4:\"type\";s:4:\"none\";}s:4:\"user\";a:1:{s:4:\"type\";s:4:\"none\";}}')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter acceleration for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter validation.level for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'validation.level','MEDIUM')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter validation.level for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter core.repositories for core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'core.repositories','a:1:{s:8:\"released\";i:1;}')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter core.repositories for core plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Load default theme +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'theme' +   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/themes/) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/ajaxian) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/ajaxian/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ajaxian plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'ajaxian' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ajaxian plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ajaxian plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for ajaxian plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/carbon) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/carbon/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for carbon plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'carbon' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for carbon plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for carbon plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for carbon plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/classic) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/classic/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for classic plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'classic' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for classic plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for classic plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for classic plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/floatrix) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/floatrix/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for floatrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'floatrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for floatrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for floatrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for floatrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/hybrid) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/hybrid/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for hybrid plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'hybrid' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for hybrid plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for hybrid plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for hybrid plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/matrix) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/matrix/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/siriux) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/siriux/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for siriux plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'siriux' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for siriux plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for siriux plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for siriux plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/themes/slider) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/slider/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slider plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'slider' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slider plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slider plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredThemeApi for slider plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #452) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Using matrix as default theme +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin matrix +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/themes/matrix/theme.inc) +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] matrix plugin successfully instantiated +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Check the version of the matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] The version of the matrix plugin is ok +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] InstallOrUpgrade default theme +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryTheme::installOrUpgrade matrix theme +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryTheme::installOrUpgrade compare versions +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Old version: New version: 1.1.4 +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryTheme::installOrUpgrade set new theme version etc. +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _version for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'_version','1.1.4')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _version for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredCoreApi for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'_requiredCoreApi','7,10')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredCoreApi for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredThemeApi for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'_requiredThemeApi','2,4')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredThemeApi for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Reactivate matrix theme +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate matrix plugin, plugin is not active, nothing to do +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryTheme::installOrUpgrade finished successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Activate default theme +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginMap (g_pluginType, g_pluginId, g_active) VALUES ('theme','matrix',1)   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate matrix plugin successfully activated +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin core +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] core plugin successfully instantiated +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Check the version of the core plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] The version of the core plugin is ok +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_classType, g_className, g_implId, g_implPath, g_hints, g_implModuleId, g_orderWeight FROM g2_FactoryMap ORDER BY g_orderWeight ASC   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Unimplemented: ImageFrameInterface_1_1 +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_classType, g_className, g_implId, g_implPath, g_hints, g_implModuleId, g_orderWeight FROM g2_FactoryMap ORDER BY g_orderWeight ASC   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Unimplemented: ColorPackInterface_1_0 +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter rows for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'rows','3')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter rows for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter columns for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'columns','3')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter columns for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter showImageOwner for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'showImageOwner','0')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter showImageOwner for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter showAlbumOwner for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'showAlbumOwner','1')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter showAlbumOwner for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter showMicroThumbs for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'showMicroThumbs','0')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter showMicroThumbs for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter sidebarBlocks for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'sidebarBlocks','a:4:{i:0;a:2:{i:0;s:18:\"search.SearchBlock\";i:1;a:1:{s:16:\"showAdvancedLink\";b:1;}}i:1;a:2:{i:0;s:14:\"core.ItemLinks\";i:1;a:1:{s:11:\"useDropdown\";b:0;}}i:2;a:2:{i:0;s:13:\"core.PeerList\";i:1;a:0:{}}i:3;a:2:{i:0;s:21:\"imageblock.ImageBlock\";i:1;a:0:{}}}')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter sidebarBlocks for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter albumBlocks for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'albumBlocks','a:1:{i:0;a:2:{i:0;s:20:\"comment.ViewComments\";i:1;a:0:{}}}')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter albumBlocks for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter photoBlocks for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'photoBlocks','a:2:{i:0;a:2:{i:0;s:13:\"exif.ExifInfo\";i:1;a:0:{}}i:1;a:2:{i:0;s:20:\"comment.ViewComments\";i:1;a:0:{}}}')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter photoBlocks for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter dynamicLinks for matrix plugin +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'theme' + AND + g2_PluginParameterMap.g_pluginId = 'matrix' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('theme','matrix',0,'dynamicLinks','browse')   +
+ +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter dynamicLinks for matrix plugin set successfully +2007-06-18 17:43:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Register core module permissions +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_module, g_permission, g_description, g_bits, g_flags FROM g2_PermissionSetMap   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.all','All access',2147483647,3)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.view','[core] View item',1,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.viewResizes','[core] View resized version(s)',2,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.viewSource','[core] View original version',4,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.viewAll','[core] View all versions',7,2)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.addAlbumItem','[core] Add sub-album',8,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.addDataItem','[core] Add sub-item',16,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.edit','[core] Edit item',32,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.changePermissions','[core] Change item permissions',64,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PermissionSetMap (g_module, g_permission, g_description, g_bits, g_flags) VALUES ('core','core.delete','[core] Delete item',128,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] [1182181411] can't guarantee 180 -- extending! +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createAccessListCompacterLock +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.accessListCompacterLock for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET NAMES "utf8"   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter lock.system for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (1,1182181411,0,1182181411,1,'GalleryEntity')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter id.accessListCompacterLock for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'id.accessListCompacterLock','1')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter id.accessListCompacterLock for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createAllUsersGroup +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.allUserGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_Group.g_id + FROM + g2_Group + WHERE + g2_Group.g_groupName = 'Usuarios Registrados' + LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Group (g_groupType, g_groupName, g_id) VALUES (2,'Usuarios Registrados',2)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (2,1182181411,0,1182181411,1,'GalleryGroup')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter id.allUserGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'id.allUserGroup','2')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter id.allUserGroup for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createSiteAdminsGroup +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.adminGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_Group.g_id + FROM + g2_Group + WHERE + g2_Group.g_groupName = 'Administradores del Sitio' + LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Group (g_groupType, g_groupName, g_id) VALUES (3,'Administradores del Sitio',3)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (3,1182181411,0,1182181411,1,'GalleryGroup')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter id.adminGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'id.adminGroup','3')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter id.adminGroup for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createEverybodyGroup +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.everybodyGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_Group.g_id + FROM + g2_Group + WHERE + g2_Group.g_groupName = 'Todos' + LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Group (g_groupType, g_groupName, g_id) VALUES (4,'Todos',4)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (4,1182181411,0,1182181411,1,'GalleryGroup')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter id.everybodyGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'id.everybodyGroup','4')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter id.everybodyGroup for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createAnonymousUser +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.anonymousUser for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_User.g_id + FROM + g2_User + WHERE + g2_User.g_userName = 'guest' + LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_User (g_userName, g_fullName, g_hashedPassword, g_id) VALUES ('guest','Invitado','TSk71c3cfc0a4cdc50ee53fdf44a74a2d0d2',5)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (5,1182181411,0,1182181411,1,'GalleryUser')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.allUserGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_userId FROM g2_UserGroupMap WHERE g_userId=5 AND g_groupId=2 LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_UserGroupMap (g_userId, g_groupId) VALUES (5,2)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.everybodyGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_userId FROM g2_UserGroupMap WHERE g_userId=5 AND g_groupId=4 LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_UserGroupMap (g_userId, g_groupId) VALUES (5,4)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.allUserGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_UserGroupMap WHERE g_userId=5 AND g_groupId=2   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter id.anonymousUser for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'id.anonymousUser','5')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter id.anonymousUser for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createAdminUser +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.adminGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_UserGroupMap.g_userId, + g2_User.g_userName + FROM + g2_UserGroupMap, g2_User + WHERE + g2_UserGroupMap.g_groupId = 3 + AND + g2_UserGroupMap.g_userId = g2_User.g_id + + ORDER BY + g2_User.g_userName + LIMIT 2147483647   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_User.g_id + FROM + g2_User + WHERE + g2_User.g_userName = 'administrador' + LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_User (g_userName, g_fullName, g_hashedPassword, g_email, g_id) VALUES ('administrador','Administrador de Gallery','aG8e0ca97111a397aa74aea4cd16e67c9f41','',6)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (6,1182181411,0,1182181411,1,'GalleryUser')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.allUserGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_userId FROM g2_UserGroupMap WHERE g_userId=6 AND g_groupId=2 LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_UserGroupMap (g_userId, g_groupId) VALUES (6,2)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.everybodyGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_userId FROM g2_UserGroupMap WHERE g_userId=6 AND g_groupId=4 LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_UserGroupMap (g_userId, g_groupId) VALUES (6,4)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_userId FROM g2_UserGroupMap WHERE g_userId=6 AND g_groupId=3 LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_UserGroupMap (g_userId, g_groupId) VALUES (6,3)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Call user func _createRootAlbumItem +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.rootAlbum for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.rootAlbum for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_DerivativePrefsMap (g_itemId, g_order, g_derivativeType, g_derivativeOperations) VALUES (7,0,1,'thumbnail|150')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_DerivativePrefsMap (g_itemId, g_order, g_derivativeType, g_derivativeOperations) VALUES (7,0,2,'scale|640')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_AccessSubscriberMap (g_itemId, g_accessListId) VALUES (7,0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_AlbumItem (g_theme, g_orderBy, g_orderDirection, g_id) VALUES ('','','asc',7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Item (g_canContainChildren, g_description, g_ownerId, g_title, g_viewedSinceTimestamp, g_originationTimestamp, g_id) VALUES (1,'Esta es la página principal de tu Galería',6,'Galería',1182181411,1182181411,7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FileSystemEntity (g_id) VALUES (7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_ChildEntity (g_parentId, g_id) VALUES (0,7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Entity (g_id, g_creationTimestamp, g_isLinkable, g_modificationTimestamp, g_serialNumber, g_entityType) VALUES (7,1182181411,0,1182181411,1,'GalleryAlbumItem')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_ItemAttributesMap (g_itemId, g_viewCount, g_orderWeight, g_parentSequence) VALUES (7,0,0,'')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.everybodyGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.accessListCompacterLock for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceLock set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Lock (g_lockId, g_request, g_freshUntil) VALUES(1, 1, 1182181441)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_lockId FROM g2_Lock WHERE g_request=1 ORDER BY g_lockId ASC LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT COUNT(*) FROM g2_Lock WHERE g_writeEntityId IN (1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Lock (g_lockId, g_readEntityId, g_freshUntil) VALUES (1, 1, 1182181441)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_Lock WHERE g_lockId=1 AND g_request=1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_accessListId, g_itemId FROM g2_AccessSubscriberMap WHERE g_itemId=7   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_AccessMap.g_permission + FROM + g2_AccessMap, g2_AccessSubscriberMap + WHERE + g2_AccessSubscriberMap.g_itemId = 7 + AND + g2_AccessSubscriberMap.g_accessListId = g2_AccessMap.g_accessListId + AND + g2_AccessMap.g_userOrGroupId = 4 +   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_AccessMap (g_accessListId, g_userOrGroupId, g_permission) VALUES (8,4,7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_AccessSubscriberMap SET g_accessListId=8 WHERE g_itemId IN (7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_id, g_entityType FROM g2_Entity WHERE g_id IN (4)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g2_Group.g_groupType, g2_Group.g_groupName, g2_Entity.g_id, g2_Entity.g_creationTimestamp, g2_Entity.g_isLinkable, g2_Entity.g_linkId, g2_Entity.g_modificationTimestamp, g2_Entity.g_serialNumber, g2_Entity.g_entityType, g2_Entity.g_onLoadHandlers FROM g2_Group, g2_Entity WHERE g2_Group.g_id IN (4) AND g2_Entity.g_id=g2_Group.g_id   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.adminGroup for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.accessListCompacterLock for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceLock set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Lock (g_lockId, g_request, g_freshUntil) VALUES(2, 1, 1182181441)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_lockId FROM g2_Lock WHERE g_request=1 ORDER BY g_lockId ASC LIMIT 1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT COUNT(*) FROM g2_Lock WHERE g_writeEntityId IN (1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_Lock (g_lockId, g_readEntityId, g_freshUntil) VALUES (2, 1, 1182181441)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_Lock WHERE g_lockId=2 AND g_request=1   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_accessListId, g_itemId FROM g2_AccessSubscriberMap WHERE g_itemId=7   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_AccessMap.g_permission + FROM + g2_AccessMap, g2_AccessSubscriberMap + WHERE + g2_AccessSubscriberMap.g_itemId = 7 + AND + g2_AccessSubscriberMap.g_accessListId = g2_AccessMap.g_accessListId + AND + g2_AccessMap.g_userOrGroupId = 3 +   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): update g2_SequenceId set id=LAST_INSERT_ID(id+1);   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_userOrGroupId, g_permission FROM g2_AccessMap WHERE g_accessListId=8   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_AccessMap (g_accessListId, g_userOrGroupId, g_permission) VALUES (9,4,7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_AccessMap (g_accessListId, g_userOrGroupId, g_permission) VALUES (9,3,2147483647)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_AccessSubscriberMap SET g_accessListId=9 WHERE g_itemId IN (7)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_id, g_entityType FROM g2_Entity WHERE g_id IN (3)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g2_Group.g_groupType, g2_Group.g_groupName, g2_Entity.g_id, g2_Entity.g_creationTimestamp, g2_Entity.g_isLinkable, g2_Entity.g_linkId, g2_Entity.g_modificationTimestamp, g2_Entity.g_serialNumber, g2_Entity.g_entityType, g2_Entity.g_onLoadHandlers FROM g2_Group, g2_Entity WHERE g2_Group.g_id IN (3) AND g2_Entity.g_id=g2_Group.g_id   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_UserGroupMap.g_userId, + g2_User.g_userName + FROM + g2_UserGroupMap, g2_User + WHERE + g2_UserGroupMap.g_groupId = 3 + AND + g2_UserGroupMap.g_userId = g2_User.g_id + + ORDER BY + g2_User.g_userName + LIMIT 2147483647   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter id.rootAlbum for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'id.rootAlbum','7')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter id.rootAlbum for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Initialize MIME types +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_MimeTypeMap   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('z','application/x-compress',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ai','application/postscript',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('aif','audio/x-aiff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('aifc','audio/x-aiff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('aiff','audio/x-aiff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('asc','text/plain',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('au','audio/basic',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('avi','video/x-msvideo',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('bcpio','application/x-bcpio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('bin','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('bmp','image/bmp',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('cdf','application/x-netcdf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('class','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('cpio','application/x-cpio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('cpt','application/mac-compactpro',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('csh','application/x-csh',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('css','text/css',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('dcr','application/x-director',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('dir','application/x-director',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('djv','image/vnd.djvu',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('djvu','image/vnd.djvu',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('dll','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('dms','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('doc','application/msword',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('dvi','application/x-dvi',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('dxr','application/x-director',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('eps','application/postscript',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('etx','text/x-setext',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('exe','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ez','application/andrew-inset',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('gif','image/gif',1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('gtar','application/x-gtar',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('gz','application/x-gzip',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('hdf','application/x-hdf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('hqx','application/mac-binhex40',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ice','x-conference/x-cooltalk',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ief','image/ief',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('iges','model/iges',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('igs','model/iges',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpg','image/jpeg',1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpeg','image/jpeg',1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpe','image/jpeg',1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('js','application/x-javascript',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('kar','audio/midi',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('latex','application/x-latex',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('lha','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('lzh','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('m3u','audio/x-mpegurl',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('man','application/x-troff-man',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('me','application/x-troff-me',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mesh','model/mesh',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mid','audio/midi',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('midi','audio/midi',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mif','application/vnd.mif',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mov','video/quicktime',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('movie','video/x-sgi-movie',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mp2','audio/mpeg',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mp3','audio/mpeg',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mpe','video/mpeg',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mpeg','video/mpeg',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mpg','video/mpeg',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mpga','audio/mpeg',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ms','application/x-troff-ms',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('msh','model/mesh',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mxu','video/vnd.mpegurl',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('nc','application/x-netcdf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('oda','application/oda',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pbm','image/x-portable-bitmap',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pdb','chemical/x-pdb',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pdf','application/pdf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pgm','image/x-portable-graymap',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pgn','application/x-chess-pgn',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('png','image/png',1)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pnm','image/x-portable-anymap',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ppm','image/x-portable-pixmap',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ppt','application/vnd.ms-powerpoint',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ps','application/postscript',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('qt','video/quicktime',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ra','audio/x-realaudio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ram','audio/x-pn-realaudio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ras','image/x-cmu-raster',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('rgb','image/x-rgb',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('rm','audio/x-pn-realaudio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('roff','application/x-troff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('rpm','audio/x-pn-realaudio-plugin',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('rtf','text/rtf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('rtx','text/richtext',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('sgm','text/sgml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('sgml','text/sgml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('sh','application/x-sh',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('shar','application/x-shar',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('silo','model/mesh',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('sit','application/x-stuffit',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('skd','application/x-koan',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('skm','application/x-koan',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('skp','application/x-koan',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('skt','application/x-koan',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('smi','application/smil',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('smil','application/smil',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('snd','audio/basic',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('so','application/octet-stream',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('spl','application/x-futuresplash',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('src','application/x-wais-source',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('sv4cpio','application/x-sv4cpio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('sv4crc','application/x-sv4crc',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('svg','image/svg+xml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('swf','application/x-shockwave-flash',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('t','application/x-troff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tar','application/x-tar',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tcl','application/x-tcl',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tex','application/x-tex',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('texi','application/x-texinfo',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('texinfo','application/x-texinfo',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tif','image/tiff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tiff','image/tiff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tr','application/x-troff',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tsv','text/tab-separated-values',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('txt','text/plain',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('ustar','application/x-ustar',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('vcd','application/x-cdlink',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('vrml','model/vrml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('vsd','application/vnd.visio',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wav','audio/x-wav',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wbmp','image/vnd.wap.wbmp',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wbxml','application/vnd.wap.wbxml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wml','text/vnd.wap.wml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wmlc','application/vnd.wap.wmlc',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wmls','text/vnd.wap.wmlscript',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wmlsc','application/vnd.wap.wmlscriptc',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wrl','model/vrml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('xbm','image/x-xbitmap',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('xls','application/vnd.ms-excel',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('xpm','image/x-xpixmap',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('xsl','text/xml',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('xwd','image/x-xwindowdump',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('xyz','chemical/x-xyz',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('zip','application/zip',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('asf','video/x-ms-asf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('asx','video/x-ms-asx',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wmv','video/x-ms-wmv',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wma','audio/x-ms-wma',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jp2','image/jp2',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpg2','image/jp2',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpf','image/jpx',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpx','image/jpx',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mj2','video/mj2',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mjp2','video/mj2',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpm','image/jpm',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpgm','image/jpgm',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('psd','application/photoshop',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('pcd','image/x-photo-cd',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('jpgcmyk','image/jpeg-cmyk',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tifcmyk','image/tiff-cmyk',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('wmf','image/wmf',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('tga','image/tga',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('flv','video/x-flv',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_MimeTypeMap (g_extension, g_mimeType, g_viewable) VALUES ('mp4','video/mp4',0)   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] CoreModulesExtra::upgrade: successfully installed core +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Write new version to versions file +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] fopen(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\versions.dat, wb, 0) +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] fwrite(Resource id #982, ..., ) +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] fclose(Resource id #982) +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Update module paramater for the core module +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _version for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'_version','1.2.0.1')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _version for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _callbacks for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'_callbacks','registerEventListeners|getItemLinks|getSystemLinks|getSiteAdminViews|getUserAdminViews|getItemAdminViews')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _callbacks for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredCoreApi for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'_requiredCoreApi','7,18')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredCoreApi for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredModuleApi for core plugin +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_PluginParameterMap (g_pluginType, g_pluginId, g_itemId, g_parameterName, g_parameterValue) VALUES ('module','core',0,'_requiredModuleApi','3,4')   +
+ +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredModuleApi for core plugin set successfully +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] ConfigureStoreCleanup for core module +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-18 17:43:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Reactivate core module +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin, deactivate +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=0 WHERE g_pluginType='module' AND g_pluginId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_implId FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin, activate again +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryEntity.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryEntity','GalleryEntity','modules/core/classes/GalleryEntity.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryChildEntity.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryChildEntity','GalleryChildEntity','modules/core/classes/GalleryChildEntity.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAlbumItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAlbumItem','GalleryAlbumItem','modules/core/classes/GalleryAlbumItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUser.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUser','GalleryUser','modules/core/classes/GalleryUser.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryGroup.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryGroup','GalleryGroup','modules/core/classes/GalleryGroup.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivative.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivative','GalleryDerivative','modules/core/classes/GalleryDerivative.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDerivative','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','a:2:{i:0;s:7:\"image/*\";i:1;s:21:\"application/photoshop\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','a:1:{i:0;s:7:\"video/*\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','a:2:{i:0;s:22:\"application/x-director\";i:1;s:29:\"application/x-shockwave-flash\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDynamicAlbum.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDynamicAlbum','GalleryDynamicAlbum','GalleryDynamicAlbum','modules/core/classes/GalleryDynamicAlbum.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryCoreSearch.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GallerySearchInterface_1_0','GalleryCoreSearch','GalleryCoreSearch','modules/core/classes/GalleryCoreSearch.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditItem.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditItem','ItemEditItem','modules/core/ItemEditItem.inc','core','N;','1')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAnimation.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAnimation','ItemEditAnimation','modules/core/ItemEditAnimation.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditMovie.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditMovie','ItemEditMovie','modules/core/ItemEditMovie.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAlbum.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAlbum','ItemEditAlbum','modules/core/ItemEditAlbum.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditTheme.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditTheme','ItemEditTheme','modules/core/ItemEditTheme.inc','core','N;','3')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhoto.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhoto','ItemEditPhoto','modules/core/ItemEditPhoto.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditRotateAndScalePhoto.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditRotateAndScalePhoto','ItemEditRotateAndScalePhoto','modules/core/ItemEditRotateAndScalePhoto.inc','core','N;','3')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhotoThumbnail.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhotoThumbnail','ItemEditPhotoThumbnail','modules/core/ItemEditPhotoThumbnail.inc','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemAddFromBrowser.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddPlugin','ItemAddFromBrowser','ItemAddFromBrowser','modules/core/ItemAddFromBrowser.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/CreateThumbnailOption.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddOption','CreateThumbnailOption','CreateThumbnailOption','modules/core/CreateThumbnailOption.inc','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/OptimizeDatabaseTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','OptimizeDatabaseTask','OptimizeDatabaseTask','modules/core/classes/OptimizeDatabaseTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushTemplatesTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushTemplatesTask','FlushTemplatesTask','modules/core/classes/FlushTemplatesTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushDatabaseCacheTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushDatabaseCacheTask','FlushDatabaseCacheTask','modules/core/classes/FlushDatabaseCacheTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/BuildDerivativesTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','BuildDerivativesTask','BuildDerivativesTask','modules/core/classes/BuildDerivativesTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ResetViewCountsTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ResetViewCountsTask','ResetViewCountsTask','modules/core/classes/ResetViewCountsTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SystemInfoTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SystemInfoTask','SystemInfoTask','modules/core/classes/SystemInfoTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SetOriginationTimestampTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SetOriginationTimestampTask','SetOriginationTimestampTask','modules/core/classes/SetOriginationTimestampTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/DeleteSessionsTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','DeleteSessionsTask','DeleteSessionsTask','modules/core/classes/DeleteSessionsTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ConvertDatabaseToUtf8Task','ConvertDatabaseToUtf8Task','modules/core/classes/ConvertDatabaseToUtf8Task.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/CoreCaptchaAdminOption.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('CaptchaAdminOption','CoreCaptchaAdminOption','CoreCaptchaAdminOption','modules/core/classes/CoreCaptchaAdminOption.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GallerySession.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryAuthPlugin','SessionAuthPlugin','SessionAuthPlugin','modules/core/classes/GallerySession.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #1107) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=1 WHERE g_pluginType='module' AND g_pluginId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin successfully activated +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin, successfully reactivated +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Successfully finished installOrUpgrade core module +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Core module installed successfully +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] [1182181412] can't guarantee 180 -- extending! +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Activate core module +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryEntity.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryEntity','GalleryEntity','modules/core/classes/GalleryEntity.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryChildEntity.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryChildEntity','GalleryChildEntity','modules/core/classes/GalleryChildEntity.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAlbumItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAlbumItem','GalleryAlbumItem','modules/core/classes/GalleryAlbumItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUser.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUser','GalleryUser','modules/core/classes/GalleryUser.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryGroup.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryGroup','GalleryGroup','modules/core/classes/GalleryGroup.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivative.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivative','GalleryDerivative','modules/core/classes/GalleryDerivative.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDerivative','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','a:2:{i:0;s:7:\"image/*\";i:1;s:21:\"application/photoshop\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','a:1:{i:0;s:7:\"video/*\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','a:2:{i:0;s:22:\"application/x-director\";i:1;s:29:\"application/x-shockwave-flash\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDynamicAlbum.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDynamicAlbum','GalleryDynamicAlbum','GalleryDynamicAlbum','modules/core/classes/GalleryDynamicAlbum.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryCoreSearch.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GallerySearchInterface_1_0','GalleryCoreSearch','GalleryCoreSearch','modules/core/classes/GalleryCoreSearch.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditItem.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditItem','ItemEditItem','modules/core/ItemEditItem.inc','core','N;','1')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAnimation.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAnimation','ItemEditAnimation','modules/core/ItemEditAnimation.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditMovie.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditMovie','ItemEditMovie','modules/core/ItemEditMovie.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAlbum.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAlbum','ItemEditAlbum','modules/core/ItemEditAlbum.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditTheme.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditTheme','ItemEditTheme','modules/core/ItemEditTheme.inc','core','N;','3')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhoto.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhoto','ItemEditPhoto','modules/core/ItemEditPhoto.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditRotateAndScalePhoto.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditRotateAndScalePhoto','ItemEditRotateAndScalePhoto','modules/core/ItemEditRotateAndScalePhoto.inc','core','N;','3')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhotoThumbnail.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhotoThumbnail','ItemEditPhotoThumbnail','modules/core/ItemEditPhotoThumbnail.inc','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemAddFromBrowser.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddPlugin','ItemAddFromBrowser','ItemAddFromBrowser','modules/core/ItemAddFromBrowser.inc','core','N;','2')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/CreateThumbnailOption.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddOption','CreateThumbnailOption','CreateThumbnailOption','modules/core/CreateThumbnailOption.inc','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/OptimizeDatabaseTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','OptimizeDatabaseTask','OptimizeDatabaseTask','modules/core/classes/OptimizeDatabaseTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushTemplatesTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushTemplatesTask','FlushTemplatesTask','modules/core/classes/FlushTemplatesTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushDatabaseCacheTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushDatabaseCacheTask','FlushDatabaseCacheTask','modules/core/classes/FlushDatabaseCacheTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/BuildDerivativesTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','BuildDerivativesTask','BuildDerivativesTask','modules/core/classes/BuildDerivativesTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ResetViewCountsTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ResetViewCountsTask','ResetViewCountsTask','modules/core/classes/ResetViewCountsTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SystemInfoTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SystemInfoTask','SystemInfoTask','modules/core/classes/SystemInfoTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SetOriginationTimestampTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SetOriginationTimestampTask','SetOriginationTimestampTask','modules/core/classes/SetOriginationTimestampTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/DeleteSessionsTask.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','DeleteSessionsTask','DeleteSessionsTask','modules/core/classes/DeleteSessionsTask.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ConvertDatabaseToUtf8Task','ConvertDatabaseToUtf8Task','modules/core/classes/ConvertDatabaseToUtf8Task.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/CoreCaptchaAdminOption.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('CaptchaAdminOption','CoreCaptchaAdminOption','CoreCaptchaAdminOption','modules/core/classes/CoreCaptchaAdminOption.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GallerySession.class) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryAuthPlugin','SessionAuthPlugin','SessionAuthPlugin','modules/core/classes/GallerySession.class','core','N;','4')   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #1317) +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=1 WHERE g_pluginType='module' AND g_pluginId='core'   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin successfully activated +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Core module activated successfully +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Commit transaction +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_Lock WHERE g_lockId IN (1,2)   +
+ +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Committed transaction successfully +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Finish install core module step +2007-06-18 17:43:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Install core module step completed successfully diff --git a/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/ffmpeg/filmreel.png b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/ffmpeg/filmreel.png new file mode 100644 index 0000000..0a6038a Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/ffmpeg/filmreel.png differ diff --git a/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/linkitem/arrow.png b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/linkitem/arrow.png new file mode 100644 index 0000000..59dcf19 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/linkitem/arrow.png differ diff --git a/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/thumbnail/G2audio.jpg b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/thumbnail/G2audio.jpg new file mode 100644 index 0000000..a3b93f7 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/thumbnail/G2audio.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/thumbnail/G2video.jpg b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/thumbnail/G2video.jpg new file mode 100644 index 0000000..4cd04d5 Binary files /dev/null and b/Source/gallery2/g2data_2e6106f57b/plugins_data/modules/thumbnail/G2video.jpg differ diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2233979325/%%7A^7A1^7A132343%%DownloadRegistryFile.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2233979325/%%7A^7A1^7A132343%%DownloadRegistryFile.tpl.php new file mode 100644 index 0000000..fe2c4f2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2233979325/%%7A^7A1^7A132343%%DownloadRegistryFile.tpl.php @@ -0,0 +1,18 @@ + +Windows Registry Editor Version 5.00 +_tpl_vars['DownloadRegistryFile']['vistaVersion']): ?> +[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\PublishingWizard\InternetPhotoPrinting\Providers\_tpl_vars['DownloadRegistryFile']['domain']; ?> +] + +[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\PublishingWizard\PublishingWizard\Providers\_tpl_vars['DownloadRegistryFile']['domain']; ?> +] + +"displayname"="_reg_objects['g'][0]->text(array('text' => "%s at %s",'arg1' => $this->_tpl_vars['DownloadRegistryFile']['title'],'arg2' => $this->_tpl_vars['DownloadRegistryFile']['domain']), $this);?> +" +"description"="_reg_objects['g'][0]->text(array('text' => "Publish Your Photos and Movies to %s",'arg1' => $this->_tpl_vars['DownloadRegistryFile']['title']), $this);?> +" +"href"="_reg_objects['g'][0]->url(array('arg1' => "view=publishxp.PublishXpLogin",'forceFullUrl' => 1,'htmlEntities' => 0), $this);?> +" +"icon"="_reg_objects['g'][0]->url(array('href' => "favicon.ico",'forceFullUrl' => 1,'htmlEntities' => 0), $this);?> +" \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2233979325/v_12 b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2233979325/v_12 new file mode 100644 index 0000000..e69de29 diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%08^087^087DA4DD%%AdminRewrite.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%08^087^087DA4DD%%AdminRewrite.tpl.php new file mode 100644 index 0000000..66c8a6f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%08^087^087DA4DD%%AdminRewrite.tpl.php @@ -0,0 +1,306 @@ + + array(array('function', 'cycle', 'gallery:modules/rewrite/templates/AdminRewrite.tpl', 98, false),array('function', 'counter', 'gallery:modules/rewrite/templates/AdminRewrite.tpl', 198, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'URL Rewrite Administration'), $this);?> +

+
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['saved'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Successfully saved settings'), $this);?> + + +

+_tpl_vars['form']['error'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'An error occured while trying to save your settings'), $this);?> +

+
+_tpl_vars['AdminRewrite']['errors'] )): $_from = $this->_tpl_vars['AdminRewrite']['errors']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['errstr']): + echo $this->_tpl_vars['errstr']; ?> +
+_tpl_vars['form']['error']['dupe'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Duplicate URL patterns."), $this);?> + +_tpl_vars['form']['error']['empty'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Empty URL pattern."), $this);?> + + +
+
+ +
+_tpl_vars['AdminRewrite']['mode'] == 'rules' )): ?> + +_reg_objects['g'][0]->text(array('text' => 'Rules'), $this);?> + + + + + "subView=rewrite.AdminRewrite",'arg3' => "mode=rules"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Rules'), $this);?> + + +_tpl_vars['AdminRewrite']['mode'] == 'setup' )): ?> + +_reg_objects['g'][0]->text(array('text' => 'Setup'), $this);?> + + + + + "subView=rewrite.AdminRewrite",'arg3' => "mode=setup"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Setup'), $this);?> + + +_tpl_vars['AdminRewrite']['mode'] == 'test' )): ?> + +_reg_objects['g'][0]->text(array('text' => 'Test'), $this);?> + + + + + "subView=rewrite.AdminRewrite",'arg3' => "mode=test"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Test'), $this);?> + + + +
+_tpl_vars['AdminRewrite']['mode'] == 'rules'): ?> +
+

+_reg_objects['g'][0]->text(array('text' => "Short URLs are compiled out of predefined keywords. Modules may provide additional keywords. Keywords are escaped with % (eg: %itemId%)."), $this);?> + +

+_tpl_vars['AdminRewrite']['parserId'] == 'pathinfo'): ?> +

+_reg_objects['g'][0]->text(array('text' => "It is recomended that you don't activate the 'Download Item' URL since it will slow down Gallery."), $this);?> + +

+_tpl_vars['AdminRewrite']['parserId'] == 'isapirewrite'): ?> +

+_reg_objects['g'][0]->text(array('text' => "A pattern may not begin with a keyword."), $this);?> + +

+ + +assign('group', ""); $_from = $this->_tpl_vars['form']['rules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['moduleId'] => $this->_tpl_vars['rules']): + if (! empty ( $this->_tpl_vars['group'] )): ?> + +assign('group', $this->_tpl_vars['moduleId']); ?> + + + + + + + + +_tpl_vars['rules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['ruleId'] => $this->_tpl_vars['rule']): + echo smarty_function_cycle(array('values' => "gbEven,gbOdd",'assign' => 'rowClass'), $this);?> + + + + + + + + + + + + + +
 

_tpl_vars['AdminRewrite']['modules'][$this->_tpl_vars['moduleId']]; ?> +

_reg_objects['g'][0]->text(array('text' => 'Active'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Help'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'View'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'URL Pattern'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Additional Keywords'), $this);?> +
+assign('match', $this->_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['match']); if (isset ( $this->_tpl_vars['form']['error']['conditions']['dupe'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['pattern']['dupe'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['pattern']['empty'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['1'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['3'][$this->_tpl_vars['match']] ) || isset ( $this->_tpl_vars['form']['error']['4'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] )): ?> +
+">
+_tpl_vars['rule']['active'] )): ?> +
+">
+ +
+">
+ +
+_tpl_vars['moduleId'])."][".($this->_tpl_vars['ruleId'])."][active]"), $this);?> +" _tpl_vars['rule']['active'] )): ?>checked="checked"/> + ++ + +_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['comment']; ?> + + +_tpl_vars['rule']['pattern'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'No URL Pattern'), $this);?> + +_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['locked'] )): ?> +_tpl_vars['moduleId'])."][".($this->_tpl_vars['ruleId'])."][pattern]"), $this);?> +" value="_tpl_vars['rule']['pattern']; ?> +"/> + + +_tpl_vars['moduleId'])."][".($this->_tpl_vars['ruleId'])."][pattern]"), $this);?> +" value="_tpl_vars['rule']['pattern']; ?> +"/> + + +_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['keywords']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['keyword'] => $this->_tpl_vars['tmp']): +?> +%_tpl_vars['keyword']; ?> +% + +
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['AdminRewrite']['mode'] == 'setup'): if ($this->_tpl_vars['AdminRewrite']['parserType'] == 'preGallery'): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Approved referers'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Some rules only apply if the referer (the site that linked to the item) is something other than Gallery itself. Hosts in the list below will be treated as friendly referers."), $this);?> +
+

+

+_reg_objects['g'][0]->text(array('text' => "Warning: If you don't allow empty referer users won't be able to download nor play movies."), $this);?> + +

+

+ +" _tpl_vars['form']['allowEmptyReferer'] )): ?>checked="checked"/> +_reg_objects['g'][0]->text(array('text' => "Allow empty referer?"), $this);?> + +

+ + + 0,'assign' => 'i'), $this);?> + +_tpl_vars['form']['accessList']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['host']): +?> + + + false), $this);?> + + + + + + + + +
+" size="60" value="_tpl_vars['AdminRewrite']['serverName']; ?> +" disabled="disabled"/>
_tpl_vars['i'])."]"), $this);?> +" size="60" value="_tpl_vars['host']; ?> +"/>
_tpl_vars['i'])."]"), $this);?> +" size="60"/>
_tpl_vars['i']+1)."]"), $this);?> +" size="60"/>
_tpl_vars['i']+2)."]"), $this);?> +" size="60"/>
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Approved referers'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "The parser you have selected does not support a referer check."), $this);?> +
+

+
+_tpl_vars['AdminParser']['template'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['AdminParser']['template']), 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['AdminParser']['action'] )): ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['AdminRewrite']['mode'] == 'test'): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Test the Rewrite Parser Configuration'), $this);?> +

+
+_tpl_vars['TestResults']['template'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['TestResults']['template']), 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['TestResults']['action'] )): ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['TestResults']['refresh'] )): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Test again'), $this);?> +"/> + +
+

+_reg_objects['g'][0]->text(array('text' => "The selected URL Rewrite Parser does not provide any tests."), $this);?> +
+

+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%11^116^1168F4C7%%header.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%11^116^1168F4C7%%header.tpl.php new file mode 100644 index 0000000..70264f1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%11^116^1168F4C7%%header.tpl.php @@ -0,0 +1,17 @@ + +
+ + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%21^21B^21B11A4A%%UserAdmin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%21^21B^21B11A4A%%UserAdmin.tpl.php new file mode 100644 index 0000000..36a0318 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%21^21B^21B11A4A%%UserAdmin.tpl.php @@ -0,0 +1,58 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/UserAdmin.tpl', 8, false),)), $this); ?> +
+"> +
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="_tpl_vars['form']['formName']; ?> +"/> +
+ + + + + +
+
+

_reg_objects['g'][0]->text(array('text' => 'User Options'), $this);?> +

+ +
+_reg_objects['g'][0]->block(array('type' => "core.NavigationLinks",'class' => 'gbBlock','navigationLinks' => $this->_tpl_vars['UserAdmin']['navigationLinks']), $this);?> + +
+
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['UserAdmin']['viewBodyFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['UserAdmin']['viewL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%26^261^2615E4E5%%AdminPlugins.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%26^261^2615E4E5%%AdminPlugins.tpl.php new file mode 100644 index 0000000..c313cfe --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%26^261^2615E4E5%%AdminPlugins.tpl.php @@ -0,0 +1,376 @@ + + array(array('modifier', 'escape', 'gallery:modules/core/templates/AdminPlugins.tpl', 11, false),array('modifier', 'capitalize', 'gallery:modules/core/templates/AdminPlugins.tpl', 152, false),array('function', 'cycle', 'gallery:modules/core/templates/AdminPlugins.tpl', 147, false),)), $this); ?> + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Gallery Plugins'), $this);?> +

+
+
+ +_reg_objects['g'][0]->text(array('text' => 'Plugins'), $this);?> + + + + + "subView=core.AdminRepository"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Get More Plugins'), $this);?> + +_smarty_vars['capture']['getMoreLink'] = ob_get_contents(); ob_end_clean(); echo $this->_smarty_vars['capture']['getMoreLink']; ?> + + +
+_tpl_vars['AdminPlugins']['showGetMorePluginsTip']): ?> +
+

+

+_reg_objects['g'][0]->text(array('text' => "Want more features? New plugins are just a click away. Just click the %s link to get started.",'arg1' => $this->_smarty_vars['capture']['getMoreLink']), $this);?> + +

+

+
+ +
+

+_reg_objects['g'][0]->text(array('text' => "Gallery features come as separate plugins. You can download and install plugins to add more features to your Gallery, or you can disable features if you don't want to use them. In order to use a feature, you must install, configure (if necessary) and activate it. If you don't wish to use a feature, you can deactivate it."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/JavaScriptWarning.tpl", 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/AdminPluginsLegend.tpl", 'smarty_include_vars' => array('legendId' => 'top'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +assign('group', ""); $_from = $this->_tpl_vars['AdminPlugins']['plugins']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['plugin']): + if ($this->_tpl_vars['group'] != $this->_tpl_vars['plugin']['group']): if (! empty ( $this->_tpl_vars['group'] )): ?> + + + + + + + + + + + + +assign('group', $this->_tpl_vars['plugin']['group']); ?> + +"> + + + + + + + + +
 

_tpl_vars['plugin']['groupLabel']; ?> +

  _reg_objects['g'][0]->text(array('text' => 'Plugin Name'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Installed'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Version'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Description'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Actions'), $this);?> +
+
+
+ +_tpl_vars['plugin']['screenshot'] )): echo $this->_tpl_vars['plugin']['name']; ?> + + +_tpl_vars['plugin']['name']; ?> + +_reg_objects['g'][0]->text(array('text' => "Screenshot for %s",'arg1' => $this->_tpl_vars['plugin']['name']), $this); $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('screenshotLabel', ob_get_contents());ob_end_clean(); ?> + + + +_tpl_vars['plugin']['installedVersion']; ?> + + +_tpl_vars['plugin']['version']; ?> + + +_tpl_vars['plugin']['description']; ?> + +_tpl_vars['plugin']['state'] == 'incompatible'): ?> +
+ +_reg_objects['g'][0]->text(array('text' => "Incompatible plugin!"), $this);?> + +_tpl_vars['plugin']['api']['required']['core'] != $this->_tpl_vars['plugin']['api']['provided']['core']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Core API Required: %s (available: %s)",'arg1' => $this->_tpl_vars['plugin']['api']['required']['core'],'arg2' => $this->_tpl_vars['plugin']['api']['provided']['core']), $this);?> + +_tpl_vars['plugin']['api']['required']['plugin'] != $this->_tpl_vars['plugin']['api']['provided']['plugin']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Plugin API Required: %s (available: %s)",'arg1' => $this->_tpl_vars['plugin']['api']['required']['plugin'],'arg2' => $this->_tpl_vars['plugin']['api']['provided']['plugin']), $this);?> + + +
+ +
+_tpl_vars['plugin']['type'] == 'module' && $this->_tpl_vars['plugin']['id'] == 'core' ) || $this->_tpl_vars['plugin']['state'] == 'incompatible' || ( $this->_tpl_vars['plugin']['type'] == 'theme' && $this->_tpl_vars['plugin']['id'] == $this->_tpl_vars['AdminPlugins']['defaultTheme'] && $this->_tpl_vars['plugin']['state'] == 'active' )): ?> +  + + + + + + + +_tpl_vars['AdminPlugins']['canDeletePlugins']): ?> + + + +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/AdminPluginsLegend.tpl", 'smarty_include_vars' => array('legendId' => 'bottom'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%29^29E^29E4BE05%%UserLogin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%29^29E^29E4BE05%%UserLogin.tpl.php new file mode 100644 index 0000000..01eeb33 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%29^29E^29E4BE05%%UserLogin.tpl.php @@ -0,0 +1,87 @@ + + array(array('modifier', 'cat', 'gallery:modules/core/templates/UserLogin.tpl', 50, false),array('modifier', 'default', 'gallery:modules/core/templates/UserLogin.tpl', 65, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Login to your account'), $this);?> +

+
+_reg_objects['g'][0]->url(array('arg1' => "view=core.UserAdmin",'arg2' => "subView=core.UserRecoverPassword",'arg3' => "return=1"), $this); $this->_smarty_vars['capture']['recoverUrl'] = ob_get_contents(); ob_end_clean(); if ($this->_tpl_vars['user']['isGuest']): ?> + + +" value="_tpl_vars['form']['returnUrl']; ?> +"/> +
+_tpl_vars['status']['passwordRecovered'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Your password has been recovered, please login."), $this);?> + +

+ +

_reg_objects['g'][0]->text(array('text' => 'Username'), $this);?> +

+ +" value="_tpl_vars['form']['username']; ?> +"/> + +_tpl_vars['form']['error']['username']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a username'), $this);?> + +
+_tpl_vars['form']['error']['username']['disabled'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Logins to this account are temporarily disabled due to multiple failed login attempts. Wait for access to be restored, or use the recover password page to re-enable this account.",'arg1' => $this->_smarty_vars['capture']['recoverUrl']), $this);?> + +
+ +

_reg_objects['g'][0]->text(array('text' => 'Password'), $this);?> +

+ +"/> +_tpl_vars['form']['error']['password']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a password'), $this);?> + +
+_tpl_vars['form']['error']['invalidPassword'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Your login information is incorrect. Please try again."), $this);?> + +
+ +
+_reg_objects['g'][0]->callback(array('type' => "core.LoadValidationPlugins",'key' => ((is_array($_tmp="core.UserLogin.")) ? $this->_run_mod_handler('cat', true, $_tmp, $this->_tpl_vars['form']['username']) : smarty_modifier_cat($_tmp, $this->_tpl_vars['form']['username']))), $this);?> + +_tpl_vars['block']['core']['ValidationPlugins']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['plugin']): + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['plugin']['file']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['plugin']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endforeach; endif; unset($_from); ?> +
+_reg_objects['g'][0]->text(array('text' => "Lost or forgotten passwords can be retrieved using the recover password page",'arg1' => $this->_smarty_vars['capture']['recoverUrl']), $this);?> + +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Login'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> +
+
+

_reg_objects['g'][0]->text(array('text' => "Welcome, %s!",'arg1' => ((is_array($_tmp=@$this->_tpl_vars['user']['fullName'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['user']['userName']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['user']['userName']))), $this);?> +

+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%34^345^345657B7%%AdminMaintenance.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%34^345^345657B7%%AdminMaintenance.tpl.php new file mode 100644 index 0000000..8e9da5d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%34^345^345657B7%%AdminMaintenance.tpl.php @@ -0,0 +1,104 @@ + + array(array('function', 'cycle', 'gallery:modules/core/templates/AdminMaintenance.tpl', 34, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'System Maintenance'), $this);?> +

+
+_tpl_vars['status']['run'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['AdminMaintenance']['tasks'][$this->_tpl_vars['status']['run']['taskId']]['title'],'l10Domain' => $this->_tpl_vars['AdminMaintenance']['tasks'][$this->_tpl_vars['status']['run']['taskId']]['l10Domain']), $this);?> +_smarty_vars['capture']['taskTitle'] = ob_get_contents(); ob_end_clean(); if (( $this->_tpl_vars['status']['run']['success'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Completed %s task successfully.",'arg1' => $this->_smarty_vars['capture']['taskTitle']), $this);?> + +

+ +

+_reg_objects['g'][0]->text(array('text' => "The %s task failed to complete successfully.",'arg1' => $this->_smarty_vars['capture']['taskTitle']), $this);?> + +

+ +
+ +
+ + + + + + + +_tpl_vars['AdminMaintenance']['tasks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['taskId'] => $this->_tpl_vars['info']): + echo smarty_function_cycle(array('values' => "gbEven,gbOdd",'assign' => 'rowClass'), $this);?> + + + + +_tpl_vars['status']['run'] ) || $this->_tpl_vars['status']['run']['taskId'] != $this->_tpl_vars['taskId']): ?>style="display: none"> + + + +
_reg_objects['g'][0]->text(array('text' => 'Task name'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Last run'), $this);?> + _reg_objects['g'][0]->text(array('text' => "Success/Fail"), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Action'), $this);?> +
+_tpl_vars['status']['run'] ) || $this->_tpl_vars['status']['run']['taskId'] != $this->_tpl_vars['taskId']): ?>+- +_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['info']['title'],'l10Domain' => $this->_tpl_vars['info']['l10Domain']), $this);?> + + +_tpl_vars['info']['timestamp'] )): echo $this->_reg_objects['g'][0]->date(array('timestamp' => $this->_tpl_vars['info']['timestamp'],'style' => 'datetime'), $this);?> + +_reg_objects['g'][0]->text(array('text' => 'Not run yet'), $this);?> + + + +_tpl_vars['info']['success'] )): if ($this->_tpl_vars['info']['success']): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Success'), $this);?> + +
+ +
+_reg_objects['g'][0]->text(array('text' => 'Failed'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'Not run yet'), $this);?> + + +
+ "form[action][runTask]=1",'arg3' => "taskId=".($this->_tpl_vars['taskId'])), $this);?> +"_tpl_vars['info']['confirmRun'] )): ?> onclick="return confirm('_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['info']['title'],'forJavascript' => 1), $this);?> +: _reg_objects['g'][0]->text(array('text' => "Are you sure?",'forJavascript' => 1), $this);?> +')" +>_reg_objects['g'][0]->text(array('text' => 'run now'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['info']['description'],'l10Domain' => $this->_tpl_vars['info']['l10Domain']), $this);?> + +_tpl_vars['info']['details'] )): ?> +

_reg_objects['g'][0]->text(array('text' => "Last Run Details:"), $this);?> +

+

+_tpl_vars['info']['details']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['text']): + echo $this->_tpl_vars['text']; ?> +
+ +

+ +
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%3B^3B1^3B1A61A2%%ItemLinks.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%3B^3B1^3B1A61A2%%ItemLinks.tpl.php new file mode 100644 index 0000000..478185d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%3B^3B1^3B1A61A2%%ItemLinks.tpl.php @@ -0,0 +1,39 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/ItemLinks.tpl', 32, false),array('modifier', 'lower', 'gallery:modules/core/templates/blocks/ItemLinks.tpl', 34, false),)), $this); ?> +_tpl_vars['links'] ) && isset ( $this->_tpl_vars['theme']['itemLinks'] )): $this->assign('links', $this->_tpl_vars['theme']['itemLinks']); endif; if (! empty ( $this->_tpl_vars['links'] )): if (empty ( $this->_tpl_vars['item'] )): $this->assign('item', $this->_tpl_vars['theme']['item']); endif; if (! isset ( $this->_tpl_vars['lowercase'] )): $this->assign('lowercase', false); endif; if (! isset ( $this->_tpl_vars['useDropdown'] )): $this->assign('useDropdown', true); endif; ?> +
+_tpl_vars['links'] ) > 1 && $this->_tpl_vars['useDropdown']): ?> + +_tpl_vars['links']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['link']): +?> +_tpl_vars['link']['script'] )): ?> onclick="_tpl_vars['link']['script']; ?> +"_tpl_vars['link']['attrs'] )): ?> _tpl_vars['link']['attrs']; endif; ?>>_tpl_vars['lowercase']): echo ((is_array($_tmp=$this->_tpl_vars['link']['text'])) ? $this->_run_mod_handler('lower', true, $_tmp) : smarty_modifier_lower($_tmp)); else: echo $this->_tpl_vars['link']['text']; endif; ?> + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%55^55E^55E14245%%SystemLinks.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%55^55E^55E14245%%SystemLinks.tpl.php new file mode 100644 index 0000000..ed6265f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%55^55E^55E14245%%SystemLinks.tpl.php @@ -0,0 +1,29 @@ + + array(array('modifier', 'replace', 'gallery:modules/core/templates/blocks/SystemLinks.tpl', 7, false),array('modifier', 'default', 'gallery:modules/core/templates/blocks/SystemLinks.tpl', 8, false),array('modifier', 'split', 'gallery:modules/core/templates/blocks/SystemLinks.tpl', 8, false),)), $this); ?> +assign('class', ((is_array($_tmp=$this->_tpl_vars['class'])) ? $this->_run_mod_handler('replace', true, $_tmp, 'SystemLinks', 'SystemLink') : smarty_modifier_replace($_tmp, 'SystemLinks', 'SystemLink'))); $this->assign('order', ((is_array($_tmp=((is_array($_tmp=@$this->_tpl_vars['order'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, "")))) ? $this->_run_mod_handler('split', true, $_tmp) : smarty_modifier_split($_tmp))); $this->assign('othersAt', ((is_array($_tmp=@$this->_tpl_vars['othersAt'])) ? $this->_run_mod_handler('default', true, $_tmp, 0) : smarty_modifier_default($_tmp, 0))); $this->assign('othersAt', $this->_tpl_vars['othersAt']-1); $this->assign('separator', ((is_array($_tmp=@$this->_tpl_vars['separator'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, ""))); ob_start(); $_from = $this->_tpl_vars['theme']['systemLinks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['linkId'] => $this->_tpl_vars['link']): + if (! in_array ( $this->_tpl_vars['linkId'] , $this->_tpl_vars['order'] )): ?> + +_tpl_vars['link']['text']; ?> + + +_tpl_vars['separator']; ?> + +_smarty_vars['capture']['SystemLinks'] = ob_get_contents(); ob_end_clean(); $_from = $this->_tpl_vars['order']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['index'] => $this->_tpl_vars['linkId']): + if ($this->_tpl_vars['index'] == $this->_tpl_vars['othersAt']): $this->assign('SystemLinksShown', true); echo $this->_smarty_vars['capture']['SystemLinks']; ?> + +_tpl_vars['theme']['systemLinks'][$this->_tpl_vars['linkId']] )): ?> + +_tpl_vars['theme']['systemLinks'][$this->_tpl_vars['linkId']]['text']; ?> + + +_tpl_vars['separator']; ?> + +_tpl_vars['SystemLinksShown'] )): echo $this->_smarty_vars['capture']['SystemLinks']; endif; ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%5A^5A3^5A33504B%%Navigator.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%5A^5A3^5A33504B%%Navigator.tpl.php new file mode 100644 index 0000000..608d3cd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%5A^5A3^5A33504B%%Navigator.tpl.php @@ -0,0 +1,29 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/Navigator.tpl', 12, false),array('modifier', 'split', 'gallery:modules/core/templates/blocks/Navigator.tpl', 19, false),)), $this); ?> +_tpl_vars['reverseOrder'] ) && $this->_tpl_vars['reverseOrder']): $this->assign('order', "next-and-last current first-and-previous"); else: $this->assign('order', "first-and-previous current next-and-last"); endif; $this->assign('prefix', ((is_array($_tmp=@$this->_tpl_vars['prefix'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, ""))); $this->assign('suffix', ((is_array($_tmp=@$this->_tpl_vars['suffix'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, ""))); ?> +
+_tpl_vars['order'])) ? $this->_run_mod_handler('split', true, $_tmp) : smarty_modifier_split($_tmp)); if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['which']): + if ($this->_tpl_vars['which'] == "next-and-last"): ?> + +_tpl_vars['which'] == 'current'): if (( isset ( $this->_tpl_vars['currentPage'] ) && isset ( $this->_tpl_vars['totalPages'] ) ) || ( isset ( $this->_tpl_vars['currentItem'] ) && isset ( $this->_tpl_vars['totalItems'] ) )): ?> + +_tpl_vars['currentPage'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Page %d of %d",'arg1' => $this->_tpl_vars['currentPage'],'arg2' => $this->_tpl_vars['totalPages']), $this);?> + +_tpl_vars['currentItem'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "%d of %d",'arg1' => $this->_tpl_vars['currentItem'],'arg2' => $this->_tpl_vars['totalItems']), $this);?> + + + + + + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%63^634^634CFD79%%photo.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%63^634^634CFD79%%photo.tpl.php new file mode 100644 index 0000000..da40272 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%63^634^634CFD79%%photo.tpl.php @@ -0,0 +1,86 @@ + + array(array('function', 'math', 'gallery:themes/abeto/templates/photo.tpl', 55, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/photo.tpl', 57, false),array('modifier', 'default', 'gallery:themes/abeto/templates/photo.tpl', 57, false),)), $this); ?> + +_tpl_vars['theme']['imageViews'] )): $this->assign('image', $this->_tpl_vars['theme']['imageViews'][$this->_tpl_vars['theme']['imageViewsIndex']]); endif; if (! empty ( $this->_tpl_vars['theme']['imageViews'] )): ob_start(); ?> + "itemId=".($this->_tpl_vars['theme']['item']['id']),'forceFullUrl' => true,'forceSessionId' => true), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => "Download %s",'arg1' => $this->_tpl_vars['theme']['sourceImage']['itemTypeName']['1']), $this);?> + + +_smarty_vars['capture']['fallback'] = ob_get_contents(); ob_end_clean(); if (( $this->_tpl_vars['image']['viewInline'] )): ?> + +_smarty_vars['capture']['fallback']; ?> + +_reg_objects['g'][0]->text(array('text' => "There is nothing to view for this item."), $this);?> + +_tpl_vars['theme']['params']['enableImageMap'] && ! empty ( $this->_tpl_vars['image']['width'] ) && ! empty ( $this->_tpl_vars['image']['height'] )): ?> + +_tpl_vars['theme']['navigator']['back'] )): ?> + $this->_tpl_vars['image']['width']), $this);?> +,_tpl_vars['image']['height']; ?> +" +href="_reg_objects['g'][0]->url(array('params' => $this->_tpl_vars['theme']['navigator']['back']['urlParams']), $this);?> +" +alt="_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> +" +onmouseover="document.getElementById('prevArrow').style.visibility='visible'" +onmouseout="document.getElementById('prevArrow').style.visibility='hidden'"/> +_tpl_vars['theme']['navigator']['next'] )): ?> + $this->_tpl_vars['image']['width']), $this);?> +,0,_tpl_vars['image']['width']; ?> +,_tpl_vars['image']['height']; ?> +" +href="_reg_objects['g'][0]->url(array('params' => $this->_tpl_vars['theme']['navigator']['next']['urlParams']), $this);?> +" +alt="_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> +" +onmouseover="document.getElementById('nextArrow').style.visibility='visible'" +onmouseout="document.getElementById('nextArrow').style.visibility='hidden'"/> + + + +
+_tpl_vars['theme']['navigator'] )): echo $this->_reg_objects['g'][0]->callback(array('type' => "core.LoadPeers",'item' => $this->_tpl_vars['theme']['item'],'windowSize' => 1), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentItem' => $this->_tpl_vars['block']['core']['LoadPeers']['thisPeerIndex'],'totalItems' => $this->_tpl_vars['block']['core']['LoadPeers']['peerCount']), $this);?> + + +
+_tpl_vars['theme']['item']['description'] ) && ( $this->_tpl_vars['theme']['item']['description'] != $this->_tpl_vars['theme']['item']['title'] )): ?> +

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): if (! empty ( $this->_tpl_vars['theme']['sourceImage'] ) && ( count ( $this->_tpl_vars['theme']['imageViews'] ) > 1 || $this->_tpl_vars['theme']['sourceImage']['mimeType'] != $this->_tpl_vars['theme']['item']['mimeType'] )): ?> +

+_tpl_vars['theme']['sourceImage']['mimeType'] != $this->_tpl_vars['theme']['item']['mimeType']): ?> + "itemId=".($this->_tpl_vars['theme']['item']['id'])), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => "Download %s in original format",'arg1' => $this->_tpl_vars['theme']['sourceImage']['itemTypeName']['1']), $this);?> + + + "itemId=".($this->_tpl_vars['theme']['sourceImage']['id'])), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => "Download %s",'arg1' => $this->_tpl_vars['theme']['sourceImage']['itemTypeName']['1']), $this);?> + +_tpl_vars['theme']['sourceImage']['width'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "(%dx%d)",'arg1' => $this->_tpl_vars['theme']['sourceImage']['width'],'arg2' => $this->_tpl_vars['theme']['sourceImage']['height']), $this);?> + + + +

+_tpl_vars['theme']['params']['photoBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'photo'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%6F^6FA^6FA7BD72%%AdminCore.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%6F^6FA^6FA7BD72%%AdminCore.tpl.php new file mode 100644 index 0000000..e42f0e8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%6F^6FA^6FA7BD72%%AdminCore.tpl.php @@ -0,0 +1,397 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/AdminCore.tpl', 47, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'General Settings'), $this);?> +

+
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['saved'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Settings saved successfully'), $this);?> +
+_tpl_vars['status']['addedDir'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Added local upload directory successfully'), $this);?> + +_tpl_vars['status']['removedDir'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Removed local upload directory successfully'), $this);?> + +_tpl_vars['status']['emailTestSuccess'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Test email sent successfully'), $this);?> + + +

+_tpl_vars['form']['error'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "There was a problem processing your request, see below for details."), $this);?> + +

+_tpl_vars['status']['emailTestError'] ) || isset ( $this->_tpl_vars['form']['emailTestError'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Error sending test email, see below for details."), $this);?> + +

+ +
+

_reg_objects['g'][0]->text(array('text' => 'Language Settings'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Select language defaults for Gallery. Individual users can override this setting in their personal preferences or via the language selector block if available. Gallery will try to automatically detect the language preference of each user if the browser preference check is enabled."), $this);?> + +

+_tpl_vars['AdminCore']['can']['translate'] )): ?> + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Default language'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'Check Browser Preference'), $this);?> + + +_tpl_vars['form']['language']['useBrowserPref']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[language][useBrowserPref]"), $this);?> +"/> +
+ +
+ +_reg_objects['g'][0]->text(array('text' => 'gettext'), $this);?> + +_smarty_vars['capture']['gettext'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "Your webserver does not support localization. Please instruct your system administrator to reconfigure PHP with the %s option enabled.",'arg1' => $this->_smarty_vars['capture']['gettext']), $this);?> + +
+ +
+
+

_reg_objects['g'][0]->text(array('text' => 'Date Formats'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to enter a format string. Note that the display of some tokens varies according to the active language.",'arg1' => "",'arg2' => ""), $this);?> + +

+ + +
+_reg_objects['g'][0]->text(array('text' => 'Style'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => 'Format'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => 'Sample'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'Date'), $this);?> + + + +" value="_tpl_vars['form']['format']['date']; ?> +"/> + +_reg_objects['g'][0]->date(array('format' => $this->_tpl_vars['form']['format']['date']), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'Time'), $this);?> + + + +" value="_tpl_vars['form']['format']['time']; ?> +"/> + +_reg_objects['g'][0]->date(array('format' => $this->_tpl_vars['form']['format']['time']), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => "Date/Time"), $this);?> + + + +" value="_tpl_vars['form']['format']['datetime']; ?> +"/> + +_reg_objects['g'][0]->date(array('format' => $this->_tpl_vars['form']['format']['datetime']), $this);?> + +
+
+_tpl_vars['AdminCore']['can']['setPermissions'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Filesystem Permissions'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Specify the default permissions for files and directories that Gallery creates. This doesn't apply to files/directories that Gallery has already created."), $this);?> + +

+ + + + +
+_reg_objects['g'][0]->text(array('text' => 'New directories'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'New files'), $this);?> + + + +
+
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Session Settings'), $this);?> +

+ + + + +
+_reg_objects['g'][0]->text(array('text' => 'Session Lifetime'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'Inactivity Timeout'), $this);?> + + + +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Embedded Markup'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "What kind of markup should we allow in user-entered fields? For security reasons we do not recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and allows for simple text formatting like bold, italics, lists, images and urls."), $this);?> + +

+ + +
+_reg_objects['g'][0]->text(array('text' => 'Markup'), $this);?> + + + +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Email'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "By default Gallery uses PHP's built in mail function to send email which requires no configuration. To use a smtp/mail server enter the information below, including authentication information if required. Optionally add :port after the server name to use a non-default port."), $this);?> + +

+ + + + + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Server'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['host']; ?> +"/> +
+_reg_objects['g'][0]->text(array('text' => 'Username'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['username']; ?> +"/> +
+_reg_objects['g'][0]->text(array('text' => 'Password'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['password']; ?> +"/> +
+_reg_objects['g'][0]->text(array('text' => 'SMTP From Address'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['from']; ?> +"/> +_tpl_vars['form']['error']['smtp']['invalidFrom'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid email address'), $this);?> + +
+ +
+

+_reg_objects['g'][0]->text(array('text' => "Send a test email to verify your settings are correct (whether using PHP mail or SMTP settings above). Below enter a recipient email address for a test message."), $this);?> + +

+

+ +" value="_tpl_vars['form']['emailTest']['to']; ?> +"/> +  + +" value="_reg_objects['g'][0]->text(array('text' => 'Send Email'), $this);?> +"/> +

+_tpl_vars['form']['emailTestError']['invalidTo'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid email address'), $this);?> + +
+_tpl_vars['status']['emailTestError'] )): ?> +

_reg_objects['g'][0]->text(array('text' => 'Email Test Error'), $this);?> +

+
+_tpl_vars['status']['emailTestError']; ?> + +
_tpl_vars['status']['emailTestDebug']; ?>
+
+
+ +
+
+

+_reg_objects['g'][0]->text(array('text' => 'Cookies'), $this);?> + ++ +

+

+_reg_objects['g'][0]->text(array('text' => "When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have the choice between two options. Everyone else does not have to care about the cookie settings. Read on for more details."), $this);?> + +

+

+_reg_objects['g'][0]->text(array('text' => "If your Gallery is embedded and you leave the following fields empty, then all DownloadItem links (the URLs of the images and other items) in the embedded Gallery have an appended GALLERYSID string in the URL which is a minor security risk when your Gallery users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set the cookie path. Gallery will then not append the GALLERYSID to the embedded DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/gallery2/ and the embedding application is at http://www.example.com/application/, then you have to compare the path /application/gallery2/ with /application/. The cookie path is the part of the paths that is equal, in this case it is '/application/'. Most often it is just '/'."), $this);?> +
+_reg_objects['g'][0]->text(array('text' => "The cookie domain is also only needed for embedded Gallery installs and only if you want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding application are only reachable with different subdomains. E.g. when Gallery is at http://photos.example.com/ and the application is at http://www.example.com/, then you have to set the cookie domain example.com (the part of the host string that is common to both, Gallery and the embedding application)."), $this);?> +
+_reg_objects['g'][0]->text(array('text' => "Once you change the cookie settings, all registered users of your Gallery will have to clear their browser cookie cache. If they do not, they will experience login / logout / lost session problems."), $this);?> + +

+ + + + +
+_reg_objects['g'][0]->text(array('text' => 'Path'), $this);?> + + + +" value="_tpl_vars['form']['cookie']['path']; ?> +"/> +_tpl_vars['form']['error']['cookie']['invalidPath'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid cookie path'), $this);?> +
+
+ +
+_reg_objects['g'][0]->text(array('text' => 'Domain'), $this);?> + + + +" value="_tpl_vars['form']['cookie']['domain']; ?> +"/> +_tpl_vars['form']['error']['cookie']['invalidDomain'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid cookie domain'), $this);?> +
+
+ +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Locking System'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Gallery uses a system of locks to prevent simultaneous changes from interfering with each other. There are two types of locking, each with its advantages and disadvantages. File based locking is fast and efficient, but won't work on NFS filesystems and will be unreliable on Windows. Database locking is slower but is more reliable. If you are unsure which to choose, we recommend using file locking. If you're getting many lock timeouts, you can try switching to database locking instead. It's ok to switch back and forth."), $this);?> + +

+ + +
+_reg_objects['g'][0]->text(array('text' => 'Lock system'), $this);?> + + + +
+
+_tpl_vars['AdminCore']['can']['tweakSystemProcesses'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Helper Processes'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Some Gallery modules will use programs on your server to do image processing, archiving and other operations. These programs can be very computationally intensive and can impact the overall performance of a shared web server. You can make these programs run at a lower priority so that they play nice. If you're in a shared hosting environment and your web host is complaining, try setting your priority low."), $this);?> + +

+ + + + + +
_reg_objects['g'][0]->text(array('text' => 'Priority'), $this);?> + + +
+
+ +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%7D^7DC^7DCBB707%%GuestPreview.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%7D^7DC^7DCBB707%%GuestPreview.tpl.php new file mode 100644 index 0000000..a814adf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%7D^7DC^7DCBB707%%GuestPreview.tpl.php @@ -0,0 +1,19 @@ + +_tpl_vars['user']['isRegisteredUser']): ?> +
+_tpl_vars['theme']['guestPreviewMode'] )): ?> + "guestPreviewMode=0",'arg3' => "return=1"), $this);?> +">_tpl_vars['user']['userName']; ?> + | _reg_objects['g'][0]->text(array('text' => 'guest'), $this);?> + + + _tpl_vars['user']['userName']; ?> + | "guestPreviewMode=1",'arg3' => "return=1"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'guest'), $this);?> + +_smarty_vars['capture']['guestPreviewMode'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "display mode: %s",'arg1' => $this->_smarty_vars['capture']['guestPreviewMode']), $this);?> + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%83^834^8342AFE8%%PeerList.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%83^834^8342AFE8%%PeerList.tpl.php new file mode 100644 index 0000000..7100b9e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%83^834^8342AFE8%%PeerList.tpl.php @@ -0,0 +1,29 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/PeerList.tpl', 7, false),array('modifier', 'markup', 'gallery:modules/core/templates/blocks/PeerList.tpl', 12, false),array('modifier', 'entitytruncate', 'gallery:modules/core/templates/blocks/PeerList.tpl', 21, false),)), $this); ?> +_reg_objects['g'][0]->callback(array('type' => "core.LoadPeers",'item' => ((is_array($_tmp=@$this->_tpl_vars['item'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item'])),'windowSize' => ((is_array($_tmp=@$this->_tpl_vars['windowSize'])) ? $this->_run_mod_handler('default', true, $_tmp, null) : smarty_modifier_default($_tmp, null))), $this);?> + +assign('data', $this->_tpl_vars['block']['core']['LoadPeers']); if (! empty ( $this->_tpl_vars['data']['peers'] )): ?> +
+

_tpl_vars['data']['parent']['title'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['data']['parent']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['data']['parent']['pathComponent'])))) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+assign('lastIndex', 0); $_from = $this->_tpl_vars['data']['peers']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['peer']): + $this->assign('title', ((is_array($_tmp=@$this->_tpl_vars['peer']['title'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['peer']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['peer']['pathComponent']))); if (( $this->_tpl_vars['peer']['peerIndex'] - $this->_tpl_vars['lastIndex'] > 1 )): ?> +... +_tpl_vars['peer']['peerIndex'] == $this->_tpl_vars['data']['thisPeerIndex'] )): ?> + +_reg_objects['g'][0]->text(array('text' => "%d. %s",'arg1' => $this->_tpl_vars['peer']['peerIndex'],'arg2' => ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('entitytruncate', true, $_tmp, 14) : smarty_modifier_entitytruncate($_tmp, 14))), $this);?> + + + + +_reg_objects['g'][0]->text(array('text' => "%d. %s",'arg1' => $this->_tpl_vars['peer']['peerIndex'],'arg2' => ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('entitytruncate', true, $_tmp, 14) : smarty_modifier_entitytruncate($_tmp, 14))), $this);?> + + +assign('lastIndex', $this->_tpl_vars['peer']['peerIndex']); endforeach; endif; unset($_from); ?> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%88^88E^88E1D073%%AdminThemes.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%88^88E^88E1D073%%AdminThemes.tpl.php new file mode 100644 index 0000000..4799fe9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%88^88E^88E1D073%%AdminThemes.tpl.php @@ -0,0 +1,337 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/AdminThemes.tpl', 48, false),array('function', 'cycle', 'gallery:modules/core/templates/AdminThemes.tpl', 129, false),array('modifier', 'default', 'gallery:modules/core/templates/AdminThemes.tpl', 135, false),array('modifier', 'replace', 'gallery:modules/core/templates/AdminThemes.tpl', 206, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Gallery Themes'), $this);?> +

+
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['activated'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Successfully activated theme %s",'arg1' => $this->_tpl_vars['status']['activated']), $this);?> + +_tpl_vars['status']['deactivated'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Successfully deactivated theme %s",'arg1' => $this->_tpl_vars['status']['deactivated']), $this);?> + +_tpl_vars['status']['installed'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Successfully installed theme %s",'arg1' => $this->_tpl_vars['status']['installed']), $this);?> + +_tpl_vars['status']['uninstalled'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Successfully uninstalled theme %s",'arg1' => $this->_tpl_vars['status']['uninstalled']), $this);?> + +_tpl_vars['status']['upgraded'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Successfully upgraded theme %s",'arg1' => $this->_tpl_vars['status']['upgraded']), $this);?> + +_tpl_vars['status']['savedTheme'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Successfully saved theme settings'), $this);?> + +_tpl_vars['status']['savedDefaults'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Successfully saved default album settings'), $this);?> + +_tpl_vars['status']['restoredTheme'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Restored theme settings'), $this);?> + + +

+ +
+

_reg_objects['g'][0]->text(array('text' => 'Defaults'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "These are default display settings for albums in your gallery. They can be overridden in each album."), $this);?> + +

+ + + + + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Default sort order'), $this);?> + + + + +_reg_objects['g'][0]->text(array('text' => 'with'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'Default theme'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'New albums'), $this);?> + + + +
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save Defaults'), $this);?> +"/> +
+
+_tpl_vars['AdminThemes']['themes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['themeId'] => $this->_tpl_vars['theme']): + if ($this->_tpl_vars['theme']['active']): if ($this->_tpl_vars['AdminThemes']['themeId'] == $this->_tpl_vars['themeId']): ?> + +_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['theme']['name'],'l10Domain' => $this->_tpl_vars['theme']['l10Domain']), $this);?> + + + + + "subView=core.AdminThemes",'arg3' => "themeId=".($this->_tpl_vars['themeId'])), $this);?> +">_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['theme']['name'],'l10Domain' => $this->_tpl_vars['theme']['l10Domain']), $this);?> + + + +
+
+

+_reg_objects['g'][0]->text(array('text' => "%s Theme Settings",'arg1' => $this->_tpl_vars['AdminThemes']['themes'][$this->_tpl_vars['AdminThemes']['themeId']]['name']), $this);?> + +

+

+_reg_objects['g'][0]->text(array('text' => "These are the global settings for the theme. They can be overridden at the album level."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/JavaScriptWarning.tpl", 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['AdminThemes']['customTemplate'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['AdminThemes']['customTemplate']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['AdminThemes']['themes'][$this->_tpl_vars['AdminThemes']['themeId']]['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endif; if (! empty ( $this->_tpl_vars['AdminThemes']['settings'] )): ?> + +_tpl_vars['AdminThemes']['settings']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['setting']): +?> + +"> + + + +_tpl_vars['form']['error']['key'][$this->_tpl_vars['setting']['key']]['invalid'] )): ?> + + + + +
+_tpl_vars['setting']['name']; ?> + + +_tpl_vars['setting']['type'] == 'text-field' )): ?> +_tpl_vars['setting']['key'])."]"), $this);?> +" +value="_tpl_vars['form']['key'][$this->_tpl_vars['setting']['key']]; ?> +"/> +_tpl_vars['setting']['type'] == 'textarea' )): ?> + +_tpl_vars['setting']['type'] == 'single-select' )): ?> + +_tpl_vars['setting']['type'] == 'checkbox' )): ?> +_tpl_vars['setting']['value'] )): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[key][".($this->_tpl_vars['setting']['key'])."]"), $this);?> +" /> +_tpl_vars['setting']['type'] == 'block-list' )): ?> + + + + + + + + + + + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Available'), $this);?> + + + + + +_reg_objects['g'][0]->text(array('text' => 'Add'), $this);?> + + +
+_reg_objects['g'][0]->text(array('text' => 'Selected'), $this);?> + + + + + +_reg_objects['g'][0]->text(array('text' => 'Remove'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'Move Up'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'Move Down'), $this);?> + + +
+
+_tpl_vars['setting']['key'])."]"), $this);?> +" +value="_tpl_vars['form']['key'][$this->_tpl_vars['setting']['key']])) ? $this->_run_mod_handler('replace', true, $_tmp, '"', '"') : smarty_modifier_replace($_tmp, '"', '"')); ?> +"/> + + +
+_tpl_vars['form']['errorMessage'][$this->_tpl_vars['setting']['key']]; ?> + +
+_tpl_vars['AdminThemes']['customTemplate'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'There are no settings for this theme'), $this);?> + + +
+_tpl_vars['AdminThemes']['customTemplate'] ) || ! empty ( $this->_tpl_vars['AdminThemes']['settings'] )): ?> +
+ + +" value="_reg_objects['g'][0]->text(array('text' => 'Save Theme Settings'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%8C^8CF^8CF644B4%%album.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%8C^8CF^8CF644B4%%album.tpl.php new file mode 100644 index 0000000..7608751 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%8C^8CF^8CF644B4%%album.tpl.php @@ -0,0 +1,105 @@ + + array(array('modifier', 'markup', 'gallery:themes/abeto/templates/album.tpl', 18, false),array('modifier', 'default', 'gallery:themes/abeto/templates/album.tpl', 56, false),array('modifier', 'entitytruncate', 'gallery:themes/abeto/templates/album.tpl', 65, false),)), $this); ?> + + + + +'; ?> + +_tpl_vars['theme']['item']['description'] )): ?> +

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['theme']['children'] )): ?> + +assign('firstAlbum', true); $this->assign('currentYear', ""); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if ($this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstAlbum']): ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + + + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%9A^9AE^9AEF97D8%%admin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%9A^9AE^9AEF97D8%%admin.tpl.php new file mode 100644 index 0000000..463df5d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%9A^9AE^9AEF97D8%%admin.tpl.php @@ -0,0 +1,13 @@ + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%9E^9E2^9E27C8E6%%SearchBlock.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%9E^9E2^9E27C8E6%%SearchBlock.tpl.php new file mode 100644 index 0000000..834fd3d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%9E^9E2^9E27C8E6%%SearchBlock.tpl.php @@ -0,0 +1,45 @@ + +_tpl_vars['showAdvancedLink'] )): ?> assign('showAdvancedLink', 'true'); ?> _tag_stack[] = array('addToTrailer', array(), $this); $_block_repeat=true; $this->_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], null, $this, $_block_repeat); while ($_block_repeat) { ob_start();?> + +_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], $_obj_block_content, $this, $_block_repeat);} array_pop($this->_tag_stack);?> + +
+
+
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="search_SearchBlock"/> + +" +value="_reg_objects['g'][0]->text(array('text' => 'Search the Gallery'), $this);?> +" +onfocus="search_SearchBlock_focus()" +onblur="search_SearchBlock_blur()" +class="textbox"/> + +" value="1" /> +
+_tpl_vars['showAdvancedLink']): ?> + + +
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%BE^BEF^BEF33303%%NavigationLinks.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%BE^BEF^BEF33303%%NavigationLinks.tpl.php new file mode 100644 index 0000000..219188e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%BE^BEF^BEF33303%%NavigationLinks.tpl.php @@ -0,0 +1,22 @@ + +_tpl_vars['navigationLinks'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Navigation'), $this);?> +

+
    +_tpl_vars['navigationLinks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['link']): +?> +
  • + +_tpl_vars['link']['name']; ?> + + +
  • + +
+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%CD^CD7^CD714190%%SiteAdmin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%CD^CD7^CD714190%%SiteAdmin.tpl.php new file mode 100644 index 0000000..3d62cb7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%CD^CD7^CD714190%%SiteAdmin.tpl.php @@ -0,0 +1,69 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/SiteAdmin.tpl', 8, false),)), $this); ?> +
+"> +
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + +_tpl_vars['controller'] )): ?> + +_tpl_vars['form']['formName'] )): ?> + +" value="_tpl_vars['form']['formName']; ?> +" /> + +
+ + + + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Admin Options'), $this);?> +

+ +
+_reg_objects['g'][0]->block(array('type' => "core.NavigationLinks",'class' => 'gbBlock','navigationLinks' => $this->_tpl_vars['SiteAdmin']['navigationLinks']), $this);?> + +
+
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['SiteAdmin']['viewBodyFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['SiteAdmin']['viewL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%D5^D56^D560652F%%JavaScriptWarning.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%D5^D56^D560652F%%JavaScriptWarning.tpl.php new file mode 100644 index 0000000..8f5a6cc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%D5^D56^D560652F%%JavaScriptWarning.tpl.php @@ -0,0 +1,8 @@ + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%DA^DA3^DA35DB4F%%AdminPluginsLegend.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%DA^DA3^DA35DB4F%%AdminPluginsLegend.tpl.php new file mode 100644 index 0000000..2051b27 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%DA^DA3^DA35DB4F%%AdminPluginsLegend.tpl.php @@ -0,0 +1,34 @@ + +
+ +_reg_objects['g'][0]->text(array('text' => 'up to date'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'disabled'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'upgrade required'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'not installed'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'incompatible'), $this);?> + + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%EF^EFB^EFB895FB%%EmergencyEditItemLink.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%EF^EFB^EFB895FB%%EmergencyEditItemLink.tpl.php new file mode 100644 index 0000000..3476d6f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%EF^EFB^EFB895FB%%EmergencyEditItemLink.tpl.php @@ -0,0 +1,14 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/EmergencyEditItemLink.tpl', 8, false),)), $this); ?> +_tpl_vars['item'] )): ?> assign('item', $this->_tpl_vars['theme']['item']); ?> _reg_objects['g'][0]->callback(array('type' => "core.ShouldShowEmergencyEditItemLink",'permissions' => ((is_array($_tmp=@$this->_tpl_vars['permissions'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['permissions']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['permissions'])),'checkBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, null) : smarty_modifier_default($_tmp, null)),'checkSidebarBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkSidebarBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, false) : smarty_modifier_default($_tmp, false)),'checkAlbumBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkAlbumBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, false) : smarty_modifier_default($_tmp, false)),'checkPhotoBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkPhotoBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, false) : smarty_modifier_default($_tmp, false))), $this);?> + +_tpl_vars['block']['core']['ShouldShowEmergencyEditItemLink'] )): ?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F0^F04^F0401ED2%%album_armarios.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F0^F04^F0401ED2%%album_armarios.tpl.php new file mode 100644 index 0000000..12e662b --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F0^F04^F0401ED2%%album_armarios.tpl.php @@ -0,0 +1,92 @@ + + array(array('modifier', 'default', 'gallery:themes/abeto/templates/album_armarios.tpl', 47, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/album_armarios.tpl', 47, false),array('modifier', 'entitytruncate', 'gallery:themes/abeto/templates/album_armarios.tpl', 56, false),)), $this); ?> + +_tpl_vars['theme']['children'] )): ?> + +assign('firstAlbum', true); $this->assign('currentYear', ""); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if ($this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstAlbum']): ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['theme']['item']['description'] )): ?> +
+

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + + + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F0^F06^F06B1FBE%%frontpage.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F0^F06^F06B1FBE%%frontpage.tpl.php new file mode 100644 index 0000000..7e7bdfc --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F0^F06^F06B1FBE%%frontpage.tpl.php @@ -0,0 +1,83 @@ + + array(array('modifier', 'replace', 'gallery:themes/abeto/templates/frontpage.tpl', 69, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/frontpage.tpl', 98, false),)), $this); ?> +_tpl_vars['theme']['children'] )): ?> + + + + + + +'; ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['theme']['item']['description'] )): ?> +
+

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F4^F4B^F4B9B8C9%%theme.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F4^F4B^F4B9B8C9%%theme.tpl.php new file mode 100644 index 0000000..ed63caf --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%F4^F4B^F4B9B8C9%%theme.tpl.php @@ -0,0 +1,80 @@ + + array(array('modifier', 'markup', 'gallery:themes/abeto/templates/theme.tpl', 15, false),array('modifier', 'default', 'gallery:themes/abeto/templates/theme.tpl', 15, false),)), $this); ?> + + + + +_reg_objects['g'][0]->head(array(), $this);?> + +_tpl_vars['head']['title'] )): ?> +<?php echo ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> + + + +"/> + +"/> + +"/> + + + +
_reg_objects['g'][0]->mainDivAttributes(array(), $this);?> +> +_tpl_vars['theme']['useFullScreen']): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['theme']['moduleTemplate']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['theme']['moduleL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + elseif ($this->_tpl_vars['theme']['pageType'] == 'progressbar'): echo $this->_reg_objects['g'][0]->theme(array('include' => "header.tpl"), $this);?> + +
+_reg_objects['g'][0]->theme(array('include' => "progressbar.tpl"), $this);?> + +
+_reg_objects['g'][0]->theme(array('include' => "header.tpl"), $this);?> + +
+_tpl_vars['theme']['parents'] ) && $this->_tpl_vars['theme']['pageType'] == 'album' )): echo $this->_reg_objects['g'][0]->theme(array('include' => "frontpage.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album' ) && ( $this->_tpl_vars['theme']['item']['title'] == 'Contacto' )): echo $this->_reg_objects['g'][0]->theme(array('include' => "contacto.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album' ) && ( $this->_tpl_vars['theme']['item']['title'] == 'Armarios' )): ?> +_reg_objects['g'][0]->theme(array('include' => "album_armarios.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album'): echo $this->_reg_objects['g'][0]->theme(array('include' => "album.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'photo'): echo $this->_reg_objects['g'][0]->theme(array('include' => "photo.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'admin'): echo $this->_reg_objects['g'][0]->theme(array('include' => "admin.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'module'): echo $this->_reg_objects['g'][0]->theme(array('include' => "module.tpl"), $this);?> + +_tpl_vars['user']['isRegisteredUser']): if (empty ( $this->_tpl_vars['theme']['parents'] )): ?> + + + + +
+
+_reg_objects['g'][0]->trailer(array(), $this);?> + +_reg_objects['g'][0]->debug(array(), $this);?> + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%FD^FD9^FD9328A6%%BreadCrumb.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%FD^FD9^FD9328A6%%BreadCrumb.tpl.php new file mode 100644 index 0000000..60aa797 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/%%FD^FD9^FD9328A6%%BreadCrumb.tpl.php @@ -0,0 +1,36 @@ + + array(array('function', 'counter', 'gallery:modules/core/templates/blocks/BreadCrumb.tpl', 16, false),array('modifier', 'markup', 'gallery:modules/core/templates/blocks/BreadCrumb.tpl', 17, false),array('modifier', 'default', 'gallery:modules/core/templates/blocks/BreadCrumb.tpl', 17, false),)), $this); ?> +
+_tpl_vars['theme']['parents']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }$this->_foreach['parent'] = array('total' => count($_from), 'iteration' => 0); +if ($this->_foreach['parent']['total'] > 0): + foreach ($_from as $this->_tpl_vars['parent']): + $this->_foreach['parent']['iteration']++; + if (! ($this->_foreach['parent']['iteration'] == $this->_foreach['parent']['total'])): ?> + +_tpl_vars['parent']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['parent']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['parent']['pathComponent'])); ?> + + + +_tpl_vars['parent']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['parent']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['parent']['pathComponent'])); ?> + +_tpl_vars['separator'] )): ?> _tpl_vars['separator']; ?> + _tpl_vars['theme']['pageType'] == 'admin' || $this->_tpl_vars['theme']['pageType'] == 'module' )): ?> + "itemId=".($this->_tpl_vars['theme']['item']['id'])), $this);?> +" class="BreadCrumb- 'BreadCrumb'), $this);?> +"> +_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> + + + +_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> + + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/v_12 b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%2853034820/v_12 new file mode 100644 index 0000000..e69de29 diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%324985928/%%94^948^948A9951%%Htaccess.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%324985928/%%94^948^948A9951%%Htaccess.tpl.php new file mode 100644 index 0000000..d675e47 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%324985928/%%94^948^948A9951%%Htaccess.tpl.php @@ -0,0 +1,39 @@ + + array(array('modifier', 'implode', 'Htaccess.tpl', 26, false),)), $this); ?> +# BEGIN Url Rewrite section +# (Automatically generated. Do not edit this section) + +_tpl_vars['Htaccess']['needOptions']): ?> + Options +FollowSymlinks + + RewriteEngine On + + RewriteBase _tpl_vars['Htaccess']['rewriteBase']; ?> + + + RewriteCond %{REQUEST_FILENAME} -f [OR] + RewriteCond %{REQUEST_FILENAME} -d [OR] + RewriteCond %{REQUEST_FILENAME} gallery\_remote2\.php + RewriteCond %{REQUEST_URI} !_tpl_vars['Htaccess']['matchBaseFile']; ?> +$ + RewriteRule . - [L] + +_tpl_vars['Htaccess']['rules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['rule']): + if (! empty ( $this->_tpl_vars['rule']['conditions'] )): $_from = $this->_tpl_vars['rule']['conditions']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['condition']): +?> + RewriteCond %{_tpl_vars['condition']['test']; ?> +} _tpl_vars['condition']['pattern']; if (! empty ( $this->_tpl_vars['condition']['flags'] )): ?> [_tpl_vars['condition']['flags'], ","); ?> +] + + + RewriteRule . _tpl_vars['rule']['substitution']; if (! empty ( $this->_tpl_vars['rule']['flags'] )): ?> [_tpl_vars['rule']['flags'], ","); ?> +] + + + + +# END Url Rewrite section diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%324985928/v_12 b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%324985928/v_12 new file mode 100644 index 0000000..e69de29 diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%3421186428/%%94^948^948A9951%%Htaccess.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%3421186428/%%94^948^948A9951%%Htaccess.tpl.php new file mode 100644 index 0000000..239307a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%3421186428/%%94^948^948A9951%%Htaccess.tpl.php @@ -0,0 +1,39 @@ + + array(array('modifier', 'implode', 'Htaccess.tpl', 26, false),)), $this); ?> +# BEGIN Url Rewrite section +# (Automatically generated. Do not edit this section) + +_tpl_vars['Htaccess']['needOptions']): ?> + Options +FollowSymlinks + + RewriteEngine On + + RewriteBase _tpl_vars['Htaccess']['rewriteBase']; ?> + + + RewriteCond %{REQUEST_FILENAME} -f [OR] + RewriteCond %{REQUEST_FILENAME} -d [OR] + RewriteCond %{REQUEST_FILENAME} gallery\_remote2\.php + RewriteCond %{REQUEST_URI} !_tpl_vars['Htaccess']['matchBaseFile']; ?> +$ + RewriteRule . - [L] + +_tpl_vars['Htaccess']['rules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['rule']): + if (! empty ( $this->_tpl_vars['rule']['conditions'] )): $_from = $this->_tpl_vars['rule']['conditions']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['condition']): +?> + RewriteCond %{_tpl_vars['condition']['test']; ?> +} _tpl_vars['condition']['pattern']; if (! empty ( $this->_tpl_vars['condition']['flags'] )): ?> [_tpl_vars['condition']['flags'], ","); ?> +] + + + RewriteRule . _tpl_vars['rule']['substitution']; if (! empty ( $this->_tpl_vars['rule']['flags'] )): ?> [_tpl_vars['rule']['flags'], ","); ?> +] + + + + +# END Url Rewrite section diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%3421186428/v_12 b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%3421186428/v_12 new file mode 100644 index 0000000..e69de29 diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%06^06A^06A27A3B%%SelectAlbum.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%06^06A^06A27A3B%%SelectAlbum.tpl.php new file mode 100644 index 0000000..cb2a2f7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%06^06A^06A27A3B%%SelectAlbum.tpl.php @@ -0,0 +1,63 @@ + + array(array('modifier', 'repeat', 'gallery:modules/publishxp/templates/SelectAlbum.tpl', 31, false),array('modifier', 'default', 'gallery:modules/publishxp/templates/SelectAlbum.tpl', 32, false),)), $this); ?> +
+
+ +_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="_tpl_vars['form']['formName']; ?> +"/> + +" value="1"/> +
+
+
+ + + +" value="_reg_objects['g'][0]->text(array('text' => 'New Album'), $this);?> +"/> +_tpl_vars['form']['error']['albumId']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must select an album'), $this);?> + +
+ +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%08^087^087DA4DD%%AdminRewrite.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%08^087^087DA4DD%%AdminRewrite.tpl.php new file mode 100644 index 0000000..faab937 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%08^087^087DA4DD%%AdminRewrite.tpl.php @@ -0,0 +1,306 @@ + + array(array('function', 'cycle', 'gallery:modules/rewrite/templates/AdminRewrite.tpl', 98, false),array('function', 'counter', 'gallery:modules/rewrite/templates/AdminRewrite.tpl', 198, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'URL Rewrite Administration'), $this);?> +

+
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['saved'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Successfully saved settings'), $this);?> + + +

+_tpl_vars['form']['error'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'An error occured while trying to save your settings'), $this);?> +

+
+_tpl_vars['AdminRewrite']['errors'] )): $_from = $this->_tpl_vars['AdminRewrite']['errors']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['errstr']): + echo $this->_tpl_vars['errstr']; ?> +
+_tpl_vars['form']['error']['dupe'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Duplicate URL patterns."), $this);?> + +_tpl_vars['form']['error']['empty'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Empty URL pattern."), $this);?> + + +
+
+ +
+_tpl_vars['AdminRewrite']['mode'] == 'rules' )): ?> + +_reg_objects['g'][0]->text(array('text' => 'Rules'), $this);?> + + + + + "subView=rewrite.AdminRewrite",'arg3' => "mode=rules"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Rules'), $this);?> + + +_tpl_vars['AdminRewrite']['mode'] == 'setup' )): ?> + +_reg_objects['g'][0]->text(array('text' => 'Setup'), $this);?> + + + + + "subView=rewrite.AdminRewrite",'arg3' => "mode=setup"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Setup'), $this);?> + + +_tpl_vars['AdminRewrite']['mode'] == 'test' )): ?> + +_reg_objects['g'][0]->text(array('text' => 'Test'), $this);?> + + + + + "subView=rewrite.AdminRewrite",'arg3' => "mode=test"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Test'), $this);?> + + + +
+_tpl_vars['AdminRewrite']['mode'] == 'rules'): ?> +
+

+_reg_objects['g'][0]->text(array('text' => "Short URLs are compiled out of predefined keywords. Modules may provide additional keywords. Keywords are escaped with % (eg: %itemId%)."), $this);?> + +

+_tpl_vars['AdminRewrite']['parserId'] == 'pathinfo'): ?> +

+_reg_objects['g'][0]->text(array('text' => "It is recomended that you don't activate the 'Download Item' URL since it will slow down Gallery."), $this);?> + +

+_tpl_vars['AdminRewrite']['parserId'] == 'isapirewrite'): ?> +

+_reg_objects['g'][0]->text(array('text' => "A pattern may not begin with a keyword."), $this);?> + +

+ + +assign('group', ""); $_from = $this->_tpl_vars['form']['rules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['moduleId'] => $this->_tpl_vars['rules']): + if (! empty ( $this->_tpl_vars['group'] )): ?> + +assign('group', $this->_tpl_vars['moduleId']); ?> + + + + + + + + +_tpl_vars['rules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['ruleId'] => $this->_tpl_vars['rule']): + echo smarty_function_cycle(array('values' => "gbEven,gbOdd",'assign' => 'rowClass'), $this);?> + + + + + + + + + + + + + +
 

_tpl_vars['AdminRewrite']['modules'][$this->_tpl_vars['moduleId']]; ?> +

_reg_objects['g'][0]->text(array('text' => 'Active'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Help'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'View'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'URL Pattern'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Additional Keywords'), $this);?> +
+assign('match', $this->_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['match']); if (isset ( $this->_tpl_vars['form']['error']['conditions']['dupe'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['pattern']['dupe'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['pattern']['empty'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['1'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] ) || isset ( $this->_tpl_vars['form']['error']['3'][$this->_tpl_vars['match']] ) || isset ( $this->_tpl_vars['form']['error']['4'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']] )): ?> +
+">
+_tpl_vars['rule']['active'] )): ?> +
+">
+ +
+">
+ +
+_tpl_vars['moduleId'])."][".($this->_tpl_vars['ruleId'])."][active]"), $this);?> +" _tpl_vars['rule']['active'] )): ?>checked="checked"/> + ++ + +_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['comment']; ?> + + +_tpl_vars['rule']['pattern'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'No URL Pattern'), $this);?> + +_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['locked'] )): ?> +_tpl_vars['moduleId'])."][".($this->_tpl_vars['ruleId'])."][pattern]"), $this);?> +" value="_tpl_vars['rule']['pattern']; ?> +"/> + + +_tpl_vars['moduleId'])."][".($this->_tpl_vars['ruleId'])."][pattern]"), $this);?> +" value="_tpl_vars['rule']['pattern']; ?> +"/> + + +_tpl_vars['AdminRewrite']['info'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['ruleId']]['keywords']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['keyword'] => $this->_tpl_vars['tmp']): +?> +%_tpl_vars['keyword']; ?> +% + +
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['AdminRewrite']['mode'] == 'setup'): if ($this->_tpl_vars['AdminRewrite']['parserType'] == 'preGallery'): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Approved referers'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Some rules only apply if the referer (the site that linked to the item) is something other than Gallery itself. Hosts in the list below will be treated as friendly referers."), $this);?> +
+

+

+_reg_objects['g'][0]->text(array('text' => "Warning: If you don't allow empty referer users won't be able to download nor play movies."), $this);?> + +

+

+ +" _tpl_vars['form']['allowEmptyReferer'] )): ?>checked="checked"/> +_reg_objects['g'][0]->text(array('text' => "Allow empty referer?"), $this);?> + +

+ + + 0,'assign' => 'i'), $this);?> + +_tpl_vars['form']['accessList']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['host']): +?> + + + false), $this);?> + + + + + + + + +
+" size="60" value="_tpl_vars['AdminRewrite']['serverName']; ?> +" disabled="disabled"/>
_tpl_vars['i'])."]"), $this);?> +" size="60" value="_tpl_vars['host']; ?> +"/>
_tpl_vars['i'])."]"), $this);?> +" size="60"/>
_tpl_vars['i']+1)."]"), $this);?> +" size="60"/>
_tpl_vars['i']+2)."]"), $this);?> +" size="60"/>
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Approved referers'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "The parser you have selected does not support a referer check."), $this);?> +
+

+
+_tpl_vars['AdminParser']['template'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['AdminParser']['template']), 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['AdminParser']['action'] )): ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['AdminRewrite']['mode'] == 'test'): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Test the Rewrite Parser Configuration'), $this);?> +

+
+_tpl_vars['TestResults']['template'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['TestResults']['template']), 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['TestResults']['action'] )): ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['TestResults']['refresh'] )): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Test again'), $this);?> +"/> + +
+

+_reg_objects['g'][0]->text(array('text' => "The selected URL Rewrite Parser does not provide any tests."), $this);?> +
+

+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%11^116^1168F4C7%%header.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%11^116^1168F4C7%%header.tpl.php new file mode 100644 index 0000000..ed30a6f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%11^116^1168F4C7%%header.tpl.php @@ -0,0 +1,17 @@ + +
+ + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1C^1C5^1C5E5B33%%contacto.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1C^1C5^1C5E5B33%%contacto.tpl.php new file mode 100644 index 0000000..db85bfe --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1C^1C5^1C5E5B33%%contacto.tpl.php @@ -0,0 +1,45 @@ + + +

Abeto Armarios

+

Plaza de San Juan de la Cruz, 8
+28003 MADRID

+

Tlf: 91 533 18 00
+Fax: 91 533 18 09

+
+ + +'; ?> + +
+_tpl_vars['user']['isRegisteredUser']): ?> +_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): +?> +_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + + + + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1E^1EE^1EE93659%%module.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1E^1EE^1EE93659%%module.tpl.php new file mode 100644 index 0000000..d4bb3f8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1E^1EE^1EE93659%%module.tpl.php @@ -0,0 +1,9 @@ + +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['theme']['moduleTemplate']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['theme']['moduleL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1F^1FF^1FF196FB%%ItemAddPublishXp.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1F^1FF^1FF196FB%%ItemAddPublishXp.tpl.php new file mode 100644 index 0000000..7ed026c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%1F^1FF^1FF196FB%%ItemAddPublishXp.tpl.php @@ -0,0 +1,48 @@ + +
+
+_reg_objects['g'][0]->text(array('text' => "Windows XP comes with a nice feature that allows you to publish content from your desktop directly to a web service. Follow the instructions below to enable this service on your Windows XP system."), $this);?> + +

+_reg_objects['g'][0]->text(array('text' => 'Step 1'), $this);?> +
+_reg_objects['g'][0]->text(array('text' => "Download the configuration file using right-click 'Save Target As...' Once downloaded, rename it to 'install_registry.reg'. If it asks you for confirmation about changing the file type, answer 'yes'. Right click on this file and you should see a menu appear. Select the Merge option (this should be at the top of the menu). It will ask you if you want to import these values into your registry. Click 'Ok'. It will tell you that the files were imported successfully. Click 'Ok' again."), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => "(for Windows Vista)"), $this); $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('vistaCaption', ob_get_contents());ob_end_clean(); ob_start(); echo $this->_reg_objects['g'][0]->text(array('text' => "(for Windows XP, Windows 2000 and earllier Windows versions)"), $this); $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('otherWindowsCaption', ob_get_contents());ob_end_clean(); ob_start(); if ($this->_tpl_vars['ItemAddPublishXp']['isUsingWindowsVista']): echo $this->_tpl_vars['vistaCaption']; ?> + +_tpl_vars['otherWindowsCaption']; ?> + +_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('captionForRecommendedVersion', ob_get_contents());ob_end_clean(); ob_start(); if ($this->_tpl_vars['ItemAddPublishXp']['isUsingWindowsVista']): echo $this->_tpl_vars['otherWindowsCaption']; ?> + +_tpl_vars['vistaCaption']; ?> + +_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('captionForAlternativeVersion', ob_get_contents());ob_end_clean(); ob_start(); echo $this->_reg_objects['g'][0]->text(array('text' => "Download [install_registry.reg]"), $this); $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('fileCaption', ob_get_contents());ob_end_clean(); ?> +

+

+

+_reg_objects['g'][0]->text(array('text' => 'Step 2'), $this);?> +
+_reg_objects['g'][0]->text(array('text' => "Open your Windows Explorer and browse to a folder containing supported images. Select the image(s) or a folder and there should be a link on the left that says 'Publish this file to the web...' Click this link and then follow the instructions to log into your Gallery, select an album and publish the image."), $this);?> + +

+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%21^21B^21B11A4A%%UserAdmin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%21^21B^21B11A4A%%UserAdmin.tpl.php new file mode 100644 index 0000000..c8112d7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%21^21B^21B11A4A%%UserAdmin.tpl.php @@ -0,0 +1,58 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/UserAdmin.tpl', 8, false),)), $this); ?> +
+"> +
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="_tpl_vars['form']['formName']; ?> +"/> +
+ + + + + +
+
+

_reg_objects['g'][0]->text(array('text' => 'User Options'), $this);?> +

+ +
+_reg_objects['g'][0]->block(array('type' => "core.NavigationLinks",'class' => 'gbBlock','navigationLinks' => $this->_tpl_vars['UserAdmin']['navigationLinks']), $this);?> + +
+
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['UserAdmin']['viewBodyFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['UserAdmin']['viewL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%26^261^2615E4E5%%AdminPlugins.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%26^261^2615E4E5%%AdminPlugins.tpl.php new file mode 100644 index 0000000..b831670 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%26^261^2615E4E5%%AdminPlugins.tpl.php @@ -0,0 +1,376 @@ + + array(array('modifier', 'escape', 'gallery:modules/core/templates/AdminPlugins.tpl', 11, false),array('modifier', 'capitalize', 'gallery:modules/core/templates/AdminPlugins.tpl', 152, false),array('function', 'cycle', 'gallery:modules/core/templates/AdminPlugins.tpl', 147, false),)), $this); ?> + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Gallery Plugins'), $this);?> +

+
+
+ +_reg_objects['g'][0]->text(array('text' => 'Plugins'), $this);?> + + + + + "subView=core.AdminRepository"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Get More Plugins'), $this);?> + +_smarty_vars['capture']['getMoreLink'] = ob_get_contents(); ob_end_clean(); echo $this->_smarty_vars['capture']['getMoreLink']; ?> + + +
+_tpl_vars['AdminPlugins']['showGetMorePluginsTip']): ?> +
+

+

+_reg_objects['g'][0]->text(array('text' => "Want more features? New plugins are just a click away. Just click the %s link to get started.",'arg1' => $this->_smarty_vars['capture']['getMoreLink']), $this);?> + +

+

+
+ +
+

+_reg_objects['g'][0]->text(array('text' => "Gallery features come as separate plugins. You can download and install plugins to add more features to your Gallery, or you can disable features if you don't want to use them. In order to use a feature, you must install, configure (if necessary) and activate it. If you don't wish to use a feature, you can deactivate it."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/JavaScriptWarning.tpl", 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/AdminPluginsLegend.tpl", 'smarty_include_vars' => array('legendId' => 'top'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +assign('group', ""); $_from = $this->_tpl_vars['AdminPlugins']['plugins']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['plugin']): + if ($this->_tpl_vars['group'] != $this->_tpl_vars['plugin']['group']): if (! empty ( $this->_tpl_vars['group'] )): ?> + + + + + + + + + + + + +assign('group', $this->_tpl_vars['plugin']['group']); ?> + +"> + + + + + + + + +
 

_tpl_vars['plugin']['groupLabel']; ?> +

  _reg_objects['g'][0]->text(array('text' => 'Plugin Name'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Installed'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Version'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Description'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Actions'), $this);?> +
+
+
+ +_tpl_vars['plugin']['screenshot'] )): echo $this->_tpl_vars['plugin']['name']; ?> + + +_tpl_vars['plugin']['name']; ?> + +_reg_objects['g'][0]->text(array('text' => "Screenshot for %s",'arg1' => $this->_tpl_vars['plugin']['name']), $this); $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('screenshotLabel', ob_get_contents());ob_end_clean(); ?> + + + +_tpl_vars['plugin']['installedVersion']; ?> + + +_tpl_vars['plugin']['version']; ?> + + +_tpl_vars['plugin']['description']; ?> + +_tpl_vars['plugin']['state'] == 'incompatible'): ?> +
+ +_reg_objects['g'][0]->text(array('text' => "Incompatible plugin!"), $this);?> + +_tpl_vars['plugin']['api']['required']['core'] != $this->_tpl_vars['plugin']['api']['provided']['core']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Core API Required: %s (available: %s)",'arg1' => $this->_tpl_vars['plugin']['api']['required']['core'],'arg2' => $this->_tpl_vars['plugin']['api']['provided']['core']), $this);?> + +_tpl_vars['plugin']['api']['required']['plugin'] != $this->_tpl_vars['plugin']['api']['provided']['plugin']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Plugin API Required: %s (available: %s)",'arg1' => $this->_tpl_vars['plugin']['api']['required']['plugin'],'arg2' => $this->_tpl_vars['plugin']['api']['provided']['plugin']), $this);?> + + +
+ +
+_tpl_vars['plugin']['type'] == 'module' && $this->_tpl_vars['plugin']['id'] == 'core' ) || $this->_tpl_vars['plugin']['state'] == 'incompatible' || ( $this->_tpl_vars['plugin']['type'] == 'theme' && $this->_tpl_vars['plugin']['id'] == $this->_tpl_vars['AdminPlugins']['defaultTheme'] && $this->_tpl_vars['plugin']['state'] == 'active' )): ?> +  + + + + + + + +_tpl_vars['AdminPlugins']['canDeletePlugins']): ?> + + + +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/AdminPluginsLegend.tpl", 'smarty_include_vars' => array('legendId' => 'bottom'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%29^29E^29E4BE05%%UserLogin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%29^29E^29E4BE05%%UserLogin.tpl.php new file mode 100644 index 0000000..0f7464c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%29^29E^29E4BE05%%UserLogin.tpl.php @@ -0,0 +1,87 @@ + + array(array('modifier', 'cat', 'gallery:modules/core/templates/UserLogin.tpl', 50, false),array('modifier', 'default', 'gallery:modules/core/templates/UserLogin.tpl', 65, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Login to your account'), $this);?> +

+
+_reg_objects['g'][0]->url(array('arg1' => "view=core.UserAdmin",'arg2' => "subView=core.UserRecoverPassword",'arg3' => "return=1"), $this); $this->_smarty_vars['capture']['recoverUrl'] = ob_get_contents(); ob_end_clean(); if ($this->_tpl_vars['user']['isGuest']): ?> + + +" value="_tpl_vars['form']['returnUrl']; ?> +"/> +
+_tpl_vars['status']['passwordRecovered'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Your password has been recovered, please login."), $this);?> + +

+ +

_reg_objects['g'][0]->text(array('text' => 'Username'), $this);?> +

+ +" value="_tpl_vars['form']['username']; ?> +"/> + +_tpl_vars['form']['error']['username']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a username'), $this);?> + +
+_tpl_vars['form']['error']['username']['disabled'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Logins to this account are temporarily disabled due to multiple failed login attempts. Wait for access to be restored, or use the recover password page to re-enable this account.",'arg1' => $this->_smarty_vars['capture']['recoverUrl']), $this);?> + +
+ +

_reg_objects['g'][0]->text(array('text' => 'Password'), $this);?> +

+ +"/> +_tpl_vars['form']['error']['password']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a password'), $this);?> + +
+_tpl_vars['form']['error']['invalidPassword'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Your login information is incorrect. Please try again."), $this);?> + +
+ +
+_reg_objects['g'][0]->callback(array('type' => "core.LoadValidationPlugins",'key' => ((is_array($_tmp="core.UserLogin.")) ? $this->_run_mod_handler('cat', true, $_tmp, $this->_tpl_vars['form']['username']) : smarty_modifier_cat($_tmp, $this->_tpl_vars['form']['username']))), $this);?> + +_tpl_vars['block']['core']['ValidationPlugins']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['plugin']): + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['plugin']['file']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['plugin']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endforeach; endif; unset($_from); ?> +
+_reg_objects['g'][0]->text(array('text' => "Lost or forgotten passwords can be retrieved using the recover password page",'arg1' => $this->_smarty_vars['capture']['recoverUrl']), $this);?> + +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Login'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> +
+
+

_reg_objects['g'][0]->text(array('text' => "Welcome, %s!",'arg1' => ((is_array($_tmp=@$this->_tpl_vars['user']['fullName'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['user']['userName']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['user']['userName']))), $this);?> +

+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2A^2A4^2A496925%%Header.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2A^2A4^2A496925%%Header.tpl.php new file mode 100644 index 0000000..fd007e0 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2A^2A4^2A496925%%Header.tpl.php @@ -0,0 +1,25 @@ + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2A^2A4^2A4DC34E%%ItemEditCaptions.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2A^2A4^2A4DC34E%%ItemEditCaptions.tpl.php new file mode 100644 index 0000000..a640cc2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2A^2A4^2A4DC34E%%ItemEditCaptions.tpl.php @@ -0,0 +1,166 @@ + +
+

+_reg_objects['g'][0]->text(array('text' => 'Edit Captions'), $this);?> + +_tpl_vars['ItemEditCaptions']['numPages'] > 1 )): echo $this->_reg_objects['g'][0]->text(array('text' => "(page %d of %d)",'arg1' => $this->_tpl_vars['ItemEditCaptions']['page'],'arg2' => $this->_tpl_vars['ItemEditCaptions']['numPages']), $this);?> + + +

+
+_tpl_vars['status'] )): ?> +
+_tpl_vars['status']['errorCount'] > 0): ?> +

+_tpl_vars['status']['successCount'] > 0): echo $this->_reg_objects['g'][0]->text(array('text' => 'There were errors saving some items'), $this);?> + +_reg_objects['g'][0]->text(array('text' => 'There were errors saving all items'), $this);?> + + +

+_tpl_vars['status']['successCount'] > 0): ?> +

+_reg_objects['g'][0]->text(array('text' => 'Successfully saved all items'), $this);?> + +

+ +
+_tpl_vars['form']['items'] )): ?> +
+

+_reg_objects['g'][0]->text(array('text' => 'This album contains no items'), $this);?> + +

+
+ + + +" value="EditCaption"/> + +" value="_tpl_vars['form']['numPerPage']; ?> +"/> +_tpl_vars['form']['items']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }$this->_foreach['itemLoop'] = array('total' => count($_from), 'iteration' => 0); +if ($this->_foreach['itemLoop']['total'] > 0): + foreach ($_from as $this->_tpl_vars['item']): + $this->_foreach['itemLoop']['iteration']++; +?> +
+_tpl_vars['item']['id'])."][serialNumber]"), $this);?> +" value="_tpl_vars['item']['serialNumber']; ?> +"/> +_tpl_vars['item']['thumbnail'] )): echo ''; endif; ?> +

_reg_objects['g'][0]->text(array('text' => 'Title'), $this);?> +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => "title_".($this->_tpl_vars['item']['id']),'firstMarkupBar' => ($this->_foreach['itemLoop']['iteration'] <= 1)))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +_tpl_vars['item']['id'])."][title]"), $this);?> +" value="_tpl_vars['item']['title']; ?> +"/> +

_reg_objects['g'][0]->text(array('text' => 'Summary'), $this);?> +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => "summary_".($this->_tpl_vars['item']['id']),'firstMarkupBar' => false))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +_tpl_vars['item']['id'])."][summary]"), $this);?> +" value="_tpl_vars['item']['summary']; ?> +"/> +

_reg_objects['g'][0]->text(array('text' => 'Keywords'), $this);?> +

+ +

_reg_objects['g'][0]->text(array('text' => 'Description'), $this);?> +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => "description_".($this->_tpl_vars['item']['id']),'firstMarkupBar' => false))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +_tpl_vars['status'][$this->_tpl_vars['item']['id']]['saved'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Saved successfully."), $this);?> + +
+_tpl_vars['status'][$this->_tpl_vars['item']['id']]['obsolete'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "This item was modified by somebody else at the same time. Your changes were lost."), $this);?> + +
+_tpl_vars['status'][$this->_tpl_vars['item']['id']]['permissionDenied'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You do not have permissions to modify this item."), $this);?> + +
+ +
+ + +
+_tpl_vars['ItemEditCaptions']['canCancel']): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Save and Done'), $this);?> +"/> + + +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +_tpl_vars['ItemEditCaptions']['page'] > 1 )): ?> + +" +value="« _reg_objects['g'][0]->text(array('text' => "Save and Edit Previous %s",'arg1' => $this->_tpl_vars['form']['numPerPage']), $this);?> +"/> +_tpl_vars['ItemEditCaptions']['page'] < $this->_tpl_vars['ItemEditCaptions']['numPages'] )): ?> + +" +value="_reg_objects['g'][0]->text(array('text' => "Save and Edit Next %s",'arg1' => $this->_tpl_vars['form']['numPerPage']), $this);?> + »"/> +_tpl_vars['ItemEditCaptions']['canCancel']): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2D^2DF^2DFFCF83%%AdminRepository.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2D^2DF^2DFFCF83%%AdminRepository.tpl.php new file mode 100644 index 0000000..80f9fb9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%2D^2DF^2DFFCF83%%AdminRepository.tpl.php @@ -0,0 +1,358 @@ + + array(array('function', 'cycle', 'gallery:modules/core/templates/AdminRepository.tpl', 249, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Repository'), $this);?> +

+
+_tpl_vars['status']['error'] )): ?> +
+

+_tpl_vars['status']['error']['download'] )): $_from = $this->_tpl_vars['status']['error']['download']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['error']): + echo $this->_tpl_vars['error']; ?> +
+_reg_objects['g'][0]->text(array('text' => "Please make sure that your internet connection is set up properly or try again later."), $this);?> +
+_tpl_vars['status']['error']['scanPlugin'] )): $_from = $this->_tpl_vars['status']['error']['scanPlugin']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['pluginId']): + echo $this->_reg_objects['g'][0]->text(array('text' => "Failed to scan status from plugin: %s.",'arg1' => $this->_tpl_vars['pluginId']), $this);?> +
+_tpl_vars['status']['error']['repositoryInitErrorCount'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Your local copy of the repository was broken and has been fixed. Please download the plugin list again."), $this);?> + + +

+_tpl_vars['status']['error']['failedToDownload'] )): $_from = $this->_tpl_vars['status']['error']['failedToDownload']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }$this->_foreach['plugin'] = array('total' => count($_from), 'iteration' => 0); +if ($this->_foreach['plugin']['total'] > 0): + foreach ($_from as $this->_tpl_vars['pluginName'] => $this->_tpl_vars['failedFiles']): + $this->_foreach['plugin']['iteration']++; +?> +

_reg_objects['g'][0]->text(array('text' => "Failed to download the %s plugin because the following files/directories could not be modified:",'arg1' => $this->_tpl_vars['pluginName']), $this);?> +

+
    +_tpl_vars['failedFiles']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['file']): +?> +
  • _tpl_vars['file']; ?> + (unable to download)
  • + +
+_foreach['plugin']['iteration'] == $this->_foreach['plugin']['total'])): ?>
_tpl_vars['status']['error']['failedToInstall'] )): $_from = $this->_tpl_vars['status']['error']['failedToInstall']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }$this->_foreach['plugin'] = array('total' => count($_from), 'iteration' => 0); +if ($this->_foreach['plugin']['total'] > 0): + foreach ($_from as $this->_tpl_vars['pluginName'] => $this->_tpl_vars['failedFiles']): + $this->_foreach['plugin']['iteration']++; +?> +

_reg_objects['g'][0]->text(array('text' => "Failed to download the %s plugin because the following files/directories could not be modified:",'arg1' => $this->_tpl_vars['pluginName']), $this);?> +

+
    +_tpl_vars['failedFiles']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['file']): +?> +
  • _tpl_vars['file']; ?> +
  • + +
+_foreach['plugin']['iteration'] == $this->_foreach['plugin']['total'])): ?>
_tpl_vars['status']['error']['cantUpgradeInUse'] )): ?> +

Some plugins could not be automatically upgraded because they are in use. Please return to the "subView=core.AdminPlugins"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Plugins'), $this);?> + page and click the _reg_objects['g'][0]->text(array('text' => 'upgrade'), $this);?> + link for each of the following plugins:

+
    +_tpl_vars['status']['error']['cantUpgradeInUse']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['pluginName']): +?> +
  • _tpl_vars['pluginName']; ?> +
  • + +
+ +
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['indexUpdated'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "The repository index has been successfully updated."), $this);?> + +_tpl_vars['status']['noUpgradeAvailable'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "All plugins are already up-to-date."), $this);?> + +_tpl_vars['status']['updated'] )): $_from = $this->_tpl_vars['status']['updated']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['item']): +?> +

+_reg_objects['g'][0]->text(array('text' => "%s plugin updated.",'arg1' => $this->_tpl_vars['item']), $this);?> + +

+_tpl_vars['status']['languagePacksDeleted'] )): ?> +

+_reg_objects['g'][0]->text(array('one' => "%d language pack deleted.",'many' => "%d language packs deleted.",'count' => $this->_tpl_vars['status']['languagePacksDeleted'],'arg1' => $this->_tpl_vars['status']['languagePacksDeleted']), $this);?> + +

+ +

+ +
+ + "subView=core.AdminPlugins"), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => 'Plugins'), $this);?> + + + + +_reg_objects['g'][0]->text(array('text' => 'Get More Plugins'), $this);?> + + +
+
+

+_reg_objects['g'][0]->text(array('text' => "No personal information about you or your Gallery installation is sent to the Gallery server at any time."), $this);?> +_smarty_vars['capture']['noPersonalInfoTransmitted'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "Download and install new plugins quickly and easily. If you decide you don't like a plugin, you can delete it from your Gallery. There are multiple different plugin repositories, you can choose which ones you want to use (it's ok to use all of them at once). Once you've chosen, you must periodically download the latest plugin list to find out about available updates. %s On slower connections the process might take a minute or two.",'arg1' => $this->_smarty_vars['capture']['noPersonalInfoTransmitted']), $this);?> + +

+
+ +" _tpl_vars['form']['repositories']['released'] )): ?>checked="checked" value="released"> + + +
+ +" _tpl_vars['form']['repositories']['experimental'] )): ?>checked="checked" value="experimental"> + + +
+ +" _tpl_vars['form']['repositories']['community'] )): ?>checked="checked" value="community"> + + +
+

+ + +

+
+ +
+_tpl_vars['AdminRepository']['writeable']['modules'] || ! $this->_tpl_vars['AdminRepository']['writeable']['themes']): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Configure your Gallery'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Before you can proceed, you have to change some permissions so that Gallery can install plugins for you. It's easy. Just execute the following in a shell or via your ftp client:"), $this);?> + +

+

+ +cd gallery2
+_tpl_vars['AdminRepository']['writeable']['modules']): ?>chmod 777 modules
_tpl_vars['AdminRepository']['writeable']['themes']): ?>chmod 777 themes
+
+

+

+_reg_objects['g'][0]->text(array('text' => "If you have trouble changing permissions, ask your system administrator for assistance. When you've fixed the permissions, click the Continue button to proceed."), $this);?> + +

+
+
+ "subView=core.AdminRepository"), $this);?> +'" value="_reg_objects['g'][0]->text(array('text' => 'Continue'), $this);?> +" /> +
+ +
+ +" value="_tpl_vars['AdminRepository']['indexMetaData'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Update Plugin List'), $this); else: echo $this->_reg_objects['g'][0]->text(array('text' => 'Download Plugin List'), $this); endif; ?>"/> + +
+_tpl_vars['AdminRepository']['indexMetaData'] )): if ($this->_tpl_vars['AdminRepository']['isCoreUpgradeAvailable']): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Upgrade Gallery'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "A new version of Gallery is available, but it cannot be upgraded through this interface. Upgrading it might make some of your current plugins stop working, but others that rely on the features of the new version may become available. Here are the recommended steps for upgrading:"), $this);?> + +

+

+

    +
  1. _reg_objects['g'][0]->text(array('text' => "%sDownload%s the new Gallery package",'arg1' => "",'arg2' => ""), $this);?> +
  2. +
  3. _reg_objects['g'][0]->text(array('text' => "Read the %supgrade instructions%s and perform the upgrade",'arg1' => "",'arg2' => ""), $this);?> +
  4. +
+

+
+ +
+_tpl_vars['AdminRepository']['browseData'] )): ?> +

+_tpl_vars['AdminRepository']['isCoreUpgradeAvailable']): if (isset ( $this->_tpl_vars['AdminRepository']['showIncompatible'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Incompatible plugins are marked with an exclamation icon."), $this);?> + + "subView=core.AdminRepository",'arg3' => "coreApi=".($this->_tpl_vars['AdminRepository']['latestCoreApiVersion']),'arg4' => "themeApi=".($this->_tpl_vars['AdminRepository']['latestThemeApiVersion']),'arg5' => "moduleApi=".($this->_tpl_vars['AdminRepository']['latestModuleApiVersion']),'arg6' => "showIncompatible=true"), $this);?> +">_smarty_vars['capture']['listLink'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "A new core module version is available. There may be plugins that are incompatible with the installed core module, which are not shown here. You can view a %scomplete list%s of plugins, including incompatible ones, which are marked with a red icon.",'arg1' => $this->_smarty_vars['capture']['listLink'],'arg2' => ""), $this);?> + + +

+ +
+ +_reg_objects['g'][0]->text(array('text' => 'upgrade available'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'locked'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'incompatible'), $this);?> + + +
+_smarty_vars['capture']['legend'] = ob_get_contents(); ob_end_clean(); echo $this->_smarty_vars['capture']['legend']; ?> + + +assign('group', ""); $_from = $this->_tpl_vars['AdminRepository']['browseData']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['pluginId'] => $this->_tpl_vars['plugin']): + if ($this->_tpl_vars['group'] != $this->_tpl_vars['plugin']['groupLabel']): if (! empty ( $this->_tpl_vars['group'] )): ?> + + + + + + +_tpl_vars['plugin']['type'] == 'themes'): ?> + + + + + + + + + +assign('group', $this->_tpl_vars['plugin']['groupLabel']); ?> + +"> + + + + + + + + +
 

_tpl_vars['plugin']['groupLabel']; ?> +

  _reg_objects['g'][0]->text(array('text' => 'Theme Name'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Module Name'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Installed'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Latest'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Description'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Actions'), $this);?> +
+
_tpl_vars['plugin']['isCompatible']): ?>incompatible" title="_reg_objects['g'][0]->text(array('text' => 'Incompatible Plugin'), $this);?> +" +_tpl_vars['plugin']['isUpgradeable']): ?>upgrade title="_reg_objects['g'][0]->text(array('text' => 'Upgrade Available'), $this);?> +" +download"/> +
+_tpl_vars['plugin']['name']; ?> + + +_tpl_vars['plugin']['localVersion']; ?> + + +_tpl_vars['plugin']['repositoryVersion']; ?> + + +_tpl_vars['plugin']['description']; ?> + +_tpl_vars['plugin']['isCompatible']): ?> +
+ +_reg_objects['g'][0]->text(array('text' => "Incompatible plugin!"), $this);?> + +_tpl_vars['plugin']['api']['required']['core'] != $this->_tpl_vars['plugin']['api']['provided']['core']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Core API Required: %s (available: %s)",'arg1' => $this->_tpl_vars['plugin']['api']['required']['core'],'arg2' => $this->_tpl_vars['plugin']['api']['provided']['core']), $this);?> + +_tpl_vars['plugin']['api']['required']['plugin'] != $this->_tpl_vars['plugin']['api']['provided']['plugin']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Plugin API Required: %s (available: %s)",'arg1' => $this->_tpl_vars['plugin']['api']['required']['plugin'],'arg2' => $this->_tpl_vars['plugin']['api']['provided']['plugin']), $this);?> + + +
+ +
+_tpl_vars['plugin']['locked'] || ! $this->_tpl_vars['plugin']['isCompatible']): ?> +  +_reg_objects['g'][0]->url(array('arg1' => "view=core.SiteAdmin",'arg2' => "subView=core.AdminRepositoryDownload",'arg3' => "pluginType=".($this->_tpl_vars['plugin']['type']),'arg4' => "pluginId=".($this->_tpl_vars['pluginId'])), $this); echo '">'; if ($this->_tpl_vars['plugin']['isUpgradeable']): echo ''; echo $this->_reg_objects['g'][0]->text(array('text' => 'upgrade'), $this); echo ''; elseif (! $this->_tpl_vars['plugin']['localVersion']): echo ''; echo $this->_reg_objects['g'][0]->text(array('text' => 'download'), $this); echo ''; else: echo ''; echo $this->_reg_objects['g'][0]->text(array('text' => 'modify'), $this); echo ''; endif; echo ''; ?> + + +
+_smarty_vars['capture']['legend']; ?> + + +
+_tpl_vars['AdminRepository']['upgradesAvailable']): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Upgrade All Plugins'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Gallery can automatically upgrade your themes and modules to the latest available versions. No new plugins will be downloaded."), $this);?> + +

+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Upgrade All'), $this);?> +"/> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%34^345^345657B7%%AdminMaintenance.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%34^345^345657B7%%AdminMaintenance.tpl.php new file mode 100644 index 0000000..b8f9e80 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%34^345^345657B7%%AdminMaintenance.tpl.php @@ -0,0 +1,104 @@ + + array(array('function', 'cycle', 'gallery:modules/core/templates/AdminMaintenance.tpl', 34, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'System Maintenance'), $this);?> +

+
+_tpl_vars['status']['run'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['AdminMaintenance']['tasks'][$this->_tpl_vars['status']['run']['taskId']]['title'],'l10Domain' => $this->_tpl_vars['AdminMaintenance']['tasks'][$this->_tpl_vars['status']['run']['taskId']]['l10Domain']), $this);?> +_smarty_vars['capture']['taskTitle'] = ob_get_contents(); ob_end_clean(); if (( $this->_tpl_vars['status']['run']['success'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Completed %s task successfully.",'arg1' => $this->_smarty_vars['capture']['taskTitle']), $this);?> + +

+ +

+_reg_objects['g'][0]->text(array('text' => "The %s task failed to complete successfully.",'arg1' => $this->_smarty_vars['capture']['taskTitle']), $this);?> + +

+ +
+ +
+ + + + + + + +_tpl_vars['AdminMaintenance']['tasks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['taskId'] => $this->_tpl_vars['info']): + echo smarty_function_cycle(array('values' => "gbEven,gbOdd",'assign' => 'rowClass'), $this);?> + + + + +_tpl_vars['status']['run'] ) || $this->_tpl_vars['status']['run']['taskId'] != $this->_tpl_vars['taskId']): ?>style="display: none"> + + + +
_reg_objects['g'][0]->text(array('text' => 'Task name'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Last run'), $this);?> + _reg_objects['g'][0]->text(array('text' => "Success/Fail"), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Action'), $this);?> +
+_tpl_vars['status']['run'] ) || $this->_tpl_vars['status']['run']['taskId'] != $this->_tpl_vars['taskId']): ?>+- +_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['info']['title'],'l10Domain' => $this->_tpl_vars['info']['l10Domain']), $this);?> + + +_tpl_vars['info']['timestamp'] )): echo $this->_reg_objects['g'][0]->date(array('timestamp' => $this->_tpl_vars['info']['timestamp'],'style' => 'datetime'), $this);?> + +_reg_objects['g'][0]->text(array('text' => 'Not run yet'), $this);?> + + + +_tpl_vars['info']['success'] )): if ($this->_tpl_vars['info']['success']): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Success'), $this);?> + +
+ +
+_reg_objects['g'][0]->text(array('text' => 'Failed'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'Not run yet'), $this);?> + + +
+ "form[action][runTask]=1",'arg3' => "taskId=".($this->_tpl_vars['taskId'])), $this);?> +"_tpl_vars['info']['confirmRun'] )): ?> onclick="return confirm('_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['info']['title'],'forJavascript' => 1), $this);?> +: _reg_objects['g'][0]->text(array('text' => "Are you sure?",'forJavascript' => 1), $this);?> +')" +>_reg_objects['g'][0]->text(array('text' => 'run now'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => $this->_tpl_vars['info']['description'],'l10Domain' => $this->_tpl_vars['info']['l10Domain']), $this);?> + +_tpl_vars['info']['details'] )): ?> +

_reg_objects['g'][0]->text(array('text' => "Last Run Details:"), $this);?> +

+

+_tpl_vars['info']['details']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['text']): + echo $this->_tpl_vars['text']; ?> +
+ +

+ +
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3B^3B0^3B0ABA6B%%Options.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3B^3B0^3B0ABA6B%%Options.tpl.php new file mode 100644 index 0000000..6a4e224 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3B^3B0^3B0ABA6B%%Options.tpl.php @@ -0,0 +1,57 @@ + + array(array('modifier', 'default', 'gallery:modules/publishxp/templates/Options.tpl', 8, false),)), $this); ?> +
+"> +
+ +_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="_tpl_vars['form']['formName']; ?> +"/> + +" value="_tpl_vars['form']['albumId']; ?> +"/> + +" value="1"/> +
+
+

_reg_objects['g'][0]->text(array('text' => 'Standard Options'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Now that you have chosen the destination album, the following options can be used when adding the photos to Gallery."), $this);?> + +

+ +" _tpl_vars['form']['stripExtensions'] )): ?>checked> +_reg_objects['g'][0]->text(array('text' => "Strip file extensions?"), $this);?> + +
+ +" _tpl_vars['form']['setCaptions'] )): ?>checked> +_reg_objects['g'][0]->text(array('text' => "Set captions on the published items?"), $this);?> + +
+_tpl_vars['Options']['options']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['option']): + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['option']['file']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['option']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endforeach; endif; unset($_from); ?> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3B^3B1^3B1A61A2%%ItemLinks.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3B^3B1^3B1A61A2%%ItemLinks.tpl.php new file mode 100644 index 0000000..15cb642 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3B^3B1^3B1A61A2%%ItemLinks.tpl.php @@ -0,0 +1,39 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/ItemLinks.tpl', 32, false),array('modifier', 'lower', 'gallery:modules/core/templates/blocks/ItemLinks.tpl', 34, false),)), $this); ?> +_tpl_vars['links'] ) && isset ( $this->_tpl_vars['theme']['itemLinks'] )): $this->assign('links', $this->_tpl_vars['theme']['itemLinks']); endif; if (! empty ( $this->_tpl_vars['links'] )): if (empty ( $this->_tpl_vars['item'] )): $this->assign('item', $this->_tpl_vars['theme']['item']); endif; if (! isset ( $this->_tpl_vars['lowercase'] )): $this->assign('lowercase', false); endif; if (! isset ( $this->_tpl_vars['useDropdown'] )): $this->assign('useDropdown', true); endif; ?> +
+_tpl_vars['links'] ) > 1 && $this->_tpl_vars['useDropdown']): ?> + +_tpl_vars['links']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['link']): +?> +_tpl_vars['link']['script'] )): ?> onclick="_tpl_vars['link']['script']; ?> +"_tpl_vars['link']['attrs'] )): ?> _tpl_vars['link']['attrs']; endif; ?>>_tpl_vars['lowercase']): echo ((is_array($_tmp=$this->_tpl_vars['link']['text'])) ? $this->_run_mod_handler('lower', true, $_tmp) : smarty_modifier_lower($_tmp)); else: echo $this->_tpl_vars['link']['text']; endif; ?> + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3E^3EE^3EECA771%%ItemDelete.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3E^3EE^3EECA771%%ItemDelete.tpl.php new file mode 100644 index 0000000..31a1c38 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%3E^3EE^3EECA771%%ItemDelete.tpl.php @@ -0,0 +1,177 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/ItemDelete.tpl', 77, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Delete Items'), $this);?> +

+
+_tpl_vars['status']['deleted'] ) )): ?> +
+_tpl_vars['status']['deleted']['count'] == 0 )): ?> +

+_reg_objects['g'][0]->text(array('text' => 'No items were selected for deletion'), $this);?> + + +

+_reg_objects['g'][0]->text(array('one' => "Successfully deleted %d item",'many' => "Successfully deleted %d items",'count' => $this->_tpl_vars['status']['deleted']['count'],'arg1' => $this->_tpl_vars['status']['deleted']['count']), $this);?> + + +

+ +
+_tpl_vars['ItemDelete']['peers'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => 'This album contains no items to delete'), $this);?> + +

+ +

+_reg_objects['g'][0]->text(array('text' => 'Choose the items you want to delete'), $this);?> + +_tpl_vars['ItemDelete']['numPages'] > 1 )): echo $this->_reg_objects['g'][0]->text(array('text' => "(page %d of %d)",'arg1' => $this->_tpl_vars['ItemDelete']['page'],'arg2' => $this->_tpl_vars['ItemDelete']['numPages']), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => "Items selected here will remain selected when moving between pages."), $this);?> + +_tpl_vars['ItemDelete']['selectedIds'] )): ?> +
+_reg_objects['g'][0]->text(array('one' => "One item selected on other pages.",'many' => "%d items selected on other pages.",'count' => $this->_tpl_vars['ItemDelete']['selectedIdCount'],'arg1' => $this->_tpl_vars['ItemDelete']['selectedIdCount']), $this);?> + + +

+ + +" value="DeleteItem"/> + + ++_tpl_vars['ItemDelete']['peers']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['peer']): +?> + + + + + +
+_tpl_vars['peer']['thumbnail'] )): ?> + "itemId=".($this->_tpl_vars['peer']['id'])), $this);?> +"> +_reg_objects['g'][0]->image(array('item' => $this->_tpl_vars['peer'],'image' => $this->_tpl_vars['peer']['thumbnail'],'maxSize' => 50,'class' => 'giThumbnail'), $this);?> + + + +  + + +_tpl_vars['peer']['selected']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[selectedIds][".($this->_tpl_vars['peer']['id'])."]"), $this);?> +"/> + + + +_tpl_vars['ItemDelete']['peerTypes']['data'][$this->_tpl_vars['peer']['id']] )): echo $this->_reg_objects['g'][0]->text(array('text' => "(data)"), $this);?> + +_tpl_vars['ItemDelete']['peerTypes']['album'][$this->_tpl_vars['peer']['id']] )): if (isset ( $this->_tpl_vars['ItemDelete']['peerDescendentCounts'][$this->_tpl_vars['peer']['id']] )): echo $this->_reg_objects['g'][0]->text(array('one' => "(album containing %d item)",'many' => "(album containing %d items)",'count' => $this->_tpl_vars['ItemDelete']['peerDescendentCounts'][$this->_tpl_vars['peer']['id']],'arg1' => $this->_tpl_vars['ItemDelete']['peerDescendentCounts'][$this->_tpl_vars['peer']['id']]), $this);?> + +_reg_objects['g'][0]->text(array('text' => "(empty album)"), $this);?> + + + +
+_tpl_vars['ItemDelete']['selectedIds']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['selectedId']): +?> +_tpl_vars['selectedId'])."]"), $this);?> +" value="on"/> + + +" value="_tpl_vars['ItemDelete']['numPerPage']; ?> +"/> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Check All'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Check None'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Invert'), $this);?> +"/> +_tpl_vars['ItemDelete']['page'] > 1 )): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Previous Page'), $this);?> +"/> +_tpl_vars['ItemDelete']['page'] < $this->_tpl_vars['ItemDelete']['numPages'] )): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Next Page'), $this);?> +"/> + +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Delete'), $this);?> +"/> +_tpl_vars['ItemDelete']['canCancel']): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%45^45D^45D68BF5%%ItemAdd.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%45^45D^45D68BF5%%ItemAdd.tpl.php new file mode 100644 index 0000000..2058e98 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%45^45D^45D68BF5%%ItemAdd.tpl.php @@ -0,0 +1,41 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'Add Items'), $this);?> +

+
+_tpl_vars['ItemAdd']['hasToolkit'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You don't have any Graphics Toolkit activated that can handle JPEG images. If you add images, you will probably not have any thumbnails."), $this);?> + +_reg_objects['g'][0]->url(array('arg1' => "view=core.SiteAdmin",'arg2' => "subView=core.AdminPlugins"), $this);?> + +_smarty_vars['capture']['url'] = ob_get_contents(); ob_end_clean(); if ($this->_tpl_vars['ItemAdd']['isAdmin']): echo $this->_reg_objects['g'][0]->text(array('text' => "Visit the Modules page to activate a Graphics Toolkit.",'arg1' => $this->_smarty_vars['capture']['url']), $this);?> + + +
+ +
+_tpl_vars['ItemAdd']['plugins']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['plugin']): + if ($this->_tpl_vars['plugin']['isSelected']): ?> + +_tpl_vars['plugin']['title']; ?> + + + + + "subView=core.ItemAdd",'arg3' => "itemId=".($this->_tpl_vars['ItemAdmin']['item']['id']),'arg4' => "addPlugin=".($this->_tpl_vars['plugin']['id'])), $this);?> +">_tpl_vars['plugin']['title']; ?> + + + +
+ +_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['ItemAdd']['pluginFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['ItemAdd']['pluginL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%46^46D^46D9044D%%RatingItemEdit.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%46^46D^46D9044D%%RatingItemEdit.tpl.php new file mode 100644 index 0000000..c5cf46c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%46^46D^46D9044D%%RatingItemEdit.tpl.php @@ -0,0 +1,17 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'Rating'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This will enable or disable ratings for this album and, optionally, for its subalbums. You can use permissions to allow viewing or adding ratings for specific users or groups."), $this);?> + +

+ +" +_tpl_vars['form']['rating']['enabled']): ?> checked/> _reg_objects['g'][0]->text(array('text' => 'Enable rating for this album'), $this);?> + +
+_reg_objects['g'][0]->changeInDescendents(array('module' => 'rating','text' => "... and for all subalbums"), $this);?> + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%4A^4AD^4ADB6FAC%%CustomThumbnail.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%4A^4AD^4ADB6FAC%%CustomThumbnail.tpl.php new file mode 100644 index 0000000..8f0be7e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%4A^4AD^4ADB6FAC%%CustomThumbnail.tpl.php @@ -0,0 +1,37 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'Custom Thumbnail'), $this);?> +

+

+_tpl_vars['CustomThumbnailOption']['thumbnail'] )): ?> + +"/> + +

+_reg_objects['g'][0]->text(array('text' => "Upload a JPEG image to use as the thumbnail for this item."), $this);?> +
+_tpl_vars['CustomThumbnailOption']['canResize']): echo $this->_reg_objects['g'][0]->text(array('text' => "Image does not need to be thumbnail size; it will be resized as needed."), $this);?> + +_reg_objects['g'][0]->text(array('text' => "No toolkit available for resizing so uploaded image must be thumbnail sized."), $this);?> + + +

+ +"/> +_tpl_vars['form']['CustomThumbnailOption']['error']['missingFile'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Missing image file'), $this);?> + +
+_tpl_vars['form']['CustomThumbnailOption']['error']['imageMime'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Thumbnail image must be a JPEG'), $this);?> + +
+ +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%50^500^500CDE7F%%AdminSitemap.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%50^500^500CDE7F%%AdminSitemap.tpl.php new file mode 100644 index 0000000..3856d07 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%50^500^500CDE7F%%AdminSitemap.tpl.php @@ -0,0 +1,24 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'Sitemap settings'), $this);?> +

+
+
+ +_reg_objects['g'][0]->text(array('text' => 'Google Sitemaps'), $this);?> + +_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('googleLink', ob_get_contents());ob_end_clean(); ob_start(); ?> + _reg_objects['g'][0]->url(array('arg1' => "view=sitemap.Sitemap",'forceFullUrl' => 1), $this);?> + +_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('sitemapLink', ob_get_contents());ob_end_clean(); ?> +

+_reg_objects['g'][0]->text(array('text' => "To use the Google Sitemap, you must now go to the %s page and submit this url: %s",'arg1' => $this->_tpl_vars['googleLink'],'arg2' => $this->_tpl_vars['sitemapLink']), $this);?> + +

+_tpl_vars['AdminSitemap']['canRewrite']): echo ''; $this->assign('subView', "rewrite.AdminRewrite"); echo ''; else: echo ''; $this->assign('subView', "core.AdminPlugins"); echo ''; endif; echo ' "subView=".($this->_tpl_vars['subView'])), $this); echo '">'; echo $this->_reg_objects['g'][0]->text(array('text' => 'URL Rewrite Module'), $this); echo ''; $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('link', ob_get_contents());ob_end_clean(); ?> +

+_reg_objects['g'][0]->text(array('text' => "You can change the Sitemap url using the %s.",'arg1' => $this->_tpl_vars['link']), $this);?> +

+

+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%52^521^5211A764%%ItemAddUploadApplet.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%52^521^5211A764%%ItemAddUploadApplet.tpl.php new file mode 100644 index 0000000..78aff35 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%52^521^5211A764%%ItemAddUploadApplet.tpl.php @@ -0,0 +1,172 @@ + +
+_tpl_vars['ItemAddUploadApplet']['NoProtocolError'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "The upload applet relies on a G2 module that is not currently enabled. Please ask an administrator to enable the 'remote' module."), $this);?> + +
+ +
+ + + +,_reg_objects['g'][0]->url(array('href' => "modules/uploadapplet/applets/GalleryRemoteHTTPClient.jar"), $this);?> +,_reg_objects['g'][0]->url(array('href' => "modules/uploadapplet/applets/applet_img.jar"), $this);?> +"/> + + + + + + + + + + + + + + +_tpl_vars['ItemAddUploadApplet']['default']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['value']): +?> + +_tpl_vars['ItemAddUploadApplet']['override']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['value']): +?> + + + + +,_reg_objects['g'][0]->url(array('href' => "modules/uploadapplet/applets/GalleryRemoteHTTPClient.jar"), $this);?> +,_reg_objects['g'][0]->url(array('href' => "modules/uploadapplet/applets/applet_img.jar"), $this);?> +" +width="600" +height="400" +mayscript="true" +progressbar="true" +boxmessage="_reg_objects['g'][0]->text(array('text' => 'Downloading the Gallery Remote Applet'), $this);?> +" +pluginspage="http://java.sun.com/j2se/1.4.2/download.html" +gr_url="_tpl_vars['ItemAddUploadApplet']['g2BaseUrl']; ?> +" +gr_cookie_name="_tpl_vars['ItemAddUploadApplet']['cookieName']; ?> +" +gr_cookie_value="_tpl_vars['ItemAddUploadApplet']['cookieValue']; ?> +" +gr_cookie_domain="_tpl_vars['ItemAddUploadApplet']['cookieDomain']; ?> +" +gr_cookie_path="_tpl_vars['ItemAddUploadApplet']['cookiePath']; ?> +" +gr_album="_tpl_vars['ItemAddUploadApplet']['album']; ?> +" +gr_user_agent="_tpl_vars['ItemAddUploadApplet']['userAgent']; ?> +" +gr_gallery_version="_tpl_vars['ItemAddUploadApplet']['galleryVersion']; ?> +" +gr_locale="_tpl_vars['ItemAddUploadApplet']['locale']; ?> +" +_tpl_vars['ItemAddUploadApplet']['default']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['value']): +?> +GRDefault__tpl_vars['key']; ?> +="_tpl_vars['value']; ?> +" +_tpl_vars['ItemAddUploadApplet']['override']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['key'] => $this->_tpl_vars['value']): +?> +GROverride__tpl_vars['key']; ?> +="_tpl_vars['value']; ?> +" + +> + +"> +<?php echo $this->_reg_objects['g'][0]->text(array('text' => "Your browser doesn't support applets; you should use one of the other upload methods."), $this);?> + + + + + +
+ +
+
+
+_tag_stack[] = array('addToTrailer', array(), $this); $_block_repeat=true; $this->_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], null, $this, $_block_repeat); while ($_block_repeat) { ob_start();?> + +_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], $_obj_block_content, $this, $_block_repeat);} array_pop($this->_tag_stack);?> diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%54^542^542DC2EF%%ItemEdit.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%54^542^542DC2EF%%ItemEdit.tpl.php new file mode 100644 index 0000000..07bedd3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%54^542^542DC2EF%%ItemEdit.tpl.php @@ -0,0 +1,57 @@ + +
+

_reg_objects['g'][0]->text(array('text' => "Edit %s",'arg1' => $this->_tpl_vars['ItemEdit']['itemTypeNames']['0']), $this);?> +

+
+ + +" value="_tpl_vars['form']['serialNumber']; ?> +"/> +_tpl_vars['status'] ) || ! empty ( $this->_tpl_vars['form']['error'] )): ?> +
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['editMessage'] )): echo $this->_tpl_vars['status']['editMessage']; ?> + +_tpl_vars['status']['warning'] )): ?> +
+_tpl_vars['status']['warning']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['warning']): + echo $this->_tpl_vars['warning']; ?> + + +
+ +

+_tpl_vars['form']['error'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "There was a problem processing your request."), $this);?> + +

+ +
+ +
+_tpl_vars['ItemEdit']['plugins']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['plugin']): + if ($this->_tpl_vars['plugin']['isSelected']): ?> + +_tpl_vars['plugin']['title']; ?> + + + + + "subView=core.ItemEdit",'arg3' => "itemId=".($this->_tpl_vars['ItemAdmin']['item']['id']),'arg4' => "editPlugin=".($this->_tpl_vars['plugin']['id'])), $this);?> +">_tpl_vars['plugin']['title']; ?> + + + +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['ItemEdit']['pluginFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['ItemEdit']['pluginL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%55^55E^55E14245%%SystemLinks.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%55^55E^55E14245%%SystemLinks.tpl.php new file mode 100644 index 0000000..fa4d16e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%55^55E^55E14245%%SystemLinks.tpl.php @@ -0,0 +1,29 @@ + + array(array('modifier', 'replace', 'gallery:modules/core/templates/blocks/SystemLinks.tpl', 7, false),array('modifier', 'default', 'gallery:modules/core/templates/blocks/SystemLinks.tpl', 8, false),array('modifier', 'split', 'gallery:modules/core/templates/blocks/SystemLinks.tpl', 8, false),)), $this); ?> +assign('class', ((is_array($_tmp=$this->_tpl_vars['class'])) ? $this->_run_mod_handler('replace', true, $_tmp, 'SystemLinks', 'SystemLink') : smarty_modifier_replace($_tmp, 'SystemLinks', 'SystemLink'))); $this->assign('order', ((is_array($_tmp=((is_array($_tmp=@$this->_tpl_vars['order'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, "")))) ? $this->_run_mod_handler('split', true, $_tmp) : smarty_modifier_split($_tmp))); $this->assign('othersAt', ((is_array($_tmp=@$this->_tpl_vars['othersAt'])) ? $this->_run_mod_handler('default', true, $_tmp, 0) : smarty_modifier_default($_tmp, 0))); $this->assign('othersAt', $this->_tpl_vars['othersAt']-1); $this->assign('separator', ((is_array($_tmp=@$this->_tpl_vars['separator'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, ""))); ob_start(); $_from = $this->_tpl_vars['theme']['systemLinks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['linkId'] => $this->_tpl_vars['link']): + if (! in_array ( $this->_tpl_vars['linkId'] , $this->_tpl_vars['order'] )): ?> + +_tpl_vars['link']['text']; ?> + + +_tpl_vars['separator']; ?> + +_smarty_vars['capture']['SystemLinks'] = ob_get_contents(); ob_end_clean(); $_from = $this->_tpl_vars['order']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['index'] => $this->_tpl_vars['linkId']): + if ($this->_tpl_vars['index'] == $this->_tpl_vars['othersAt']): $this->assign('SystemLinksShown', true); echo $this->_smarty_vars['capture']['SystemLinks']; ?> + +_tpl_vars['theme']['systemLinks'][$this->_tpl_vars['linkId']] )): ?> + +_tpl_vars['theme']['systemLinks'][$this->_tpl_vars['linkId']]['text']; ?> + + +_tpl_vars['separator']; ?> + +_tpl_vars['SystemLinksShown'] )): echo $this->_smarty_vars['capture']['SystemLinks']; endif; ?> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%5A^5A3^5A33504B%%Navigator.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%5A^5A3^5A33504B%%Navigator.tpl.php new file mode 100644 index 0000000..981b296 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%5A^5A3^5A33504B%%Navigator.tpl.php @@ -0,0 +1,29 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/Navigator.tpl', 12, false),array('modifier', 'split', 'gallery:modules/core/templates/blocks/Navigator.tpl', 19, false),)), $this); ?> +_tpl_vars['reverseOrder'] ) && $this->_tpl_vars['reverseOrder']): $this->assign('order', "next-and-last current first-and-previous"); else: $this->assign('order', "first-and-previous current next-and-last"); endif; $this->assign('prefix', ((is_array($_tmp=@$this->_tpl_vars['prefix'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, ""))); $this->assign('suffix', ((is_array($_tmp=@$this->_tpl_vars['suffix'])) ? $this->_run_mod_handler('default', true, $_tmp, "") : smarty_modifier_default($_tmp, ""))); ?> +
+_tpl_vars['order'])) ? $this->_run_mod_handler('split', true, $_tmp) : smarty_modifier_split($_tmp)); if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['which']): + if ($this->_tpl_vars['which'] == "next-and-last"): ?> + +_tpl_vars['which'] == 'current'): if (( isset ( $this->_tpl_vars['currentPage'] ) && isset ( $this->_tpl_vars['totalPages'] ) ) || ( isset ( $this->_tpl_vars['currentItem'] ) && isset ( $this->_tpl_vars['totalItems'] ) )): ?> + +_tpl_vars['currentPage'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Page %d of %d",'arg1' => $this->_tpl_vars['currentPage'],'arg2' => $this->_tpl_vars['totalPages']), $this);?> + +_tpl_vars['currentItem'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "%d of %d",'arg1' => $this->_tpl_vars['currentItem'],'arg2' => $this->_tpl_vars['totalItems']), $this);?> + + + + + + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%5C^5CC^5CCDD253%%SearchScan.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%5C^5CC^5CCDD253%%SearchScan.tpl.php new file mode 100644 index 0000000..b603e34 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%5C^5CC^5CCDD253%%SearchScan.tpl.php @@ -0,0 +1,166 @@ + + array(array('modifier', 'default', 'gallery:modules/search/templates/SearchScan.tpl', 106, false),array('modifier', 'markup', 'gallery:modules/search/templates/SearchScan.tpl', 106, false),)), $this); ?> +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Search the Gallery'), $this);?> +

+
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="SearchScan"/> + +
+ +" value="_tpl_vars['form']['searchCriteria']; ?> +"/> + + +" value="_reg_objects['g'][0]->text(array('text' => 'Search'), $this);?> +"/> +_tpl_vars['form']['error']['searchCriteria']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter some text to search for!"), $this);?> + +
+ +
+_tpl_vars['SearchScan']['modules']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['moduleId'] => $this->_tpl_vars['moduleInfo']): + $_from = $this->_tpl_vars['moduleInfo']['options']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['optionId'] => $this->_tpl_vars['optionInfo']): +?> +_tpl_vars['moduleId'])."][".($this->_tpl_vars['optionId'])."]"), $this);?> +" +_tpl_vars['form']['options'][$this->_tpl_vars['moduleId']][$this->_tpl_vars['optionId']] )): ?>checked="checked"/> + + +
+ +
+assign('resultCount', '0'); if (! empty ( $this->_tpl_vars['SearchScan']['searchResults'] )): $_from = $this->_tpl_vars['SearchScan']['searchResults']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['moduleId'] => $this->_tpl_vars['results']): + $this->assign('resultCount', $this->_tpl_vars['resultCount']+$this->_tpl_vars['results']['count']); ?> +
+

+_tpl_vars['SearchScan']['modules'][$this->_tpl_vars['moduleId']]['name']; ?> + +_tpl_vars['results']['count'] > 0 )): echo $this->_reg_objects['g'][0]->text(array('text' => "Results %d - %d",'arg1' => $this->_tpl_vars['results']['start'],'arg2' => $this->_tpl_vars['results']['end']), $this);?> + +_tpl_vars['results']['count'] > $this->_tpl_vars['results']['end'] )): $this->assign('moduleId', $this->_tpl_vars['moduleId']); ?> +  +_tpl_vars['moduleId'])."]"), $this);?> +" +value="_reg_objects['g'][0]->text(array('text' => "Show all %d",'arg1' => $this->_tpl_vars['results']['count']), $this);?> +"/> + +

+assign('searchCriteria', $this->_tpl_vars['form']['searchCriteria']); if (( sizeof ( $this->_tpl_vars['results']['results'] ) > 0 )): ?> + +_tpl_vars['results']['results']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['result']): + $this->assign('itemId', $this->_tpl_vars['result']['itemId']); ?> + + +
+ "itemId=".($this->_tpl_vars['itemId'])), $this);?> +"> +_tpl_vars['SearchScan']['thumbnails'][$this->_tpl_vars['itemId']] )): echo $this->_reg_objects['g'][0]->image(array('item' => $this->_tpl_vars['SearchScan']['items'][$this->_tpl_vars['itemId']],'image' => $this->_tpl_vars['SearchScan']['thumbnails'][$this->_tpl_vars['itemId']],'class' => 'giThumbnail'), $this);?> + +_reg_objects['g'][0]->text(array('text' => 'No thumbnail'), $this);?> + + + +
    +_tpl_vars['result']['fields']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['field']): + if (isset ( $this->_tpl_vars['field']['value'] )): ?> +
  • +_tpl_vars['field']['key']; ?> +: +_tpl_vars['field']['value'])) ? $this->_run_mod_handler('default', true, $_tmp, " ") : smarty_modifier_default($_tmp, " ")))) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> + +
  • + +
+
+ + +

+_reg_objects['g'][0]->text(array('text' => 'No results found for'), $this);?> + '_tpl_vars['form']['searchCriteria']; ?> +' +

+ +
+_tpl_vars['resultCount'] > 0 && $this->_tpl_vars['SearchScan']['slideshowAvailable']): ?> +
+ +" +value="_reg_objects['g'][0]->text(array('text' => 'View these results in a slideshow'), $this);?> +"/> +
+ +
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%63^634^634CFD79%%photo.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%63^634^634CFD79%%photo.tpl.php new file mode 100644 index 0000000..1cd0d69 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%63^634^634CFD79%%photo.tpl.php @@ -0,0 +1,86 @@ + + array(array('function', 'math', 'gallery:themes/abeto/templates/photo.tpl', 55, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/photo.tpl', 57, false),array('modifier', 'default', 'gallery:themes/abeto/templates/photo.tpl', 57, false),)), $this); ?> + +_tpl_vars['theme']['imageViews'] )): $this->assign('image', $this->_tpl_vars['theme']['imageViews'][$this->_tpl_vars['theme']['imageViewsIndex']]); endif; if (! empty ( $this->_tpl_vars['theme']['imageViews'] )): ob_start(); ?> + "itemId=".($this->_tpl_vars['theme']['item']['id']),'forceFullUrl' => true,'forceSessionId' => true), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => "Download %s",'arg1' => $this->_tpl_vars['theme']['sourceImage']['itemTypeName']['1']), $this);?> + + +_smarty_vars['capture']['fallback'] = ob_get_contents(); ob_end_clean(); if (( $this->_tpl_vars['image']['viewInline'] )): ?> + +_smarty_vars['capture']['fallback']; ?> + +_reg_objects['g'][0]->text(array('text' => "There is nothing to view for this item."), $this);?> + +_tpl_vars['theme']['params']['enableImageMap'] && ! empty ( $this->_tpl_vars['image']['width'] ) && ! empty ( $this->_tpl_vars['image']['height'] )): ?> + +_tpl_vars['theme']['navigator']['back'] )): ?> + $this->_tpl_vars['image']['width']), $this);?> +,_tpl_vars['image']['height']; ?> +" +href="_reg_objects['g'][0]->url(array('params' => $this->_tpl_vars['theme']['navigator']['back']['urlParams']), $this);?> +" +alt="_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> +" +onmouseover="document.getElementById('prevArrow').style.visibility='visible'" +onmouseout="document.getElementById('prevArrow').style.visibility='hidden'"/> +_tpl_vars['theme']['navigator']['next'] )): ?> + $this->_tpl_vars['image']['width']), $this);?> +,0,_tpl_vars['image']['width']; ?> +,_tpl_vars['image']['height']; ?> +" +href="_reg_objects['g'][0]->url(array('params' => $this->_tpl_vars['theme']['navigator']['next']['urlParams']), $this);?> +" +alt="_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> +" +onmouseover="document.getElementById('nextArrow').style.visibility='visible'" +onmouseout="document.getElementById('nextArrow').style.visibility='hidden'"/> + + + +
+_tpl_vars['theme']['navigator'] )): echo $this->_reg_objects['g'][0]->callback(array('type' => "core.LoadPeers",'item' => $this->_tpl_vars['theme']['item'],'windowSize' => 1), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentItem' => $this->_tpl_vars['block']['core']['LoadPeers']['thisPeerIndex'],'totalItems' => $this->_tpl_vars['block']['core']['LoadPeers']['peerCount']), $this);?> + + +
+_tpl_vars['theme']['item']['description'] ) && ( $this->_tpl_vars['theme']['item']['description'] != $this->_tpl_vars['theme']['item']['title'] )): ?> +

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): if (! empty ( $this->_tpl_vars['theme']['sourceImage'] ) && ( count ( $this->_tpl_vars['theme']['imageViews'] ) > 1 || $this->_tpl_vars['theme']['sourceImage']['mimeType'] != $this->_tpl_vars['theme']['item']['mimeType'] )): ?> +

+_tpl_vars['theme']['sourceImage']['mimeType'] != $this->_tpl_vars['theme']['item']['mimeType']): ?> + "itemId=".($this->_tpl_vars['theme']['item']['id'])), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => "Download %s in original format",'arg1' => $this->_tpl_vars['theme']['sourceImage']['itemTypeName']['1']), $this);?> + + + "itemId=".($this->_tpl_vars['theme']['sourceImage']['id'])), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => "Download %s",'arg1' => $this->_tpl_vars['theme']['sourceImage']['itemTypeName']['1']), $this);?> + +_tpl_vars['theme']['sourceImage']['width'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "(%dx%d)",'arg1' => $this->_tpl_vars['theme']['sourceImage']['width'],'arg2' => $this->_tpl_vars['theme']['sourceImage']['height']), $this);?> + + + +

+_tpl_vars['theme']['params']['photoBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'photo'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%67^677^6779C1CF%%ItemReorder.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%67^677^6779C1CF%%ItemReorder.tpl.php new file mode 100644 index 0000000..fe48626 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%67^677^6779C1CF%%ItemReorder.tpl.php @@ -0,0 +1,72 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/ItemReorder.tpl', 33, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Reorder Album'), $this);?> +

+
+_tpl_vars['status']['saved'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => 'Order saved successfully'), $this);?> + +

+_tpl_vars['ItemReorder']['show']['automaticOrderMessage'] )): ?> +
+

+_reg_objects['g'][0]->text(array('text' => "This album has an automatic sort order specified, so you cannot change the order of items manually. You must remove the automatic sort order to continue."), $this);?> + + "subView=core.ItemEdit",'arg3' => "itemEditPlugin=core.ItemEditAlbum",'arg4' => "itemId=".($this->_tpl_vars['ItemAdmin']['item']['id'])), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => 'change'), $this);?> + + +

+
+ +
+

+_reg_objects['g'][0]->text(array('text' => "Change the order of the items in this album."), $this);?> + +

+

_reg_objects['g'][0]->text(array('text' => 'Move this item'), $this);?> +

+ + + +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Reorder'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%6F^6FA^6FA7BD72%%AdminCore.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%6F^6FA^6FA7BD72%%AdminCore.tpl.php new file mode 100644 index 0000000..2428937 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%6F^6FA^6FA7BD72%%AdminCore.tpl.php @@ -0,0 +1,397 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/AdminCore.tpl', 47, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'General Settings'), $this);?> +

+
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['saved'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Settings saved successfully'), $this);?> +
+_tpl_vars['status']['addedDir'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Added local upload directory successfully'), $this);?> + +_tpl_vars['status']['removedDir'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Removed local upload directory successfully'), $this);?> + +_tpl_vars['status']['emailTestSuccess'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Test email sent successfully'), $this);?> + + +

+_tpl_vars['form']['error'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "There was a problem processing your request, see below for details."), $this);?> + +

+_tpl_vars['status']['emailTestError'] ) || isset ( $this->_tpl_vars['form']['emailTestError'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Error sending test email, see below for details."), $this);?> + +

+ +
+

_reg_objects['g'][0]->text(array('text' => 'Language Settings'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Select language defaults for Gallery. Individual users can override this setting in their personal preferences or via the language selector block if available. Gallery will try to automatically detect the language preference of each user if the browser preference check is enabled."), $this);?> + +

+_tpl_vars['AdminCore']['can']['translate'] )): ?> + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Default language'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'Check Browser Preference'), $this);?> + + +_tpl_vars['form']['language']['useBrowserPref']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[language][useBrowserPref]"), $this);?> +"/> +
+ +
+ +_reg_objects['g'][0]->text(array('text' => 'gettext'), $this);?> + +_smarty_vars['capture']['gettext'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "Your webserver does not support localization. Please instruct your system administrator to reconfigure PHP with the %s option enabled.",'arg1' => $this->_smarty_vars['capture']['gettext']), $this);?> + +
+ +
+
+

_reg_objects['g'][0]->text(array('text' => 'Date Formats'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to enter a format string. Note that the display of some tokens varies according to the active language.",'arg1' => "",'arg2' => ""), $this);?> + +

+ + +
+_reg_objects['g'][0]->text(array('text' => 'Style'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => 'Format'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => 'Sample'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'Date'), $this);?> + + + +" value="_tpl_vars['form']['format']['date']; ?> +"/> + +_reg_objects['g'][0]->date(array('format' => $this->_tpl_vars['form']['format']['date']), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'Time'), $this);?> + + + +" value="_tpl_vars['form']['format']['time']; ?> +"/> + +_reg_objects['g'][0]->date(array('format' => $this->_tpl_vars['form']['format']['time']), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => "Date/Time"), $this);?> + + + +" value="_tpl_vars['form']['format']['datetime']; ?> +"/> + +_reg_objects['g'][0]->date(array('format' => $this->_tpl_vars['form']['format']['datetime']), $this);?> + +
+
+_tpl_vars['AdminCore']['can']['setPermissions'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Filesystem Permissions'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Specify the default permissions for files and directories that Gallery creates. This doesn't apply to files/directories that Gallery has already created."), $this);?> + +

+ + + + +
+_reg_objects['g'][0]->text(array('text' => 'New directories'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'New files'), $this);?> + + + +
+
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Session Settings'), $this);?> +

+ + + + +
+_reg_objects['g'][0]->text(array('text' => 'Session Lifetime'), $this);?> + + + +
+_reg_objects['g'][0]->text(array('text' => 'Inactivity Timeout'), $this);?> + + + +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Embedded Markup'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "What kind of markup should we allow in user-entered fields? For security reasons we do not recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and allows for simple text formatting like bold, italics, lists, images and urls."), $this);?> + +

+ + +
+_reg_objects['g'][0]->text(array('text' => 'Markup'), $this);?> + + + +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Email'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "By default Gallery uses PHP's built in mail function to send email which requires no configuration. To use a smtp/mail server enter the information below, including authentication information if required. Optionally add :port after the server name to use a non-default port."), $this);?> + +

+ + + + + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Server'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['host']; ?> +"/> +
+_reg_objects['g'][0]->text(array('text' => 'Username'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['username']; ?> +"/> +
+_reg_objects['g'][0]->text(array('text' => 'Password'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['password']; ?> +"/> +
+_reg_objects['g'][0]->text(array('text' => 'SMTP From Address'), $this);?> + + + +" value="_tpl_vars['form']['smtp']['from']; ?> +"/> +_tpl_vars['form']['error']['smtp']['invalidFrom'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid email address'), $this);?> + +
+ +
+

+_reg_objects['g'][0]->text(array('text' => "Send a test email to verify your settings are correct (whether using PHP mail or SMTP settings above). Below enter a recipient email address for a test message."), $this);?> + +

+

+ +" value="_tpl_vars['form']['emailTest']['to']; ?> +"/> +  + +" value="_reg_objects['g'][0]->text(array('text' => 'Send Email'), $this);?> +"/> +

+_tpl_vars['form']['emailTestError']['invalidTo'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid email address'), $this);?> + +
+_tpl_vars['status']['emailTestError'] )): ?> +

_reg_objects['g'][0]->text(array('text' => 'Email Test Error'), $this);?> +

+
+_tpl_vars['status']['emailTestError']; ?> + +
_tpl_vars['status']['emailTestDebug']; ?>
+
+
+ +
+
+

+_reg_objects['g'][0]->text(array('text' => 'Cookies'), $this);?> + ++ +

+

+_reg_objects['g'][0]->text(array('text' => "When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have the choice between two options. Everyone else does not have to care about the cookie settings. Read on for more details."), $this);?> + +

+

+_reg_objects['g'][0]->text(array('text' => "If your Gallery is embedded and you leave the following fields empty, then all DownloadItem links (the URLs of the images and other items) in the embedded Gallery have an appended GALLERYSID string in the URL which is a minor security risk when your Gallery users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set the cookie path. Gallery will then not append the GALLERYSID to the embedded DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/gallery2/ and the embedding application is at http://www.example.com/application/, then you have to compare the path /application/gallery2/ with /application/. The cookie path is the part of the paths that is equal, in this case it is '/application/'. Most often it is just '/'."), $this);?> +
+_reg_objects['g'][0]->text(array('text' => "The cookie domain is also only needed for embedded Gallery installs and only if you want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding application are only reachable with different subdomains. E.g. when Gallery is at http://photos.example.com/ and the application is at http://www.example.com/, then you have to set the cookie domain example.com (the part of the host string that is common to both, Gallery and the embedding application)."), $this);?> +
+_reg_objects['g'][0]->text(array('text' => "Once you change the cookie settings, all registered users of your Gallery will have to clear their browser cookie cache. If they do not, they will experience login / logout / lost session problems."), $this);?> + +

+ + + + +
+_reg_objects['g'][0]->text(array('text' => 'Path'), $this);?> + + + +" value="_tpl_vars['form']['cookie']['path']; ?> +"/> +_tpl_vars['form']['error']['cookie']['invalidPath'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid cookie path'), $this);?> +
+
+ +
+_reg_objects['g'][0]->text(array('text' => 'Domain'), $this);?> + + + +" value="_tpl_vars['form']['cookie']['domain']; ?> +"/> +_tpl_vars['form']['error']['cookie']['invalidDomain'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid cookie domain'), $this);?> +
+
+ +
+
+
+

_reg_objects['g'][0]->text(array('text' => 'Locking System'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Gallery uses a system of locks to prevent simultaneous changes from interfering with each other. There are two types of locking, each with its advantages and disadvantages. File based locking is fast and efficient, but won't work on NFS filesystems and will be unreliable on Windows. Database locking is slower but is more reliable. If you are unsure which to choose, we recommend using file locking. If you're getting many lock timeouts, you can try switching to database locking instead. It's ok to switch back and forth."), $this);?> + +

+ + +
+_reg_objects['g'][0]->text(array('text' => 'Lock system'), $this);?> + + + +
+
+_tpl_vars['AdminCore']['can']['tweakSystemProcesses'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Helper Processes'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Some Gallery modules will use programs on your server to do image processing, archiving and other operations. These programs can be very computationally intensive and can impact the overall performance of a shared web server. You can make these programs run at a lower priority so that they play nice. If you're in a shared hosting environment and your web host is complaining, try setting your priority low."), $this);?> + +

+ + + + + +
_reg_objects['g'][0]->text(array('text' => 'Priority'), $this);?> + + +
+
+ +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%78^780^78060CA0%%PublishXpLogin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%78^780^78060CA0%%PublishXpLogin.tpl.php new file mode 100644 index 0000000..eccfde8 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%78^780^78060CA0%%PublishXpLogin.tpl.php @@ -0,0 +1,63 @@ + +
+
+ +_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="_tpl_vars['form']['formName']; ?> +"/> + +" value="1"/> +
+
+

+_reg_objects['g'][0]->text(array('text' => 'Username'), $this);?> + +

+ +" +size="16" value="_tpl_vars['form']['userName']; ?> +"/> + +_tpl_vars['form']['error']['userName']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a username'), $this);?> + +
+_tpl_vars['form']['error']['userName']['disabled'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Logins temporarily disabled due to multiple failed login attempts."), $this);?> + +
+ +

_reg_objects['g'][0]->text(array('text' => 'Password'), $this);?> +

+ +"/> +_tpl_vars['form']['error']['password']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a password'), $this);?> + +
+_tpl_vars['form']['error']['password']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Your login information is incorrect. Please try again."), $this);?> + +
+ +
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%7D^7DC^7DCBB707%%GuestPreview.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%7D^7DC^7DCBB707%%GuestPreview.tpl.php new file mode 100644 index 0000000..d3a57e9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%7D^7DC^7DCBB707%%GuestPreview.tpl.php @@ -0,0 +1,19 @@ + +_tpl_vars['user']['isRegisteredUser']): ?> +
+_tpl_vars['theme']['guestPreviewMode'] )): ?> + "guestPreviewMode=0",'arg3' => "return=1"), $this);?> +">_tpl_vars['user']['userName']; ?> + | _reg_objects['g'][0]->text(array('text' => 'guest'), $this);?> + + + _tpl_vars['user']['userName']; ?> + | "guestPreviewMode=1",'arg3' => "return=1"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'guest'), $this);?> + +_smarty_vars['capture']['guestPreviewMode'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "display mode: %s",'arg1' => $this->_smarty_vars['capture']['guestPreviewMode']), $this);?> + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%83^834^8342AFE8%%PeerList.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%83^834^8342AFE8%%PeerList.tpl.php new file mode 100644 index 0000000..74ff4df --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%83^834^8342AFE8%%PeerList.tpl.php @@ -0,0 +1,29 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/PeerList.tpl', 7, false),array('modifier', 'markup', 'gallery:modules/core/templates/blocks/PeerList.tpl', 12, false),array('modifier', 'entitytruncate', 'gallery:modules/core/templates/blocks/PeerList.tpl', 21, false),)), $this); ?> +_reg_objects['g'][0]->callback(array('type' => "core.LoadPeers",'item' => ((is_array($_tmp=@$this->_tpl_vars['item'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item'])),'windowSize' => ((is_array($_tmp=@$this->_tpl_vars['windowSize'])) ? $this->_run_mod_handler('default', true, $_tmp, null) : smarty_modifier_default($_tmp, null))), $this);?> + +assign('data', $this->_tpl_vars['block']['core']['LoadPeers']); if (! empty ( $this->_tpl_vars['data']['peers'] )): ?> +
+

_tpl_vars['data']['parent']['title'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['data']['parent']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['data']['parent']['pathComponent'])))) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+assign('lastIndex', 0); $_from = $this->_tpl_vars['data']['peers']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['peer']): + $this->assign('title', ((is_array($_tmp=@$this->_tpl_vars['peer']['title'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['peer']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['peer']['pathComponent']))); if (( $this->_tpl_vars['peer']['peerIndex'] - $this->_tpl_vars['lastIndex'] > 1 )): ?> +... +_tpl_vars['peer']['peerIndex'] == $this->_tpl_vars['data']['thisPeerIndex'] )): ?> + +_reg_objects['g'][0]->text(array('text' => "%d. %s",'arg1' => $this->_tpl_vars['peer']['peerIndex'],'arg2' => ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('entitytruncate', true, $_tmp, 14) : smarty_modifier_entitytruncate($_tmp, 14))), $this);?> + + + + +_reg_objects['g'][0]->text(array('text' => "%d. %s",'arg1' => $this->_tpl_vars['peer']['peerIndex'],'arg2' => ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('entitytruncate', true, $_tmp, 14) : smarty_modifier_entitytruncate($_tmp, 14))), $this);?> + + +assign('lastIndex', $this->_tpl_vars['peer']['peerIndex']); endforeach; endif; unset($_from); ?> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%83^839^839CE4C1%%error.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%83^839^839CE4C1%%error.tpl.php new file mode 100644 index 0000000..e65eef5 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%83^839^839CE4C1%%error.tpl.php @@ -0,0 +1,27 @@ + + + + +_reg_objects['g'][0]->head(array(), $this);?> + +_tpl_vars['head']['title'] )): ?> +<?php echo $this->_reg_objects['g'][0]->text(array('text' => "Error!"), $this);?> + + + +"/> + + +
_reg_objects['g'][0]->mainDivAttributes(array(), $this);?> +> +_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => $this->_tpl_vars['theme']['errorTemplate'], 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+_reg_objects['g'][0]->debug(array(), $this);?> + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%85^856^85682F26%%ErrorPage.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%85^856^85682F26%%ErrorPage.tpl.php new file mode 100644 index 0000000..72a7ab2 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%85^856^85682F26%%ErrorPage.tpl.php @@ -0,0 +1,185 @@ + +
+
+

+_tpl_vars['ErrorPage']['code']['obsoleteData'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Edit Conflict!"), $this);?> + +_tpl_vars['ErrorPage']['code']['securityViolation'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Security Violation'), $this);?> + +_tpl_vars['ErrorPage']['code']['storageFailure'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Database Error'), $this);?> + +_tpl_vars['ErrorPage']['code']['platformFailure'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Platform Error'), $this);?> + +_tpl_vars['ErrorPage']['code']['requestAuthenticationFailure'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Authentication Failure'), $this);?> + +_reg_objects['g'][0]->text(array('text' => 'Error'), $this);?> + + +

+
+
+_tpl_vars['ErrorPage']['code']['obsoleteData'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Your change cannot be completed because somebody else has made a conflicting change to the same item. Use the back button in your browser to go back to the page you were on, then reload that page and try your change again."), $this);?> + +
+ _reg_objects['g'][0]->text(array('text' => 'Go back and try again'), $this);?> + +

+_tpl_vars['ErrorPage']['isAdmin']): ?> +

+_reg_objects['g'][0]->text(array('text' => "If this problem happens repeatedly, it may be because of corruption in your cache. Site Administrators can clear out this cache."), $this);?> + +
+ +"> _reg_objects['g'][0]->text(array('text' => 'Clear the cache'), $this);?> + +

+ +

+_reg_objects['g'][0]->text(array('text' => "Alternatively, you can return to the main Gallery page and resume browsing."), $this);?> + +

+_tpl_vars['ErrorPage']['code']['securityViolation'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "The action you attempted is not permitted."), $this);?> + +

+_tpl_vars['ErrorPage']['code']['requestAuthenticationFailure'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Your change cannot be completed due to a loss of session data. Please try again. If it still doesn't work, try logging out and logging back in."), $this);?> + +

+_tpl_vars['ErrorPage']['code']['storageFailure'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "An error has occurred while interacting with the database."), $this);?> + +

+_tpl_vars['ErrorPage']['isAdmin'] && ! isset ( $this->_tpl_vars['ErrorPage']['debug'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "The exact nature of database errors is not captured unless Gallery debug mode is enabled in config.php. Before seeking support for this error please enable buffered debug output and retry the operation. Look near the bottom of the lengthy debug output to find error details."), $this);?> + +_tpl_vars['ErrorPage']['code']['platformFailure'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "An error has occurred while interacting with the platform."), $this);?> + +

+_tpl_vars['ErrorPage']['isAdmin'] && ! isset ( $this->_tpl_vars['ErrorPage']['debug'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "The exact nature of the platform error is unknown. A common cause are insufficient file system permissions. This can happen if you or your webhost changed something in the file system, e.g. by restoring data from a backup."), $this);?> + +_tpl_vars['ErrorPage']['code']['missingObject'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "Item not found."), $this);?> + +

+ +

+_reg_objects['g'][0]->text(array('text' => "An error has occurred."), $this);?> + +

+ +

+ _reg_objects['g'][0]->text(array('text' => 'Back to the Gallery'), $this);?> + +

+
+_tpl_vars['ErrorPage']['stackTrace'] )): ?> +
+

+_reg_objects['g'][0]->text(array('text' => 'Error Detail'), $this);?> + + _tpl_vars['ErrorPage']['isAdmin']): ?>-+ +

+
+_tpl_vars['ErrorPage']['stackTrace']; ?> + +
+
+_tpl_vars['ErrorPage']['isAdmin']): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'System Information'), $this);?> +

+ + + + + + + +_tpl_vars['ErrorPage']['dbType'] )): ?> + + + +_tpl_vars['ErrorPage']['toolkits'] )): ?> + + + + + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Gallery version'), $this);?> + + +_tpl_vars['ErrorPage']['version']; ?> + +
+_reg_objects['g'][0]->text(array('text' => 'PHP version'), $this);?> + + +_tpl_vars['ErrorPage']['phpversion']; ?> + _tpl_vars['ErrorPage']['php_sapi_name']; ?> + +
+_reg_objects['g'][0]->text(array('text' => 'Webserver'), $this);?> + + +_tpl_vars['ErrorPage']['webserver']; ?> + +
+_reg_objects['g'][0]->text(array('text' => 'Database'), $this);?> + + +_tpl_vars['ErrorPage']['dbType']; ?> + _tpl_vars['ErrorPage']['dbVersion']; ?> + +
+_reg_objects['g'][0]->text(array('text' => 'Toolkits'), $this);?> + + +_tpl_vars['ErrorPage']['toolkits']; ?> + +
+_reg_objects['g'][0]->text(array('text' => 'Operating system'), $this);?> + + +_tpl_vars['ErrorPage']['php_uname']; ?> + +
+_reg_objects['g'][0]->text(array('text' => 'Browser'), $this);?> + + +_tpl_vars['ErrorPage']['browser']; ?> + +
+
+_tpl_vars['ErrorPage']['debug'] )): ?> +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:templates/debug.tpl", 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+_tpl_vars['ErrorPage']['profile'] )): ?> +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:templates/profile.tpl", 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+ +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%88^887^887A7860%%MarkupBar.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%88^887^887A7860%%MarkupBar.tpl.php new file mode 100644 index 0000000..940ca9c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%88^887^887A7860%%MarkupBar.tpl.php @@ -0,0 +1,171 @@ + +_tpl_vars['theme']['markupType'] == 'bbcode'): if (! empty ( $this->_tpl_vars['firstMarkupBar'] )): ?> + + + + + + + + + + +
+"), $this);?> +" +onclick="openOrCloseTextElement('_tpl_vars['element']; ?> +', 'b', this)" +style="font-weight: bold;"/> +"), $this);?> +" +onclick="openOrCloseTextElement('_tpl_vars['element']; ?> +', 'i', this)" +style="font-style: italic; padding-left: 1px; padding-right: 4px"/> + + + + + +
+_tpl_vars['firstMarkupBar'] )): ?> +
+
 
+
+ +" alt=""/> +
+" alt=""/>
+
+
+
+" alt=""/>
+
+
+
+R +H +
+G +S +
+B +V +
+
+# +
+ +
+
 
+
_reg_objects['g'][0]->text(array('text' => "You can also use the color name for example: %s",'arg1' => "http://www.w3.org/TR/2002/WD-css3-color-20020418/#html4",'arg2' => "[color=red]Your Text[/color]"), $this);?> +
+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%8C^8CF^8CF644B4%%album.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%8C^8CF^8CF644B4%%album.tpl.php new file mode 100644 index 0000000..263c9cd --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%8C^8CF^8CF644B4%%album.tpl.php @@ -0,0 +1,105 @@ + + array(array('modifier', 'markup', 'gallery:themes/abeto/templates/album.tpl', 18, false),array('modifier', 'default', 'gallery:themes/abeto/templates/album.tpl', 56, false),array('modifier', 'entitytruncate', 'gallery:themes/abeto/templates/album.tpl', 65, false),)), $this); ?> + + + + +'; ?> + +_tpl_vars['theme']['item']['description'] )): ?> +

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['theme']['children'] )): ?> + +assign('firstAlbum', true); $this->assign('currentYear', ""); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if ($this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstAlbum']): ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + + + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%96^96F^96F175B3%%Head.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%96^96F^96F175B3%%Head.tpl.php new file mode 100644 index 0000000..a9eb231 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%96^96F^96F175B3%%Head.tpl.php @@ -0,0 +1,61 @@ + + +<?php echo $this->_reg_objects['g'][0]->text(array('text' => 'Publish XP'), $this);?> + + + +_tpl_vars['XpDebug'] )): ?> + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%99^993^9934AE6F%%ItemAddAlbum.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%99^993^9934AE6F%%ItemAddAlbum.tpl.php new file mode 100644 index 0000000..eb9189d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%99^993^9934AE6F%%ItemAddAlbum.tpl.php @@ -0,0 +1,107 @@ + +
+

_reg_objects['g'][0]->text(array('text' => "Add Sub-Album"), $this);?> +

+
+
+

+_reg_objects['g'][0]->text(array('text' => 'Name'), $this);?> + + _reg_objects['g'][0]->text(array('text' => "(required)"), $this);?> + +

+

+_reg_objects['g'][0]->text(array('text' => "The name of this album on your hard disk. It must be unique in this album. Only use alphanumeric characters, underscores or dashes. You will be able to rename it later."), $this);?> + +

+_tpl_vars['ItemAdmin']['parents']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['parent']): + echo ''; echo $this->_tpl_vars['parent']['pathComponent']; echo '/'; endforeach; endif; unset($_from); echo ''; echo $this->_tpl_vars['ItemAdmin']['item']['pathComponent']; echo '/'; ?> + + +" value="_tpl_vars['form']['pathComponent']; ?> +"/> + +_tpl_vars['form']['error']['pathComponent']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Your name contains invalid characters. Please enter another."), $this);?> + +
+_tpl_vars['form']['error']['pathComponent']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter a name for this album."), $this);?> + +
+_tpl_vars['form']['error']['pathComponent']['collision'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "The name you entered is already in use. Please enter another."), $this);?> + +
+ +

_reg_objects['g'][0]->text(array('text' => 'Title'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This is the album title."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => 'title','firstMarkupBar' => true))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +" value="_tpl_vars['form']['title']; ?> +"/> +

_reg_objects['g'][0]->text(array('text' => 'Summary'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This is the album summary."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => 'summary'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +" value="_tpl_vars['form']['summary']; ?> +"/> +

_reg_objects['g'][0]->text(array('text' => 'Keywords'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Keywords are not visible, but are searchable."), $this);?> + +

+ +

_reg_objects['g'][0]->text(array('text' => 'Description'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This is the long description of the album."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => 'description'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Create'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9A^9AE^9AEF97D8%%admin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9A^9AE^9AEF97D8%%admin.tpl.php new file mode 100644 index 0000000..690f678 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9A^9AE^9AEF97D8%%admin.tpl.php @@ -0,0 +1,13 @@ + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9E^9E2^9E27C8E6%%SearchBlock.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9E^9E2^9E27C8E6%%SearchBlock.tpl.php new file mode 100644 index 0000000..ea82295 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9E^9E2^9E27C8E6%%SearchBlock.tpl.php @@ -0,0 +1,45 @@ + +_tpl_vars['showAdvancedLink'] )): ?> assign('showAdvancedLink', 'true'); ?> _tag_stack[] = array('addToTrailer', array(), $this); $_block_repeat=true; $this->_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], null, $this, $_block_repeat); while ($_block_repeat) { ob_start();?> + +_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], $_obj_block_content, $this, $_block_repeat);} array_pop($this->_tag_stack);?> + +
+
+
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + + + +" value="search_SearchBlock"/> + +" +value="_reg_objects['g'][0]->text(array('text' => 'Search the Gallery'), $this);?> +" +onfocus="search_SearchBlock_focus()" +onblur="search_SearchBlock_blur()" +class="textbox"/> + +" value="1" /> +
+_tpl_vars['showAdvancedLink']): ?> + + +
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9F^9F0^9F088BC1%%error.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9F^9F0^9F088BC1%%error.tpl.php new file mode 100644 index 0000000..f7d6503 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%9F^9F0^9F088BC1%%error.tpl.php @@ -0,0 +1,27 @@ + + + + +_reg_objects['g'][0]->head(array(), $this);?> + +_tpl_vars['head']['title'] )): ?> +<?php echo $this->_reg_objects['g'][0]->text(array('text' => "Error!"), $this);?> + + + +"/> + + +
_reg_objects['g'][0]->mainDivAttributes(array(), $this);?> +> +_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => $this->_tpl_vars['theme']['errorTemplate'], 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+_reg_objects['g'][0]->debug(array(), $this);?> + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%AD^AD3^AD313681%%ItemAdmin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%AD^AD3^AD313681%%ItemAdmin.tpl.php new file mode 100644 index 0000000..2c404f3 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%AD^AD3^AD313681%%ItemAdmin.tpl.php @@ -0,0 +1,71 @@ + + array(array('modifier', 'markup', 'gallery:modules/core/templates/ItemAdmin.tpl', 28, false),)), $this); ?> +
+
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + +_tpl_vars['controller'] )): ?> + +_tpl_vars['form']['formName'] )): ?> + +" value="_tpl_vars['form']['formName']; ?> +"/> + + +
+ + + + +
+_tpl_vars['ItemAdmin']['item']['parentId'] || ! empty ( $this->_tpl_vars['ItemAdmin']['thumbnail'] )): ?> +
+_tpl_vars['ItemAdmin']['thumbnail'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'No Thumbnail'), $this);?> + +_reg_objects['g'][0]->image(array('item' => $this->_tpl_vars['ItemAdmin']['item'],'image' => $this->_tpl_vars['ItemAdmin']['thumbnail'],'maxSize' => 130), $this);?> + + +

_tpl_vars['ItemAdmin']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Options'), $this);?> +

+
    +_tpl_vars['ItemAdmin']['subViewChoices']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['choiceName'] => $this->_tpl_vars['choiceParams']): +?> +
  • +_tpl_vars['choiceParams']['active'] )): echo $this->_tpl_vars['choiceName']; ?> + + + _tpl_vars['choiceName']; ?> + + +
  • + +
+
+_reg_objects['g'][0]->block(array('type' => "core.NavigationLinks",'class' => 'gbBlock','navigationLinks' => $this->_tpl_vars['ItemAdmin']['navigationLinks']), $this);?> + +
+
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['ItemAdmin']['viewBodyFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['ItemAdmin']['viewL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%AE^AE2^AE2ECA53%%ThemeSettingsForm.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%AE^AE2^AE2ECA53%%ThemeSettingsForm.tpl.php new file mode 100644 index 0000000..66bee4f --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%AE^AE2^AE2ECA53%%ThemeSettingsForm.tpl.php @@ -0,0 +1,294 @@ + + array(array('function', 'cycle', 'gallery:modules/core/templates/blocks/ThemeSettingsForm.tpl', 23, false),array('function', 'html_options', 'gallery:modules/core/templates/blocks/ThemeSettingsForm.tpl', 37, false),array('modifier', 'default', 'gallery:modules/core/templates/blocks/ThemeSettingsForm.tpl', 28, false),array('modifier', 'replace', 'gallery:modules/core/templates/blocks/ThemeSettingsForm.tpl', 102, false),)), $this); ?> +
+_tpl_vars['message'] )): ?> +

_tpl_vars['message']; ?> +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/JavaScriptWarning.tpl", 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['ThemeSettingsForm']['customTemplate'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['ThemeSettingsForm']['customTemplate']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['ThemeSettingsForm']['theme']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endif; if (! empty ( $this->_tpl_vars['ThemeSettingsForm']['settings'] )): ?> + + + + + +_tpl_vars['ThemeSettingsForm']['settings']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['setting']): + $this->assign('settingKey', $this->_tpl_vars['setting']['key']); ?> + +"> + + + +_tpl_vars['form']['error']['key'][$this->_tpl_vars['settingKey']]['invalid'] )): ?> + + + + +
_reg_objects['g'][0]->text(array('text' => 'Setting'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Value'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Use Global'), $this);?> +
+_tpl_vars['setting']['name']; ?> + + +_tpl_vars['setting']['type'] == 'text-field' )): ?> +_tpl_vars['settingKey'])."]"), $this);?> +" value="_tpl_vars['form']['key'][$this->_tpl_vars['settingKey']]; ?> +"/> +_tpl_vars['setting']['type'] == 'textarea' )): ?> + +_tpl_vars['setting']['type'] == 'single-select' )): ?> + +_tpl_vars['setting']['type'] == 'checkbox' )): ?> +_tpl_vars['settingKey'])."]"), $this);?> +" +_tpl_vars['form']['key'][$this->_tpl_vars['settingKey']] )): ?>checked="checked"/> +_tpl_vars['setting']['type'] == 'block-list' )): ?> + + + + + + + + + + + + + + +
+_reg_objects['g'][0]->text(array('text' => 'Available'), $this);?> + + + + + +_reg_objects['g'][0]->text(array('text' => 'Add'), $this);?> + + +
+_reg_objects['g'][0]->text(array('text' => 'Selected'), $this);?> + + + + + +_reg_objects['g'][0]->text(array('text' => 'Remove'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'Move Up'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'Move Down'), $this);?> + + +
+
+_tpl_vars['settingKey'])."]"), $this);?> +" +value="_tpl_vars['form']['key'][$this->_tpl_vars['settingKey']])) ? $this->_run_mod_handler('replace', true, $_tmp, '"', '"') : smarty_modifier_replace($_tmp, '"', '"')); ?> +"/> + + +
+_tpl_vars['settingKey'])."]"), $this);?> +" +_tpl_vars['ThemeSettingsForm']['globalParams'][$this->_tpl_vars['settingKey']] ) )): ?> +disabled="disabled" +_tpl_vars['form']['useGlobal'][$this->_tpl_vars['settingKey']] ) )): ?> +checked="checked" +/> +
+_tpl_vars['form']['errorMessage'][$this->_tpl_vars['settingKey']]; ?> + +
+_tpl_vars['ThemeSettingsForm']['customTemplate'] )): ?> + _reg_objects['g'][0]->text(array('text' => 'There are no settings for this theme'), $this);?> + + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B0^B01^B0186724%%UserChangePassword.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B0^B01^B0186724%%UserChangePassword.tpl.php new file mode 100644 index 0000000..3696a3a --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B0^B01^B0186724%%UserChangePassword.tpl.php @@ -0,0 +1,92 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'Change Password'), $this);?> +

+
+_tpl_vars['status']['changedPassword'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => 'Password changed successfully'), $this);?> + +

+ +
+

+_reg_objects['g'][0]->text(array('text' => "You must enter your current password to prove that it's you, then enter your new password twice to make sure that you didn't make a mistake."), $this);?> + +

+
+

+_reg_objects['g'][0]->text(array('text' => 'Current Password'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => "(required)"), $this);?> + + +

+ +"/> +_tpl_vars['form']['error']['currentPassword']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter your current password'), $this);?> + +
+_tpl_vars['form']['error']['currentPassword']['incorrect'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Incorrect password'), $this);?> + +
+ +
+
+

+_reg_objects['g'][0]->text(array('text' => 'New Password'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => "(required)"), $this);?> + + +

+ +"/> +_tpl_vars['form']['error']['password1']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a new password'), $this);?> + +
+ +
+
+

+_reg_objects['g'][0]->text(array('text' => 'Verify New Password'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => "(required)"), $this);?> + + +

+ +"/> +_tpl_vars['form']['error']['password2']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter your new password again!"), $this);?> + +
+_tpl_vars['form']['error']['password2']['mismatch'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'The passwords you entered did not match'), $this);?> + +
+ +
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Change'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B2^B2C^B2C8339D%%UploadItems.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B2^B2C^B2C8339D%%UploadItems.tpl.php new file mode 100644 index 0000000..2ee20c6 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B2^B2C^B2C8339D%%UploadItems.tpl.php @@ -0,0 +1,63 @@ + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B3^B37^B3766668%%album_catalogo.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B3^B37^B3766668%%album_catalogo.tpl.php new file mode 100644 index 0000000..66f2ced --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B3^B37^B3766668%%album_catalogo.tpl.php @@ -0,0 +1,92 @@ + + array(array('modifier', 'default', 'gallery:themes/abeto/templates/album_catalogo.tpl', 47, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/album_catalogo.tpl', 47, false),array('modifier', 'entitytruncate', 'gallery:themes/abeto/templates/album_catalogo.tpl', 56, false),)), $this); ?> + +_tpl_vars['theme']['children'] )): ?> + +assign('firstAlbum', true); $this->assign('currentYear', ""); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if ($this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstAlbum']): ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['theme']['item']['description'] )): ?> +
+

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + + + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B4^B48^B484F633%%RearrangeItems.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B4^B48^B484F633%%RearrangeItems.tpl.php new file mode 100644 index 0000000..c30b596 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%B4^B48^B484F633%%RearrangeItems.tpl.php @@ -0,0 +1,139 @@ + + array(array('modifier', 'escape', 'gallery:modules/rearrange/templates/RearrangeItems.tpl', 37, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Rearrange Album'), $this);?> +

+
+_tpl_vars['RearrangeItems']['automaticOrderMessage'] )): ?> +
+

+_reg_objects['g'][0]->text(array('text' => "This album has an automatic sort order specified, so you cannot change the order of items manually. You must remove the automatic sort order to continue."), $this);?> + + "subView=core.ItemEdit",'arg3' => "editPlugin=ItemEditAlbum",'arg4' => "itemId=".($this->_tpl_vars['ItemAdmin']['item']['id'])), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => 'change'), $this);?> + + +

+
+ + +_tpl_vars['status']['saved'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => 'Order saved successfully'), $this);?> + +

+ +
+

+_reg_objects['g'][0]->text(array('text' => "Change the order of the items in this album.%s Click an item to move, then click the new location.",'arg1' => "
"), $this);?> + +

+_tpl_vars['RearrangeItems']['columns'] > 0): ?> + + +
+assign('row', 0); $this->assign('column', 0); $_from = $this->_tpl_vars['RearrangeItems']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }$this->_foreach['childList'] = array('total' => count($_from), 'iteration' => 0); +if ($this->_foreach['childList']['total'] > 0): + foreach ($_from as $this->_tpl_vars['idx'] => $this->_tpl_vars['child']): + $this->_foreach['childList']['iteration']++; + if ($this->_tpl_vars['RearrangeItems']['columns'] > 0): if ($this->_tpl_vars['column'] == 0): ?>
+ +assign('column', $this->_tpl_vars['column']+1); if ($this->_tpl_vars['column'] == $this->_tpl_vars['RearrangeItems']['columns'] || ($this->_foreach['childList']['iteration'] == $this->_foreach['childList']['total'])): ?> + +assign('column', 0); $this->assign('row', $this->_tpl_vars['row']+1); if ($this->_tpl_vars['row'] == $this->_tpl_vars['RearrangeItems']['rows']): ?> + +assign('row', 0); endif; endif; else: ?> + +_tpl_vars['RearrangeItems']['columns'] > 0): ?> +
+ +

+ +
+ + +
+ +" value=""/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BD^BD2^BD245C60%%ItemEditItem.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BD^BD2^BD245C60%%ItemEditItem.tpl.php new file mode 100644 index 0000000..12acd9c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BD^BD2^BD245C60%%ItemEditItem.tpl.php @@ -0,0 +1,236 @@ + + array(array('function', 'html_select_date', 'gallery:modules/core/templates/ItemEditItem.tpl', 112, false),array('function', 'html_select_time', 'gallery:modules/core/templates/ItemEditItem.tpl', 117, false),array('modifier', 'utf8', 'gallery:modules/core/templates/ItemEditItem.tpl', 115, false),)), $this); ?> +
+_tpl_vars['ItemEditItem']['can']['changePathComponent']): ?> +
+

+_reg_objects['g'][0]->text(array('text' => 'Name'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => "(required)"), $this);?> + + +

+

+_reg_objects['g'][0]->text(array('text' => "The name of this item on your hard disk. It must be unique in this album. Only use alphanumeric characters, underscores or dashes."), $this);?> + +

+_tpl_vars['ItemAdmin']['parents']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['parent']): + echo ''; if (empty ( $this->_tpl_vars['parent']['parentId'] )): echo '/'; else: echo ''; echo $this->_tpl_vars['parent']['pathComponent']; echo '/'; endif; echo ''; endforeach; endif; unset($_from); echo ''; ?> + + +" value="_tpl_vars['form']['pathComponent']; ?> +"/> +_tpl_vars['form']['error']['pathComponent']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "Your name contains invalid characters. Please choose another."), $this);?> + +
+_tpl_vars['form']['error']['pathComponent']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter a name for this item."), $this);?> + +
+_tpl_vars['form']['error']['pathComponent']['collision'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "The name you entered is already in use. Please choose another."), $this);?> + +
+ +
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Title'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "The title of this item."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => 'title','firstMarkupBar' => true))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +" value="_tpl_vars['form']['title']; ?> +"/> +_tpl_vars['form']['error']['title']['missingRootTitle'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "The root album must have a title."), $this);?> + +
+ +
+
+

_reg_objects['g'][0]->text(array('text' => 'Summary'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "The summary of this item."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => 'summary'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +" value="_tpl_vars['form']['summary']; ?> +"/> +
+
+

_reg_objects['g'][0]->text(array('text' => 'Keywords'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Keywords are not visible, but are searchable."), $this);?> + +

+ +
+
+

_reg_objects['g'][0]->text(array('text' => 'Description'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This is the long description of the item."), $this);?> + +

+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/core/templates/MarkupBar.tpl", 'smarty_include_vars' => array('viewL10domain' => 'modules_core','element' => 'description'))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> + +
+
+
+

_reg_objects['g'][0]->text(array('text' => "%s Date and Time",'arg1' => $this->_tpl_vars['ItemEditItem']['typeName']['0']), $this);?> +

+

+_tpl_vars['ItemEditItem']['isItemPhoto'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Set the date and time when this image was captured."), $this);?> + +_tpl_vars['ItemEditItem']['isItemUnknown'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "Set the date and time to be displayed for this item."), $this);?> + +_reg_objects['g'][0]->text(array('text' => "Set the date and time to be displayed for this %s.",'arg1' => $this->_tpl_vars['ItemEditItem']['typeName']['1']), $this);?> + + +

+

+_reg_objects['g'][0]->formVar(array('var' => "form[originationTimestampSplit]"), $this); echo ''; $this->_smarty_vars['capture']['originationTimestampField'] = ob_get_contents(); ob_end_clean(); echo $this->_reg_objects['g'][0]->text(array('text' => "Date:"), $this);?> + + $this->_tpl_vars['form']['originationTimestamp'],'field_array' => $this->_smarty_vars['capture']['originationTimestampField'],'start_year' => '1970','end_year' => "+0"), $this);?> + +_smarty_vars['capture']['htmlSelectDate'] = ob_get_contents(); ob_end_clean(); echo ((is_array($_tmp=$this->_smarty_vars['capture']['htmlSelectDate'])) ? $this->_run_mod_handler('utf8', true, $_tmp) : smarty_modifier_utf8($_tmp)); ?> + +_reg_objects['g'][0]->text(array('text' => "Time:"), $this);?> + + $this->_tpl_vars['form']['originationTimestamp'],'field_array' => $this->_smarty_vars['capture']['originationTimestampField']), $this);?> + +
+

+_tpl_vars['ItemEditItem']['originationTimestamp'] )): ?> + +

+_reg_objects['g'][0]->text(array('text' => "Use the original capture date and time from file information (e.g. Exif tag):"), $this);?> + +
+ +_reg_objects['g'][0]->date(array('timestamp' => $this->_tpl_vars['ItemEditItem']['originationTimestamp']['timestamp'],'style' => 'datetime'), $this);?> + + +

+_tpl_vars['form']['error']['originationTimestamp']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a valid date and time'), $this);?> + +
+ +
+_tpl_vars['ItemEditItem']['can']['editThumbnail']): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Thumbnail'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Set the size of the thumbnail. The largest side of the thumbnail will be no larger than this value. Leave this field blank if you don't want a thumbnail."), $this);?> + +

+_tpl_vars['ItemEditItem']['can']['createThumbnail']): ?> + +" value="_tpl_vars['form']['thumbnail']['size']; ?> +"/> + + +_reg_objects['g'][0]->text(array('text' => "There are no graphics toolkits enabled that support this type of item, so we cannot create or modify a thumbnail."), $this);?> + +_tpl_vars['user']['isAdmin']): ?> + "subView=core.AdminPlugins"), $this);?> +"> +_reg_objects['g'][0]->text(array('text' => 'site admin'), $this);?> + + + + +_tpl_vars['form']['error']['thumbnail']['size']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter a number (greater than zero)"), $this);?> + +
+_tpl_vars['form']['error']['thumbnail']['create'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Unable to create a thumbnail for this item'), $this);?> + +
+ +
+_tpl_vars['ItemEdit']['options']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['option']): + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['option']['file']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['option']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endforeach; endif; unset($_from); ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BE^BEF^BEF33303%%NavigationLinks.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BE^BEF^BEF33303%%NavigationLinks.tpl.php new file mode 100644 index 0000000..fa56358 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BE^BEF^BEF33303%%NavigationLinks.tpl.php @@ -0,0 +1,22 @@ + +_tpl_vars['navigationLinks'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Navigation'), $this);?> +

+
    +_tpl_vars['navigationLinks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['link']): +?> +
  • + +_tpl_vars['link']['name']; ?> + + +
  • + +
+
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BF^BF3^BF3089DA%%ItemEditAlbum.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BF^BF3^BF3089DA%%ItemEditAlbum.tpl.php new file mode 100644 index 0000000..1436433 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%BF^BF3^BF3089DA%%ItemEditAlbum.tpl.php @@ -0,0 +1,179 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/ItemEditAlbum.tpl', 13, false),array('function', 'counter', 'gallery:modules/core/templates/ItemEditAlbum.tpl', 62, false),array('function', 'cycle', 'gallery:modules/core/templates/ItemEditAlbum.tpl', 64, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Sort order'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This sets the sort order for the album. This applies to all current items, and any newly added items."), $this);?> + +

+ + +_reg_objects['g'][0]->text(array('text' => 'with'), $this);?> + +
+_reg_objects['g'][0]->changeInDescendents(array('module' => 'sort','text' => 'Apply to all subalbums'), $this);?> + + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Thumbnails'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => " Every item requires a thumbnail. Set the default size in pixels here."), $this);?> + +

+ +" value="_tpl_vars['form']['thumbnail']['size']; ?> +"/> +_tpl_vars['form']['error']['thumbnail']['size']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter a number (greater than zero)"), $this);?> + +
+ +
+_reg_objects['g'][0]->changeInDescendents(array('module' => 'thumbnail','text' => 'Use this thumbnail size in all subalbums'), $this);?> + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Resized Images'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Each item in your album can have multiple sizes. Define the default sizes here."), $this);?> + +

+ + + + + 0,'assign' => 'index'), $this);?> + +_tpl_vars['form']['resizes']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['resize']): +?> + +"> + + +_tpl_vars['form']['error']['resizes'][$this->_tpl_vars['index']]['size']['missing'] )): ?> + +_tpl_vars['form']['error']['resizes'][$this->_tpl_vars['index']]['size']['invalid'] )): ?> + + + + +
_reg_objects['g'][0]->text(array('text' => 'Active'), $this);?> + _reg_objects['g'][0]->text(array('text' => "Target Size (pixels)"), $this);?> +
+_tpl_vars['form']['resizes'][$this->_tpl_vars['index']]['active']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[resizes][".($this->_tpl_vars['index'])."][active]"), $this);?> +"/> + +_reg_objects['g'][0]->dimensions(array('formVar' => "form[resizes][".($this->_tpl_vars['index'])."]",'width' => $this->_tpl_vars['form']['resizes'][$this->_tpl_vars['index']]['width'],'height' => $this->_tpl_vars['form']['resizes'][$this->_tpl_vars['index']]['height']), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => 'You must enter a valid size'), $this);?> + +
+_reg_objects['g'][0]->text(array('text' => "You must enter a number (greater than zero)"), $this);?> + +
+_reg_objects['g'][0]->changeInDescendents(array('module' => 'resizes','text' => 'Use these target sizes in all subalbums'), $this);?> + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Apply settings to existing items'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "The thumbnail and resized image settings are for all new items. To apply these settings to all the items in your album, check the appropriate box. Including subalbums will apply each album's own settings to its thumbnails/resizes, which may not match the settings above. Building images now makes this operation take longer, but saves the time to build and cache each file when it is first viewed."), $this);?> + +

+
+_tpl_vars['form']['recreateThumbnails']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[recreateThumbnails]"), $this);?> +"/> + + +_reg_objects['g'][0]->changeInDescendents(array('module' => 'recreateThumbnails','text' => "... and for all subalbums"), $this);?> + + +_tpl_vars['form']['buildThumbnails']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[buildThumbnails]"), $this);?> +"/> + +
+_tpl_vars['form']['recreateResizes']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[recreateResizes]"), $this);?> +"/> + + +_reg_objects['g'][0]->changeInDescendents(array('module' => 'recreateResizes','text' => "... and for all subalbums"), $this);?> + + +_tpl_vars['form']['buildResizes']): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[buildResizes]"), $this);?> +"/> + +
+
+_tpl_vars['ItemEdit']['options']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['option']): + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['option']['file']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['option']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endforeach; endif; unset($_from); ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%C3^C3D^C3D2B9E8%%CreateThumbnailOption.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%C3^C3D^C3D2B9E8%%CreateThumbnailOption.tpl.php new file mode 100644 index 0000000..8ca4696 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%C3^C3D^C3D2B9E8%%CreateThumbnailOption.tpl.php @@ -0,0 +1,17 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'Thumbnails'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Gallery can create thumbnails at upload time, or create them the first time you want to see the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you create them at upload time it makes viewing albums for the first time go faster at the expense of a longer upload time."), $this);?> + +

+ +"/> + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%C7^C77^C77F75A7%%ItemEditTheme.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%C7^C77^C77F75A7%%ItemEditTheme.tpl.php new file mode 100644 index 0000000..b0e3f96 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%C7^C77^C77F75A7%%ItemEditTheme.tpl.php @@ -0,0 +1,55 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/ItemEditTheme.tpl', 20, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Choose a theme'), $this);?> +

+_tpl_vars['ThemeSettingsForm'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "This album is configured to use the %s theme which is either incompatible with this Gallery version or no longer available. Please upgrade the %s theme or use another theme for this album.",'arg1' => $this->_tpl_vars['ItemEditTheme']['theme'],'arg2' => $this->_tpl_vars['ItemEditTheme']['theme']), $this);?> + +
+ +

+_reg_objects['g'][0]->text(array('text' => "Themes control the look and feel of the album. You can choose a different theme for each album. If you don't choose a theme, we'll use the %s theme by default.",'arg1' => "".($this->_tpl_vars['ThemeSettingsForm']['theme']['name']).""), $this);?> + +

+ +_reg_objects['g'][0]->text(array('text' => 'Theme'), $this);?> + +
+_reg_objects['g'][0]->changeInDescendents(array('module' => 'theme','text' => 'Use this theme in all subalbums'), $this);?> + +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Choose Theme'), $this);?> +"/> +
+_tpl_vars['ThemeSettingsForm'] )): ob_start(); ?>

_reg_objects['g'][0]->text(array('text' => "Configure the %s theme",'arg1' => "".($this->_tpl_vars['ThemeSettingsForm']['theme']['name']).""), $this);?> +

+_reg_objects['g'][0]->text(array('text' => "These settings only apply to the theme for this album."), $this); $this->_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('message', ob_get_contents());ob_end_clean(); echo $this->_reg_objects['g'][0]->block(array('type' => "core.ThemeSettingsForm",'class' => 'gbBlock','message' => $this->_tpl_vars['message'],'formId' => 'itemAdminForm'), $this);?> + +_tpl_vars['ThemeSettingsForm']['settings'] )): ?> +
+_reg_objects['g'][0]->changeInDescendents(array('module' => 'theme','text' => "Use these settings in all subalbums that use the %s theme",'arg1' => $this->_tpl_vars['ThemeSettingsForm']['theme']['name']), $this);?> + +
+ +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save Theme Settings'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%CD^CD7^CD714190%%SiteAdmin.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%CD^CD7^CD714190%%SiteAdmin.tpl.php new file mode 100644 index 0000000..3f41681 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%CD^CD7^CD714190%%SiteAdmin.tpl.php @@ -0,0 +1,69 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/SiteAdmin.tpl', 8, false),)), $this); ?> +
+"> +
+_reg_objects['g'][0]->hiddenFormVars(array(), $this);?> + +_tpl_vars['controller'] )): ?> + +_tpl_vars['form']['formName'] )): ?> + +" value="_tpl_vars['form']['formName']; ?> +" /> + +
+ + + + +
+
+

_reg_objects['g'][0]->text(array('text' => 'Admin Options'), $this);?> +

+ +
+_reg_objects['g'][0]->block(array('type' => "core.NavigationLinks",'class' => 'gbBlock','navigationLinks' => $this->_tpl_vars['SiteAdmin']['navigationLinks']), $this);?> + +
+
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['SiteAdmin']['viewBodyFile']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['SiteAdmin']['viewL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D1^D16^D16309DF%%ItemAddFromBrowser.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D1^D16^D16309DF%%ItemAddFromBrowser.tpl.php new file mode 100644 index 0000000..c384a7c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D1^D16^D16309DF%%ItemAddFromBrowser.tpl.php @@ -0,0 +1,130 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/ItemAddFromBrowser.tpl', 67, false),)), $this); ?> +_tpl_vars['ItemAddFromBrowser']['uploadsPermitted']): ?> +
+_reg_objects['g'][0]->text(array('text' => "Your webserver is configured to disallow file uploads from your web browser at this time. Please contact your system administrator for assistance."), $this);?> + +
+_tpl_vars['form']['error']['upload'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => "There was a problem processing your request, see below for details."), $this);?> + +

+
+_tpl_vars['ItemAddFromBrowser']['status']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['statusEntry']): + echo $this->_tpl_vars['statusEntry']['warnings']['0']; ?> +
+ +
+
+ +
+

+_reg_objects['g'][0]->text(array('text' => "Upload files directly from your computer."), $this);?> + +_reg_objects['g'][0]->text(array('text' => "Enter the full path to the file and an optional caption in the boxes below."), $this);?> + +

+

+_tpl_vars['ItemAddFromBrowser']['maxFileSize'] == 0): echo $this->_reg_objects['g'][0]->text(array('text' => "Note: You can upload up to %s at one time. If you want to upload more than that, you must upload the files separately, use a different upload format, or ask your system administrator to allow larger uploads.",'arg1' => $this->_tpl_vars['ItemAddFromBrowser']['totalUploadSize']), $this);?> + +_reg_objects['g'][0]->text(array('text' => "Note: You can upload up to %s at one time. No individual file may be larger than %s. If you want to upload more than that, you must upload the files separately, use a different upload format, or ask your system administrator to allow larger uploads.",'arg1' => $this->_tpl_vars['ItemAddFromBrowser']['totalUploadSize'],'arg2' => $this->_tpl_vars['ItemAddFromBrowser']['maxFileSize']), $this);?> + + +

+assign('UPLOAD_BOX_COUNT', '20'); $this->assign('VISIBLE_BOX_COUNT', '2'); unset($this->_sections['uploadBoxes']); +$this->_sections['uploadBoxes']['name'] = 'uploadBoxes'; +$this->_sections['uploadBoxes']['loop'] = is_array($_loop=$this->_tpl_vars['UPLOAD_BOX_COUNT']) ? count($_loop) : max(0, (int)$_loop); unset($_loop); +$this->_sections['uploadBoxes']['show'] = true; +$this->_sections['uploadBoxes']['max'] = $this->_sections['uploadBoxes']['loop']; +$this->_sections['uploadBoxes']['step'] = 1; +$this->_sections['uploadBoxes']['start'] = $this->_sections['uploadBoxes']['step'] > 0 ? 0 : $this->_sections['uploadBoxes']['loop']-1; +if ($this->_sections['uploadBoxes']['show']) { + $this->_sections['uploadBoxes']['total'] = $this->_sections['uploadBoxes']['loop']; + if ($this->_sections['uploadBoxes']['total'] == 0) + $this->_sections['uploadBoxes']['show'] = false; +} else + $this->_sections['uploadBoxes']['total'] = 0; +if ($this->_sections['uploadBoxes']['show']): + + for ($this->_sections['uploadBoxes']['index'] = $this->_sections['uploadBoxes']['start'], $this->_sections['uploadBoxes']['iteration'] = 1; + $this->_sections['uploadBoxes']['iteration'] <= $this->_sections['uploadBoxes']['total']; + $this->_sections['uploadBoxes']['index'] += $this->_sections['uploadBoxes']['step'], $this->_sections['uploadBoxes']['iteration']++): +$this->_sections['uploadBoxes']['rownum'] = $this->_sections['uploadBoxes']['iteration']; +$this->_sections['uploadBoxes']['index_prev'] = $this->_sections['uploadBoxes']['index'] - $this->_sections['uploadBoxes']['step']; +$this->_sections['uploadBoxes']['index_next'] = $this->_sections['uploadBoxes']['index'] + $this->_sections['uploadBoxes']['step']; +$this->_sections['uploadBoxes']['first'] = ($this->_sections['uploadBoxes']['iteration'] == 1); +$this->_sections['uploadBoxes']['last'] = ($this->_sections['uploadBoxes']['iteration'] == $this->_sections['uploadBoxes']['total']); + $this->assign('iteration', $this->_sections['uploadBoxes']['iteration']); ?> +
_tpl_vars['iteration'] > $this->_tpl_vars['VISIBLE_BOX_COUNT']): ?> style="display:none"> +

_reg_objects['g'][0]->text(array('text' => 'File'), $this);?> +

+_tpl_vars['iteration'])."]"), $this);?> +"/> +

_reg_objects['g'][0]->text(array('text' => 'Caption'), $this);?> +

+ +
+_tpl_vars['UPLOAD_BOX_COUNT'] > $this->_tpl_vars['VISIBLE_BOX_COUNT']): ?> + + +
+
+_reg_objects['g'][0]->text(array('text' => "Set item titles from:"), $this);?> + + +  +_reg_objects['g'][0]->text(array('text' => "Assign caption to:"), $this);?> + +_tpl_vars['form']['set']['summary'] )): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[set][summary]"), $this);?> +"/> + +  +_tpl_vars['form']['set']['description'] )): ?> checked="checked" +name="_reg_objects['g'][0]->formVar(array('var' => "form[set][description]"), $this);?> +"/> + +
+_tpl_vars['ItemAdd']['options']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['option']): + $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['option']['file']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['option']['l10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + endforeach; endif; unset($_from); ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Add Items'), $this);?> +"/> +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D3^D37^D3718627%%SetupRewrite.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D3^D37^D3718627%%SetupRewrite.tpl.php new file mode 100644 index 0000000..e10e0d1 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D3^D37^D3718627%%SetupRewrite.tpl.php @@ -0,0 +1,105 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'URL Rewrite Setup'), $this);?> +

+
+_tpl_vars['status'] )): ?> +

+_tpl_vars['status']['saved'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Successfully saved settings'), $this);?> + + +

+_tpl_vars['form']['error'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'An error occured while trying to save your settings'), $this);?> +

+_tpl_vars['SetupRewrite']['errors'] )): ?> +
+_tpl_vars['SetupRewrite']['errors']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['errstr']): + echo $this->_tpl_vars['errstr']; ?> +
+ +
+ +
+_tpl_vars['SetupRewrite']['bootstrap'] )): if ($this->_tpl_vars['SetupRewrite']['server'] != 'IIS'): ?> +
+

"form[parser]=modrewrite",'arg3' => "form[action][save]=1"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'Apache mod_rewrite'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "The Apache mod_rewrite module is installed on most Apache servers by default. If you are unsure of what method you should choose then select this. Gallery will try to detect if your server supports mod_rewrite."), $this);?> + +

+
+_tpl_vars['SetupRewrite']['server'] != 'APACHE'): ?> +
+

"form[parser]=isapirewrite",'arg3' => "form[action][save]=1"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'IIS ISAPI_Rewrite'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "This method allows for short URLs on IIS servers with ISAPI Rewrite installed. Gallery will try to detect if your server supports this method before activating the module."), $this);?> +
+

    +
  • _reg_objects['g'][0]->text(array('text' => "A pattern may not begin with a keyword."), $this);?> +
  • +
+

+
+ +
+

"form[parser]=pathinfo",'arg3' => "form[action][save]=1"), $this);?> +">_reg_objects['g'][0]->text(array('text' => 'PHP Path Info'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Using Path Info is supported by most systems. With this method Gallery parses the URL itself during the request."), $this);?> + +

    +
  • _reg_objects['g'][0]->text(array('text' => "It is recomended that you don't activate the 'Download Item' URL since it will slow down Gallery."), $this);?> +
  • +
  • _reg_objects['g'][0]->text(array('text' => "Block hotlinking is not supported."), $this);?> +
  • +
+

+
+_tpl_vars['AdminParser']['template'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['AdminParser']['template']), 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + if (isset ( $this->_tpl_vars['AdminParser']['action'] )): ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +
+_tpl_vars['TestResults']['template'] )): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['TestResults']['template']), 'smarty_include_vars' => array())); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Back'), $this);?> +"/> +_tpl_vars['TestResults']['action'] )): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> +_tpl_vars['SetupRewrite']['needsConfiguration']): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Done'), $this);?> +"/> +_tpl_vars['TestResults']['refresh'] )): ?> + +" value="_reg_objects['g'][0]->text(array('text' => 'Test again'), $this);?> +"/> + +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D4^D4B^D4BC52B4%%ItemMakeHighlight.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D4^D4B^D4BC52B4%%ItemMakeHighlight.tpl.php new file mode 100644 index 0000000..b4c1c92 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D4^D4B^D4BC52B4%%ItemMakeHighlight.tpl.php @@ -0,0 +1,42 @@ + + array(array('function', 'counter', 'gallery:modules/core/templates/ItemMakeHighlight.tpl', 17, false),array('modifier', 'markup', 'gallery:modules/core/templates/ItemMakeHighlight.tpl', 19, false),array('modifier', 'indent', 'gallery:modules/core/templates/ItemMakeHighlight.tpl', 19, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Album Highlight'), $this);?> +

+
+
+

+_reg_objects['g'][0]->text(array('text' => "You can make this item the thumbnail for its parent or any ancestor album."), $this);?> + +

+

+_reg_objects['g'][0]->text(array('text' => "Highlight for:"), $this);?> + + +

+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Highlight'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D5^D56^D560652F%%JavaScriptWarning.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D5^D56^D560652F%%JavaScriptWarning.tpl.php new file mode 100644 index 0000000..d4a1189 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D5^D56^D560652F%%JavaScriptWarning.tpl.php @@ -0,0 +1,8 @@ + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D8^D8C^D8C0D171%%UserPreferences.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D8^D8C^D8C0D171%%UserPreferences.tpl.php new file mode 100644 index 0000000..76336de --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%D8^D8C^D8C0D171%%UserPreferences.tpl.php @@ -0,0 +1,106 @@ + + array(array('function', 'html_options', 'gallery:modules/core/templates/UserPreferences.tpl', 53, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Account Settings'), $this);?> +

+
+_tpl_vars['status']['saved'] )): ?> +

+_reg_objects['g'][0]->text(array('text' => 'Account settings saved successfully'), $this);?> + +

+ +
+
+

_reg_objects['g'][0]->text(array('text' => 'Username'), $this);?> +

+

+_tpl_vars['user']['userName']; ?> + +

+
+
+

_reg_objects['g'][0]->text(array('text' => 'Full Name'), $this);?> +

+ +" value="_tpl_vars['form']['fullName']; ?> +"/> +
+
+

+_reg_objects['g'][0]->text(array('text' => "E-mail Address"), $this);?> + + +_tpl_vars['UserAdmin']['isSiteAdmin'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "(required, password required for change)"), $this);?> + +_reg_objects['g'][0]->text(array('text' => "(suggested, password required for change)"), $this);?> + + + +

+ +" value="_tpl_vars['form']['email']; ?> +"/> +_tpl_vars['form']['error']['email']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'You must enter an email address'), $this);?> + +
+_tpl_vars['form']['error']['email']['invalid'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Invalid email address'), $this);?> + +
+ +
+_tpl_vars['UserPreferences']['translationsSupported']): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Language'), $this);?> +

+ +
+ +
+

+_reg_objects['g'][0]->text(array('text' => 'Current Password'), $this);?> + + +_reg_objects['g'][0]->text(array('text' => "(required to change the e-mail address)"), $this);?> + + +

+ +"/> +_tpl_vars['form']['error']['currentPassword']['missing'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must enter your current password to change the e-mail address"), $this);?> + +
+_tpl_vars['form']['error']['currentPassword']['incorrect'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => 'Incorrect password'), $this);?> + +
+ +
+
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Save'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Reset'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%DA^DA3^DA35DB4F%%AdminPluginsLegend.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%DA^DA3^DA35DB4F%%AdminPluginsLegend.tpl.php new file mode 100644 index 0000000..e8cad42 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%DA^DA3^DA35DB4F%%AdminPluginsLegend.tpl.php @@ -0,0 +1,34 @@ + +
+ +_reg_objects['g'][0]->text(array('text' => 'up to date'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'disabled'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'upgrade required'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'not installed'), $this);?> + + + +_reg_objects['g'][0]->text(array('text' => 'incompatible'), $this);?> + + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%DA^DAE^DAEEE225%%ShowComments.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%DA^DAE^DAEEE225%%ShowComments.tpl.php new file mode 100644 index 0000000..c1df36e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%DA^DAE^DAEEE225%%ShowComments.tpl.php @@ -0,0 +1,34 @@ + +
+

_reg_objects['g'][0]->text(array('text' => 'View Comments'), $this);?> +

+
+_tpl_vars['status'] )): ?> +
+

+_tpl_vars['status']['changed'] )): echo $this->_reg_objects['g'][0]->text(array('text' => 'Comment changed successfully'), $this);?> + + +

+
+_tpl_vars['ShowComments']['comments'] )): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'There are no comments for this item'), $this);?> +

+
+ +
+_tpl_vars['ShowComments']['comments']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['comment']): +?> +
+_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:modules/comment/templates/Comment.tpl", 'smarty_include_vars' => array('comment' => $this->_tpl_vars['comment'],'item' => $this->_tpl_vars['ShowComments']['item'],'can' => $this->_tpl_vars['ShowComments']['can'],'user' => $this->_tpl_vars['ShowComments']['commenters'][$this->_tpl_vars['comment']['commenterId']]))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + ?> +
+ +
+ \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%E0^E02^E02A3C22%%Dimensions.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%E0^E02^E02A3C22%%Dimensions.tpl.php new file mode 100644 index 0000000..8b8a50e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%E0^E02^E02A3C22%%Dimensions.tpl.php @@ -0,0 +1,39 @@ + +_tpl_vars['callCount'] == 1): echo ' + +'; endif; ?> +_tpl_vars['width'] )): ?>value="_tpl_vars['width']; ?> +"/> +x +_tpl_vars['height'] )): ?>value="_tpl_vars['height']; ?> +"/> \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%EF^EFB^EFB895FB%%EmergencyEditItemLink.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%EF^EFB^EFB895FB%%EmergencyEditItemLink.tpl.php new file mode 100644 index 0000000..0f79afa --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%EF^EFB^EFB895FB%%EmergencyEditItemLink.tpl.php @@ -0,0 +1,14 @@ + + array(array('modifier', 'default', 'gallery:modules/core/templates/blocks/EmergencyEditItemLink.tpl', 8, false),)), $this); ?> +_tpl_vars['item'] )): ?> assign('item', $this->_tpl_vars['theme']['item']); ?> _reg_objects['g'][0]->callback(array('type' => "core.ShouldShowEmergencyEditItemLink",'permissions' => ((is_array($_tmp=@$this->_tpl_vars['permissions'])) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['permissions']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['permissions'])),'checkBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, null) : smarty_modifier_default($_tmp, null)),'checkSidebarBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkSidebarBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, false) : smarty_modifier_default($_tmp, false)),'checkAlbumBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkAlbumBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, false) : smarty_modifier_default($_tmp, false)),'checkPhotoBlocks' => ((is_array($_tmp=@$this->_tpl_vars['checkPhotoBlocks'])) ? $this->_run_mod_handler('default', true, $_tmp, false) : smarty_modifier_default($_tmp, false))), $this);?> + +_tpl_vars['block']['core']['ShouldShowEmergencyEditItemLink'] )): ?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F0^F04^F0401ED2%%album_armarios.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F0^F04^F0401ED2%%album_armarios.tpl.php new file mode 100644 index 0000000..196c9eb --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F0^F04^F0401ED2%%album_armarios.tpl.php @@ -0,0 +1,92 @@ + + array(array('modifier', 'default', 'gallery:themes/abeto/templates/album_armarios.tpl', 47, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/album_armarios.tpl', 47, false),array('modifier', 'entitytruncate', 'gallery:themes/abeto/templates/album_armarios.tpl', 56, false),)), $this); ?> + +_tpl_vars['theme']['children'] )): ?> + +assign('firstAlbum', true); $this->assign('currentYear', ""); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if ($this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstAlbum']): ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['theme']['item']['description'] )): ?> +
+

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + + + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F0^F06^F06B1FBE%%frontpage.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F0^F06^F06B1FBE%%frontpage.tpl.php new file mode 100644 index 0000000..b7cc160 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F0^F06^F06B1FBE%%frontpage.tpl.php @@ -0,0 +1,83 @@ + + array(array('modifier', 'replace', 'gallery:themes/abeto/templates/frontpage.tpl', 69, false),array('modifier', 'markup', 'gallery:themes/abeto/templates/frontpage.tpl', 98, false),)), $this); ?> +_tpl_vars['theme']['children'] )): ?> + + + + + + +'; ?> + +assign('firstItem', true); $_from = $this->_tpl_vars['theme']['children']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['child']): + if (! $this->_tpl_vars['child']['canContainChildren']): if ($this->_tpl_vars['firstItem']): ?> + +_tpl_vars['theme']['totalPages'] > 1): echo $this->_reg_objects['g'][0]->block(array('type' => "core.Navigator",'navigator' => $this->_tpl_vars['theme']['navigator'],'prefix' => "« ",'suffix' => " »",'currentPage' => $this->_tpl_vars['theme']['currentPage'],'totalPages' => $this->_tpl_vars['theme']['totalPages']), $this);?> + +_tpl_vars['theme']['item']['description'] )): ?> +
+

_tpl_vars['theme']['item']['description'])) ? $this->_run_mod_handler('markup', true, $_tmp) : smarty_modifier_markup($_tmp)); ?> +

+_tpl_vars['user']['isRegisteredUser']): $_from = $this->_tpl_vars['theme']['params']['albumBlocks']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['block']): + echo $this->_reg_objects['g'][0]->block(array('type' => $this->_tpl_vars['block']['0'],'params' => $this->_tpl_vars['block']['1']), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.GuestPreview",'class' => 'gbBlock'), $this);?> + +_reg_objects['g'][0]->block(array('type' => "core.EmergencyEditItemLink",'class' => 'gbBlock','checkBlocks' => 'album'), $this);?> diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F1^F14^F140CEDC%%AdminRepositoryDownload.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F1^F14^F140CEDC%%AdminRepositoryDownload.tpl.php new file mode 100644 index 0000000..3baa62d --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F1^F14^F140CEDC%%AdminRepositoryDownload.tpl.php @@ -0,0 +1,136 @@ + + array(array('function', 'counter', 'gallery:modules/core/templates/AdminRepositoryDownload.tpl', 61, false),)), $this); ?> +
+

_reg_objects['g'][0]->text(array('text' => "Download %s",'arg1' => $this->_tpl_vars['AdminRepositoryDownload']['pluginName']), $this);?> +

+
+_tpl_vars['form']['error'] )): ?> +
+

+_tpl_vars['form']['error']['nothingSelected'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "No packages have been selected."), $this);?> + + +

+
+ + +
+

+_reg_objects['g'][0]->text(array('text' => "Download a package in order to use this plugin. You can upgrade by choosing a newer version of the package to download. Language packages are optional, You only need to download the ones that you want to use on your site."), $this);?> + +

+

_reg_objects['g'][0]->text(array('text' => 'Base Packages'), $this);?> +

+_tpl_vars['AdminRepositoryDownload']['upgradeData']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['item']): +?> +

+_tpl_vars['item']['base']['relation'] == 'older'): ?> + +" value="_tpl_vars['item']['repository']; ?> +:_tpl_vars['item']['base']['newBuild']; ?> +"/> +_reg_objects['g'][0]->text(array('text' => "%s: version %s (build %s)",'arg1' => "".($this->_tpl_vars['item']['repositoryName'])."",'arg2' => $this->_tpl_vars['item']['base']['newVersion'],'arg3' => $this->_tpl_vars['item']['base']['newBuild']), $this);?> + +_tpl_vars['item']['base']['relation'] == 'newer'): ?> + +_reg_objects['g'][0]->text(array('text' => "%s: version %s (build %s) %sdowngrading is not supported!%s",'arg1' => "".($this->_tpl_vars['item']['repositoryName'])."",'arg2' => $this->_tpl_vars['item']['base']['newVersion'],'arg3' => $this->_tpl_vars['item']['base']['newBuild'],'arg4' => "",'arg5' => ""), $this);?> + + + +" value="_tpl_vars['item']['repository']; ?> +:_tpl_vars['item']['base']['newBuild']; ?> +" checked="checked"/> +_reg_objects['g'][0]->text(array('text' => "%sCurrently Installed%s: version %s (build %s)",'arg1' => "",'arg2' => "",'arg3' => $this->_tpl_vars['item']['base']['newVersion'],'arg4' => $this->_tpl_vars['item']['base']['newBuild']), $this);?> + +assign('currentlyInstalled', $this->_tpl_vars['item']['repository']); endif; ?> +

+ +

_reg_objects['g'][0]->text(array('text' => 'Language Packages'), $this);?> +

+_tpl_vars['AdminRepositoryDownload']['upgradeData']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['item']): +?> +
+
+

+_tpl_vars['item']['languages'] )): echo $this->_reg_objects['g'][0]->text(array('text' => "(%sselect all%s%sselect none%s)",'arg1' => "_tpl_vars['item']['repository'])."_selectAllLink\" href=\"javascript:selectAll('".($this->_tpl_vars['item']['repository'])."')\">",'arg2' => "",'arg3' => "_tpl_vars['item']['repository'])."_selectNoneLink\" href=\"javascript:selectNone('".($this->_tpl_vars['item']['repository'])."')\">",'arg4' => ""), $this);?> + +_tpl_vars['item']['languages']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }if (count($_from)): + foreach ($_from as $this->_tpl_vars['code'] => $this->_tpl_vars['pack']): +?> +
+ 'langId'), $this);?> + +assign('checked', ""); ?> + +_smarty_vars['capture']['default'] = ob_get_contents(); $this->assign('label', ob_get_contents());ob_end_clean(); ?> + +" value="_tpl_vars['item']['repository']; ?> +:_tpl_vars['code']; ?> +"/> + +" +value="_tpl_vars['item']['repository']; ?> +:_tpl_vars['code']; ?> +:_tpl_vars['pack']['newBuild']; ?> +" _tpl_vars['checked'] )): ?>checked="_tpl_vars['checked']; ?> +"/> +_tpl_vars['label']; ?> + + _reg_objects['g'][0]->text(array('text' => 'No compatible language packages available'), $this);?> + + +

+
+
+_tpl_vars['currentlyInstalled'] )): ?> +
+_reg_objects['g'][0]->text(array('text' => "You must select a base package before choosing language packs."), $this);?> + +
+ +
+
+ +" value="_reg_objects['g'][0]->text(array('text' => 'Update'), $this);?> +"/> + +" value="_reg_objects['g'][0]->text(array('text' => 'Cancel'), $this);?> +"/> + +" value="_tpl_vars['AdminRepositoryDownload']['pluginType']; ?> +" /> + +" value="_tpl_vars['AdminRepositoryDownload']['pluginId']; ?> +" /> +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F4^F4B^F4B9B8C9%%theme.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F4^F4B^F4B9B8C9%%theme.tpl.php new file mode 100644 index 0000000..0d36131 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F4^F4B^F4B9B8C9%%theme.tpl.php @@ -0,0 +1,101 @@ + + array(array('modifier', 'markup', 'gallery:themes/abeto/templates/theme.tpl', 17, false),array('modifier', 'default', 'gallery:themes/abeto/templates/theme.tpl', 17, false),)), $this); ?> + + + + +_reg_objects['g'][0]->head(array(), $this);?> + +_tpl_vars['theme']['parents'] ) && $this->_tpl_vars['theme']['pageType'] == 'album' )): ?> +Abeto Armarios - Especialistas en armarios, cocinas, mobiliario, muebles de baño y tarima +_tpl_vars['head']['title'] )): ?> +Abeto Armarios - <?php echo ((is_array($_tmp=((is_array($_tmp=$this->_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> + + + + + + +"/> + +"/> + +"/> + + +'; ?> + + + + +
_reg_objects['g'][0]->mainDivAttributes(array(), $this);?> +> +_tpl_vars['theme']['useFullScreen']): $_smarty_tpl_vars = $this->_tpl_vars; +$this->_smarty_include(array('smarty_include_tpl_file' => "gallery:".($this->_tpl_vars['theme']['moduleTemplate']), 'smarty_include_vars' => array('l10Domain' => $this->_tpl_vars['theme']['moduleL10Domain']))); +$this->_tpl_vars = $_smarty_tpl_vars; +unset($_smarty_tpl_vars); + elseif ($this->_tpl_vars['theme']['pageType'] == 'progressbar'): echo $this->_reg_objects['g'][0]->theme(array('include' => "header.tpl"), $this);?> + +
+_reg_objects['g'][0]->theme(array('include' => "progressbar.tpl"), $this);?> + +
+_reg_objects['g'][0]->theme(array('include' => "header.tpl"), $this);?> + +
+_tpl_vars['theme']['parents'] ) && $this->_tpl_vars['theme']['pageType'] == 'album' )): echo $this->_reg_objects['g'][0]->theme(array('include' => "frontpage.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album' ) && ( $this->_tpl_vars['theme']['item']['title'] == 'Contacto' )): echo $this->_reg_objects['g'][0]->theme(array('include' => "contacto.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album' ) && ( $this->_tpl_vars['theme']['item']['id'] == 144 )): ?> +_reg_objects['g'][0]->theme(array('include' => "album_catalogo.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album' ) && ( $this->_tpl_vars['theme']['item']['title'] == 'Armarios' )): ?> +_reg_objects['g'][0]->theme(array('include' => "album_armarios.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'album'): echo $this->_reg_objects['g'][0]->theme(array('include' => "album.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'photo'): echo $this->_reg_objects['g'][0]->theme(array('include' => "photo.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'admin'): echo $this->_reg_objects['g'][0]->theme(array('include' => "admin.tpl"), $this);?> + +_tpl_vars['theme']['pageType'] == 'module'): echo $this->_reg_objects['g'][0]->theme(array('include' => "module.tpl"), $this);?> + +_tpl_vars['user']['isRegisteredUser']): if (empty ( $this->_tpl_vars['theme']['parents'] )): ?> + + + + +
+
+_reg_objects['g'][0]->trailer(array(), $this);?> + +_reg_objects['g'][0]->debug(array(), $this);?> + + + \ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F8^F86^F86665F9%%progressbar.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F8^F86^F86665F9%%progressbar.tpl.php new file mode 100644 index 0000000..dd41ae9 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F8^F86^F86665F9%%progressbar.tpl.php @@ -0,0 +1,62 @@ + +
+

+  +

+

+  +

+ + + + + +
  
+

+  +

+

+  +

+ + +
+_tag_stack[] = array('addToTrailer', array(), $this); $_block_repeat=true; $this->_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], null, $this, $_block_repeat); while ($_block_repeat) { ob_start(); echo ' + +'; ?> + +_reg_objects['g'][0]->addToTrailer($this->_tag_stack[count($this->_tag_stack)-1][1], $_obj_block_content, $this, $_block_repeat);} array_pop($this->_tag_stack);?> diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F9^F90^F909E4BF%%ModRewriteTestResults.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F9^F90^F909E4BF%%ModRewriteTestResults.tpl.php new file mode 100644 index 0000000..e51526e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%F9^F90^F909E4BF%%ModRewriteTestResults.tpl.php @@ -0,0 +1,229 @@ + +
+ + + +_tpl_vars['TestResults']['gallery']['modRewrite'] != $this->_tpl_vars['TestResults']['gallery']['trueModRewrite']): ?> + + +_tpl_vars['TestResults']['gallery']['modRewrite'] != REWRITE_STATUS_OK): ?> + + + + + + +_tpl_vars['TestResults']['gallery']['htaccess'] != REWRITE_STATUS_OK): ?> + + +_tpl_vars['TestResults']['embedded'] )): ?> + + + +_tpl_vars['TestResults']['embedded']['htaccess'] != REWRITE_STATUS_OK): ?> + +_tpl_vars['TestResults']['embedded']['htaccessPath'] == '/.htaccess'): ?> + + + + +
+

_reg_objects['g'][0]->text(array('text' => 'Apache mod_rewrite'), $this);?> +

+ +mod_rewrite +_smarty_vars['capture']['mod_rewrite_anchor'] = ob_get_contents(); ob_end_clean(); ?> +

+_reg_objects['g'][0]->text(array('text' => "Testing if %s is supported by the server.",'arg1' => $this->_smarty_vars['capture']['mod_rewrite_anchor']), $this);?> + +

+
+_tpl_vars['TestResults']['gallery']['modRewrite'] == REWRITE_STATUS_OK): ?> +

_reg_objects['g'][0]->text(array('text' => 'Success'), $this);?> +

+ +

_reg_objects['g'][0]->text(array('text' => 'Warning'), $this);?> +

+ +
+

+_reg_objects['g'][0]->text(array('text' => "The current status may not be accurate, you have forced the test to pass."), $this);?> + +

+
+_tpl_vars['TestResults']['gallery']['modRewrite'] != REWRITE_STATUS_MULTISITE): if ($this->_tpl_vars['TestResults']['gallery']['modRewrite'] == REWRITE_STATUS_APACHE_UNABLE_TO_TEST): ?> +
+

_reg_objects['g'][0]->text(array('text' => 'Custom Gallery directory test setup'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Gallery tries to test mod_rewrite in action. For this to work you need to edit each of these two files accordingly:"), $this);?> + +

+

+_tpl_vars['TestResults']['gallery']['customFile1']; ?> +
+_reg_objects['g'][0]->text(array('text' => "Line 6:"), $this);?> + _tpl_vars['TestResults']['gallery']['customLine1']; ?> + +

+

+_tpl_vars['TestResults']['gallery']['customFile2']; ?> +
+_reg_objects['g'][0]->text(array('text' => "Line 6:"), $this);?> + _tpl_vars['TestResults']['gallery']['customLine2']; ?> + +

+
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Test mod_rewrite manually'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "For whatever reason, Gallery did not detect a working mod_rewrite setup. If you are confident that mod_rewrite does work you may override the automatic detection. Please, run these two tests to see for yourself."), $this);?> + +

+ + + + + + + + + +
_reg_objects['g'][0]->text(array('text' => 'Works'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Test'), $this);?> +
+ +"/> + +_reg_objects['g'][0]->text(array('text' => "mod_rewrite configuration 1 (with global Options +FollowSymlinks)"), $this);?> + +
+ +"/> + +_reg_objects['g'][0]->text(array('text' => "mod_rewrite configuration 2 (with local Options +FollowSymlinks)"), $this);?> + +
+

+_reg_objects['g'][0]->text(array('text' => "If one of the two tests gives you a page with the text PASS_REWRITE you are good to go."), $this);?> + +

+
+ +
+

_reg_objects['g'][0]->text(array('text' => 'Apache mod_rewrite and Gallery multisite'), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Gallery tries to test mod_rewrite in action. This does not work with multisite since Gallery lacks the complete codebase."), $this);?> + +

+ + + + + + + + + +
_reg_objects['g'][0]->text(array('text' => 'Force'), $this);?> + _reg_objects['g'][0]->text(array('text' => 'Test'), $this);?> +
+ +"/> + +_reg_objects['g'][0]->text(array('text' => "mod_rewrite configuration 1 (with global Options +FollowSymlinks)"), $this);?> + +
+ +"/> + +_reg_objects['g'][0]->text(array('text' => "mod_rewrite configuration 2 (with local Options +FollowSymlinks)"), $this);?> + +
+
+ +
+

_reg_objects['g'][0]->text(array('text' => "Gallery .htaccess file"), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Testing if Gallery can write to the .htaccess file."), $this);?> + +

+
+_tpl_vars['TestResults']['gallery']['htaccess'] == REWRITE_STATUS_OK): ?> +

_reg_objects['g'][0]->text(array('text' => 'Success'), $this);?> +

+ +

_reg_objects['g'][0]->text(array('text' => 'Error'), $this);?> +

+ +
+
+_tpl_vars['TestResults']['gallery']['htaccess'] == REWRITE_STATUS_HTACCESS_MISSING): ?> +

_reg_objects['g'][0]->text(array('text' => "Please create a file in your Gallery directory named .htaccess"), $this);?> +

+
touch _tpl_vars['TestResults']['gallery']['htaccessPath']; ?>
+
chmod 666 _tpl_vars['TestResults']['gallery']['htaccessPath']; ?> +
+_tpl_vars['TestResults']['gallery']['htaccess'] == REWRITE_STATUS_HTACCESS_CANT_READ): ?> +

_reg_objects['g'][0]->text(array('text' => "Please make sure Gallery can read the existing .htaccess file"), $this);?> +

+
chmod 666 _tpl_vars['TestResults']['gallery']['htaccessPath']; ?>
+
+_tpl_vars['TestResults']['gallery']['htaccess'] == REWRITE_STATUS_HTACCESS_CANT_WRITE): ?> +

_reg_objects['g'][0]->text(array('text' => "Please make sure Gallery can write to the existing .htaccess file"), $this);?> +

+
chmod 666 _tpl_vars['TestResults']['gallery']['htaccessPath']; ?>
+
+ +
+
+

_reg_objects['g'][0]->text(array('text' => "Embedded .htaccess file"), $this);?> +

+

+_reg_objects['g'][0]->text(array('text' => "Testing if Gallery can write to the embedded .htaccess file."), $this);?> + +

+
+_tpl_vars['TestResults']['embedded']['htaccess'] == REWRITE_STATUS_OK): ?> +

_reg_objects['g'][0]->text(array('text' => 'Success'), $this);?> +

+ +

_reg_objects['g'][0]->text(array('text' => 'Error'), $this);?> +

+ +
+
+

+_reg_objects['g'][0]->text(array('text' => "Please configure the embedded htaccess path."), $this);?> + +

+
+
+
+_tpl_vars['TestResults']['embedded']['htaccess'] == REWRITE_STATUS_HTACCESS_MISSING): ?> +

_reg_objects['g'][0]->text(array('text' => "Please create a file in your Gallery directory named .htaccess"), $this);?> +

+
touch _tpl_vars['TestResults']['embedded']['htaccessPath']; ?>
+
chmod 666 _tpl_vars['TestResults']['embedded']['htaccessPath']; ?> +
+_tpl_vars['TestResults']['embedded']['htaccess'] == REWRITE_STATUS_HTACCESS_CANT_READ): ?> +

_reg_objects['g'][0]->text(array('text' => "Please make sure Gallery can read the existing .htaccess file"), $this);?> +

+
chmod 666 _tpl_vars['TestResults']['embedded']['htaccessPath']; ?>
+
+_tpl_vars['TestResults']['embedded']['htaccess'] == REWRITE_STATUS_HTACCESS_CANT_WRITE): ?> +

_reg_objects['g'][0]->text(array('text' => "Please make sure Gallery can write to the existing .htaccess file"), $this);?> +

+
chmod 666 _tpl_vars['TestResults']['embedded']['htaccessPath']; ?>
+
+ +
+
+
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%FD^FD9^FD9328A6%%BreadCrumb.tpl.php b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%FD^FD9^FD9328A6%%BreadCrumb.tpl.php new file mode 100644 index 0000000..0ec62b7 --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/%%FD^FD9^FD9328A6%%BreadCrumb.tpl.php @@ -0,0 +1,36 @@ + + array(array('function', 'counter', 'gallery:modules/core/templates/blocks/BreadCrumb.tpl', 16, false),array('modifier', 'markup', 'gallery:modules/core/templates/blocks/BreadCrumb.tpl', 17, false),array('modifier', 'default', 'gallery:modules/core/templates/blocks/BreadCrumb.tpl', 17, false),)), $this); ?> +
+_tpl_vars['theme']['parents']; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array'); }$this->_foreach['parent'] = array('total' => count($_from), 'iteration' => 0); +if ($this->_foreach['parent']['total'] > 0): + foreach ($_from as $this->_tpl_vars['parent']): + $this->_foreach['parent']['iteration']++; + if (! ($this->_foreach['parent']['iteration'] == $this->_foreach['parent']['total'])): ?> + +_tpl_vars['parent']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['parent']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['parent']['pathComponent'])); ?> + + + +_tpl_vars['parent']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['parent']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['parent']['pathComponent'])); ?> + +_tpl_vars['separator'] )): ?> _tpl_vars['separator']; ?> + _tpl_vars['theme']['pageType'] == 'admin' || $this->_tpl_vars['theme']['pageType'] == 'module' )): ?> + "itemId=".($this->_tpl_vars['theme']['item']['id'])), $this);?> +" class="BreadCrumb- 'BreadCrumb'), $this);?> +"> +_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> + + + +_tpl_vars['theme']['item']['title'])) ? $this->_run_mod_handler('markup', true, $_tmp, 'strip') : smarty_modifier_markup($_tmp, 'strip')))) ? $this->_run_mod_handler('default', true, $_tmp, @$this->_tpl_vars['theme']['item']['pathComponent']) : smarty_modifier_default($_tmp, @$this->_tpl_vars['theme']['item']['pathComponent'])); ?> + + +
\ No newline at end of file diff --git a/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/v_12 b/Source/gallery2/g2data_2e6106f57b/smarty/templates_c/%%541919013/v_12 new file mode 100644 index 0000000..e69de29 diff --git a/Source/gallery2/g2data_2e6106f57b/upgrade_163e597107.log b/Source/gallery2/g2data_2e6106f57b/upgrade_163e597107.log new file mode 100644 index 0000000..503a23e --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/upgrade_163e597107.log @@ -0,0 +1,8655 @@ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] + +-------------------------------------------------------- + Upgrade Core Module +-------------------------------------------------------- + + +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] + +-------------------------------------------------------- +System and Gallery information: +-------------------------------------------------------- + Gallery version: 2.2.1 + File integrity: Ok + SVN install: No + PHP version: 5.1.6 apache2handler + PHP memory limit: + PHP disable_functions: + PHP zend.ze1_compatibility_mode: + Webserver: Apache/2.2.3 (Win32) PHP/5.1.5 + Database: mysqlt 5.0.24a-community-nt + Operating system: Windows NT DAVID 5.1 build 2600 + Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.1.4) Gecko/20070515 Firefox/2.0.0.4 +-------------------------------------------------------- + + + +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.adminGroup for core plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_UserGroupMap.g_userId, + g2_User.g_userName + FROM + g2_UserGroupMap, g2_User + WHERE + g2_UserGroupMap.g_groupId = 3 + AND + g2_UserGroupMap.g_userId = g2_User.g_id + + ORDER BY + g2_User.g_userName + LIMIT 1   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_id, g_entityType FROM g2_Entity WHERE g_id IN (6)   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'httpauth' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imageframe' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'itemadd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'linkitem' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'permalinks' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'publishxp' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'replica' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbnail' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbpage' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'uploadapplet' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'webdav' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #65) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g2_User.g_userName, g2_User.g_fullName, g2_User.g_hashedPassword, g2_User.g_email, g2_User.g_language, g2_User.g_locked, g2_Entity.g_id, g2_Entity.g_creationTimestamp, g2_Entity.g_isLinkable, g2_Entity.g_linkId, g2_Entity.g_modificationTimestamp, g2_Entity.g_serialNumber, g2_Entity.g_entityType, g2_Entity.g_onLoadHandlers FROM g2_User, g2_Entity WHERE g2_User.g_id IN (6) AND g2_Entity.g_id=g2_User.g_id   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryModule::installOrUpgrade core module +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] In bootstrap mode (core module) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] Configure store for core module +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] Upgrade (or install) core module +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] Entering CoreModuleExtras::upgrade +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] Old version: 1.2.0.1 New version: 1.2.0.4 +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW CREATE TABLE `g2_Schema`   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] The current version is 1.2.0.1 +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:28 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): ALTER TABLE g2_Schema + ADD COLUMN g_createSql text   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema + SET g_major=1, g_minor=1 + WHERE g_name='Schema' AND g_major=1 AND g_minor=0   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #349) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] realpath(T:\Web Abeto Armarios\Source\www\gallery2\modules\core\classes/../../..) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] Binding text domain: modules_core -> T:\Web Abeto Armarios\Source\www\gallery2/modules/core/locale +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXLinkItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXlink text NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'LinkItem\', 1, 1);\n\n' WHERE g_name = 'LinkItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXPermalinksMap(\n DB_COLUMN_PREFIXaliasName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdestId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXaliasName),\n INDEX DB_TABLE_PREFIXPermalinksMap_84225(DB_COLUMN_PREFIXdestId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'PermalinksMap\', 1, 0);\n\n' WHERE g_name = 'PermalinksMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXThumbnailImage(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128),\n DB_COLUMN_PREFIXsize int(11),\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n DB_COLUMN_PREFIXitemMimeTypes varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'ThumbnailImage\', 1, 2);\n\n' WHERE g_name = 'ThumbnailImage'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXWebDavLockMap(\n DB_COLUMN_PREFIXdepth varchar(128),\n DB_COLUMN_PREFIXowner varchar(128),\n DB_COLUMN_PREFIXexpires int(11),\n DB_COLUMN_PREFIXtoken varchar(128),\n DB_COLUMN_PREFIXpath varchar(128),\n DB_COLUMN_PREFIXgalleryLockId int(11)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'WebDavLockMap\', 0, 1);\n\n' WHERE g_name = 'WebDavLockMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXExternalIdMap(\n DB_COLUMN_PREFIXexternalId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXentityType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXentityId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'ExternalIdMap\', 1, 0);\n\n' WHERE g_name = 'ExternalIdMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap(\n DB_COLUMN_PREFIXuserName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXcount int(11) NOT NULL,\n DB_COLUMN_PREFIXlastAttempt int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXuserName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'FailedLoginsMap\', 1, 0);\n\n' WHERE g_name = 'FailedLoginsMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXAccessMap(\n DB_COLUMN_PREFIXaccessListId int(11) NOT NULL,\n DB_COLUMN_PREFIXuserOrGroupId int(11) NOT NULL,\n DB_COLUMN_PREFIXpermission int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId),\n INDEX DB_TABLE_PREFIXAccessMap_83732(DB_COLUMN_PREFIXaccessListId),\n INDEX DB_TABLE_PREFIXAccessMap_48775(DB_COLUMN_PREFIXuserOrGroupId),\n INDEX DB_TABLE_PREFIXAccessMap_18058(DB_COLUMN_PREFIXpermission)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'AccessMap\', 1, 3);\n\n' WHERE g_name = 'AccessMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap(\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXaccessListId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXAccessSubscriberMap_83732(DB_COLUMN_PREFIXaccessListId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'AccessSubscriberMap\', 1, 0);\n\n' WHERE g_name = 'AccessSubscriberMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXAlbumItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXtheme varchar(32),\n DB_COLUMN_PREFIXorderBy varchar(128),\n DB_COLUMN_PREFIXorderDirection varchar(32),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'AlbumItem\', 1, 1);\n\n' WHERE g_name = 'AlbumItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXAnimationItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'AnimationItem\', 1, 0);\n\n' WHERE g_name = 'AnimationItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXCacheMap(\n DB_COLUMN_PREFIXkey varchar(32) NOT NULL,\n DB_COLUMN_PREFIXvalue longtext,\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXtype varchar(32) NOT NULL,\n DB_COLUMN_PREFIXtimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXisEmpty int(1),\n PRIMARY KEY(DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype),\n INDEX DB_TABLE_PREFIXCacheMap_75985(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXCacheMap_21979(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'CacheMap\', 1, 1);\n\n' WHERE g_name = 'CacheMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXChildEntity(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXparentId int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXChildEntity_52718(DB_COLUMN_PREFIXparentId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'ChildEntity\', 1, 0);\n\n' WHERE g_name = 'ChildEntity'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXDataItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128),\n DB_COLUMN_PREFIXsize int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'DataItem\', 1, 0);\n\n' WHERE g_name = 'DataItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXDerivative(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXderivativeSourceId int(11) NOT NULL,\n DB_COLUMN_PREFIXderivativeOperations varchar(255),\n DB_COLUMN_PREFIXderivativeOrder int(11) NOT NULL,\n DB_COLUMN_PREFIXderivativeSize int(11),\n DB_COLUMN_PREFIXderivativeType int(11) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL,\n DB_COLUMN_PREFIXpostFilterOperations varchar(255),\n DB_COLUMN_PREFIXisBroken int(1),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXDerivative_85338(DB_COLUMN_PREFIXderivativeSourceId),\n INDEX DB_TABLE_PREFIXDerivative_25243(DB_COLUMN_PREFIXderivativeOrder),\n INDEX DB_TABLE_PREFIXDerivative_97216(DB_COLUMN_PREFIXderivativeType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'Derivative\', 1, 1);\n\n' WHERE g_name = 'Derivative'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXDerivativeImage(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'DerivativeImage\', 1, 0);\n\n' WHERE g_name = 'DerivativeImage'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap(\n DB_COLUMN_PREFIXitemId int(11),\n DB_COLUMN_PREFIXorder int(11),\n DB_COLUMN_PREFIXderivativeType int(11),\n DB_COLUMN_PREFIXderivativeOperations varchar(255),\n INDEX DB_TABLE_PREFIXDerivativePrefsMap_75985(DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'DerivativePrefsMap\', 1, 0);\n\n' WHERE g_name = 'DerivativePrefsMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap(\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXdescendentCount int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'DescendentCountsMap\', 1, 0);\n\n' WHERE g_name = 'DescendentCountsMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXEntity(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXcreationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXisLinkable int(1) NOT NULL,\n DB_COLUMN_PREFIXlinkId int(11),\n DB_COLUMN_PREFIXmodificationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXserialNumber int(11) NOT NULL,\n DB_COLUMN_PREFIXentityType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXonLoadHandlers varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXEntity_76255(DB_COLUMN_PREFIXcreationTimestamp),\n INDEX DB_TABLE_PREFIXEntity_35978(DB_COLUMN_PREFIXisLinkable),\n INDEX DB_TABLE_PREFIXEntity_44738(DB_COLUMN_PREFIXlinkId),\n INDEX DB_TABLE_PREFIXEntity_63025(DB_COLUMN_PREFIXmodificationTimestamp),\n INDEX DB_TABLE_PREFIXEntity_60702(DB_COLUMN_PREFIXserialNumber)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'Entity\', 1, 2);\n\n' WHERE g_name = 'Entity'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXFactoryMap(\n DB_COLUMN_PREFIXclassType varchar(128),\n DB_COLUMN_PREFIXclassName varchar(128),\n DB_COLUMN_PREFIXimplId varchar(128),\n DB_COLUMN_PREFIXimplPath varchar(128),\n DB_COLUMN_PREFIXimplModuleId varchar(128),\n DB_COLUMN_PREFIXhints varchar(255),\n DB_COLUMN_PREFIXorderWeight varchar(255)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'FactoryMap\', 1, 0);\n\n' WHERE g_name = 'FactoryMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXFileSystemEntity(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXpathComponent varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXFileSystemEntity_3406(DB_COLUMN_PREFIXpathComponent)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'FileSystemEntity\', 1, 0);\n\n' WHERE g_name = 'FileSystemEntity'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXGroup(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXgroupType int(11) NOT NULL,\n DB_COLUMN_PREFIXgroupName varchar(128),\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n UNIQUE (DB_COLUMN_PREFIXgroupName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'Group\', 1, 1);\n\n' WHERE g_name = 'Group'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXcanContainChildren int(1) NOT NULL,\n DB_COLUMN_PREFIXdescription text,\n DB_COLUMN_PREFIXkeywords varchar(255),\n DB_COLUMN_PREFIXownerId int(11) NOT NULL,\n DB_COLUMN_PREFIXrenderer varchar(128),\n DB_COLUMN_PREFIXsummary varchar(255),\n DB_COLUMN_PREFIXtitle varchar(128),\n DB_COLUMN_PREFIXviewedSinceTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXoriginationTimestamp int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXItem_99070(DB_COLUMN_PREFIXkeywords),\n INDEX DB_TABLE_PREFIXItem_21573(DB_COLUMN_PREFIXownerId),\n INDEX DB_TABLE_PREFIXItem_54147(DB_COLUMN_PREFIXsummary),\n INDEX DB_TABLE_PREFIXItem_90059(DB_COLUMN_PREFIXtitle)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'Item\', 1, 2);\n\n' WHERE g_name = 'Item'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXItemAttributesMap(\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXviewCount int(11),\n DB_COLUMN_PREFIXorderWeight int(11),\n DB_COLUMN_PREFIXparentSequence varchar(255) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXitemId),\n INDEX DB_TABLE_PREFIXItemAttributesMap_95270(DB_COLUMN_PREFIXparentSequence)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'ItemAttributesMap\', 1, 0);\n\n' WHERE g_name = 'ItemAttributesMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXMaintenanceMap(\n DB_COLUMN_PREFIXrunId int(11) NOT NULL,\n DB_COLUMN_PREFIXtaskId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtimestamp int(11),\n DB_COLUMN_PREFIXsuccess int(1),\n DB_COLUMN_PREFIXdetails text,\n PRIMARY KEY(DB_COLUMN_PREFIXrunId),\n INDEX DB_TABLE_PREFIXMaintenanceMap_21687(DB_COLUMN_PREFIXtaskId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'MaintenanceMap\', 1, 0);\n\n' WHERE g_name = 'MaintenanceMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXMimeTypeMap(\n DB_COLUMN_PREFIXextension varchar(32) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXviewable int(1),\n PRIMARY KEY(DB_COLUMN_PREFIXextension)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'MimeTypeMap\', 1, 0);\n\n' WHERE g_name = 'MimeTypeMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXMovieItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n DB_COLUMN_PREFIXduration int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'MovieItem\', 1, 0);\n\n' WHERE g_name = 'MovieItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXPermissionSetMap(\n DB_COLUMN_PREFIXmodule varchar(128) NOT NULL,\n DB_COLUMN_PREFIXpermission varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdescription varchar(255),\n DB_COLUMN_PREFIXbits int(11) NOT NULL,\n DB_COLUMN_PREFIXflags int(11) NOT NULL,\n UNIQUE (DB_COLUMN_PREFIXpermission)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'PermissionSetMap\', 1, 0);\n\n' WHERE g_name = 'PermissionSetMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXPhotoItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXwidth int(11),\n DB_COLUMN_PREFIXheight int(11),\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'PhotoItem\', 1, 0);\n\n' WHERE g_name = 'PhotoItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXPluginMap(\n DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL,\n DB_COLUMN_PREFIXactive int(1) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'PluginMap\', 1, 1);\n\n' WHERE g_name = 'PluginMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXPluginPackageMap(\n DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpackageName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpackageVersion varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpackageBuild varchar(32) NOT NULL,\n DB_COLUMN_PREFIXlocked int(1) NOT NULL,\n INDEX DB_TABLE_PREFIXPluginPackageMap_80596(DB_COLUMN_PREFIXpluginType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'PluginPackageMap\', 1, 1);\n\n' WHERE g_name = 'PluginPackageMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXPluginParameterMap(\n DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL,\n DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL,\n DB_COLUMN_PREFIXitemId int(11) NOT NULL,\n DB_COLUMN_PREFIXparameterName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXparameterValue text NOT NULL,\n UNIQUE (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName),\n INDEX DB_TABLE_PREFIXPluginParameterMap_80596(DB_COLUMN_PREFIXpluginType),\n INDEX DB_TABLE_PREFIXPluginParameterMap_12808(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'PluginParameterMap\', 1, 3);\n\n' WHERE g_name = 'PluginParameterMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap(\n DB_COLUMN_PREFIXuserName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXauthString varchar(32) NOT NULL,\n DB_COLUMN_PREFIXrequestExpires int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXuserName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'RecoverPasswordMap\', 1, 1);\n\n' WHERE g_name = 'RecoverPasswordMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXTkOperatnMap(\n DB_COLUMN_PREFIXname varchar(128) NOT NULL,\n DB_COLUMN_PREFIXparametersCrc varchar(32) NOT NULL,\n DB_COLUMN_PREFIXoutputMimeType varchar(128),\n DB_COLUMN_PREFIXdescription varchar(255),\n PRIMARY KEY(DB_COLUMN_PREFIXname)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'TkOperatnMap\', 1, 0);\n\n' WHERE g_name = 'TkOperatnMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap(\n DB_COLUMN_PREFIXoperationName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtoolkitId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL,\n DB_COLUMN_PREFIXpriority int(11) NOT NULL,\n INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_2014(DB_COLUMN_PREFIXoperationName),\n INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_79463(DB_COLUMN_PREFIXmimeType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'TkOperatnMimeTypeMap\', 1, 0);\n\n' WHERE g_name = 'TkOperatnMimeTypeMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap(\n DB_COLUMN_PREFIXoperationName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXposition int(11) NOT NULL,\n DB_COLUMN_PREFIXtype varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdescription varchar(255),\n INDEX DB_TABLE_PREFIXTkOperatnParameterMap_2014(DB_COLUMN_PREFIXoperationName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'TkOperatnParameterMap\', 1, 0);\n\n' WHERE g_name = 'TkOperatnParameterMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXTkPropertyMap(\n DB_COLUMN_PREFIXname varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtype varchar(128) NOT NULL,\n DB_COLUMN_PREFIXdescription varchar(128) NOT NULL\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'TkPropertyMap\', 1, 0);\n\n' WHERE g_name = 'TkPropertyMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap(\n DB_COLUMN_PREFIXpropertyName varchar(128) NOT NULL,\n DB_COLUMN_PREFIXtoolkitId varchar(128) NOT NULL,\n DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL,\n INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_52881(DB_COLUMN_PREFIXpropertyName),\n INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_79463(DB_COLUMN_PREFIXmimeType)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'TkPropertyMimeTypeMap\', 1, 0);\n\n' WHERE g_name = 'TkPropertyMimeTypeMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXUnknownItem(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n PRIMARY KEY(DB_COLUMN_PREFIXid)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'UnknownItem\', 1, 0);\n\n' WHERE g_name = 'UnknownItem'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXUser(\n DB_COLUMN_PREFIXid int(11) NOT NULL,\n DB_COLUMN_PREFIXuserName varchar(32) NOT NULL,\n DB_COLUMN_PREFIXfullName varchar(128),\n DB_COLUMN_PREFIXhashedPassword varchar(128),\n DB_COLUMN_PREFIXemail varchar(255),\n DB_COLUMN_PREFIXlanguage varchar(128),\n DB_COLUMN_PREFIXlocked int(1) DEFAULT \'0\',\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n UNIQUE (DB_COLUMN_PREFIXuserName)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'User\', 1, 2);\n\n' WHERE g_name = 'User'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXUserGroupMap(\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXgroupId int(11) NOT NULL,\n INDEX DB_TABLE_PREFIXUserGroupMap_69068(DB_COLUMN_PREFIXuserId),\n INDEX DB_TABLE_PREFIXUserGroupMap_89328(DB_COLUMN_PREFIXgroupId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'UserGroupMap\', 1, 0);\n\n' WHERE g_name = 'UserGroupMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXLock(\n DB_COLUMN_PREFIXlockId int(11),\n DB_COLUMN_PREFIXreadEntityId int(11),\n DB_COLUMN_PREFIXwriteEntityId int(11),\n DB_COLUMN_PREFIXfreshUntil int(11),\n DB_COLUMN_PREFIXrequest int(11),\n INDEX DB_TABLE_PREFIXLock_11039(DB_COLUMN_PREFIXlockId)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'Lock\', 1, 0);\n\n' WHERE g_name = 'Lock'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): ALTER TABLE g2_SessionMap + MODIFY COLUMN g_data longtext   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema + SET g_major=1, g_minor=1 + WHERE g_name='SessionMap' AND g_major=1 AND g_minor=0   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXSessionMap(\n DB_COLUMN_PREFIXid varchar(32) NOT NULL,\n DB_COLUMN_PREFIXuserId int(11) NOT NULL,\n DB_COLUMN_PREFIXremoteIdentifier varchar(128) NOT NULL,\n DB_COLUMN_PREFIXcreationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXmodificationTimestamp int(11) NOT NULL,\n DB_COLUMN_PREFIXdata longtext,\n PRIMARY KEY(DB_COLUMN_PREFIXid),\n INDEX DB_TABLE_PREFIXSessionMap_53500(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'SessionMap\', 1, 1);\n\n' WHERE g_name = 'SessionMap'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_PluginParameterMap + WHERE g_parameterName in ('_maps', '_entities') + AND g_pluginType = 'module'   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:29 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): ALTER TABLE g2_Schema + ADD COLUMN g_pluginId varchar(32), + ADD COLUMN g_type varchar(32), + ADD COLUMN g_info text   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema + SET g_major=1, g_minor=2 + WHERE g_name='Schema' AND g_major=1 AND g_minor=1   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_createSql = 'CREATE TABLE DB_TABLE_PREFIXSchema(\n DB_COLUMN_PREFIXname varchar(128) NOT NULL,\n DB_COLUMN_PREFIXmajor int(11) NOT NULL,\n DB_COLUMN_PREFIXminor int(11) NOT NULL,\n DB_COLUMN_PREFIXcreateSql text,\n DB_COLUMN_PREFIXpluginId varchar(32),\n DB_COLUMN_PREFIXtype varchar(32),\n DB_COLUMN_PREFIXinfo text,\n PRIMARY KEY(DB_COLUMN_PREFIXname)\n) DB_TABLE_TYPE\n/*!40100 DEFAULT CHARACTER SET utf8 */;\n\nINSERT INTO DB_TABLE_PREFIXSchema (\n DB_COLUMN_PREFIXname,\n DB_COLUMN_PREFIXmajor,\n DB_COLUMN_PREFIXminor\n) VALUES(\'Schema\', 1, 2);\n\n' WHERE g_name = 'Schema'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'httpauth' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imageframe' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'itemadd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'linkitem' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'permalinks' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'publishxp' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'replica' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbnail' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbpage' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'uploadapplet' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'webdav' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #692) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/classes/Maps.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/classes/Entities.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryLinkItem\";a:4:{s:7:\"members\";a:1:{s:4:\"link\";a:4:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:8:\"linkitem\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'linkitem' WHERE g_name = 'LinkItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/classes/Maps.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/classes/Entities.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"PermalinksMap\";a:2:{s:9:\"aliasName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"destId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'permalinks' WHERE g_name = 'PermalinksMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/classes/Maps.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/classes/Entities.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:14:\"ThumbnailImage\";a:4:{s:7:\"members\";a:5:{s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:4:\"size\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:13:\"itemMimeTypes\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:23:\"GalleryFileSystemEntity\";s:6:\"module\";s:9:\"thumbnail\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'thumbnail' WHERE g_name = 'ThumbnailImage'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/classes/Maps.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/classes/Entities.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"WebDavLockMap\";a:6:{s:5:\"depth\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"owner\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:7:\"expires\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:5:\"token\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:4:\"path\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:13:\"galleryLockId\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'webdav' WHERE g_name = 'WebDavLockMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/Maps.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/Entities.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"ExternalIdMap\";a:3:{s:10:\"externalId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"entityType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"entityId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'ExternalIdMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"FailedLoginsMap\";a:3:{s:8:\"userName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:5:\"count\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"lastAttempt\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'FailedLoginsMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryAccessMap\";a:3:{s:12:\"accessListId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"userOrGroupId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"permission\";a:3:{s:4:\"type\";i:64;s:4:\"size\";i:4;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'AccessMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryAccessSubscriberMap\";a:2:{s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:12:\"accessListId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'AccessSubscriberMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryAlbumItem\";a:4:{s:7:\"members\";a:3:{s:5:\"theme\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:1;}s:7:\"orderBy\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:14:\"orderDirection\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'AlbumItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:20:\"GalleryAnimationItem\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:5:\"width\";i:1;s:6:\"height\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'AnimationItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryCacheMap\";a:7:{s:3:\"key\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:5:\"value\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:4;}s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:9:\"timestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:7:\"isEmpty\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'CacheMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryChildEntity\";a:4:{s:7:\"members\";a:1:{s:8:\"parentId\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'ChildEntity'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryDataItem\";a:4:{s:7:\"members\";a:2:{s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:4:\"size\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:8:\"mimeType\";i:1;s:4:\"size\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'DataItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GalleryDerivative\";a:4:{s:7:\"members\";a:8:{s:18:\"derivativeSourceId\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:20:\"derivativeOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:15:\"derivativeOrder\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:14:\"derivativeSize\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:14:\"derivativeType\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:8:\"mimeType\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}s:20:\"postFilterOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:8:\"isBroken\";a:1:{s:4:\"type\";i:8;}}s:6:\"parent\";s:18:\"GalleryChildEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Derivative'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:22:\"GalleryDerivativeImage\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:17:\"GalleryDerivative\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'DerivativeImage'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:31:\"GalleryDerivativePreferencesMap\";a:4:{s:6:\"itemId\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:5:\"order\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:14:\"derivativeType\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:20:\"derivativeOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'DerivativePrefsMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryDescendentCountsMap\";a:3:{s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:15:\"descendentCount\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'DescendentCountsMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"GalleryEntity\";a:4:{s:7:\"members\";a:8:{s:2:\"id\";a:3:{s:4:\"type\";i:33;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:17:\"creationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}s:10:\"isLinkable\";a:2:{s:4:\"type\";i:8;s:7:\"notNull\";i:1;}s:6:\"linkId\";a:1:{s:4:\"type\";i:1;}s:21:\"modificationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:12:\"serialNumber\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:10:\"entityType\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:14:\"onLoadHandlers\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}}s:6:\"parent\";N;s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Entity'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GalleryFactoryMap\";a:7:{s:9:\"classType\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:9:\"className\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:6:\"implId\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:8:\"implPath\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:12:\"implModuleId\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"hints\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:11:\"orderWeight\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'FactoryMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryFileSystemEntity\";a:4:{s:7:\"members\";a:1:{s:13:\"pathComponent\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:18:\"GalleryChildEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'FileSystemEntity'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:12:\"GalleryGroup\";a:4:{s:7:\"members\";a:2:{s:9:\"groupType\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:9:\"groupName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Group'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:11:\"GalleryItem\";a:4:{s:7:\"members\";a:9:{s:18:\"canContainChildren\";a:3:{s:4:\"type\";i:8;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:11:\"description\";a:3:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:15:\"external-access\";i:3;}s:8:\"keywords\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:15:\"external-access\";i:3;}s:7:\"ownerId\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:8:\"renderer\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:7:\"summary\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:15:\"external-access\";i:3;}s:5:\"title\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:3;}s:20:\"viewedSinceTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:20:\"originationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:23:\"GalleryFileSystemEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Item'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:24:\"GalleryItemAttributesMap\";a:4:{s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"viewCount\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:11:\"orderWeight\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:14:\"parentSequence\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:19:\"notNullEmptyAllowed\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'ItemAttributesMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:21:\"GalleryMaintenanceMap\";a:5:{s:5:\"runId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"taskId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"timestamp\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:7:\"success\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}s:7:\"details\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'MaintenanceMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryMimeTypeMap\";a:3:{s:9:\"extension\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"viewable\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'MimeTypeMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryMovieItem\";a:4:{s:7:\"members\";a:3:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:8:\"duration\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:3:{i:0;s:5:\"width\";i:1;s:6:\"height\";i:2;s:8:\"duration\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'MovieItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryPermissionSetMap\";a:5:{s:6:\"module\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"permission\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:4:\"bits\";a:3:{s:4:\"type\";i:64;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:5:\"flags\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PermissionSetMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryPhotoItem\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:5:\"width\";i:1;s:6:\"height\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'PhotoItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryPluginMap\";a:3:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"active\";a:3:{s:4:\"type\";i:8;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryPluginPackageMap\";a:6:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:11:\"packageName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"packageVersion\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:12:\"packageBuild\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"locked\";a:3:{s:4:\"type\";i:8;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginPackageMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryPluginParameterMap\";a:5:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"parameterName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:14:\"parameterValue\";a:3:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:19:\"notNullEmptyAllowed\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginParameterMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryRecoverPasswordMap\";a:3:{s:8:\"userName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:10:\"authString\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"requestExpires\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'RecoverPasswordMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GallerySessionMap\";a:6:{s:2:\"id\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:16:\"remoteIdentifier\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:17:\"creationTimestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:21:\"modificationTimestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"data\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'SessionMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryToolkitOperationMap\";a:4:{s:4:\"name\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"parametersCrc\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"outputMimeType\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:34:\"GalleryToolkitOperationMimeTypeMap\";a:4:{s:13:\"operationName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"toolkitId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"priority\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnMimeTypeMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:35:\"GalleryToolkitOperationParameterMap\";a:4:{s:13:\"operationName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"position\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnParameterMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryToolkitPropertyMap\";a:3:{s:4:\"name\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkPropertyMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:33:\"GalleryToolkitPropertyMimeTypeMap\";a:3:{s:12:\"propertyName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"toolkitId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkPropertyMimeTypeMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryUnknownItem\";a:4:{s:7:\"members\";a:0:{}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'UnknownItem'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:11:\"GalleryUser\";a:4:{s:7:\"members\";a:6:{s:8:\"userName\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:8:\"fullName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:3;}s:14:\"hashedPassword\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"email\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:8:\"language\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:6:\"locked\";a:1:{s:4:\"type\";i:8;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'User'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:19:\"GalleryUserGroupMap\";a:2:{s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:7:\"groupId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'UserGroupMap'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_pluginId = 'core' WHERE g_name = 'Lock'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_pluginId = 'core' WHERE g_name = 'Schema'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Write new version to versions file +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] fopen(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\versions.dat, wb, 0) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] fwrite(Resource id #1058, ..., ) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] fclose(Resource id #1058) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Update module paramater for the core module +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _version for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'httpauth' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imageframe' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'itemadd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'linkitem' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'permalinks' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'publishxp' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'replica' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbnail' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbpage' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'uploadapplet' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'webdav' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #1070) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='1.2.0.4' WHERE g_pluginType='module' AND g_pluginId='core' AND g_itemId=0 AND g_parameterName='_version'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _version for core plugin set successfully +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _callbacks for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='registerEventListeners|getItemLinks|getSystemLinks|getSiteAdminViews|getUserAdminViews|getItemAdminViews' WHERE g_pluginType='module' AND g_pluginId='core' AND g_itemId=0 AND g_parameterName='_callbacks'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _callbacks for core plugin set successfully +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredCoreApi for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='7,18' WHERE g_pluginType='module' AND g_pluginId='core' AND g_itemId=0 AND g_parameterName='_requiredCoreApi'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredCoreApi for core plugin set successfully +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredModuleApi for core plugin +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='3,4' WHERE g_pluginType='module' AND g_pluginId='core' AND g_itemId=0 AND g_parameterName='_requiredModuleApi'   +
+ +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredModuleApi for core plugin set successfully +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] ConfigureStoreCleanup for core module +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:30 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] Reactivate core module +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin, deactivate +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=0 WHERE g_pluginType='module' AND g_pluginId='core'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_implId FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryChildEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryChildEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryChildEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryAlbumItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryAlbumItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryAlbumItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryUser'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryUser'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryUser'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryGroup'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryGroup'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryGroup'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryDerivative'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryDerivative'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryDerivative'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryDerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryDerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryDerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryDerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryDerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryDerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryMovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryMovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryMovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryAnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryAnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryAnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryPhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryPhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryPhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryUnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryUnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryUnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryPhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryPhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryPhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryMovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryMovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryMovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryAnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryAnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryAnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryUnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryUnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryUnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryDynamicAlbum'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryDynamicAlbum'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryDynamicAlbum'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='GalleryCoreSearch'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='GalleryCoreSearch'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='GalleryCoreSearch'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditAnimation'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditAnimation'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditAnimation'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditMovie'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditMovie'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditMovie'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditAlbum'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditAlbum'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditAlbum'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditTheme'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditTheme'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditTheme'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditPhoto'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditPhoto'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditPhoto'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditRotateAndScalePhoto'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditRotateAndScalePhoto'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditRotateAndScalePhoto'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemEditPhotoThumbnail'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemEditPhotoThumbnail'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemEditPhotoThumbnail'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ItemAddFromBrowser'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ItemAddFromBrowser'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ItemAddFromBrowser'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='CreateThumbnailOption'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='CreateThumbnailOption'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='CreateThumbnailOption'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='OptimizeDatabaseTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='OptimizeDatabaseTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='OptimizeDatabaseTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='FlushTemplatesTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='FlushTemplatesTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='FlushTemplatesTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='FlushDatabaseCacheTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='FlushDatabaseCacheTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='FlushDatabaseCacheTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='BuildDerivativesTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='BuildDerivativesTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='BuildDerivativesTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ResetViewCountsTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ResetViewCountsTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ResetViewCountsTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='SystemInfoTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='SystemInfoTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='SystemInfoTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='SetOriginationTimestampTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='SetOriginationTimestampTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='SetOriginationTimestampTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='DeleteSessionsTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='DeleteSessionsTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='DeleteSessionsTask'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ConvertDatabaseToUtf8Task'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ConvertDatabaseToUtf8Task'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ConvertDatabaseToUtf8Task'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='CoreCaptchaAdminOption'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='CoreCaptchaAdminOption'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='CoreCaptchaAdminOption'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='SessionAuthPlugin'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='SessionAuthPlugin'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='SessionAuthPlugin'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin, activate again +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/Maps.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/Entities.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"ExternalIdMap\";a:3:{s:10:\"externalId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"entityType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"entityId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'ExternalIdMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"FailedLoginsMap\";a:3:{s:8:\"userName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:5:\"count\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"lastAttempt\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'FailedLoginsMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryAccessMap\";a:3:{s:12:\"accessListId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"userOrGroupId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"permission\";a:3:{s:4:\"type\";i:64;s:4:\"size\";i:4;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'AccessMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryAccessSubscriberMap\";a:2:{s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:12:\"accessListId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'AccessSubscriberMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryAlbumItem\";a:4:{s:7:\"members\";a:3:{s:5:\"theme\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:1;}s:7:\"orderBy\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:14:\"orderDirection\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'AlbumItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:20:\"GalleryAnimationItem\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:5:\"width\";i:1;s:6:\"height\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'AnimationItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryCacheMap\";a:7:{s:3:\"key\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:5:\"value\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:4;}s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:9:\"timestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:7:\"isEmpty\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'CacheMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryChildEntity\";a:4:{s:7:\"members\";a:1:{s:8:\"parentId\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'ChildEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryDataItem\";a:4:{s:7:\"members\";a:2:{s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:4:\"size\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:8:\"mimeType\";i:1;s:4:\"size\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'DataItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GalleryDerivative\";a:4:{s:7:\"members\";a:8:{s:18:\"derivativeSourceId\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:20:\"derivativeOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:15:\"derivativeOrder\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:14:\"derivativeSize\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:14:\"derivativeType\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:8:\"mimeType\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}s:20:\"postFilterOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:8:\"isBroken\";a:1:{s:4:\"type\";i:8;}}s:6:\"parent\";s:18:\"GalleryChildEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Derivative'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:22:\"GalleryDerivativeImage\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:17:\"GalleryDerivative\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'DerivativeImage'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:31:\"GalleryDerivativePreferencesMap\";a:4:{s:6:\"itemId\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:5:\"order\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:14:\"derivativeType\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:20:\"derivativeOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'DerivativePrefsMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryDescendentCountsMap\";a:3:{s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:15:\"descendentCount\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'DescendentCountsMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"GalleryEntity\";a:4:{s:7:\"members\";a:8:{s:2:\"id\";a:3:{s:4:\"type\";i:33;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:17:\"creationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}s:10:\"isLinkable\";a:2:{s:4:\"type\";i:8;s:7:\"notNull\";i:1;}s:6:\"linkId\";a:1:{s:4:\"type\";i:1;}s:21:\"modificationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:12:\"serialNumber\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:10:\"entityType\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:14:\"onLoadHandlers\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}}s:6:\"parent\";N;s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Entity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GalleryFactoryMap\";a:7:{s:9:\"classType\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:9:\"className\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:6:\"implId\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:8:\"implPath\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:12:\"implModuleId\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"hints\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:11:\"orderWeight\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'FactoryMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryFileSystemEntity\";a:4:{s:7:\"members\";a:1:{s:13:\"pathComponent\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:18:\"GalleryChildEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'FileSystemEntity'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:12:\"GalleryGroup\";a:4:{s:7:\"members\";a:2:{s:9:\"groupType\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:9:\"groupName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Group'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:11:\"GalleryItem\";a:4:{s:7:\"members\";a:9:{s:18:\"canContainChildren\";a:3:{s:4:\"type\";i:8;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:11:\"description\";a:3:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:15:\"external-access\";i:3;}s:8:\"keywords\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:15:\"external-access\";i:3;}s:7:\"ownerId\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:8:\"renderer\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:7:\"summary\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:15:\"external-access\";i:3;}s:5:\"title\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:3;}s:20:\"viewedSinceTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:20:\"originationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:23:\"GalleryFileSystemEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Item'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:24:\"GalleryItemAttributesMap\";a:4:{s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"viewCount\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:11:\"orderWeight\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:14:\"parentSequence\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:19:\"notNullEmptyAllowed\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'ItemAttributesMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:21:\"GalleryMaintenanceMap\";a:5:{s:5:\"runId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"taskId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"timestamp\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:7:\"success\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}s:7:\"details\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'MaintenanceMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryMimeTypeMap\";a:3:{s:9:\"extension\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"viewable\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'MimeTypeMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryMovieItem\";a:4:{s:7:\"members\";a:3:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:8:\"duration\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:3:{i:0;s:5:\"width\";i:1;s:6:\"height\";i:2;s:8:\"duration\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'MovieItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryPermissionSetMap\";a:5:{s:6:\"module\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"permission\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:4:\"bits\";a:3:{s:4:\"type\";i:64;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:5:\"flags\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PermissionSetMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryPhotoItem\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:5:\"width\";i:1;s:6:\"height\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'PhotoItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryPluginMap\";a:3:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"active\";a:3:{s:4:\"type\";i:8;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryPluginPackageMap\";a:6:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:11:\"packageName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"packageVersion\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:12:\"packageBuild\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"locked\";a:3:{s:4:\"type\";i:8;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginPackageMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryPluginParameterMap\";a:5:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"parameterName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:14:\"parameterValue\";a:3:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:19:\"notNullEmptyAllowed\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginParameterMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryRecoverPasswordMap\";a:3:{s:8:\"userName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:10:\"authString\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"requestExpires\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'RecoverPasswordMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GallerySessionMap\";a:6:{s:2:\"id\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:16:\"remoteIdentifier\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:17:\"creationTimestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:21:\"modificationTimestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"data\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'SessionMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryToolkitOperationMap\";a:4:{s:4:\"name\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"parametersCrc\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"outputMimeType\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:34:\"GalleryToolkitOperationMimeTypeMap\";a:4:{s:13:\"operationName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"toolkitId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"priority\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnMimeTypeMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:35:\"GalleryToolkitOperationParameterMap\";a:4:{s:13:\"operationName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"position\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnParameterMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryToolkitPropertyMap\";a:3:{s:4:\"name\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkPropertyMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:33:\"GalleryToolkitPropertyMimeTypeMap\";a:3:{s:12:\"propertyName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"toolkitId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkPropertyMimeTypeMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryUnknownItem\";a:4:{s:7:\"members\";a:0:{}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'UnknownItem'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:11:\"GalleryUser\";a:4:{s:7:\"members\";a:6:{s:8:\"userName\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:8:\"fullName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:3;}s:14:\"hashedPassword\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"email\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:8:\"language\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:6:\"locked\";a:1:{s:4:\"type\";i:8;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'User'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:19:\"GalleryUserGroupMap\";a:2:{s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:7:\"groupId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'UserGroupMap'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_pluginId = 'core' WHERE g_name = 'Lock'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_pluginId = 'core' WHERE g_name = 'Schema'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'httpauth' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imageframe' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'itemadd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'linkitem' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'permalinks' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'publishxp' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'replica' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbnail' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbpage' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'uploadapplet' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'webdav' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #1677) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryEntity.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryEntity','GalleryEntity','modules/core/classes/GalleryEntity.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryChildEntity.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryChildEntity','GalleryChildEntity','modules/core/classes/GalleryChildEntity.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAlbumItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAlbumItem','GalleryAlbumItem','modules/core/classes/GalleryAlbumItem.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUser.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUser','GalleryUser','modules/core/classes/GalleryUser.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryGroup.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryGroup','GalleryGroup','modules/core/classes/GalleryGroup.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivative.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivative','GalleryDerivative','modules/core/classes/GalleryDerivative.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDerivative','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','a:2:{i:0;s:7:\"image/*\";i:1;s:21:\"application/photoshop\";}','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','a:1:{i:0;s:7:\"video/*\";}','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','a:2:{i:0;s:22:\"application/x-director\";i:1;s:29:\"application/x-shockwave-flash\";}','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDynamicAlbum.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDynamicAlbum','GalleryDynamicAlbum','GalleryDynamicAlbum','modules/core/classes/GalleryDynamicAlbum.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryCoreSearch.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GallerySearchInterface_1_0','GalleryCoreSearch','GalleryCoreSearch','modules/core/classes/GalleryCoreSearch.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditItem.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditItem','ItemEditItem','modules/core/ItemEditItem.inc','core','N;','1')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAnimation.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAnimation','ItemEditAnimation','modules/core/ItemEditAnimation.inc','core','N;','2')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditMovie.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditMovie','ItemEditMovie','modules/core/ItemEditMovie.inc','core','N;','2')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAlbum.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAlbum','ItemEditAlbum','modules/core/ItemEditAlbum.inc','core','N;','2')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditTheme.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditTheme','ItemEditTheme','modules/core/ItemEditTheme.inc','core','N;','3')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhoto.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhoto','ItemEditPhoto','modules/core/ItemEditPhoto.inc','core','N;','2')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditRotateAndScalePhoto.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditRotateAndScalePhoto','ItemEditRotateAndScalePhoto','modules/core/ItemEditRotateAndScalePhoto.inc','core','N;','3')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhotoThumbnail.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhotoThumbnail','ItemEditPhotoThumbnail','modules/core/ItemEditPhotoThumbnail.inc','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemAddFromBrowser.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddPlugin','ItemAddFromBrowser','ItemAddFromBrowser','modules/core/ItemAddFromBrowser.inc','core','N;','2')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/CreateThumbnailOption.inc) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddOption','CreateThumbnailOption','CreateThumbnailOption','modules/core/CreateThumbnailOption.inc','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/OptimizeDatabaseTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','OptimizeDatabaseTask','OptimizeDatabaseTask','modules/core/classes/OptimizeDatabaseTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushTemplatesTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushTemplatesTask','FlushTemplatesTask','modules/core/classes/FlushTemplatesTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushDatabaseCacheTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushDatabaseCacheTask','FlushDatabaseCacheTask','modules/core/classes/FlushDatabaseCacheTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/BuildDerivativesTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','BuildDerivativesTask','BuildDerivativesTask','modules/core/classes/BuildDerivativesTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ResetViewCountsTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ResetViewCountsTask','ResetViewCountsTask','modules/core/classes/ResetViewCountsTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SystemInfoTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SystemInfoTask','SystemInfoTask','modules/core/classes/SystemInfoTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SetOriginationTimestampTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SetOriginationTimestampTask','SetOriginationTimestampTask','modules/core/classes/SetOriginationTimestampTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/DeleteSessionsTask.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','DeleteSessionsTask','DeleteSessionsTask','modules/core/classes/DeleteSessionsTask.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ConvertDatabaseToUtf8Task','ConvertDatabaseToUtf8Task','modules/core/classes/ConvertDatabaseToUtf8Task.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/CoreCaptchaAdminOption.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('CaptchaAdminOption','CoreCaptchaAdminOption','CoreCaptchaAdminOption','modules/core/classes/CoreCaptchaAdminOption.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GallerySession.class) +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryAuthPlugin','SessionAuthPlugin','SessionAuthPlugin','modules/core/classes/GallerySession.class','core','N;','4')   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=1 WHERE g_pluginType='module' AND g_pluginId='core'   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin successfully activated +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate core plugin, successfully reactivated +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:31 [TMP_SESSION_ID_DI_NOISSES_PMT] [1182960331] can't guarantee 300 -- extending! +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): OPTIMIZE TABLE `g2_Schema`;   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] [1182960332] can't guarantee 300 -- extending! +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): OPTIMIZE TABLE `g2_SessionMap`;   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): OPTIMIZE TABLE `g2_Schema`;   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): ANALYZE TABLE `g2_Schema`;   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): ANALYZE TABLE `g2_SessionMap`;   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): ANALYZE TABLE `g2_Schema`;   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] Successfully finished installOrUpgrade core module +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/Maps.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/Entities.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"ExternalIdMap\";a:3:{s:10:\"externalId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"entityType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"entityId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'ExternalIdMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"FailedLoginsMap\";a:3:{s:8:\"userName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:5:\"count\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"lastAttempt\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'FailedLoginsMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryAccessMap\";a:3:{s:12:\"accessListId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"userOrGroupId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"permission\";a:3:{s:4:\"type\";i:64;s:4:\"size\";i:4;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'AccessMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryAccessSubscriberMap\";a:2:{s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:12:\"accessListId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'AccessSubscriberMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryAlbumItem\";a:4:{s:7:\"members\";a:3:{s:5:\"theme\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:1;}s:7:\"orderBy\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:14:\"orderDirection\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'AlbumItem'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:20:\"GalleryAnimationItem\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:5:\"width\";i:1;s:6:\"height\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'AnimationItem'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryCacheMap\";a:7:{s:3:\"key\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:5:\"value\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:4;}s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:9:\"timestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:7:\"isEmpty\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'CacheMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryChildEntity\";a:4:{s:7:\"members\";a:1:{s:8:\"parentId\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'ChildEntity'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:15:\"GalleryDataItem\";a:4:{s:7:\"members\";a:2:{s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:4:\"size\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:11:\"GalleryItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:8:\"mimeType\";i:1;s:4:\"size\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'DataItem'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GalleryDerivative\";a:4:{s:7:\"members\";a:8:{s:18:\"derivativeSourceId\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:20:\"derivativeOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:15:\"derivativeOrder\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:14:\"derivativeSize\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:14:\"derivativeType\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:8:\"mimeType\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}s:20:\"postFilterOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:8:\"isBroken\";a:1:{s:4:\"type\";i:8;}}s:6:\"parent\";s:18:\"GalleryChildEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Derivative'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:22:\"GalleryDerivativeImage\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:17:\"GalleryDerivative\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'DerivativeImage'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:31:\"GalleryDerivativePreferencesMap\";a:4:{s:6:\"itemId\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:5:\"order\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:14:\"derivativeType\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:20:\"derivativeOperations\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'DerivativePrefsMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryDescendentCountsMap\";a:3:{s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:15:\"descendentCount\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'DescendentCountsMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:13:\"GalleryEntity\";a:4:{s:7:\"members\";a:8:{s:2:\"id\";a:3:{s:4:\"type\";i:33;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:17:\"creationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}s:10:\"isLinkable\";a:2:{s:4:\"type\";i:8;s:7:\"notNull\";i:1;}s:6:\"linkId\";a:1:{s:4:\"type\";i:1;}s:21:\"modificationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:12:\"serialNumber\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:10:\"entityType\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:14:\"onLoadHandlers\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}}s:6:\"parent\";N;s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Entity'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GalleryFactoryMap\";a:7:{s:9:\"classType\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:9:\"className\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:6:\"implId\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:8:\"implPath\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:12:\"implModuleId\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"hints\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:11:\"orderWeight\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'FactoryMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryFileSystemEntity\";a:4:{s:7:\"members\";a:1:{s:13:\"pathComponent\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:18:\"GalleryChildEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'FileSystemEntity'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:12:\"GalleryGroup\";a:4:{s:7:\"members\";a:2:{s:9:\"groupType\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:9:\"groupName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Group'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:11:\"GalleryItem\";a:4:{s:7:\"members\";a:9:{s:18:\"canContainChildren\";a:3:{s:4:\"type\";i:8;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:11:\"description\";a:3:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:15:\"external-access\";i:3;}s:8:\"keywords\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:15:\"external-access\";i:3;}s:7:\"ownerId\";a:2:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;}s:8:\"renderer\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:7:\"summary\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:15:\"external-access\";i:3;}s:5:\"title\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:3;}s:20:\"viewedSinceTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:20:\"originationTimestamp\";a:3:{s:4:\"type\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:23:\"GalleryFileSystemEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'Item'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:24:\"GalleryItemAttributesMap\";a:4:{s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"viewCount\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:11:\"orderWeight\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:14:\"parentSequence\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:4;s:19:\"notNullEmptyAllowed\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'ItemAttributesMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:21:\"GalleryMaintenanceMap\";a:5:{s:5:\"runId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:6:\"taskId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"timestamp\";a:2:{s:4:\"type\";i:1;s:4:\"size\";i:2;}s:7:\"success\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}s:7:\"details\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'MaintenanceMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryMimeTypeMap\";a:3:{s:9:\"extension\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"viewable\";a:2:{s:4:\"type\";i:8;s:4:\"size\";i:2;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'MimeTypeMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryMovieItem\";a:4:{s:7:\"members\";a:3:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}s:8:\"duration\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:3;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:3:{i:0;s:5:\"width\";i:1;s:6:\"height\";i:2;s:8:\"duration\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'MovieItem'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryPermissionSetMap\";a:5:{s:6:\"module\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:10:\"permission\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:4:\"bits\";a:3:{s:4:\"type\";i:64;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:5:\"flags\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PermissionSetMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryPhotoItem\";a:4:{s:7:\"members\";a:2:{s:5:\"width\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}s:6:\"height\";a:2:{s:4:\"type\";i:1;s:15:\"external-access\";i:1;}}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:2:{i:0;s:5:\"width\";i:1;s:6:\"height\";}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'PhotoItem'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:16:\"GalleryPluginMap\";a:3:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"active\";a:3:{s:4:\"type\";i:8;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:23:\"GalleryPluginPackageMap\";a:6:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:11:\"packageName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"packageVersion\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:12:\"packageBuild\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"locked\";a:3:{s:4:\"type\";i:8;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginPackageMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryPluginParameterMap\";a:5:{s:10:\"pluginType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:8:\"pluginId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"itemId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"parameterName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:14:\"parameterValue\";a:3:{s:4:\"type\";i:4;s:4:\"size\";i:1;s:19:\"notNullEmptyAllowed\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'PluginParameterMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryRecoverPasswordMap\";a:3:{s:8:\"userName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:10:\"authString\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"requestExpires\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'RecoverPasswordMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:17:\"GallerySessionMap\";a:6:{s:2:\"id\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:16:\"remoteIdentifier\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:17:\"creationTimestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:21:\"modificationTimestamp\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"data\";a:2:{s:4:\"type\";i:4;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'SessionMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:26:\"GalleryToolkitOperationMap\";a:4:{s:4:\"name\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:13:\"parametersCrc\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";b:1;}s:14:\"outputMimeType\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:34:\"GalleryToolkitOperationMimeTypeMap\";a:4:{s:13:\"operationName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"toolkitId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"priority\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnMimeTypeMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:35:\"GalleryToolkitOperationParameterMap\";a:4:{s:13:\"operationName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"position\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkOperatnParameterMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:25:\"GalleryToolkitPropertyMap\";a:3:{s:4:\"name\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:4:\"type\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:11:\"description\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkPropertyMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:33:\"GalleryToolkitPropertyMimeTypeMap\";a:3:{s:12:\"propertyName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:9:\"toolkitId\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:8:\"mimeType\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'TkPropertyMimeTypeMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:18:\"GalleryUnknownItem\";a:4:{s:7:\"members\";a:0:{}s:6:\"parent\";s:15:\"GalleryDataItem\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'UnknownItem'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:11:\"GalleryUser\";a:4:{s:7:\"members\";a:6:{s:8:\"userName\";a:4:{s:4:\"type\";i:2;s:4:\"size\";i:1;s:7:\"notNull\";i:1;s:15:\"external-access\";i:1;}s:8:\"fullName\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:3;}s:14:\"hashedPassword\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:2;}s:5:\"email\";a:2:{s:4:\"type\";i:2;s:4:\"size\";i:4;}s:8:\"language\";a:3:{s:4:\"type\";i:2;s:4:\"size\";i:2;s:15:\"external-access\";i:1;}s:6:\"locked\";a:1:{s:4:\"type\";i:8;}}s:6:\"parent\";s:13:\"GalleryEntity\";s:6:\"module\";s:4:\"core\";s:6:\"linked\";a:0:{}}}', g_type = 'entity',g_pluginId = 'core' WHERE g_name = 'User'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_info = 'a:1:{s:19:\"GalleryUserGroupMap\";a:2:{s:6:\"userId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}s:7:\"groupId\";a:3:{s:4:\"type\";i:1;s:4:\"size\";i:2;s:7:\"notNull\";b:1;}}}', g_type = 'map',g_pluginId = 'core' WHERE g_name = 'UserGroupMap'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_pluginId = 'core' WHERE g_name = 'Lock'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_Schema SET g_pluginId = 'core' WHERE g_name = 'Schema'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'httpauth' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imageframe' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'itemadd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'linkitem' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'permalinks' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'publishxp' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'replica' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbnail' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbpage' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'uploadapplet' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'webdav' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #2078) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='core'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryEntity.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryEntity','GalleryEntity','modules/core/classes/GalleryEntity.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryChildEntity.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryChildEntity','GalleryChildEntity','modules/core/classes/GalleryChildEntity.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAlbumItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAlbumItem','GalleryAlbumItem','modules/core/classes/GalleryAlbumItem.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUser.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUser','GalleryUser','modules/core/classes/GalleryUser.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryGroup.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryGroup','GalleryGroup','modules/core/classes/GalleryGroup.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivative.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivative','GalleryDerivative','modules/core/classes/GalleryDerivative.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDerivativeImage.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDerivative','GalleryDerivativeImage','GalleryDerivativeImage','modules/core/classes/GalleryDerivativeImage.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryEntity','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryPhotoItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryPhotoItem','GalleryPhotoItem','modules/core/classes/GalleryPhotoItem.class','core','a:2:{i:0;s:7:\"image/*\";i:1;s:21:\"application/photoshop\";}','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryMovieItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryMovieItem','GalleryMovieItem','modules/core/classes/GalleryMovieItem.class','core','a:1:{i:0;s:7:\"video/*\";}','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryAnimationItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryAnimationItem','GalleryAnimationItem','modules/core/classes/GalleryAnimationItem.class','core','a:2:{i:0;s:22:\"application/x-director\";i:1;s:29:\"application/x-shockwave-flash\";}','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryUnknownItem.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryItem','GalleryUnknownItem','GalleryUnknownItem','modules/core/classes/GalleryUnknownItem.class','core','a:1:{i:0;s:1:\"*\";}','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryDynamicAlbum.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryDynamicAlbum','GalleryDynamicAlbum','GalleryDynamicAlbum','modules/core/classes/GalleryDynamicAlbum.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GalleryCoreSearch.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GallerySearchInterface_1_0','GalleryCoreSearch','GalleryCoreSearch','modules/core/classes/GalleryCoreSearch.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditItem.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditItem','ItemEditItem','modules/core/ItemEditItem.inc','core','N;','1')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAnimation.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAnimation','ItemEditAnimation','modules/core/ItemEditAnimation.inc','core','N;','2')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditMovie.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditMovie','ItemEditMovie','modules/core/ItemEditMovie.inc','core','N;','2')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditAlbum.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditAlbum','ItemEditAlbum','modules/core/ItemEditAlbum.inc','core','N;','2')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditTheme.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditTheme','ItemEditTheme','modules/core/ItemEditTheme.inc','core','N;','3')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhoto.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhoto','ItemEditPhoto','modules/core/ItemEditPhoto.inc','core','N;','2')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditRotateAndScalePhoto.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditRotateAndScalePhoto','ItemEditRotateAndScalePhoto','modules/core/ItemEditRotateAndScalePhoto.inc','core','N;','3')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemEditPhotoThumbnail.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemEditPlugin','ItemEditPhotoThumbnail','ItemEditPhotoThumbnail','modules/core/ItemEditPhotoThumbnail.inc','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/ItemAddFromBrowser.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddPlugin','ItemAddFromBrowser','ItemAddFromBrowser','modules/core/ItemAddFromBrowser.inc','core','N;','2')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/CreateThumbnailOption.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('ItemAddOption','CreateThumbnailOption','CreateThumbnailOption','modules/core/CreateThumbnailOption.inc','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/OptimizeDatabaseTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','OptimizeDatabaseTask','OptimizeDatabaseTask','modules/core/classes/OptimizeDatabaseTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushTemplatesTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushTemplatesTask','FlushTemplatesTask','modules/core/classes/FlushTemplatesTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/FlushDatabaseCacheTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','FlushDatabaseCacheTask','FlushDatabaseCacheTask','modules/core/classes/FlushDatabaseCacheTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/BuildDerivativesTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','BuildDerivativesTask','BuildDerivativesTask','modules/core/classes/BuildDerivativesTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ResetViewCountsTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ResetViewCountsTask','ResetViewCountsTask','modules/core/classes/ResetViewCountsTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SystemInfoTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SystemInfoTask','SystemInfoTask','modules/core/classes/SystemInfoTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/SetOriginationTimestampTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','SetOriginationTimestampTask','SetOriginationTimestampTask','modules/core/classes/SetOriginationTimestampTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/DeleteSessionsTask.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','DeleteSessionsTask','DeleteSessionsTask','modules/core/classes/DeleteSessionsTask.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','ConvertDatabaseToUtf8Task','ConvertDatabaseToUtf8Task','modules/core/classes/ConvertDatabaseToUtf8Task.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/CoreCaptchaAdminOption.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('CaptchaAdminOption','CoreCaptchaAdminOption','CoreCaptchaAdminOption','modules/core/classes/CoreCaptchaAdminOption.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/classes/GallerySession.class) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryAuthPlugin','SessionAuthPlugin','SessionAuthPlugin','modules/core/classes/GallerySession.class','core','N;','4')   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=1 WHERE g_pluginType='module' AND g_pluginId='core'   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate post activation event +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:32 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #2415) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin httpauth +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] httpauth plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin linkitem +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] linkitem plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin rewrite +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] rewrite plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin thumbnail +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] thumbnail plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin webdav +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] webdav plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin core +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] core plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin core +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] core plugin successfully instantiated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] Check the version of the core plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] The version of the core plugin is ok +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter history.core for rewrite plugin +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_PluginParameterMap WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='history.core'   +
+ +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate core plugin successfully activated +2007-06-27 18:05:33 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] + +-------------------------------------------------------- + Upgrade Plugins +-------------------------------------------------------- + + +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.adminGroup for core plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'core' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_UserGroupMap.g_userId, + g2_User.g_userName + FROM + g2_UserGroupMap, g2_User + WHERE + g2_UserGroupMap.g_groupId = 3 + AND + g2_UserGroupMap.g_userId = g2_User.g_id + + ORDER BY + g2_User.g_userName + LIMIT 1   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_id, g_entityType FROM g2_Entity WHERE g_id IN (6)   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'archiveupload' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'comment' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'exif' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'ffmpeg' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'gd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'httpauth' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'icons' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imageframe' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'imagemagick' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'itemadd' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'linkitem' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'netpbm' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'permalinks' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'publishxp' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rating' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rearrange' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'replica' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'search' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'shutterfly' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'slideshow' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbnail' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'thumbpage' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'uploadapplet' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'webdav' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #61) +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g2_User.g_userName, g2_User.g_fullName, g2_User.g_hashedPassword, g2_User.g_email, g2_User.g_language, g2_User.g_locked, g2_Entity.g_id, g2_Entity.g_creationTimestamp, g2_Entity.g_isLinkable, g2_Entity.g_linkId, g2_Entity.g_modificationTimestamp, g2_Entity.g_serialNumber, g2_Entity.g_entityType, g2_Entity.g_onLoadHandlers FROM g2_User, g2_Entity WHERE g2_User.g_id IN (6) AND g2_Entity.g_id=g2_User.g_id   +
+ +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin keyalbum +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:41 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] keyalbum plugin successfully instantiated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] realpath(T:\Web Abeto Armarios\Source\www\gallery2\modules\core\classes/../../..) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Binding text domain: modules_keyalbum -> T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/locale +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryModule::installOrUpgrade keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Old version: 1.0.0 New version: 1.0.0.2 +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Configure store for keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/Maps.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/Entities.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Upgrade (or install) keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Update module paramater for the keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _version for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='1.0.0.2' WHERE g_pluginType='module' AND g_pluginId='keyalbum' AND g_itemId=0 AND g_parameterName='_version'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _version for keyalbum plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _callbacks for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='getSiteAdminViews|getItemSummaries' WHERE g_pluginType='module' AND g_pluginId='keyalbum' AND g_itemId=0 AND g_parameterName='_callbacks'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _callbacks for keyalbum plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='7,10' WHERE g_pluginType='module' AND g_pluginId='keyalbum' AND g_itemId=0 AND g_parameterName='_requiredCoreApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredCoreApi for keyalbum plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='3,2' WHERE g_pluginType='module' AND g_pluginId='keyalbum' AND g_itemId=0 AND g_parameterName='_requiredModuleApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredModuleApi for keyalbum plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] ConfigureStoreCleanup for keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Reactivate keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate keyalbum plugin, deactivate +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=0 WHERE g_pluginType='module' AND g_pluginId='keyalbum'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_implId FROM g2_FactoryMap WHERE g_implModuleId='keyalbum'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='keyalbum'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate keyalbum plugin, activate again +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'keyalbum' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #381) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=1 WHERE g_pluginType='module' AND g_pluginId='keyalbum'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate keyalbum plugin successfully activated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate keyalbum plugin, successfully reactivated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Successfully finished installOrUpgrade keyalbum module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin rewrite +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] rewrite plugin successfully instantiated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] realpath(T:\Web Abeto Armarios\Source\www\gallery2\modules\core\classes/../../..) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Binding text domain: modules_rewrite -> T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/locale +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryModule::installOrUpgrade rewrite module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Old version: 1.1.13 New version: 1.1.13.2 +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Configure store for rewrite module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SET AUTOCOMMIT=0   +
+
+(mysqlt): BEGIN   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/Maps.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/Entities.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Upgrade (or install) rewrite module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Update module paramater for the rewrite module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _version for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #612) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='1.1.13.2' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='_version'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _version for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _callbacks for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='getSiteAdminViews|registerEventListeners' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='_callbacks'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _callbacks for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='7,5' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='_requiredCoreApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredCoreApi for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='3,5' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='_requiredModuleApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter _requiredModuleApi for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] ConfigureStoreCleanup for rewrite module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SHOW TABLES   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_name, g_major, g_minor FROM g2_Schema   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Reactivate rewrite module +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate rewrite plugin, deactivate +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=0 WHERE g_pluginType='module' AND g_pluginId='rewrite'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_implId FROM g2_FactoryMap WHERE g_implModuleId='rewrite'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='ModRewriteUrlGenerator'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='ModRewriteUrlGenerator'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='ModRewriteUrlGenerator'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='RewriteCheckConflictTask'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='RewriteCheckConflictTask'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='RewriteCheckConflictTask'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkOperatnMimeTypeMap WHERE g_toolkitId='RewriteApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkOperatnMap.g_name + FROM + g2_TkOperatnMap + LEFT JOIN + g2_TkOperatnMimeTypeMap + ON + g2_TkOperatnMap.g_name = g2_TkOperatnMimeTypeMap.g_operationName + WHERE + g2_TkOperatnMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_TkPropertyMimeTypeMap WHERE g_toolkitId='RewriteApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT DISTINCT + g2_TkPropertyMap.g_name + FROM + g2_TkPropertyMap + LEFT JOIN + g2_TkPropertyMimeTypeMap + ON + g2_TkPropertyMap.g_name = g2_TkPropertyMimeTypeMap.g_propertyName + WHERE + g2_TkPropertyMimeTypeMap.g_toolkitId IS NULL +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_classType='GalleryToolkit' AND g_implId='RewriteApi'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): DELETE FROM g2_FactoryMap WHERE g_implModuleId='rewrite'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate rewrite plugin, activate again +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter parserId for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/parsers/modrewrite/parser.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter activeRules for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_readable(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_writeable(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter accessList for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter allowEmptyReferer for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin httpauth +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] httpauth plugin successfully instantiated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Check the version of the httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginMap.g_pluginId, + g2_PluginMap.g_active + FROM + g2_PluginMap + WHERE + g2_PluginMap.g_pluginType = 'module' +   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] opendir(T:\Web Abeto Armarios\Source\www\gallery2/modules/) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/archiveupload/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for archiveupload plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/comment/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for comment plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/core) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/core/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/exif/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for exif plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/ffmpeg/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for ffmpeg plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/gd/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for gd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/httpauth/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for httpauth plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/icons/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for icons plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imageframe/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imageframe plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/imagemagick/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for imagemagick plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/itemadd/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for itemadd plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/keyalbum/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for keyalbum plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/linkitem/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for linkitem plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/netpbm/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for netpbm plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/permalinks/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for permalinks plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/publishxp/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for publishxp plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rating/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rating plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rearrange/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rearrange plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/replica/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for replica plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/search) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/search/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for search plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/shutterfly/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for shutterfly plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/slideshow/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for slideshow plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbnail/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbnail plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/thumbpage/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for thumbpage plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/uploadapplet/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for uploadapplet plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _version for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _callbacks for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredCoreApi for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter _requiredModuleApi for webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] readdir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] closedir(Resource id #884) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] The version of the httpauth plugin is ok +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): SELECT g_classType, g_className, g_implId, g_implPath, g_hints, g_implModuleId, g_orderWeight FROM g2_FactoryMap ORDER BY g_orderWeight ASC   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Unimplemented: RewriteApi +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin rewrite +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] rewrite plugin successfully instantiated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Check the version of the rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] The version of the rewrite plugin is ok +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Loading plugin webdav +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Class not defined, trying to include it. +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/module.inc) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] webdav plugin successfully instantiated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Check the version of the webdav plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] The version of the webdav plugin is ok +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] realpath(T:\Web Abeto Armarios\Source\www\gallery2\modules\core\classes/../../..) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Binding text domain: modules_webdav -> T:\Web Abeto Armarios\Source\www\gallery2/modules/webdav/locale +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Unimplemented: RewriteApi +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter modrewrite.galleryLocation for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter modrewrite.status for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter id.rootAlbum for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c\%%3421186428) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c\%%3421186428) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c\%%3421186428) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter permissions.directory for core plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c\%%3421186428) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_dir(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] mkdir(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c\%%3421186428, 755) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fopen(T:\Web Abeto Armarios\Source\www\gallery2\g2data_2e6106f57b\smarty\templates_c\%%3421186428/v_12, w, 0) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fclose(Resource id #1112) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_readable(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess, ) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fopen(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess, w, 0) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fwrite(Resource id #1130, ..., ) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fclose(Resource id #1130) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter shortUrls for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='a:5:{i:0;a:4:{s:5:\"match\";a:1:{s:4:\"view\";s:13:\"core.ShowItem\";}s:7:\"pattern\";s:8:\"v/%path%\";s:9:\"functions\";a:3:{s:4:\"path\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:9:\"parsePath\";}s:4:\"page\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:9:\"parsePage\";}s:8:\"language\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:13:\"parseLanguage\";}}s:6:\"onLoad\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:18:\"loadItemIdFromPath\";}}i:1;a:3:{s:5:\"match\";a:1:{s:4:\"view\";s:17:\"core.DownloadItem\";}s:7:\"pattern\";s:36:\"d/%itemId%-%serialNumber%/%fileName%\";s:9:\"functions\";a:2:{s:12:\"serialNumber\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:17:\"parseSerialNumber\";}s:8:\"fileName\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:13:\"parseFileName\";}}}i:2;a:2:{s:5:\"match\";a:1:{s:4:\"view\";s:14:\"core.SiteAdmin\";}s:7:\"pattern\";s:6:\"admin/\";}i:3;a:3:{s:5:\"match\";a:1:{s:10:\"controller\";s:13:\"webdav.WebDav\";}s:7:\"pattern\";s:7:\"w%path%\";s:9:\"functions\";a:1:{s:4:\"path\";a:3:{i:0;s:6:\"webdav\";i:1;s:19:\"WebDavRewriteHelper\";i:2;s:9:\"parsePath\";}}}i:4;a:4:{s:5:\"match\";a:1:{s:4:\"view\";s:23:\"webdav.DownloadDavMount\";}s:7:\"pattern\";s:17:\"v/%path%.davmount\";s:9:\"functions\";a:1:{s:4:\"path\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:9:\"parsePath\";}}s:6:\"onLoad\";a:3:{i:0;s:7:\"rewrite\";i:1;s:19:\"RewriteSimpleHelper\";i:2;s:18:\"loadItemIdFromPath\";}}}' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='shortUrls'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter shortUrls for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter activeRules for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='a:3:{s:8:\"httpauth\";a:0:{}s:7:\"rewrite\";a:3:{i:0;a:1:{s:7:\"pattern\";s:8:\"v/%path%\";}i:1;a:1:{s:7:\"pattern\";s:36:\"d/%itemId%-%serialNumber%/%fileName%\";}i:4;a:1:{s:7:\"pattern\";s:6:\"admin/\";}}s:6:\"webdav\";a:2:{s:7:\"connect\";a:1:{s:7:\"pattern\";s:7:\"w%path%\";}s:8:\"davmount\";a:1:{s:7:\"pattern\";s:17:\"v/%path%.davmount\";}}}' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='activeRules'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter activeRules for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter modrewrite.galleryLocation for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='/gallery2/' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='modrewrite.galleryLocation'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter modrewrite.galleryLocation for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] getParameter modrewrite.status for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): + SELECT + g2_PluginParameterMap.g_itemId, + g2_PluginParameterMap.g_parameterName, + g2_PluginParameterMap.g_parameterValue + FROM + g2_PluginParameterMap + WHERE + g2_PluginParameterMap.g_pluginType = 'module' + AND + g2_PluginParameterMap.g_pluginId = 'rewrite' + AND + g2_PluginParameterMap.g_itemId = 0   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fsockopen(localhost, 80, , , 5) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fwrite(Resource id #1151, ..., ) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fflush(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fgets(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fread(Resource id #1151, 4096) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] feof(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] fclose(Resource id #1151) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] setParameter modrewrite.status for rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginParameterMap SET g_parameterValue='a:1:{s:11:\"needOptions\";b:0;}' WHERE g_pluginType='module' AND g_pluginId='rewrite' AND g_itemId=0 AND g_parameterName='modrewrite.status'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Plugin parameter modrewrite.status for rewrite plugin set successfully +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_readable(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] is_writeable(T:\Web Abeto Armarios\Source\www\gallery2/.htaccess) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/GalleryStorage/schema.tpl, ) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('GalleryUrlGenerator','ModRewriteUrlGenerator','ModRewriteUrlGenerator','modules/rewrite/classes/parsers/modrewrite/ModRewriteUrlGenerator.class','rewrite','N;','2')   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/RewriteCheckConflictTask.class) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('MaintenanceTask','RewriteCheckConflictTask','RewriteCheckConflictTask','modules/rewrite/classes/RewriteCheckConflictTask.class','rewrite','N;','5')   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] file_exists(T:\Web Abeto Armarios\Source\www\gallery2/modules/rewrite/classes/RewriteApi.class) +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): INSERT INTO g2_FactoryMap (g_classType, g_className, g_implId, g_implPath, g_implModuleId, g_hints, g_orderWeight) VALUES ('RewriteApi','RewriteApi','RewriteApi','modules/rewrite/classes/RewriteApi.class','rewrite','N;','5')   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate rewrite plugin +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): UPDATE g2_PluginMap SET g_active=1 WHERE g_pluginType='module' AND g_pluginId='rewrite'   +
+ +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::activate rewrite plugin successfully activated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] GalleryPlugin::reactivate rewrite plugin, successfully reactivated +2007-06-27 18:05:42 [TMP_SESSION_ID_DI_NOISSES_PMT] Successfully finished installOrUpgrade rewrite module +2007-06-27 18:05:43 [TMP_SESSION_ID_DI_NOISSES_PMT]
+(mysqlt): COMMIT   +
+
+(mysqlt): SET AUTOCOMMIT=1   +
+ diff --git a/Source/gallery2/g2data_2e6106f57b/versions.dat b/Source/gallery2/g2data_2e6106f57b/versions.dat new file mode 100644 index 0000000..643831c --- /dev/null +++ b/Source/gallery2/g2data_2e6106f57b/versions.dat @@ -0,0 +1,2 @@ +1.2.0.4 +2.2.2 \ No newline at end of file diff --git a/Source/gallery2/images/Thumbs.db b/Source/gallery2/images/Thumbs.db new file mode 100644 index 0000000..26f0225 Binary files /dev/null and b/Source/gallery2/images/Thumbs.db differ diff --git a/Source/gallery2/images/closelabel.gif b/Source/gallery2/images/closelabel.gif new file mode 100644 index 0000000..1ab201f Binary files /dev/null and b/Source/gallery2/images/closelabel.gif differ diff --git a/Source/gallery2/images/g2Logo.gif b/Source/gallery2/images/g2Logo.gif new file mode 100644 index 0000000..40b1d3c Binary files /dev/null and b/Source/gallery2/images/g2Logo.gif differ diff --git a/Source/gallery2/images/gallery.gif b/Source/gallery2/images/gallery.gif new file mode 100644 index 0000000..240de0c Binary files /dev/null and b/Source/gallery2/images/gallery.gif differ diff --git a/Source/gallery2/images/galleryLogo_sm.gif b/Source/gallery2/images/galleryLogo_sm.gif new file mode 100644 index 0000000..a631bf5 Binary files /dev/null and b/Source/gallery2/images/galleryLogo_sm.gif differ diff --git a/Source/gallery2/images/galleryLogo_sm.png b/Source/gallery2/images/galleryLogo_sm.png new file mode 100644 index 0000000..7d7b9b9 Binary files /dev/null and b/Source/gallery2/images/galleryLogo_sm.png differ diff --git a/Source/gallery2/images/gulftech.png b/Source/gallery2/images/gulftech.png new file mode 100644 index 0000000..a3fcb2c Binary files /dev/null and b/Source/gallery2/images/gulftech.png differ diff --git a/Source/gallery2/images/intershot.png b/Source/gallery2/images/intershot.png new file mode 100644 index 0000000..8608f48 Binary files /dev/null and b/Source/gallery2/images/intershot.png differ diff --git a/Source/gallery2/images/loading.gif b/Source/gallery2/images/loading.gif new file mode 100644 index 0000000..39a9cc8 Binary files /dev/null and b/Source/gallery2/images/loading.gif differ diff --git a/Source/gallery2/images/loading2.gif b/Source/gallery2/images/loading2.gif new file mode 100644 index 0000000..f864d5f Binary files /dev/null and b/Source/gallery2/images/loading2.gif differ diff --git a/Source/gallery2/images/xhtml10.png b/Source/gallery2/images/xhtml10.png new file mode 100644 index 0000000..ec68644 Binary files /dev/null and b/Source/gallery2/images/xhtml10.png differ diff --git a/Source/gallery2/index.php b/Source/gallery2/index.php new file mode 100644 index 0000000..c6b8048 --- /dev/null +++ b/Source/gallery2/index.php @@ -0,0 +1,49 @@ + + * @version $Revision: 15513 $ + */ + +/* Include bootstrap.inc in case config.php overrides GALLERY_MAIN_PHP */ +require_once(dirname(__FILE__) . '/bootstrap.inc'); +require_once(dirname(__FILE__) . '/modules/core/classes/GalleryUrlGenerator.class'); +require_once(dirname(__FILE__) . '/modules/core/classes/GalleryCoreApi.class'); + +/* The REQUEST_URI can either be /path/index.php or just /path/. Get rid of index.php.* */ +$path = GalleryUrlGenerator::getCurrentRequestUri(); +if (preg_match('|^(/(?:[^?#/]+/)*)(.*)|', $path, $matches)) { + $path = $matches[1] . GALLERY_MAIN_PHP; + if (!empty($matches[2]) && ($pos = strpos($matches[2], '?')) !== false) { + $path .= substr($matches[2], $pos); + } +} + +$configBaseUri = @$gallery->getConfig('baseUri'); + +$urlGenerator = new GalleryUrlGenerator(); +$urlGenerator->init(!empty($configBaseUri) ? $configBaseUri : null); + +$phpVm = $gallery->getPhpVm(); +$phpVm->header('Location: ' . $urlGenerator->makeUrl($path)); +?> diff --git a/Source/gallery2/init.inc b/Source/gallery2/init.inc new file mode 100644 index 0000000..ad06e2b --- /dev/null +++ b/Source/gallery2/init.inc @@ -0,0 +1,195 @@ + + * @version $Revision: 15698 $ + */ + +require_once(dirname(__FILE__) . '/modules/core/classes/GalleryUtilities.class'); + +function GalleryInitFirstPass($params=array()) { + global $gallery; + + ini_set('magic_quotes_runtime', 0); + ini_set('magic_quotes_sybase', 0); + + /* Specify that when an assertion fails, we terminate right away */ + assert_options(ASSERT_WARNING, 1); + assert_options(ASSERT_BAIL, 1); + + /* Load all the core Gallery classes */ + $galleryBase = dirname(__FILE__) . '/'; + require_once($galleryBase . 'modules/core/classes/GalleryCoreApi.class'); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryConstants.class'); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryCapabilities.class'); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryView.class'); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryModule.class'); + + if (!strncasecmp(PHP_OS, 'win', 3)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryPlatform/WinNtPlatform.class'); + $platform = new WinNtPlatform(); + } else { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryPlatform/UnixPlatform.class'); + $platform = new UnixPlatform(); + } + + $gallery->setPlatform($platform); + $slash = $platform->getDirectorySeparator(); + + if (isset($params['debug'])) { + $gallery->setDebug($params['debug']); + } + + /* Sanitize the data path */ + $dataBase = $gallery->getConfig('data.gallery.base'); + if ($dataBase{strlen($dataBase) - 1} != $slash) { + $dataBase .= $slash; + $gallery->setConfig('data.gallery.base', $dataBase); + } + + /* Init for downloadable plugins */ + $gallery->setConfig('repository.url', 'http://gallery.menalto.com/repository/'); + $gallery->setConfig('repository.cache', $dataBase . 'cache' . $slash . 'repository' . $slash); + + /* Set our various data paths */ + $gallery->setConfig('data.gallery.cache', $dataBase . 'cache' . $slash); + $gallery->setConfig('data.gallery.albums', $dataBase . 'albums' . $slash); + $gallery->setConfig('data.gallery.locks', $dataBase . 'locks'. $slash); + $gallery->setConfig('data.gallery.tmp', $dataBase . 'tmp' . $slash); + $gallery->setConfig('data.smarty.base', $dataBase . 'smarty' . $slash); + $gallery->setConfig('data.smarty.templates_c', + $dataBase . 'smarty' . $slash . 'templates_c' . $slash); + $gallery->setConfig('data.gallery.plugins', $galleryBase . 'plugins' . $slash); + $gallery->setConfig('data.gallery.plugins_data', $dataBase . 'plugins_data' . $slash); + + /* Configure our url generator */ + if (!isset($params['noDatabase'])) { + /* + * Swallow error to prevent GalleryFactoryHelper_loadRegistry cache from breaking upgrade to + * core 1.0.6 + */ + list ($ret, $urlGenerator) = @GalleryCoreApi::newFactoryInstance('GalleryUrlGenerator'); + /* Swallow ERROR_STORAGE_FAILURE, or automatic upgrading fails */ + if ($ret && !($ret->getErrorCode() & ERROR_STORAGE_FAILURE)) { + return $ret; + } + } + if (!isset($urlGenerator)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryUrlGenerator.class'); + $urlGenerator = new GalleryUrlGenerator(); + } + /* Allow for overrides from GalleryEmbed ($param) or from config.php */ + $configBaseUri = @$gallery->getConfig('baseUri'); + $ret = $urlGenerator->init( + isset($params['baseUri']) ? $params['baseUri'] + : (!empty($configBaseUri) ? $configBaseUri : null), + isset($params['g2Uri']) ? $params['g2Uri'] : null, + isset($params['embedSessionString']) ? $params['embedSessionString'] : null); + if ($ret) { + return $ret; + } + $gallery->setUrlGenerator($urlGenerator); + + /* Initialize our session */ + if (!isset($params['noDatabase'])) { + if (isset($params['gallerySessionId'])) { + GalleryCoreApi::requireOnce('modules/core/classes/GallerySession.class'); + GalleryUtilities::putRequestVariable(SESSION_ID_PARAMETER, $params['gallerySessionId']); + } + $ret = $gallery->initSession(); + if ($ret) { + return $ret; + } + } else { + $gallery->initEmptySession(); + } + + /* Initialize our translator */ + $language = GalleryUtilities::getRequestVariables('language'); + if (isset($params['activeLanguage']) || !empty($language)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTranslator.class'); + list ($language) = GalleryTranslator::getSupportedLanguageCode( + empty($language) ? $params['activeLanguage'] : $language); + $gallery->setActiveLanguageCode($language); + } + $ret = $gallery->initTranslator(isset($params['noDatabase'])); + if ($ret) { + return $ret; + } + + return null; +} + +function GalleryInitSecondPass() { + global $gallery; + $session =& $gallery->getSession(); + $urlGenerator =& $gallery->getUrlGenerator(); + + $ret = $urlGenerator->initNavigation(); + if ($ret) { + return $ret; + } + + /* + * Set our active user. Try getting our active user from registered authentication plugins. If + * not, make us the anonymous user. If we don't have a session, this will initiate one for us. + */ + list ($ret, $pluginIds) = GalleryCoreApi::getAllFactoryImplementationIds('GalleryAuthPlugin'); + if ($ret) { + return $ret; + } + + foreach ($pluginIds as $pluginId) { + list ($ret, $plugin) = + GalleryCoreApi::newFactoryInstanceById('GalleryAuthPlugin', $pluginId); + if ($ret) { + return $ret; + } + + list ($ret, $user) = $plugin->getUser(); + if ($ret) { + return $ret; + } + + if (isset($user)) { + break; + } + } + + if (!isset($user)) { + /* Missing user, be anonymous */ + list ($ret, $userId) = GalleryCoreApi::getAnonymousUserId(); + if ($ret) { + return $ret; + } + + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return $ret; + } + } + + $gallery->setActiveUser($user); + + return null; +} +?> diff --git a/Source/gallery2/install/GalleryStub.class b/Source/gallery2/install/GalleryStub.class new file mode 100644 index 0000000..2f741c8 --- /dev/null +++ b/Source/gallery2/install/GalleryStub.class @@ -0,0 +1,41 @@ +_hash[$key] = $value; + } + + function getConfig($key) { + return isset($this->_hash[$key]) ? $this->_hash[$key] : ''; + } + + function setDebug() { } + function setDebugLogFile() { } + function setProfile() { } + function debug() { } +} +?> diff --git a/Source/gallery2/install/InstallStep.class b/Source/gallery2/install/InstallStep.class new file mode 100644 index 0000000..63c4c93 --- /dev/null +++ b/Source/gallery2/install/InstallStep.class @@ -0,0 +1,113 @@ +_isComplete; + } + + function isRedoable() { + return false; + } + + function setComplete($complete) { + $this->_isComplete = $complete; + } + + function canBeVisited() { + return true; + } + + function setInError($inError) { + $this->_isInError = $inError; + } + + function isInError() { + return $this->_isInError; + } + + function stepName() { + return _('Unknown'); + } + + function setStepNumber($stepNumber) { + $this->_stepNumber = $stepNumber; + } + + function getStepNumber() { + return $this->_stepNumber; + } + + function processRequest() { + return true; /* true means continue rendering the page */ + } + + function loadTemplateData(&$templateData) { + return null; + } + + function getActions() { + return array(); + } + + function setIsLastStep($lastStep) { + $this->_isLastStep = $lastStep; + } + + function isLastStep() { + return $this->_isLastStep; + } + + function loadGalleryConfig($config) { + } + + function sanitize($string) { + if (get_magic_quotes_gpc()) { + $string = stripslashes($string); + } + return $string; + } + + function isRelevant() { + return true; + } + + function isOptional() { + return false; + } + + function resetL10Domain() { + /* Reset to installer domain in case we called some code that may have done translation */ + if (function_exists('textdomain')) { + textdomain('gallery2_install'); + } + } +} +?> diff --git a/Source/gallery2/install/StatusTemplate.class b/Source/gallery2/install/StatusTemplate.class new file mode 100644 index 0000000..8f102e3 --- /dev/null +++ b/Source/gallery2/install/StatusTemplate.class @@ -0,0 +1,101 @@ + to the statusblock or the navbar) + */ + function renderHeader($renderStatusBlock=false) { + global $steps; + global $currentStep; + + $templateData = array(); + $templateData['MainPage']['showHeader'] = 1; + if ($renderStatusBlock) { + $templateData['MainPage']['showStatusBlock'] = 1; + } + include(dirname(__FILE__) . '/templates/MainPage.html'); + } + + /** + * Render a single status message + * @param string $title the status title + * @param string $description the status description + * @param float $percentComplete ranging from 0 to 1 + * @return object GalleryStatus a status code + */ + function renderStatusMessage($title, $description, $percentComplete) { + $templateData = array(); + $templateData['MainPage']['showStatus'] = 1; + $templateData['MainPage']['status'] = array( + 'title' => $title, + 'description' => $description, + 'percentComplete' => GalleryUtilities::roundToString($percentComplete, 2)); + include(dirname(__FILE__) . '/templates/MainPage.html'); + flush(); + + return null; + } + + /** + * Render the body and footer (everything below the status message) + * @param array $templateData + */ + function renderBodyAndFooter($templateData) { + global $steps; + global $currentStep; + global $stepNumber; + + $stepsComplete = max($stepNumber - ($currentStep->isComplete() ? 0 : 1), 0); + $templateData['percentComplete'] = + (int)((100 * ($stepsComplete / (sizeof($steps)-1))) / 5) * 5; + + $templateData['MainPage']['showBodyAndFooter'] = 1; + include(dirname(__FILE__) . '/templates/MainPage.html'); + } + + /** + * Hide the status block + */ + function hideStatusBlock() { + $templateData = array(); + $templateData['MainPage']['hideStatusBlock'] = 1; + include(dirname(__FILE__) . '/templates/MainPage.html'); + } + + /** + * Render the whole page, except for the status block and messages. This is the way + * that we render most pages that don't have interactive status messages. + * @param array $templateData + */ + function renderHeaderBodyAndFooter($templateData) { + /* + * This is a little inefficient because we're loading MainPage twice. But we're not + * required to be really efficient here, and this is a nice way to compose it. + */ + $this->renderHeader(); + $this->renderBodyAndFooter($templateData); + } +} +?> diff --git a/Source/gallery2/install/config.php-template b/Source/gallery2/install/config.php-template new file mode 100644 index 0000000..dd4bf26 --- /dev/null +++ b/Source/gallery2/install/config.php-template @@ -0,0 +1,194 @@ +setConfig('setup.password', 'A PASSWORD'); + * + * Choose something random and enter it in plain text. You don't have to + * remember it because you can always refer to this file. You'll only be asked + * for this password when you run Gallery's lib/tools code. We don't provide a + * default password because we want you to choose one of your own (which + * lessens the chance that you'll get hacked). + */ +$gallery->setConfig('setup.password', ''); + +/* + * In order for Gallery to manage your data, you must provide it with + * a directory that it can write to. Gallery is a webserver application, + * so the directory that you create must be writeable by the + * webserver, not just by you. + * + * Create an empty directory anywhere you please. Gallery will fill this + * directory with its own files (that you shouldn't mess with). This directory + * can be anywhere on your filesystem. For security purposes, it's better + * if the directory is not accessible via your webserver (ie, it should + * not be in your DocumentRoot). If you *do* make it available via your + * web server then you probably won't have any security for your data files. + * + * Don't make this the same as your gallery directory! + */ +$gallery->setConfig('data.gallery.base', ''); + +/* + * Gallery can store its data in multiple different back ends. Currently we + * support MySQL, PostgreSQL and Oracle. Enter the hostname where your + * database lives, and the username and password you use to connect to it. + * + * You must specify the name of a database that already exists. Gallery will + * not create the database for you, because it's very difficult to do that in + * a reliable, database-neutral fashion. The user that you use should have + * the following permissions: + * + * SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER + * + * You must specify a table and column prefix. This is a few characters that + * is prepended to any table or column name to avoid conflicting with reserved + * words in the database or other tables you have in the same database. In + * fact, it's fine to let Gallery uses the same database as other applications + * (including other instances of Gallery itself); the prefix is enough + * to distinguish Gallery's tables from other applications. + * + * We provide some reasonable default prefixes below. If you modify these + * after Gallery has created its various tables, it will stop working until + * you modify it back. + * + * The possible database types are: + * mysqlt MySQL (3.23.34a and newer) + * mysqli MySQL (4.1 and newer) with PHP mysqli extension + * mysql Older MySQL (no transactions) + * postgres7 PostgreSQL 7.x and newer + * postgres PostgreSQL 6.x (not tested) + * oci8po Oracle 9i and newer + * db2 IBM DB2 9 and newer + * ado_mssql Microsoft SQL Server (2005 and newer) + */ +$storeConfig['type'] = 'mysql'; +$storeConfig['hostname'] = 'localhost'; +$storeConfig['database'] = 'gallery2'; +$storeConfig['username'] = ''; +$storeConfig['password'] = ''; +$storeConfig['tablePrefix'] = 'g2_'; +$storeConfig['columnPrefix'] = 'g_'; +$storeConfig['usePersistentConnections'] = false; +$gallery->setConfig('storage.config', $storeConfig); + +/* + * Put Gallery into debug mode. Useful for tracking down problems with the + * application. Not a good idea to leave it this way, though. Possible debug + * choices are: 'buffered', 'logged', 'immediate' or false. Don't forget to + * use the quotes for any value but false! + * + * If you choose 'immediate', you'll see debugging information as soon as + * Gallery generates it. This can be useful at times, but it'll screw up some + * parts of the application flow. + * + * If you choose 'buffered', Gallery will display debug information in a table + * as part of the application. You won't necessarily get *all* the debug + * information but the application should work normally. + * + * If you choose 'logged', you must also specify: + * $gallery->setDebugLogFile('/path/to/writeable/file'); + * and all debug output will get printed into that file. You'll get all the + * debug output and the application will work normally. + * + * For best debugging output use this line: + * + * $gallery->setDebug('buffered'); + * + */ +$gallery->setDebug(false); + +/* + * Profiling mode. You can enable profiling for different parts of G2 to get an + * idea of what's fast and slow. Right now the only options are to enable SQL + * profiling: + * + * $gallery->setProfile(array('sql')); + * + */ +$gallery->setProfile(false); + +/* + * Maintenance mode. You can disable access to the site for anyone but + * site administrators by setting this flag. Set value below to: + * true (without quotes) - to use a basic notification page; themed + * view with admin login link when codebase is up to date, but a + * plain unstyled page when codebase has been updated but upgrader + * has not yet been run. + * url (with quotes) - provide a url where requests are redirected in + * either case described above. Example: '/maintenance.html' + * false (without quotes) - maintenance mode off + */ +$gallery->setConfig('mode.maintenance', false); + +/* + * Embedded mode. You can disable direct access to main.php (standalone G2) + * by setting this flag. Set value below to: + * true (without quotes) - block direct requests + * url (with quotes) - redirect requests to this url + * false (without quotes) - allow direct requests + */ +$gallery->setConfig('mode.embed.only', false); + +/* + * Allow a particular IP address to access the session (it still must know the + * session id) even though it doesn't match the address/user agent that created + * the session. Put the address of validator.w3.org ('133.27.228.132') here to allow + * validation of non-public Gallery pages from the links at the bottom of the page. + */ +$gallery->setConfig('allowSessionAccess', false); + +/* + * URL of Gallery codebase; required only for multisite install. + */ +$gallery->setConfig('galleryBaseUrl', ''); + +/* + * This setting can be used to override Gallery's auto-detection of the domain-name, + * protocol (http/https), URL path, and of the file & query string. + * Most users can leave this empty. If the server is misconfigured or for very special + * setups, this setting can be quite handy. + * Examples (the positions of the slashes ('/') are important): + * override the path: $gallery->setConfig('baseUri', '/another/path/'); + * override the host + path: $gallery->setConfig('baseUri', 'example.com/gallery2/'); + * override the protocol + host + path + file: + * $gallery->setConfig('baseUri', 'https://example.com:8080/gallery2/index.php'); + */ +$gallery->setConfig('baseUri', ''); +?> diff --git a/Source/gallery2/install/images/background.png b/Source/gallery2/install/images/background.png new file mode 100644 index 0000000..f1776c9 Binary files /dev/null and b/Source/gallery2/install/images/background.png differ diff --git a/Source/gallery2/install/images/btnBGbl.gif b/Source/gallery2/install/images/btnBGbl.gif new file mode 100644 index 0000000..ff158cc Binary files /dev/null and b/Source/gallery2/install/images/btnBGbl.gif differ diff --git a/Source/gallery2/install/images/btnBGgrn.gif b/Source/gallery2/install/images/btnBGgrn.gif new file mode 100644 index 0000000..c16b62c Binary files /dev/null and b/Source/gallery2/install/images/btnBGgrn.gif differ diff --git a/Source/gallery2/install/images/btnBGor.gif b/Source/gallery2/install/images/btnBGor.gif new file mode 100644 index 0000000..ef2b1ae Binary files /dev/null and b/Source/gallery2/install/images/btnBGor.gif differ diff --git a/Source/gallery2/install/images/btnBLbl.gif b/Source/gallery2/install/images/btnBLbl.gif new file mode 100644 index 0000000..311c400 Binary files /dev/null and b/Source/gallery2/install/images/btnBLbl.gif differ diff --git a/Source/gallery2/install/images/btnBLgrn.gif b/Source/gallery2/install/images/btnBLgrn.gif new file mode 100644 index 0000000..cd70f9d Binary files /dev/null and b/Source/gallery2/install/images/btnBLgrn.gif differ diff --git a/Source/gallery2/install/images/btnBLor.gif b/Source/gallery2/install/images/btnBLor.gif new file mode 100644 index 0000000..1f6a6e8 Binary files /dev/null and b/Source/gallery2/install/images/btnBLor.gif differ diff --git a/Source/gallery2/install/images/btnBRbl.gif b/Source/gallery2/install/images/btnBRbl.gif new file mode 100644 index 0000000..4d5f3eb Binary files /dev/null and b/Source/gallery2/install/images/btnBRbl.gif differ diff --git a/Source/gallery2/install/images/btnBRgrn.gif b/Source/gallery2/install/images/btnBRgrn.gif new file mode 100644 index 0000000..0e8dee2 Binary files /dev/null and b/Source/gallery2/install/images/btnBRgrn.gif differ diff --git a/Source/gallery2/install/images/btnBRor.gif b/Source/gallery2/install/images/btnBRor.gif new file mode 100644 index 0000000..ed85ca3 Binary files /dev/null and b/Source/gallery2/install/images/btnBRor.gif differ diff --git a/Source/gallery2/install/images/btnTLbl.gif b/Source/gallery2/install/images/btnTLbl.gif new file mode 100644 index 0000000..ff5e461 Binary files /dev/null and b/Source/gallery2/install/images/btnTLbl.gif differ diff --git a/Source/gallery2/install/images/btnTLgrn.gif b/Source/gallery2/install/images/btnTLgrn.gif new file mode 100644 index 0000000..ed3e81e Binary files /dev/null and b/Source/gallery2/install/images/btnTLgrn.gif differ diff --git a/Source/gallery2/install/images/btnTLor.gif b/Source/gallery2/install/images/btnTLor.gif new file mode 100644 index 0000000..8654228 Binary files /dev/null and b/Source/gallery2/install/images/btnTLor.gif differ diff --git a/Source/gallery2/install/images/btnTRbl.gif b/Source/gallery2/install/images/btnTRbl.gif new file mode 100644 index 0000000..c37bc94 Binary files /dev/null and b/Source/gallery2/install/images/btnTRbl.gif differ diff --git a/Source/gallery2/install/images/btnTRgrn.gif b/Source/gallery2/install/images/btnTRgrn.gif new file mode 100644 index 0000000..27fc7d0 Binary files /dev/null and b/Source/gallery2/install/images/btnTRgrn.gif differ diff --git a/Source/gallery2/install/images/btnTRor.gif b/Source/gallery2/install/images/btnTRor.gif new file mode 100644 index 0000000..52f16c9 Binary files /dev/null and b/Source/gallery2/install/images/btnTRor.gif differ diff --git a/Source/gallery2/install/images/g2Logo_install_head.png b/Source/gallery2/install/images/g2Logo_install_head.png new file mode 100644 index 0000000..744101d Binary files /dev/null and b/Source/gallery2/install/images/g2Logo_install_head.png differ diff --git a/Source/gallery2/install/images/ico_error.gif b/Source/gallery2/install/images/ico_error.gif new file mode 100644 index 0000000..be8b0f1 Binary files /dev/null and b/Source/gallery2/install/images/ico_error.gif differ diff --git a/Source/gallery2/install/images/ico_success.gif b/Source/gallery2/install/images/ico_success.gif new file mode 100644 index 0000000..5823b02 Binary files /dev/null and b/Source/gallery2/install/images/ico_success.gif differ diff --git a/Source/gallery2/install/images/ico_warning.gif b/Source/gallery2/install/images/ico_warning.gif new file mode 100644 index 0000000..5efecb9 Binary files /dev/null and b/Source/gallery2/install/images/ico_warning.gif differ diff --git a/Source/gallery2/install/images/pixbl.gif b/Source/gallery2/install/images/pixbl.gif new file mode 100644 index 0000000..265e348 Binary files /dev/null and b/Source/gallery2/install/images/pixbl.gif differ diff --git a/Source/gallery2/install/images/pixgrn.gif b/Source/gallery2/install/images/pixgrn.gif new file mode 100644 index 0000000..9e5a09a Binary files /dev/null and b/Source/gallery2/install/images/pixgrn.gif differ diff --git a/Source/gallery2/install/images/pixor.gif b/Source/gallery2/install/images/pixor.gif new file mode 100644 index 0000000..60fbc24 Binary files /dev/null and b/Source/gallery2/install/images/pixor.gif differ diff --git a/Source/gallery2/install/index.php b/Source/gallery2/install/index.php new file mode 100644 index 0000000..ceaf173 --- /dev/null +++ b/Source/gallery2/install/index.php @@ -0,0 +1,345 @@ +init($_SESSION['language'], true); + unset($gallery); + bindtextdomain('gallery2_install', dirname(__FILE__) . '/locale'); + textdomain('gallery2_install'); + if (function_exists('bind_textdomain_codeset')) { + bind_textdomain_codeset('gallery2_install', 'UTF-8'); + } + /* Set the appropriate charset in our HTTP header */ + if (!headers_sent()) { + header('Content-Type: text/html; charset=UTF-8'); + } +} + +/* + * If register_globals is on then a global $galleryStub may have already been created. + * Clear it here and initialize ourselves. + */ +unset($galleryStub); + +if (!isset($_GET['startOver']) && !empty($_SESSION['install_steps'])) { + $steps = unserialize($_SESSION['install_steps']); + if (isset($_SESSION['galleryStub'])) { + $galleryStub = unserialize($_SESSION['galleryStub']); + } +} + +/* If we don't have our steps in our session, initialize them now. */ +if (empty($steps) || !is_array($steps)) { + $steps = array(); + for ($i = 0; $i < count($stepOrder); $i++) { + $className = $stepOrder[$i] . 'Step'; + $step = new $className(); + if ($step->isRelevant()) { + $step->setIsLastStep(false); + $step->setStepNumber($i); + $step->setInError(false); + $step->setComplete(false); + $steps[] = $step; + } + } + + /* Don't do this in the loop, since not all steps are relevant */ + $steps[count($steps)-1]->setIsLastStep(true); +} + +$stepNumber = isset($_GET['step']) ? (int)$_GET['step'] : 0; + +/* Make sure all steps up to the current one are ok */ +for ($i = 0; $i < $stepNumber; $i++) { + if (!$steps[$i]->isComplete() && !$steps[$i]->isOptional()) { + $stepNumber = $i; + break; + } +} +$currentStep =& $steps[$stepNumber]; + +if (!empty($_GET['doOver'])) { + $currentStep->setComplete(false); +} + +/* If the current step is incomplete, the rest of the steps can't be complete either */ +if (!$currentStep->isComplete()) { + for ($i = $stepNumber+1; $i < count($steps); $i++) { + $steps[$i]->setComplete(false); + $steps[$i]->setInError(false); + } +} + +if ($currentStep->processRequest()) { + /* Load up template data from the current step */ + $templateData = array(); + + /* Round percentage to the nearest 5 */ + $templateData['errors'] = array(); + $currentStep->loadTemplateData($templateData); + + /* Render the output */ + $template = new StatusTemplate(); + $template->renderHeaderBodyAndFooter($templateData); +} + +function processAutoCompleteRequest() { + $path = !empty($_GET['path']) ? $_GET['path'] : ''; + /* Undo the damage caused by magic_quotes */ + if (get_magic_quotes_gpc()) { + $path = stripslashes($path); + } + + if (is_dir($path)) { + $match = ''; + } else { + $match = basename($path); + $matchLength = strlen($match); + $path = dirname($path); + if (!is_dir($path)) { + return; + } + } + + $dirList = array(); + if ($dir = opendir($path)) { + if ($path{strlen($path)-1} != DIRECTORY_SEPARATOR) { + $path .= DIRECTORY_SEPARATOR; + } + while (($file = readdir($dir)) !== false) { + if ($file == '.' || $file == '..' || ($match && strncmp($file, $match, $matchLength))) { + continue; + } + $file = $path . $file; + if (is_dir($file)) { + $dirList[] = $file; + } + } + closedir($dir); + sort($dirList); + } + + header("Content-Type: text/plain"); + print implode("\n", $dirList); +} + + +/** + * (Re-) Create the gallery filesystem data structure + * + * @param string $dataBase absolute filesystem path of the storage directory + * @return boolean success whether the structure was created successfully + */ +function populateDataDirectory($dataBase) { + /* Use non-restrictive umask to create directories with lax permissions */ + umask(0); + + if ($dataBase{strlen($dataBase)-1} != DIRECTORY_SEPARATOR) { + $dataBase .= DIRECTORY_SEPARATOR; + } + + /* Create the sub directories, if necessary */ + foreach (array('albums', + 'cache', + 'locks', + 'tmp', + 'plugins_data', + 'plugins_data/modules', + 'plugins_data/themes', + 'smarty', + 'smarty/templates_c') as $key) { + $dir = $dataBase . $key; + + if (file_exists($dir) && !is_dir($dir)) { + return false; + } + + if (!file_exists($dir)) { + if (!@mkdir($dir, 0755)) { + return false; + } + } + + if (!is_writeable($dir)) { + return false; + } + } + + return secureStorageFolder($dataBase); +} + +/** + * Secure the storage folder from attempts to access it directly via the web by adding a + * .htaccess with a "Deny from all" directive. This won't have any effect on webservers other + * than Apache 1.2+ though. + * Since we can't reliably tell whether the storage folder is web-accessible or not, + * we add this in all cases. It doesn't hurt. + * @param string $dataBase absolute filesystem path to the storage folder + * @return boolean true if the .htaccess file has been created successfully + */ +function secureStorageFolder($dataBase) { + $htaccessPath = $dataBase . '.htaccess'; + $fh = @fopen($htaccessPath, 'w'); + if ($fh) { + $htaccessContents = "DirectoryIndex .htaccess\n" . + "SetHandler Gallery_Security_Do_Not_Remove\n" . + "Options None\n" . + "\n" . + "RewriteEngine off\n" . + "\n" . + "\n" . + "Order allow,deny\n" . + "Deny from all\n" . + "\n"; + fwrite($fh, $htaccessContents); + fclose($fh); + } + + return file_exists($htaccessPath); +} + +/* Returns something like https://example.com */ +function getBaseUrl() { + /* Can't use GalleryUrlGenerator::makeUrl since it's an object method */ + if (!($hostName = GalleryUtilities::getServerVar('HTTP_X_FORWARDED_HOST'))) { + $hostName = GalleryUtilities::getServerVar('HTTP_HOST'); + } + $protocol = (GalleryUtilities::getServerVar('HTTPS') == 'on') ? 'https' : 'http'; + + return sprintf('%s://%s', $protocol, $hostName); +} + +/** Returns the URL to the G2 folder, e.g. http://example.com/gallery2/. */ +function getGalleryDirUrl() { + global $g2Base; + + require_once($g2Base . 'modules/core/classes/GalleryUrlGenerator.class'); + $urlPath = preg_replace('|^(.*/)install/index.php(?:\?.*)?$|s', '$1', + GalleryUrlGenerator::getCurrentRequestUri()); + + return getBaseUrl() . $urlPath; +} + +/** + * Mini url generator for the installer + */ +function generateUrl($uri, $print=true) { + if (!strncmp($uri, 'index.php', 9)) { + /* Cookieless browsing: If session.use_trans_sid is on then it will add the session id. */ + if (!GallerySetupUtilities::areCookiesSupported() && !ini_get('session.use_trans_sid')) { + /* + * Don't use SID since it's a constant and we change (regenerate) the session id + * in the request + */ + $sid = session_name() . '=' . session_id(); + $uri .= !strpos($uri, '?') ? '?' : '&'; + $uri .= $sid; + } + } + + if ($print) { + print $uri; + } + return $uri; +} + +/* + * We don't store the steps in the session in raw form because that + * will break in environments where session.auto_start is on since + * it will try to instantiate the classes before they've been defined + */ +$_SESSION['install_steps'] = serialize($steps); +if (isset($galleryStub)) { + $_SESSION['galleryStub'] = serialize($galleryStub); +} +?> diff --git a/Source/gallery2/install/install.css b/Source/gallery2/install/install.css new file mode 100644 index 0000000..4513c46 --- /dev/null +++ b/Source/gallery2/install/install.css @@ -0,0 +1,450 @@ +/* + * $Id: install.css 15513 2006-12-20 00:24:57Z mindless $ + * + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2007 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ + +body { + font-family: "Lucida Grande", Verdana, Arial, sans-serif; + font-size: 62.5%; + color: #333; + background-color: #eee; + text-align: center; + z-index: -1; +} + +h1, h2, h3, h4, h5, h6 { + font-family: "Gill Sans", Verdana, Arial, sans-serif; + margin: 0; + padding: 0; +} + +p { + font-size: 1.1em; + line-height: 1.4em; + margin: 1.0em 0; +} + +table { + border-spacing: 0; +} + +td { + padding: 0; +} + +tt { + font-family: "Courier New", Courier, Monaco, monospaced; +} + +a { + text-decoration: none; +} +a:link, a:visited { + font-weight: bold; + color: #ae0000; +} +a:hover { + color: #fd6704; +} + +/* layout */ + +#box { + width: 760px; + border: 1px solid #999; + margin: 0 auto; +} + +.boxTable { + width: 760px; + margin: 0 auto; + text-align: left; + background-color: #fff; + border-style: none; + border: 0px; +} + +td.header img { + margin: 0 0 5px 14px; + float: left; + clear: none; +} + +td#navbar { + font-family: Verdana, "Lucida Grande", Arial, sans-serif; + width: 160px; + vertical-align: top; + margin: auto; +} + +td#navbar div { + background-color: #d1e0ee; + border-right: 1px solid #ddd; + border-bottom: 1px solid #ddd; + padding: 10px 0 10px 10px; +} + +td#navbar td.heading { + font-size: 1.4em; + font-weight: bold; + font-family: "Gill Sans", Verdana, Arial, sans-serif; + border-style: none; + padding: 3px; +} + +td#navbar td, #helpbar td { + border-top: 1px solid #ecf2f8; + padding: 8px 2px; +} + +#navbar a, #navbar a:visited { + color: #000; +} + +#navbar a.current, #navbar a.current:visited { + color: #ae0000; +} + +#helpbar { + float: right; + clear: none; + margin: 0 20px; +} + +#helpbar tr.help td { + padding-top: 22px; +} + +#helpbar .helpBox { + font-weight: bold; + color: #eee; + background-color: #ae0000; + border: 1px solid #ae0000; + margin-right: 6px; + padding: 2px 3px; +} + +.main { + vertical-align: top; + padding: 14px 22px 8px 14px; + margin: 0; + width: 620px; +} + +.main h1 { font-size: 1.4em; } +.main h2 { font-size: 1.2em; margin: 0 0 0.8em 0; } +.main h3, #bottom h3 { font-size: 1.2em; } +.main td { font-size: small; } +.main table { border-spacing: 4px; } + +#bottom { + border-top: 1px solid #ddd; + padding: 8px 20px; +} + +#statusTable { + width: 100%; + height: 20px; + margin: 0; + padding: 0; + border-spacing: 0; + border-collapse: collapse; +} +.progressMade { background: #ffeda8 url('images/btnBGor.gif') bottom; border: thin solid #ddd; } +.progressToGo { background-color: #eee; border-left: none; border: thin solid #ddd; } +#progressStatus { text-align: right; margin-bottom: 1.0em; } + +#footer { + width: 720px; + font-size: 0.9em; + text-align: left; + margin: 0 auto; + padding: 8px 24px; +} + +/* classes */ + +.bold { + font-weight: bold; + font-size: 1.4em; +} + +.error, .warning, .success, h1.success { + font-size: 1.2em; + font-weight: bold; +} +.error { color: red; } +.warning { color: #f63; } +.success { color: green; } + +div.error, div.warning, div.success { + color: #000; + margin: 0 0 5px 0; + padding: 5px 10px 5px 45px; + border: 1px solid #999; +} +div.error { background: #fcc url('images/ico_error.gif') 3px 50% no-repeat; } +div.warning { background: #ffc url('images/ico_warning.gif') 3px 50% no-repeat; } +div.success { background: #cfc url('images/ico_success.gif') 3px 50% no-repeat; } + +div.success h1, div.error h2, div.warning h2 { + position: relative; + padding: 0; +} + +.go { + font-weight: bold; + font-size: 1.2em; + margin: 8px 0 8px -4px; + padding: 4px; + float: left; + clear: none; +} + +.btn { + margin: 0 10px 0 0; + float: left; + clear: none; + text-align: center; +} +.btn a, .btn a:visited { + display: block; + margin: 0 9px; + padding: 6px 0; + color: #333; + text-decoration: none; + white-space: nowrap; + text-shadow: #999 0.2em 0.2em 0.2em; + } +.btn a:hover { color: #000; } + +/* Order: T B L R TL TR BR BL */ +.btn div { background-repeat: repeat-x; background-position: top; } +.btn div div { background-position: bottom; } +.btn div div div { background-repeat: repeat-y; background-position: left; } +.btn div div div div { background-position: right; } +.btn div div div div div { background-repeat: no-repeat; background-position: top left; } +.btn div div div div div div { background-position: top right; } +.btn div div div div div div div { background-position: bottom right; } +.btn div div div div div div div div { background-position: bottom left; } + +.btn-continue { background: #72a272 url('images/btnBGgrn.gif') repeat-x top; } +.btn-continue div { background-image: url('images/pixgrn.gif'); } +.btn-continue div div div div div { background-image: url('images/btnTLgrn.gif'); } +.btn-continue div div div div div div { background-image: url('images/btnTRgrn.gif'); } +.btn-continue div div div div div div div { background-image: url('images/btnBRgrn.gif'); } +.btn-continue div div div div div div div div { background-image: url('images/btnBLgrn.gif'); } + +.btn-redo { background: #72a2f2 url('images/btnBGbl.gif') repeat-x top; } +.btn-redo div { background-image: url('images/pixbl.gif'); } +.btn-redo div div div div div { background-image: url('images/btnTLbl.gif'); } +.btn-redo div div div div div div { background-image: url('images/btnTRbl.gif'); } +.btn-redo div div div div div div div { background-image: url('images/btnBRbl.gif'); } +.btn-redo div div div div div div div div { background-image: url('images/btnBLbl.gif'); } + +.btn-warn { background: #fc6 url('images/btnBGor.gif') repeat-x top; } +.btn-warn div { background-image: url('images/pixor.gif'); } +.btn-warn div div div div div { background-image: url('images/btnTLor.gif'); } +.btn-warn div div div div div div { background-image: url('images/btnTRor.gif'); } +.btn-warn div div div div div div div { background-image: url('images/btnBRor.gif'); } +.btn-warn div div div div div div div div { background-image: url('images/btnBLor.gif'); } + +.small { + font-size: 69%; +} + +td.label { + font-weight: bold; + text-align: right; + padding-right: 8px; +} + +input, select { + color: #000; + background-color: #fff; +} + +.navnum { + color: #555; + font-weight: 800; + text-align: center; + vertical-align: top; + padding-right: 6px !important; +} + +.navtext { + padding-right: 4px !important; + color: #999; +} + +.stack_trace { + background-color: #eee; + border: 1px solid #999; + margin: 15px 15px 0 15px; + padding: 5px; +} + +.debug { + background-color: #eee; + border: 1px solid #999; + margin: 15px 15px 0 15px; + padding: 5px; +} + +.debug pre { + font-size: 1.1em; + line-height: 1.4em; + margin: 1.0em 0; +} + +.example { + background-color: #eee; + border: 1px solid #999; + margin: 15px 0; + padding: 5px; +} + +.example pre { + font-size: 1.4em; + line-height: 1.4em; + margin: 0.5em 0; +} + +.multisite { + padding: 0.5em 0.5em 0.5em 2.2em; + text-indent: -2.2em; + border: 1px solid #ccc; + margin-bottom: 10px; +} + +.multisite + .multisite { margin-bottom: 0; } +.multisite pre, .multisite .error { + text-indent: 0; +} + +.modules td { + font-size: 1.1em !important; + line-height: 1.3em; + padding: 3px 2px 1px 3px; +} + +.disabled { + color: #999; + font-style: italic; +} + +.systemChecks table { + width: 100%; +} + +.systemChecks td { + line-height: 1.2em; +} + +.systemChecks td.notice, .systemChecks div.warning { + margin-left: 10px; + border: 1px solid #999; + padding: 5px; + line-height: 1.3em; + padding: 5px 5px 5px 45px; + height: 50px; + background: #ffc url('images/ico_warning.gif') 5px 5px no-repeat; +} + +.showHideToggle { + padding-left: 0.3em; + padding-right: 0.3em; + border: 1px solid #a6caf0; + background-color: #eee; +} + +.manifestBlock { + width: 520px; + color: #000; + background-color: #eee; + padding: 4px; + margin: 4px 8px 0px 8px; + border: 1px solid #999; +} + +/*** Autocomplete ***/ +.autoCompleteShadow { + position: absolute; + margin: 0.3em; + z-index: 5; +} + +.autoCompleteContainer { + position: relative; + right: 4px; + overflow: hidden; + border: 1px solid #404040; + border-top: 0px; + border-bottom: 1px dotted rgb(92, 256, 92); + margin-top: -1px; +} + +.autoCompleteContainer .yui-ac-content ul { + position: relative; + padding: 0; + margin: 0px; + list-style: none; +} + +.autoCompleteContainer .yui-ac-content li { + padding: 2px 4px; + cursor: default; + white-space: nowrap; + display: list-item; +} + +.autoCompleteContainer li.yui-ac-highlight { + background-color: #eee; +} + +/* undo the text-indent set for .multisite */ +.multisite .autoCompleteContainer li { + text-indent: 0.0em; +} + +label.radio { + position: relative; + bottom: 2px; + padding: 2px; + font-weight: bold; +} + +ol { + font-size: 1.1em; + line-height: 1.4em; +} + +#MainPageStatus_statusBlock table { + border: none; + border-collapse: collapse; + border-spacing: 0px; + padding: 0px; + margin: 0px; +} +#MainPageStatus_progressMade { + width: 0%; +} +#MainPageStatus_progressToGo { + width: 100%; +} diff --git a/Source/gallery2/install/locale/af/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/af/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..bf3c14a Binary files /dev/null and b/Source/gallery2/install/locale/af/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/ar/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/ar/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..9cb0e6c Binary files /dev/null and b/Source/gallery2/install/locale/ar/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/bg/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/bg/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..2979b8d Binary files /dev/null and b/Source/gallery2/install/locale/bg/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/ca/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/ca/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..97d46ee Binary files /dev/null and b/Source/gallery2/install/locale/ca/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/cs/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/cs/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..b4aa3b5 Binary files /dev/null and b/Source/gallery2/install/locale/cs/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/da/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/da/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..c2acd77 Binary files /dev/null and b/Source/gallery2/install/locale/da/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/de/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/de/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..a0f4e32 Binary files /dev/null and b/Source/gallery2/install/locale/de/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/en_GB/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/en_GB/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..ba02a70 Binary files /dev/null and b/Source/gallery2/install/locale/en_GB/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/es/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/es/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..adf5c65 Binary files /dev/null and b/Source/gallery2/install/locale/es/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/eu/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/eu/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..7506939 Binary files /dev/null and b/Source/gallery2/install/locale/eu/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/fi/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/fi/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..e1eb2f0 Binary files /dev/null and b/Source/gallery2/install/locale/fi/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/fr/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/fr/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..8bff4f3 Binary files /dev/null and b/Source/gallery2/install/locale/fr/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/hu/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/hu/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..293e7a4 Binary files /dev/null and b/Source/gallery2/install/locale/hu/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/it/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/it/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..c38ca36 Binary files /dev/null and b/Source/gallery2/install/locale/it/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/ja/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/ja/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..28dfa01 Binary files /dev/null and b/Source/gallery2/install/locale/ja/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/ko/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/ko/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..4938a42 Binary files /dev/null and b/Source/gallery2/install/locale/ko/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/lt/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/lt/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..7c2db0d Binary files /dev/null and b/Source/gallery2/install/locale/lt/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/lv/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/lv/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..1a23592 Binary files /dev/null and b/Source/gallery2/install/locale/lv/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/nl/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/nl/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..28319d8 Binary files /dev/null and b/Source/gallery2/install/locale/nl/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/no/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/no/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..7266d2a Binary files /dev/null and b/Source/gallery2/install/locale/no/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/pl/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/pl/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..56e0457 Binary files /dev/null and b/Source/gallery2/install/locale/pl/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/ro/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/ro/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..6be9663 Binary files /dev/null and b/Source/gallery2/install/locale/ro/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/ru/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/ru/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..cfe9e0a Binary files /dev/null and b/Source/gallery2/install/locale/ru/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/sk/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/sk/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..cab0658 Binary files /dev/null and b/Source/gallery2/install/locale/sk/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/sr/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/sr/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..a9a048b Binary files /dev/null and b/Source/gallery2/install/locale/sr/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/sv/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/sv/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..d564252 Binary files /dev/null and b/Source/gallery2/install/locale/sv/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/tr/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/tr/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..8d9100a Binary files /dev/null and b/Source/gallery2/install/locale/tr/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/uk/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/uk/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..5b92455 Binary files /dev/null and b/Source/gallery2/install/locale/uk/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/vi/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/vi/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..74e4ed9 Binary files /dev/null and b/Source/gallery2/install/locale/vi/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/zh_CN/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/zh_CN/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..2790708 Binary files /dev/null and b/Source/gallery2/install/locale/zh_CN/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/locale/zh_TW/LC_MESSAGES/gallery2_install.mo b/Source/gallery2/install/locale/zh_TW/LC_MESSAGES/gallery2_install.mo new file mode 100644 index 0000000..2592669 Binary files /dev/null and b/Source/gallery2/install/locale/zh_TW/LC_MESSAGES/gallery2_install.mo differ diff --git a/Source/gallery2/install/po/GNUmakefile b/Source/gallery2/install/po/GNUmakefile new file mode 100644 index 0000000..532d386 --- /dev/null +++ b/Source/gallery2/install/po/GNUmakefile @@ -0,0 +1,6 @@ +GALLERYDIR ?= ../.. +TOOLDIR ?= $(GALLERYDIR)/lib/tools +APPLICATION = gallery2_install + +include $(TOOLDIR)/po/GNUmakefile.inc + diff --git a/Source/gallery2/install/po/af.po b/Source/gallery2/install/po/af.po new file mode 100644 index 0000000..61ccb69 --- /dev/null +++ b/Source/gallery2/install/po/af.po @@ -0,0 +1,1461 @@ +# $Id: af.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators: +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-06-08 17:49+0200\n" +"PO-Revision-Date: 2006-03-16 09:53+0200\n" +"Last-Translator: Renier \n" +"Language-Team: Afrikaans \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Bookmarks: 203,-1,-1,-1,-1,-1,-1,-1,-1,-1\n" +"X-Poedit-Language: Afrikaans\n" +"X-Poedit-Country: SOUTH AFRICA\n" + +msgid "Unknown" +msgstr "Onbekend" + +msgid "Admin User Setup" +msgstr "Administrateur Opstelling" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery Administrateur" + +msgid "Authenticate" +msgstr "Staaf ID" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "Fout: kan login.txt niet opspoor. Plaas dit in u %s directory." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Fout: uw login.txt lêer kan nie gelees word nie. Gee Gallery leesregte " +"vir die lêer." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Fout: u login.txt sleutel kom nie ooreen nie. Laai 'n nuwe stawingskode " +"hieronder af en probeer weer." + +msgid "Create Config File" +msgstr "Skep Config Lêer" + +#, fuzzy, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Kan nie na config.php konfigurasie lêer in jou %s directory skryf nie. " +"Verander die regte. As u Unix gebruik kan u dit regstel deur chmod 666 config.php te " +"gebruik." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Die config.php lêer bestaan nie in u %s directory" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Die config.php lêer bestaan, maar is nie skryfbaar nie. As u bediener op Windows " +"loop, dan sou u die sharing op config.php moet afskakel en die regte per hand aanpas." + +msgid "Database Setup" +msgstr "Databasis Opstelling" + +msgid "You must have the MySQL PHP module installed" +msgstr "Die MySQL PHP module moet geïnstalleer wees" + +#, fuzzy +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Die MySQL PHP module moet geïnstalleer wees" + +#, fuzzy +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Die MySQL PHP module moet geïnstalleer wees" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Die PostgreSQL PHP module moet geïnstalleerd wees" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Die Oracle OCI8 PHP module moet geïnstalleer wees" + +#, fuzzy +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Die Oracle OCI8 PHP module moet geïnstalleer wees" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "U moet 'n voorvoegsel verskaf vir kolomme (ons beveel %s aan)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Gebruik alleenlik letters, syfers en onderstrepies in die kolomvoorvoegsel" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "U moet 'n tabel voorvoegsel verskaf (ons beveel %s aan)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Gebruik alleenlik letters, syfers en onderstrepies in die tabelvoorvoegsel" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Kan geen databaseverbinding van tipe %s bewerkstellig" + +msgid "Unable to connect to database with the information provided." +msgstr "" +"Kan geen verbinding met die databasis bewerkstellig met behulp van die inligting verskaf nie." + +msgid "The database you specified does not exist. Please create it." +msgstr "Die databasis wat u verskaf het bestaan nie. Skep dit asseblief." + +msgid "The database privileges test did not complete successfully." +msgstr "Die toets van regte op die databasis het misluk." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallery tabelle bestaan reeds in hierdie databasis! Daar is egter geen 'versions.'dat' " +"lêer in u G2 stoordirectory nie, wat ons beskou as 'n korrupte toestand van G2. Skep " +"'n version.dat lêer met die korrekte formaat as u dink G2 nog steeds sal werk of begin " +"met 'n skoon installasie wat al die data in die databasis en stoordirectory sal uitvee." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Die G2 stoordirectory bevat 'n versions.dat lêer van 'n ouer installasie, maar die " +"databasis tabelle bestaan nie. Kies 'n skoon installasie om alle data in die Gallery " +"stoordirectory uit te vee en gaan dan verder na die volgende stap." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Die Gallery tabelle bestaan reeds in die databasis en daar is 'n versions.dat lêer in " +"die Gallery stoordirectory. Die weergawe van die geïnstalleerde Gallery databasis tabelle " +"kom egter nie ooreen met die weergawe van die geïnstalleerde data in die Gallery " +"stoordirectory nie. Kies 'n skoon installasie om alle data in die databasis en " +"stoordirectory uit te vee en gaan dan verder na die volgende stap." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Die Gallery tabelle bestaan reeds in die databasis en die Gallery stoordirectory lyk asof " +"dit in die haak is. Kies of om die bestaande databasistabelle en stoordirectory te " +"hergebruik of kies 'n skoon installasie om al die bestaande data in die databasis en " +"stoordirectory uit te vee." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Kan die vereiste API om die stoordirectory uit te vee nie uitvoer nie. Vee die Gallery " +"stoordirectory met die hand uit." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Kan die vereiste API om die Gallery databasis tabelle te verwyder nie uitvoer nie. Verwyder " +"die Gallery databasis handmatig." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Kan die G2 API nie laai nie. Verwyder die Gallery databasistabelle en die stoordirectory " +"handmatig." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a of nuwer)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (alle weergawes)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x of nuwer" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i of nuwer)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x of nuwer)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 of nuwer" + +msgid "Unknown DB type or no known tables information." +msgstr "Onbekende DB tipe of geen bekende tabelinligting." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Kan geen ongebruikte tabelvoorvoegsel soortgelyk aan \"%s\" vind nie." + +#, fuzzy, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Kan SQL toetslêer \"%s\" nie oopmaak nie." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Kan die DB toetsreeks nie skep nie. Gaan die foutboodskap en README.html na vir vermiste " +"regte en maak die databasis skoon." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Toets het misluk om 'n DB toetsreeks te verwyder. Gaan die foutboodskap en README.html na " +"vir vermiste regte en maak die databasis skoon." + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Gaan die foutboodskap en README.html na vir vermiste regte en maak die databasis skoon." + +#, fuzzy +msgid "Finish Installation" +msgstr "Multiwerf installasie" + +msgid "Install Gallery Core" +msgstr "Installeer Gallery Core" + +#, fuzzy +msgid "Installing the core module" +msgstr "Installeer Ander Modules" + +msgid "Unable to initialize our Gallery data" +msgstr "Kan u Gallery data nie inisiëer inwy nie." + +msgid "Unable to communicate with the database" +msgstr "Kan nie met die databasis kommunikeer nie" + +msgid "Unable to load the core module" +msgstr "Kan die core module nie laai nie" + +msgid "Unable to install the core module" +msgstr "Kan die core module nie installeer nie" + +msgid "Unable to activate the core module" +msgstr "Kan die core module nie aktiveer nie" + +msgid "Unable to commit database transaction" +msgstr "Kan die databasistransaksie nie uitvoer nie" + +msgid "Core module is only partially installed." +msgstr "Core module is slegs gedeeltelik geïnstalleer." + +#, fuzzy +msgid "Install Plugins" +msgstr "Installasiestappe" + +#, fuzzy +msgid "Unable to initialize our Gallery session" +msgstr "Kan u Gallery data nie inisiëer inwy nie." + +#, c-format +msgid "Unable to load the %s module" +msgstr "Kan die %s module nie laai nie" + +#, fuzzy +msgid "Installing modules" +msgstr "Installeer Meer Modules" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Kan die %s module nie installeer nie" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Kan die %s module nie aktiveer nie" + +msgid "Unable to get the module list" +msgstr "Kan die modulelys nie vind nie" + +msgid "Other" +msgstr "Ander" + +msgid "Installation Type" +msgstr "Installasie Tipe" + +msgid "Check Security" +msgstr "Gaan Beveiliging na" + +msgid "Storage Setup" +msgstr "Stoorspasie opstelling" + +msgid "System Checks" +msgstr "Stelselkontrole" + +msgid "Performing system checks" +msgstr "" + +#, fuzzy +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP weergawe >= 4.1.0 of >= 5.0.4" + +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Fout: Gallery 2 vereis PHP weergawe 4.1.0 of nuwer of 5.0.4 of nuwer. U het PHP weergawe %s " +"geïnstalleer. Neem dit op met die administrateur van u werfbediener om 'n opgradering op die " +"%sPHP webwerf%s beskikbaar aan te vra." + +msgid "PHP Version" +msgstr "PHP Weergawe" + +msgid "FILE directive supported" +msgstr "FILE bevel word ondersteun" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Fout: u PHP __FILE__ bevel funksioneer nie. Vra ondersteuning by die administrateur van u " +"werfbediener aan of in die Gallery forums." + +msgid "FILE Directive" +msgstr "FILE Bevel" + +msgid "Safe mode disabled" +msgstr "Safe mode afgeskakel" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Fout: U weergawe van PHP is ingestel met safe mode aan. U moet safe mode afskakel alvorens " +"Gallery sal werk." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Fout: U weergawe van PHP is ingestel met safe mode aan. U moet safe mode afskakel alvorens " +"Gallery sal werk." + +msgid "exec() allowed" +msgstr "exec() toegestaan" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Waarskuwing: Die exec() funksie is deur die disabled_functions parameter in u php.ini " +"afgeskakel. U sal nie in staat wees om modules te gebruik wat van eksterne programme " +"gebruik maak nie (bv. ImageMagick, NetPBM of Ffmpeg). Dit kan alleenlik bedienerwyd ingestel " +"word dus sal u dit in die globale php.ini moet verstel." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() toegestaan" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Waarskuwing: Die set_time_limit() funksie is deur die disabled_functions parameter in " +"u php.ini afgeskakel. Gallery kan sonder dit funksioneer maar sal egter onbetroubaar wees. " +"Elke aksie wat langer as %d sekondes duur sal misluk (en in sommige gevalle slegs leë " +"bladsye oplewer) wat moontlik kan lei tot datakorrupsie." + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Waarskuwing: Die set_time_limit() funksie is deur die disabled_functions parameter in " +"u php.ini afgeskakel. Gallery kan sonder dit funksioneer maar sal egter onbetroubaar wees. " +"Elke aksie wat langer as %d sekondes duur sal misluk (en in sommige gevalle slegs leë " +"bladsye oplewer) wat moontlik kan lei tot datakorrupsie." + +msgid "Memory limit" +msgstr "Geheuelimiet" + +msgid "no limit" +msgstr "geen limiet" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Waarskuwing: U PHP is ingestel om die geheue te beperk tot %sb (memory_limit " +"parameter in php.ini). U moet dit verhoog tot minstens %sMB om Gallery korrek te " +"laat funksioneer." + +msgid "File uploads allowed" +msgstr "Oplaai van lêers toegelaat" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Waarskuwing: U PHP is ingestel om die oplaai van lêers nie toe te laat nie " +"(file_uploads parameter in php.ini). U moet dit aanskakel as u lêers na u " +"Gallery wil oplaai met behulp van 'n blaaier." + +msgid "Maximum upload size" +msgstr "Maksimum oplaai grootte" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Waarskuwing: U PHP is ingestel om die grootte van die lêers wat gelaai word te beperk " +"tot %sb (upload_max_filesize parameter in php.ini). U sal dit moet verhoog om die " +"oplaai van groter lêers toe te laat." + +msgid "Maximum POST size" +msgstr "Maksimum POST grootte" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Waarskuwing: U PHP is ingestel om die postdata te beperk tot 'n maksimum van %sb " +"(max_post_size parameter in php.ini). U sal hierdie limiet moet verhoog om die " +"oplaai van groter lêers moontlik te maak." + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "Zend versoenbare modus" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Waarskuwing: U PHP is ingestel met die Zend ze1_compatibility_mode wat kan veroorsaak dat " +"PHP kan duik. Kliek hier om u PHP te toets. As u \"SUCCES\" sien dan is " +"u PHP in die haak. As u 'n fout of geen reaksie krymoet u die ze1_compatability_mode " +"afskakel alvorens u verder gaan." + +#, fuzzy +msgid "putenv() allowed" +msgstr "exec() toegestaan" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Waarskuwing: Die set_time_limit() funksie is deur die disabled_functions parameter in " +"u php.ini afgeskakel. Gallery kan sonder dit funksioneer maar sal egter onbetroubaar wees. " +"Elke aksie wat langer as %d sekondes duur sal misluk (en in sommige gevalle slegs leë " +"bladsye oplewer) wat moontlik kan lei tot datakorrupsie." + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "Gallery lêerintegriteit" + +msgid "Test skipped due to other errors." +msgstr "Toets oorgeslaan vanweë ander foute." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest word vermis of is ontoeganklik." + +msgid "Welcome" +msgstr "Welkom" + +#, fuzzy +msgid "Please correct the following errors" +msgstr "Ons het die volgende databasis verwante foute ontvang:" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Elke Gallery het ten minste één admingebruiker wat volledige toegang het om alles te vertoon/" +"verander. Kies 'n gebruikersnaam en wagwoord vir u admin rekening. U kan later ekstra " +"gebruikers byvoeg." + +msgid "Admin username" +msgstr "Admin Gerbuikersnaam" + +msgid "Please enter a valid user name" +msgstr "Verskaf asseblief 'n geldige gebruikersnaam" + +msgid "Please enter a password" +msgstr "Verskaf 'n wagwoord" + +msgid "Password" +msgstr "Wagwoord" + +msgid "Setup password" +msgstr "Instel van Wagwoord" + +msgid "(type again)" +msgstr "(tik weereens)" + +msgid "Admin email address" +msgstr "Admin se epos-adres" + +msgid "Please enter a valid email address" +msgstr "Geef een geldig E-mailadres op" + +msgid "Admin full name (optional)" +msgstr "Admin Volle naam (opsioneel)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Vermiste wagwoord! Verskaf dieselfde wagwoord twee maal" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Die verskafte wagwoorde kom nie ooreen! Probeer asseblief weer." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Wanneer u bestaande databasistabelle hergebruik, is dit nie 'n vars installasie nie. Dit sal " +"slegs u setupwagwoord verander, maar u sal nie die wagwoord van die administrateur verander " +"nie. Om die wagwoord van die administrateur te verander, kan u die vergete wagwoord " +"meganisme van Gallery gebruik." + +msgid "Create" +msgstr "Skep" + +msgid "Save" +msgstr "Stoor" + +msgid "Admin user info entered successfully." +msgstr "Admin gebruikersinligting suksesvol ingevoer." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Om met die installasie voort te gaan moet ons eers bevestig dat u wel is wie u beweer om te " +"wees. Die beste manier om dit te verseker is om u te vra om 'n klein verandering in die " +"Gallery directory te maak, waarmee u dan bewys dat u oor die nodige regte beskik. Daarom " +"gaan ons u vra om 'n nuwe tekslêer genaamd login.txt te skep in die " +"%s directory op u werfbediener (dit is dieselfde directory waar main.php is). Die " +"lêer moet die volgende lukraak gegenereerde karakters bevat:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Vir u gemak het ons 'n nuwe %skorrekte weergawe van login.txt%s vir u voorberei. Laai dit af " +"en kopiëer dit na u %s directory en dan is u klaar." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Wanneer u die lêer opgelaai het, kliek dan hieronder om voort te gaan." + +msgid "Authenticate Me" +msgstr "Bevestig My" + +msgid "Authentication successful!" +msgstr "Bevestiging suksesvol!" + +msgid "Erase data for a clean install" +msgstr "Verwyder data vir 'n skoon installasie" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Is u seker dat u alle data in u Galery stoordirectory wil uitvee asook al die data in u " +"databasis?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Daar het 'n fout voorgekom tydens die uitvee van die databasis en stoordirectory. Hier is " +"die fout:" + +msgid "Cancel" +msgstr "Kanselleer" + +msgid "Erase all data" +msgstr "Verwyder alle data" + +msgid "Please fix this error and try again." +msgstr "Maak asseblief die fout reg en probeer weer." + +msgid "Try Again" +msgstr "Probeer Weer" + +msgid "Create a config file" +msgstr "Skep 'n konfigurasie lêer" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Nou moet ons al die inligting deur u verskaf in 'n lêer genaamd config.php in u " +"%s directory inskryf. Dit is 'n uiters belangrike lêer wat die nodige " +"inligting aan Gallery verskaf om te werk. Nadat ons dit geskep het kan u die lêer " +"deurlees en aanpassings maak as u sou wil." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (met shell toegang)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Skep config lêer" + +msgid "Config file created successfully." +msgstr "Config lêer suksesvol geskep." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Ons het all die inligting deur u verskaf na 'n lêer genaamd config.php in u " +"gallery2 directory geskryf. U kan die lêer deurlees en veranderinge maak as u sou " +"wil. Wees egter versigtig want as u 'n fout sou begaan sal Gallery nie behoorlik werk nie!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Kies 'n databasistipe en verskaf u databasisgegewens. Die installasie sal nie die databasis " +"vir u skep nie, daarom moet u dit self skep en die databasisnaam hier verskaf. As u Gallery " +"wil installeer in 'n databasis wat alreeds tabelle bevat, sal die tabel- en " +"kolomvoorvoegsels daarvoor sorg dat daar geen konflikte voorkom met data wat reeds bestaan " +"nie." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Hierdie is 'n multiwerf installasie. Onthou dat elke multiwerf sy eie databasistabelle " +"vereis. Kies óf 'n verskillende databasis óf 'n verskillende tabelvoorvoegsel " +"vir elke multiwerf!" + +msgid "Database type:" +msgstr "Databasistipe:" + +msgid "DB Hostname:" +msgstr "DB Bedienernaam:" + +msgid "DB Username:" +msgstr "DB Gebruikersnaam:" + +msgid "DB Password:" +msgstr "DB Wagwoord:" + +msgid "DB Name:" +msgstr "DB Naam:" + +msgid "Table Prefix:" +msgstr "Tabelvoorvoegsel:" + +msgid "Column Prefix:" +msgstr "Kolomvoorvoegsel:" + +msgid "We received the following database related errors:" +msgstr "Ons het die volgende databasis verwante foute ontvang:" + +msgid "Erase Data For A Clean Install" +msgstr "Verwyder Data vir 'n Skoon Installasie" + +msgid "Reuse Existing Tables" +msgstr "Hergebruik Bestaande Tabelle" + +msgid "Database set up successfully." +msgstr "Databasis is suksesvol opgestel." + +msgid "Finished!" +msgstr "Klaar!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Geluk! U Gallery 2 Installasie is voltooi! Sien jy... dit was nie so moeilik gewees nie? " +"Nou is it tyd om fotos op te laai!" + +msgid "Go to my Gallery!" +msgstr "Gaan na my Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"U kan nou na u nuwe Gallery gaan. Tik die URL skakel in u blaaier na die %smain.php%s in u %" +"s directory in." + +msgid "Installer Help" +msgstr "Installeerderhulp" + +msgid "Start Over" +msgstr "Begin Oor" + +msgid "Error installing Gallery Core" +msgstr "Fout tydens installasie van Gallery Core" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" +"Iets het foutgegaan tydens die poging om die core module te installeer. Wat staan ons nou " +"te doen?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Gaan na die Stelselkontrolestap van die installeerder en sorg dat alle kontroles suksesvol " +"lees. 'n Probleem wat dikwels voorkom is dat die lêerintegriteitswaarskuwing geïgnoreer " +"word." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"As daar geen waarskuwings of mislukkings in die Stelselkontrolestap is nie, maak u " +"stoordirectory skoon en verwyder die databasistabelle en begin weer die installasieproses " +"(herhaal al die stappe)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Besoek die %sG2 FAQ%s en lees die %sKnown issues afdeling van die Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"As die probleem voortduur, kopieër asseblief die installasie log wat by %s geleë is en heg " +"dit aan (as install.log.zip) by 'n nuwe forum onderwerp in die %sG2 support forum%s of, " +"indien moontlik, voeg slegs 'n skakel na die install.log in die forum onderwerp sodat die " +"ondersteuningspersoneel dit kan analiseer indien nodig." + +msgid "Stack Trace:" +msgstr "Stack Trace" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery Core suksesvol geïnstalleer" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Ons het die kern van Gallery suksesvol geïnstalleerd. Alhoewel alles vanaf hierdie punt sal " +"werk, moet u voortgaan met die installeerder en 'n paar opsionele modules installeer sodat u " +"die regte funksies wat u begeer kan kry." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Die volgende modules kan outomaties vir u geïnstalleer en geaktiveer word. U moet minstens " +"één van die grafiese hulpmiddels installeer, anders kan Gallery geen duimnaels vanuit beelde " +"skep nie. Op die meeste stelsels sal die outomatiese installasie goed werk. In sekere " +"gevalle mag dit egter misluk. U kan altyd nuwe modules aktiveer of een van die gekose " +"modules hieronder deaktiveer vanaf die werfadmin blad. Elke besluit wat u hier maak is dus " +"nie onomkeerbaar nie." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"By sommige modules kan die outomatiese installasie misluk. Dit is nie die einde van die " +"wêreld nie. Dit beteken gewoonlik dat hulle ekstra verstellings vereis wat u op die " +"adminwerfblad kan doen." + +msgid "Name" +msgstr "Naam" + +msgid "Version" +msgstr "Weergawe" + +msgid "Description" +msgstr "Beskrywing" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Nie versoenbaar met hierdie Gallery weergawe)" + +msgid "(un)check all" +msgstr "(de)selekteer alles" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Gaan voort na Stap %d Sonder om te Aktiveer»" + +msgid "Activate Selected Modules" +msgstr "Aktiveer Geselekteerde Modules" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"Die %s module is geïnstalleer, maar benodig verstellings om geaktiveer te kan word" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Teken in as administrateur na voltooiïng van hierdie installasie en gaan na die Werfadmin " +"blad. Gaan na die Modules vertoning en verstel die gelysde modules." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Die %s modules is suksesvol geaktiveer" + +msgid "Activate More Modules" +msgstr "Aktiveer Meer Modules" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Gaan verder na Stap %d»" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "Welkom by die Gallery Installeerder" + +#, c-format +msgid "Install %d%% complete" +msgstr "Installasie %d%% voltooi" + +msgid "Redo this step" +msgstr "Herhaal hierdie stap" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: u fotos op u webwerf" + +#, c-format +msgid "Missing files (%d)" +msgstr "Vermiste lêers (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Let op: U loop Gallery vanaf CVS, daarom kan onlangs verwyderde lêers hier verskyn. U kan " +"hulle met veiligheid ignoreer." + +#, c-format +msgid "Modified files (%d)" +msgstr "Gewysigde lêers (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Let op: U loop Gallery vanaf CVS, daarom kan u sommige gewysigde lêers hier verwag. U kan " +"hierdie waarskynlik met veiligheid ignoreer, maar om veilig te wees moet u 'cvs update -Pd' " +"uitvoer voordat u voortgaan." + +#, c-format +msgid "Old files (%d)" +msgstr "Ou lêers (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Hierdie lêers maak nie langer deel uit van Gallery nie. Hulle sal waarskynlik geen probleme " +"veroorsaak nie maar dit is 'n goeie idee om hulle te verwyder om jou installasie skoon te " +"hou." + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "Selekteer die tipe installasie" + +msgid "Standard installation" +msgstr "Standaardinstallasie" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Dit is die standaard installasie tipe. Kies die installasie tipe as u 'n nuwe Gallery wil " +"installeer in die %s directory wat toeganklik sal wees met die URL %s." + +msgid "Multisite installation" +msgstr "Multiwerf installasie" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery ondersteun veeltallige onafhanklike werwe vanuit één enkele installasie van die " +"kode. Kies die installasie tipe as u 'n nuwe Gallery wil installeer op dieselfde " +"werfbediener, maar in 'n verskillende pad, subdomein of URL domein." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Die multiwerwe deel geen albums, fotos, gebruikers of enigiets anders nie. Hulle benodig " +"elkeen hul eie databasis en stoordirectory. Vir meer inligting en verduidelikings oor " +"Multiwerf installasies, besoek die %s blad." + +msgid "You must enter a directory" +msgstr "U moet 'n directory verskaf" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Die verskafde directory is die programkode directory. As u Gallery in die programkode " +"directory wil installeer, kies die standaard installasie tipe. As u 'n multiwerf wil " +"installeer kies 'n ander directory." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Die verskafde directory bestaan nie" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Die verskafde directory is nie toeganklik nie. Wysig die regte sodat die werfbediener " +"hierdie directory kan lees." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Kan die multiwerf lêers nie skep nie. Maak seker dat die lêers hieronder skryfbaar is." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Alle multiwerwe word geïnstalleer vanuit hierdie sentrale programkode (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Sleutel die directory vir die nuwe multiwerf hieronder in. Die pad moet anders wees as die " +"van die installasiepad:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Die volgende directory moet skryfbaar wees deur u werfbediener/php gebruiker of die volgende " +"skryfbare lêers bevat:" + +msgid "Select Directory" +msgstr "Kies Directory" + +msgid "Multisite directory setup successfully." +msgstr "Multiwerf directory suksesvol opgestel." + +msgid "Standard installation selected." +msgstr "Standaardinstallasie geselekteer." + +msgid "Install Steps" +msgstr "Installasiestappe" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Ons wil verseker dat u Gallery veilig is. Die config.php lêer wat deur die installeerder " +"gewysig is se regte is so opgestel dat ander mense daarna kan skryf. Dit word vereis omdat " +"die installeerder as 'n \"ander persoon\" kwalifiseer sover dit die Unix regte aangaan. " +"Voor u dus klaarmaak moet u die regte op hierdie lêer so wysig dat ander gebruikers nie " +"daarna kan skryf nie. Op die oomblik het u config.php 'n modus van %s. Ons raai u aan om " +"die volgende te doen:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Ons wil verseker dat u Gallery veilig is. Die directory waar u config.php lêer geleë is wat " +"deur die installeerder gewysig isWe willen er zeker van zijn dat uw Gallery veilig is. De " +"directory die uw bestand config.php bevat dat door deze installatie se regte is so opgestel " +"om ander mense toe te laat om lêers te wysig of uit te vee. Daarom moet u voordat u hier " +"klaarmaak die regte op die directory wysig sodat ander gebruikers nie daarheen kan skryf " +"nie. Ons stel voor u doen die volgende:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"As u steeds wil voortgaan dan kan u. Ons beveel egter aan dat u die ekstra tydjie maak om " +"seker te maak dat u installasie veilig is." + +msgid "We've verified that your config.php is secure." +msgstr "Ons tet vasgestel dat u config.php veilig is." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "Kontroleer Weer" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Dit is die multiwerf installasie. Onthou dat elke multiwerf sy eie stoor directory vereis." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"As u 'n moderne browser gebruik sal ons probeer om elke verskafde pad outomaties in te vul. " +"As u dus probleme ondervind om die korrekte pad na u g2data directory te vind, " +"eksperimenteer met die paaie in die teksboks hieronder en sien watter voorstelle dit bied." + +msgid "The directory you entered is read only" +msgstr "Die verskafde directory het lees-alleen regte" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Daar was 'n fout met die skep van die directory struktuur binne-in die stoor directory." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Stoor directory is suksesvol opgestel." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "Directory pad:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Let op: hierdie is slegs voorbeelde! U mag vind dat dit nie heeltemal reg op u stelsel werk " +"nie." + +msgid "Unix (with ftp access)" +msgstr "Unix (met ftp toegang)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Let op dat ftp-bedieners en -kliënte verskil, daarom mag die aanwysings nie vir u werk nie. " +"Raadpleeg die handleiding van u FTP-kliënt of u stelseladmin as u probleme hiermee ondervind." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"In sommige werfbedieneromgewings is die paaie wat u in die shell of deur FTP waarneem nie " +"dieselfde as wat PHP sien nie. Om die regte pad vas te stel na u data directory, kan u " +"probeer om 'n PHP skrip genaamd dir.php te skep wat die volgende kode bevat en dit " +"dan in u data directory te plaas." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"stel dan vas wat die URL na die dir.php lêer is en maak dit in u webblaaier oop (bv. %s). " +"Dis sal u vertel wat die presiese pad is wat u hier kan insleutel." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Let op: Dit vereis dat u data directory deur die web toeganklik is, wat ons nie " +"aanbeveel nie omdat dit ons beeld firewall omseil. Wanneer u op die manier vasgestel het " +"wat die pad is, beveel ons aan dat u die data directory buite die webtoeganklike pad plaas " +"en dan die pad dienooreenkomstig hier te kom verander." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Let op: Moenie vergeet om dir.php te verwyder as u klaar is nie!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "Stoor directory is suksesvol opgestel." + +msgid "Success" +msgstr "Suksesvol" + +msgid "Warning" +msgstr "Waarskuwing" + +msgid "Failed" +msgstr "Misluk" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"As u Apache gebruik, skep 'n lêer genaamd .htaccess in die hoofdirectory van Gallery met die " +"volgende inhoud:" + +msgid "Version Check" +msgstr "Weergawe Kontrole" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Hierdie is nie 'n vars installasie nie en die geïnstalleerde weergawe kom nie ooreen met die " +"nuwe weergawe nie." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Die geïnstalleerde weergawe kan nie opgegradeer word na die nuwe weergawe nie!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Die geïnstalleerde weergawe is ouer as die nuwe weergawe. U moet die opgradeerder hardloop " +"en nie die installeerder nie!" + +msgid "Currently installed" +msgstr "Tans geïnstalleer" + +msgid "New version" +msgstr "Nuwe weergawe" + +msgid "Go to the Upgrader!" +msgstr "Gaan na die Opgradeerder!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"U moet na die opgradeerder gaan. Sleutel die URL in u blaaier in vir %s/upgrade/index.php%s " +"in u %s directory." + +#, fuzzy, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Daar word %d stappe vereis om Gallery 2.0 op u werfbediener te installeer. Hierdie " +"installasie sal u deur die stappe begelei en hulp aanbied tydens die proses indien ekstra " +"stappe vereis word om u Gallery aan die gang te kry. Wanneer 'n stap voltooi is kan u op " +"enige oomblik teruggaan en veranderinge maak. Raadpleeg die %sInstallasiehulplêer%s voordat " +"u verder gaan." + +msgid "Select Language:" +msgstr "Kies Taal:" + +msgid "Go" +msgstr "Gaan" + +msgid "Begin Installation»" +msgstr "Begin Installasie»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL met Transaksies (v3.23.34a of nuwer)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Gallery Core suksesvol geïnstalleer" + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Geluk, ons het die Gallery raamwerk suksesvol geïnstalleer. Die beste funksies van " +#~ "Gallery kom van die addisionele modules wat u kan installeer en opstel. Die volgende " +#~ "stap sal u deur die proses begelei om modules te kies en te installeer sodat u Gallery na " +#~ "u behoeftes kan aanpas." + +#~ msgid "Install More Modules" +#~ msgstr "Installeer Meer Modules" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Voordat ons verder kan gaan moet u 'n lêer in u %s directory genaamd " +#~ "config.php skep. U moet seker maak dat die werfbediener daarna sal kan skryf. As " +#~ "u Unix gebruik kan u dit doen deur chmod 666 config.php uit te voer. Onder " +#~ "Windows behoort u nie enigiets spesiaals te hoef te doen nie. Wanneer u die lêer " +#~ "geskep het en die regte korrek opgestel het, kan u voortgaan. As daar 'n probleem is, " +#~ "sal ons u vertel wat om reg te stel." + +#~ msgid "Install Other Modules" +#~ msgstr "Installeer Ander Modules" + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (nie goed getoets nie)" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "SQL toetslêer \"%s\" nie gevind nie." + +#~ msgid "Finished" +#~ msgstr "Klaar" + +#~ msgid "Installation Status" +#~ msgstr "Installasie Status" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "Gallery needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browse directly " +#~ "via the web. This is necessary if you wish to have your images accessible only via " +#~ "Gallery [%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "Gallery moet data in 'n directory op u bediener stoor. Hierdie directory sal gebruik " +#~ "word om u beelde sowel as ander belangrike inligting te stoor. Om veiligheidsredes raai " +#~ "ons u aan om hierdie directory buite u webwerf te plaas sodat dit nie direk vanaf " +#~ "die web besigtig kan word nie. Dit is nodig as u wil hê dat u beelde slegs vanaf Gallery " +#~ "[%s] toeganklik sal wees. Let op dat die standaardpad hieronder verskaf in die " +#~ "webbedienerpad lê. Dit is omdat dit vir ons onmoontlik is om 'n betroubare raaiskoot kan " +#~ "maak oor 'n geskikte directory buite u werf. U moet dit verander na 'n veilige ligging, " +#~ "soos 'n pad onder u home directory indien moontlik. As u die werf deur FTP binnekom gaan " +#~ "u waarskynlik nie die opsie hê nie." + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get " +#~ "Gallery working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "U webbediener moet in staat wees om na die directory te skryf. Regtestelsels wissel van " +#~ "bediener tot bediener. U kan 'n baie los stel regte opstel op die directory om Gallery " +#~ "aan die gang te kry, maar as u bekommer is oor sekuriteit behoort u, u stelsel " +#~ "administrateur te raadpleeg oor die beste manier om die werf so veilig moontlik te maak. " +#~ "Om dit te maak werk kan u die volgende voorbeelde volg." + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "Dit staan ook bekend as 'n beeld firewall." + +#~ msgid "" +#~ "Something went wrong when we tried to install the core module. In the boxes below you " +#~ "can find some debug information. Report this in the %sGallery Forums%s and we'll help " +#~ "you diagnose the problem." +#~ msgstr "" +#~ "Er is iets misgegaan tijdens het installeren van de core module. In de vakken hieronder " +#~ "vind u wat debuginformatie. Rapporteer deze in de %sGallery Forums%s en dan kunnen wij u " +#~ "helpen om een diagnose te stellen." diff --git a/Source/gallery2/install/po/ar.po b/Source/gallery2/install/po/ar.po new file mode 100644 index 0000000..e1fee0f --- /dev/null +++ b/Source/gallery2/install/po/ar.po @@ -0,0 +1,1118 @@ +# $Id: ar.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-20 09:24-0800\n" +"PO-Revision-Date: 2005-08-14 13:34+0300\n" +"Last-Translator: Mohammad Saleh \n" +"Language-Team: Arabic \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +msgid "Unknown" +msgstr "غير معروف" + +msgid "Admin User Setup" +msgstr "" + +msgid "admin" +msgstr "" + +msgid "Gallery Administrator" +msgstr "" + +msgid "Authenticate" +msgstr "" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" + +msgid "Create Config File" +msgstr "" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" + +msgid "Database Setup" +msgstr "" + +msgid "You must have the MySQL PHP module installed" +msgstr "" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "" + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "" + +msgid "PostgreSQL v7.x and newer" +msgstr "" + +msgid "Oracle (9i and newer)" +msgstr "" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "" + +msgid "Install Gallery Core" +msgstr "" + +#, fuzzy +msgid "Installing the core module" +msgstr "موديول البينة الرئيسية للجاليري" + +msgid "Unable to initialize our Gallery data" +msgstr "" + +msgid "Unable to communicate with the database" +msgstr "" + +msgid "Unable to load the core module" +msgstr "" + +msgid "Unable to install the core module" +msgstr "" + +msgid "Unable to activate the core module" +msgstr "" + +msgid "Unable to commit database transaction" +msgstr "" + +msgid "Core module is only partially installed." +msgstr "" + +msgid "Install Plugins" +msgstr "" + +msgid "Unable to initialize our Gallery session" +msgstr "" + +#, c-format +msgid "Unable to load the %s module" +msgstr "" + +msgid "Installing modules" +msgstr "" + +#, c-format +msgid "Unable to install the %s module" +msgstr "" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "" + +msgid "Unable to get the module list" +msgstr "" + +msgid "Other" +msgstr "أخرى" + +msgid "Installation Type" +msgstr "" + +msgid "Check Security" +msgstr "" + +msgid "Storage Setup" +msgstr "" + +msgid "System Checks" +msgstr "" + +msgid "Performing system checks" +msgstr "" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" + +msgid "PHP Version" +msgstr "" + +msgid "FILE directive supported" +msgstr "" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" + +msgid "Safe Mode" +msgstr "" + +msgid "Regular expressions" +msgstr "" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "" + +msgid "no limit" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "" + +msgid "Please enter a valid user name" +msgstr "" + +msgid "Please enter a password" +msgstr "" + +msgid "Password" +msgstr "كلمة المرور" + +msgid "Setup password" +msgstr "" + +msgid "(type again)" +msgstr "" + +msgid "Admin email address" +msgstr "" + +msgid "Please enter a valid email address" +msgstr "" + +msgid "Admin full name (optional)" +msgstr "" + +msgid "Missing password! Please enter the same password twice" +msgstr "" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "إنشاء" + +msgid "Save" +msgstr "حفظ" + +msgid "Admin user info entered successfully." +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "" + +msgid "Authentication successful!" +msgstr "" + +msgid "Erase data for a clean install" +msgstr "" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "إلغاء" + +msgid "Erase all data" +msgstr "" + +msgid "Please fix this error and try again." +msgstr "" + +msgid "Try Again" +msgstr "" + +msgid "Create a config file" +msgstr "" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "" + +msgid "Config file created successfully." +msgstr "" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "" + +msgid "DB Hostname:" +msgstr "" + +msgid "DB Username:" +msgstr "" + +msgid "DB Password:" +msgstr "" + +msgid "DB Name:" +msgstr "" + +msgid "Table Prefix:" +msgstr "" + +msgid "Column Prefix:" +msgstr "" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "" + +msgid "Reuse Existing Tables" +msgstr "" + +msgid "Database set up successfully." +msgstr "" + +msgid "Finished!" +msgstr "" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "" + +msgid "Start Over" +msgstr "" + +msgid "Error installing Gallery Core" +msgstr "" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "الاسم" + +msgid "Version" +msgstr "نسخة" + +msgid "Description" +msgstr "الوصف" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "" + +msgid "Activate Selected Modules" +msgstr "" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "" + +msgid "Activate More Modules" +msgstr "" + +#, c-format +msgid "Continue to Step %d»" +msgstr "" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "" + +#, c-format +msgid "Install %d%% complete" +msgstr "" + +msgid "Redo this step" +msgstr "" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "" + +msgid "Standard installation" +msgstr "" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "" + +msgid "Install Steps" +msgstr "" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "" + +msgid "Success" +msgstr "نجاح" + +msgid "Warning" +msgstr "" + +msgid "Failed" +msgstr "فشل" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "" + +msgid "New version" +msgstr "" + +msgid "Go to the Upgrader!" +msgstr "" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "" + +msgid "Go" +msgstr "اذهب" + +msgid "Begin Installation»" +msgstr "" diff --git a/Source/gallery2/install/po/bg.po b/Source/gallery2/install/po/bg.po new file mode 100644 index 0000000..0c3bea1 --- /dev/null +++ b/Source/gallery2/install/po/bg.po @@ -0,0 +1,1364 @@ +# $Id: bg.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# +# Bisser Dobrev , 2003-2005 +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2005-07-22 01:26+0100\n" +"PO-Revision-Date: 2005-08-11 08:12-0500\n" +"Last-Translator: Bisser Dobrev \n" +"Language-Team: Bisser Dobrev \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Bulgarian\n" +"X-Poedit-Country: BULGARIA\n" + +msgid "Unknown" +msgstr "" + +msgid "Admin User Setup" +msgstr "Конфигуриране на Администратора" + +msgid "admin" +msgstr "администратор" + +msgid "Gallery Administrator" +msgstr "Администратор на Галерията" + +msgid "Authenticate" +msgstr "Достъп" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Грешка: не е намерен login.txt. Моля копирайте го в директорията %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Грешка: файла login.txt не се чете. Моля дайте на Галерията привилегии за " +"четене на този файл." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Грешка: информацията във файла login.txt не съвпада. Моля използвайте новата " +"информация по-долу и опитайте отново. " + +msgid "Create Config File" +msgstr "Създаване на конфигурационен файл" + +#, fuzzy, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Неуспешен опит за редактиране на конфигурационния файл config.php, намиращ се в " +"директорията %s. Моля променете правата за достъп до този файл. Ако използвате " +"Unix, можете да въведете chmod 666 config.php за да коригирате това." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Файла config.php не съществува във вашата %s директория" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Файла config.php не съществува или не може да се редактира. Ако използвате Windows, може да " +"се наложи да спрете 'file sharing' за този файл и сами да промените правата за достъп до " +"него." + +msgid "Database Setup" +msgstr "Конфигуриране на Базата Данни" + +msgid "You must have the MySQL PHP module installed" +msgstr "" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Трябва да определите представка за колоната (съветваме ви да е %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Използвайте само букви, цифри и знака за подчертано в представката за колоната" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Трябва да определите представка за таблицата (съветваме ви да е %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Използвайте само букви, цифри и знака за подчертано в представката за таблицата" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "Базата данни която сте посочили не съществува. Моля първо я създайте." + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"В тази База Данни има съществуващи таблици на Галерията. Файла 'versions.dat' не е намерен " +"във вашата директория за данни на Галерията и ние тълкуваме това като проблем. Или създайте " +"файла 'versions.dat' с правилния формат ако мислите че вашата Галерия все още работи, или " +"изберете да направите нова инсталация, която ще изтрие всички данни от Базата Данни и от " +"директорията с данни на Галерията." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Директорията с данни на Галерия v2 съдържа 'versions.dat' файл от стара инсталация, но " +"таблиците на Галерията не съществуват в Базата Данни. Изберете нова инсталация която ще " +"изтрие всичките данни от директорията за данни на Галерията за да продължите напред." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Базата Данни вече съдържа таблици на Галерията и има съществуващ файл 'versions.dat' в " +"директорията за данни на Галерията. Проблема е, че версията на инсталираните таблици не " +"съвпада с версията на данните в директорията за данни на Галерията. Изберете нова инсталация " +"която ще изтрие всичките данни от Базата Данни и от директорията за данни на Галерията за да " +"продължите напред." + +#, fuzzy +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Базата Данни вече съдържа таблици на Галерията и директорията с данни изглежда да е " +"цялостна. Или изберете да използвате съществуващите таблици и директория за данни, или " +"изберете нова инсталация за да изтриете всички съществуващи данни в директорията и в Базата " +"Данни." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +#, fuzzy +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL с Транзакции (v3.23.34a и по-нов)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (всички версии)" + +#, fuzzy +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i или по-нов)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x или по-нов)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +#, fuzzy +msgid "Finish Installation" +msgstr "Мулти-Инсталация" + +msgid "Install Gallery Core" +msgstr "Инсталиране на Ядрото на Галерията" + +#, fuzzy +msgid "Installing the core module" +msgstr "Инсталиране на Допълнителни Модули" + +msgid "Unable to initialize our Gallery data" +msgstr "Данните на Галерията не можаха да бъдат инициализирани" + +msgid "Unable to communicate with the database" +msgstr "Не можа да бъде осъществена комуникация с Базата Данни" + +msgid "Unable to load the core module" +msgstr "Модула 'Ядро' не можа да бъде зареден" + +msgid "Unable to install the core module" +msgstr "Модула 'Ядро' не можа да бъде инсталиран" + +msgid "Unable to activate the core module" +msgstr "Модула 'Ядро' не можа да бъде активиран" + +msgid "Unable to commit database transaction" +msgstr "Не можа да бъде извършена транзакция с Базата Данни" + +msgid "Core module is only partially installed." +msgstr "Модула на ядрото на Галерията е само частично инсталиран." + +#, fuzzy +msgid "Install Plugins" +msgstr "Фази на Инсталация" + +#, fuzzy +msgid "Unable to initialize our Gallery session" +msgstr "Данните на Галерията не можаха да бъдат инициализирани" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Модула %s не можа да бъде зареден" + +#, fuzzy +msgid "Installing modules" +msgstr "Инсталиране на Допълнителни Модули" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Модула %s не можа да бъде инсталиран" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Модула %s не можа да бъде активиран" + +msgid "Unable to get the module list" +msgstr "Списъка с модули не можа да бъде зареден" + +msgid "Other" +msgstr "" + +msgid "Installation Type" +msgstr "Вид на Инсталацията" + +msgid "Check Security" +msgstr "Проверка на сигурността" + +msgid "Storage Setup" +msgstr "Местоположение на Данните" + +msgid "System Checks" +msgstr "Проверка на Системата" + +msgid "Performing system checks" +msgstr "" + +#, fuzzy +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "Версията na PHP >= 4.1.0 или >= 5.0.4" + +# param0 = existing php version, param1 = '', param2 = '' +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Грешка: Галерия v2 изисква PHP версия 4.1.0 или 5.0.4 или по-нова. Вие имате PHP версия %s " +"инсталирана. Свържете се с вашия администратор за да поискате обновяване на PHP " +"инсталацията. Пакета PHP може да бъде намерен %sтук%s." + +msgid "PHP Version" +msgstr "Версия на PHP" + +msgid "FILE directive supported" +msgstr "Директивата 'FILE' е поддържана." + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Грешка: Директивата __FILE__ във вашата инсталация на PHP, не функционира правилно. Моля " +"свържете се с вашия администратор или поискайте помощ в форумите на Галерията." + +msgid "FILE Directive" +msgstr "Директива 'FILE'" + +msgid "Safe mode disabled" +msgstr "Безопасния режим е изключен" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Грешка: Версията ви на PHP е конфигурирана с включен безопасен режим. Трябва да изключите " +"безопасния режим за да може Галерията да функционира." + +msgid "Safe Mode" +msgstr "Безопасен Режим" + +msgid "Regular expressions" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Грешка: Версията ви на PHP е конфигурирана с включен безопасен режим. Трябва да изключите " +"безопасния режим за да може Галерията да функционира." + +msgid "exec() allowed" +msgstr "Функцията exec() е позволена" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Внимание: Функцията exec() е изключена чрез параметъра disabled_functions в " +"конфигурационния файл 'php.ini'. Това означава че няма да можете да използвате модули които " +"изискват външни програми (например ImageMagick, NetPBM or Ffmpeg). Това може единствено да " +"бъде включено за целия сървър, така че трябва да го промените в главния файл 'php.ini'." + +msgid "set_time_limit() allowed" +msgstr "Функцията set_time_limit() е позволена" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Внимание: Функцията set_time_limit() e е изключена чрез параметъра disabled_functions " +"в конфигурационния файл 'php.ini'. Галерията може да функционира и без тази настройки, но " +"няма да е стабилна. Всяка операция която отнеме повече от %d секунди за изпълнение, ще даде " +"грешка (и в някои от случаите ще върне празна страница) и може да доведе до повреда на " +"данните." + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Внимание: Функцията set_time_limit() e е изключена чрез параметъра disabled_functions " +"в конфигурационния файл 'php.ini'. Галерията може да функционира и без тази настройки, но " +"няма да е стабилна. Всяка операция която отнеме повече от %d секунди за изпълнение, ще даде " +"грешка (и в някои от случаите ще върне празна страница) и може да доведе до повреда на " +"данните." + +msgid "Memory limit" +msgstr "Ограничение на паметта" + +msgid "no limit" +msgstr "няма ограничение" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "Качването на файлове е позволено" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "Максимален размер при качване " + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "Максимален размер при POST" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +#, fuzzy +msgid "putenv() allowed" +msgstr "Функцията exec() е позволена" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Внимание: Функцията set_time_limit() e е изключена чрез параметъра disabled_functions " +"в конфигурационния файл 'php.ini'. Галерията може да функционира и без тази настройки, но " +"няма да е стабилна. Всяка операция която отнеме повече от %d секунди за изпълнение, ще даде " +"грешка (и в някои от случаите ще върне празна страница) и може да доведе до повреда на " +"данните." + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "Цялостност на файловете на Галерията" + +msgid "Test skipped due to other errors." +msgstr "Теста е пропуснат поради други грешки." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "Добре Дошли" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Всяка Галерия ще има минимум един администратор който ще бъде с пълен достъп да вижда и " +"променя всичко. Моля изберете име и парола за главния администатор. По-късно ще можете да " +"добавите още потребители." + +msgid "Admin username" +msgstr "Име на Администратора" + +msgid "Please enter a valid user name" +msgstr "Моля въведете валидно име на потребител" + +msgid "Please enter a password" +msgstr "Моля въведете парола" + +msgid "Password" +msgstr "Парола" + +msgid "Setup password" +msgstr "Изберете парола" + +msgid "(type again)" +msgstr "(отново)" + +msgid "Admin email address" +msgstr "E-mail адрес на Администратора" + +msgid "Please enter a valid email address" +msgstr "Моля въведете валиден e-mail адрес" + +msgid "Admin full name (optional)" +msgstr "Пълно име на Администратора (незадължително)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Липсваща парола! Моля въведете същата парола два пъти" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Паролите които въведохте не съвпадат! Моля опитайте отново." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Използвайки същесвтуващите таблици определя вие не правите нова инсталация. Това само ще " +"промени паролата за инсталацията, но няма да промени паролата за администратора. За да " +"промените паролата на администратора, използвайте функцията 'забравена парола' на Галерията." + +msgid "Create" +msgstr "Създайте" + +msgid "Save" +msgstr "Запишете" + +msgid "Admin user info entered successfully." +msgstr "Информацията за администратора е въведена успешно." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"За да продължим с инсталацията, трябва да сме сигурни че вие е сте този за който се " +"представяте. Най-добрия начин за да сме сигурни, е да ви помолим да направите малка промяна " +"в директорията на Галерията, което ще ви даде необходимия достъп. И така, създайте текстов " +"файл наречен login.txt в директорията %s на вашия web-сървър (това " +"е същата директория в която се намира и 'main.php'). Този текстов файл трябва да съдържа в " +"себе си следните произволно избрани знаци:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "Поискайте Достъп" + +msgid "Authentication successful!" +msgstr "Достъпа ви е успешен!" + +msgid "Erase data for a clean install" +msgstr "Изтриите данните за нова инсталация" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Абсолютно ли сте сигурни че искате да изтриете всички данни от директорията за данни на " +"Галерията и всички данни от Базата Данни?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Имаше грешка при изтриването на базата данни и на директорията с данни. Ето и грешката:" + +msgid "Cancel" +msgstr "Отказ" + +msgid "Erase all data" +msgstr "Изтриите всички данни" + +msgid "Please fix this error and try again." +msgstr "Моля отстранете тази грешка и опитайте отново." + +msgid "Try Again" +msgstr "Опитайте Отново" + +msgid "Create a config file" +msgstr "Създайте конфигурационен файл" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (с 'shell' достъп)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Създайте конфигурационен файл" + +msgid "Config file created successfully." +msgstr "Конфигурационния файл е успешно създаден." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Записахме информацията която въведохте до тук във файла 'config.php', които е във " +"вашата 'gallery2' директория. Ако желаете, може да разгледате и да направите промени в този " +"файл. Само внимавайте защото Галерията ще спре да работи ако сгрешите!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Моля изберете типа на Базата Данни и въведете информацията за достъп до нея. Инсталацията " +"няма да създаде Базата Данни за вас, вие сами трябва да го направите и да въведете името и " +"тук. Ако инсталирате Галерията с База Данни която вече има таблици, можете да предотвратите " +"конфликти с вече съществуващите данни като посочите представки за таблиците и колоните. " + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "БД Тип:" + +msgid "DB Hostname:" +msgstr "БД Адрес:" + +msgid "DB Username:" +msgstr "БД Потребител:" + +msgid "DB Password:" +msgstr "БД Парола:" + +msgid "DB Name:" +msgstr "БД Име:" + +msgid "Table Prefix:" +msgstr "Представка за Таблиците:" + +msgid "Column Prefix:" +msgstr "Представка за Колоните:" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "Изтриите данните за нова инсталация" + +msgid "Reuse Existing Tables" +msgstr "Използвайте съществуващите таблици" + +msgid "Database set up successfully." +msgstr "Базата Данни е успешно конфигурирана." + +msgid "Finished!" +msgstr "Готово!" + +# param0 = , param1 = +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Поздравления! Инсталацията на вашата Галерия v2 завърши! Видяхте ли че не беше толкова " +"сложно? Сега е време да качите малко снимки!" + +msgid "Go to my Gallery!" +msgstr "Влезте в Галерията си!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "Помощ за инсталацията" + +msgid "Start Over" +msgstr "Започнете Отначало" + +msgid "Error installing Gallery Core" +msgstr "Грешка при инсталирането на ядрото на Галерията" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Ядрото на Галерията е успешно инсталирано." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Инсталирахме успешно ядрото на Галерията. Независимо че в момента всичко ще работи е може би " +"по-добре да продължите с инсталацията и да добавите някои от допълнителните модули така че " +"да постигнете желаната от вас функционалност на Галерията." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Следните модули могат да бъдат автоматично инсталирани и активирани. Трябва да инсталирате " +"поне една от графичните програми, защото иначе Галерията няма да може да направи миниатюрни " +"изображения от вашите снимки. На повечето системи автоматичното инсталиране ще работи " +"нормално, но може да има и случаи в които да има проблеми. Вие по всяко време можете да " +"активирате или деактивирате модули от страницата за администрация на Галерията, така че " +"какво ще изберете тук е без значение." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Някои модули няма да могат да се инсталират автоматично. Това е нормално и означава че те " +"изискват малко повече конфигуриране, което можете да направите от страницата за " +"администриране на Галерията." + +msgid "Name" +msgstr "Име" + +msgid "Version" +msgstr "Версия" + +msgid "Description" +msgstr "Описание" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Несъвместимо с тази версия на Галерията)" + +msgid "(un)check all" +msgstr "изберете всичко" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Продължете към Фаза %d без активиране»" + +msgid "Activate Selected Modules" +msgstr "Активирайте избраните модули" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Модула %s е инсталиран, но се нуждае от конфигуриране за да бъде активиран" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"След като приключи инсталацията, влезте в Галерията като Администратор и изберете " +"'Страницата за администриране' на Галерията. На нея изберете Модули и конфигурирайте " +"посочените по-горе модули. " + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Модула %s е активиран успешно." + +msgid "Activate More Modules" +msgstr "Активирайте Още Модули" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Продължете към Фаза %d»" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "Добре Дошли в Инсталацията на Галерията" + +# param0 = integer percentage +#, c-format +msgid "Install %d%% complete" +msgstr "В момента инсталацията е на %d%%" + +msgid "Redo this step" +msgstr "Направете промяна в тази фаза" + +msgid "Gallery: your photos on your website" +msgstr "Галерия: вашите снимки на вашата web-страница" + +#, c-format +msgid "Missing files (%d)" +msgstr "Липсващи файлове (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "Изменени файлове (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "Стари файлове (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Тези файлове вече не са част от Галерията. Те най-вероятно няма да създават проблеми, но е " +"по-добре да бъдат премахнати за да се запази инсталацията чиста." + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "" + +msgid "Standard installation" +msgstr "Стандартна Инсталация" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "Мулти-Инсталация" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Галерията може да поддържа едновременно много независими страници с една единствена " +"инсталация. Изберете този вид инсталация, ако искате да инсталирате нова Галерия на същия " +"web-сървър, но в различни URL-домейни, под-домейни или пътища към директории." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "Трябва да въведете директория" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Директорията която въведохте не съществува" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Директорията трябва да е достъпна за писане от потребителя под който работи web-сървъра/php " +"инсталацията или да съдържа следните отворени за редактиране файлове: " + +msgid "Select Directory" +msgstr "Изберете директория" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "Избрана е стандартна инсталация." + +msgid "Install Steps" +msgstr "Фази на Инсталация" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Искаме да се уверим че Галерията ви е обезопасена. Файла 'config.php', който инсталацията " +"редактира, в момента е достъпен за редактиране и от други хора. Това е необходимо защото за " +"Unix-типа права за достъп, инсталацията се квалифицира като \"друг човек\". Така че, преди " +"да завършите, сменете правата за достъп до този файл, за да не могат 'другите' да записват в " +"него. В момента вашия 'config.php' е със следните права за достъп: %s. Предлагаме ви да " +"направите това:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Искаме да се уверим че Галерията ви е обезопасена. Директорията съдържаща файла 'config." +"php', който инсталацията редактира, в момента има права за достъп които позволяват на други " +"хора да записват или изтриват файлове. Така че, преди да завършите, сменете правата за " +"достъп до тази директория за да не могат 'другите' да записват в нея." + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "Потвърдихме, че вашия 'config.php файл е в безопасност." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "Проверете отново" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Ако използвате някой от по-модерните броузери, ще опитаме автоматично да довършим всеки път " +"към директория който въведете частично по-долу. Така че ако имате проблем с намирането на " +"правилния път, опитайте да експериментирате в полето отдолу и вижте какво ще ви предложи " +"автоматичното довършване." + +msgid "The directory you entered is read only" +msgstr "Директорията която въведохте е разрешена само за четене" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Имаше грешка при създаването на структурата в директорията за данни." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Местоположението е успешно определено." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "Път към директорията: " + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "Забележка: това са само примери! Възможно е да не работят на вашата система." + +msgid "Unix (with ftp access)" +msgstr "Unix (с 'ftp' достъп)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Отбележете, че има различни FTP сървъри и клиенти и че тези инструкции може да не работят " +"във вашия случай. Ако имате проблеми, за помощ се консултирайте се с упътването на FTP " +"програмата си или с вашия системен администратор. " + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Забележка: Това изисква вашата директория с данни да бъде достъпна през web-a, което " +"ние не препоръчваме защото обезмисля нашия 'image firewall'. Когато вече имате налице " +"пътеката към директорията, ви съветваме да преместите вашата директория с данни извън " +"достъпната през web-a зона тогава да коригирате пътеката тук." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Забележка: Не забравяйте да изтриете 'dir.php' когато приключите!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "Местоположението е успешно определено." + +msgid "Success" +msgstr "ОК" + +msgid "Warning" +msgstr "Внимание" + +msgid "Failed" +msgstr "Грешка" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Ако използвате 'Apache', създайте файла .htaccess в главната директория на Галерията, който " +"да има следното съдържание:" + +msgid "Version Check" +msgstr "Проверка на Версията" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Това не е нова инсталация и инсалираната версия не съвпада с новата версия." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Инсталираната версия не може да бъде обновена с новата версия!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Инсталираната версия е по стара от новата версия. Използвайте функцията за обновяване, а не " +"за инсталация!" + +msgid "Currently installed" +msgstr "" + +msgid "New version" +msgstr "Нова версия" + +msgid "Go to the Upgrader!" +msgstr "Стартирайте процеса на Обновяване!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Стартирайте процеса на обновяване като въведете в броузера адреса за %s/upgrade/index.php%s " +"в директорията %s." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Инсталирането на Галерия v2 ще преминете през %d фази. Инсталацията ще ви води през тези " +"фази и ще ви помага ако се налагат допълнителни стъпки за да заработи Галерията успешно. " +"Дори фазата да е приключила, вие отново можете да се върнете и да направите промени по всяко " +"време. Моля прочетете %s'Помощ за инсталацията'%s преди да продължите." + +msgid "Select Language:" +msgstr "Изберете Език:" + +# Badly chosen msgid: Button to change to a different language +msgid "Go" +msgstr "" + +msgid "Begin Installation»" +msgstr "Започнете Инсталацията»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL с Транзакции (v3.23.34a и по-нов)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Ядрото на Галерията е инсталирано успешно" + +#~ msgid "Install More Modules" +#~ msgstr "Инсталиране на Допълнителни Модули" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Преди да можем да продължим, трябва да създадете файла config.php във вашата " +#~ "директория %s. Също така трябва да сте сигурни че web-сървъра ще може да пише в " +#~ "този файл. Ако сте под Unix използвайте chmod 666 config.php. Под Windows не би " +#~ "трябвало да се налага да правите каквото и да било. Можете да продължите напред, след " +#~ "като създадете файла и определите правата за достъп до него. Ако има проблем, ние ще ви " +#~ "посочим какво да коригирате." + +#~ msgid "Install Other Modules" +#~ msgstr "Инсталиране на Допълнителни Модули" + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (не изцяло тестван)" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "Gallery needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browsed " +#~ "directly via the web. This is necessary if you wish to have your images accessible only " +#~ "via Gallery [%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "Галерията се нуждае от директория на вашия сървър в която да запазва данните си. Тази " +#~ "директория ще бъде използвана за запазване на изображения и на други важни данни. За по-" +#~ "сигурно, ви съветваме да изберете директория намираща се извън вашата web-" +#~ "страница, която не може да се разглежда през web-a. Това е необходимо ако желаете " +#~ "изображенията да са достъпни само чрез Галерията [%s]. Отбележете че презададената по-" +#~ "долу директория е вътре в под-директориите на web-сървъра. Това е защото ние не можем да " +#~ "отгатнем какви са вашите директории извън структурата на web-сървъра. Добре е да я " +#~ "промените с по-сигурно местоположение, като например директория която е под вашата " +#~ "основна потребителска директория. Ако имате достъп до страницата си единствено чрез FTP, " +#~ "това може да се окаже невъзможно. " + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get " +#~ "Gallery working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "Web-сървъра ви трябва да може да пише в тази директория. Различните сървъри имат различно " +#~ "конфигурирани системи за достъп. За да работи Галерията, можете да отпуснете достъпа до " +#~ "тази директория, но ако се притеснявате за сигурността, най-добре се консултирайте с " +#~ "вашия администратор. За да работи нормално, използвайте примерите по-долу." + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "Това е известно като така наречения image firewall." + +#~ msgid "Finished" +#~ msgstr "Завършване" + +#~ msgid "Installation Status" +#~ msgstr "Развитие на Инсталацията" + +#~ msgid "There was an error installing the core module. Here's the stack trace:" +#~ msgstr "Имаше грешка при инсталирането на ядрото на Галерията. Следва 'stack trace':" diff --git a/Source/gallery2/install/po/ca.po b/Source/gallery2/install/po/ca.po new file mode 100644 index 0000000..a333525 --- /dev/null +++ b/Source/gallery2/install/po/ca.po @@ -0,0 +1,1120 @@ +# $Id: ca.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Oscar Garcia Amor +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-20 09:41-0800\n" +"PO-Revision-Date: 2006-06-16 15:39+0100\n" +"Last-Translator: Juan Vega Aiguadé \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Unknown" +msgstr "Desconegut" + +msgid "Admin User Setup" +msgstr "" + +msgid "admin" +msgstr "" + +msgid "Gallery Administrator" +msgstr "" + +msgid "Authenticate" +msgstr "" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" + +msgid "Create Config File" +msgstr "" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" + +msgid "Database Setup" +msgstr "" + +msgid "You must have the MySQL PHP module installed" +msgstr "" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "" + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "" + +msgid "PostgreSQL v7.x and newer" +msgstr "" + +msgid "Oracle (9i and newer)" +msgstr "" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "" + +msgid "Install Gallery Core" +msgstr "" + +msgid "Installing the core module" +msgstr "Mòdul central de Gallery" + +msgid "Unable to initialize our Gallery data" +msgstr "" + +msgid "Unable to communicate with the database" +msgstr "" + +msgid "Unable to load the core module" +msgstr "" + +msgid "Unable to install the core module" +msgstr "" + +msgid "Unable to activate the core module" +msgstr "" + +msgid "Unable to commit database transaction" +msgstr "" + +msgid "Core module is only partially installed." +msgstr "" + +msgid "Install Plugins" +msgstr "" + +msgid "Unable to initialize our Gallery session" +msgstr "" + +#, c-format +msgid "Unable to load the %s module" +msgstr "" + +msgid "Installing modules" +msgstr "" + +#, c-format +msgid "Unable to install the %s module" +msgstr "" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "" + +msgid "Unable to get the module list" +msgstr "" + +msgid "Other" +msgstr "Altre(s)" + +msgid "Installation Type" +msgstr "" + +msgid "Check Security" +msgstr "" + +msgid "Storage Setup" +msgstr "" + +msgid "System Checks" +msgstr "" + +msgid "Performing system checks" +msgstr "" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" + +msgid "PHP Version" +msgstr "" + +msgid "FILE directive supported" +msgstr "" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" + +msgid "Safe Mode" +msgstr "" + +msgid "Regular expressions" +msgstr "" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "" + +msgid "no limit" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "" + +msgid "Please enter a valid user name" +msgstr "" + +msgid "Please enter a password" +msgstr "" + +msgid "Password" +msgstr "Contrasenya" + +msgid "Setup password" +msgstr "" + +msgid "(type again)" +msgstr "" + +msgid "Admin email address" +msgstr "" + +msgid "Please enter a valid email address" +msgstr "" + +msgid "Admin full name (optional)" +msgstr "" + +msgid "Missing password! Please enter the same password twice" +msgstr "" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Crear" + +msgid "Save" +msgstr "Guardar" + +msgid "Admin user info entered successfully." +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "" + +msgid "Authentication successful!" +msgstr "" + +msgid "Erase data for a clean install" +msgstr "" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "Cancel·lar" + +msgid "Erase all data" +msgstr "" + +msgid "Please fix this error and try again." +msgstr "" + +msgid "Try Again" +msgstr "" + +msgid "Create a config file" +msgstr "" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "" + +msgid "Config file created successfully." +msgstr "" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "" + +msgid "DB Hostname:" +msgstr "" + +msgid "DB Username:" +msgstr "" + +msgid "DB Password:" +msgstr "" + +msgid "DB Name:" +msgstr "" + +msgid "Table Prefix:" +msgstr "" + +msgid "Column Prefix:" +msgstr "" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "" + +msgid "Reuse Existing Tables" +msgstr "" + +msgid "Database set up successfully." +msgstr "" + +msgid "Finished!" +msgstr "" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "" + +msgid "Start Over" +msgstr "Començar" + +msgid "Error installing Gallery Core" +msgstr "" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "Nom" + +msgid "Version" +msgstr "Versió" + +msgid "Description" +msgstr "Descripció" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "" + +msgid "Activate Selected Modules" +msgstr "" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "" + +msgid "Activate More Modules" +msgstr "" + +#, c-format +msgid "Continue to Step %d»" +msgstr "" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "" + +#, c-format +msgid "Install %d%% complete" +msgstr "" + +msgid "Redo this step" +msgstr "" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "" + +msgid "Standard installation" +msgstr "" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "" + +msgid "Install Steps" +msgstr "" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "" + +msgid "Success" +msgstr "Èxit" + +msgid "Warning" +msgstr "" + +msgid "Failed" +msgstr "Fracàs" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "" + +msgid "New version" +msgstr "" + +msgid "Go to the Upgrader!" +msgstr "" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "" + +msgid "Go" +msgstr "Anar" + +msgid "Begin Installation»" +msgstr "" diff --git a/Source/gallery2/install/po/cs.po b/Source/gallery2/install/po/cs.po new file mode 100644 index 0000000..0bf5699 --- /dev/null +++ b/Source/gallery2/install/po/cs.po @@ -0,0 +1,1440 @@ +# $Id: cs.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-06-04 17:42+0200\n" +"PO-Revision-Date: 2006-12-10 13:18+0100\n" +"Last-Translator: drevak \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +msgid "Unknown" +msgstr "Neznámý" + +msgid "Admin User Setup" +msgstr "Nastavení uživatelů" + +msgid "admin" +msgstr "správce" + +msgid "Gallery Administrator" +msgstr "Správce Galerie" + +msgid "Authenticate" +msgstr "Autentikace" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Chyba: nemohu najít soubor login.txt. Prosím umístněte ho do adresáře %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Chyba: soubor login.txt není čitelný. Prosím opravte práva pro tento soubor." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Chyba: klíč v souboru login.txt není správný. Prosím stáhněte nový " +"autentizační řetězec níže a zkuste to znovu." + +msgid "Create Config File" +msgstr "Vytvoření konfiguračního souboru" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Nelze zapsat do konfiguračního souboru config.php v adresáři %s. Prosím změňte " +"oprávnění pro tento soubor. Na systémech typu Unix pomůže něco jako chmod 666 config.php." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Soubor config.php v adresáři %s neexistuje" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Soubor config.php existuje, ale není zapisovatelný. Pokud je toto systém Windows, možná " +"budete muset vypnout sdílení pro tento soubor a nastavit pro něj oprávnění ručně." + +msgid "Database Setup" +msgstr "Nastavení databáze" + +msgid "You must have the MySQL PHP module installed" +msgstr "Musíte mít nainstalovaný PHP modul pro MySQL" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Musíte mít nainstalovaný vylepšený (improved) PHP modul pro MySQL" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Musíte mít nainstalovaný PHP modul ibm_db2" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Musíte mít nainstalovaný PHP modul pro PostgreSQL" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Musíte mít nainstalovaný PHP modul pro Oracle OCI8" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Musíte mít nainstalovaný Component Object Model(COM) modul pro PHP" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Musíte zadat prefix sloupců (doporučujeme %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "V prefixu sloupců použijte pouze písmena, číslice a podtržítko" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Musíte zadat prefix tabulek (doporučujeme %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "V prefixu tabulek použijte pouze písmena, číslice a podtržítko" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Nelze vytvořit spojení k databázi typu %s" + +msgid "Unable to connect to database with the information provided." +msgstr "S dodanými informacemi se nelze připojit k databázi." + +msgid "The database you specified does not exist. Please create it." +msgstr "Databáze, kterou jste zadali, neexistuje. Prosím, vytvořte ji." + +msgid "The database privileges test did not complete successfully." +msgstr "Chyba při zkoušení oprávnění databáze." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"V této databázi už existují tabulky Galerie! Navíc v datovém adresáři G2 neexistuje soubor " +"'versions.dat', což pravděpodobně znamená poškozenou instalaci G2. Buď vytvořte soubor " +"versions.dat ve správném formátu (pokud si stále myslíte že by Galerie měla fungovat) nebo " +"vyberte čistou instalaci, která smaže všechna data v databázi a datovém adresáři." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Datový adresář G2 obsahuje soubor versions.dat ze starší instalace, ale tabulky Galerie v " +"databázi nejsou. Vyberte čistou instalaci pro výmaz všech dat v datovém adresáři Galerie a " +"pokračujte dalším krokem." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"V databázi už existují tabulky Galerie a v datovém adresáři je soubor versions.dat, ale " +"verze tabulek v databázi neodpovídá verzi datových souborů. Vyberte čistou instalaci pro " +"výmaz všech dat v databázi a datovém adresáři a pokračujte dalším krokem." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"V databázi už existují tabulky Galerie a datový adresář se zdá být neporušen. Vyberte buď " +"použití existujících tabulek databáze a datového adresáře nebo čistou instalaci, čímž " +"smažete všechna existující data v databázi a datovém adresáři." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Nelze spustit vyžadované API pro výmaz datového adresáře. Prosím vymažte datový adresář " +"ručně." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Nelze spustit vyžadované API pro smazání tabulek Galerie v databázi. Prosím smažte je ručně." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "Nelze nahrát API G2. Prosím vymažte databázi Galerie a datový adresář ručně." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a a novější)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (verze stařší jak v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x a novější" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i a novější)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x a novější)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 a novější" + +msgid "Unknown DB type or no known tables information." +msgstr "Neznámý typ databáze nebo neznámé tabulky." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Nelze najít nepoužitý prefix tabulek podobný \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Nelze otevřít soubor popisu: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Chyba při vytváření testovací sekvence databáze. Zkontrolujte chybovou hlášku a soubor " +"README.html pro chybějící oprávnění a vyčištěte databázi." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Chyba při rušení testovací sekvence databáze. Zkontrolujte chybovou hlášku a soubor README." +"html pro chybějící oprávnění a vyčištěte databázi." + +msgid "Missing SQL statements" +msgstr "Chybějící SQL výrazy" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Zkontrolujte chybovou hlášku a soubor README.html pro chybějící oprávnění a vyčištěte " +"databázi." + +msgid "Finish Installation" +msgstr "Dokončit instalaci" + +msgid "Install Gallery Core" +msgstr "Instalace jádra Galerie" + +msgid "Installing the core module" +msgstr "Instaluji modul jádra" + +msgid "Unable to initialize our Gallery data" +msgstr "Nelze zinicializovat Vaše data Galerie" + +msgid "Unable to communicate with the database" +msgstr "Nelze komunikovat s databází" + +msgid "Unable to load the core module" +msgstr "Nelze nahrát modul jádra" + +msgid "Unable to install the core module" +msgstr "Nelze nainstalovat modul jádra" + +msgid "Unable to activate the core module" +msgstr "Nelze aktivovat modul jádra" + +msgid "Unable to commit database transaction" +msgstr "Nelze commitnout transakce databáze" + +msgid "Core module is only partially installed." +msgstr "Modul jádra je pouze částečně nainstalovaný." + +msgid "Install Plugins" +msgstr "Instalovat pluginy" + +msgid "Unable to initialize our Gallery session" +msgstr "Nelze zinicializovat sezení (session) Galerie" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Nelze nahrát modul %s" + +msgid "Installing modules" +msgstr "Instaluji moduly" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Nelze nainstalovat modul %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Nelze aktivovat modul %s" + +msgid "Unable to get the module list" +msgstr "Nelze získat seznam modulů" + +msgid "Other" +msgstr "Další" + +msgid "Installation Type" +msgstr "Typ instalace" + +msgid "Check Security" +msgstr "Kontrola zabezpečení" + +msgid "Storage Setup" +msgstr "Nastavení úložiště" + +msgid "System Checks" +msgstr "Systémové kontroly" + +msgid "Performing system checks" +msgstr "Provádím systémové kontroly" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP verze >= 4.3.0 nebo >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Chyba: Galerie 2 vyžaduje PHP verze 4.3.0 a novější nebo 5.0.4 a novější. Vaše PHP je verze %" +"s. Kontaktujte Vašeho správce a požádejte o aktualizaci, která je dostupná na %sPHP webu%s." + +msgid "PHP Version" +msgstr "Verze PHP" + +msgid "FILE directive supported" +msgstr "Direktiva FILE je podporována" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Chyba: PHP direktiva __FILE__ nefunguje správně. Prosím požádejte o podporu Vašeho " +"administrátora nebo na fórech Galerie." + +msgid "FILE Directive" +msgstr "Direktiva FILE" + +msgid "Safe mode disabled" +msgstr "Safe mód vypnutý" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Chyba: Vaše PHP je nakonfigurováno se zapnutým Safe módem. Pokud chcete používat Galerii, " +"musíte ho vypnout." + +msgid "Safe Mode" +msgstr "Safe mód" + +msgid "Regular expressions" +msgstr "Regulární výrazy" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Chyba: Vaše PHP je nakonfigurováno bez podpory %sRegulárních výrazů kompatibilních s Perlem%" +"s. Než Galerie poběží, musíte tyto funkce zapnout." + +msgid "exec() allowed" +msgstr "funkce exec() je povolena" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Varování: funkce exec() je ve vašem PHP vypnutá pomocí parametru disabled_functions v " +"php.ini. Nebudete moci použít moduly, které volají externí programy (jako je ImageMagick, " +"NetPBM nebo Ffmpeg). Toto nastavení může být provedeno pouze pro celý server v souboru php." +"ini." + +msgid "set_time_limit() allowed" +msgstr "funkce set_time_limit() je povolena" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Varování: funkce set_time_limit() je ve vašem PHP vypnutá pomocí parametru " +"disabled_functions v php.ini. Galerie může s tímto nastavením fungovat, ale nebude " +"zaručena spolehlivost. Všechny operace, které budou trvat déle než %d sekund, pravděpodobně " +"selžou (a v některých případech vrátí prázdnou stránku) a mohou poškodit data." + +msgid "Filesystem Operations" +msgstr "Filesystémové operace" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Varování: nezbytné filesystémové operace jsou vypnuty pomocí parametru " +"disabled_functions v php.ini. Musíte tyto funkce povolit před spuštěním Galerie. Tyto " +"funkce chybí: %s" + +msgid "Memory limit" +msgstr "Limit paměti" + +msgid "no limit" +msgstr "bez omezení" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Varování: ve Vašem PHP je nastaveno omezení paměti na %sB (parametr memory_limit v " +"php.ini). Pro bezproblémovou funkci Galerie byste měli zvýšit tento limit alespoň na %" +"sMB." + +msgid "File uploads allowed" +msgstr "Upload souborů povolen" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Varování: konfigurace Vašeho PHP nedovoluje upload souborů (parametr file_uploads v " +"php.ini ). Pokud chcete do Galerie uploadovat soubory, musíte tuto možnost povolit." + +msgid "Maximum upload size" +msgstr "Maximální velikost uploadu" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Varování: ve Vašem PHP je nastaveno omezení velikosti uploadu souborů na %sB (parametr " +"upload_max_filesize v php.ini). Pro upload větších souborů byste měli tento limit " +"zvýšit." + +msgid "Maximum POST size" +msgstr "Maximální velikost POST požadavku" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Varování: ve Vašem PHP je nastavena maximální velikost dat v POST požadavku na %sB (parametr " +"post_max_size v php.ini). Pro upload větších souborů byste měli tento limit zvýšit." + +msgid "Translation support" +msgstr "Podpora překladu" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Váš webový server nepodporuje lokalizace. Pro přidání podpory dalších jazyků požádejte " +"prosím Vašeho systémového správce o změnu konfigurace PHP se zapnutou volbou %sgettext%s." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Ve vašem PHP chybí funkce %sbind_textdomain_codeset%s. To znamená, že Galerie může špatně " +"zobrazovat rozšířené znaky některých jazyků." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Ve vašem PHP chybí funkce %sdngettext%s. To znamená, že Galerie nebude moci přeložit tvary " +"množného čísla." + +msgid "Zend compatibility mode" +msgstr "Kompatibilní mód Zendu" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Varování: Vaše PHP je nakonfigurováno v Zend módu ze1_compatibility_mode, což může způsobit " +"padání PHP. Pro otestování Vašeho PHP klikněte zde. Pokud uvidíte úspěšný " +"výsledek, Vaše PHP je v pořádku. Pokud uvidíte chybu nebo nedostanete odpověď, budete muset " +"vypnout ze1_compatibility_mode." + +msgid "putenv() allowed" +msgstr "funkce putenv() povolena" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Varování: funkce putenv() je ve vašem PHP vypnutá pomocí parametru disabled_functions " +"v php.ini. Galerie může s tímto nastavením fungovat, ale na některých unikátních systémech " +"nebude Galerie schopna fungovat v jiných jazycích než je systémový jazyk a angličtina." + +msgid "Output buffering disabled" +msgstr "Vyrovnávací paměť výstupu vypnuta" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Varování: Vyrovnávací paměť výstupu ve Vašem PHP je zapnuta parametrem(y) %s v php." +"ini. Galerie s tímto nastavením může fungovat, stahování souborů může být dokonce rychlejší, " +"ale Galerie může mít problémy s poskytováním velkých souborů (např. videí) a může narazit na " +"omezení paměti. Také nemusí správně fungovat některé další funkce, například progress bary, " +"pokud není povoleno ini_set()." + +msgid "Gallery file integrity" +msgstr "Integrita souborů Galerie" + +msgid "Test skipped due to other errors." +msgstr "Zkouška přeskočena z důvodu jiných chyb." + +msgid "Theme available" +msgstr "Dostupné téma" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Chyba: musí být alespoň jedno téma v adresáři %s!" + +msgid "Manifest missing or inaccessible." +msgstr "Chybějící nebo nedostupný soubor Manifest." + +msgid "Welcome" +msgstr "Vítejte" + +msgid "Please correct the following errors" +msgstr "Prosím odstraňte následující chyby" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Každá Galerie musí mít alespoň jednoho správce s plným přístupem (zobrazení a modifikace " +"všeho). Prosím vyberte uživatelské jméno a heslo pro tento účet. Další uživatele budete moci " +"zadat později." + +msgid "Admin username" +msgstr "Uživatelské jméno správce" + +msgid "Please enter a valid user name" +msgstr "Prosím zadejte platné uživatelské jméno" + +msgid "Please enter a password" +msgstr "Prosím zadejte heslo" + +msgid "Password" +msgstr "Heslo" + +msgid "Setup password" +msgstr "Nastavení hesla" + +msgid "(type again)" +msgstr "(ještě jednou)" + +msgid "Admin email address" +msgstr "Email adresa správce" + +msgid "Please enter a valid email address" +msgstr "Prosím zadejte platnou email adresu" + +msgid "Admin full name (optional)" +msgstr "Celé jméno správce (nepovinné)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Chybějící heslo! Prosím zadejte stejné heslo dvakrát" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Hesla, která jste zadali, nejsou stejná! Prosím, zkuste to znovu." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Protože chcete použít existující databázi, nejde o čistou instalaci. Tento proces změní " +"pouze instalační heslo, ale nezmění heslo správce. Pro změnu hesla správce budete muset " +"použít mechanismus Galerie pro obnovu hesla." + +msgid "Create" +msgstr "Vytvořit" + +msgid "Save" +msgstr "Uložit" + +msgid "Admin user info entered successfully." +msgstr "Uživatelské informace pro správce úspěšně zadány." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Pro pokračování v instalaci je potřeba ověřit Vaší identitu. Nejlepší cesta k tomuto " +"zjištění je požádat Vás o provedení malé změny v adresáři Galerie, která prokáže že máte " +"dostatečná oprávnění. Takže, vytvořte prosím na Vašem webovém serveru nový textový soubor " +"login.txt v adresáři %s (to je stejný adresář, kde je " +"nainstalována Galerie). Soubor musí obsahovat následující náhodně vygenerované znaky:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Pro Vaše větší pohodlí jsme pro Vás připravili %ssprávnou verzi souboru login.txt%s. Stačí, " +"když soubor stáhnete a zkopírujete do adresáře %s." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Jakmile soubor připravíte na správné místo, klikněte níže pro pokračování." + +msgid "Authenticate Me" +msgstr "Autentizuj mě" + +msgid "Authentication successful!" +msgstr "Autentizace úspěšná!" + +msgid "Erase data for a clean install" +msgstr "Čistá instalace (výmaz dat)" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "Jste si jisti, že chcete smazat všechna data v databázi a datovém adresáři Galerie?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "Při mazání databáze a datového adresáře se vyskytla tato chyba: " + +msgid "Cancel" +msgstr "Zrušit" + +msgid "Erase all data" +msgstr "Smazat všechna data" + +msgid "Please fix this error and try again." +msgstr "Prosím vyřešte tento problém a zkuste to znovu." + +msgid "Try Again" +msgstr "Zkusit znovu" + +msgid "Create a config file" +msgstr "Vytvoření konfiguračního souboru" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Nyní potřebujeme všechny zadané informace uložit do souboru config.php v adresáři %" +"s. Toto je velmi důležitý soubor, který poskytne Galerii všechny informace, které bude " +"potřebovat pro svůj běh. Poté co bude vytvořen, můžete tento soubor prohlížet a měnit, jak " +"budete potřebovat." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Před pokračováním by jste měli ve Vašem adresáři %s vytvořit soubor s názvem " +"config.php. Ujistěte se, že webserver do něj bude moci zapisovat." + +msgid "Unix (with shell access)" +msgstr "Unix (s shell přístupem)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Ve Windows pravděpodobně nemusíte dělat nic zvláštního." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Po vytvoření souboru a správném nastavení oprávnění můžete pokračovat. Pokud je to " +"problémem, řekneme Vám jak to opravit." + +msgid "Create config file" +msgstr "Vytvořit konfigurační soubor" + +msgid "Config file created successfully." +msgstr "Konfigurační soubor úspěšně vytvořen." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Všechny zadané informace byly zapsány do souboru config.php v adresáři Vaší Galerie. " +"Tento soubor můžete prohlížet a editovat jak budete chtít. Ale buďte opatrní, pokud uděláte " +"chybu v tomto souboru, Galerie nebude správně fungovat!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Prosím vyberte typ Vaší databáze a zadejte autentizační informace. Instalátor nebude " +"vytvářet novou databázi, takže ji musíte vytvořit sami a její jméno zde zadat. Pokud chcete " +"použít databázi, ve které už jsou nějaké tabulky, použijte nekonfliktní prefixy pro tabulky " +"a sloupce Galerie." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Toto je multisite instalace. Nezapomeňte, že každá multisite potřebuje svoje vlastní tabulky " +"databáze. Pro každou multisite (jednotlivou galerii) vyberte buď vlastní databázi nebo různé " +"prefixy!" + +msgid "Database type:" +msgstr "Typ databáze:" + +msgid "DB Hostname:" +msgstr "Hostname databáze:" + +msgid "DB Username:" +msgstr "Uživatelské jméno pro databázi:" + +msgid "DB Password:" +msgstr "Heslo do databáze:" + +msgid "DB Name:" +msgstr "Jméno databáze:" + +msgid "Table Prefix:" +msgstr "Prefix tabulek:" + +msgid "Column Prefix:" +msgstr "Prefix sloupců:" + +msgid "We received the following database related errors:" +msgstr "Zjistili jsme následující chyby související s databází:" + +msgid "Erase Data For A Clean Install" +msgstr "Čistá instalace (výmaz dat)" + +msgid "Reuse Existing Tables" +msgstr "Použít existující tabulky" + +msgid "Database set up successfully." +msgstr "Databáze byla úspěšně nastavena." + +msgid "Finished!" +msgstr "Hotovo!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Gratulujeme! Instalace Vaší Galerie 2 je kompletní! Ani to tolik nebolelo, nebo snad ano? " +"Teď je čas pro upload nějakých fotek!" + +msgid "Go to my Gallery!" +msgstr "Jdi do mé Galerie!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Nyní můžete jít do Vaší nové Galerie. Zadejte do browseru URL %smain.php%s v adresáři %s." + +msgid "Installer Help" +msgstr "Instalační nápověda" + +msgid "Start Over" +msgstr "Začít znovu" + +msgid "Error installing Gallery Core" +msgstr "Chyba při instalaci jádra Galerie" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Při pokusu o instalaci modulu jádra došlo k chybě. Co dělat dál?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Zkuste krok instalátoru \"Systémové kontroly\" a zkontrolujte zda jsou všechny v pořádku. " +"Možná že jste ignorovali varování o chybě při kontrole integrity. " + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Pokud nejsou v kroku \"Systémové kontroly\" žádné varování nebo chyby, zkuste vymazat " +"adresář úložište, smazat tabulky databáze a spustit celou instalaci od začátku." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Prosím navštivte %sG2 FAQ%s a přečtěte si %sReadme sekci Známé chyby%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Pokud problém zůstává, prosím zkopírujte si instalační log, který najdete v %s a přiložte ho " +"(jako install.log.zip) k novému topicu ve fóru %sG2 support forum%s nebo, pokud je to možné, " +"přidejte pouze odkaz na soubor install.log. Pokud bude potřeba, log bude moci někdo " +"zanalyzovat." + +msgid "Stack Trace:" +msgstr "Trasování zásobníku:" + +msgid "Installed Gallery Core successfully." +msgstr "Jádro Galerie úspěšně nainstalováno." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Úspěšně jsme nainstalovali jádro Galerie. Ačkoliv všechno by mělo nyní běžet bez problému, " +"měli byste pokračovat v instalaci a přidat pár dalších modulů, abyste mohli používat " +"vlastnosti, které opravdu chcete." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Následující moduly pro Vás mohou být automaticky nainstalované a aktivované. Měli byste " +"nainstalovat alespoň jeden grafický nástroj jinak Galerie nebude moci vytvářet náhledy " +"obrázků. Na většině systémů funguje automatická instalace bez problémů. Bohužel, někdy může " +"dojít k nějaké chybě. Aktivovat a deaktivovat moduly můžete kdykoliv později ve správci, " +"takže změny zde provedené nebudou trvalé." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Automatická instalace některých modulů může selhat. To je ale v pořádku. Typicky to znamená, " +"že vyžadují nějaké nastavení, které můžete provést ve správci nastavení" + +msgid "Name" +msgstr "Jméno" + +msgid "Version" +msgstr "Verze" + +msgid "Description" +msgstr "Popis" + +msgid "(Incompatible with this Gallery version)" +msgstr "(nekompatibilní s touto verzí Galerie)" + +msgid "(un)check all" +msgstr "(zrušit) výběr všech" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Pokračovat na %d bez aktivace»" + +msgid "Activate Selected Modules" +msgstr "Aktivovat vybrané moduly" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modul %s úspěšně nainstalován, ale k aktivaci potřebuje další konfiguraci" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Po skončení této instalace se přihlašte jako správce. V administračním panelu zvolte stránku " +"Moduly a nakonfigurujte výše vypsané moduly." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Modul %s úspěšně aktivován" + +msgid "Activate More Modules" +msgstr "Aktivace více modulů" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Pokračovat na %d»" + +msgid "Debug Output" +msgstr "Ladící výstup" + +msgid "Welcome to the Gallery Installer" +msgstr "Vítejte v instalátoru Galerie" + +#, c-format +msgid "Install %d%% complete" +msgstr "Instalace %d%% kompletní" + +msgid "Redo this step" +msgstr "Opakovat tento krok" + +msgid "Gallery: your photos on your website" +msgstr "Galerie: Vaše fotografie na na Vašem webu" + +#, c-format +msgid "Missing files (%d)" +msgstr "Chybějící soubory (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Poznámka: Toto je Galerie z CVS, takže se zde mohou vyskytnout nedávno odebrané soubory. " +"Nejspíše to lze bez problému ignorovat." + +#, c-format +msgid "Modified files (%d)" +msgstr "Modifikované soubory (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Poznámka: Toto je Galerie z CVS, takže se zde mohou vyskytnout nedávno upravené soubory. " +"Nejspíše lze bez problému ignorovat, ale pokud si chcete být jisti, můžete (než budete " +"pokračovat) spustit 'svn update'." + +#, c-format +msgid "Old files (%d)" +msgstr "Staré soubory (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Tyto soubory už nejsou součástí Galerie. Pravděpodobně nemohou způsobit žádné problémy, ale " +"asi by bylo nejlepší je odstranit a zachovat tak tuto instalaci čistou." + +msgid "Errors occurred. Please see messages below." +msgstr "Došlo k chybám. Prosím zkontrolujte výpisy níže." + +msgid "Please select the installation type" +msgstr "Prosím vyberte typ instalace" + +msgid "Standard installation" +msgstr "Standardní instalace" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Toto je výchozí typ instalace. Tento typ vyberte v případě, že chcete nainstalovat novou " +"Galerii do adresáře %s, který bude dostupný na URL adrese %s." + +msgid "Multisite installation" +msgstr "Multisite instalace" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Galerie umí obsluhovat více nezávislých webů (galerií) z jedné instalace kódu. Vyberte tento " +"typ instalace, pokud chcete nainstalovat novou Galerii na stejný webserver, ale do jiné " +"cesty, subdomény nebo URL domény." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Multisites (jednotlivé galerie) nebudou sdílet žádná alba, fotografie, uživatele ani nic " +"jiného. Každá z nich potřebuje vlastní databázi a úložiště. Pro více informací o \"multisite" +"\" instalaci navštivte stránku %s." + +msgid "You must enter a directory" +msgstr "Musíte zadat adresář" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Adresář, který jste zadali, je adresář základních kódů (codebase). Pokud chcete nainstalovat " +"Galerii pouze do tohoto adresáře, zvolte sdandardní typ instalace. Pokud chcete nainstalovat " +"multisite, vyberte jiný adresář." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Adresář, který jste zadali buď neexistuje nebo je jeho vytvoření zakázáno v konfiguraci " +"Vašeho webserveru. Váš webserver je nastaven tak, aby povolil přístup pouze k následujícím " +"adresářům. Musíte z nich jeden vybrat, nebo upravit nastavení open_basedir ve Vaší " +"konfiguraci PHP pro povolení nového adresáře." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Zadaný adresář neexistuje" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Zadaný adresář není dostupný. Změňte oprávnění tak, aby webový server mohl zapisovat do " +"tohoto adresáře." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Nelze vytvořit soubory pro multisite. Zkontrolujte, zda níže vypsané soubory jsou " +"zapisovatelné." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Všechny multisites (jednotlivé galerie) jsou instalovány z těchto kódů (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Zadejte adresář pro nový multisite. Cesta musí být jiná než je cesta adresáře základních " +"kódů (codebase):" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Adresář musí být zapisovatelný pro uživatele, pod kterým běží webserver/PHP, nebo musí " +"obsahovat následující zapisovatelné soubory:" + +msgid "Select Directory" +msgstr "Vybrat adresář" + +msgid "Multisite directory setup successfully." +msgstr "Nastavení adresáře pro multisite bylo úspěšné." + +msgid "Standard installation selected." +msgstr "Byla vybrána standardní instalace." + +msgid "Install Steps" +msgstr "Instalační kroky" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Chceme se ujistit, že je Vaše instalace Galerie bezpečná. Soubor config.php, který byl " +"upraven instalátorem, mohou editovat další uživatelé. Tomu odpovídá oprávnění pro Unixovou " +"skupinu \"other person\" (ostatní uživatelé). Před dokončením byste měli změnit oprávnění " +"pro tento soubor tak, aby do něj ostatní uživatelé nemohli zapisovat. Aktuální mod pro " +"soubor config.php je %s. Doporučujeme následující:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Chceme se ujistit, že je Vaše instalace Galerie bezpečná. V adresáři obsahujícím config.php, " +"který byl upraven instalátorem, mohou ostatní uživatelé zapisovat nebo mazat soubory. Před " +"dokončením byste měli změnit oprávnění pro tento soubor tak, aby do něj ostatní uživatelé " +"nemohli zapisovat. Aktuální mod pro soubor config.php je %s. Doporučujeme následující:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Pokud opravdu chcete pokračovat, můžete. Nicméně doporučujeme obětovat chvilku k tomu, " +"přesvědčit se o bezpečnosti instalace." + +msgid "We've verified that your config.php is secure." +msgstr "Zkontrolovali jsme, že nastavení souboru config.php je bezpečné." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Prosím přečtěte si %1$sBezpečnostního průvodce Galerií%3$s. Pro stručný přehled se podívejte " +"na %2$skrátký seznam%3$s v bezpečnostním průvodci." + +msgid "Check Again" +msgstr "Zkontrolovat znovu" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Galerie potřebuje adresář pro ukládání Vašich obrázků. Námi vybraný adresář bude pracovat " +"správně, ale jeho umístění nebo současný název nezaručuje maximální bezpečnost. Buď zvolte " +"nový adresář nenacházející se v %skořenový adresář%s nebo přidejte náhodný řetězec na konec " +"názvu adresáře (např. %s)" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Pro maximální bezpečnost byste měli vybrat adresář, který není %sdostupný z webu%s. Není-li " +"to možné, zadejte pro tento adresář náhodné jméno." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Pokud jste vybrali náhodný název nebo zůstaváte u dříve zvoleného, prosím potvrďte Vaši " +"volbu." + +msgid "Yes, please omit the security check:" +msgstr "Ano, prosím přeskočit bezpečnostní kontrolu:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Toto je multisite instalace. Nezapomeňte, že každá multisite potřebuje svoje vlastní " +"úložište." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Pokud používáte moderní prohlížeč, pokusíme se automaticky dokončit zadávanou cestu. Pokud " +"tedy nevíte přesně, kde vytvořit g2data adresář, může Vám tato funkce pomoci." + +msgid "The directory you entered is read only" +msgstr "Zadaný adresář není zapisovatelný" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Při vytváření adresářové struktury v zadaném adresáři došlo k chybě." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Adresář úložiště je %sdostupný z webu%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Nelze ověřit, žda adresář úložiště není %sdostupný z webu%s." + +msgid "Directory path:" +msgstr "Cesta adresáře:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Váš webový server potřebuje do tohoto adresáře zapisovat. Pro konfiguraci se můžete " +"inspirovat těmito příklady." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Poznámka: toto jsou pouze příklady! Možná narazíte na to, že nebudou fungovat tak jak by " +"měly." + +msgid "Unix (with ftp access)" +msgstr "Unix (s FTP přístupem)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"FTP servery i klienti se liší, takže tyto instrukce nemusí být přesné. Pro více informací " +"prohlédněte manuál Vašeho FTP klienta nebo v případě problému kontaktujte Vašeho správce " +"systému." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Na některých serverech nemusí PHP vidět to, co Vy vidíte ve FTP klientovi nebo v shellu. Pro " +"zjednodušení se můžete pokusit o vytvoření PHP skriptu dir.phpv cílovém datovém " +"adresáři, obsahujícího následující kód." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"potom zjistěte a oteřete URL k dir.php (eg, %s). Na této stránce se dozvíte přesnou cestu, " +"kterou zde máte zadat." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Poznámka: tento postup vyžaduje aby byl tento adresář dostupný z webu, což " +"nedoporučujeme z důvodů popsaných výše. Jakmile zjistíte cestu, doporučujeme přesunout " +"datový adresář mimo webový prostor a samozřejmě cestu náležitě upravit." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Poznámka: Po skončení nezapomeňte smazat soubor dir.php!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Více informací o tom, jak zabezpečit Vaše úložiště Galerie, najdete v %sPrůvodci zabezpečení%" +"s." + +msgid "Storage directory set successfully." +msgstr "Adresář úložiště úspěšně nastaven." + +msgid "Success" +msgstr "OK" + +msgid "Warning" +msgstr "Varování" + +msgid "Failed" +msgstr "Chyba" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Pokud používáte webový server Apache, vytvořte v hlavním adresáři Vaší Galerie soubor ." +"htaccess s následujícím obsahem:" + +msgid "Version Check" +msgstr "Kontrola verze" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Toto není čistá instalace a nainstalovaná verze neodpovídá nové." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Nainstalovaná verze nemůže být aktualizovaná na novou!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Nainstalovaná verze je starší než tato nová. Měli byste spustit aktualizaci a ne instalaci!" + +msgid "Currently installed" +msgstr "Aktuálně nainstalovaná" + +msgid "New version" +msgstr "Nová verze" + +msgid "Go to the Upgrader!" +msgstr "Jdi na aktualizaci!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Nyní byste měli zaktualizovat Galerii. Do Vašeho prohlížeče zadejte URL adresu %supgrade/" +"index.php%s v adresáři %s." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Pro instalaci Galerie 2 na Vašem webu je potřeba %d kroků. Tento instalátor Vás jimi provede " +"a pomůže Vám také v dalších krocích vedoucích k dobře fungující Galerii. Jakmile bude nějaký " +"krok dokončen, budete se moci kdykoliv vrátit a udělat potřebné změny. Před instalací si " +"prosím přečtěte %sInstalační nápovědu%s." + +msgid "Select Language:" +msgstr "Vyberte jazyk:" + +msgid "Go" +msgstr "Go" + +msgid "Begin Installation»" +msgstr "Začátek instalace»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL s transakcemi (v3.23.34a a novější)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Instalace jádra Galerie úspěšně dokončena" + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Gratulujeme, úspěšně jste nainstalovali Galerii. Avšak většina z cool vlastností Galerie " +#~ "je dostupná v dalších modulech, které je potřeba nainstalovat a zkonfigurovat. V dalším " +#~ "kroku Vás provedeme výběrem dodatečných modulů a jejich instalací tak, abyste nastavili " +#~ "Galerii přesně podle Vašich potřeb." + +#~ msgid "Install More Modules" +#~ msgstr "Instalovat více modulů" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Předtím než budeme moci pokračovat, měli byste v adresáři %s vytvořit soubor " +#~ "config.php. Zkontrolujte prosím, jestli do něj bude webový server moci zapisovat. " +#~ "Pokud je o systém typu Unix, může pomoci něco jako chmod 666 config.php. Na " +#~ "Windows většínou není nic dalšího potřeba. Pokud jste vytvořili soubor a nastavili " +#~ "oprávnění, můžete pokračovat. Pokud narazíme na nějaký problém, pokusíme se Vám říci jak " +#~ "ho odstranit." + +#~ msgid "Install Other Modules" +#~ msgstr "Instalace dalších modulů" + +#~ msgid "" +#~ "Gallery needs a directory to store your images. The directory we chose for you will work, " +#~ "but is web accessible." +#~ msgstr "" +#~ "Galerie potřebuje adresář, do kterého bude ukládat Vaše fotografie. Adresář, který jsme " +#~ "pro Vás vybrali, bude fungovat, ale je všem dostupný pomocí služby www." + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (nedostatečně otestováno)" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "Gallery needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browsed " +#~ "directly via the web. This is necessary if you wish to have your images accessible only " +#~ "via Gallery [%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "Galerie potřebuje nějaký adresář pro ukládání dat. Do tohoto adresáře bude ukládat " +#~ "obrázky a další důležitá data. Pro zvýšení bezpečnosti doporučujeme umístit tento adresář " +#~ "mimo webové úložiště, čímž nebude přímo viditelný na webu. To je nezbytné, pokud " +#~ "chcete mít obrázky dostupné pouze pomocí Galerie [%s]. Všimněte si, že výchozí adresář " +#~ "tomuto neodpovídá. To je proto, že ho nemůžeme bezpečně odhadnout. Pro lepší bezpečnost " +#~ "byste měli změnit nastavení, například do home adresáře apod. Pokud pro přístup používate " +#~ "pouze FTP, možná nebudete moci toto nastavit." + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get " +#~ "Gallery working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "Je potřeba aby webový server mohl do tohoto adresáře zapisovat. Systém oprávnění závisí " +#~ "na systému a konkrétních podmínkách. Pro fungující Galerii můžete nastavit velmi volná " +#~ "omezení, ale měli byste si ověřit bezpečnost tohoto řešení a případně to konzultovat se " +#~ "správcem tohoto serveru. Pro první nastavení můžete použít následující příklady." + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "To se někdy nazývá také jako image firewall." + +#~ msgid "You must have the ODBC module installed" +#~ msgstr "Musíte mít nainstalovaný ODBC modul" + +#~ msgid "Finished" +#~ msgstr "Dokončeno" + +#~ msgid "Installation Status" +#~ msgstr "Stav instalace" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "SQL testovací soubor \"%s\" nenalezen." diff --git a/Source/gallery2/install/po/da.po b/Source/gallery2/install/po/da.po new file mode 100644 index 0000000..33588ba --- /dev/null +++ b/Source/gallery2/install/po/da.po @@ -0,0 +1,1124 @@ +# $Id: da.po 16607 2007-06-14 18:54:55Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Lasse Bang Mikkelsen , 2004. +# Allan Beaufour , 2005. +# - Bjørn Graabek +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-14 11:39-0700\n" +"PO-Revision-Date: 2006-04-03 11:30+0200\n" +"Last-Translator: Bjorn Graabek \n" +"Language-Team: Danish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Unknown" +msgstr "Ukendt" + +msgid "Admin User Setup" +msgstr "" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Galleri administrator" + +msgid "Authenticate" +msgstr "" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Fejl: kunne ikke finde login.txt. Placér venligst filen i din %s/ " +"mappe." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" + +msgid "Create Config File" +msgstr "Opret konfigurationsfil" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Filen config.php findes ikke i din %s mappe" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" + +msgid "Database Setup" +msgstr "Database opsætning" + +msgid "You must have the MySQL PHP module installed" +msgstr "Du skal have MySQL PHP modulet installeret" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Du skal have MySQL Improved PHP modulet installeret" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Du skal have ibm_db2 PHP modulet installeret" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Du skal have PostgreSQL PHP modulet installeret" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Du skal have Oracle OCI8 PHP modulet installeret" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Du skal have Component Object Model(COM) PHP modulet installeret" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "" + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a og nyere)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versioner før v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x og nyere" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i og nyere)" + +#, fuzzy +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v8.2 og nyere)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "Færdiggører installationen" + +msgid "Install Gallery Core" +msgstr "Installér Gallery kerne" + +msgid "Installing the core module" +msgstr "Installerer kernemodulet" + +msgid "Unable to initialize our Gallery data" +msgstr "" + +msgid "Unable to communicate with the database" +msgstr "" + +msgid "Unable to load the core module" +msgstr "" + +msgid "Unable to install the core module" +msgstr "" + +msgid "Unable to activate the core module" +msgstr "" + +msgid "Unable to commit database transaction" +msgstr "" + +msgid "Core module is only partially installed." +msgstr "" + +msgid "Install Plugins" +msgstr "Installér plugins" + +msgid "Unable to initialize our Gallery session" +msgstr "" + +#, c-format +msgid "Unable to load the %s module" +msgstr "" + +msgid "Installing modules" +msgstr "" + +#, c-format +msgid "Unable to install the %s module" +msgstr "" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "" + +msgid "Unable to get the module list" +msgstr "" + +msgid "Other" +msgstr "Andet" + +msgid "Installation Type" +msgstr "" + +msgid "Check Security" +msgstr "Kontroller sikkerhed" + +msgid "Storage Setup" +msgstr "" + +msgid "System Checks" +msgstr "Systemcheck" + +msgid "Performing system checks" +msgstr "Udfører systemcheck" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" + +msgid "PHP Version" +msgstr "PHP version" + +msgid "FILE directive supported" +msgstr "" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "Safe mode deaktiveret" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "exec() tilladt" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() tilladt" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "Hukommelsesbegrænsning" + +msgid "no limit" +msgstr "ingen begrænsning" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "putenv() tilladt" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Fejl: Der skal være mindst et tema i %s mappen!" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "Velkommen" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "Administrator brugernavn" + +msgid "Please enter a valid user name" +msgstr "Indtast venligst et gyldigt brugernavn" + +msgid "Please enter a password" +msgstr "Indtast venlist et kodeord" + +msgid "Password" +msgstr "Adgangskode" + +msgid "Setup password" +msgstr "Indstil kodeord" + +msgid "(type again)" +msgstr "(indtast igen)" + +msgid "Admin email address" +msgstr "Administrator email-adresse" + +msgid "Please enter a valid email address" +msgstr "Indtast venligst en gyldig email-adresse" + +msgid "Admin full name (optional)" +msgstr "Administrators fulde navn (valgfri)" + +msgid "Missing password! Please enter the same password twice" +msgstr "" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Opret" + +msgid "Save" +msgstr "Gem" + +msgid "Admin user info entered successfully." +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "Godkend mig" + +msgid "Authentication successful!" +msgstr "Godkendelse lykkedes!" + +msgid "Erase data for a clean install" +msgstr "" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "Annuller" + +msgid "Erase all data" +msgstr "Slet alle data" + +msgid "Please fix this error and try again." +msgstr "" + +msgid "Try Again" +msgstr "Prøv igen" + +msgid "Create a config file" +msgstr "Opret en config fil" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (med skal adgang)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Opret config fil" + +msgid "Config file created successfully." +msgstr "Config fil oprettet korrekt." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "Database type:" + +msgid "DB Hostname:" +msgstr "DB værtsnavn:" + +msgid "DB Username:" +msgstr "DB brugernavn:" + +msgid "DB Password:" +msgstr "DB kodeord:" + +msgid "DB Name:" +msgstr "DB navn:" + +msgid "Table Prefix:" +msgstr "Table præfiks:" + +msgid "Column Prefix:" +msgstr "Kolonne præfiks:" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "" + +msgid "Reuse Existing Tables" +msgstr "Genbrug eksisterende tabeller" + +msgid "Database set up successfully." +msgstr "" + +msgid "Finished!" +msgstr "Færdig!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "Gå til mit Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "Installationshjælp" + +msgid "Start Over" +msgstr "Start forfra" + +msgid "Error installing Gallery Core" +msgstr "" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "Navn" + +msgid "Version" +msgstr "Version" + +msgid "Description" +msgstr "Beskrivelse" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "(af)markér alle" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "" + +msgid "Activate Selected Modules" +msgstr "Aktiver valgte moduler" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modulet %s blev installeret, men kræver konfiguration for at blive aktiveret" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Aktiverede module %s korrekt" + +msgid "Activate More Modules" +msgstr "Aktivér flere moduler" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Fortsæt til trin %d»" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "Velkommen til Gallery installationen" + +#, c-format +msgid "Install %d%% complete" +msgstr "Installationen %d%% færdig" + +msgid "Redo this step" +msgstr "Omgør dette trin" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: dine fotosdit websted" + +#, c-format +msgid "Missing files (%d)" +msgstr "Manglende filer (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "Ændrede filer (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "Gamle filer (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "Der opstod fejl. Se venligst beskederne nedenfor." + +msgid "Please select the installation type" +msgstr "Vælg venligst installationstypen" + +msgid "Standard installation" +msgstr "Standard installation" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "Fler-websteds installation" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "Du skal indtaste en mappe" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "Vælg mappe" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "" + +msgid "Install Steps" +msgstr "Installationstrin" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "Kontrollér igen" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "Mappesti:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "Unix (med ftp adgang)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "" + +msgid "Success" +msgstr "Success" + +msgid "Warning" +msgstr "Advarsel" + +msgid "Failed" +msgstr "Fejl" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "Versionscheck" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "Aktuelt installeret" + +msgid "New version" +msgstr "Ny version" + +msgid "Go to the Upgrader!" +msgstr "" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "Vælg sprog:" + +msgid "Go" +msgstr "Gå til" + +msgid "Begin Installation»" +msgstr "Begynd installation»" diff --git a/Source/gallery2/install/po/de.po b/Source/gallery2/install/po/de.po new file mode 100644 index 0000000..8776641 --- /dev/null +++ b/Source/gallery2/install/po/de.po @@ -0,0 +1,1410 @@ +# $Id: de.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Georg Rehfeld +# - Frederik Kunz +# - Bananeweizen +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-05-19 01:26+0100\n" +"PO-Revision-Date: 2006-11-06 23:45+0100\n" +"Last-Translator: Andy Staudacher \n" +"Language-Team: German \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.10.1\n" + +msgid "Unknown" +msgstr "Unbekannt" + +msgid "Admin User Setup" +msgstr "Administratorkonto" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery-Administrator" + +msgid "Authenticate" +msgstr "Authentifizierung" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Fehler: konnte die Datei login.txt nicht finden. Bitte speichern Sie die Datei " +"im Ordner %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Fehler: Ihre Datei login.txt kann nicht gelesen werden. Bitte geben Sie der " +"Gallery Leserechte an der Datei." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Fehler:Der Schlüssel in Ihrer login.txt entspricht nicht der Vorlage. Bitte " +"laden Sie unten einen neuen Authentifizierungs-Text herunter und versuchen Sie es erneut." + +msgid "Create Config File" +msgstr "Konfigurationsdatei erzeugen" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Das Schreiben der Datei config.php in Ihrem Ordner %s ist fehlgeschlagen. Bitte " +"ändern Sie die Zugriffsrechte der Datei. Unter UNIX können Sie das Kommando chmod 666 " +"config.php benutzen, um dieses Problem zu lösen." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Es existiert keine Datei namens config.php im Ordner %s" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Die Datei config.php existiert, ist aber nicht schreibbar. Wenn Sie einen Windows-Server " +"benutzen, müssen Sie möglicherweise die Dateifreigabe für config.php ausschalten und die " +"Zugriffsrechte von Hand einstellen." + +msgid "Database Setup" +msgstr "Datenbank einrichten" + +msgid "You must have the MySQL PHP module installed" +msgstr "Sie müssen das PHP-Modul für MySQL installiert haben" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Sie müssen PHP-Modul für MySQL Improved (mysqli) installiert haben" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Sie müssen das PHP-Modul für ibm_db2 installiert haben" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Sie müssen das PHP-Modul für PostgresSQL installiert haben" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Sie müssen das PHP-Modul für Oracle OCI8 installiert haben" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Sie müssen das PHP-Modul für COM Support installiert haben" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Sie müssen einen Spalten-Präfix angeben (wir empfehlen %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Verwenden Sie nur Buchstaben, Zahlen und Unterstriche im Spalten-Präfix" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Sie müssen einen Tabellen-Präfix angeben (wir empfehlen %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Verwenden Sie nur Buchstaben, Zahlen und Unterstriche im Tabellen-Präfix" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Kann keine Datenbankverbindung des Typs %s erstellen" + +msgid "Unable to connect to database with the information provided." +msgstr "" +"Die Verbindung zur Datenbank konnte mit den angegebenen Informationen nicht hergestellt " +"werden." + +msgid "The database you specified does not exist. Please create it." +msgstr "Die angegebene Datenbank existiert nicht. Bitte erzeugen Sie sie." + +msgid "The database privileges test did not complete successfully." +msgstr "Die Datenbank-Privilegien-Tests konnten nicht erfolgreich abgeschlossen werden." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Es existieren bereits Gallery-Tabellen in dieser Datenbank! Allerdings gibt es keine Datei " +"'versions.dat' in Ihrem G2-Speicherordner, wodurch wir auf einen defekten Zustand von G2 " +"schließen würden. Sie sollten entweder eine Datei versions.dat mit dem korrekten Format " +"erstellen, falls Sie denken, dass G2 funktionstüchtig sein sollte oder eine Neuinstallation " +"wählen. Dadurch würden alle Daten der Datenbank und des Speicherordners gelöscht." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Der G2-Speicherordner enthält eine Datei 'versions.dat' aus einer alten Installation. Es " +"existieren allerdings keine Gallery Datenbank-Tabellen. Wählen Sie die Neuinstallation um " +"alle Daten im Gallery-Speicherordner zu löschen und machen Sie weiter mit dem nächsten " +"Schritt." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Die Gallery-Tabellen existieren in der Datenbank und es gibt eine Datei 'versions.dat' im " +"Gallery-Speicherordner. Die Version der installierten Gallery-Datenbank-Tabellen stimmt " +"jedoch nicht mit der Version der installierten Daten im Gallery-Speicherordner überein. " +"Wählen Sie eine Neuinstallation, um alle Daten in der Datenbank und dem Speicherordner zu " +"löschen und machen Sie weiter mit dem nächsten Schritt." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"In der Datenbank existieren bereits Gallery-Tabellen und der Gallery-Speicherordner scheint " +"intakt zu sein. Sie haben die Wahl, entweder die bestehenden Datenbank-Tabellen und " +"Speicherordner-Dateien zu verwenden oder eine Neuinstallation durchzuführen und damit alle " +"bestehenden Daten in der Datenbank und dem Speicherordner zu löschen." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Die benötigte API um den Speicherordner zu löschen konnte nicht ausgeführt werden. Bitte " +"löschen Sie den Gallery-Speicherordner von Hand." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Die benötigte API um die Gallery-Datenbank-Tabellen zu löschen konnte nicht ausgeführt " +"werden. Bitte säubern Sie die Datenbank von Hand." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Die G2-API konnte nicht geladen werden. Bitte köschen Sie die Gallery-Datenbank-Tabellen und " +"den Speicherordner von Hand." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a und neuer)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (Version 3.23.34a und älter)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x und neuer" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i und neuer)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x und neuer)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 und neuer" + +msgid "Unknown DB type or no known tables information." +msgstr "Unbekannter DB-Typ oder keine bekannte Tabellen-Information." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Konnte keinen nicht-verwendeten Tabellen-Präfix ähnlihc zu \"%s\" finden." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Konnte die Schemadatei \"%s\" nicht öffnen." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Konnte keine DB-Testsequenz erstellen. Schauen Sie in die zurückgegebene Fehlermeldung und " +"in die README.html bezüglich fehlender Privilegien und reinigen SIe die Datenbank." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Der Test, eine DB Testsequenz auszuführen schlug fehl. Überprüfen Sie die zurückgegebenen " +"Fehlermeldungen oder die README.html hinsichtlich fehlender Privilegien und reinigen Sie die " +"Datenbank." + +msgid "Missing SQL statements" +msgstr "Fehlende SQL-Statements" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Überprüfen Sie die zurückgegebene Fehlermeldung und die README.html bezüglich fehlenden " +"Privilegien und dem Reinigen der Datenbank." + +msgid "Finish Installation" +msgstr "Installation abschließen" + +msgid "Install Gallery Core" +msgstr "Gallery-Kern" + +msgid "Installing the core module" +msgstr "Installiere das Kernmodul" + +msgid "Unable to initialize our Gallery data" +msgstr "Gallery-Daten konnten nicht initialisiert werden" + +msgid "Unable to communicate with the database" +msgstr "Kommunikation mit der Datenbank funktioniert nicht" + +msgid "Unable to load the core module" +msgstr "Kernmodul kann nicht geladen werden" + +msgid "Unable to install the core module" +msgstr "Kernmodul kann nicht installiert werden" + +msgid "Unable to activate the core module" +msgstr "Das Kern-Modul konnte nicht aktiviert werden" + +msgid "Unable to commit database transaction" +msgstr "Die Datenbank-Transaktion konnte nicht abgeschlossen werden (commit)" + +msgid "Core module is only partially installed." +msgstr "Das Kernmodul wurde nur teilweise installiert." + +msgid "Install Plugins" +msgstr "Plugins installieren" + +msgid "Unable to initialize our Gallery session" +msgstr "Unsere Gallery-Sitzung konnte nicht initialisiert werden" + +#, c-format +msgid "Unable to load the %s module" +msgstr "%s-Modul kann nicht geladen werden" + +msgid "Installing modules" +msgstr "Installiere Module" + +#, c-format +msgid "Unable to install the %s module" +msgstr "%s-Modul kann nicht installiert werden" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Das Modul '%s' konnte nicht aktiviert werden" + +msgid "Unable to get the module list" +msgstr "Die Modulliste ist nicht abrufbar" + +msgid "Other" +msgstr "Andere" + +msgid "Installation Type" +msgstr "Installations-Typ" + +msgid "Check Security" +msgstr "Sicherheitsprüfung" + +msgid "Storage Setup" +msgstr "Speicherort einrichten" + +msgid "System Checks" +msgstr "Systemprüfungen" + +msgid "Performing system checks" +msgstr "Führe Systemprüfungen durch" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP-Version >= 4.3.0 oder >= 5.0.4" + +# param0 = existing php version, param1 = '', param2 = '' +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Fehler: Gallery 2 benötigt PHP Version 4.3.0 oder neuer oder 5.0.4 oder neuer. Sie haben " +"PHP Version %s installiert. Wenden Sie sich bitte an den Administrator Ihres Webservers und " +"bitten Sie um eine Aufrüstung, verfügbar auf der %sPHP-Webseite%s." + +msgid "PHP Version" +msgstr "PHP-Version" + +msgid "FILE directive supported" +msgstr "FILE-Anweisung unterstützt" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Fehler: die __FILE__ Anweisung Ihrer PHP-Version funktioniert nicht korrekt. Bitten Sie den " +"Administrator Ihres Webservers um Abhilfe oder fragen Sie in den Gallery-Foren nach Hilfe." + +msgid "FILE Directive" +msgstr "FILE-Anweisung" + +msgid "Safe mode disabled" +msgstr "Safe Mode deaktiviert" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Fehler: Ihre Version von PHP ist mit eingeschaltetem 'Safe Mode' konfiguriert. Sie müssen " +"ihn ausschalten, bevor Gallery funktionieren kann." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Reguläre Ausdrücke" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Fehler: Ihre Version von PHP ist ohne %sPerl-kompatible reguläre Ausdrücke%s konfiguriert. " +"Sie müssen diese Funktionen einschalten, bevor Gallery funktionieren kann." + +msgid "exec() allowed" +msgstr "exec() erlaubt" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Warnung: in Ihrem PHP ist die exec()-Funktion deaktiviert (disabled_functions " +"Parameter in php.ini). Sie können so keine Module nutzen, die PHP-externe Programme " +"benötigen (z.B. ImageMagick, NetPBM oder FFMPEG). Diese Einstellung kann nur für den ganzen " +"Server aktiviert werden. Sie oder der Adminstrator des Webservers müssen also die zentrale " +"php.ini-Datei ändern." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() erlaubt" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Warnung: die Funktion set_time_limit() in Ihrem PHP ist deaktiviert (Parameter " +"disabled_functions in php.ini). Gallery kann zwar im Prinzip mit dieser Einstellung " +"arbeiten, aber nicht zuverlässig. Jede Operation, die länger als %d Sekunden dauert, wird " +"fehlschlagen (und in einigen Fällen eine leere Seite anzeigen), möglicherweise führt das " +"auch zu Datenverlust." + +msgid "Filesystem Operations" +msgstr "Dateisystem-Funktionen" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Fehler: Essentielle Dateisystem-Funktionen sind in Ihrer PHP Installation durch den " +"disabled_functions Parameter in Ihrer php.ini deaktiviert. Sie müssen diese " +"Einstellung ändern bevor Sie Gallery in Betrieb nehmen künnen. Diese Funktionen fehlen: %s" + +msgid "Memory limit" +msgstr "Speicherbegrenzung" + +msgid "no limit" +msgstr "keine Begrenzung" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Warnung: Ihr PHP ist für eine Speicher-Beschränkung von %sb konfiguriert (memory_limit Parameter in php.ini). Sie sollten die Beschränkung auf %sMB erhöhen, damit Ihre " +"Gallery korrekt funktioniert." + +msgid "File uploads allowed" +msgstr "Dateiuploads erlaubt" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Warnung: Ihr PHP ist so konfiguriert, dass keine Dateien hochgeladen werden dürfen " +"(Parameter file_uploads in php.ini). Sie müssen diese Option aktivieren, wenn Sie " +"Dateien mittels Web-Browser in Ihre Gallery hochladen wollen." + +msgid "Maximum upload size" +msgstr "Maximale Upload-Größe" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Warnung: Ihre PHP Konfiguration begrenzt die Größe von Datei-Uploads auf %sb (Parameter " +"upload_max_filesize in php.ini). Sie sollten die Begrenzung erhöhen, um das " +"Hochladen größerer Dateien zu erlauben." + +msgid "Maximum POST size" +msgstr "Maximale POST-Größe" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Warnung: Ihre PHP Konfiguration begrenzt die Größe von POST-Formular-Daten auf %sb " +"(Parameter post_max_size in php.ini). Sie sollten die Begrenzung erhöhen, um das " +"Hochladen größerer Dateien zu erlauben." + +msgid "Translation support" +msgstr "Unterstützung für Übersetzung" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Ihr Webserver unterstützt keine Lokalisierung. Um die Unterstützung für zusätzliche Sprachen " +"einzuschalten, teilen Sie bitte Ihrem Systemadministrator mit, dass er PHP mit " +"eingeschalteter %sgettext%s-Option rekonfigurieren soll." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Ihrer PHP-Version fehlt die Funktion %sbind_textdomain_codeset%s. Das könnte dazu führen, " +"dass Gallery einigen Sprachen mit erweitertem Zeichensatz nicht richtig darstellt." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Ihrer PHP-Version fehlt die Funktion %sdngettext%s. Das bedeutet, dass Gallery Worte mit " +"Mehrzahl falsch darstellen wird." + +msgid "Zend compatibility mode" +msgstr "Zend-Kompatibilitätsmodus" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Warnung: Ihr PHP ist für den Zend Modus ze1_compatibility_mode konfiguriert, " +"wodurch PHP abstürzen kann. Klicken Sie hier, um Ihr PHP zu testen. " +"Wenn Sie \"SUCCESS\" (Erfolg) sehen, dann ist Ihr PHP OK. Erhalten Sie einen Fehler oder " +"keine Antwort, dann müssen Sie den ze1_compatibility_mode abschalten, bevor Sie " +"fortfahren." + +msgid "putenv() allowed" +msgstr "putenv() erlaubt" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Warnung: die Funktion putenv() in Ihrem PHP ist deaktiviert (Parameter " +"disabled_functionsin php.ini). Gallery kann zwar im Prinzip mit dieser Einstellung " +"arbeiten, aber auf einigen wenigen Systemen wird Gallery nur in Englisch und der " +"Systemsprache laufen." + +msgid "Output buffering disabled" +msgstr "Ausgabe-Pufferung ausgeschaltet" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Warnung: die Ausgabe-Pufferung in Ihrem PHP ist mittels des %s-Parameters in Ihrer " +"php.ini aktiviert. Gallery kann zwar im Prinzip mit dieser Einstellung arbeiten - und das " +"Herunterladen von Dateien ist damit sogar schneller - aber das anbieten von gro0en Dateien " +"(z.B. großen Videos) in Gallery könnte beeinträchtigt werden und Speicherprobleme könnten " +"auftreten. Falls ini_set() nicht erlaubt ist, kann es bei aktivierter Ausgabe-Pufferung " +"außerdem passieren, dass einige Funktionen, wie beispielsweise Fortschrittsbalken nicht " +"korrekt funktionieren." + +msgid "Gallery file integrity" +msgstr "Gallery-Dateiintegrität" + +msgid "Test skipped due to other errors." +msgstr "Aufgrund anderer Fehler wurde der Test übersprungen." + +msgid "Theme available" +msgstr "Motiv vorhanden" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Fehler: Es muss mindestens ein Motiv im %s Ordner vorhanden sein!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest fehlt oder ist nicht abrufbar." + +msgid "Welcome" +msgstr "Willkommen" + +msgid "Please correct the following errors" +msgstr "Bitte beheben Sie die folgenden Fehler" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Jede Gallery hat zumindest einen Administrator-Benutzer, der vollen Zugriff beim Betrachten " +"und Ändern aller Elemente hat. Bitte wählen Sie einen Benutzernamen und ein Passwort für Ihr " +"Haupt-Administratorkonto. Sie können später auch noch weitere Benutzer hinzufügen." + +msgid "Admin username" +msgstr "Administrator-Benutzername" + +msgid "Please enter a valid user name" +msgstr "Bitte geben Sie einen gültigen Benutzernamen ein" + +msgid "Please enter a password" +msgstr "Bitte geben Sie ein Passwort ein" + +msgid "Password" +msgstr "Passwort" + +msgid "Setup password" +msgstr "Setup-Passwort" + +msgid "(type again)" +msgstr "(erneut eingeben)" + +msgid "Admin email address" +msgstr "Administrator-eMail-Adresse" + +msgid "Please enter a valid email address" +msgstr "Bitte geben Sie eine gültige eMail-Adresse ein" + +msgid "Admin full name (optional)" +msgstr "Vollständiger Name des Administrators (optional)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Fehlendes Passwort! Bitte geben Sie das Passwort zweimal ein" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Die eingegebenen Passworte stimmen nicht überein! Bitte veruchen Sie es erneut." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Da Sie die bestehenden Datenbank-Tabellen wiederverwenden, ist dies keine Neuinstallation. " +"Somit wird nur das Setup-Passwort, nicht jedoch das Passwort des Administrators geändert. Um " +"das Passwort des Administrators zu ändern, verwenden Sie bitte die Passwort-" +"Wiederherstellungsfunktion der Gallery." + +msgid "Create" +msgstr "Erstellen" + +msgid "Save" +msgstr "Speichern" + +msgid "Admin user info entered successfully." +msgstr "Administrator-Benutzerinformationen erfolgreich eingetragen." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Um die Installation fortzusetzen müssen wir sicherstellen, dass Sie auch wirklich der sind, " +"für den Sie sich ausgeben. Der beste Weg das zu erkennen ist, Sie zu bitten, eine " +"Veränderung im Gallery-Ordner vorzunehmen. So können wir feststellen, dass Sie über die " +"notwendigen Berechtigungen verfügen. Also bitten wir Sie darum, eine neue Textdatei namens " +"login.txt im Ordner %s auf Ihrem Webserver zu erstellen (das ist " +"der selbe Ordner, in dem auch main.php liegt). Sie muss die folgende, zufällig generierte " +"Zeichenfolge enthalten:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Um Ihnen dadurch möglichst wenig Aufwand zu machen, haben wir eine %skorrekte Version von " +"login.txt%s für Sie vorbereitet. Laden Sie die Datei herunter und kopieren Sie sie in den " +"Ordner %s. Dann kann es losgehen." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Wenn Sie die Datei erzeugt haben, klicken Sie bitte unten um fortzufahren." + +msgid "Authenticate Me" +msgstr "Authentifiziere mich" + +msgid "Authentication successful!" +msgstr "Authentifizierung erfolgreich!" + +msgid "Erase data for a clean install" +msgstr "Alle Daten löschen um eine Neuinstallation vorzunehmen" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Sind Sie sicher, dass Sie alle Dateien in Ihrem Gallery-Speicherordner und alle Daten in " +"Ihrer Gallery-Datenbank löschen wollen?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Beim Löschen der Daten aus der Datenbank und dem Speicherverzeichnis ist ein Fehler " +"aufgetreten. Die Fehlermeldung lautet:" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Erase all data" +msgstr "Alle Daten löschen" + +msgid "Please fix this error and try again." +msgstr "Bitte beheben Sie diesen Fehler und versuchen Sie es erneut." + +msgid "Try Again" +msgstr "Versuchen Sie es erneut" + +msgid "Create a config file" +msgstr "Eine Konfigurationsdatei erstellen" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Jetzt müssen wir alle Informationen, die Sie eingegeben haben, in einer Datei namens " +"config.php in Ihrem Ordner %s speichern. Dies ist eine sehr wichtige Datei, " +"welche Gallery sämtliche zur Funktion erforderlichen Informationen zur Verfügung stellt. " +"Nach dem Erzeugen können Sie die Datei durchlesen und nötigenfalls ändern." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Bevor die Installation weitergeführt werden kann sollten Sie eine leere Datei mit dem Namen " +"config.php in dem %s Ordner erstellen. Sie müssen sicherstellen, dass der " +"Webserver Schreibrechte für diese Datei hat." + +msgid "Unix (with shell access)" +msgstr "Unix (mit Shell-Zugang)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Für Windows sind normalerweise keine speziellen Schritte notwendig." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Falls Sie die Datei erstellt haben und die Dateirechte erfolgreich gesetzt haben, können Sie " +"mit der Installation fortfahren." + +msgid "Create config file" +msgstr "Konfigurationsdatei erstellen" + +msgid "Config file created successfully." +msgstr "Konfigurationsdatei erfolgreich erstellt." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Wir haben alle von Ihnen angegebenen Informationen in eine Datei names config.php in " +"Ihrem gallery2-Ordner geschrieben. Sie können diese Datei anschauen und Änderungen " +"vornehmen, wenn Sie wollen. Seien Sie aber vorsichtig -- wenn Sie dabei Fehler machen, wird " +"Gallery nicht richtig funktionieren!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Bitte wählen Sie Ihren Datenbank-Typ aus und geben Sie Ihre Datenbank-Zugangsinformationen " +"ein. Der Installer wird die Datenbank für Sie nicht erstellen, Sie müssen diese also selbst " +"anlegen und den Datenbanknamen hier angeben. Wenn Sie die Gallery in eine Datenbank " +"installieren, die bereits Tabellen enthält, sorgen die Tabellen- und Spalten-Präfixe dafür, " +"dass Ihre Gallerydaten nicht mit bestehenden Daten kollidieren." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Dies ist eine Multisite-Installation. Vergessen Sie nicht, dass jede Multisite ihre eigenen " +"Datenbanktabellen braucht. Wählen Sie entweder unterschiedliche Datenbanken oder " +"unterschiedliche Tabellen-Präfixe für jede Multisite aus!" + +msgid "Database type:" +msgstr "Datenbank-Typ:" + +msgid "DB Hostname:" +msgstr "DB-Rechnername:" + +msgid "DB Username:" +msgstr "DB-Benutzername:" + +msgid "DB Password:" +msgstr "DB-Passwort:" + +msgid "DB Name:" +msgstr "DB-Name:" + +msgid "Table Prefix:" +msgstr "Tabellen-Präfix:" + +msgid "Column Prefix:" +msgstr "Spalten-Präfix:" + +msgid "We received the following database related errors:" +msgstr "Wir haben die folgenden datenbankbezogenen Fehler erhalten:" + +msgid "Erase Data For A Clean Install" +msgstr "Alle Daten löschen um eine Neuinstallation durchzuführen" + +msgid "Reuse Existing Tables" +msgstr "Vorhandene Tabellen verwenden" + +msgid "Database set up successfully." +msgstr "Datenbank erfolgreich eingerichtet." + +msgid "Finished!" +msgstr "Abgeschlossen!" + +# param0 = , param1 = +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Glückwunsch! Die Installation von Gallery 2 ist abgeschlossen! Also... war doch gar nicht so " +"schwierig, oder? Jetzt wird es Zeit, ein paar Photos hochzuladen!" + +msgid "Go to my Gallery!" +msgstr "Gehe zu meiner Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Sie können nun Ihre neue Gallery anschauen. Geben Sie in Ihrem Browser die URL für %smain." +"php%s in Ihrem %s-Ordner ein." + +msgid "Installer Help" +msgstr "Installationshilfe" + +msgid "Start Over" +msgstr "Neu anfangen" + +msgid "Error installing Gallery Core" +msgstr "Fehler bei der Installation des Gallery-Kerns" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" +"Bei der Installation des Kernmoduls ist etwas schiefgelaufen. Was soll jetzt geschehen?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Gehen Sie zum Installer-Schritt 'Systemprüfungen' und stellen Sie sicher, dass alle " +"Prüfungen 'erfolgreich' anzeigen. Ein häufiges Problem ist, dass die Warnung zur " +"Dateiintegrität ignoriert wurde." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Falls es keine Warnungen oder Fehler bei den Systemprüfungen gibt, leeren Sie Ihren " +"Speicherordner, löschen Sie die Datenbank-Tabellen und starten Sie den Installationsvorgang " +"erneut (befolgen Sie noch einmal alle Schritte)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Bitte besuchen Sie die %sG2 FAQ%s und lesen Sie den %sAbschnitt bekannte Probleme in der " +"Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Falls das Problem weiterhin besteht, kopieren Sie den Installations-Log, welcher sich unter %" +"s befindet und hängen Sie ihn (als install.log.zip) an einen neuen Forumsbeitrag im %sG2 " +"Support Forum%s. Oder fügen Sie, falls möglich, einfach einen Verweis zur install.log in den " +"Forumsbeitrag ein, damit das Support-Team falls nötig den Log analysieren kann." + +msgid "Stack Trace:" +msgstr "Stack-Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery-Kern erfolgreich installiert." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Wir haben erfolgreich die Kernfunktionen der Gallery installiert. Obwohl nun alles Wichtige " +"funktioniert, sollten Sie den Installer fortsetzen und einige der optionalen Module " +"installieren, um die für Sie passenden Funktionen zu Ihrer Gallery-Installation hinzuzufügen." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Die folgenden Module können für Sie automatisch installiert und aktiviert werden. Sie " +"sollten zumindest einges der Graphik-Werkzeuge installieren damit Gallery Voransichten für " +"Ihre Bilder erstellen kann. Auf den meisten Systemen funktioniert die automatische " +"Installation problemlos. Dennoch kann es bei einigen Systemen zu Problemen kommen. Sie " +"können in der Site-Administration jederzeit neue Module aktivieren und solche deaktivieren, " +"die Sie hier ausgewählt haben. Die hier getroffenen Entscheidungen sind also nicht dauerhaft " +"bindend." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Bei einigen Modulen könnte die automatische Installation fehlschlagen. Das ist OK. " +"Normalerweise bedeutet das, dass diese ein paar Konfigurationseinstellungen brauchen, welche " +"Sie in der Site-Administration vergeben können" + +msgid "Name" +msgstr "Modulname" + +msgid "Version" +msgstr "Version" + +msgid "Description" +msgstr "Beschreibung" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Inkompatibel zu dieser Gallery Vesion)" + +msgid "(un)check all" +msgstr "alle aus-/abwählen" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Weiter zum Schritt %d ohne Aktivierung»" + +msgid "Activate Selected Modules" +msgstr "Ausgewählte Module aktivieren" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"Das Modul '%s' wurde installiert, aber es muss noch konfiguriert werden, bevor es " +"aktiviert werden kann" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Melden Sie sich als Administrator an, sobald Sie die Installation abgeschlossen haben und " +"öffnen Sie die Site-Administration. Gehen Sie zur Module-Ansicht und konfigurieren Sie die " +"oben aufgelisteten Module." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Das Modul '%s' wurde erfolgreich aktiviert" + +msgid "Activate More Modules" +msgstr "Noch mehr Module aktivieren" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Weiter zum Schritt %d»" + +msgid "Debug Output" +msgstr "Fehler-Ausgabe" + +msgid "Welcome to the Gallery Installer" +msgstr "Willkommen zum Gallery-Installer" + +# param0 = integer percentage +#, c-format +msgid "Install %d%% complete" +msgstr "Installation zu %d%% fertig" + +msgid "Redo this step" +msgstr "Diesen Schritt wiederholen" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: Ihre Photos auf Ihrer Webseite" + +#, c-format +msgid "Missing files (%d)" +msgstr "Fehlende Dateien (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Beachten Sie: Sie verwenden die SVN-Version von Gallery, also kann es sein, dass hier vor " +"kurzem entfernte Dateien stehen. Sie können diese wahrscheinlich gefahrlos ignorieren." + +#, c-format +msgid "Modified files (%d)" +msgstr "Veränderte Dateien (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Beachten Sie: Sie verwenden die SVN-Version von Gallery, also sind veränderte Dateien zu " +"erwarten. Sie können diese wahrscheinlich ignorieren, aber um sicher zu gehen, sollten Sie " +"ein 'svn update' ausführen, bevor Sie fortsetzen." + +#, c-format +msgid "Old files (%d)" +msgstr "Veraltete Dateien (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Diese Dateien gehören nicht mehr zur Gallery. Wahrscheinlich machen sie keine Probleme, aber " +"es ist dennoch eine gute Idee, sie zu entfernen, um Ihre Installation sauber zu halten." + +msgid "Errors occurred. Please see messages below." +msgstr "Es sind Fehler aufgetreten. Bitte lesen Sie die folgenden Meldungen." + +msgid "Please select the installation type" +msgstr "Bitte wählen Sie den Installationstypen aus" + +msgid "Standard installation" +msgstr "Standard-Installation" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Dies ist der standardmäßige Installationstyp. Wählen Sie diese Installation, falls Sie eine " +"neue Gallery in den Ordner %s installieren wollen, die dann unter der URL %s abrufbar sein " +"wird." + +msgid "Multisite installation" +msgstr "Multisite-Installation" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery kann mehrere unabhängige Auftritte (Fotogalerien) mit nur einer einzigen Code-" +"Installation (Codebase) bedienen. Wählen Sie diese Installation, wenn Sie eine neue Gallery " +"auf dem selben Webserver aber in einem anderen Pfad, einer anderen Subdomäne oder URL-Domäne " +"installieren wollen." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Die Multisites haben keine gemeinsamen Alben, Photos, Benutzer oder dergleichen. Jede " +"einzelne braucht Ihre eigene Datenbank und Ihren einen Speicherordner. Für mehr " +"Informationen und Erklärungen hinsichtlich Multisite-Installationen, besuchen Sie die %s " +"Seite." + +msgid "You must enter a directory" +msgstr "Sie müssen einen Ordner angeben" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Der von Ihnen geöffnete Ordner ist der Codebase-Ordner. Falls Sie eine Gallery in das " +"Codebase-Verzeichnis installieren wollen, wählen Sie die Standard-Installation. Wenn Sie " +"eine Multisite installieren wollen, wählen Sie einen anderen Ordner." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Das angegebene Dateiverzeichnis existiert nicht oder der Zugang wird von Ihrem Webserver " +"untersagt. Die Konfiguration Ihres Webservers erlaubt nur den Zugriff auf die folgenden " +"Verzeichnisse. Sie müssen ein Verzeichnis angeben, welches in einem dieser erlaubten Pfade " +"liegt. Alternativ kann die open_basedir Einstellung in Ihrer PHP Konfiguration " +"geändert werden, um ein neues Verzeichnis zu erlauben." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Falls sich Ihre Multisite-Installation auf einem anderen Virtual Host befindet, sollten Sie " +"den Systemadministrator kontaktieren und eine Änderung der PHP open_basedir " +"Einstellung beantragen, damit die verschiedenen Virtual Hosts Zugriff aufeinander haben." + +msgid "The directory you entered does not exist" +msgstr "Der von Ihnen angegebene Ordner existiert nicht" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Auf den von Ihnen angegebenen Ordner kann nicht zugegriffen werden. Ändern Sie die " +"Zugriffsrechte so, dass der Webserver diesen Ordner lesen kann." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Multisite-Dateien können nicht erzeugt werden. Stellen Sie sicher, dass die folgenden " +"Dateien Schreibrechte haben." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Alle Multisites werden von dieser einen, zentralen Codebase installiert." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Geben Sie unten ein Verzeichnis für die neue Multisite ein. Der Pfad muss sich von dem " +"dieser Codebase-Installation unterscheiden:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Der Ordner muss Schreibrechte für Ihren Web-Server/PHP-Benutzer besitzen oder die folgenden " +"Dateien mit Schreibrechten enthalten:" + +msgid "Select Directory" +msgstr "Ordner auswählen" + +msgid "Multisite directory setup successfully." +msgstr "Multisite-Ordner erfolgreich eingerichtet." + +msgid "Standard installation selected." +msgstr "Standard-Installation ausgewählt." + +msgid "Install Steps" +msgstr "Installationsschritte" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Wir wollen sicherstellen, dass Ihre Gallery sicher ist. Die von diesem Installer geänderte " +"Datei config.php ermöglicht zur Zeit anderen Personen Schreibzugriff. Dies ist notwendig, " +"weil der Installer als eben eine solche 'andere Person' gilt, wenn es um Unix-Dateizugriffe " +"geht. Bevor Sie die Installation abschließen, sollten Sie die Berechtigungen dieser Datei so " +"abändern, dass andere Benutzer keinen Schreibzugriff mehr darauf haben. Momentan hat Ihre " +"config.php den Modus %s. Wir empfehlen Ihnen, folgendes zu tun:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Wir wollen sicherstellen, dass Ihre Gallery sicher ist. Der Ordner, der die Datei config.php " +"enthält, ermöglicht zur Zeit anderen Personen das Löschen und Ändern von Dateien. Bevor Sie " +"die Installation abschließen, sollten Sie die Berechtigungen dieses Ordners so abändern, " +"dass andere Benutzer keinen Schreibzugriff mehr darauf haben. Wir empfehlen Ihnen, folgendes " +"zu tun:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Falls Sie wirklich weitermachen möchten, können Sie das tun. Wir empfehlen Ihnen jedoch, " +"sich etwas Zeit zu nehmen um sicherzustellen, dass alles sicher ist." + +msgid "We've verified that your config.php is secure." +msgstr "Wir haben festgestellt, dass Ihre config.php sicher ist." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Bitte lesen Sie die %1$sGallery-Sicherheitshinweise%3$s. Für einen kurzen Überblick schauen " +"Sie sich bitte die in diesen Sicherheitshinweisen enthalte %2$skurze Checkliste%3$s an." + +msgid "Check Again" +msgstr "Erneut prüfen" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery braucht ein Verzeichnis um die Bilder zu speichern. Das Verzeichnis, das wir für " +"Sie gewählt haben, wird funktionieren, aber die Lage oder der derzeitige Name bieten nicht " +"maximale Sicherheit. Wählen Sie entweder ein Verzeichnis ausserhalb des %" +"sWurzelverzeichnisses Ihrer Website%s oder fügen sie eine zufällig gewählte Zeichenfolge am " +"Ende des Ordnernamens an (z.B. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Für maximale Sicherheit sollten Sie einen Ordner auswählen, der nicht %saus dem Web " +"erreichbar%s ist. Falls dies nicht möglicht ist, sollte ein beliebiger Name für den Ordner " +"gewählt werden, welcher nicht leicht zu erraten ist." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Bitte bestätigen Sie Ihre Wahl falls Sie einen einen schwer zu erratenden Ordnernamen wählen " +"oder es bevorzugen den angegebenen Ordnernamen zu benutzen." + +msgid "Yes, please omit the security check:" +msgstr "Ja, bitte keine Sicherheitskontrolle durchführen:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Dies ist eine Multisite-Installation. Beachten Sie, dass jede Multisite ihren eigenen " +"Speicherordner braucht." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Falls Sie einen modernen Browser verwenden, werden wir versuchen, jeden von Ihnen hier " +"eingegebenen Pfad automatisch zu vervollständigen. Sollten Sie also Probleme haben, den " +"richtigen Pfad für Ihr g2data-Ordner zu finden, experimentieren Sie mit den Pfaden in der " +"Eingabezeile unten und schauen Sie, welche Vervollständigungen Ihnen angeboten werden." + +msgid "The directory you entered is read only" +msgstr "Der von Ihnen angegebene Ordner ist schreibgeschützt" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Beim Erzeugen der Ordner-Struktur im Ordner zur Datenspeicherung ist ein Fehler aufgetreten." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Der angegebene Ordner ist %saus dem Web erreichbar%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" +"Der angegebene Ordner ist möglicherweise %saus dem Web erreichbar%s. Es konnte keine " +"Überprüfung durchgeführt werden." + +msgid "Directory path:" +msgstr "Pfad des Ordners:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Ihr Webserver muss über Schreibberechtigungen für diesen Ordner verfügen. Folgen Sie diesen " +"Beispielen, um dies zu erledigen." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Beachten Sie: Dies sind nur Beispiele! Es kann gut sein, dass Sie auf Ihrem System nicht " +"richtig funktionieren." + +msgid "Unix (with ftp access)" +msgstr "Unix (mit FTP-Zugang)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Beachten Sie, dass FTP-Server und -Programme unterschiedlich sind, so dass diese Anleitung " +"bei Ihnen eventuell nicht funktioniert. Schauen Sie in das Handbuch Ihres FTP-Programms oder " +"bitten Sie Ihren Systemadministrator um Hilfe, falls Sie Probleme haben." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Bei einigen Webhostern entsprechen die Pfade, die Sie in der Shell oder mittels FTP sehen " +"nicht denen, die PHP sieht. Um den echten Pfad Ihres Speicherordners herauszufinden, können " +"Sie versuchen eine Datei namens dir.php zu erstellen, die den folgenden Code enthält. " +"Legen Sie diese Datei in Ihrem Speicherordner ab." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"finden Sie dann die URL Ihrer dir.php heraus und öffnen Sie diese im Web-Browser (z.B. %s). " +"So finden Sie den richtigen Pfad heraus, den Sie hier eintragen müssen." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Beachten Sie: Dies erfordert, dass Ihr Speicherordner über die Webseite zugänglich " +"ist, wovon wir abraten, da dies unsere Image Firewall umgeht. Sobald Sie auf diese Art den " +"Pfad herausfinden, empfehlen wir Ihnen, den Speicherordner aus dem von der Webseite " +"zugänglichen Bereich zu verschieben und dann hier den Pfad anzupassen." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" +"Beachten Sie: Vergessen Sie nicht, die Datei dir.php zu löschen, wenn Sie fertig sind!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Für Informationen, wie Sie Ihren Gallery-Speicherordner absichern können, lesen Sie bitte " +"die %sSicherheitshinweise%s." + +msgid "Storage directory set successfully." +msgstr "Ordner zur Datenspeicherung erfolgreich eingerichtet." + +msgid "Success" +msgstr "Erfolgreich" + +msgid "Warning" +msgstr "Warnung" + +msgid "Failed" +msgstr "Fehlgeschlagen" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Falls Sie Apache verwenden, erzeugen Sie eine Datei namens .htaccess mit dem folgenden " +"Inhalt im Hauptordner Ihrer Gallery:" + +msgid "Version Check" +msgstr "Versionsprüfung" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Dies ist keine Neuinstallation und die installierte Version stimmt nicht mit der neuen " +"Version überein." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Die installierte Version kann nicht auf die neue Version aktualisiert werden!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Die installierte Version ist älter als die neue Version. Sie sollten das " +"Aktualisierungsprogramm und nicht den Installer verwenden!" + +msgid "Currently installed" +msgstr "Momentan installiert" + +msgid "New version" +msgstr "Neue Version" + +msgid "Go to the Upgrader!" +msgstr "Starte das Aktualisierungsprogramm!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Sie sollten das Aktualisierungsprogramm starten. Geben Sie in Ihrem Browser die URL %s/" +"upgrade/index.php%s für den Ordner %s ein." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Um Gallery 2 auf Ihrem Webserver zu installieren, müssen Sie %d Schritte durchlaufen. Dieser " +"Installer wird Sie durch die einzelnen Schritte führen und Ihnen dabei Hilfestellung " +"leisten, falls weitere Schritte erforderlich sind um Ihre Gallery zum Laufen zu bringen. " +"Sobald ein Schritt abgeschlossen ist, können Sie jederzeit zurückgehen und Änderungen " +"vornehmen. Bitte lesen Sie die %sInstallationshilfe%s, bevor Sie weitermachen." + +msgid "Select Language:" +msgstr "Sprache auswählen:" + +# Badly chosen msgid: Button to change to a different language +msgid "Go" +msgstr "Sprache einstellen" + +msgid "Begin Installation»" +msgstr "Installation starten»" diff --git a/Source/gallery2/install/po/en_GB.po b/Source/gallery2/install/po/en_GB.po new file mode 100644 index 0000000..6a3af6f --- /dev/null +++ b/Source/gallery2/install/po/en_GB.po @@ -0,0 +1,1349 @@ +# $Id: en_GB.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"POT-Creation-Date: 2006-02-24 12:02-0800\n" +"PO-Revision-Date: 2007-03-06 12:02-0800\n" +"Last-Translator: Stephen Ryan \n" +"Language-Team: British \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Unknown" + +msgid "Admin User Setup" +msgstr "Admin User Setup" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery Administrator" + +msgid "Authenticate" +msgstr "Authenticate" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." + +msgid "Create Config File" +msgstr "Create Config File" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "The config.php file does not exist in your %s directory" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." + +msgid "Database Setup" +msgstr "Database Setup" + +msgid "You must have the MySQL PHP module installed" +msgstr "You must have the MySQL PHP module installed" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "You must have the MySQL Improved PHP module installed" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "You must have the ibm_db2 PHP module installed" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "You must have the PostgreSQL PHP module installed" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "You must have the Oracle OCI8 PHP module installed" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "You must have the Component Object Model(COM) PHP module installed" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "You must specify a column prefix (we recommend %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Use only letters, numbers and underscore in the column prefix" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "You must specify a table prefix (we recommend %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Use only letters, numbers and underscore in the table prefix" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Unable to create a database connection of type %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Unable to connect to database with the information provided." + +msgid "The database you specified does not exist. Please create it." +msgstr "The database you specified does not exist. Please create it." + +msgid "The database privileges test did not complete successfully." +msgstr "The database privileges test did not complete successfully." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a and newer)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versions before v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x and newer" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i and newer)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x and newer)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 and newer" + +msgid "Unknown DB type or no known tables information." +msgstr "Unknown DB type or no known tables information." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Could not find an unused table prefix similar to \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Could not open schema file: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." + +msgid "Missing SQL statements" +msgstr "Missing SQL statements" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." + +msgid "Finish Installation" +msgstr "Finish Installation" + +msgid "Install Gallery Core" +msgstr "Install Gallery Core" + +msgid "Installing the core module" +msgstr "Installing the core module" + +msgid "Unable to initialize our Gallery data" +msgstr "Unable to initialize our Gallery data" + +msgid "Unable to communicate with the database" +msgstr "Unable to communicate with the database" + +msgid "Unable to load the core module" +msgstr "Unable to load the core module" + +msgid "Unable to install the core module" +msgstr "Unable to install the core module" + +msgid "Unable to activate the core module" +msgstr "Unable to activate the core module" + +msgid "Unable to commit database transaction" +msgstr "Unable to commit database transaction" + +msgid "Core module is only partially installed." +msgstr "Core module is only partially installed." + +msgid "Install Plugins" +msgstr "Install Plugins" + +msgid "Unable to initialize our Gallery session" +msgstr "Unable to initialize our Gallery session" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Unable to load the %s module" + +msgid "Installing modules" +msgstr "Installing modules" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Unable to install the %s module" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Unable to activate the %s module" + +msgid "Unable to get the module list" +msgstr "Unable to get the module list" + +msgid "Other" +msgstr "Other" + +msgid "Installation Type" +msgstr "Installation Type" + +msgid "Check Security" +msgstr "Check Security" + +msgid "Storage Setup" +msgstr "Storage Setup" + +msgid "System Checks" +msgstr "System Checks" + +msgid "Performing system checks" +msgstr "Performing system checks" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP version >= 4.3.0 or >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." + +msgid "PHP Version" +msgstr "PHP Version" + +msgid "FILE directive supported" +msgstr "FILE directive supported" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." + +msgid "FILE Directive" +msgstr "FILE Directive" + +msgid "Safe mode disabled" +msgstr "Safe mode disabled" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Regular expressions" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." + +msgid "exec() allowed" +msgstr "exec() allowed" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() allowed" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." + +msgid "Filesystem Operations" +msgstr "Filesystem Operations" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." + +msgid "Memory limit" +msgstr "Memory limit" + +msgid "no limit" +msgstr "no limit" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." + +msgid "File uploads allowed" +msgstr "File uploads allowed" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." + +msgid "Maximum upload size" +msgstr "Maximum upload size" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." + +msgid "Maximum POST size" +msgstr "Maximum POST size" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." + +msgid "Translation support" +msgstr "Translation support" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." + +msgid "Zend compatibility mode" +msgstr "Zend compatibility mode" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." + +msgid "putenv() allowed" +msgstr "putenv() allowed" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." + +msgid "Output buffering disabled" +msgstr "Output buffering disabled" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." + +msgid "Gallery file integrity" +msgstr "Gallery file integrity" + +msgid "Test skipped due to other errors." +msgstr "Test skipped due to other errors." + +msgid "Theme available" +msgstr "Theme available" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Error: There must be at least one theme in the %s folder!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest missing or inaccessible." + +msgid "Welcome" +msgstr "Welcome" + +msgid "Please correct the following errors" +msgstr "Please correct the following errors" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." + +msgid "Admin username" +msgstr "Admin username" + +msgid "Please enter a valid user name" +msgstr "Please enter a valid user name" + +msgid "Please enter a password" +msgstr "Please enter a password" + +msgid "Password" +msgstr "Password" + +msgid "Setup password" +msgstr "Setup password" + +msgid "(type again)" +msgstr "(type again)" + +msgid "Admin email address" +msgstr "Admin email address" + +msgid "Please enter a valid email address" +msgstr "Please enter a valid email address" + +msgid "Admin full name (optional)" +msgstr "Admin full name (optional)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Missing password! Please enter the same password twice" + +msgid "The passwords you entered do not match! Please try again." +msgstr "The passwords you entered do not match! Please try again." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." + +msgid "Create" +msgstr "Create" + +msgid "Save" +msgstr "Save" + +msgid "Admin user info entered successfully." +msgstr "Admin user info entered successfully." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Once you've uploaded the file, click below to continue." + +msgid "Authenticate Me" +msgstr "Authenticate Me" + +msgid "Authentication successful!" +msgstr "Authentication successful!" + +msgid "Erase data for a clean install" +msgstr "Erase data for a clean install" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "There was an error erasing the db and storage directory data. Here's the error:" + +msgid "Cancel" +msgstr "Cancel" + +msgid "Erase all data" +msgstr "Erase all data" + +msgid "Please fix this error and try again." +msgstr "Please fix this error and try again." + +msgid "Try Again" +msgstr "Try Again" + +msgid "Create a config file" +msgstr "Create a config file" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." + +msgid "Unix (with shell access)" +msgstr "Unix (with shell access)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "On Windows, you shouldn't have to do anything special." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." + +msgid "Create config file" +msgstr "Create config file" + +msgid "Config file created successfully." +msgstr "Config file created successfully." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" + +msgid "Database type:" +msgstr "Database type:" + +msgid "DB Hostname:" +msgstr "DB Hostname:" + +msgid "DB Username:" +msgstr "DB Username:" + +msgid "DB Password:" +msgstr "DB Password:" + +msgid "DB Name:" +msgstr "DB Name:" + +msgid "Table Prefix:" +msgstr "Table Prefix:" + +msgid "Column Prefix:" +msgstr "Column Prefix:" + +msgid "We received the following database related errors:" +msgstr "We received the following database related errors:" + +msgid "Erase Data For A Clean Install" +msgstr "Erase Data For A Clean Install" + +msgid "Reuse Existing Tables" +msgstr "Reuse Existing Tables" + +msgid "Database set up successfully." +msgstr "Database set up successfully." + +msgid "Finished!" +msgstr "Finished!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" + +msgid "Go to my Gallery!" +msgstr "Go to my Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." + +msgid "Installer Help" +msgstr "Installer Help" + +msgid "Start Over" +msgstr "Start Over" + +msgid "Error installing Gallery Core" +msgstr "Error installing Gallery Core" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Something went wrong when we tried to install the core module. What to do next?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyse it if necessary." + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Installed Gallery Core successfully." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" + +msgid "Name" +msgstr "Name" + +msgid "Version" +msgstr "Version" + +msgid "Description" +msgstr "Description" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Incompatible with this Gallery version)" + +msgid "(un)check all" +msgstr "(un)check all" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Continue to Step %d Without Activating»" + +msgid "Activate Selected Modules" +msgstr "Activate Selected Modules" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "The %s module was installed, but needs configuration to be activated" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Activated the %s module successfully" + +msgid "Activate More Modules" +msgstr "Activate More Modules" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Continue to Step %d»" + +msgid "Debug Output" +msgstr "Debug Output" + +msgid "Welcome to the Gallery Installer" +msgstr "Welcome to the Gallery Installer" + +#, c-format +msgid "Install %d%% complete" +msgstr "Install %d%% complete" + +msgid "Redo this step" +msgstr "Redo this step" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: your photos on your website" + +#, c-format +msgid "Missing files (%d)" +msgstr "Missing files (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." + +#, c-format +msgid "Modified files (%d)" +msgstr "Modified files (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." + +#, c-format +msgid "Old files (%d)" +msgstr "Old files (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." + +msgid "Errors occurred. Please see messages below." +msgstr "Errors occurred. Please see messages below." + +msgid "Please select the installation type" +msgstr "Please select the installation type" + +msgid "Standard installation" +msgstr "Standard installation" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." + +msgid "Multisite installation" +msgstr "Multisite installation" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." + +msgid "You must enter a directory" +msgstr "You must enter a directory" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." + +msgid "The directory you entered does not exist" +msgstr "The directory you entered does not exist" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "Unable to create multisite files. Ensure the files listed below are writeable." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "All multisites are installed from this central code repository (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" + +msgid "Select Directory" +msgstr "Select Directory" + +msgid "Multisite directory setup successfully." +msgstr "Multisite directory setup successfully." + +msgid "Standard installation selected." +msgstr "Standard installation selected." + +msgid "Install Steps" +msgstr "Install Steps" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." + +msgid "We've verified that your config.php is secure." +msgstr "We've verified that your config.php is secure." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." + +msgid "Check Again" +msgstr "Check Again" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." + +msgid "Yes, please omit the security check:" +msgstr "Yes, please omit the security check:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." + +msgid "The directory you entered is read only" +msgstr "The directory you entered is read only" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "There was an error creating the directory structure within the storage directory." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Your storage directory is %sweb accessible%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Unable to verify that the storage directory is not %sweb accessible%s." + +msgid "Directory path:" +msgstr "Directory path:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Note: these are only examples! You may find that they don't work quite right on your system." + +msgid "Unix (with ftp access)" +msgstr "Unix (with ftp access)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Note: Don't forget to delete dir.php when you're done!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." + +msgid "Storage directory set successfully." +msgstr "Storage directory set successfully." + +msgid "Success" +msgstr "Success" + +msgid "Warning" +msgstr "Warning" + +msgid "Failed" +msgstr "Failed" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" + +msgid "Version Check" +msgstr "Version Check" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "This is not a fresh install and the installed version does not match the new version." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "The installed version cannot be upgraded to the new version!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" + +msgid "Currently installed" +msgstr "Currently installed" + +msgid "New version" +msgstr "New version" + +msgid "Go to the Upgrader!" +msgstr "Go to the Upgrader!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." + +msgid "Select Language:" +msgstr "Select Language:" + +msgid "Go" +msgstr "Go" + +msgid "Begin Installation»" +msgstr "Begin Installation»" diff --git a/Source/gallery2/install/po/es.po b/Source/gallery2/install/po/es.po new file mode 100644 index 0000000..4e3b88b --- /dev/null +++ b/Source/gallery2/install/po/es.po @@ -0,0 +1,1381 @@ +# $Id: es.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Oscar Garcia Amor +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-01-26 12:37+0100\n" +"PO-Revision-Date: 2007-01-27 16:49+0100\n" +"Last-Translator: Oscar Garcia Amor \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Desconocido" + +msgid "Admin User Setup" +msgstr "Configuración del Usuario Administrador" + +msgid "admin" +msgstr "administrador" + +msgid "Gallery Administrator" +msgstr "Administrador de Gallery" + +msgid "Authenticate" +msgstr "Autenticar" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Error: no puedo localizar login.txt. Por favor colocalo en tu directorio %" +"s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Error: Tu archivo login.txt no es legible. Por favor da a Gallery permisos de " +"lectura sobre el archivo." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Error: La llave de tu archivo login.txt no coincide de forma correcta. Por " +"favor descarga a continuación una nueva cadena de autenticación e intentalo de nuevo." + +msgid "Create Config File" +msgstr "Crear Archivo de Configuración" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"No es posible escribir en el archivo de configuración config.php en tu directorio %" +"s. Por favor cambia sus permisos. Si estás en un Unix puedes hacer chmod 666 config." +"php para solucionarlo." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "El archivo config.php no existe en tu directorio %s." + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"El archivo config.php existe pero no es posible escribir en el. Si tu servidor es Windows, " +"deberias deshabilitar la compartición de archivos para el config.php y configurar sus " +"permisos manualmente." + +msgid "Database Setup" +msgstr "Configuración de la Base de Datos" + +msgid "You must have the MySQL PHP module installed" +msgstr "Debes tener el módulo MySQL de PHP instalado" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Debes tener el módulo MySQL Improved de PHP instalado" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Debes tener el módulo ibm_db2 de PHP instalado" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Debes tener el módulo PostgreSQL de PHP instalado" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Debes tener el módulo Oracle OCI8 de PHP instalado" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Debes tener el módulo Component Objet Model(COM) de PHP instalado" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Debes especificar un prefijo de columna (te recomendamos %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Usa solo letras, números y guiones bajos en el prefijo de columna" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Debes especificar un prefijo de tabla (te recomendamos %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Usa solo letras, números y guiones bajos en el prefijo de tabla" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "No es posible crear una conexión de base de datos de tipo %s" + +msgid "Unable to connect to database with the information provided." +msgstr "No es posible conectar a la base de datos con la información dada." + +msgid "The database you specified does not exist. Please create it." +msgstr "La base de datos que has especificado no existe. Por favor creala." + +msgid "The database privileges test did not complete successfully." +msgstr "La comprobación de privilegios de la base de datos no se completó con éxito." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"¡Las tablas de Gallery ya existen en la base de datos! Pero no hay el archivo " +"'versions.dat' en tu directorio almacen de G2 por lo que lo interpretamos como un estado " +"roto de G2. Puedes crear un archivo versions.dat con el formato correcto si piensas que tu " +"G2 podría seguir funcionando o bien seleccionar una instalación limpia, la cual borrará " +"cualquier información de la base de datos y del directorio almacen." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"El directorio almacen de G2 contiene un archivo versions.dat de una instalación antigua. " +"Pero las tablas de Gallery no existen en la base de datos. Selecciona una instalación limpia " +"para borrar toda la información del directorio almacen de Gallery y avanzar al próximo paso." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Las tablas de Gallery ya existen en la base de datos y hay un archivo versions.dat en el " +"directorio de almacen. Pero la versión instalada de las tablas de la base de datos de " +"Gallery no coincide con la version instalada de la información en el directorio almacen de " +"Gallery. Selecciona una instalación limpia para borrar toda la información de la base de " +"datos y del directorio de almacen y avanzar al próximo paso." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Las tablas de Gallery ya existen en la base de datos y el directorio almacen del Gallery " +"parece estar intacto. Puedes escoger reusar la base de datos existente o bien seleccionar " +"una instalación limpia para borrar toda la información existente en la base de datos y en el " +"directorio de almacen." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"No se puede ejecutar la API requerida para borrar el directorio de almacen. Por favor borra " +"el directorio almacen de Gallery manualmente." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"No se puede ejecutar la API requerida para eliminar las tablas de la base de datos de " +"Gallery. Por favor limpia la base de datos de Gallery manualmente." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"No se puede cargar la API de G2. Por favor borra las tablas de la base de datos de Gallery y " +"el directorio almacen manualmente." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a y mas nuevas)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versiones anteriores a la v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x y mas nuevas" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i y mas nuevas)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x y mas nuevas)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 y mas nuevas" + +msgid "Unknown DB type or no known tables information." +msgstr "Tipo de BD desconocida o no se conoce la información de la tablas." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "No se encuentra un prefijo de tabla utilizable similar a \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "No se puede abrir el archivo de esquema: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Fallo al crear la secuencia de comprobacion de la BD. Comprueba el error devuelto y el " +"README.html para saber si faltan privilegios y limpiar la base de datos." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"La prueba falló al eliminar la secuencia de comprobación de la BD. Comprueba el error " +"devuelto y el README.html para saber si faltan privilegios y limpiar la base de datos." + +msgid "Missing SQL statements" +msgstr "Faltan declaraciones SQL" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Comprueba el error devuelto y el README.html para saber si faltan privilegios y limpiar la " +"base de datos." + +msgid "Finish Installation" +msgstr "Terminar Instalación" + +msgid "Install Gallery Core" +msgstr "Instalar el Núcleo de Gallery" + +msgid "Installing the core module" +msgstr "Instalando el módulo núcleo" + +msgid "Unable to initialize our Gallery data" +msgstr "No es posible iniciar nuestros datos de Gallery" + +msgid "Unable to communicate with the database" +msgstr "No es posible comunicar con la base de datos" + +msgid "Unable to load the core module" +msgstr "No es posible cargar el módulo núcleo" + +msgid "Unable to install the core module" +msgstr "No es posible instalar el módulo núcleo" + +msgid "Unable to activate the core module" +msgstr "No es posible activar el módulo núcleo" + +msgid "Unable to commit database transaction" +msgstr "No es posible completar la operacion con la base de datos" + +msgid "Core module is only partially installed." +msgstr "El módulo núcleo esta solo instalado parcialmente." + +msgid "Install Plugins" +msgstr "Instalar Plugins" + +msgid "Unable to initialize our Gallery session" +msgstr "No es posible iniciar nuestra sesión de Gallery" + +#, c-format +msgid "Unable to load the %s module" +msgstr "No es posible cargar el módulo %s" + +msgid "Installing modules" +msgstr "Instalando módulos" + +#, c-format +msgid "Unable to install the %s module" +msgstr "No es posible instalar el módulo %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "No es posible activar el módulo %s" + +msgid "Unable to get the module list" +msgstr "No es posible obtener la lista de módulos" + +msgid "Other" +msgstr "Otros" + +msgid "Installation Type" +msgstr "Tipo de Instalación" + +msgid "Check Security" +msgstr "Comprobar Seguridad" + +msgid "Storage Setup" +msgstr "Configuración del Almacen" + +msgid "System Checks" +msgstr "Comprobaciones de Sistema" + +msgid "Performing system checks" +msgstr "Realizando comprobaciones de sistema" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "Versión de PHP >= 4.3.0 o >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Error: Gallery 2 requiere una versión de PHP 4.3.0 o mas nueva o bien una 5.0.4 o mas nueva. " +"Tu tienes la versión de PHP %s instalada. Contacta con tu administrador del servidor web " +"para solicitar una actualización, disponible en el %ssitio web de PHP%s" + +msgid "PHP Version" +msgstr "Versión de PHP" + +msgid "FILE directive supported" +msgstr "Directiva FILE soportada" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Error: tu directiva __FILE__ de PHP no está funcionando correctamente. Por favor presenta " +"una petición de soporte a tu administrador del servidor web o en los foros de Gallery." + +msgid "FILE Directive" +msgstr "Directiva File" + +msgid "Safe mode disabled" +msgstr "Modo seguro desactivado" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Error: Tu versión de PHP está configurada con el modo seguro activado. Debes desactivar el " +"modo seguro antes de que Gallery pueda ejecutarse." + +msgid "Safe Mode" +msgstr "Modo Seguro" + +msgid "Regular expressions" +msgstr "Expresiones Regulares" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Error: Tu PHP está configurado sin soporte de %sExpresiones Regulares compatibles con Perl%" +"s. Debes habilitar estas funciones antes de que Gallery pueda ejecutarse." + +msgid "exec() allowed" +msgstr "exec() permitido" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Atención: La función exec() está desactivada en tu PHP por el parámetro " +"disabled_functions en el php.ini. No podrás usar módulos que requieran binarios " +"externos (e.j. ImageMagick, NetPBM o Ffmpeg). Esto solo puede ser configurado en el lado del " +"servidor, por lo que necesitaras cambiarlo en el php.ini global." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() permitido" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Atención: La función set_time_limit() está desactivada en tu PHP por el parámetro " +"disabled_functions en el php.ini. Gallery puede funcionar con esta configuración, " +"pero podría no operar fielmente. Cualquier operación que tome mas de %d segundos fallará (y " +"en algunos casos devolverá una página en blanco) posiblemente indicando una corupción de " +"datos." + +msgid "Filesystem Operations" +msgstr "Operaciones en el Sistema de Ficheros" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Error: Las operaciones esenciales sobre el sistema de ficheros están deshabilitadas en tu " +"PHP por el parámetro disabled_functions en el php.ini. Debes permitir estas funciones " +"antes de que Gallery pueda ejecutarse. Estas funciones están desactivadas: %s." + +msgid "Memory limit" +msgstr "Límite de memoria" + +msgid "no limit" +msgstr "sin límite" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Atención: Tu PHP está configurado para limitar la memoria a %sb(parámetro memory_limit en el php.ini). Deberías aumentar este límite al menos a %sMB para un " +"funcionamiento correcto de Gallery." + +msgid "File uploads allowed" +msgstr "Carga de archivos permitida" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Atención: Tu PHP está configurado para no permitir la subida de archivos (parámetro " +"file_uploads en el php.ini). Necesitarás habilitar esta opción si quieres subir " +"archivos a tu Gallery con un navegador web." + +msgid "Maximum upload size" +msgstr "Tamaño máximo de subida" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Atención: Tu PHP está configurado para limitar el tamaño de la carga de los archivos a %sb " +"(parámetro upload_max_filesize

en el php.ini). Deberias aumentar este límite para " +"permitir cargar archivos mas grandes." + +msgid "Maximum POST size" +msgstr "Tamaño máximo de ENVIO" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Atención: Tu PHP está configurado para limitar el envio de datos a un máximo de %sb " +"(parámetro post_max_size en el php.ini). Deberíasaumentar este límite para permitir " +"cargar archivos mas grandes." + +msgid "Translation support" +msgstr "Soporte de Traducción" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Tu servidor web no soporta localización. Para habilitar el soporte de idiomas adicionales " +"por favor indica a tu administrador de sistema que reconfigure PHP con la opcion %sgettext%s " +"habilitada." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"A tu PHP le falta la función %sbind_textdomain_codeset%s. Esto significa que Gallery podría " +"mostrar los caracteres extendidos de algunos idiomas incorrectamente." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"A tu PHP le falta la función %sdngettext%s. Esto significa que Gallery no podrá traducir las " +"formas plurales." + +msgid "Zend compatibility mode" +msgstr "Modo de compatibilidad con Zend" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Atención: Tu PHP está configurado con Zend ze1_compatibility_mode el cual puede causar que " +"PHP falle. Haz click aquí para comprobar tu PHP. Si ves \"ÉXITO\" " +"entonces tu PHP está correcto. Si obtienes un error o no obtienes respuesta deberás entonces " +"deshabilitar ze1_compatibility_mode antes de proceder." + +msgid "putenv() allowed" +msgstr "putenv() permitido" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Atención: La función putenv() esta desactivada en tu PHP por el parámetro " +"disabled_functions en el php.ini. Gallery puede funcionar con esta configuración, " +"pero en algunos sistemas exóticos Gallery podría no ser capaz de ejecutarse en otros idiomas " +"mas que en el idioma del sistema y el Inglés." + +msgid "Output buffering disabled" +msgstr "Buffering de salida desactivado" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Atención: El buffering de salida está activado en tu PHP por el/los parámetro(s) %s " +"en el php.ini. Gallery puede trabajar con esta configuración - descargando archivos es " +"igual de rápido - pero Gallery podría no ser capaz de servir ficheros grandes (e.j. vídeos " +"grandes) y se ejecutaria dentro de un límite de memoria. Además, algunas características " +"cómo las barras de progreso podrían no trabajar correctamente si el buffering de salida está " +"activado, a no ser que ini_set() se encuentre activo." + +msgid "Gallery file integrity" +msgstr "Integridad del archivo de Gallery" + +msgid "Test skipped due to other errors." +msgstr "Comprobación omitida debido a otros errores." + +msgid "Theme available" +msgstr "Tema disponible" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Error: ¡Debe haber al menos un tema en la carpeta %s!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifiesto no encontrado o inaccesible." + +msgid "Welcome" +msgstr "Bienvenido" + +msgid "Please correct the following errors" +msgstr "Por favor corrige los siguiente errores" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Toda Gallery debe tener al menos un usuario administrador que tenga acceso completo para ver/" +"modificar cualquier cosa. Por favor elige un nombre de usuario y una contraseña para tu " +"cuenta principal de administrador. Puedes añadir usuarios adicionales mas tarde." + +msgid "Admin username" +msgstr "Nombre de usuario Administrador" + +msgid "Please enter a valid user name" +msgstr "Por favor introduce un nombre de usuario válido" + +msgid "Please enter a password" +msgstr "Por favor introduce la contraseña" + +msgid "Password" +msgstr "Contraseña" + +msgid "Setup password" +msgstr "Contraseña de configuración" + +msgid "(type again)" +msgstr "(escribela de nuevo)" + +msgid "Admin email address" +msgstr "Dirección de correo electrónico del administrador" + +msgid "Please enter a valid email address" +msgstr "Por favor introduce una dirección de correo electrónico válida" + +msgid "Admin full name (optional)" +msgstr "Nombre completo del administrador (opcional)" + +msgid "Missing password! Please enter the same password twice" +msgstr "¡No hay contraseña! Por favor introduce la misma contraseña dos veces" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" +"¡Las contraseñas que has introducido no coinciden! Por favor intentalo de nuevo." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Cómo tú estas usando tablas de la base de datos existentes, esta no es una instalación " +"reciente. Esto solo cambiará la contraseña de instalación, pero no cambiara la contraseña " +"del administrador del sitio. Para cambiar la contraseña del administrador del sitio, escoge " +"el mecanismo de contraseña olvidada de Gallery." + +msgid "Create" +msgstr "Crear" + +msgid "Save" +msgstr "Guardar" + +msgid "Admin user info entered successfully." +msgstr "La información del usuario administrador se ha introducido con éxito." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Para proceder con el proceso de instalación, necesitamos verificar que eres quien dices " +"ser. El mejor modo de estar seguros es pedirte que hagas un pequeño cambio en el directorio " +"de Gallery lo cual probará que tu tienes los permisos correctos. De modo que, nosotros " +"vamos a pedirte que crees un nuevo archivo de texto llamado login.txt en el " +"directorio %s de tu servidor web (que es el mismo directorio donde se encuentra " +"main.php). Este archivo debe contener los siguientes caracteres generados aleatoriamente:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Para tu comodidad, hemos preparado para ti una %sversión correcta de login.txt%s. " +"Descargala y copiala en tu directorio %s y estará todo correcto." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Una vez que hayas subido el archivo, haz click a continuación para seguir." + +msgid "Authenticate Me" +msgstr "Autenticarme" + +msgid "Authentication successful!" +msgstr "¡Autenticado con éxito!" + +msgid "Erase data for a clean install" +msgstr "Borrar toda la información para una instalación limpia" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"¿Estás completamente seguro de que quieres eliminar toda la información de tu " +"directorio almacen de Gallery y toda la información en tu base de datos de Gallery?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Ha habido un error borrando la bd y la información en el directorio de almacen. He aquí el " +"error:" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Erase all data" +msgstr "Borrar todos los datos" + +msgid "Please fix this error and try again." +msgstr "Por favor arregla este error e intentalo de nuevo." + +msgid "Try Again" +msgstr "Intentar de Nuevo" + +msgid "Create a config file" +msgstr "Crear un archivo de configuración" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Ahora necesitamos escribir toda la información que nos has proporcionado en un archivo " +"llamado config.php en tu directorio %s. Este es un archivo muy importante que " +"da a Gallery toda la información que necesita para funcionar. Despues de crearlo, puedes " +"leerlo y hacer cambios en él si lo deseas." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Antes de que podamos continuar, debes crar un archivo en tu directorio %s llamado " +"config.php. Debes asegurarte de que el servidor web tiene permisos para escribir en " +"él." + +msgid "Unix (with shell access)" +msgstr "Unix (con acceso shell)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "En windows, no deberias de tener que hacer nada en especial." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Cuando hayas creado este archivo y le hayas configurado los permisos de forma correcta, " +"puedes continuar. Si hay algún problema, te diremos que lo soluciones" + +msgid "Create config file" +msgstr "Crear archivo de configuración" + +msgid "Config file created successfully." +msgstr "Archivo de configuración creado con éxito." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Hemos escrito toda la información que nos has proporcionado en un archivo llamado config." +"php en tu directorio de gallery2. Puedes leer el fichero y hacer cambios en él si " +"quieres. ¡Se cuidadoso, puesto que -- si cometes errores en el archivo Gallery no " +"funcionará correctamente!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Por favor selecciona tu tipo de base de datos e introduce la información de autenticación de " +"la misma. El instalador no creará la base de datos por ti, por lo que debes crear una tu " +"mismo e introducir aquí su nombre. Si estás instalando Gallery en una base de datos que ya " +"contiene tablas, los prefijos de las tablas y de las columnas almacenaran datos de Gallery " +"de entrar en conflicto con lo que ya tienes." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Esta es una instalación multisitio. Recuerda que cada multisitio requiere sus propias tablas " +"de la base de datos. ¡Puedes escoger una base de datos diferente o bien un prefijo de " +"tabla diferente para cada multisitio!" + +msgid "Database type:" +msgstr "Tipo de Base de Datos:" + +msgid "DB Hostname:" +msgstr "Nombre del Servidor de la BBDD:" + +msgid "DB Username:" +msgstr "Nombre del usuario de la BBDD:" + +msgid "DB Password:" +msgstr "Contraseña de la BBDD:" + +msgid "DB Name:" +msgstr "Nombre de la BBDD:" + +msgid "Table Prefix:" +msgstr "Prefijo de Tabla:" + +msgid "Column Prefix:" +msgstr "Prefijo de Columna:" + +msgid "We received the following database related errors:" +msgstr "Recibimos los errores siguientes relaccionados con la base de datos:" + +msgid "Erase Data For A Clean Install" +msgstr "Eliminar los Datos para una Instalación Limpia" + +msgid "Reuse Existing Tables" +msgstr "Reusar las Tablas Existentes" + +msgid "Database set up successfully." +msgstr "Base de datos configurada con éxito." + +msgid "Finished!" +msgstr "¡Terminó!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"¡Felicitaciones! ¡Tu instalación de Gallery 2 se completo! Mira... no era tan " +"complicado, ¿no es cierto? ¡Ahora es un buen momento para subir algunas fotos!" + +msgid "Go to my Gallery!" +msgstr "¡Ir a mi Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Puedes ir ahora a tu nueva Gallery. Introduce la URL en tu navegador para %smain.php%s en " +"tu directorio %s." + +msgid "Installer Help" +msgstr "Ayuda del Instalador" + +msgid "Start Over" +msgstr "Comenzar de Nuevo" + +msgid "Error installing Gallery Core" +msgstr "Error instalando el Núcleo de Gallery" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Algo fué mal cuando intentamos instalar el módulo núcleo. ¿Que hacemos ahora?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Ve al paso de Comprobaciones de Sistema del instalador y asegúrate de que todas las " +"comprobaciones muestran 'Éxito'. Un problema típico es que el aviso de integridad de archivo " +"es ignorado." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Si no hay avisos o fallos en el paso de Comprobaciones de Sistema, vacia tu directorio " +"almacen, borra las tablas de la base de datos y comienza por segunda vez el proceso de " +"instalación (rehacer todos los pasos)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Por favor visita la %sFAQ de G2%s y lee la %ssección de Problemas Comunes del Leeme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Si el problema persiste, por favor copia el log de la instalación que se encuentra en %s y " +"adjuntalo (como install.log.zip) a un nuevo tema de foro en el %sforo de soporte de G2%s o, " +"si es posible, añade un enlace al install.log en el tema del foro tal que el equipo de " +"soporte pueda analizarlo si es necesario." + +msgid "Stack Trace:" +msgstr "Volcado de Pila:" + +msgid "Installed Gallery Core successfully." +msgstr "Núcleo de Gallery instalado con éxito." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Hemos instalado con éxito el núcleo de Gallery. Aunque todo funcionará en este punto, " +"deberías continuar con el instalador y añadir algunos de los módulos opcionales para que " +"puedas tener el conjunto correcto de caracteristicas que quieres para tu instalación de " +"Gallery." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Los siguientes módulos pueden ser instalados y activados por ti automáticamente. Deberías " +"instalar al menos uno de los conjuntos de herramientas gráficas ya que de lo contrario " +"Gallery no puede hacer miniaturas de tus imágenes. Sin embargo, en algunos casos puede " +"fallar. Siempre puedes activar nuevos modulos o desactivar aquellos que hayas escogido aquí " +"en la página de Administracion del Sitio, por lo que cualquier decision que tomes aqui no es " +"permanente." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Algunos módulos pueden fallar al instalarse automaticamente. Es correcto. Típicamente " +"significa que requiren alguna configuración, la cual puedes hacer desde la pagina de " +"Administración del Sitio." + +msgid "Name" +msgstr "Nombre" + +msgid "Version" +msgstr "Versión" + +msgid "Description" +msgstr "Descripción" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Incompatible con esta versión de Gallery)" + +msgid "(un)check all" +msgstr "(de)seleccionar todo" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Continuar al Paso %d Sin Activar»" + +msgid "Activate Selected Modules" +msgstr "Activar los Módulos Seleccionados" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "El módulo %s fue instalado, pero necesita configuración para seractivado" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Despues de finalizar la instalación, inicia sesión como Administrador y navega hacia " +"Administrar Sitio. Ve a la vista de Módulos y configura los siguientes módulos " +"listados." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Activado el módulo %s con éxito" + +msgid "Activate More Modules" +msgstr "Activar Mas Módulos" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Continuar al Paso %d»" + +msgid "Debug Output" +msgstr "Salida de Depuración" + +msgid "Welcome to the Gallery Installer" +msgstr "Bienvenido al Instalador de Gallery" + +#, c-format +msgid "Install %d%% complete" +msgstr "%d%% de la instalación completa" + +msgid "Redo this step" +msgstr "Rehacer este paso" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: tus fotos en tu sitio web" + +#, c-format +msgid "Missing files (%d)" +msgstr "Archivos no encontrados (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Nota: Estás ejecuntando Gallery desde SVN, por lo que los archivos eliminados recientemente " +"pueden aparecer aquí. Podría ser seguro ignorar todo esto." + +#, c-format +msgid "Modified files (%d)" +msgstr "Archivos modificados (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Nota: Estás ejecutando Gallery desde SVN, por lo que se esperan algunos archivos " +"modificados. Probablemente puedes ignorar esto, pero para estar seguro cerciorate de que " +"haces una 'actualizacion de svn' antes de continuar." + +#, c-format +msgid "Old files (%d)" +msgstr "Archivos antiguos (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Estos archivos ya no forman parte de Gallery. Probablemente no causen problemas pero es " +"buena idea eliminarlos para mantener tu instalación limpia." + +msgid "Errors occurred. Please see messages below." +msgstr "Ocurrieron errores. Por favor mira los siguientes mensajes." + +msgid "Please select the installation type" +msgstr "Por favor selecciona el tipo de instalación" + +msgid "Standard installation" +msgstr "Instalación estándar" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Este es el tipo de instalación por defecto. Escoge este tipo de instalación si tu quieres " +"instalar un nuevo Gallery en el directorio %s el cual será accesible desde la URL %s." + +msgid "Multisite installation" +msgstr "Instalación Multisitio" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery puede sopoortar multiples sitios independientes con una simple instalacion del " +"codigo. Escoge este tipo de instalación si quieres instalar un nuevo Gallery en el mismo " +"servidor web pero en una ruta diferente, subdominio o dominio URL." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Los multisitios no comparten álbumes, fotos, usuarios. o cualquier otra cosa. Necesitan su " +"propia base de datos y su propio directorio de almacén. Para mas información y una " +"explicación sobre las instalaciones Multisitio, visita la página %s." + +msgid "You must enter a directory" +msgstr "Debes introducir un directorio" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"El directorio que has introducido es el directorio código base. Si quieres instalar un " +"Gallery en el directorio código base, selecciona el tipo de instalación estandar. Si quieres " +"instalar un multisitio, escoge otro directorio." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"El directorio que has introducido puede no existir, o bien está prohibido para la " +"configuración de tu servidor web. Tu servidor web está configurado para permitir el acceso " +"solamente a los siguientes directorios. Debes escoger un directorio por debajo de ese, o " +"debes modificar la opción open_basedir en tu configuración de PHP para permitir un " +"nuevo directorio." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Si tu instalación multisitio está en un servidor virtual diferente, debes contactar con tu " +"administrador de sistema y pedirle que configure tu opción open_basedir para que tus " +"servidores virtuales puedan acceder mutuamente." + +msgid "The directory you entered does not exist" +msgstr "El directorio que has introducido no existe" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"El directorio que has introducido no es accesible. Cambia los permisos para que el servidor " +"web pueda leer este directorio." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"No puedo crear los archivos de multisitio. Asegurate de que se puede escribir en los " +"archivos listados a continuacion." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" +"Todos los multisitios se instalan desde este repositorio central de código(código base)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Introduce a continuación el directorio para el nuevo multisitio. La ruta debe ser diferente " +"de la ruta de esta instalación de código base:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Tu servidor web/php debe poder escribir en el directorio o bien contener y poder escribir en " +"los siguientes archivos:" + +msgid "Select Directory" +msgstr "Seleccionar Directorio" + +msgid "Multisite directory setup successfully." +msgstr "Configuración del directorio multisitio con éxito." + +msgid "Standard installation selected." +msgstr "Instalación estandar seleccionada." + +msgid "Install Steps" +msgstr "Pasos de Instalación" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Queremos asegurarnos de que tu Gallery es seguro. El archivo config.php que ha editado este " +"instalador tiene permisos que dejan que otras personas escriban en el. Se requiere esto " +"porque el instalador esta calificado como una de las \"otras personas\" en un sistema de " +"permisos Unix. Asi que antes de terminar, deberias de cambiar los permisos de este archivo " +"para que otros usuarios no puedan escribir en él. Ahora mismo tu config.php tiene los modos %" +"s. Te sugerimos que hagas esto:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Queremos asegurarnos de que tu Gallery es seguro. El directorio que contiene tu archivo " +"config.php que ha editado este instalador tiene permisos que dejan que otras personas " +"escriban o borren archivos. Asi que antes de terminar, debes cambiar los permisos en esye " +"directorio para que otros usuarios no puedan escribir en el. Te sugerimos que hagas esto:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Si realmente quieres continuar, puedes hacerlo. Pero te recomendamos que tomes un momento " +"extra para asegurarte de que estas a salvo." + +msgid "We've verified that your config.php is secure." +msgstr "Hemos verificado que tu config.php es seguro." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Por favor lee la %1$sGuia de Seguridad de Gallery%3$s. Para una brebe descripción, echa un " +"vistazo a la %2$slista de selección corta%3$s de la guía de seguridad." + +msgid "Check Again" +msgstr "Comprobar de Nuevo" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery necesita un directorio donde almacenar tus imágenes. El directorio que escogimos por " +"ti funcionará, pero su localización o nombre actual no provee la máxima seguridad. Puedes " +"seleccionar un nuevo directorio fuera de la %sraíz de documentos%s o bien añadir una cadena " +"de texto aleatoria al final del nombre del directorio (e.j. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Para una maxima seguridad deberias escoger un directorio que no sea %saccesible vía web%s. " +"Si esto no es posible, especifica un nombre generado aleatoriamente para este directorio." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Si escoges un nombre generado de forma aleatoria o prefieres permanecer con el nombre " +"especificado del directorio, por favor confirma tu elección." + +msgid "Yes, please omit the security check:" +msgstr "Si, por favor omitir las comprobaciones de seguridad:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Esta es una instalación multisitio. Recuerda que cada multisitio requiere su propio " +"directorio de almacenamiento." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Si estás usando un navegador moderno, intentaremos autocompletar cualquier ruta que " +"introduzcas aquí. Por lo que si estas teniendo dificultades para encontar la ruta correcta " +"a tu directorio de datos de g2, intenta experimentar con diferentes rutas en la siguiente " +"caja de texto y revisa las opciones que te da al autocompletar." + +msgid "The directory you entered is read only" +msgstr "El directorio que has introducido es de solo lectura" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Hubo un error creando la estructura de directorios dentro del directorio de almacenamiento." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Tu directorio de almacenamiento es %saccesible vía web%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" +"No es posible verificar que el directorio de almacenamiento no es %saccesible vía web%s." + +msgid "Directory path:" +msgstr "Ruta al Directorio:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Tu servidor web necesita que le sea posible escribir en este directorio. Para que esto " +"funcione, puedes seguir estos ejemplos." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Nota: ¡Esto solo son ejemplos! Debes saber que no tienen porque funcionar " +"correctamente en tu sistma." + +msgid "Unix (with ftp access)" +msgstr "Unix (con acceso ftp)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Nota que los servidores y los clientes ftp pueden variar de modo que estas instrucciones " +"pueden no funcionarte. Consulta el manual de tu cliente FTP o habla con tu administrador de " +"sistema para pedirle ayuda si tienes problemas." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"En algunos entornos de web hosting, las rutas que ves en el shell o vía FTP no son las " +"mismas rutas que ve PHP. A fin de encontrar la ruta real a tu directorio de datos, puedes " +"intentar crear un script llamdo dir.php conteniendo el siguiente código en el y " +"ponerlo en tu directorio de datos." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"luego calcula la URL externa a dir.php y abrela en tu navegador web (eg, %s). Esto te dirá " +"la ruta exacta para introducir aquí." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Nota: Esto requiere que tu directorio de datos sea accesible vía web, lo cual no " +"recomendamos porque esto sortea nuestro cortafuegos de imagen. Una vez que calcules la " +"ruta, te recomendamos que muevas tu directorio de datos fura del área accesible vía web y " +"actualizes la ruta aquí adecuandamente." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Nota: ¡No olvides eliminar dir.php cuando termines!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Para obtener información de cómo asegurar tu directorio de almacenamiento de Gallery, por " +"favor lee la %sGuía de Seguridad%s." + +msgid "Storage directory set successfully." +msgstr "Directorio de alamcenamiento configurado con éxito." + +msgid "Success" +msgstr "Éxito" + +msgid "Warning" +msgstr "Atención" + +msgid "Failed" +msgstr "Falló" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Si estás usando Apache, crea un archivo llamado .htaccess en el directorio principal de " +"Gallery con el siguiente contenido:" + +msgid "Version Check" +msgstr "Comprobación de Versión" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Esta no es una instalación nueva y la versión instalada no coincide con la nueva versión." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "¡La versión instalada no puede ser actualizada a la nueva versión!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"La versión instalada es mas vieja que la nueva versión. ¡ Deberías ejecutar el " +"actualizador y no el instalador!" + +msgid "Currently installed" +msgstr "Actualmente instalado" + +msgid "New version" +msgstr "Nueva versión" + +msgid "Go to the Upgrader!" +msgstr "¡Ir al Actualizador!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Deberías ir ahora al actualizador. Introduce la URL en tu navegador para%s/upgrade/index.php" +"%s en tu directorio %s." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Tener Gallery 2 instalado en tu servidor web requiere %d pasos. Este instalador te guiará a " +"traves de ellos y te asistirá a lo largo del camino si se requieren pasos adicionales para " +"tener tu Gallery activo y funcionando. Una vez que un paso se complete, puedes volver atrás " +"y hacer cambios en cualquier momento. Por favor lee el %sArchivo de Ayuda del Instalador%s " +"antes de proceder." + +msgid "Select Language:" +msgstr "Seleccionar Idioma:" + +msgid "Go" +msgstr "Ir" + +msgid "Begin Installation»" +msgstr "Comenzar Instalación»" diff --git a/Source/gallery2/install/po/eu.po b/Source/gallery2/install/po/eu.po new file mode 100644 index 0000000..bc17579 --- /dev/null +++ b/Source/gallery2/install/po/eu.po @@ -0,0 +1,1403 @@ +# $Id: eu.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Piarres Beobide , 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-10-30 22:52+0100\n" +"PO-Revision-Date: 2006-05-22 15:19+0200\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.2\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Unknown" +msgstr "Ezezaguna" + +msgid "Admin User Setup" +msgstr "Kudeaketa Erabiltzaile Konfigurazioa" + +msgid "admin" +msgstr "kudeatzailea" + +msgid "Gallery Administrator" +msgstr "Galeria Kudeatzailea" + +msgid "Authenticate" +msgstr "Egiaztatu" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Errorea: ezin da login.txtkokatu. Ipini ezazu zure %s direktorioan." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +" Errorealogin txt fitxategia ezin da irakurri. Eman Gallery-ri fitxategi " +"horren irakurketa baimena." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Errorea: zure login.txt gakoa ez da zuzena. Mesedez deskargatu egiaztapen gako " +"berri bat behetik eta berriz saiatu." + +msgid "Create Config File" +msgstr "Konfigurazio Fitxategia Sortu" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Ezin da zure %s direktorioko config.php fitxategia idatzi. Aldatu fitxategi horren " +"baimenak. Unix bat erabiltzen ari bazara chmod 666 config.php egin dezakezu hau " +"konpontzeko." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Config.php fitxategirik ez dago zure %s direktorioan" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Config.php fitxategia badago baina ezin da idatzi. Zure zerbitzaria Windows bat baldin bada, " +"config.php fitxategiaren fitxategi partekaketa ezgaitu eta beharrezko baimenak eskuz ipini " +"beharko dituzu." + +msgid "Database Setup" +msgstr "Datubase Konfigurazioa" + +msgid "You must have the MySQL PHP module installed" +msgstr "MySQL modulua instalaturik izan behar duzu" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "MySQL hobeturiko PHP modulua instalaturik izan behar duzu" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Ibm_db2 PHP modulua instalaturik izan behar duzu" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "PostgreSQL PHP modulua instalaturik izan behar duzu" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Oracle OCI8 PHP modulua instalaturik izan behar duzu" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Osagai Objektu Modelo (COM) PHP modulua instalaturik izan behar duzu" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Zutabe aurrizki bat zehaztu behar duzu (%s gomendatzen dugu)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Hizkiak, zenbakiak eta azpimarratu bakarrik erabili zutabe aurrizkian" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Taula aurrizki bat zehaztu behar duzu (%s gomendatzen dugu)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Hizkiak, zenbakiak eta azpimarratu bakarrik erabili taula aurrizkian" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Ezin da %s motako datubase konexio bat sortu" + +msgid "Unable to connect to database with the information provided." +msgstr "Emandako argibideekin ezin da datubase batetara konexioa sortu." + +msgid "The database you specified does not exist. Please create it." +msgstr "Zuk ezarritako datubasea ez dago. Mesedez sortu ezazu." + +msgid "The database privileges test did not complete successfully." +msgstr "Datubasearen baimen proba ez da guztiz arrakastasua izan." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallery taulak badaude dagoeneko datu-basean! Baina G2 hondaturiko egoera bat dela dirudi " +"ez bait dago 'versions.dat' fitxategirik zure G2 biltegiratze direktorioan. edo Gallery 2-k " +"funtzionatu beharko lukeela ustez gero beharrezko versions.dat fitxategia formatu zuzenaz " +"sortu edo instalazio garbi bat aukeratu, honek datubase eta direktorioko datu guztiak " +"ezabatuko ditu." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 biltegiratze direktorioak instalazio zaharrago batetako versions..dat fitxategi bat dut. " +"Baina Gallery datubase taulak ez dira aurkitzen. Instalazio garbi bat egitea aukera ezazu " +"biltegiratze direktorioko datu guztiak ezabatu eta hurrengo urratsera jarraitzeko." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Gallery taulak badaude dagoeneko datu-basean eta version.dat fitxategia aurkitu da Gallery " +"biltegiratze direktorioan. Baina instalaturiko Gallery datubase taulak ez dira Gallery " +"biltegiratze direktorioan instalaturiko datuen bertsio berdinekoak. Aukeratu instalazio " +"garbi bat datubase eta biltegiratze direktorioko datu guztiak ezabatu eta hurrengo urratsera " +"jarraitu." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Galeria datubase taulak aurkitu dira eta galeria biltegiratze direktorioa ondo dagoela " +"dirudi. Edo dauden datubase taula eta biltegiratze direktorioa berrerabiltzea edo instalazio " +"garbi bat eginez datubase eta direktorioko datu guztiak ezabatzea hautatu dezakezu." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Ezin da biltegiratze direktorioa ezabatzeko beharrezkoa API-a abiarazi. Ezabatu ezazu " +"biltegiratze direktorioa eskuz." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Ezin da Gallery datubase taulak garbitzeko beharrezko API-a abiarazi. Ezabatu ezazu Gallery " +"datubasea eskuz." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Ezin da G2 API-a abiarazi. Ezabatu itzazu Gallery datubasea eta biltegiratze direktorioa " +"eskuz." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (3.23.34a bertsio eta berriagoak)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (v3.23.34a aurreko bertsioak)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x eta berriagoa" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i eta berriagoak)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x eta berriagoak)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x eta berriagoa" + +msgid "Unknown DB type or no known tables information." +msgstr "DB mota ezezaguna edo ez dira taula argibideak ezagutzen." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Ezin da \"%s\"-ren antzeko taula aurrizki erabili gabekorik aurkitu." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Ezin da eskema fitxategia aurkitu: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"DB proba sekuentzia sortzerakoan huts egin du.Begiratu itzulitako errorea eta README.html " +"fitxategia baimen falta eta datu base garbitzeari buruzko argibide gehiagorako." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"DB proba sekuentziak huts egin du.Begiratu itzulitako errore mezua eta README.html " +"fitxategia baimen falta eta datu base garbitzeari buruzko argibide gehiagorako." + +msgid "Missing SQL statements" +msgstr "SQL egoera-orria falta da" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Markatu errorea mezua eta README errepikatu arte eta gora.Begiratu itzulitako errore mezua " +"eta README.html baimen eza eta datubase garbiketari buruz argibide gehiagorako." + +msgid "Finish Installation" +msgstr "Instalazioa amaitu" + +msgid "Install Gallery Core" +msgstr "Instalatu Galeria Muina" + +msgid "Installing the core module" +msgstr "Muin modulua instalatzen" + +msgid "Unable to initialize our Gallery data" +msgstr "Ezin dira Gallery datuak abiarazi" + +msgid "Unable to communicate with the database" +msgstr "Ezin da datubasearekin konektatu" + +msgid "Unable to load the core module" +msgstr "Ezin da muin modulua kargatu" + +msgid "Unable to install the core module" +msgstr "Ezin da muin modulua instalatu" + +msgid "Unable to activate the core module" +msgstr "Ezin da muin modulua aktibatu" + +msgid "Unable to commit database transaction" +msgstr "Ezin da datubase transakzioa egin" + +msgid "Core module is only partially installed." +msgstr "Muin modulua erdizka instalaturik dago." + +#, fuzzy +msgid "Install Plugins" +msgstr "Instalatu Urratsak" + +msgid "Unable to initialize our Gallery session" +msgstr "Ezin izan da Gallery saioa abiarazi" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Ezin da %s modulua kargatu" + +msgid "Installing modules" +msgstr "Moduluak instalatzen" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Ezin da %s modulua kargatu instalatu" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Ezin da %s modulua kargatu aktibatu" + +msgid "Unable to get the module list" +msgstr "Ezin da modulu zerrenda eskuratu" + +msgid "Other" +msgstr "Bestelakoak" + +msgid "Installation Type" +msgstr "Instalazioa Mota" + +msgid "Check Security" +msgstr "Segurtasuna Egiaztatu" + +msgid "Storage Setup" +msgstr "Biltegi Konfigurazioa" + +msgid "System Checks" +msgstr "Sistema Egiaztapenak" + +msgid "Performing system checks" +msgstr "Sistema egiaztapenak egiten" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP bertsioa >= 4.3.0 edo >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Errorea: Gallery 2-rentzat beharrezkoa da PHP 4.3.0 edo berriagoa edo 5.0.4 bertsio edo " +"berriagoa. Instalaturik duzun PHP bertsioa %s da. Harremanetan ipini web zerbitzari " +"kudeatzailearekin %sPHP website%s-n aurki dezaken eguneraketa eskatzeko." + +msgid "PHP Version" +msgstr "PHP Bertsioa" + +msgid "FILE directive supported" +msgstr "FITXATEGI direktiba onartzen da" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Errorea: PHP __FILE__ direktiba ez da behar bezala funtzionatzen ari da. Mesedez laguntza " +"eskatu zerbitzari kudeatzaileari edo gallery foroan." + +msgid "FILE Directive" +msgstr "FITXATEGI Direktiba" + +msgid "Safe mode disabled" +msgstr "Modu segurua ezgaiturik" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Errorea: Zure PHP bertsio modu segurua gaiturik duela konfiguraturik dago. Gallery abiarazi " +"aurretik modu segurua ezgaitu behar duzu." + +msgid "Safe Mode" +msgstr "Modu Segurua" + +msgid "Regular expressions" +msgstr "Espresio erregularrak" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Errorea: Zure PHP %sPerl Compatible Regular Expressions%s onarpen gabe konfiguraturik dago." +"Gallery abiarazi aurretik funtzio hauek gaitu behar dituzu." + +msgid "exec() allowed" +msgstr "exec() onarturik" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Abisua: PHP exec() funtzioa php.ini fitxategiko disabled_functions parametroaz " +"ezgaiturik dago. Ezingo da kanpo bitarrik behar duen modulurik erabili (adib, ImageMagick, " +"NetPBM edo Ffmpeg). Hau zerbitzarian bakarrik ezarri daiteke, beraz php.ini orokorra aldatu " +"beharko zenuke." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() onarturik" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Abisua: PHP set_time_limit() funtzioa php.ini fitxategiko disabled_functions " +"parametroaz ezgaiturik dago. Galeriak ezarpen hauekin funtziona dezake, baina oso erabilera " +"urrian. %d segundu baino gehiago tardatzen duen edozein ekintzek huts egingo du (eta " +"batzuetan orri zuri bat itzuliko du) datu galera aukerak asko handituz." + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Abisua: PHP putenv() funtzioa php.ini fitxategiko disabled_functions parametroaz " +"ezgaiturik dago. Galeriak ezarpen hauekin funtziona dezake, baina kasu bereizi batzuetan " +"honek Gallery ingelesa ez den beste hizkuntzetan ezin erabili izana eragin dezake." + +msgid "Memory limit" +msgstr "Memoria muga" + +msgid "no limit" +msgstr "mugarik gabe" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Abisua: Zerbitzariko PHP memoria muga %sb-ra ezarririk du php.ini fitxategiko " +"memory_limit parametroaz. Muga hori behintzat %sMB-ra igo beharko zenuke " +"Galeriak behar bezala funtziona dezan." + +msgid "File uploads allowed" +msgstr "Fitxategi igoera gaiturik" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Abisua: Zure PHP igoerarik ez onartzeko konfiguraturik dago (file_uploads parametroa " +"php.ini fitxategian). Aukera hau gaitu beharko zenuke galeriara web nabigatzaile baten bidez " +"fitxategiak igo ahal izateko." + +msgid "Maximum upload size" +msgstr "Gehienezko igoera tamaina" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Abisua: zure PHP konfigurazioan gehienezko fitxategi tamaina igoera %sb-ra mugaturik dago " +"(post_max_size parametroa php.ini fitxategian). Muga hau handitu beharko zenuke " +"fitxategi handiagoak onartzeko." + +msgid "Maximum POST size" +msgstr "Gehienezko MEZU tamaina" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Abisua: zure PHP konfigurazioan gehienezko mezu datuak %sb-ra ezarririk dago " +"(post_max_size parametroa php.ini fitxategian). Muga hau handitu beharko zenuke " +"fitxategi handiagoak igotzea onartzeko." + +msgid "Translation support" +msgstr "Itzulpen onarpena" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Zure web zerbitzariak ez du lokalizaziorik onartzen. Hizkuntz gehigarrien onarpena gaitu " +"ahal izateko eskatu sistema kudeatzaileari %sgettext%s aukera gaiturik duela PHP " +"birkonfiguratzeko." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Zure PHP-an %sbind_textdomain_codeset%s funtzioa falta da. Honek zenbait hizkuntzetako " +"karaktere gehigarriak oker bistaratzea egin dezake." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Zure PHP-an %sdngettext%s funtzioa falta da. Honek gallery-k ezin itzulpen pluralak " +"kudeatzea egiten du." + +msgid "Zend compatibility mode" +msgstr "Zend bateragarritasun modua" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Abisua: Zure PHP Zend ze1_compatibility_mode-az konfiguraturik dago, honek PHP apur dezake. " +"Hemen klikatu zure PHP instalazio probatzeko. \"LORTUA\" ikusiz gero " +"zure PHP-a ondo dago. Errore bat jaso edo erantzunik jaso ezean jarraitu aurretik " +"ze1_compatibility_mode ezgaitu beharko zenuke." + +msgid "putenv() allowed" +msgstr "putenv() onarturik" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Abisua: PHP putenv() funtzioa php.ini fitxategiko disabled_functions parametroaz " +"ezgaiturik dago. Galeriak ezarpen hauekin funtziona dezake, baina kasu bereizi batzuetan " +"honek Gallery ingelesa ez den beste hizkuntzetan ezin erabili izana eragin dezake." + +msgid "Output buffering disabled" +msgstr "Irteera buferra ezgaiturik" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Abisua: Irteera buferra php.ini-ko %s parametroaren bidez gaiturik badago zure php-" +"an. Galleryk ezarpen hauekin funtziona dezake - fitxategiak deskargatzea azkarragoa da - " +"baina ezingo ditu fitxategi handiak zerbitzatu (adib. bideo luzeak) eta memoriarekin arazoak " +"izan ditzake. Baita aurrerapen barra bezalako beste zenbait ezaugarrik ez dute behar bezala " +"funtzionatuko irteera buferra gaiturik badago nahiz ini_set() gaiturik egon." + +msgid "Gallery file integrity" +msgstr "Gallery fitxategi integritatea" + +msgid "Test skipped due to other errors." +msgstr "Proba beste errore batzugatik alde batetara utzia." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "Manifestua falta da edo ezin da eskuratu." + +msgid "Welcome" +msgstr "Ongi etorri" + +msgid "Please correct the following errors" +msgstr "Mesedez konpondu hurrengo errore hauek" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Galeria bakoitzak behintzat elementu guztiak ikusi/eraldatzeko baimena duen kudeatzaile bai " +"izan behar du. Hautatu zure kudeaketa kontuarentzat erabiltzaile-izen eta pasahitz bat. " +"Erabiltzaile gehiago beranduago gehitu ditzakezu." + +msgid "Admin username" +msgstr "Kudeatzaile izena" + +msgid "Please enter a valid user name" +msgstr "Mesedez sartu baliozko erabiltzaile izen bat" + +msgid "Please enter a password" +msgstr "Pasahitza idatz" + +msgid "Password" +msgstr "Pasahitza" + +msgid "Setup password" +msgstr "Pasahitz konfigurazioa" + +msgid "(type again)" +msgstr "(idatzi berriz)" + +msgid "Admin email address" +msgstr "Kudeatzaile posta helbidea" + +msgid "Please enter a valid email address" +msgstr "Idatzi baliozko posta helbide bat" + +msgid "Admin full name (optional)" +msgstr "Kudeatzaile izen osoa (aukeran)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Pasahitza falta da! Mesedez idatzi pasahitz berdina bi alditan" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Idatzitako pasahitzak ez datoz bat! Mesedez saiatu berriz." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Bazeuden datubase taulak erabiltzen ari zarenez hau ez da instalazio garbi bat. Honek " +"konfigurazio pasahitza aldatuko du baina ez sistema kudeatzailearena. Gune kudeatzaile " +"pasahitza aldatu nahiz gero hautatu Gallery-ren ahaztutako pasahitz atalera." + +msgid "Create" +msgstr "Sortu" + +msgid "Save" +msgstr "Gorde" + +msgid "Admin user info entered successfully." +msgstr "Kudeatzaile argibideak egoki gorde dira." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Instalazioarekin aurrera jarraitu aurretik zu esaten duzuna zarela ziurtatu behar dugu. Hau " +"lortzeko erarik errazena Gallery direktorioan baimenak emango dizkizun aldaketa txiki bat " +"egitea da. Beraz zure web zerbitzariko %s direktorioan (main.php kokaturik dagoen " +"direktorioa) login.txt izeneko fitxategi bat sortzea eskatuko dizugu. " +"Berauek ausaz sorturiko karaktere bilduma hau eduki behar du:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Laguntza eskaintzeko %slogin.txt fitxategi zuzena%s sortua izan da. Aski duzu berau " +"deskargatu eta %s direktorioan ipintzearekin." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Behin fitxategia igo duzunean, behean klik egin aurrera jarraitzeko." + +msgid "Authenticate Me" +msgstr "Egiaztatu iezadazu" + +msgid "Authentication successful!" +msgstr "Egiaztapen zuzena!" + +msgid "Erase data for a clean install" +msgstr "Ezabatu datuak instalazio garbi batentzat" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Ziur al zaude Gallery biltegiratze direktorio eta Gallery datubaseko datu guztiak ezabatu " +"nahi dituzula?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Errore bat gertatu da datubasea eta biltegiratze direktorioa ezabatzerakoan. Hemen errorea:" + +msgid "Cancel" +msgstr "Utzi" + +msgid "Erase all data" +msgstr "Datu guztiak ezabatu" + +msgid "Please fix this error and try again." +msgstr "Mesedez errore hau konpondu eta berriz saiatu." + +msgid "Try Again" +msgstr "Saiatu berriro" + +msgid "Create a config file" +msgstr "Konfigurazio fitxategi bat sortu" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Orain zuk emandako informazio guztia zure %s direktorioko config.php fitxategi " +"batetan gorde behar da. Hau galeriak funtzionatu ahal izateko behar duen informazioa duen " +"fitxategi oso garrantzitsua bat da. Sortu ondoren fitxategi hau irakurri eta nahi dituzun " +"aldaketak egin ditzakezu." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (shell sarrerarekin)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Konfigurazio fitxategia sortu" + +msgid "Config file created successfully." +msgstr "Konfigurazio fitxategia egoki sortu da." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Zuk emandako informazio guztia gallery2 direktorioko config.php izeneko fitxategian " +"gordeko dira. Nahi izan ezkero fitxategi hori irakurri eta aldatu dezakezu. Kontu izan, " +"hala ere -- fitxategi honetan akatsik egin ezkero Gallery-k ez du behar bezala funtzionatuko " +"eta!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Mesedez zure datubase mota hautatu eta egiaztapen informazioa idatzi. Instalatzaileak ez du " +"datubasea sortuko beraz zuk datubase bat eskuz sortu eta izena hemen idatzi behar duzu. " +"Gaqllery dagoeneko taulak dituen datubase batetan instalatzen ari bazara, taula eta zutabe " +"aurrizkiek Gallery datuak dituzun besteetatik bereizirik mantentzen lagunduko du." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Hau gune anitzeko instalazio bat da. Gogoratu gune bakoitzak ere datubase taulak behar " +"dituela. Edo datubase ezberdina edo taula aurrizki ezberdina aukeratu gune bakoitzarentzat!" + +msgid "Database type:" +msgstr "Datubase mota:" + +msgid "DB Hostname:" +msgstr "DB Ostalari-izena:" + +msgid "DB Username:" +msgstr "DB Erabiltzaile-izena:" + +msgid "DB Password:" +msgstr "DB Pasahitza:" + +msgid "DB Name:" +msgstr "DB Izena:" + +msgid "Table Prefix:" +msgstr "Taula Aurrizkia:" + +msgid "Column Prefix:" +msgstr "Zutabea Aurrizkia:" + +msgid "We received the following database related errors:" +msgstr "Datu-basearen inguruko errore hauek jaso dira:" + +msgid "Erase Data For A Clean Install" +msgstr "Ezabatu Datuak Instalazio Garbi batetarako" + +msgid "Reuse Existing Tables" +msgstr "Dauden taulak berrerabili" + +msgid "Database set up successfully." +msgstr "Datubasea egoki ezarri da." + +msgid "Finished!" +msgstr "Amaiturik!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Zorionak! Gallery 2 instalazioa egoki amaitu da! Ikusten... ez zein ain zaila, edo bai? " +"Orain argazki batzu igotzeko unea da!" + +msgid "Go to my Gallery!" +msgstr "Nire Galeriara joan!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Orain zure galeriara joan nahiko duzu. Nabigatzailean %s direktorioko %smain.php%s URL-a " +"ipini ezazu." + +msgid "Installer Help" +msgstr "Instalazio Laguntza" + +msgid "Start Over" +msgstr "Hasi" + +msgid "Error installing Gallery Core" +msgstr "Errorea Gallery Muina instalatzerakoan" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Zerbait oker joan da muin modulua instalatzerakoan. Zer egin orain?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Instalatzailearen Sistema Egiaztapen urratsera joan eta ziurtatu egiaztapen guztiek 'lortua' " +"dutela. Akats nahiko arrunt bat integritate abisuak alde batetara uztea da." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Sistema arakatze urratsean ez badaude abisu edo errorerik, zure biltegiratze direktorioa " +"uztu, datubase taulak ezabatu eta instalazioa bigarren aldi batez egin ezazu (urrats guztiak " +"berregin)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Mesedez begiratu %sG2 FAQ%s (ingelesez) eta %s Readme fitxategiko Known issues atala%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Arazoak jarraitu ezkero, mesedez kopiatu %s-n aurki dezakezun instalazio erregistroa eta " +"gehitu ezazu (install.log.zip bezala) %sG2 laguntza foroko%s gai berri batetan edo, posible " +"balitz gehitu ezazu install.log fitxategira lotura bat laguntza taldeak behar ezkero begira " +"dezan." + +msgid "Stack Trace:" +msgstr "Aztarna Pilaketa:" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery Muina egoki instalaturik." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Gallery muina behar bezala instalatu da. Naiz eta puntu honetan danak behar bezala " +"funtzionatzen duen, instalatzailearekin jarraitu eta aukeran dauden moduluetako batzu " +"instalatu beharko zenituzke erabili nahi dituzun ezaugarrien arabera." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Hurrengo modulu hauek instalatu eta gaitu daitezke. Behintzat tresna-joko grafiko bat " +"instalatu beharko zenuke, bestela GAllery ez da zure irudietako argazkitxoak egiteko gai " +"izango. Sistema gehienetan instalazio automatikoak beharrezko osagaiak instalatuko ditu. " +"Hala ere kasu batzuetan huts egiten du. Zuk beti izango duzu moduluak gaitu edo ezgaitzeko " +"aukera bai hemen bai Gune Kudeaketa orrialdean, beraz hemen hartutako erabakiak beranduago " +"alda daitezke." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Zenbait modulu huts egin dezakete instalatzerakoan. Hau ondo dago. Normalean modulu horiek " +"Gune Kudeaketa orrian egin dezakezun konfigurazio batenbat beharko dute" + +msgid "Name" +msgstr "Izena" + +msgid "Version" +msgstr "Bertsioa" + +msgid "Description" +msgstr "Azalpena" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Gallery bertsio honek batera ezina)" + +msgid "(un)check all" +msgstr "(des)markatu denak" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Gaitu gabe %d urratsarekin jarraitu»" + +msgid "Activate Selected Modules" +msgstr "Hautatutako Moduluak Aktibatu" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "%s modulua instalaturik dago, baina konfigurazioa behar du gaitu aurretik" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Instalazioa amaitzerakoan, Kudeatzaile bezala saio hasi eta Gune Kudeaketara joan. " +"Moduluak atalera joan eta behean zerrendaturiko moduluak konfiguratu." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "%s modulua egoki gaitu da" + +msgid "Activate More Modules" +msgstr "Modulu Gehiago Aktibatu" + +#, c-format +msgid "Continue to Step %d»" +msgstr "%d Urratsera Jarraitu»" + +msgid "Debug Output" +msgstr "Arazpen irteera" + +msgid "Welcome to the Gallery Installer" +msgstr "Ongi etorri Gallery instalatzailera" + +#, c-format +msgid "Install %d%% complete" +msgstr "%d%% instalazioa amaiturik" + +msgid "Redo this step" +msgstr "Urrats hau berregin" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: zure argazkiak zure webgunean" + +#, c-format +msgid "Missing files (%d)" +msgstr "Falta diren fitxategiak (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Oharra: Zu SVN-ko Gallery erabiltzen ari zara, beraz azken aldian ezabaturiko fitxategi " +"batzu agertu daitezke. Abisuari kasu ez egitea segurua izan daiteke." + +#, c-format +msgid "Modified files (%d)" +msgstr "Aldatu diren fitxategiak (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Oharra: Zu SVN-ko erabiltzen ari zara, beraz zenbait fitxategi aldatua izana espero da. " +"Hauek alde batetara utzi ditzakezu baina ziurtatu zaitez jarraitu aurretik 'svn update' " +"egiteaz." + +#, c-format +msgid "Old files (%d)" +msgstr "Fitxategi zaharrak (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Fitxategi hauek ez dira hemendik aurrera Gallery-ren zati. Ziurrenik ez dute arazorik " +"sortuko baina ezabatzea ideia ona da instalazioa garbi mantentzeko." + +msgid "Errors occurred. Please see messages below." +msgstr "Erroreak gertatu dira. Mesedez begiratu beheragoko mezuak." + +msgid "Please select the installation type" +msgstr "Mesedez instalazio mota bat hautatu ezazu" + +msgid "Standard installation" +msgstr "Instalazio arrunta" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Hau da lehenetsiriko instalazio mota. Aukeratu instalazio mota hau %s direktorioan %s URL-an " +"ikusiko den galeria berri bat instalatu nahi izan ezkero." + +msgid "Multisite installation" +msgstr "Gune anitzeko instalazioa" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery kodearen instalazio bakar batez banaturiko gune anitz onartzen ditu. Aukeratu " +"instalazio mota hau Gallery berri bat zerbitzari berdinean baina beste bide, domeinu edo URL " +"domeinu batetan instalatu nahi izan ezkero." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Gune anitzek ez dute beraien artean irudirik, erabiltzailerik ez beste ezer partekatzen. " +"Bakoitzak bere datubase eta biltegiratze direktorio berezia behar ditu. Gune anitzeko " +"instalazioari buruz informazio edo argibide gehiagorako jo %s orrialdera." + +msgid "You must enter a directory" +msgstr "Direktorio bat idatzi behar duzu" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Zuk emandako direktorioa iturburu direktorioa da. Galeria bat iturburu direktorioan " +"instalatu nahi izan ezkero, hautatu instalazio estandar mota. Gune anitzeko gune bat " +"instalatu nahi ezkero beste direktorio bat aukeratu." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Emandako direktorioa ez da aurkitzen" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Ezin da emandako direktorioa irakurri. Aldatu iezazkiezu baimenak web zerbitzariak " +"direktorio hau irakurtzea ahalmentzeko." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Ezin dira gune anitz fitxategiak sortu. Ziurtatu beheanzerrendaturiko fitxategiak " +"idazgarriak direla." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Gune anitz guztiak kode errepositorio nagusi honetatik (iturburua) instalatuko dira." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Gune anitz gune berriaren direktorioa idatzi behean. Bidea iturburu instalazio bidearen " +"ezberdina izan behar da:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Direktorioa zure web zerbitzari/php erabiltzailearentzat idazgarria izan behar edo honako " +"fitxategi idazgarri hauek izan behar ditu:" + +msgid "Select Directory" +msgstr "Hautatu direktorioa" + +msgid "Multisite directory setup successfully." +msgstr "Gune anitzeko direktorio ezarpena egoki egin da." + +msgid "Standard installation selected." +msgstr "Instalazio estandarra hautaturik." + +msgid "Install Steps" +msgstr "Instalatu Urratsak" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Zure galeria segurua dela ziurtatu nahi dugu. Instalatzaile honek baimenak editatu dizkion " +"config.php fitxategia beste edonork aldatzeko baimenak ditu. Hau unix sistema baimenetan " +"instalatzailea \"beste pertsona bat\" bezala delako da. Beraz amaitzean fitxategi honen " +"baimenak aldatu beharko zenituzke beste erabiltzaileek fitxategia editatu ezin dezaten. " +"Orain zure config.php fitxategian %s moduan dago. Hau egitea gomendatzen dizugu:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Zure galeria segurua dela ziurtatu nahi dugu. Instalatzaile honek beste edozeinek " +"fitxategiak idatzi edo ezabatu ahal dezan baimenak editatu dizkio config.php fitxategia duen " +"direktorioari. Beraz amaitzean direktorio horren baimenak aldatu beharko zenituzke beste " +"erabiltzaileek bertan idaztea ekiditeko. Hau egitea gomendatzen dizugu:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Benetan aurrera jarraitu nahi ezkero, egin dezakezu. Baina momentu batez zure segurtasuna " +"arakatzea gomendatzen dizugu." + +msgid "We've verified that your config.php is secure." +msgstr "Zure config.php segurua dela egiaztatu dugu." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Mesedez irakurri %1$sGallery Segurtasun Gida%3$s. Ikuspegi labur batetarako begiratu ezazu %2" +"$segiaztapen zerrenda laburra%3$s segurtasun gida beharrean." + +msgid "Check Again" +msgstr "Egiaztatu berriz" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, fuzzy, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Segurtasuna handitzeko web bidez eskuragarri ez den direktorioa bat hautatu Beharko zenuke." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Hau gune anitzeko instalazio bat da. Gogoratu gune anitzetako bakoitzak bere biltegiratze " +"direktorioa behar duela." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Nabigatzaile moderno bat erabiltzen ari bazara, hemen sartzen duzun edozein bide betetzen " +"saiatu gara. Baina zure g2data direktorioaren bidea ezagutzeko arazorik izan ezkero, testu " +"kutxan bideak sartuaz proba ezazu eta zein eratan betetzea eskaintzen zaizun begiratu." + +msgid "The directory you entered is read only" +msgstr "Ezarritako direktorioa irakurketarako bakarrik da" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Errore bat gertatu da biltegiratze direktorio barneko egitura sortzerakoan." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Biltegiratze direktorioa behar bezala ezarri da." + +#, fuzzy, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" +"Segurtasuna handitzeko web bidez eskuragarri ez den direktorioa bat hautatu Beharko zenuke." + +msgid "Directory path:" +msgstr "Direktorio bidea:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Zure web zerbitzaria direktorio honetan idazteko gai zian behar da. Martxan ipintzeko " +"hurrengo adibideak jarrai ditzakezu." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Oharra: Hauek adibideak besterik ez dira! Zure sisteman behar bezala ez funtzionatzea gerta " +"liteke." + +msgid "Unix (with ftp access)" +msgstr "Unix (ftp sarrerarekin)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Kontutan izan ftp zerbitzari eta bezero aginduak aldatu egin daitezkeela kasu batetatik " +"bestera eta agian agindu hauek ez dira zure kasuan baliagarriak. Zure fTP bezeroaren manuala " +"begira ezazu edo sistema kudeatzaileari galde iezaiozu arazorik izan ezkero" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Zenbait zerbitzari ingurunetan, shell bidez edo ftp bidez ikusten diren bideak ez dira PHP " +"inguruneak ikusten dituen berdinak. Zure datu direktorioari benetako bidea jakin ahal " +"izateko, behean dagoen kodea duen dir.php PHP skript-a sortu eta zure datu " +"direktorioan ipini ezazu." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"orduan zure nabegadorean dir.php helbidera bidali (adib %s). Hau da zehazki hemen idatzi " +"behar duzun bidea." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +" Oharra: Honek zure datu direktorioa web bidez eskuragarri izatea eskatzen du, hau " +"irudi suebakia salto egin dezakelako ez da gomendatzen. Bein bidea era honetara jakin " +"duzula, datu direktorioa web bidez eskuragarri ez den leku batetara aldatzea eta orduan " +"bidea hara mugitzea gomendatzen dugu." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Oharra: Amaitzean ez ahaztu dir.php ezabatzea!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Zure gallery biltegiratze direktorioaren segurtasunari buruzko argibideentzat %sSegurtasun " +"Gida%s irakurri." + +msgid "Storage directory set successfully." +msgstr "Biltegiratze direktorioa behar bezala ezarri da." + +msgid "Success" +msgstr "Behar bezala egin da" + +msgid "Warning" +msgstr "Abisua" + +msgid "Failed" +msgstr "Huts egin du" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Apache erabiltzen ari bazara, .htaccess izeneko fitxategi bat sortu ezazu Gallery " +"direktorioan honako eduki honekin:" + +msgid "Version Check" +msgstr "Bertsio Proba" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Hau ez da instalazio garbi bat eta instalaturiko bertsioa ez da berriaren berdina." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Instalaturiko bertsioa ezin da bertsio berria eguneratu!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Instalaturiko bertsioa bertsio berri baina zaharragoa da. Eguneratzailea abiarazi beharko " +"zenuke eta ez instalatzailea!" + +msgid "Currently installed" +msgstr "Instalaturik" + +msgid "New version" +msgstr "Bertsio berria" + +msgid "Go to the Upgrader!" +msgstr "Joan Eguneratzailera!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Zu bertsio-berritzailera joan beharko zinateke. Idatzi zure %s direktorioko %supgrade/index." +"php%s URL-a zure nabigatzailean." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Gallery 2 zerbitzarian instalatzeko %d urrats bete behar dira. Instalatzaile honek 11 urrats " +"horietan gidatu eta Gallery behar bezala martxan ipini arte beste urrats batzu egin behar " +"direnean laguntza eskeiniko dizu. Urrats bat betetzean, edozein momentuan atzera jo eta nahi " +"dituzun aldaketak egin ahal izango dituzu. Mesedez irakurri %sInstaller Help File%s " +"(Ingelesez) jarraitu aurretik." + +msgid "Select Language:" +msgstr "Hizkuntza Hautatu:" + +msgid "Go" +msgstr "Joan" + +msgid "Begin Installation»" +msgstr "Instalazio hasi»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL (3.23.34a bertsio eta berriagoak)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Gallery Muina egoki instalatu da" + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Zorionak, Gallery ingurunea behar bezala instalatu duzu. Hala ere Gallery-ren ezaugarri " +#~ "erabilgarrienak orain instalatu eta konfiguratu ditzakezun modulu gehigarrien bidez " +#~ "instalatzen dira. Hurrengo urratsak Gallery zehazki zuk nahi duzun portamoldea izan " +#~ "dezan moduluak instalatzeko aukera emango dizu." + +#~ msgid "MSSQL (Experimental!)" +#~ msgstr "MSSQL (Esperimentala!)" + +#~ msgid "" +#~ "Gallery needs a directory to store your images. The directory we chose for you will work, " +#~ "but is web accessible." +#~ msgstr "" +#~ "Gallery-k direktorioa bat behar du zure irudiak biltegiratzeko. Instalatzaileak " +#~ "hautatutako direktorioak funtzionatuko du baina web bidez eskuragarria da." + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "Install More Modules" +#~ msgstr "Modulu gehiago instalatu" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Jarraitu aurretik %s direktorioan config.php izeneko fitxategi bat sortu " +#~ "behar duzu. Web zerbitzaria fitxategi horretan idazteko gai dela ziurtatu behar duzu. " +#~ "Unix makina batetan bazaude chmod 666 config.php egiten saiatu. Windowspean ez " +#~ "zenuke ezer bereizirik egin beharko. Bein fitxategi hori sortu eta behar diren baimenak " +#~ "ezarri dituzula, aurrera jarraitu dezakezu. Arazorik aurkitu ezkero nola konpondu esango " +#~ "dizugu." + +#~ msgid "Install Other Modules" +#~ msgstr "Modulu gehiago instalatu" diff --git a/Source/gallery2/install/po/fi.po b/Source/gallery2/install/po/fi.po new file mode 100644 index 0000000..21b71ea --- /dev/null +++ b/Source/gallery2/install/po/fi.po @@ -0,0 +1,1350 @@ +# $Id: fi.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators: +# - 2007 Erkka Hakkarainen +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-20 08:20-0800\n" +"PO-Revision-Date: 2007-01-04 14:28+0200\n" +"Last-Translator: Erkka Hakkarainen \n" +"Language-Team: FI \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Unknown" +msgstr "Tuntematon" + +msgid "Admin User Setup" +msgstr "Admin-käyttäjän asennus" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallerian ylläpitäjä" + +msgid "Authenticate" +msgstr "Autentikoida" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Virhe: tiedostoa login.txt ei löydetty. Sijoita se hakemistoon %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Virhe: tiedostoa login.txt ei pystytty lukemaan. Varmista, että Gallerialla on " +"lukuoikeudet siihen." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Virhe: tiedoston login.txt autentikointiavain on virheellinen. Lataa " +"hakemistoon uusi autentikointitiedosto ja kokeile uudelleen." + +msgid "Create Config File" +msgstr "Luo määritystiedosto" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Hakemiston %s tiedostoon config.php ei voitu kirjoittaa. Tarkasta tiedoston " +"oikeudet. Jos järjestelmäsi on Unix (tms.) voit korjata asian komennolla chmod 666 " +"config.php" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Tiedostoa config.php ei löydetty hakemistosta %s" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Tiedosto config.php on olemassa, mutta siihen ei voida kirjoittaa. Jos palvelimesi on " +"Windows pohjainen, kokeile disabloida tiedoston config.php jakaminen ja aseta sen oikeudet " +"manuaalisesti." + +msgid "Database Setup" +msgstr "Tietokannan määritys" + +msgid "You must have the MySQL PHP module installed" +msgstr "MySQL PHP -moduulin tulee olla asennettuna" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "MySQL Improved PHP -moduulin tulee olla asennettuna" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Ibm_db2 PHP -moduulin tulee olla asennettuna" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "PostgreSQL PHP -moduulin tulee olla asennettuna" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Oracle OCI8 PHP -moduulin tulee olla asennettuna" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Component Object Model (COM) PHP -moduulin tulee olla asennettuna" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Määritä taulun sarakkeiden etuliite (suosittelemme %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Sarakkeiden etuliitteessä saa käyttää vain kirjaimia, numeroita tai alaviivoja" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Määritä taulujen etuliite (suosittelemme %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Taulujen etuliitteessä saa käyttää vain kirjaimia, numeroita tai alaviivoja" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Tyypin %s tietokantayhteyttä ei voitu luoda" + +msgid "Unable to connect to database with the information provided." +msgstr "Antamillasi tiedoilla ei voitu luoda yhteyttä tietokantaan." + +msgid "The database you specified does not exist. Please create it." +msgstr "Määrittämääsi tietokantaa ei ole olemassa. Luo se." + +msgid "The database privileges test did not complete successfully." +msgstr "Tietokannan käyttäjäoikeuksien testissä ilmeni virhe." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallerian taulut ovat jo olemassa tietokannassa, mutta tiedosto versions.dat' puuttuu " +"Gallerian tietohakemistosta. Gallerian oletetaan olevan rikki. Jos oletat, että Gallerian " +"voi korjata, tee oikeaformaattinen 'versions.dat'. Muutoin suorita asennus uudelleen " +"(tyhjentää tietohakemiston ja tietokannan)." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 tietohakemistossa on 'versions.dat' tiedosto vanhasta asennuksesta, mutta Gallerian " +"tietokannan tauluja ei löydy. Valitse uusi asennus tyhjentääksesi tietohakemiston ja " +"edetäksesi asennuksen seuraavaan vaiheeseen." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Gallerian taulut ovat jo olemassa tietokannassa ja tiedosto 'versions.dat' on löytyy " +"tietohakemistosta, mutta tietokannan taulujen versio ei ole sama kuin tietohakemiston " +"versio. Valitse uusi asennus tyhjentääksesi tietokannan ja tietohakemiston ja edetäksesi " +"asennuksen seuraavaan vaiheeseen." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Gallerian taulut löytyvät tietokannasta ja tietohakemisto näyttäisi olevan kunnossa. Valitse " +"joko olemassa olevan tietokannan ja tietovaraston käyttö uudelleen (vanhat tiedot " +"säilytetään) tai uusi asennus (poistaa tietokannan ja tietohakemiston tiedot)." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Tietohakemiston tyhjennys ei onnistunut, tarvittavaa API:a ei voitu suorittaa. Tyhjennä " +"Gallerian tietohakemisto manuaalisesti." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Tietokannan tyhjennys ei onnistunut, tarvittavaa API:a ei voitu suorittaa. Tyhjennä " +"Gallerian tietokanta manuaalisesti." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"G2 API:ia ei voitu ladata. Tyhjennä Gallerian tietohakemisto ja tietokanta manuaalisesti." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a tai uudempi)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (v3.23.34a tai aiempi)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x tai uudempi" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i tai uudempi)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x tai uudempi)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 tai uudempi" + +msgid "Unknown DB type or no known tables information." +msgstr "Tietokannan tyyppi tuntematon tai taulutietoja ei löydy." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "\"%s\" -tyylistä käyttämätöntä taulujen etuliitetä ei löytynyt." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Schema tietostoa: \"%s\" ei voitu avata." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Tietokannan testisekvenssiä ei voitu luoda. Tarkasta palautunut virheilmoitus sekä README." +"html (puuttuvien käyttäjäoikeuksien varalta) ja siivoa tietokanta." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Tietokannan testisekvenssiä ei voitu poistaa. Tarkasta palautunut virheilmoitus ja README." +"html (puuttuvie oikeuksien varalta) ja siivoa tietokanta." + +msgid "Missing SQL statements" +msgstr "Puuttuvat SQL-lauseet" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Tarkasta palautunut virheilmoitus ja README.html (puuttuvien oikeuksien varalta) ja siivoa " +"tietokanta." + +msgid "Finish Installation" +msgstr "Viimeistele asennus." + +msgid "Install Gallery Core" +msgstr "Asenne Gallerian ydin" + +msgid "Installing the core module" +msgstr "Asennetaan Gallerian ydinmoduuli" + +msgid "Unable to initialize our Gallery data" +msgstr "Gallerian tietoja ei voitu alustaa" + +msgid "Unable to communicate with the database" +msgstr "Tietokannan yhteysvirhe" + +msgid "Unable to load the core module" +msgstr "Ydinmoduulia ei voitu ladata." + +msgid "Unable to install the core module" +msgstr "Ydinmoduulia ei voitu asentaa" + +msgid "Unable to activate the core module" +msgstr "Ydinmoduulia ei voitu aktivoida" + +msgid "Unable to commit database transaction" +msgstr "Tietokantatapahtumaa ei voitu vahvistaa (commit)" + +msgid "Core module is only partially installed." +msgstr "Ydinmoduuli on asennettu vain osittain." + +msgid "Install Plugins" +msgstr "Asenna moduulit" + +msgid "Unable to initialize our Gallery session" +msgstr "Galleriaistuntoa ei voitu alustaa" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Moduulia %s ei voitu ladata" + +msgid "Installing modules" +msgstr "Asennetaan moduulit" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Moduulia %s ei voitu asentaa" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Moduulia %s ei voitu aktivoida" + +msgid "Unable to get the module list" +msgstr "Moduulilistaa ei voitu hakea" + +msgid "Other" +msgstr "Muu" + +msgid "Installation Type" +msgstr "Asennustyyppi" + +msgid "Check Security" +msgstr "Tarkasta tietoturva-asetukset" + +msgid "Storage Setup" +msgstr "Tietojen tallennus -asetukset" + +msgid "System Checks" +msgstr "Järjestelmän tarkistaminen" + +msgid "Performing system checks" +msgstr "Suoritetaan järjestelmän tarkistukset" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP versio >= 4.3.0 tai >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Virhe: Galleria 2 tarvitsee PHP joko version 4.3.0 tai 5.0.4 (tai uudemman). Nykyinen PHP " +"versio on %s . Ota yhteyttä http-palvelimen ylläpitäjään pyytääksesi versiopäivityksen. " +"Päivitys on saatavissa %sPHP:n sivuilta%s." + +msgid "PHP Version" +msgstr "PHP Versio" + +msgid "FILE directive supported" +msgstr "FILE direktiivi on tuettu" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Virhe: PHP __FILE__ direktiivi ei toimi oikein. Tee tukipyyntö joko http-palvelimen " +"ylläpitäjälle tai Gallerian käyttäjäfoorumiin." + +msgid "FILE Directive" +msgstr "FILE Direktiivi" + +msgid "Safe mode disabled" +msgstr "Safe mode disabloitu" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Virhe: PHP-versiossasi on 'safe mode' enabloituna. Galleria toimii vain, jos se on " +"disabloituna." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Regular expressions" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Virhe: PHP-versiosi on asennettu ilman %sPerl Compatible Regular Expressions%s -tukea. " +"Galleria ei toimi ilman näitä funktioita." + +msgid "exec() allowed" +msgstr "exec() sallittu" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Varoitus: PHP-funktio exec() on disabloitu disabled_functions parametrillä php.ini -" +"tiedostossa. Et voi käyttää moduuleita, jotka käyttävät ulkoisia ohjelmia (esim. " +"ImageMagick, NetPBM tai Ffmpeg). Asetus koskee koko php-asennusta, joten sinun täytyy " +"muuttaa se globaalina php.ini:ssä" + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() sallittu" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Varoitus: Funktio set_time_limit() on disabloitu disabled_functions parameterillä in " +"php.ini:ssä. Galleria ei toimi luotettavasti toimii tässä moodissa.Kaikki toiminnot, jotka " +"kestävät pidempään, kuin %d sekuntia epäonnistuvat (ja joissain tapauksissa palauttavat vain " +"tyhjän sivun) sekä saattavat korruptoida tallennettuja tietoja." + +msgid "Filesystem Operations" +msgstr "Tiedostojärjestelmätoiminnot" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Virhe: PHP:n tiedostojärjestelmätoiminnot on disabloitu disabled_functions " +"parameterillä in php.ini:ssä. Toiminnot täytyy sallia, jotta Galleria toimisi. Puuttuvat " +"funktiot ovat: %s." + +msgid "Memory limit" +msgstr "Muistiraja" + +msgid "no limit" +msgstr "ei rajaa" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Varoitus: PHP on määritetty rajoittamaan muistinkäyttönsä määrään %sb (memory_limit " +"parametri php.ini:ssä). Nosta raja ainakin määrään %sMB jotta Galleria toimisi " +"kunnolla." + +msgid "File uploads allowed" +msgstr "Tiedostojen uploadit sallitaan" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Varoitus: PHP on määritetty kieltämään tiedostojen uploadit (file_uploads parametri " +"php.ini:ssä). Toiminto tulee sallia, jos haluat uploadata kuvia Galleriaan Web-selaimella." + +msgid "Maximum upload size" +msgstr "Maksimi upload koko" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Varoitus: PHP on määritetty rajoittamaan uploadattavien tiedostojen kooksi %sb " +"(upload_max_filesize parametri php.ini:ssä). Nosta kokorajoitusta, jos haluat " +"uploadata isompia tiedostoja." + +msgid "Maximum POST size" +msgstr "Maximi POST -koko" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Warning: PHP on määritetty rajoittamaan post -tyylisen tiedonsiirron kokoonf %sb " +"(post_max_size parametri php.ini:ssä). Nosta rajoitusta, jos haluat uploadata isompia " +"tiedostoja." + +msgid "Translation support" +msgstr "Kieliversioiden tuki" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Webselaimesi ei tue lokalisointeja. Jotta tuki eri kieliversioille toimisi, pyydä palvelimen " +"ylläpitäjää enabloimaan PHP:n %sgettext%s -tuki." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"PHP:stä puuttuu funktio %sbind_textdomain_codeset%s. Galleria saattaa näyttää joidenkin " +"kielien erikoisemmat merkit väärin." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"PHP:stä puuttuu funktio %sdngettext%s. Gallerian kieliversioiden monikkomuotoiset sanat " +"eivät toimi." + +msgid "Zend compatibility mode" +msgstr "Zend yhteensopivuus" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Varoitus: PHP on määritetty Zend ze1_compatibility_mode:lla joka saattaa kaataa PHP:n. " +"Klikkaa tästä testataksesi PHP:n toimivuuden. Jos näet tekstin \"SUCCESS" +"\" PHP toimii. Jos palautuu virhe, sinun täytyy ottaa ze1_compatibility_mode pois käytöstä " +"jatkaaksesi." + +msgid "putenv() allowed" +msgstr "putenv() sallittu" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Varoitus: PHP:n putenv() funktio on disabloitu disabled_functions parametrillä in php." +"ini:ssä. Galleria toimii myös tällä asetuksella, mutta joissain harvoissa tapauksissa " +"Galleria ei saata toimia muilla kieliversioilla kuin englanti." + +msgid "Output buffering disabled" +msgstr "Output buffering disabloitu" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Varoitus: PHP:n Output buffering on päällä %s parametrillä php.ini:ssä. Galleria " +"toimii myös näillä asetuksilla (lataaminen on jopa nopeampaa), mutta Galleria ei saata " +"pystyä jakelemaan suuri tiedostoja (kuten videoita) tai tai Gallerian muistiraja saattaa " +"tulla vastaan. Jotkut toiminnot, kuten toiminnon edistymistä osoittavat palkit eivät toimi, " +"jos output buffering on päällä, paitsi jos ini_set() on sallittu." + +msgid "Gallery file integrity" +msgstr "Gallerian tiedostojen turvallisuus" + +msgid "Test skipped due to other errors." +msgstr "Testi keskeytettiin muiden virheiden takia." + +msgid "Theme available" +msgstr "Teema saatavilla" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Virhe: ainakin yhden teeman tulee olla saataville hakemistossa: %s" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest (tiedosto?) puuttuu tai oikeudet eivät riitä lukemaan sitä." + +msgid "Welcome" +msgstr "Tervetuloa!" + +msgid "Please correct the following errors" +msgstr "Korjaa seuraavat virheet" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Gallerialla tulee olla ainakin yksi Administrator -käyttäjä jolla on täydet oikeudet " +"katsella ja muuttaa kaikkia kohteita. Ole hyvä ja valitse käyttäjänimi ja salasana " +"pääasialliselle Administrator -käyttäjälle. Voit lisätä muut käyttäjät myöhemmin." + +msgid "Admin username" +msgstr "Admin -käyttäjänimi" + +msgid "Please enter a valid user name" +msgstr "Anna kelvollinen käyttäjänimi" + +msgid "Please enter a password" +msgstr "Anna salasana" + +msgid "Password" +msgstr "Salasana" + +msgid "Setup password" +msgstr "Setup salasana" + +msgid "(type again)" +msgstr "(kirjoita sama uudelleen)" + +msgid "Admin email address" +msgstr "Admin email-osoite" + +msgid "Please enter a valid email address" +msgstr "Anna kelvollinen email-osoite" + +msgid "Admin full name (optional)" +msgstr "Admin-käyttäjän koko nimi (valinnainen)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Salasana puuttuu! Anna sama salasana kahdesti" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Antamasi salasanat eivät vastaa toisiaan! Yritä uudelleen." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Tämä ei ole uusi asennus, koska käytät vanhaa tietokantaa. Ainoastaan setup-salasana " +"vaihdetaan ja Gallerian admin-salasana jätetään ennalleen. Vaihtaaksesi gallerian admin-" +"salasanan, käytä \"Unohdin salasanan\" toimintoa Galleriassa." + +msgid "Create" +msgstr "Luo" + +msgid "Save" +msgstr "Tallenna" + +msgid "Admin user info entered successfully." +msgstr "Admin-käyttäjän tiedot syötettiin onnistuneesti." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Henkilöllisyytesi on varmistettava ennenkuin asennus voi jatkua. Paras tapa tehdä tämä on " +"pyytää sinua tekemään pieni muutos Gallerian hakemistorakenteeseen, jolla osoitetaan että " +"sinulla on tarvittavat oikeudet asennuksen jatkamiseen. Ole hyvä ja luo tekstitiedosto " +"login.txt hakemistoon %s http-palvelimellasi (hakemisto on sama, " +"mistä löydät main.php -tiedoston). login.txt -tiedoston tulee sisältää seuraavat " +"satunnaisesti generoidut merkit:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Helpottaaksemme työtä, olemme luoneet %svalmiin version login.txt%s -tiedostosta. Lataa " +"tiedosto eo. linkistä ja kopioi se hakemistoon %s" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Kun login.txt tiedosto on paikoillaan, klikkaa ao. linkkiä jatkaaksesi." + +msgid "Authenticate Me" +msgstr "Autentikoi minut" + +msgid "Authentication successful!" +msgstr "Autentikointi onnistui" + +msgid "Erase data for a clean install" +msgstr "Pyyhi tiedot uutta asennusta varten" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "Haluatko varmasti poistaa kaikki tiedot Gallerian tietohakemistosta ja tietokannasta?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "Tapahtui virhe poistettaessa tietoja tietokannasta ja/tai hakemistosta. Virhe oli:" + +msgid "Cancel" +msgstr "Peruuta" + +msgid "Erase all data" +msgstr "Poista kaikki tiedot" + +msgid "Please fix this error and try again." +msgstr "Korjaa virhe ja yritä uudelleen." + +msgid "Try Again" +msgstr "Yritä uudelleen" + +msgid "Create a config file" +msgstr "Luo config -tiedosto" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Antamasi asennustiedot kirjoitetaan nyt tiedostoon config.php hakemistossa %s. " +"Tiedosto on tärkeä Gallerian toiminnan kannalta. Kun tiedosto on luotu, voit lukea ja " +"muokata sitä tarvittaessa." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Ennenkuin jatkat, luo tiedosto config.php hakemistoon %s. Varmista, että http-" +"palvelimellasi on kirjoitusoikeudet siihen." + +msgid "Unix (with shell access)" +msgstr "Unix/Linux (komentorivi käyttö)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Windows -ympäristössä ei yleensä tarvitse tehdä mitään." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Kun olet luonut tiedoston ja asettanut sille sopivat oikeudet, voit jatkaa. Jos löytyy " +"ongelma, kerromme kuinka korjata se." + +msgid "Create config file" +msgstr "Luo config -tiedosto" + +msgid "Config file created successfully." +msgstr "Config -tiedosto luotiin onnistuneesti." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Asennustiedot on kirjoitettu tiedostoon config.php Galleria-hakemistossasi. Voit " +"halutessasi lukea ja muuttaa sitä. Ole kuitenkin varovainen, koska jos tiedostossa on " +"virheitä, Galleria ei toimi kunnolla." + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Valitse tietokannan tyyppi ja anna autentikointitiedot tietokantaan. Asennusohjelma ei luo " +"tietokantaa puolestasi, joten sinun täytyy tehdä se itse ja antaa tietokannan nimi tässä. " +"Jos asennat Gallerian tiedot olemassa olevaan tietokantaan, taulu- ja sarake-etuliitteet " +"takaavat että Gallerian tietokantatiedot eivät aiheuta konflikteja vanhojen tietojen kanssa." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Tämä on multisite -asennus. Muista, että jokainen erillinen Galleria-palvelu vaatii omat " +"tietokantataulunsa. Käytä eri tietokantoja tai erilaista taulujen etuliitteitä jokaiselle " +"eri Galleria-palvelulle!" + +msgid "Database type:" +msgstr "Tietokannan tyyppi:" + +msgid "DB Hostname:" +msgstr "DB Hostname:" + +msgid "DB Username:" +msgstr "DB Username:" + +msgid "DB Password:" +msgstr "DB Password:" + +msgid "DB Name:" +msgstr "DB Name:" + +msgid "Table Prefix:" +msgstr "Taulun etuliite:" + +msgid "Column Prefix:" +msgstr "Sarakkeen etuliite:" + +msgid "We received the following database related errors:" +msgstr "Tietokanta (tai vast.) palautti seuraavat virheet:" + +msgid "Erase Data For A Clean Install" +msgstr "Poista tiedot uutta asennusta varten" + +msgid "Reuse Existing Tables" +msgstr "Käytä vanhoja tauluja uudelleen" + +msgid "Database set up successfully." +msgstr "Tietokannan määritys onnistui." + +msgid "Finished!" +msgstr "Valmis!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Onnittelut! Gallerian asennus on valmis! Kuten huomasit, ei ollut vaikea homma. Ja eikun " +"lisäilemään kuvia!" + +msgid "Go to my Gallery!" +msgstr "Siirry Galleriaan!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Voit nyt siirtyä Galleriaasi. Kirjoita URL selaimeesi päästäksesi %smain.php%s tiedostoon, " +"hakemistossa %s." + +msgid "Installer Help" +msgstr "Asennusohjelman avusteet" + +msgid "Start Over" +msgstr "Aloita Alusta" + +msgid "Error installing Gallery Core" +msgstr "Virhe asennettaessa Gallerian ydinmodulia" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Jokin meni vikaan asennettaessa ydinmodulia. Mitä haluat tehdä?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Mene asennuksen \"Järjestelmätarkistukset\" -osioon ja varmista että kaikki kohdat näyttivät " +"tekstiä 'Success'. Yleinen virheen syy on ohitettu tiedoston oikeustarkistus." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Jos \"Järjestelmätarkistus\" -osio ei näytä virheitä, tyhjennä Gallerian tietohakemisto ja " +"tietokanta ja yritä asennusta uudelleen (toista kaikki kohdat)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Käy katsomassa %sG2 FAQ%s ja lue osio %sKnown issues section of the Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Jos ongelmat jatkuvat, kopioi asennuksen loki, jonka löydät täältä: %s ja liitä se pakattuna " +"(install.log.zip) uuteen forum-aiheeseen %sG2 support forumilla%s, tai jos mahdollista liitä " +"tekstiin linkki install.log -tiedostoon. Tällöin tuesta vastaavat henkilöt voivat analysoida " +"sen tarvittaessa." + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Gallerian ydinmoduuli asennettiin onnistuneesti." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Gallerian ydinmoduuli on nyt asennettu onnistuneesti. Vaikka kaikki toimiikin nyt, sinun " +"tulee jatkaa asennusohjelmaa, jotta voit lisätä valinnaisia moduuleja. Tällöin saat irti " +"kaiken haluamasi toiminnallisuuden Galleriasta." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Seuraavat moduulit voidaan asentaa ja aktivoida automaattisesti. Sinun tulee asentaa ainakin " +"yksi grafiikkamoduli - muuten Galleria ei voi tehdä esikatselukuvia. Useimmissa " +"järjestelmissä automaattinen asennus toimii mainiosti. Voit aina aktivoida uusia moduuleja " +"ja deaktivoida käytössä olevia \"Sivuston ylläpito\" -sivuilta, joten nyt tekemäsi valinnat " +"eivät ole lopullisia." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Jotkin moduulit eivät saata asentua automaattisesti - tämä on normaalia. Tyypillisesti tämä " +"tarkoittaa, että moduuli tarvitsee määrittelyä, jonka voit tehdä \"Sivuston ylläpito\" -" +"sivuilla." + +msgid "Name" +msgstr "Nimi" + +msgid "Version" +msgstr "Versio" + +msgid "Description" +msgstr "Kuvaus" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Yhteensopimaton tämän Galleriaversion kanssa)" + +msgid "(un)check all" +msgstr "Valitse kaikki / poista valinnat" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Jatka vaiheeseen %d ilman aktivointia»" + +msgid "Activate Selected Modules" +msgstr "Aktivoi valitut moduulit" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"%s moduuli asennettiin, mutta tarvitsee määrittelyä ennenkuin voit aktivoida sen" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Asennuksen valmistuttua kirjaudu Galleriaan Admin-tunnuksilla ja mene \"Sivuston ylläpito\" -" +"sivuille. Valitse sieltä kohta Moduulit nähdäksesi ja määrittääksesi moduuleita." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Moduuli %s aktivoitiin onnistuneesti" + +msgid "Activate More Modules" +msgstr "Aktivoi lisää moduuleita" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Jatka vaiheeseen %d»" + +msgid "Debug Output" +msgstr "Debug Output" + +msgid "Welcome to the Gallery Installer" +msgstr "Tervetuloa Gallerian asennusohjelmaan" + +#, c-format +msgid "Install %d%% complete" +msgstr "Asennus %d%% valmis" + +msgid "Redo this step" +msgstr "Toista tämä vaihe" + +msgid "Gallery: your photos on your website" +msgstr "Galleria: sinun kuvasi sinun www-sivuillasi" + +#, c-format +msgid "Missing files (%d)" +msgstr "Puuttuvat tiedostot (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Huom! Galleriaa ajetaan SVN:n moodissa, joten lähiaikana poistettuja tiedostoja saattaa " +"näkyä tässä. On turvallisempaa ohittaa ne." + +#, c-format +msgid "Modified files (%d)" +msgstr "Muutettuja tiedostoja (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Huom! Galleriaa ajetaan SVN:n moodissa, joten osa tiedostoista on muuttuvia. Voit yleensä " +"ohittaa ne, mutta varmuuden vuoksi kannattaa suorittaa 'svn update' ennen jatkamista." + +#, c-format +msgid "Old files (%d)" +msgstr "Vanhoja tiedostoja (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Nämä tiedostot eivät kuulu enää Galleriaan. Ne eivät yleensä aiheuta ongelmia, mutta on " +"turvallisempaa poistaa ne asennuksen eheyden takia." + +msgid "Errors occurred. Please see messages below." +msgstr "Virhe. Katso ao. viestit." + +msgid "Please select the installation type" +msgstr "Valitse asennustyyppi" + +msgid "Standard installation" +msgstr "Standardiasennus" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Tämä on asennuksen oletustyyppi. Valitse tämä asennustyyppi, jos haluat asentaa uuden " +"Gallerian hakemistoon %s URL-osoitteelle %s." + +msgid "Multisite installation" +msgstr "Multisite asennus" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Galleria tukee useampia itsenäisiä Galleria-palveluita. Valitse tämä asennustyyppi, jos " +"haluat asentaa uuden Gallerian samalla http-palvelimelle, mutta eri polkuun, alidomainiin " +"tai URL-osoitteeseen." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Gallerian eri multisite-palvelut eivät käytä samoja albumeja, kuvia, käyttäjiä tai muitakaan " +"sisältökohteita. Eri palvelut tarvitsevat oman tietokantansa ja tietohakemistonsa. " +"Lisätietoja multisite-asennuksesta, vieraile sivulla %s." + +msgid "You must enter a directory" +msgstr "Sinun täytyy antaa hakemisto" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Annettu hakemisto on Gallerian koodihakemisto. Jos haluat asentaa Gallerian " +"koodihakemistoon, valitse standardi asennustyyppi. Jos haluat tehdä multisite asennuksen, " +"valitse toinen hakemisto." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Antamaasi hakemistoa ei ole olemassa tai http-palvelimella ei ole pääsyoikeuksia siihen. " +"Http-palvelimellasi on pääsyoikeus ainostaan seuraaviin hakemistoihin. Valitse jokin näistä " +"hakemistoista tai muokkaa PHP:n open_basedir asetusta sallimaan pääsy haluamaasi " +"hakemistoon." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Jos multisite asennuksesi on toisella virtual host:illa, ota yhteyttä järjestelmän " +"ylläpitäjään ja pyydä että hän muuttaisi PHP:n open_basedir asetusta siten, että " +"virtual host:eilla on pääsyoikeudet toisilleen." + +msgid "The directory you entered does not exist" +msgstr "Antamaasi hakemistoa ei ole olemassa" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Antamaasi hakemistoon ei päästä. Muuta sen oikeuksia siten että http-palvelimellasi on " +"lukuoikeuden siihen." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Ei pystytty luomaan multisite -tiedostoja. Varmista, että ao. tiedostoihin on " +"kirjoitusoikeudet." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Kaikki multisite asennukset on tehty tästä koodirepositorystä (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Syötä ao. kenttään uuden multisite-asennuksen hakemisto. Polun pitää olla eri kuin codebasen " +"asennuspolku:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Http-palvelimella ja php-käyttäjällä tulee olla kirjoitusoikeudet hakemistoon tai ao. " +"tiedostoihin:" + +msgid "Select Directory" +msgstr "Valitse hakemisto" + +msgid "Multisite directory setup successfully." +msgstr "Multisite hakemiston asennus onnistui." + +msgid "Standard installation selected." +msgstr "Standardi-asennus valittu." + +msgid "Install Steps" +msgstr "Asennuksen vaiheet" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Haluamme varmistaa, että Galleria-palvelu on tietoturvallinen. Tiedostoon config.php (jota " +"asennus on muokannut) on kirjoitusoikeudet, jotka mahdollistavat tiedoston muokkaamisen " +"muillekin. Tämä on tarpeen, koska asennusohjelmaa käsitellään Unix-ympäristössä \"muuna " +"käyttäjänä\". Ennenkuin lopetat, sinun tulee muuttaa tiedoston käyttöoikeudet siten, että " +"muut käyttäjät eivät voi muokata sitä. Nyt config.php tiedoston oikeudet ovat: %s. " +"Suosittelemme että teet seuraavasti:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Haluamme varmistaa, että Galleria-palvelu on tietoturvallinen. Hakemistolla, jossa config." +"php on (jota asennus on muokannut) on oikeudet, jotka mahdollistavat tiedoston muokkaamisen " +"ja poistamisen muillekin. Ennenkuin lopetat, sinun tulee muuttaa hakemiston käyttöoikeudet " +"siten, että muut käyttäjät eivät voi muokata sitä. Suosittelemme että teet seuraavasti:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Jos varmasti haluat jatkaa, voi tehdä niin. Suosittelemme kuitenkin että käytät hetken " +"tietoturvan varmistamiseen." + +msgid "We've verified that your config.php is secure." +msgstr "Olemme varmistaneet, että config.php:n oikeudet ovat turvalliset." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Ole hyvä ja lue %1$sGallery Security Guide%3$s. Yhteenvedon löydät kohdasta %2$sshort check " +"list%3$s ko. oppaassa." + +msgid "Check Again" +msgstr "Tarkista uudelleen" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Galleria tarvitsee hakemiston, johon tallentaa kuvat. Valittu oletushakemisto toimii, mutta " +"sen nimi ja sijainti eivät tarjoa tarpeellista tietoturvaa. Valitse uusi hakemisto, joka ei " +"ole hakemistorakenteen %sdocument root%s sisällä, tai lisää ehdotetun hakemiston nimeen " +"sattumanvaraisesti valittu merkkijono (esim. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Maksimaalisen tietoturvan saavuttamiseksi valitse hakemisto, johon %sei ole pääsyä verkosta%" +"s. Jos tämä ei ole mahdollista, anna hakemistolle sattumanvarainen nimi." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Jos valitsit \"sattumanvarainen nimi\" -menetelmän tai haluat käyttää oletushakemistoa, ole " +"hyvä ja vahvista valinta." + +msgid "Yes, please omit the security check:" +msgstr "Kyllä, ohita tietoturvatarkastus:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Tämä on multisite asennus. Muista että kukin Galleria-palvelu tarvitsee oman " +"tietohakemistonsa." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Jos käytät modernia selainta, yritämme antamasi polun autocomplete:a. Jos sinulla on " +"vaikeuksia löytää oikeaa polkua g2data hakemistoon, kokeile syöttää eri polkujen alkuja ao. " +"kenttään ja katso, mitä autocomplete tarjoaa." + +msgid "The directory you entered is read only" +msgstr "Antamasi hakemistoon on vain lukuoikeudet" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Tapahtui virhe luotaessa hakemistorakennetta tietohakemistoon." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Tietohakemistoosi pääsee %sverkosta käsin%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Ei pystytty varmistamaan, ettei tietohakemistoosi pääse %sverkosta käsin%s." + +msgid "Directory path:" +msgstr "Hakemiston polku:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Http-palvelimellasi tulee olla kirjoitusoikeudet tähän hakemistoon. Antaaksesi sopivat " +"oikeudet seuraa näitä esimerkkejä." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "Huom! Nämä ovat vain esimerkkejä. Voi olla, että ne eivät toimi järjestelmässäsi." + +msgid "Unix (with ftp access)" +msgstr "Unix/Linux (ftp-käytöllä)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Huomioi, että FTP-palvelimet ja -clientit ovat erilaisia, joten nämä esimerkit eivät saata " +"toimia järjestelmässäsi. Tarkasta FTP-ohjelmistojen ohjeista oikeat komennot tai pyydä apua " +"järjestelmän ylläpitäjältä." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Joissain Web hosting ympäristöissä polut, jotka näkyvät FTP:n tai komentotulkin kautta eivät " +"ole samoja, kuin mitä PHP näkee. Löytääksesi todellisen polun tietohakemistoosi, voi " +"kokeilla seuraavan PHP-skriptin luomista. Tee tietohakemistoosi tiedosto dir.php ja " +"laita siihen seuraava koodi." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"sen jälkeen päättele kokeilemalla oikea URL dir.php:hen Web-selaimessa (esim. %s). Tämä " +"kertoo oikean polun hakemistoosi." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Huom!: Jotta tämä toimisi, tietohakemistosi tulee olla saatavilla verkosta käsin (ko. " +"asennustapa ei ole suositeltu, koska tällöin kuvatiedostoja suojaava \"palomuuri\" voidaan " +"ohittaa). Kun olet löytänyt oikean polun, suosittelemme että siirrät tietohakemistosi " +"paikkaan, jossa siihen ei pääse käsiksi verkosta. Tämän jälkeen päivitä muuta polku uuden " +"sijoituspaikan mukaiseksi." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Huom!: Älä unohda tuhota dir.php tiedostoa, kun olet valmis!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Lisätietoja Gallerian tietohakemiston tietoturvasta löydät oppaasta %sSecurity Guide%s." + +msgid "Storage directory set successfully." +msgstr "Tietohakemisto asennettiin onnistuneesti." + +msgid "Success" +msgstr "Onnistui" + +msgid "Warning" +msgstr "Varoitus" + +msgid "Failed" +msgstr "Epäonnistui" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Jos käytät Apachea http-palvelimena, luo tiedosto .htaccess Gallerian päähakemistoon ja " +"lisää siihen seuraava sisältö:" + +msgid "Version Check" +msgstr "Versiotarkistus" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Tämä on uusi asennus, mutta jo asennettu versio ei ole sama kuin uusi asennettava versio." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Jo asennettua versiota ei voida päivittää uuteen versioon!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Jo asennettu versio on vanhempi kuin asennettava versio. Sinun tulee käyttää " +"päivitystoimintoa (upgrader) eikä asennustoimintoa (installer)!" + +msgid "Currently installed" +msgstr "Nykyinen asennus" + +msgid "New version" +msgstr "Uusi versio" + +msgid "Go to the Upgrader!" +msgstr "Käytä päivitystoimintoa (upgrader)" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Sinun tulee käyttää päivitystoimintoa (upgrader). Laita selaimesi kohderiville %s/upgrade/" +"index.php%s hakemistossa %s" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Galleria 2:sen asennus http-palvelimellesi vaatii %d vaihetta. Tämä asennusohjelma ohjaa ja " +"opastaa sinua asennuksen vaiheissa. Asennusohjelma neuvoo myös jos asennus vaatii " +"lisätoimenpiteitä. Jos haluat, pääset jokaisen vaiheen jälkeen palaamaan myös taaksepäin ja " +"tekemään muutoksia. Lue %sInstaller Help File%s ennenkuin jatkat asennusta." + +msgid "Select Language:" +msgstr "Valitse kieli:" + +msgid "Go" +msgstr "Siirry" + +msgid "Begin Installation»" +msgstr "Aloita asennus»" diff --git a/Source/gallery2/install/po/fr.po b/Source/gallery2/install/po/fr.po new file mode 100644 index 0000000..b8c85b9 --- /dev/null +++ b/Source/gallery2/install/po/fr.po @@ -0,0 +1,1396 @@ +# $Id: fr.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-07-06 23:48+0200\n" +"PO-Revision-Date: 2007-01-01 00:00+0100\n" +"Last-Translator: Arnaud MOURONVAL \n" +"Language-Team: French \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Unknown" +msgstr "Inconnu" + +msgid "Admin User Setup" +msgstr "Paramétrage de l'utilisateur d'administration" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Administrateur de Gallery" + +msgid "Authenticate" +msgstr "Authentification" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Erreur : impossible de localiser le fichier login.txt. Merci de le placer " +"dans le répertoire %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Erreur : impossible de lire le fichier login.txt. Merci de donner à " +"Gallery le droit de lire ce fichier." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Erreur :votre clef du dans le fichier login.txt ne correspond pas. Merci " +"de réessayer avec la chaîne d'authentification ci-dessous." + +msgid "Create Config File" +msgstr "Création du fichier de configuration" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Impossible d'écrire le fichier de configuration config.php dans le répertoire %s. " +"Merci de modifier ses permissions. Si vous êtes sous Unix, vous pouvez utiliser la commande " +"chmod 666 config.php pour corriger celà." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Le fichier config.php n'existe pas dans votre répertoire %s" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Le fichier config.php existe mais n'est pas accessible en écriture. Si votre serveur est " +"sous Windows, vous pouvez avoir à supprimer le partage de fichier pour ce fichier et à " +"définir ses permissions manuellement." + +msgid "Database Setup" +msgstr "Paramétrage de la base de données" + +msgid "You must have the MySQL PHP module installed" +msgstr "Le module PHP MySQL doit être installé" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Le module PHP MySQL amélioré doit être installé" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Le module PHP ibm_db2 doit être installé" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Le module PHP PostgreSQL doit être installé" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Le module PHP Oracle OCI8 doit être installé" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Le module PHP Component Object Model (COM) doit être installé" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Vous devez définir un préfixe de colonne (nous recommandons %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Utilisez uniquement des lettres, chiffre et tirets-bas '(_) pour le préfixe de colonne" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Vous devez définir un préfixe de table (nous recommandons %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Utilisez uniquement des lettres, chiffre et tirets-bas '(_) pour le préfixe de table" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Impossible de créer une connection à la base de données de type %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Impossible de se connecter à la base de données avec les informations fournies." + +msgid "The database you specified does not exist. Please create it." +msgstr "La base de données que vous avez spécifié n'existe pas. Merci de la créer." + +msgid "The database privileges test did not complete successfully." +msgstr "Le test des privilèges de la base de données ne s'est pas terminé correctement." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Les tables de Gallery existent déjà dans cette base ! Cependant, il n'y a pas de " +"fichier 'versions.dat' dans votre répertoire de stockage, ce que nous interprétons comme une " +"installation défectueuse de Gallery 2. Vous pouvez au choix créer un fichier 'versions.dat' " +"au bon format si vous pensez que cette installation de Gallery doit encore fonctionner, ou " +"alors séletionner une installation vierge ce qui effacera toutes les données dans la base de " +"données et dans le répertoire de stockage." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Le répertoire de stockage de Gallery dispose d'un fichier 'versions.dat' d'une ancienne " +"installation. Cependant les tables de Gallery n'existent plus dans la base de données. " +"Veuillez sélectionner une installation vierge pour supprimer toutes les données dans le " +"répertoire de stockage et continuer à l'étape suivante." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Les tables de Gallery existent déjà dans la base de données et il y a un fichier 'versions." +"dat' dans le répertoire de stockage. Cependant la version des données dans la base ne " +"correspond pas à la version des données dans le répertoire de stockage. Veuillez " +"sélectionner une installation vierge pour supprimer toutes les données dans la base et dans " +"le répertoire de stockage et continuer à l'étape suivante." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Les tables de Gallery existent déjà dans la base de données et le répertoire de stockage de " +"Gallery semble intact. Vous pouvez au choix réutiliser les données en base de données et " +"dans le répertoire de stockage ou sélectionner une installation vierge pour effacer toutes " +"ces données." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Impossible d'exécuter l'API pour effacer les données dans le répertoire de stockage. " +"Veuillez les supprimer manuellement." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Impossible d'exécuter l'API nécessire pour effacer les tables de Gallery dans la base de " +"données. Veuillez les supprimer manuellement." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Impossible de charger l'API de Gallery 2. Veuillez effacer manuellement les tables de " +"Gallery dans la base de données et les données dans le répertoire de stockage." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a et plus récent)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versions antérieures à v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x et plus récentes" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i et plus récent)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x et plus récentes)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 et plus récentes" + +msgid "Unknown DB type or no known tables information." +msgstr "Type de base de données inconnu ou aucune information sur les tables connues." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Impossible de trouver un préfixe de table similaire à \"%s\" et inutilisé." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Impossible d'ouvrir le fichier de schéma : \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Impossible de créer une séquence de test pour la base de données. Consultez le message " +"d'erreur retourné et le fichier README.html pour déterminer les privilèges manquants et pour " +"nettoyer la base de données." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"La séquence de test de la base de données a échoué.Consultez le message d'erreur retourné et " +"le fichier README.html pour déterminer les privilèges manquants et pour nettoyer la base de " +"données." + +msgid "Missing SQL statements" +msgstr "Instructions SQL manquantes" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Consultez le message d'erreur retourné et le fichier README.html pour déterminer les " +"privilèges manquants et pour nettoyer la base de données." + +msgid "Finish Installation" +msgstr "Finir l'installation" + +msgid "Install Gallery Core" +msgstr "Installation du noyau de Gallery" + +msgid "Installing the core module" +msgstr "Installation du module noyau" + +msgid "Unable to initialize our Gallery data" +msgstr "Impossible d'initialiser les données de Gallery" + +msgid "Unable to communicate with the database" +msgstr "Impossible de se connecter à la base de données" + +msgid "Unable to load the core module" +msgstr "Impossible de charger le module «Core»" + +msgid "Unable to install the core module" +msgstr "Impossible d'installer le module «Core»" + +msgid "Unable to activate the core module" +msgstr "Impossible d'activer le module «Core»" + +msgid "Unable to commit database transaction" +msgstr "Impossible de valider (commit) la transaction en base de données" + +msgid "Core module is only partially installed." +msgstr "Le module «Core» n'est que partiellement installé" + +msgid "Install Plugins" +msgstr "Installation des composants" + +msgid "Unable to initialize our Gallery session" +msgstr "Impossible d'initialiser notre session Gallery" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Impossible de charger le module %s" + +msgid "Installing modules" +msgstr "Installation des modules" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Impossible d'installer le module %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Impossible d'activer le module %s" + +msgid "Unable to get the module list" +msgstr "Impossible d'obtenir la liste des modules" + +msgid "Other" +msgstr "Autre" + +msgid "Installation Type" +msgstr "Type d'installation" + +msgid "Check Security" +msgstr "Vérification de la sécurité" + +msgid "Storage Setup" +msgstr "Paramétrage du stockage" + +msgid "System Checks" +msgstr "Vérification du système" + +msgid "Performing system checks" +msgstr "Vérification du système en cours" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "Version de PHP >= 4.3.0 ou >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Erreur : Gallery 2 nécessite PHP en version 4.3.0 ou ultérieure, ou 5.0.4 ou " +"ultérieure. La version de PHP installée est %s. Veuillez contacter votre administrateur " +"système pour obtenir une mise à jour disponible sur le %ssite de PHP%s." + +msgid "PHP Version" +msgstr "Version de PHP" + +msgid "FILE directive supported" +msgstr "Directive FILE supportée" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Erreur : votre directive PHP __FILE__ ne fonctionne pas correctement. Merci d'adresser " +"une demande d'assistance auprès de l'administrateur de votre serveur Web ou dans les forums " +"dédiés de Gallery." + +msgid "FILE Directive" +msgstr "Directive FILE" + +msgid "Safe mode disabled" +msgstr "Mode Safe désactivé" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Erreur : votre installation de PHP est configurée avec l'option Safe Mode. Vous devez " +"désactiver cette option pour que Gallery fonctionne." + +msgid "Safe Mode" +msgstr "Mode Safe" + +msgid "Regular expressions" +msgstr "Expressions régulières" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Erreur : votre installation de PHP est configurée sans le support des %sexpressions " +"régulières compatibles avec Perl%s. Vous devez activer ces fonctions pour que Gallery " +"fonctionne." + +msgid "exec() allowed" +msgstr "Autorisation de la commande exec()" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Attention : la fonction exec() est désactivée dans votre installation de PHP par le " +"paramètre disabled_functions dans le fichier php.ini. Vous ne pourrez pas utiliser de " +"module qui font appel à des bianires externes (ImageMagick, NetPBM, Ffmpeg, etc.). Ce " +"paramètre s'applique à tout le serveur, vous devez donc le modifier dans le fichier global " +"php.ini." + +msgid "set_time_limit() allowed" +msgstr "Autorisation de la commande set_time_limit()" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Attention : la fonction set_time_limit() est désactivée dans votre installation de PHP " +"par le paramètre disabled_functions dans le fichier php.ini. Gallery peut fonctionner " +"dans cette configuration, mais sa fiabilité n'est pas garantie : toute opération qui " +"dure plus de %d secondes échouera (et dans certains cas retournera une page blanche), ce qui " +"pourra entraîner une corruption des données." + +msgid "Filesystem Operations" +msgstr "Opérations sur le système de fichiers" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Erreur : des opérations essentielles sur le système de fichier sont désactivées dans " +"votre configuration de PHP avec le paramètre disabled_functions dans le fichierphp." +"ini. Vous devez autoriser ces fonctions pour Gallery puisse fonctionner. Les fonctions " +"suivantes sont absentes : %s." + +msgid "Memory limit" +msgstr "Limite mémoire" + +msgid "no limit" +msgstr "pas de limite" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Attention : votre installation de PHP est configurée pour limiter la mémoire utilisée à " +"%sb (paramètre memory_limit dans php.ini). Vous devriez relever cette limite à au " +"moins %sMB pour que Gallery fonctionne correctement." + +msgid "File uploads allowed" +msgstr "Autorisation de téléchargement de fichier" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Attention : votre installation de PHP n'est pas configurée pour autoriser les " +"téléchargements de fichiers (paramètre file_uploads dans php.ini). Vous devez activer " +"cette option si vous désirez télécharger des images dans Gallery à partir dans navigateur " +"Web." + +msgid "Maximum upload size" +msgstr "Taille maximale des téléchargements" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Attention : votre installation de PHP est configurée pour limiter la taille des " +"fichiers téléchargés à %sb (paramètre upload_max_filesize dans php.ini). Vous devez " +"augmenter cette limite si vous désirez pouvoir télécharger des fichiers plus gros." + +msgid "Maximum POST size" +msgstr "Taille maximale des POST" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Attention : votre installation de PHP est configurée pour limiter la taille des POST à %" +"sb (paramètre post_max_size dans php.ini). Vous devez augmenter cette limite si vous " +"désirez pouvoir télécharger des fichiers plus gros." + +msgid "Translation support" +msgstr "Support pour les traductions" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Votre serveur Web ne supporte pas la localisation. Pour activer le support des langages " +"supplémentaires, veuillez contacter votre administrateur système afin de reconfigurer PHP " +"avec l'option %sgettext%s activée." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Votre installation de PHP ne dispose pas de la fonction %sbind_textdomain_codeset%s. Celà " +"signifie que Gallery pourrait mal afficher les caractères étendus de certains langages." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Votre installation de PHP ne dispose pas de la fonction %sdngettext%s. Celà signifie que " +"Gallery ne pourra pas utiliser les traductions en formes plurielles." + +msgid "Zend compatibility mode" +msgstr "Mode compatible avec Zend" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Attention : votre installation de PHP est configurée avec l'option Zend " +"ze1_compatibility_mode qui peut entraîner un plantage de PHP. Clickez ici " +"pour tester votre installation de PHP. Si vous voyez s'afficher \"SUCCESS\", alors votre " +"installation de PHP est correcte. Si vous obtenez un message d'erreur ou une page vide, " +"alors vous devez désactiver l'option ze1_compatibility_mode avant de continuer." + +msgid "putenv() allowed" +msgstr "Autorisation de la commande putenv()" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Attention : la fonction putenv() est désactivée dans votre installation de PHP par le " +"paramètre disabled_functions dans le fichier php.ini. Gallery peut fonctionner dans " +"cette configuration, mais dans certains cas rares, Gallery ne pourra pas s'afficher dans une " +"autre langue que la langue par défaut du système et l'anglais." + +msgid "Output buffering disabled" +msgstr "Mise en buffer de la sortie désactivée" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Attention : la mise en buffer de la sortie est activée dans votre installation de PHP " +"par le(s) paramètre(s) %s dans le fichier php.ini. Gallery peut fonctionner dans " +"cette configuration (le téléchargement de fichier sera même plus rapide), mais Gallery " +"pourra être dans l'incapacité de fournir de gros fichiers (des vidéos par exemple) et " +"arriver en saturation de mémoire. De plus, quelques fonctions comme les barres de " +"progression pourront ne pas s'afficher correctement si la mise en buffer de la sortie est " +"activée à moins que la fonction ini_set() soit autorisée." + +msgid "Gallery file integrity" +msgstr "Contrôle d'intégrité des fichiers de Gallery" + +msgid "Test skipped due to other errors." +msgstr "Test non réalisé en raison d'autres erreurs" + +msgid "Theme available" +msgstr "Thème disponible" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Erreur : Il doit y avoir au moins un thème dans le répertoire %s." + +msgid "Manifest missing or inaccessible." +msgstr "Manifest manquant ou inaccessible." + +msgid "Welcome" +msgstr "Bienvenue" + +msgid "Please correct the following errors" +msgstr "Veuillez corriger les erreurs suivantes" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Chaque installation de Gallery aura au moins un utilisateur administrateur qui aura les " +"pleins pouvoirs pour tout voir et modifier. Merci de choisir un nom d'utilisateur et mot de " +"passe pour le compte principal d'administration. Vous pourrez ajouter d'autres utilisateurs " +"plus tard." + +msgid "Admin username" +msgstr "Compte Admin" + +msgid "Please enter a valid user name" +msgstr "Merci de saisir un nom valide" + +msgid "Please enter a password" +msgstr "Veuillez saisir un mot de passe" + +msgid "Password" +msgstr "Mot de passe" + +msgid "Setup password" +msgstr "Spécifier le mot de passe" + +msgid "(type again)" +msgstr "(confirmation du mot de passe)" + +msgid "Admin email address" +msgstr "Adresse mail de l'administrateur" + +msgid "Please enter a valid email address" +msgstr "Merci de saisir une adresse mail valide" + +msgid "Admin full name (optional)" +msgstr "Nom complet (optionnel)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Mot de passe manquant ! Veuillez saisir deux fois le même mot de passe" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" +"Les deux mots de passe que vous avez saisis sont différents ! Veuillez recommencer." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Puisque vous réutilisez des tables existantes, ceci n'est pas une installation vierge. Celà " +"va uniquement modifier le mot de passe d'installation, mais pas le mot de passe du compte " +"d'administration. Pour changer le mot de passe du compte d'administration, utilisez la " +"fonction de recouvrement des mots de passe oubliés." + +msgid "Create" +msgstr "Créer" + +msgid "Save" +msgstr "Sauver" + +msgid "Admin user info entered successfully." +msgstr "Saisie correcte des informations concernant l'utilisateur d'administration." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Afin de continuer l'installation, nous devons vérifier que vous êtes bien un administrateur " +"de Gallery. La meilleure solution est de vous demander de réaliser une modification mineure " +"dans le répertoire de Gallery ce qui prouvera que vous disposez bien des droits nécessaires. " +"Nous allons donc vous demander de créer un fichier nommé login.txt dans le " +"répertoire %s de votre serveur HTTP (il s'agit du même répertoire où main.php est " +"situé). Il doit contenir la chaîne de caractères aléatoires suivante :" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Afin de vous simplifier la tâche, nous vous avons préparés une %sversion correcte de login." +"txt%s. Téléchargez cette copie et déposez la dans le répertoire %s." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Une fois le fichier mis en place, clickez ci-dessous pour continuer." + +msgid "Authenticate Me" +msgstr "M'authentifier" + +msgid "Authentication successful!" +msgstr "Authentification réussie !" + +msgid "Erase data for a clean install" +msgstr "Effacer les données pour une installation vierge" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Êtes-vous certains de vouloir effacer toutes les données dans votre répertoire de " +"stockage et dans votre base ?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Il y a eu une erreur en effaçant la base de données et le répertoire de stockage. L'erreur " +"est :" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Erase all data" +msgstr "Effacer toutes les données" + +msgid "Please fix this error and try again." +msgstr "Merci de corriger cette erreur et d'essayer de nouveau." + +msgid "Try Again" +msgstr "Essayer de nouveau" + +msgid "Create a config file" +msgstr "Création du fichier de configuration" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Maintenant, nous allons écrire toutes les informations que vous avez fournies dans un " +"fichier nommé config.php localisé dans le répertoire %s. C'est un fichier très " +"important qui permet à Gallery de trouver toutes les informations nécessaires pour son " +"fonctionnement. Après que nous l'ayons créé, vous pourrez le consulter et le modifier si " +"vous le souhaitez." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Avant de continuer, vous devriez créer un fichier nommé config.phpdans votre " +"répertoire %s. Vous devez également vous assurer que le serveur Web pourra écrire " +"dans ce fichier." + +msgid "Unix (with shell access)" +msgstr "Unix (avec accès au shell)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Sur Windows, vous ne devriez rien avoir de spécial à effectuer." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Quand vous aurez créé ce fichier avec les bons droits, vous pourrez continuer. Si il il y a " +"un problème, nous vous indiquerons comment le corriger." + +msgid "Create config file" +msgstr "Créer le fichier de configuration" + +msgid "Config file created successfully." +msgstr "Fichier de configuration créé avec succès." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Nous avons écrit toutes les informations que vous nous avez fournies dans un fichier nommé " +"config.php dans le répertoire de Gallery 2. Vous pouvez lire et modifier ce fichier " +"si vous le souhaitez. Attention, si vous faites des erreurs en le modifiant, Gallery " +"pourrait ne pas fonctionner correctement." + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Merci de sélectionner le type de base de données que vous utilisez et de fournir les " +"informations nécessaires pour s'y authentifier. L'installeur ne créera pas de base pour " +"vous. Vous devez donc en créer une vous même et saisir son nom ici. Si vous souhaitez une " +"base qui contient déjà des tables, les préfixes de table et de colonne permettront de ne pas " +"créer de conflit avec les données existantes." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"L'installation est de type multi-site. N'oubliez pas que chaque site nécessite ses propres " +"tables dans la base de données. Choisissez une autre base de données ou changez le préfixe " +"des tables pour chacun des site !" + +msgid "Database type:" +msgstr "Type de base de données :" + +msgid "DB Hostname:" +msgstr "Serveur de base de données :" + +msgid "DB Username:" +msgstr "Nom d'utilisateur :" + +msgid "DB Password:" +msgstr "Mot de passe :" + +msgid "DB Name:" +msgstr "Nom de la base de données :" + +msgid "Table Prefix:" +msgstr "Préfixe de table :" + +msgid "Column Prefix:" +msgstr "Préfixe de colonne :" + +msgid "We received the following database related errors:" +msgstr "Nous avons reçu les erreurs suivantes liés à la base de données :" + +msgid "Erase Data For A Clean Install" +msgstr "Effacer les données en vue d'une installation vierge" + +msgid "Reuse Existing Tables" +msgstr "Réutiliser les tables existantes" + +msgid "Database set up successfully." +msgstr "Base de données paramétrée avec succès." + +msgid "Finished!" +msgstr "Fin !" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Félicitations ! Votre installation de Gallery 2 est maintenant terminée. Vous voyez, " +"celà n'était finalement pas si compliqué ! C'est maintenant le moment d'y télécharger " +"vos premières photos !" + +msgid "Go to my Gallery!" +msgstr "Se rendre dans Gallery !" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Vous pouvez maintenant vous rendre dans Gallery. Saisissez l'URL de %smain.php%s du " +"répertoire %s directory dans votre navigateur." + +msgid "Installer Help" +msgstr "Aide pour l'installation" + +msgid "Start Over" +msgstr "Reprendre depuis le début" + +msgid "Error installing Gallery Core" +msgstr "Erreur à l'installation du noyau de Gallery (Gallery Core)" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Quelque chose s'est mal passé durant l'installation du noyau. Que faire ensuite ?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Allez à l'étape 'Vérification du système' et assurez vous que toutes les vérifications ont " +"réussi. Un message d'alerte ingnoré concernant l'intégrité des fichier est un problème " +"classique." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Si il n'y a aucune alerte et aucun échec durant l'étape 'Vérification du système', videz " +"votre répertoire de stockage, supprimez les tables dans la base de données, et recommencez " +"l'installation depuis la première étape." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Veuillez consulter la %sFAQ de Gallery 2%s et lire la section des %sproblèmes connus%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Si le problème persiste, veuillez copier le log de l'installation qui se trouve dans %s et " +"postez le (en tant que install.log.zip) comme un nouveau sujet dans le %sforum de support de " +"Gallery 2%s ou, si possible, ajoutez un lien vers le fichier install.log dans un sujet de ce " +"forum pour que l'équipe de support puisse l'analyser si nécessaire." + +msgid "Stack Trace:" +msgstr "Pile :" + +msgid "Installed Gallery Core successfully." +msgstr "Noyau de Gallery installé avec succès" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Nous avons installé le noyau de Gallery avec succès. Bien que tout fonctionne à ce niveau de " +"l'installation, vous pouvez continuer pour installer les modules optionnels qui apporteront " +"les fonctionnalités dont vous avez besoin pour votre Gallery." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Les modules suivants peuvent être automatiquement installés et activés pour vous. Vous devez " +"installer au moins une boîte à outils graphiques, sinon Gallery ne pourra pas générer de " +"vignette pour vos images. Sur la plupart des systèmes, l'installation automatique " +"fonctionnera ; elle pourra cependant échouer dans certains cas. Vous pourrez toujours " +"activer ou désactiver les modules depuis la section d'administration de Gallery, aucune " +"décision ici n'est définitive." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Certains modules peuvent échouer en s'installant automatiquement. Ceci n'est pas un " +"problème : il s'agit de modules ayant besoin d'être configurés ce que vous pourrez " +"faire dans la section d'administration de Gallery." + +msgid "Name" +msgstr "Nom" + +msgid "Version" +msgstr "Version" + +msgid "Description" +msgstr "Description" + +msgid "(Incompatible with this Gallery version)" +msgstr "(incompatible avec cette version de Gallery)" + +msgid "(un)check all" +msgstr "(dé)cocher tous" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Continer à l'étape %d sans activation»" + +msgid "Activate Selected Modules" +msgstr "Activer les modules sélectionnés" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"Le module %s a été installé, mais il nécessite d'être configuré pour être activé" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Après avoir fini cette installation, authentifiez vous avec le compte d'administration et " +"rendez vous dans la section d'administration. Allez ensuite dans la partie Modules et " +"configurez les modules ci-dessus." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Module %s activé avec succès" + +msgid "Activate More Modules" +msgstr "Activer d'autres modules" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Continuer à l'étape %d»" + +msgid "Debug Output" +msgstr "Sortie de débuggage" + +msgid "Welcome to the Gallery Installer" +msgstr "Bienvenue sur l'outil d'installation de Gallery" + +#, c-format +msgid "Install %d%% complete" +msgstr "Instalation complète à %d%%" + +msgid "Redo this step" +msgstr "Recommencer cette étape" + +msgid "Gallery: your photos on your website" +msgstr "Gallery : vos photos sur votre site Web" + +#, c-format +msgid "Missing files (%d)" +msgstr "Fichiers manquants (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Note : vous utilisez le code de Gallery issu de SVN, ainsi des fichiers récemment " +"supprimés peuvent apparaître ici. Vous pouvez les ignorer." + +#, c-format +msgid "Modified files (%d)" +msgstr "Fichiers modifiés (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Note : Vous utilisez le code de Gallery issu de SVN, il est donc probable que des " +"fichiers soient modifiés. Vous pouvez certainement ignorer cette alerte, mais par " +"précaution, vous devriez exécuter un 'svn update' avant de continuer." + +#, c-format +msgid "Old files (%d)" +msgstr "Anciens fichiers (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Ces fichiers ne font plus partie de Gallery. Ils ne vous causeront probablement aucun " +"problème mais il est préférable de les supprimer pour garder votre installation propre." + +msgid "Errors occurred. Please see messages below." +msgstr "Des erreurs ont survenu. Veuillez consulter les messages ci-dessous." + +msgid "Please select the installation type" +msgstr "Veuillez choisir le type d'installation" + +msgid "Standard installation" +msgstr "Installation standard" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Le type d'installation par défaut de Gallery. Choisissez ce type d'installation si vous " +"désirez installer une nouvelle instance de Gallery dans le répertoire %s qui sera accessible " +"par l'URL %s." + +msgid "Multisite installation" +msgstr "Installation multi-site" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery peut supporter plusieurs sites indépendants à partir d'une seule installation du " +"code. Choisissez ce type d'installation si vous désirez installer une nouvelle instance de " +"Gallery sur le même serveur Web mais dans un chemin, un sous domaine ou un domaine différent." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Les sites ne partagent pas les albums, photos, utilisateurs ou tout autre chose. Ils ont " +"tous besoin de leur propre base de données et leur propre répertoire de stockage. Pour plus " +"d'information au sujet des installation multi-site, consultez la page %s." + +msgid "You must enter a directory" +msgstr "Vous devez indiquer un répertoire" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Le répertoire que vous avez saisi correspond au répertoire contenant le code. Si vous " +"désirez installer une instance de Gallery dans ce répertoire, choisissez le type " +"d'installation standard, si vous voulez installer un site (du multi-site), choisissez un " +"autre répertoire." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Le répertoire que vous avez spécifié n'existe pas, ou est interdit d'accès depuis votre " +"serveur web. Votre serveur web est configuré pour n'accéder qu'aux répertoires suivants. " +"Vous devez choisir un répertoire sous l'un de ceux-ci ou modifier le paramètre " +"open_basedir dans votre configuration de PHP pour pouvoir accéder à ce répertoire." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Si votre installation multi-site est dans sur hôte virtuel différent, vous devriez contacter " +"votre administrateur système et demander qu'il configure votre paramètre open_basedir " +"de telle sorte que vos hôtes virtuels puisse s'accéder les uns les autres." + +msgid "The directory you entered does not exist" +msgstr "Le répertoire spécifié n'existe pas" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Le répertoire que vous avez indiqué n'est pas accessible. Modifier ses permissions de telle " +"sorte que le serveur Web puisse le lire." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Impossible de créer les fichiers pour le multi-site. Assurez-vous que les fichiers suivants " +"sont accessibles en écriture." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Tous les multi-sites sont installés à partir de cette installation du code de Gallery." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Saisissez ci-dessous le répertoire du nouveau multi-site. Le chemin doit être différent de " +"celui de cette installation du code :" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Ce répertoire doit être accessible en écriture par votre serveur Web/PHP ou contenir les " +"fichiers suivants :" + +msgid "Select Directory" +msgstr "Sélectionner un répertoire" + +msgid "Multisite directory setup successfully." +msgstr "Répertoire du multi-site" + +msgid "Standard installation selected." +msgstr "Installation standard sélectionnée." + +msgid "Install Steps" +msgstr "Étapes d'installation" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Nous souhaitons nous assurer que cette installation de Gallery est sécurisée. Le fichier " +"config.php qui a été édité dispose de permissions qui permettent à d'autres de le modifier. " +"Ceci est nécessaire que l'installeur est \"une autre personne\" vu du système de permissions " +"d'Unix. Avant que vous ne finissiez l'installation, vous devriez modifier les permissions de " +"ce fichier de telle sorte que d'autres utilisateurs ne pourront pas le modifier. " +"Actuellement ce fichier a les droits %s. Nous vous suggérons d'effectuer la commande " +"suivante :" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Nous souhaitons nous assurer que cette installation de Gallery est sécurisée. Le répertoire " +"contenant le fichier config.php qui a été édité dispose de permissions qui permettent à " +"d'autres d'ajouter ou de supprimer des fichiers. Avant que vous ne finissiez l'installation, " +"vous devriez modifier les permissions de ce répertoire. Nous vous suggérons d'effectuer la " +"commande suivante :" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Si vous souhaitez vraiment continuer, vous le pouvez. Cependant nous vous recommandons de " +"prendre quelques instants pour vous assurer que votre installation de Gallery est sécurisée." + +msgid "We've verified that your config.php is secure." +msgstr "Nous avons vérifié que votre fichier config.php était sécurisé." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Veuillez consulter le %1$sGuide de Sécurité de Gallery%3$s. Pour un rapide aperçu, reportez-" +"vous à la %2$scourte liste de vérification%3$s dans le guide de sécurité." + +msgid "Check Again" +msgstr "Vérifier de nouveau" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery a besoin d'un répertoire pour stoquer vos images. Le répertoire que nous choisissons " +"pour vous fonctionnera, mais son emplacement ou son nom actuel n'assure pas une bonne " +"sécurité. Veuillez au choix sélectionner un autre répertoire en dehors du répertoire %" +"sdocument root%s ou ajoutez une chaîne aléatoire à la fin du nom de ce répertoire " +"(exemple : %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Pour plus de sécurité, vous devriez choisir un répertoire qui n'est pas %saccessible par HTTP" +"%s. Si ce n'est pas possible, choisissez un nom aléatoire pour ce répertoire." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Si vous choisissez un nom aléatoire ou si vous préférez rester avec le répertoire spécifié, " +"veuillez confirmer votre choix." + +msgid "Yes, please omit the security check:" +msgstr "Oui, veuillez omettre la vérification de sécurité :" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Ceci est une installation multi-site. N'oubliez pas que chaque site nécessite son propre " +"répertoire de stockage." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Si vous utilisez un navigateur Web moderne, nous essayerons de compléter les chemins que " +"vous saisirez. Si vous avez des problèmes pour retrouver le chemin d'un répertoire, essayez " +"des chemins dans le dialogue ci-dessous et regardez quelles complétions vous sont proposées." + +msgid "The directory you entered is read only" +msgstr "Le répertoire que vous avez indiqué n'est accessible qu'en lecture seule" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Il y a eu une erreur lors de la création de la structure des répertoires dans le répertoire " +"de stockage." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Votre répertoire de stockage est %saccessible pas HTTP%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Impossible de vérifier que le répertoire spécifié nes pas %saccessible par HTTP%s." + +msgid "Directory path:" +msgstr "Chemin du répertoire :" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Votre serveur Web doit pouvoir écrire dans ce répertoire. Pour ce faire, vous pouvez suivre " +"les exemples suivants." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Note : Ce ne sont que des exemples ! Vous pouvez trouver qu'ils ne fonctionnent " +"pas correctement sur votre système." + +msgid "Unix (with ftp access)" +msgstr "Unix (avec accès FTP)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Notez que les serveurs et clients FTP varient, il est donc possible que ces instructions ne " +"fonctionnent pas pour vous. Consultez la documentation de votre client FTP ou reportez vous " +"à avec votre administrateur système pour obtenir de l'aide." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Dans certains environnements hébergés, les chemins que vous voyez par le shell ou par FTP ne " +"sont pas ceux que PHP voit. Pour trouver le bon chemin vers le répertoire de stockage, vous " +"pouvez essayer de créer un script PHP appelée dir.php contenant le code suivant et le " +"placer dans votre répertoire Web." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"Ensuite, trouvez l'URL vers dir.php et ouvrez la dans votre navigateur web (exemple : %" +"s). Celà vous donnera le chemin à saisir ici." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Note : Ceci requiert que votre répertoire de stockage soit accessible par le " +"Web, ce que nous ne recommandons pas car il permet de contourner notre image firewall. Une " +"fois que vous aurez trouvé le chemin, nous vous suggérons de déplacer votre répertoire de " +"stockage à l'extérieur de la zone Web et ensuite de mettre à jour le chemin ici." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Note : Ne pas oublier d'effacer dir.php à la fin !" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Pour plus d'informations pour sécuriser votre répertoire de stockage de Gallery, veuillez " +"vous référer au %sGuide de Sécurité%s." + +msgid "Storage directory set successfully." +msgstr "Répertoire de stockage positionné avec succès." + +msgid "Success" +msgstr "Succès" + +msgid "Warning" +msgstr "Attention" + +msgid "Failed" +msgstr "Échec" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Si vous utilisez Apache, créez un fichier nommé .htaccess dans le répertoire principal de " +"Gallery et mettez y les informations suivantes :" + +msgid "Version Check" +msgstr "Vérification de la version" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Ceci n'est pas une nouvelle installation et la version installée ne correspond pas à cette " +"version." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "La version installée ne peut pas être mise à jour vers la nouvelle version !" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"La version installée est plus ancienne que la nouvelle version. Vous devriez plutôt utiliser " +"l'outil de mise à jour plutôt que l'outil d'installation !" + +msgid "Currently installed" +msgstr "Actuellement installé" + +msgid "New version" +msgstr "Nouvelle version" + +msgid "Go to the Upgrader!" +msgstr "Se rendre sur l'outil de mise à jour !" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Vous devriez aller maintenant dans l'outil de mise à jour. Entrez l'URL de %s/upgrade/index." +"php%s du répertoire %s dans votre navigateur." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"L'installation de Gallery 2 sur votre serveur Web nécessite %d étapes. Cet installeur va " +"vous guider à travers ces étapes et vous fournir une assistance si d'autres actions sont " +"nécessaires pour finaliser l'installation de Gallery. Vous pourrez revenir à tout moment sur " +"chaque étape complétée. Merci de lire %sl'aide de l'installeur%s avant de commencer." + +msgid "Select Language:" +msgstr "Choix de la langue :" + +msgid "Go" +msgstr "Go" + +msgid "Begin Installation»" +msgstr "Commencer l'installation»" diff --git a/Source/gallery2/install/po/hu.po b/Source/gallery2/install/po/hu.po new file mode 100644 index 0000000..f932e6e --- /dev/null +++ b/Source/gallery2/install/po/hu.po @@ -0,0 +1,1363 @@ +# $Id: hu.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# General Public License for more details.# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.# +# Previous translators (as far as known, add yourself here, please): +# - Gergely Dömsödi +# - Jozsef R.Nagy # +# , 2007. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-20 09:38-0800\n" +"PO-Revision-Date: 2007-03-16 15:00+0100\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: KBabel 1.9.1\n" + +msgid "Unknown" +msgstr "Ismeretlen" + +msgid "Admin User Setup" +msgstr "Admin felhasználó beállítás" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery Adminisztrátor" + +msgid "Authenticate" +msgstr "Hitelesítés" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Hiba: nem található a login.txt file. Másold ebbe a könyvtárba: %s/!" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Hiba: a login.txt file nem olvasható� Adj a Gallery számára olvasási jogot a " +"filera!" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Hiba: a login.txt-ben található kulcs nem megfelelő. Tölts le egy új " +"hitelesítő stringet lentről és próbáld újra!" + +msgid "Create Config File" +msgstr "Konfiguréciós file létrehozása" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Nem írható a config.php konfigurációs file a %s könyvtárban. Változtasd meg a " +"jogosultságait! Ha Unix rendszered van, használhatod a chmod 666 config.php parancsot." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "A config.php file nem létezik a %s könyvtárban." + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"A config.php file létezik, de nem írható. Ha a szervereden Windows fut, valószínuleg le kell " +"tiltanod a config.php filemegorszátás, és be kell állítanod a file jogosultságait manuálisan." + +msgid "Database Setup" +msgstr "Adatbázis beálltásai" + +msgid "You must have the MySQL PHP module installed" +msgstr "A MySQL PHP modul telepítve kell hogy legyen" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "A MySQL Improved PHP modul telepítve kell hogy legyen" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Az ibm_db2 PHP modul telepítve kell hogy legyen" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "A PostgreSQL PHP modul telepítve kell hogy legyen" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Az Oracle OCI8 PHP modul telepítve kell hogy legyen" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "A Component Object Model(COM) PHP modul telepítve kell hogy legyen" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Meg kell adnod egy oszlop prefixet (javaslat: %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Csak betűket, számokat és alsóvonalat használhatsz az oszlop prefixben" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Meg kell adnod a tábla prefixet (javaslat: %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Csak betűket, számokat és alsóonalat használhatsz a tábla prefixben" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Nem építhető ki a %s típus adatbázis kapcsolat" + +msgid "Unable to connect to database with the information provided." +msgstr "Nem lehet csatlakozni az adatbázishoz a megadott információkkal." + +msgid "The database you specified does not exist. Please create it." +msgstr "A megadott adatbázis nem létezik, hozd létre!" + +msgid "The database privileges test did not complete successfully." +msgstr "Az adatbázis privilégiumok tesztelése sikertelen." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"A Gallery táblái már� léteznek az adatbázisban, de nincsen 'versions.dat' file a G2 tároló" +"(storage) könyvtárban, amit a G2 meghibásodott állapotaként ételmezünk. Vagy készíts egy " +"versions.dat file-t a megfelelő formátumban, amennyiben úgy gondolod hogy a G2 hibátlan vagy " +"válaszd az új telepítést (clean install), amely törli az összes adatot az adatbázisban és a " +"tároló�(storage) könyvtárban." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"A G2 tároló (storage) könyvtában régi verziójú versions.dat file van, de a Gallery adatbázis " +"táblái nem léteznek. Válassz új telepítést a tároló�(storage) könyvt� teljes tartalmának " +"törléséhez és haladj tovább a következő lépésre." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"A Gallery táblái léteznek az adatbázisban és létezik versions.dat file a Gallery tároló " +"könyvtárban. Azonban a létező Gallery adatbázis táblák verziója nem egyezik a tároló " +"(storage) könyvtárban tallható adatok verziójával. Válassz új telepítést (clean install) az " +"adatbázisban és a tároló könyvtárban található összes adat törléséhez és haladj tovább a " +"következő lépésre." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"A Gallery táblái léteznek az adabázisban és a tároló (storage) könyvtár is sértetlennek " +"tűnik. Vagy újrahasználhatod a létezo táblákat és a tároló könyvtárban levő adatokat, vagy " +"válaszhatsz új telepítést (ez utóbbi esetben az összes adat törlésre kerül)." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Nem sikerlt lefuttatni a tároló könyvtár törléséhez szükséges API-t, ezért manuálisan töröld " +"le a Gallery tároló könyvtárt!" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Nem sikerlt lefuttatni az adatbázis törléséhez szükséges API-t, ezért manuálisan töröld le a " +"Gallery adatbázi tartalmát!" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Nem sikerült betölteni a G2 API-t. Töröld le manuáisan a Gallery tároló�könyvtárat és az " +"adatbázist!" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a vagy újabb)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (v3.23.34a-n� korábbi verzó)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x vagy újabb" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i vagy újabb)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x vagy újabb)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 vagy újabb" + +msgid "Unknown DB type or no known tables information." +msgstr "Ismeretlen adatbázis típus vagy nem ismert tábla információk." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Nem található a \"%s\"-hez hasonló használatlan tábla prefix." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Nem lehet megnyitni a \"%s\" schema file-t." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nem sikerült DB teszt szekvenciát létrehozni. Ellenőrzd a visszakapott hibaüzenetet és a " +"README.html-t a hiányzó�privilégiumokért és tisztsd ki az adatbáist." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nem sikerült tesztelni a DB teszt szekvencia eldobását. Ellenőrzd a visszakapott " +"hibaüzenetet és a README.html-t a hiányzó�privilégiumokért és tisztsd ki az adatbáist." + +msgid "Missing SQL statements" +msgstr "Hiányzó SQL utasítás" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Ellenőrzd a visszakapott hibaüzenetet és a README.html-t a hiányzó�privilégiumokért és " +"tisztsd ki az adatbáist." + +msgid "Finish Installation" +msgstr "Telepítés befejezése" + +msgid "Install Gallery Core" +msgstr "Gallery core (mag) telepítése" + +msgid "Installing the core module" +msgstr "Gallery Core Modul telepítése" + +msgid "Unable to initialize our Gallery data" +msgstr "Nem sikerült inicializálni a Gallery adatait" + +msgid "Unable to communicate with the database" +msgstr "Nem sikerült kommunikálni az adatbázissal" + +msgid "Unable to load the core module" +msgstr "Nem sikerült betölteni a core modult" + +msgid "Unable to install the core module" +msgstr "Nem sikerült telepíteni a core modult" + +msgid "Unable to activate the core module" +msgstr "Nem sikerült aktiválni a core modult" + +msgid "Unable to commit database transaction" +msgstr "Nem sikerült végrehajtani adatbázis tranzakciót" + +msgid "Core module is only partially installed." +msgstr "A core modul csak részlegesen lett telepítve" + +msgid "Install Plugins" +msgstr "Plugin-ek telepítése" + +msgid "Unable to initialize our Gallery session" +msgstr "Nem sikerült inicializálni a Gallery sessiont" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Nem lehet betölteni a %s modult" + +msgid "Installing modules" +msgstr "Modulok telepítése" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Nem sikerült telepíteni a %s modult" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Nem sikerült aktiválni a %s modult" + +msgid "Unable to get the module list" +msgstr "Nem sikerüt összegyjteni a modul listát" + +msgid "Other" +msgstr "Más" + +msgid "Installation Type" +msgstr "Telepítés típus" + +msgid "Check Security" +msgstr "Biztonság ellenőrzés" + +msgid "Storage Setup" +msgstr "Tároló�beállítás" + +msgid "System Checks" +msgstr "Rendszer ellenőrzés" + +msgid "Performing system checks" +msgstr "Rendszer ellenőrzés végrehajtása" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP version >= 4.3.0 vagy >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Hiba: a Gallery 2-h� PHP 4.3.0 vagy újabb, vagy 5.0.4 vagy újabb verzió szükséges. Neked %s " +"verziójú PHP van telepítve. Kérd meg a webszerver adminisztrátorát hogy frissítse a %sPHP " +"weboldalról%s" + +msgid "PHP Version" +msgstr "PHP verzió�" + +msgid "FILE directive supported" +msgstr "FILE directive támogatott" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Hiba: a PHP __FILE__ direktíva nem működik rendesen. Konzultálj a rendszered " +"adminisztrátorával vagy a Gallery fórumain." + +msgid "FILE Directive" +msgstr "FILE Directive" + +msgid "Safe mode disabled" +msgstr "Safe mode tiltva" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Hiba: a PHP verziójában a safe mode engedélyezve van. Ezt le kell tiltanod a Gallery " +"működéséhez." + +msgid "Safe Mode" +msgstr "Safe mode" + +msgid "Regular expressions" +msgstr "Reguláris kifejezés" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Hiba: a PHP verzió� %sPerl Compatible Regular Expression%s támogatás nélkül van " +"konfigurálva. Ezeket a funkciókat engedélyezned kell a Gallery működéséhez." + +msgid "exec() allowed" +msgstr "exec() engedélyezve" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Figyelmeztetés: az exec() funkció le van tiltva a php.ini-ben a disabled_functions " +"paraméterrel. Emiatt nem használhatsz olyan modulokat, amelyek külső binárisokat igényelnek " +"(pl. ImageMagick, NetPBM vagy Ffmpeg). Ezt csak szerver oldalon lehet átállítani a php.ini-" +"ben." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() engedélyezve" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Figyelmeztet�: a set_time_limit() funkció le van tiltva a php.ini-ben a " +"disabled_functions paraméterben. A Gallery tud működni ezzel a beállítással, azonban " +"nem megbízhatóan. Bármely művelet amely továbbb tart %d másodpercnél, sikertelen lesz (� " +"bizonyos esetekben üres oldalt ad vissza), és talán adatsérülést is okozhat." + +msgid "Filesystem Operations" +msgstr "Filerendszer műveletek" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Hiba: alapvető fileműveletek le vannak tiltva a php.ini-ben a disabled_functions " +"paraméterben. A következő funkciókat engedélyezned kell a Gallery működéséhez: %s" + +msgid "Memory limit" +msgstr "Memória korlát" + +msgid "no limit" +msgstr "nincs korlát" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Figyelmeztet�: a php.ini-ben a memória korlátozva van %sb-ra (memory_limit " +"paraméter). Ezt érdemes megemelned legalább %sMB-ra a Gallery megfelelő működése " +"érdekében." + +msgid "File uploads allowed" +msgstr "File feltöltés engedélyezve" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Figyelmeztetés: a PHP úgy van konfigurálva, hogy a file feltöltés nem engedélyezett " +"(file_uploads paraméter a php.ini-ben). Ezt engedélyezned kell, amennyiben " +"böngészőből szeretnél majd képeket feltölteni a galériákba." + +msgid "Maximum upload size" +msgstr "Maximális feltöltési méret" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Figyelmeztet�: a PHP úgy van konfigur�va, hogy a file feltöltések maximális mérete %sb " +"(upload_max_filesize paraméter a php.ini-ben). Ezt érdemes megnövelni, hogy nagyobb " +"fileokat lehessen feltölteni." + +msgid "Maximum POST size" +msgstr "Maximum POST méret" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Figyelmeztetés: a PHP úgy van bekonfigurálva, hogy a post adatok maximális mérete %sb " +"(post_max_size paraméter a php.ini-ben). Ezt érdemes megnövelni, hogy nagyobb " +"fileokat lehessen feltölteni." + +msgid "Translation support" +msgstr "Fordítás támogatás" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"A webszervered nem támgatja a nyelvfüggő beállításokat. Ahhoz hogy további nyelvek " +"támogatását engedélyezz, kérd meg az adminisztrátorod, hogy a PHP-ban engedélyezze a %" +"sgettext%s opciót." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"A PHP verziódból hiányzik a %sbind_textdomain_codeset%s függvény. Ez azt jelenti, hogy a " +"Gallery a kibővített karaktereket nem megfelelően jeleníti meg bizonyos nyelveken." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"A PHP verziódból hiányzik a %sdngettext%s függvény. Ez azt jelenti, hogy a Gallery nem lesz " +"képes lefordítani a formokat." + +msgid "Zend compatibility mode" +msgstr "Zend kompatibilis mód" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Figyelmeztetés: a PHP változatod Zend ze1_compatibility_mode-ba van konfigurálva, amely a " +"PHP lefagyását eredményezheti. Kattints ide hogy leelenőrizd a PHP-d. Ha " +"Sikeres (Success) feliratot látsz, akkor a PHP rendben van. Ha hibaüzenetet kapsz vagy nem " +"kapsz választ, akkor kapcsold ki a ze1_compatibility_mode-ot a továbblépés előtt." + +msgid "putenv() allowed" +msgstr "putenv() engedélyezett" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Figyelmeztetés: a putenv() függvény le van tiltva a PHP-ban a disabled_functions " +"paraméterben, a php.ini fileban. A Gallery működik így is, azonban ritka esetekben emiatt " +"más nyelven fog ftuni, mint ami beállítottak." + +msgid "Output buffering disabled" +msgstr "Output buffering letiltva" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Figyelmeztetés: az Output buffering engedélyezve van a php.ini-ben a %s paraméter(ek)" +"ben. A Gallery így is működik - fileok letöltése gyorsabb lesz - azonban lehet hogy nem lesz " +"épes nagy fileokat szolgáltatni (pl. nagy video fileokat) és túllépi a memória korlátot. " +"Továbbá néhány funkció, mint például a folyamatjelző sáv, nem működhet hibátlanul, amíg az " +"ini_set() engedélyezve nem lesz." + +msgid "Gallery file integrity" +msgstr "Gallery file integritás" + +msgid "Test skipped due to other errors." +msgstr "A teszt kimaradt más hiba miatt." + +msgid "Theme available" +msgstr "Elérhető témák" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Hiba: legalább egy elérhető témának lennie kell a %s könyvtárban!" + +msgid "Manifest missing or inaccessible." +msgstr "Valami nagyon fontos hiányzik vagy nem hozzáférhető." + +msgid "Welcome" +msgstr "Üdvözlünk!" + +msgid "Please correct the following errors" +msgstr "Kérlek javítsd ki az alábbi hibákat" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Minden galéria rendelkezik legalább egy adminisztrátor felhasználóval, akinek mindenhez " +"teljes hozzáférése van, megtekinthet és módosíthat bármit. Adj meg egy felhasználónevet és " +"jelszót a fő adminisztrátorodnak. További felhasználókat később adhatsz meg." + +msgid "Admin username" +msgstr "Admin felhasználóneve" + +msgid "Please enter a valid user name" +msgstr "Adj meg egy valós felhasználónevet" + +msgid "Please enter a password" +msgstr "Adj meg egy jelszót" + +msgid "Password" +msgstr "Jelszó" + +msgid "Setup password" +msgstr "Jelszó beállítása" + +msgid "(type again)" +msgstr "(írd be újra)" + +msgid "Admin email address" +msgstr "Admin e-mail címe" + +msgid "Please enter a valid email address" +msgstr "Adj meg egy valós e-mail címet" + +msgid "Admin full name (optional)" +msgstr "Admin teljes neve (opcionális)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Hiányzó jelszó! Ugyanazt a jelszót add meg kétszer!" + +msgid "The passwords you entered do not match! Please try again." +msgstr "A két jelszó amit begépeltél nem egyezik! Próbáld újra!" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Mivel már létező adatbázis táblákat használsz, ezért ez nem egy friss telepítés. Így csak a " +"telepítési jelszó fog megváltozni, a site adminisztrátorának változatlan marad a jelszava. A " +"site adminisztrátor jelszavának a megváltoztatásához használd a Gallery elfelejtett jelszó " +"mechanizmusát." + +msgid "Create" +msgstr "Létrehozás" + +msgid "Save" +msgstr "Mentés" + +msgid "Admin user info entered successfully." +msgstr "Admin felhasználó adatai sikeresen megadva." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"A telepítés elkezdése előtt ellenőriznünk kell, hogy ki vagy. A legjobb út erre az, hogy " +"megkérünk arra, hogy egy apró módosítást végezz el a Gallery könyvtárában, így biztosak " +"lehetünk abban, hogy megvannak a megfelelő jogosultságaid. Tehát, arra kérünk, hogy helyezz " +"el egy új file-t a %s könyvtárban (ahol egyébként a main.php is van), és a file " +"neve login.txt legyen! A filenek a következő véletlenszerűen generált " +"karaktersort kell tartalmaznia:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"A kényelmed érdekében előkészítettünk egy %smegfelelő verziójú login.txt-t%s a számodra. " +"Töltsd le, és másold be a %s könyvtárba." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Amint feltöltötted a file-t, kattints alul a folytatásra." + +msgid "Authenticate Me" +msgstr "Hitelesíts engem" + +msgid "Authentication successful!" +msgstr "Hitelesítés sikeres!" + +msgid "Erase data for a clean install" +msgstr "Töröld az adatokat egy új telepítéshez" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Biztos vagy benne hogy törölni akarod az összes adatot a tároló könyvtárban és az " +"adatbázisban?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Hiba történt az adatbázis és a tároló könyvtárban levő adatok törlése közben. Íme a hiba:" + +msgid "Cancel" +msgstr "Mégsem" + +msgid "Erase all data" +msgstr "Összes adat törlése" + +msgid "Please fix this error and try again." +msgstr "Javítsd ki ezt a hibát és próbáld újra." + +msgid "Try Again" +msgstr "Próbáld újra" + +msgid "Create a config file" +msgstr "Config file létrehozása" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Most minden információt, amit megadtál ki kell írnunk egy file-ba, aminek a neve config." +"php és a %s könyvtárban fog elhelyezkedni. Ez egy nélkülözhetetlen file a Gallery " +"számára, ez tartalmazza az összes információt a működéséhez. Miután ezt létrehoztuk, " +"átolvashatod ezt a file-t, és módosíthatod ha szükségét látod." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Mielőtt továbblépünk, készíts egy file-t a %s könyvtáradban, aminek a neve config." +"php legyen. Biztosítsd, hogy a webszerver tudjon írni ebbe a file-ba." + +msgid "Unix (with shell access)" +msgstr "Unix (shell hozzáféréssel)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Windows alatt nem szükséges semmi különlegeset tenned." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Amint létrehoztad ezt a file-t, és beállítottad a jogosultságait, továbbléphetsz. Ha valami " +"nem stimmel, figyelmeztetünk hogy mit javíts." + +msgid "Create config file" +msgstr "Config file létrehozása" + +msgid "Config file created successfully." +msgstr "Config file siekresen létrehozva." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Minden információt, amit megadtál, kiírtuk a config.php file-ba, a gallery2 " +"könyvtárban. Elolvashatod a file-t, és módosíthatod ha szükségesnek látod. Azonban vigyázz, " +"ha hibákat vétesz, a Gallery nem fog megfelelően működni!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Kérlek válaszd ki az adatbázisod típusát és add meg az adatbázisod hitelesítési " +"információit. A telepítő nem készti el az adatbázist a számoda, így azt neked kell " +"létrehozni, és itt megadnod a nevét. Ha olyan adatbázisba telepíted fel a Gallery-t, amely " +"már tartalmaz táblákat, akkor az oszlop és tábla prefixek segíthetnek abban hogy ne legyen " +"ütközés a már létező táblanevekkel/oszlopnevekkel." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Ez egy Multisite telepítés. Ne feledd: minden multisite-nak szüksége van saját adatbázis " +"táblákra. Vagy adj meg különböző adatbázist vagy különböző tábla prefixet minden multisite-" +"nak!" + +msgid "Database type:" +msgstr "Adatbázis típus:" + +msgid "DB Hostname:" +msgstr "DB hosztnév" + +msgid "DB Username:" +msgstr "DB felhasználónév" + +msgid "DB Password:" +msgstr "DB jelszó:" + +msgid "DB Name:" +msgstr "DB neve:" + +msgid "Table Prefix:" +msgstr "Tábla prefix" + +msgid "Column Prefix:" +msgstr "Oszlop prefix" + +msgid "We received the following database related errors:" +msgstr "A következo adatbázis hibát kaptuk:" + +msgid "Erase Data For A Clean Install" +msgstr "Adatok törlése új telepítéshez" + +msgid "Reuse Existing Tables" +msgstr "létező táblák újrahasználása" + +msgid "Database set up successfully." +msgstr "Adatbázis sikeresen bekonfigurálva." + +msgid "Finished!" +msgstr "Végeztünk!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Gratulálunk! A Gallery 2 telepítésed befejeződött! Látod... nem volt túl nehéz, ugye? És " +"most itt az ideje, hogy feltölts pár fotót!" + +msgid "Go to my Gallery!" +msgstr "Irány a galériám!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "Most meglátogathatod az új galériádat. Írd be a %smain.php%s URL-t a %s könyvtárban." + +msgid "Installer Help" +msgstr "Telepítő súgó" + +msgid "Start Over" +msgstr "Újrakezdés" + +msgid "Error installing Gallery Core" +msgstr "Hiba a Gallery Core telepítése közben" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Valami nem sikerült mikor a core modult akartad telepíteni. Mit tegyünk most?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Lépj a Rendszer ellenőrzés lépéshez és gyzőőj meg arról, hogy minden teszt sikeresen " +"lefutott. Gyakori hiba, hogy a file integritás figyelmeztetést nem veszik figyelembe." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Amennyiben nincsen figyelmeztetés vagy hiba a rendszer ellenőrzés lépésben, akkor ürítsd ki " +"a tároló könyvtáradat és töröld az adatbázis táblákat, és kezd elölről a telepítési " +"folyamatot." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Látogasd meg a %sG2 FAQ%s oldalt, és olvasd el a %sKnown issue fejezetet a Readme-ben%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Ha a probléma továbbra is fennáll, másold be az telepítési naplót (install.log) (amely itt " +"található: %s) és csatold (install.log.zip-ként) egy új topikba, a %sG2 support forumbann%s, " +"vagy ha megodlható, add meg az install.log linkjét a forumban, így a készítők elemzni tudják " +"ha szükséges." + +msgid "Stack Trace:" +msgstr "Starck trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery Core sikersen telepítve." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Sikeresen telepítettük a Gallery Core-t. Bár ettől a ponttól minden működni fog, érdemes " +"folytatni a telepítést, és további modulokat telepíteni a kiegészítő funkciók használata " +"érdekében." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"A következő modulokat lehet automatikusan telepíteni és aktiválni. Érdemes legalább egy " +"grafikus csomagot telepíteni, különben a Gallery nem lesz képes nézőképeket (thumbnail) " +"készíteni a fotóidhoz. A legtöbb rendszeren az automatikus telepítés megfelelően működik, " +"azonban néhány esetben lehet hogy sikertelen lesz. Bármikor aktiválhatsz új modulokat vagy " +"deaktiválhatsz működő modulokat a Site Adminisztráció oldalon, vagyis bármit is választasz " +"itt, az nem végleges." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Néhány modul automatikus telepítése lehet hogy sikertelen. Ez rendben van. Ez tipikusan azt " +"jelenti, hogy beállításra van szükségük, amit a Site Adminisztráció oldalon megtehetsz." + +msgid "Name" +msgstr "Név" + +msgid "Version" +msgstr "Verzió" + +msgid "Description" +msgstr "Leírás" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Inkompatibilis a Gallery ezen verziójával)" + +msgid "(un)check all" +msgstr "mindet be/kijelöl" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Folytasd a %d lépésnél aktiválás nélkül" + +msgid "Activate Selected Modules" +msgstr "Aktív kiválasztott modulok" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "A %s modul telepítve van, de be kell konfigurálni az aktiválás elött" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"A telepítés befejezése után lépj be adminisztrátorként és lépj be a site admin-ba, azon " +"belül a modulokba, hogy megnézd és konfiguráld a fent felsorolt modulokat." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "A(z) %s modul sikeresen aktiválva" + +msgid "Activate More Modules" +msgstr "További modulok aktiválása" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Tovább a %d. lépéshez" + +msgid "Debug Output" +msgstr "Kimenet debugolása" + +msgid "Welcome to the Gallery Installer" +msgstr "Üdvözöl a Gallery telepítő" + +#, c-format +msgid "Install %d%% complete" +msgstr "Telepíté %d%% kész" + +msgid "Redo this step" +msgstr "Lépés megismétlése" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: a te fotóid a te weboldaladon." + +#, c-format +msgid "Missing files (%d)" +msgstr "Hiányzó�fileok (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Megjegyzés: ha a Gallery-t SVN-böl futtatod, akkor a nemrég eltávolított fileok itt " +"feltünhetnek. Ezeket nyugodtan figyelmen kívül hagyhatod." + +#, c-format +msgid "Modified files (%d)" +msgstr "Módosított fileok (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Megjegyzés: a Gallery-t SVN-böl futtatod, ezért néhány módosított file várható. Valószínűleg " +"ezeket figyelmen kívöl hagyhatod, de az a biztos, ha a továbblépés előtt 'svn update'-et " +"végzel." + +#, c-format +msgid "Old files (%d)" +msgstr "Régi fileok (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Ezek a fileok már nem részei a Gallery-nek. Valószínűleg nem okoz problémát� ha letörlöd " +"ezeket, sőt, jobb is ha letörlöd őket, hogy a telepítésedet tisztán tartsd." + +msgid "Errors occurred. Please see messages below." +msgstr "Hiba történt. Olvasd el az alábbi üzenetet." + +msgid "Please select the installation type" +msgstr "V�assz telepítés típust" + +msgid "Standard installation" +msgstr "Standard telepítés" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Ez a hagyományos telepítési típus. Válaszd ezt a telepítést, ha a Gallery-t a %s könyvtárba " +"akarod telepíteni, amely a %s URL-en lesz elérhető" + +msgid "Multisite installation" +msgstr "Multisite telepítés" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"A Gallery képes kezelni több független site-ot egyetlen kód telepítésével. Válaszd ezt a " +"típust, ha több képgalériát akarsz telepíteni ugyanazon a webszerveren, de különböző " +"elérésen, subdomain-en vagy URL-en." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"A multisite-ok nem osztoznak albumokon, képeken, felhasználókon vagy bármi máson. " +"Mindegyiknek szüksége van saját adatbázisra és tároló könyvtárra. További információiért és " +"telepítési leírásokért láogasd meg ezt az oldalt: %s" + +msgid "You must enter a directory" +msgstr "Meg kell adnod egy könyvtárat" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"A könyvtár amit megadtál a kódkönyvtárban van. Ha a galériát a kódbázisba akarod telepíteni, " +"akkor választ a standard telepési típus. Ha egy multisite-ot akarsz telepíteni, akkor " +"válassz másik könyvtárat." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"A könyvtár amit megadtál vagy nem létezik, vagy tiltva van a webszerver konfigurációjában. A " +"webszervered úgy van bekonfigurálva, hogy csak a felsorolt könyvtárakhoz fér hozzá. Vagy " +"ezek közül a könyvtárak közül kell választanod, vagy módosítanod kell a open_basedir " +"beállítást a PHP konfigurációjában egy új könyvtár engedélyezéséhez." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Ha a multisite telepítésed egy másik virtuális hoston van, akkor érdemes megkérned a " +"rendszer adminisztrátorát, hogy konfigurálja az open_basedir beállítást úgy, hogy a " +"virtual hostjaid hozzáférjenek egymáshoz." + +msgid "The directory you entered does not exist" +msgstr "A könyvtár amit megdtál nem létezik" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"A könyvtár amit megadtál nem hozzáférhető. Változtasd meg a jogosultságokat hogy a " +"webszerver tudja olvasni ezt a könyvtárat!" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Nem sikerült létrehozni a multisite fileokat. Győzdőj meg róla, hogy az alább felsorolt " +"fileok írhatók!" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Minden multisite ebből a központi kódtárból (kódkönyvtár) kerül telepítésre." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Add meg alul a könyvtárat a multisitehoz. Az elérésnek különböznie kell ett� a " +"kódkönyvtártól:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"A könyvtár írható kell hogy legyen a webszerver/php user számára, vagy tartalmaznia kell az " +"alábbi írható fileokat:" + +msgid "Select Directory" +msgstr "Válassz könyvtárat" + +msgid "Multisite directory setup successfully." +msgstr "Multisite könyvtár beállítása sikeres." + +msgid "Standard installation selected." +msgstr "Standard telepítést választottad." + +msgid "Install Steps" +msgstr "Telepítési lépések" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Biztosak akarunk lenni abban hogy a Gallery biztonságos. A config.php file (amit ez a " +"telep��módosított) olyan jogosults�okkal rendelkezik, melyek szerint mások írhatják. Ez " +"szükséges volt eddig a pontig, mert a telepítő \"más ember\"ként viselkedik a Unix " +"filerendszerben. Ezért mielőtt végzel, célszerű megváltoztatni a jogosultságot oly módon, " +"hogy más felhasználó ne írhassa. Pillanatnyilag a config.php módja: %s. Azt javasoljuk tedd " +"ezt:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Biztosak akarunk lenni abban hogy a Gallery biztonságos. A könyvtárnak, amely a config.php-t " +"tartalmazza (amit ez a telepítő módosított), jelenleg olyan jogosultságokkal rendelkezik, " +"hogy mások írhatják és törölhetik. Ezértt mielőtt végzel, célszerű megváltoztatni a " +"jogosultságot oly módon erre a könyvtárra, hogy más felhasználó ne tudja íri. Azt javasoljuk " +"tedd ezt:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Ha tényleg folytatni akarod, megteheted. De azt javasoljuk hogy áldozz rá egy pillanatot, " +"hogy meggyőződj a megfelelő biztoságról." + +msgid "We've verified that your config.php is secure." +msgstr "Leellenőriztük, hogy a config.php-d biztonságos." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Kérlek olvasd el a %1$sGallery Security Guide%3$s-ot. Egy rövid áttekintésért pedig a %2" +"$sshort check list%3$s-et a security guide-ban." + +msgid "Check Again" +msgstr "Ellenőrzés újra" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"A Gallery-nek szüksége van egy könyvtárra, amelyben a képeket tárolja. A könyvtár, amit " +"kiválasztottunk, működik, de a pillanatnyi helye és elnevezése nem nyújt maximális " +"biztonságot. Vagy válassz új könyvtárat a %sdocument root%s könyvtáron kívül, vagy a " +"könyvtár nevének végéhez adj egy véletlen stringet (pl. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"A maximális biztonság érdekében olyan könyvtárat kellene választanod, amely nem %sweb " +"elérhető%s. Ha ez nem megoldható akkor véletlenszerű nevet adj ennek a könyvtárnak." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Ha véletlenszerű nevet választasz vagy inkább a megadott könyvtárban ragadsz, erősítsd meg a " +"választásod." + +msgid "Yes, please omit the security check:" +msgstr "Igen, hagyjuk ki a biztonsági ellenőrzést:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Ez egy multisite telepítés. Ne feledd: minden multisitenak szüksége van egy saját tároló" +"(storage) könyvtárra." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Ha újabb böngészőt használsz, megpróbáljuk automatikusan kiegészíteni az eléréseket amiket " +"itt megadsz. Így ha nem találod a g2data könyvtár elérését, akkor nézd meg milyen " +"kiegészítéseket ajánlunk számodra az alábbi szövegdobozokban." + +msgid "The directory you entered is read only" +msgstr "A könyvtár, amit megadtál, csak olvasható" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Hiba lépett fel a tároló (storage) könyvtáron belüli könyvtárstruktra létrehozása közben." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "A tároló (storage) könyvtárad %sweben elérhető%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Nem sikerült leellenőrizni hogy a tároló könyvtár %sweben elérhető%s." + +msgid "Directory path:" +msgstr "Könyvtár elérése:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"A webszervered számára írhatónak kell lennie ennek a könyvtárnak. Ehhez az alábbi példákat " +"követheted." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "Megjegyzés: ezek csak példák! Nem feltétlenül működnek a rendszereden." + +msgid "Unix (with ftp access)" +msgstr "Unix (ftp hozzáféréssel)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Megjegyezzk, hogy az FTP szerverek és kliensek változatosak, így a az itt leírt beállítások " +"nem feltétlenül működhetnek minden esetben. Tájékozódj az FTP kliens leírásában, vagy kérd " +"meg a rendszered adminisztrátort hogy segítsen, ha problémába ütköztél." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Néhány webszolgáltatói környezetben az elérések amit a shellben vagy FTP-n keresztl látsz " +"nem egyezik azzal amit a PHP lát. Annak érdekében hogy az adatkönyvtárad valós elérését " +"megtaláld, megpróbálhatsz egy PHP szkriptet, amelynek dir.php a neve, az alábbi kódot " +"tartalmazza, és helyezd az adatkönyvtáradba." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"majd találd ki a dir.php URL-jét és nyisd meg a böngésződben (pl. %s). Ez megadja neked a " +"pontos elérést amit ide kell írnod." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Megjegyzés: Ehhez az szükséges hogy az adat könyvtárad weben hozzáférhető legyen, " +"amit nem javaslunk, mert megkerüli a kép tűzfalunkat. Azt javasoljuk, hogy helyezd át az " +"adat könyvtáradat olyan területre, amely nem hozzáférhető a weben, majd módosítsd itt az " +"elérését ennek megfelelően." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Megjegyzés: Nefelejtsd el letörölni a dir.php-t ha végeztél!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"A Gallery tároló (storage) könyvtár biztonságossá tételéhez szükséges információkért olvasd " +"el a %sSecurity Guide%s-ot." + +msgid "Storage directory set successfully." +msgstr "Tároló�(storgae) könyvtár sikeresen létrehozva." + +msgid "Success" +msgstr "Sikeres" + +msgid "Warning" +msgstr "Figyelem" + +msgid "Failed" +msgstr "Sikertelen" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Amennyiben Apache-ot használsz, hozz létre egy filet .htaccess néven a fő Gallery " +"könyvtárban az alábbi tartalommal:" + +msgid "Version Check" +msgstr "Verzió ellenőrzés" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Ez nem egy új telepítés és a telepített változat nem egyezik az új változattal." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "A telepített vátozat nem frissíthető az új verzióra!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"A telepített verzió régebbi mint az új verzió. :) Az upgradert kellene futtatnod, nem a " +"telepítőt!" + +msgid "Currently installed" +msgstr "Jelenleg telepített" + +msgid "New version" +msgstr "Új verzió" + +msgid "Go to the Upgrader!" +msgstr "Ugorj tovább az Upgrader-hez!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Az Upgradert kéne használnod. Írd be a böngésződbe a következő URL-t: %s/upgrade/index.php%s " +"a %s könyvtárban." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"A Gallery 2 telepítéséhez %d lépésre van szükség. Ez a telepítés segítséget nyújt Neked " +"ezekben a lépésekben. A lépések között bármikor visszatérhetsz egy korábbira, és " +"módosíthatod a beállításokat. Olvasd el a %sInstaller Help File%s mielőtt tovább haladsz." + +msgid "Select Language:" +msgstr "Válassz nyelvet:" + +msgid "Go" +msgstr "Mehet" + +msgid "Begin Installation»" +msgstr "Telepítés kezdése" diff --git a/Source/gallery2/install/po/it.po b/Source/gallery2/install/po/it.po new file mode 100644 index 0000000..40592a5 --- /dev/null +++ b/Source/gallery2/install/po/it.po @@ -0,0 +1,1371 @@ +# $Id: it.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-05-31 18:07+0000\n" +"PO-Revision-Date: 2007-01-09 14:12+0100\n" +"Last-Translator: Ermanno Baschiera \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Sconosciuto" + +msgid "Admin User Setup" +msgstr "Configurazione Utente Amministratore" + +msgid "admin" +msgstr "amministratore" + +msgid "Gallery Administrator" +msgstr "Amministratore di Gallery" + +msgid "Authenticate" +msgstr "Autenticazione" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "Errore: login.txt non trovato. Mettilo nella directory %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Errore: Il file login.txt non è leggibile. Dai a Gallery i permessi di lettura " +"per quel file." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Errore: La chiave contenuta in login.txt non corrisponde. Scarica un'altra " +"stringa di autenticazione qui sotto e prova ancora." + +msgid "Create Config File" +msgstr "Crea File Config" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Impossibile scrivere nel file di configurazione config.php nella directory %s. " +"Modifica i permessi. Se sei su Unix puoi fare chmod 666 config.php per risolverlo." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Il file config.php non esiste nella directory %s" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Il file config.php esiste ma non è scrivibile. Se il tuo server è Windows, forse bisogna " +"disattivare la condivisione dei file per config.php e impostare i permessi manualmente." + +msgid "Database Setup" +msgstr "Configurazione Database" + +msgid "You must have the MySQL PHP module installed" +msgstr "Devi avere il modulo PHP per MySQL installato" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Devi avere installato il modulo PHP Improved MySQL" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Devi avere il modulo PHP per ibm_db2 installato" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Devi avere il modulo PHP per PostgresSQL installato" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Devi avere il modulo PHP per Oracle OCI8 installato" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Devi avere installato il modulo PHP Component Object Model(COM)" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Devi specificare un prefisso per le colonne (raccomandiamo %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Usa solo lettere, numeri e underscore nel prefisso delle colonne" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Devi specificare un prefisso per le tabelle (raccomandiamo %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Usa solo lettere, numeri e underscore nel prefisso delle tabelle" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Impossibile creare una connessione con il database di tipo %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Impossibile connettersi al database con le informazioni che hai fornito." + +msgid "The database you specified does not exist. Please create it." +msgstr "Il database che hai specificato non esiste. Crealo, per favore." + +msgid "The database privileges test did not complete successfully." +msgstr "Il test dei privilegi del database non si è concluso con successo." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Le tabelle di Gallery esistono già in questo database! Ma non c'è il file 'versions.dat' " +"nella cartella di memorizzazione di G2, che interpretiamo come uno stato precario di G2. " +"Crea un file versions.dat con il formato corretto se pensi che la tua G2 sia in grado di " +"funzionare oppure seleziona l'installazione pulita, che cancellerà tutti i dati nel database " +"e nella cartella di memorizzazione." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"La cartella di memorizzazione di G2 contiene un file versions.dat di una vecchia " +"installazione. La le tabelle di Gallery nel database non esistono. Seleziona l'installazione " +"pulita per cancellare tutti i dati nella cartella di memorizzazione di Gallery e avanza al " +"passo successivo." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Le tabelle di Gallery esistono già nel database e c'è il file versions.dat nella cartella di " +"memorizzazione di Gallery. Ma la versione delle tabelle del database della Gallery " +"installata non corrisponde a quella dei dati installati nella cartella di memorizzazione di " +"Gallery. Seleziona un'installazione pulita per eliminare tutti i dati nel database e nella " +"cartella di memorizzazione e avanza al passo successivo." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Le tabelle di Gallery esistono già nel database e la cartella di memorizzazione di Gallery " +"sembra intatta. Seleziona di riutilizzare le tabelle del database esistenti e la cartella di " +"memorizzazione oppure seleziona l'installazione pulita per eliminare tutti i dati esistenti " +"nel database e nella cartella di memorizzazione." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Non ho potuto eseguire l'API richiesta per cancellare la cartella di memorizzazione. Per " +"favore cancella la cartella di memorizzazione manualmente." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Non ho potuto eseguire l'API richiesta per cancellare le tabelle del database di Gallery. " +"Per favore cancella il database di Gallery manualmente." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Non ho potuto caricare l'API di G2. Per favore cancella le tabelle del database di Gallery e " +"la cartella di memorizzazione manualmente." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a e più recente)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versioni precedenti alla v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x e più recente" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i e più recente)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x e più recente)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 e più recente" + +msgid "Unknown DB type or no known tables information." +msgstr "Tipo di DB sconosciuto oppure nessuna informazione conosciuta nelle tabelle." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Non ho potuto trovare un prefisso per tabelle libero simile a \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Non ho potuto aprire il file schema: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Errore nella creazione di una sequenza di test per il DB. Controlla il messaggio di errore " +"ritornato e README.html per i privilegi mancanti e ripulisci il database." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Errore nella sequenza di test per eliminare un DB. Controlla il messaggio di errore " +"ritornato e README.html per i privilegi mancanti e ripulisci il database." + +msgid "Missing SQL statements" +msgstr "SQL statements mancanti" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Controlla il messaggio di errore ritornato e README.html per i privilegi mancanti e " +"ripulisci il database." + +msgid "Finish Installation" +msgstr "Concludi Installazione" + +msgid "Install Gallery Core" +msgstr "Installa Core di Gallery" + +msgid "Installing the core module" +msgstr "Installazione modulo core" + +msgid "Unable to initialize our Gallery data" +msgstr "Impossibile inizializzare i dati di Gallery" + +msgid "Unable to communicate with the database" +msgstr "Impossibile comunicare con il database" + +msgid "Unable to load the core module" +msgstr "Impossibile caricare il modulo core" + +msgid "Unable to install the core module" +msgstr "Impossibile installare il modulo core" + +msgid "Unable to activate the core module" +msgstr "Impossibile attivare il modulo core" + +msgid "Unable to commit database transaction" +msgstr "Impossibile compiere la transazione nel database" + +msgid "Core module is only partially installed." +msgstr "Il modulo core è installato solo parzialmente." + +msgid "Install Plugins" +msgstr "Installa Plugins" + +msgid "Unable to initialize our Gallery session" +msgstr "Impossibile inizializzare la sessione di Gallery" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Impossibile caricare il modulo %s" + +msgid "Installing modules" +msgstr "Installazione moduli" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Impossibile installare il modulo %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Impossibile attivare il modulo %s" + +msgid "Unable to get the module list" +msgstr "Impossibile ottenere la lista dei moduli." + +msgid "Other" +msgstr "Altro" + +msgid "Installation Type" +msgstr "Tipo di Installazione" + +msgid "Check Security" +msgstr "Controlla la Sicurezza" + +msgid "Storage Setup" +msgstr "Configurazione Storage" + +msgid "System Checks" +msgstr "Controlli sul Sistema" + +msgid "Performing system checks" +msgstr "Esecuzione controlli sul sistema" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "versione PHP >= 4.3.0 oppure >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Errore: Gallery 2 necessita di PHP versione 4.3.0 o più recente oppure 5.0.4 o più recente. " +"Attualmente hai PHP versione %s. Contatta l'amministratore del tuo server web per chiedere " +"un upgrade, disponibile al %ssito di PHP%s." + +msgid "PHP Version" +msgstr "Versione PHP" + +msgid "FILE directive supported" +msgstr "Direttiva FILE supportata" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Errore: la direttiva __FILE__ di PHP non funziona correttamente. Inoltra una richiesta di " +"supporto all'amministratore del tuo webserver o nei forum di Gallery." + +msgid "FILE Directive" +msgstr "Direttiva FILE" + +msgid "Safe mode disabled" +msgstr "Safe mode disabilitato" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Errore: La versione di PHP che hai è configurata con safe mode abilitato. Devi disabilitare " +"safe mode affinché Gallery funzioni." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Espressioni regolari" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Errore: La versione di PHP che hai è configurata senza il supporto alle %sPerl Compatible " +"Regular Expressions%s. Devi attivare queste opzioni affinché Gallery funzioni." + +msgid "exec() allowed" +msgstr "exec() consentito" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Warning: La funzione exec() è disabilitata in PHP dal parametro disabled_functions di " +"php.ini. Non sarai in grado di utilizzare moduli che necessitano di binari esterni (ad es. " +"ImageMagick, NetPBM o Ffmpeg). Questo può essere configurato solo a livello di server, " +"quindi dovrai cambiarlo nel file php.ini globale." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() consentito" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Warning: La funzione set_time_limit() è disabilitata in PHP dal parametro " +"disabled_functions di php.ini. Gallery può funzionare comunque, ma non in maniera " +"affidabile. Ogni operazione che richiederà più di %d secondi verrà interrotta (e in alcuni " +"casi ti ritornerà una pagina bianca) col rischio di danneggiare i dati." + +msgid "Filesystem Operations" +msgstr "Operazioni sul Filesystem" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Errore: Delle operazioni essenziali sul filesystem sono disabilitate in PHP dal parametro " +"disabled_functions di php.ini. Devi permettere l'esecuzione di queste operazioni per " +"far funzionare Gallery. Le funzioni mancanti sono: %s." + +msgid "Memory limit" +msgstr "Limite memoria" + +msgid "no limit" +msgstr "nessun limite" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Warning: Il tuo PHP è configurato per limitare la memoria a %sb (parametro memory_limit in php.ini). Dovresti aumentare questo limite ad almeno %sMB affinché Gallery " +"lavori correttamente." + +msgid "File uploads allowed" +msgstr "Upload file consentito" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Warning: il tuo PHP è configurato per non permettere gli upload di file (parametro " +"file_uploads in php.ini). Dovrai attivare questa opzione se vuoi fare l'upload di " +"file in Gallery con un browser." + +msgid "Maximum upload size" +msgstr "Dimensione massima per l'upload" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Warning: Il tuo PHP è configurato in modo da limitare l'upload ad un massimo di %sb " +"(parametro upload_max_filesize in php.ini). Dovresti aumentare questo limite per " +"permettere l'upload di file più grandi." + +msgid "Maximum POST size" +msgstr "Dimensione massima per il POST" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Warning: Il tuo PHP è configurato in modo da limitare i dati di post ad un massimo di %sb " +"(parametro post_max_size in php.ini). Dovresti aumentare questo limite per permettere " +"l'upload di file più grandi." + +msgid "Translation support" +msgstr "Supporto alla traduzione" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Il tuo webserver non supporta la localizzazione. Per abilitare il supporto a lingue " +"aggiuntive chiedi al tuo amministratore di sistema di riconfigurare PHP con l'opzione %" +"sgettext%s attivata." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Il PHP che hai non ha la funzione %sbind_textdomain_codeset%s. Questo significa che Gallery " +"potrebbe visualizzare non correttamente i caratteri estesi di alcune lingue." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Il PHP che hai non ha la funzione %sdngettext%s. Questo significa che Gallery non sarà in " +"grado di tradurre le forme plurali." + +msgid "Zend compatibility mode" +msgstr "Compatibility mode di Zend" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Warning: Il tuo PHP è configurato con ze1_compatibility_mode di Zend che potrebbe causare il " +"crash di PHP. Clicca qui per fare un test del PHP. Se vedi \"SUCCESS\" " +"allora il tuo PHP va bene. Se ottieni un errore o nessuna risposta allora devi disattivare " +"ze1_compatibility_mode prima di procedere." + +msgid "putenv() allowed" +msgstr "putenv() consentito" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Warning: La funzione putenv() è disabilitata in PHP dal parametro disabled_functions " +"di php.ini. Gallery può funzionare anche così, ma raramente su alcuni sistemi Gallery non " +"sarà in grado di funzionare in lingue diverse dalla lingua di sistema e dall'Inglese." + +msgid "Output buffering disabled" +msgstr "Buffering dell'output disabilitato" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Attenzione: il buffering dell'output è abilitato nel tuo PHP a causa dei parametri %s " +"in php.ini. Gallery può funzionare anche con questa configurazione - il download dei file è " +"più veloce - ma Gallery potrebbe non essere in grado di servire file grandi (ad es. grandi " +"video) e incappare nei limiti della memoria. Inoltre, alcune caratteristiche come le barre " +"di avanzamento potrebbero non funzionare correttamente se il buffering dell'output è attivo, " +"a meno che non sia permesso ini_set()." + +msgid "Gallery file integrity" +msgstr "Integrità dei file di Gallery" + +msgid "Test skipped due to other errors." +msgstr "Test saltato a causa di altri errori." + +msgid "Theme available" +msgstr "Tema disponibile" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Errore: Deve esserci almeno un tema nella cartella %s!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest mancante o non accessibile." + +msgid "Welcome" +msgstr "Benvenuto" + +msgid "Please correct the following errors" +msgstr "Per favore correggi i seguenti errori" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Gallery deve avere almeno un utente amministratore che ha completo accesso alla " +"visualizzazione/modifica di ogni cosa. Scegli un nome utente e una password per il tuo " +"account di amministratore principale. Puoi aggiungere altri utenti più tardi." + +msgid "Admin username" +msgstr "Nomeutente amministratore" + +msgid "Please enter a valid user name" +msgstr "Inserisci un nome utente valido" + +msgid "Please enter a password" +msgstr "Inserisci una password" + +msgid "Password" +msgstr "Password" + +msgid "Setup password" +msgstr "Password di Setup" + +msgid "(type again)" +msgstr "(inseriscila ancora)" + +msgid "Admin email address" +msgstr "Indirizzo email Amministratore" + +msgid "Please enter a valid email address" +msgstr "Inserisci un indirizzo email valido" + +msgid "Admin full name (optional)" +msgstr "Nome completo Amministratore (facoltativo)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Password mancante! Inserisci la stessa password due volte" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Le password che hai inserito non corrispondono! Prova ancora." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Poiché stai riutilizzando delle tabelle del database esistenti, questa non è " +"un'installazione ex novo. Questa modificherà solo la password di setup, ma non la password " +"dell'amministratore del sito. Per cambiare la password dell'amministratore del sito, " +"seleziona la procedura di Gallery per la password dimenticata." + +msgid "Create" +msgstr "Crea" + +msgid "Save" +msgstr "Salva" + +msgid "Admin user info entered successfully." +msgstr "Informazioni utente amministratore inserite con successo." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Per procedere nell'installazione, dobbiamo verificare che tu sia davvero chi dici di essere. " +"Il miglior modo per assicurarcene, è di chiederti di fare un piccolo cambiamento nella " +"directory di Gallery che provi che hai i permessi giusti. Così ti chiediamo di creare un " +"nuovo file di testo chiamato login.txt nella directory %s sul tuo " +"webserver (è la stessa directory dove si trova main.php). Deve contenere i seguenti " +"caratteri generati casualmente:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Per tua convenienza, abbiamo preparato una %sversione corretta di login.txt%s. Scaricalo e " +"copialo nella directory %s ed ecco fatto." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Una volta caricato il file, clicca qui sotto per continuare." + +msgid "Authenticate Me" +msgstr "Autenticami" + +msgid "Authentication successful!" +msgstr "Autenticazione avvenuta con successo!" + +msgid "Erase data for a clean install" +msgstr "Elimina i dati per un'installazione pulita" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Sei sicuro di voler eliminare tutti i dati nella cartella di memorizzazione di Gallery e nel " +"database di Gallery?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"C'è stato un errore durante la cancellazione del db e della cartella di memorizzazione. Ecco " +"qui l'errore:" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Erase all data" +msgstr "Elimina tutti i dati" + +msgid "Please fix this error and try again." +msgstr "Risolvi il problema e prova ancora." + +msgid "Try Again" +msgstr "Prova Ancora" + +msgid "Create a config file" +msgstr "Crea un file di configurazione" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Ora dobbiamo scrivere tutte le informazioni che hai fornito in un file chiamato config." +"php nella directory di %s. Questo è un file molto importante perché fornisce a " +"Gallery tutte le informazioni necessarie a funzionare. Dopo averlo creato, puoi dare " +"un'occhiata al file e farci delle modifiche, se ti va." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Prima di procedere, devi creare un file nella tua cartella %s chiamato config.php. Devi assicurarti che il webserver ci possa scrivere dentro." + +msgid "Unix (with shell access)" +msgstr "Unix (con accesso shell)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Su Windows, non dovresti aver bisogno di fare niente di speciale." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Una volta creato questo file ed impostato i permessi adeguati, puoi procedere. Se c'è " +"qualche problema, ti diremo cosa sistemare." + +msgid "Create config file" +msgstr "Crea file config" + +msgid "Config file created successfully." +msgstr "File config creato con successo." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Abbiamo scritto tutte le informazioni che hai fornito in un file chiamato config.php " +"nella directory di gallery2. Puoi sfogliarlo e farci delle modifiche se ti va. Fai " +"attenzione, comunque -- se fai degli errori in quel file, Gallery non funzionerà " +"correttamente!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Seleziona il tipo del tuo database e inserisci le informazioni di autenticazione del " +"database. L'installer non creerà il database, quindi dovrai crearne uno tu e poi inserirne " +"il nome qui. Se stai installando Gallery in un database che ha già delle tabelle al suo " +"interno, i prefissi delle tabelle e delle colonne faranno in modo che i dati di Gallery non " +"vadano in conflitto con quelli già presenti." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Questa è un'installazione multi sito. Ricorda che ogni singolo sito necessita delle sue " +"tabelle del database. Scegli un database differente oppure dei diversi prefissi per le " +"tabelle di ciascun sito." + +msgid "Database type:" +msgstr "Tipo database:" + +msgid "DB Hostname:" +msgstr "Hostname DB:" + +msgid "DB Username:" +msgstr "Nomeutente DB:" + +msgid "DB Password:" +msgstr "Password DB:" + +msgid "DB Name:" +msgstr "Nome DB:" + +msgid "Table Prefix:" +msgstr "Prefisso Tabella:" + +msgid "Column Prefix:" +msgstr "Prefisso Colonne:" + +msgid "We received the following database related errors:" +msgstr "Abbiamo ricevuto i seguenti errori relativi al database:" + +msgid "Erase Data For A Clean Install" +msgstr "Elimina Dati per l'Installazione Pulita" + +msgid "Reuse Existing Tables" +msgstr "Riutilizza Tabelle Esistenti" + +msgid "Database set up successfully." +msgstr "Database configurato con successo." + +msgid "Finished!" +msgstr "Finito!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Congratulazioni! L'installazione di Gallery 2 è completata! Hai visto? Non era poi così " +"difficile! Adesso è il momento di caricare qualche foto!" + +msgid "Go to my Gallery!" +msgstr "Vai alla mia Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Adesso puoi andare nella tua nuova Gallery. Inserisci nel tuo browser l'URL di %smain.php%s " +"nella directory di %s." + +msgid "Installer Help" +msgstr "Help Installer" + +msgid "Start Over" +msgstr "Ricomincia da Capo" + +msgid "Error installing Gallery Core" +msgstr "Errore durante l'installazione del Core di Gallery" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" +"Qualcosa è andato storto quando abbiamo provato a installare il modulo core. Cosa si fa ora?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Vai alla fase System Check dell'installer e assicurati che tutti i controlli mostrino 'OK'. " +"Uno sbaglio comune è quello di ignorare gli avvertimenti sull'integrità dei file." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Se non ci sono avvertimenti o errori nella fase del System Check, svuota la cartella di " +"memorizzazione ed elimina le tabelle del database e lancia il processo di installazione una " +"seconda volta (ripercorri tutte le fasi)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Per favore visita la pagina %sG2 FAQ%s e leggi %sla sezione chiamata Known issues nel Readme%" +"s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Se il problema persiste, per favore copia il log dell'installazione che si trova in %s e " +"allegalo (come install.log.zip) a una nuova discussione nel %sG2 support forum%s oppure, se " +"possibile, inserisci nella discussione solamente un link al file install.log, in modo che lo " +"staff del forum possa analizzarlo se necessario." + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Core di Gallery installato con successo." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Abbiamo installato con successo il core di Gallery. Anche se a questo punto tutto quanto " +"funziona, sarebbe meglio continuare con l'installer per aggiungere alcuni dei moduli " +"opzionali, in modo da ottenere il giusto set di funzionalità che vorresti per la tua Gallery." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"I moduli che seguono possono essere installati e attivati automaticamente. È opportuno " +"installare almeno uno dei set di strumenti grafici, altrimenti Gallery non sarà in grado di " +"creare le anteprime delle immagini. Nella maggior parte dei sistemi, l'installazione " +"automatica dovrebbe funzionare a dovere. Tuttavia, in alcuni casi potrebbe non funzionare. " +"Puoi sempre attivare nuovi moduli qui o disattivarne alcuni dalla pagina Amministrazione " +"Sito, così qualsiasi decisione prendi qui, non sarà permanente." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Alcuni moduli potrebbero non installarsi automaticamente. È tutto regolare. Significa che " +"tipicamente hanno bisogno di una qualche configurazione, che puoi effettuare nella pagina " +"dell'Amministrazione Sito" + +msgid "Name" +msgstr "Nome" + +msgid "Version" +msgstr "Versione" + +msgid "Description" +msgstr "Descrizione" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Incompatibile con questa versione di Gallery)" + +msgid "(un)check all" +msgstr "(de)seleziona tutto" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Continua con la Fase %d Senza Attivazioni»" + +msgid "Activate Selected Modules" +msgstr "Attiva i Moduli Selezionati" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"Il modulo %s è stato installato, ma ha bisogno di configurazione per essere attivato." + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Al termine dell'installazione, entra come Amministratore e vai all'Amministrazione Sito. Vai " +"alla schermata Moduli e configura i moduli elencati sopra." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Modulo %s attivato con successo" + +msgid "Activate More Modules" +msgstr "Attiva Altri Moduli" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Continua con la Fase %d»" + +msgid "Debug Output" +msgstr "Output di Debug" + +msgid "Welcome to the Gallery Installer" +msgstr "Benvenuto nell'Installer di Gallery" + +#, c-format +msgid "Install %d%% complete" +msgstr "Installazione completata al %d%%" + +msgid "Redo this step" +msgstr "Ripeti questa fase" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: le tue foto sul tuo sito" + +#, c-format +msgid "Missing files (%d)" +msgstr "File Mancanti (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Nota: Stai eseguendo una versione SVN di Gallery, quindi file rimossi di recente potrebbero " +"comparire qui. Puoi tranquillamente ignorarli." + +#, c-format +msgid "Modified files (%d)" +msgstr "File modificati (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Nota: Stai eseguendo una versione SVN di Gallery, quindi aspettati di trovare dei file " +"modificati. Puoi tranquillamente ignorarli, ma per essere sicuro dovresti eseguire 'svn " +"update' prima di continuare." + +#, c-format +msgid "Old files (%d)" +msgstr "File vecchi (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Questi file non fanno più parte di Gallery. Probabilmente non creeranno alcun problema ma " +"sarebbe una buona idea quella di cancellarli e tenere pulita l'installazione." + +msgid "Errors occurred. Please see messages below." +msgstr "Si sono verificati degli errori. Controlla i messaggi che seguono." + +msgid "Please select the installation type" +msgstr "Seleziona il tipo di installazione" + +msgid "Standard installation" +msgstr "Installazione standard" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Questo è il tipo di installazione predefinito. Seleziona questo tipo di installazione se " +"vuoi installare una nuova Gallery nella cartella %s che sarà accessibile dall'URL %s." + +msgid "Multisite installation" +msgstr "Installazione siti multipli" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery può supportare più siti indipendenti con una singola installazione del codice. " +"Scegli questo tipo di installazione se vuoi installare una nuova Gallery nello stesso server " +"ma in un percorso, sottodominio o dominio URL differenti." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"I siti multipli non condividono album, foto, utenti o quant'altro. Hanno tutti bisogno dei " +"loro database e delle loro cartelle di memorizzazione. Per ulteriori informazioni e " +"spiegazioni sulle installazioni multi sito, visita la pagina %s." + +msgid "You must enter a directory" +msgstr "Devi inserire una directory" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"La cartella che hai inserito è la cartella del codebase. Se vuoi installare una Gallery " +"nella cartella del codebase, seleziona il tipo di installazione standard. Se vuoi installare " +"un sito multiplo, scegli un'altra cartella." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"La cartella che hai inserito non esiste, oppure è vietata dalla configurazione del " +"webserver. Il tuo webserver è configurato per darti accesso solo alle seguenti cartelle. " +"Devi scegliere una di queste cartelle, oppure devi modificare la configurazione di " +"open_basedir in PHP per autorizzare una nuova cartella." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Se la tua installazione multisito si trova in un host differente, dovresti contattare il tuo " +"amministratore di sistema e chiedergli che ti configuri open_basedir in modo che gli " +"host virtuali possano raggiungersi l'un l'altro." + +msgid "The directory you entered does not exist" +msgstr "La directory che hai inserito non esiste." + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"La directory che hai inserito non è accessibile. Cambia i permessi in modo che il webserver " +"possa leggere questa directory." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Impossibile creare i file per il multisito. Assicurati che i file elencati di seguito siano " +"scrivibili." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" +"Tutti i siti multipli sono installati a partire da questo deposito centrale del codice " +"(codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Inerisci qui sotto la cartella per un nuovo sito multiplo. Il percorso deve essere " +"differente da quello dell'installazione di questo codebase." + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"La directory deve essere scrivibile dall'utente del webserver/php oppure deve contenere i " +"seguenti file scrivibili:" + +msgid "Select Directory" +msgstr "Seleziona Directory" + +msgid "Multisite directory setup successfully." +msgstr "Directory multisito configurata con successo." + +msgid "Standard installation selected." +msgstr "Installazione standard selezionata." + +msgid "Install Steps" +msgstr "Fasi Installazione" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Vogliamo essere certi che la tua Gallery sia sicura. Il file config.php che questo installer " +"ha modificato, ha i permessi di scrittura per altri utenti. Questo è necessario perché " +"l'installer si qualifica come \"un'altra persona\" quando ci si trova di fronte ai permessi " +"di Unix. Così, prima di concludere, dovresti cambiare i permessi per questo file in modo che " +"altri utenti non possano scriverci. Attualmente il file config.php ha permessi %s. Ti " +"suggeriamo di fare questo:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Vogliamo essere certi che la tua Gallery sia sicura. La directory che contiene config.php " +"che questo installer ha modificato, ha permessi tali che altri utenti possono scrivere o " +"eliminare file. Così prima di concludere, dovresti cambiare i permessi su questa directory " +"in modo che altri utenti non ci possano scrivere. Ti suggeriamo di fare questo:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Se vuoi davvero continuare, puoi farlo. Ma ti consigliamo di prenderti un altro po' di tempo " +"per verificare che sia tutto a posto." + +msgid "We've verified that your config.php is secure." +msgstr "Abbiamo verificato che il tuo config.php è sicuro." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Per favore leggi la %1$sGallery Security Guide%3$s. Per un'infarinatura veloce, da' " +"un'occhiata alla %2$sshort check list%3$s contenuta nella guida alla sicurezza." + +msgid "Check Again" +msgstr "Controlla Ancora" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery ha bisogno di una cartella in cui memorizzare le tue immagini. La cartella che " +"abbiamo scelto per te funzionerà, ma la sua posizione o il nome attuale non offrono molta " +"sicurezza. Seleziona una nuova cartella al di fuori della cartella %sdocument root%s oppure " +"aggiungi una stringa casuale alla fine del nome della cartella (ad es. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Per una maggiore sicurezza faresti meglio a selezionare una cartella che non sia %" +"saccessibile dal web%s. Se questo non è possibile, specifica un nome casuale per questa " +"cartella." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Se hai scelto un nome casuale o se preferisci rimanere con la cartella specificata, conferma " +"la tua scelta." + +msgid "Yes, please omit the security check:" +msgstr "Sì, ometti il controllo sicurezza:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Questa è un'installazione multisito. Ricorda che ogni sito necessita della sua cartella di " +"memorizzazione." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Se usi un browser moderno, tenteremo di completare automaticamente ogni path che inserisci " +"qui. Così se hai difficoltà a trovare il path corretto per la directory g2data, prova a " +"inserire qualche path nella casella di testo qui sotto e vedi quale completamento comparirà." + +msgid "The directory you entered is read only" +msgstr "La directory che hai inserito è di sola lettura" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"C'è stato un errore durante la creazione della struttura delle directory nella directory di " +"storage." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "La cartella di storage è %saccessibile dal web%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" +"Immpossibile verificare se la cartella di memorizzazione non sia %saccessibile dal web%s." + +msgid "Directory path:" +msgstr "Path directory:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Il webserver deve essere in grado di scrivere in questa cartella. Per farlo funzionare, puoi " +"seguire questi esempi." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "Nota: questi sono solo esempi! Potrebbe darsi che non funzionino bene sul tuo sistema." + +msgid "Unix (with ftp access)" +msgstr "Unix (con accesso ftp)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Nota che i server e i client ftp variano quindi queste istruzioni potrebbero non funzionare " +"da te. Consulta il manuale del tuo client FTP o parla con un amministratore di sistema per " +"cercare aiuto se hai problemi" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"In alcuni ambienti di web hosting, i path che vedi nella shell o via FTP non sono gli stessi " +"path che vede PHP. Per trovare il vero path della directory dei dati, puoi provare a creare " +"uno script PHP chiamato dir.php contenente il seguente codice e a metterlo nella tua " +"directory dei dati." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"poi trova l'URL di dir.php e aprilo nel tuo browser (ad es. %s). Questo ti dirà il path " +"esatto da inserire qui." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Nota: Questo necessita che la directory dei dati sia accessibile dal web, cosa che " +"non raccomandiamo perché scavalca il nostro firewall per le immagini. Una volta trovato il " +"path in questo modo, raccomandiamo di spostare la directory dei dati fuori dell'area " +"accessibile dal web e poi di aggiornare qui il path di conseguenza." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Nota: Non dimenticare di eliminare dir.php quando hai finito!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Per avere informazioni su come rendere sicura la cartella di memorizzazione di Gallery, vedi " +"la %sSecurity Guide%s." + +msgid "Storage directory set successfully." +msgstr "Directory di storage configurata con successo." + +msgid "Success" +msgstr "OK" + +msgid "Warning" +msgstr "Warning" + +msgid "Failed" +msgstr "Errore" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Se usi Apache, crea un file chiamato .htaccess nella directory principale di Gallery con il " +"seguente contenuto:" + +msgid "Version Check" +msgstr "Controllo Versione" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Questa non è una nuova installazione e la versione installata non corrisponde quella nuova." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "La versione installata non può essere aggiornata a quella nuova!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"La versione installata è più vecchia della nuova versione. Devi eseguire l'upgrader, non " +"l'installer!" + +msgid "Currently installed" +msgstr "Attualmente installato" + +msgid "New version" +msgstr "Nuova versione" + +msgid "Go to the Upgrader!" +msgstr "Vai all'Upgrader!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Ora dovresti andare all'upgrader. Inserisci nel tuo browser l'URL di %s/upgrade/index.php%s " +"nella directory di %s." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"L'installazione di Gallery 2 nel tuo webserver prevede %d fasi. Questo installer ti guiderà " +"attraverso queste fasi e ti darà assistenza lungo il cammino se ci sarà bisogno di ulteriori " +"passi per avere Gallery funzionante. Una volta che una fase è stata completata, puoi sempre " +"tornare indietro e apportare dei cambiamenti. Leggi il %sFile di Help dell'Installer%s prima " +"di continuare." + +msgid "Select Language:" +msgstr "Seleziona la Lingua:" + +msgid "Go" +msgstr "Vai" + +msgid "Begin Installation»" +msgstr "Inizia Installazione»" diff --git a/Source/gallery2/install/po/ja.po b/Source/gallery2/install/po/ja.po new file mode 100644 index 0000000..d9742bd --- /dev/null +++ b/Source/gallery2/install/po/ja.po @@ -0,0 +1,1352 @@ +# $Id: ja.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Kennichi Uehara +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-08-09 01:16+0900\n" +"PO-Revision-Date: 2007-03-14 23:02+0900\n" +"Last-Translator: Yosuke Suzuki\n" +"Language-Team: Japanese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "未知" + +msgid "Admin User Setup" +msgstr "管理者ユーザ設定" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery 管理者" + +msgid "Authenticate" +msgstr "認証" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"エラー: login.txt の存在を確認できませんでした。このファイルを %s/ " +"ディレクトリに置いてください。" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"エラー: login.txt ファイルが読めません。Gallery に読み込みパーミッションをあた" +"えてください。" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"エラー: login.txt のキーが正しく一致しませんでした。新しい認証文字列を以下から" +"ダウンロードしてもう一度試してください。" + +msgid "Create Config File" +msgstr "設定ファイルの作成" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"%s ディレクトリにある config.php 設定ファイルに書き込めません。パーミッションを変更し" +"てください。Unix なら、 chmod 666 config.php を実行して修正できます。" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "%s ディレクトリには config.php ファイルが存在しません" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"config.php ファイルは存在しますが書き込みできません。サーバが Windows の場合は、config.php の" +"ファイル共有を無効にし、パーミッションを手動で変えなければならないでしょう。" + +msgid "Database Setup" +msgstr "データベースセットアップ" + +msgid "You must have the MySQL PHP module installed" +msgstr "PHP の MySQL モジュールがインストールされていなければなりません" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "PHP の MySQL 改良版モジュールがインストールされていなければなりません" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "PHP の ibm_db2 モジュールがインストールされていなければなりません" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "PHP の PostgreSQL モジュールがインストールされていなければなりません" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "PHP の Oracle OCI8 モジュールがインストールされていなければなりません" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" +"コンポーネントオブジェクトモデル(COM)PHPモジュールがインストールされていなければなりません" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "カラムのプレフィックスを指定しなくてはなりません (推奨 %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "カラムのプレフィックスには、半角英数文字とアンダースコアのみ使用してください" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "テーブルのプレフィックスを指定しなくてはなりません (推奨 %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "テーブルのプレフィックスには、半角英数文字とアンダースコアのみしか使用できません" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "タイプ %s のデータベースコネクションを生成できませんでした" + +msgid "Unable to connect to database with the information provided." +msgstr "提供された情報でデータベースに接続できませんでした" + +msgid "The database you specified does not exist. Please create it." +msgstr "指定されたデータベースは存在しません。作成してください。" + +msgid "The database privileges test did not complete successfully." +msgstr "データベースの特権テストは完全に成功しませんでした。" + +#, fuzzy +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallery のテーブルは既にデータベースに存在します。しかし、G2ストレージディレクトリには " +"'versions.dat' ファイルが存在しません。which we interpret as a broken state of G2. 正しい" +"フォーマットの\n" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 ストレージディレクトリには過去のインストールの versions.dat が存在します。しかし、Gallery " +"データベーステーブルは存在しません。Gallery ストレージディレクトリにある全てのデータを消去す" +"るクリーンインストールを選択し、次のステップへ進んでください。" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Galleryテーブルが既にデータベースに存在し、Galleryストレージディレクトリに versions.dat ファ" +"イルがあります。しかし、インストール済みのGalleryデータベーステーブルのバージョンは、Gallery" +"ストレージディレクトリのデータのバージョンと一致しません。ストレージディレクトリにあるデータ" +"を全て消去するためにクリーンインストールを選択し、次のステップへ進んでください。" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Galleryテーブルは既にデータベースに存在し、Galleryストレージディレクトリは損なわれていないよ" +"うです。存在するデータベーステーブルとストレージディレクトリのデータを救済するか、データベー" +"スとストレージディレクトリにある全てのデータを消去してクリーンインストールをするか選択してく" +"ださい。" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"ストレージディレクトリを消去するために必要なAPIが実行できませんでした。手動でGalleryストレー" +"ジディレクトリを削除してください。" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Galleryデータベーステーブルをdropするために必要なAPIを実行できませんでした。手動でGalleryデー" +"タベースを掃除してください。" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"G2 APIを読み込めませんでした。Galleryデータベーステーブルとストレージディレクトリを手動で削除" +"してください。" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a 以上)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (v3.23.34a 未満)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x 以上" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i 以上)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 for Unix/Windows, v9.x 以上" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 以上" + +msgid "Unknown DB type or no known tables information." +msgstr "未知のタイプのデータベースかテーブル情報です" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "\"%s\" に似た未使用のテーブルプレフィックスが見つかりませんでした。" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "スキーマファイル \"%s\" が開けません" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"データベーステストシーケンスの作成に失敗しました。エラーメッセージを確認して、不足している特" +"権とデータベースのクリーンアップのためにREADME.htmlを読んでください。" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"データベースをドロップするテストに失敗しました。エラーメッセージを確認して、不足している特権" +"とデータベースのクリーンアップのためにREADME.htmlを読んでください。" + +msgid "Missing SQL statements" +msgstr "SQL ステートメントが欠落しています。" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"エラーメッセージを確認して、不足している特権とデータベースのクリーンアップのためにREADME.html" +"を読んでください。" + +msgid "Finish Installation" +msgstr "インストール完了" + +msgid "Install Gallery Core" +msgstr "Gallery Core をインストール" + +msgid "Installing the core module" +msgstr "コアモジュールをインストール中" + +msgid "Unable to initialize our Gallery data" +msgstr "Gallery データを初期化できません" + +msgid "Unable to communicate with the database" +msgstr "データベースと通信できません" + +msgid "Unable to load the core module" +msgstr "コアモジュールを読み込みません" + +msgid "Unable to install the core module" +msgstr "コアモジュールをインストールできません" + +msgid "Unable to activate the core module" +msgstr "コアモジュールをアクティブにできません" + +msgid "Unable to commit database transaction" +msgstr "データベーストランザクションをコミットできません" + +msgid "Core module is only partially installed." +msgstr "コアモジュールは部分的にしかインストールされていません。" + +msgid "Install Plugins" +msgstr "プラグインをインストール" + +msgid "Unable to initialize our Gallery session" +msgstr "Gallery セッションを初期化できません" + +#, c-format +msgid "Unable to load the %s module" +msgstr "%s モジュールを読み込めません" + +msgid "Installing modules" +msgstr "モジュールをインストール中" + +#, c-format +msgid "Unable to install the %s module" +msgstr "%s モジュールをインストールできません" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "%s モジュールを有効化できません" + +msgid "Unable to get the module list" +msgstr "モジュールリストを取得できません" + +msgid "Other" +msgstr "その他" + +msgid "Installation Type" +msgstr "インストールタイプ" + +msgid "Check Security" +msgstr "セキュリティをチェック" + +msgid "Storage Setup" +msgstr "ストレージセットアップ" + +msgid "System Checks" +msgstr "システムチェック" + +msgid "Performing system checks" +msgstr "システムチェックを実行中" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP バージョン >= 4.3.0 or >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"エラー: Gallery 2 は、PHPバージョン 4.3.0 以上または 5.0.4 以上が必要です。インストールされて" +"いるPHPのバージョンは %s です。ウェブサーバの管理者に連絡して、アップグレードを要望してくださ" +"い。%sPHP のウェブサイト%s" + +msgid "PHP Version" +msgstr "PHP バージョン" + +msgid "FILE directive supported" +msgstr "FILE ディレクティブはサポートされています" + +#, fuzzy +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"エラー: PHPの __FILE__ ディレクティブは正しく機能していません。\n" +"directive is not functioning correctly. Please file a support request with your webserver " +"administrator or in the Gallery forums." + +msgid "FILE Directive" +msgstr "FILE ディレクティブ" + +msgid "Safe mode disabled" +msgstr "セーフモードは無効です" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"エラー: このPHPはセーフモードが有効に設定されています。Gallery を動作させる前にセーフモードを" +"無効にしなければなりません。" + +msgid "Safe Mode" +msgstr "セーフモード" + +msgid "Regular expressions" +msgstr "正規表現" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"エラー: このPHPは %sPerl互換正規表現%s に対応するように設定されていません。Gallery を動作させ" +"る前にこれらの機能を有効にしなければなりません。" + +msgid "exec() allowed" +msgstr "exec() 許可" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"注意: exec() 機能はphp.iniファイルの diabled_functions パラメータによって無効にされて" +"います。外部バイナリを必要とするモジュール(ImageMagick NetPBM Ffmpeg など)を使用できないで" +"しょう。これはサーバ全体にわたってのみ設定できますので、それはグローバルなphp.iniに変更を加え" +"る必要があります。" + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() 許可" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"警告: php.ini ファイルの disabled_functionsパラメータによって set_time_limit() 機能が" +"無効になっています。 Gallery はこの設定でも動作しますが、信頼性が確保されません。 %d 秒以上か" +"かる操作は、データの衝突ですべて失敗します(場合によっては、ブランクページを表示します)" + +msgid "Filesystem Operations" +msgstr "ファイルシステムの操作" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"警告: php.ini ファイルの disabled_functionsパラメータによって、必要不可欠なファイルシ" +"ステムの操作が無効になっています。Galleryを動かす前にこれらの機能を許可しなければなりません。" +"以下の機能が欠けています: %s" + +msgid "Memory limit" +msgstr "メモリ制限" + +msgid "no limit" +msgstr "無制限" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"警告: あなたの使用しているPHP はメモリの使用が, %sb に制限されいます。(php.ini ファイルの" +"memory_limitパラメータ)。問題なく Gallery を利用するためには最低でも%sMBまで制" +"限を引き上げてください。" + +msgid "File uploads allowed" +msgstr "ファイルのアップロード許可" + +#, fuzzy +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"警告: Your PHP is configured not to allow file uploads (file_uploads parameter in php." +"ini). You will need to enable this option if you want to upload files to your Gallery with a " +"web browser." + +msgid "Maximum upload size" +msgstr "アップロードの最大サイズ" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"警告: あなたの利用している PHP はアップロードできるファイルサイズが、 %sb に制限されていま" +"す。(php.ini ファイルの upload_max_filesize パラメータ)。この制限をより大きなファイ" +"ルがアップロードできるように引き上げてください。" + +msgid "Maximum POST size" +msgstr "POSTの最大サイズ" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"警告:あなたの使用しているPHPはポストできるデータの最大サイズが %sb に制限されています。(php." +"iniファイルのpost_max_size パラメータ)より大きいサイズのファイルをアップロードできるよ" +"うにするにはこの制限を引き上げる必要があります" + +msgid "Translation support" +msgstr "翻訳サポート" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"あなたのウェブサーバーは地域言語化をサポートしていません。追加的な言語のサポートを有効にする" +"ためには、あなたのシステム管理者に %sgettext%s のオプションを有効にした状態でPHPを再設定する" +"よう依頼してください" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"あなたの使用しているPHPには %sbind_textdomain_codeset%s 機能がありません。Gallery はいくつか" +"の言語のための拡張的な文字を間違って表示するかもしれません" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"あなたの使用しているPHPには %sdngettext%s 機能がありません。Gallery は複数のフォームを翻訳す" +"ることができません" + +msgid "Zend compatibility mode" +msgstr "Zend 互換モード" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"警告: あなたの使用しているPHPはクラッシュする危険のある Zend ze1_compatibility_mode が設定さ" +"れています。 ここをクリックしてPHPをテストしてください。\"SUCCESS\" と表" +"示されれば問題ありません。エラーか無反応な場合は、先に進む前に ze1_compatibility_mode をオフ" +"にしてください" + +msgid "putenv() allowed" +msgstr "putenv() 許可済み" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"警告: php.ini ファイルの disabled_functionsパラメータによって set_time_limit() 機能が" +"無効になっています。 Gallery はこの設定でも動作しますが、信頼性が確保されません。 %d 秒以上か" +"かる操作は、データの衝突ですべて失敗します(場合によっては、ブランクページを表示します)" + +msgid "Output buffering disabled" +msgstr "出力バッファリングは無効" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"警告: php.ini内の %s パラメータでPHPの出力バッファリングが有効になっています。Gallery " +"はこの設定でも動きますが(ファイルのダウンロードは速くなります)、ビデオなどの大きなファイルを" +"扱うことができず、メモリ制限に引っかかります。また、ini_set()が許可されていない限り、出力バッ" +"ファリングが有効ならばプログレスバーなどのいくつかの機能は正しく動作しません。" + +msgid "Gallery file integrity" +msgstr "Gallery ファイルの完全性" + +msgid "Test skipped due to other errors." +msgstr "他のエラーのためにテストがスキップされました" + +msgid "Theme available" +msgstr "テーマは利用可能" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "エラー: %s フォルダに最低ひとつのテーマが必要です。" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest がないかアクセスできません" + +msgid "Welcome" +msgstr "ようこそ" + +msgid "Please correct the following errors" +msgstr "以下のエラーを修正してください" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Galleryは常に、全てを閲覧/編集できるフルアクセス可能な最低一人の管理者ユーザが存在します。中" +"心となる管理者アカウントのユーザ名とパスワードを選択してください。また、後でユーザを追加する" +"こともできます。" + +msgid "Admin username" +msgstr "管理者ユーザー名" + +msgid "Please enter a valid user name" +msgstr "有効なユーザ名を入力してください" + +msgid "Please enter a password" +msgstr "パスワードを入れてください" + +msgid "Password" +msgstr "パスワード" + +msgid "Setup password" +msgstr "パスワードのセットアップ" + +msgid "(type again)" +msgstr "(再入力)" + +msgid "Admin email address" +msgstr "管理者メールアドレス" + +msgid "Please enter a valid email address" +msgstr "有効なメールアドレスを入力してください" + +msgid "Admin full name (optional)" +msgstr "管理者フルネーム (オプション)" + +msgid "Missing password! Please enter the same password twice" +msgstr "パスワードが欠けています。同じパスワードを2回入力してください。" + +msgid "The passwords you entered do not match! Please try again." +msgstr "入力したパスワードが一致しません。もう一度試してください。" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"存在するデータベーステーブルを再使用しているため、これは新規インストールではありません。これ" +"はセットアップパスワードを変更するのみで、サイト管理者のパスワードは変更しません。サイト管理" +"者のパスワードを変更するには、Galleryメカニズムのパスワードリマインダを使用してください。" + +msgid "Create" +msgstr "作成" + +msgid "Save" +msgstr "保存" + +msgid "Admin user info entered successfully." +msgstr "管理者ユーザ情報の入力に成功しました。" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"インストールを進めるには、あなたが権利を有する人であるか確かめなければなりません。もっともよ" +"い方法は、あなたが正しい権限を持っていると証明できるGalleryディレクトリに、小さな変更を加える" +"ようあなたに頼むことです。したがって、 login.txt というファイルをウェブサー" +"バ上の %s ディレクトリに作成してください。(main.phpがある場所と同じディレクトリで" +"す) そのファイルの内容は以下のランダムに生成された文字列でなければなりません。:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"便利なように、%s正しいlogin.txt%sを用意しました。ダウンロードして %s ディレクトリに" +"入れてください。これで準備完了です" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "ファイルをアップロードしたら、下をクリックして続けてください。" + +msgid "Authenticate Me" +msgstr "認証する" + +msgid "Authentication successful!" +msgstr "認証に成功しました" + +msgid "Erase data for a clean install" +msgstr "データを消去してクリーンインストールする" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Gallery ストレージディレクトリおよび Gallery データベースにある全てのデータを削除してよろしい" +"ですか?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "DBとストレージディレクトリのデータ削除中にエラーが発生しました。これがエラー:" + +msgid "Cancel" +msgstr "キャンセル" + +msgid "Erase all data" +msgstr "全てのデータを消去" + +msgid "Please fix this error and try again." +msgstr "このエラーを訂正してもう一度試してください" + +msgid "Try Again" +msgstr "再試行" + +msgid "Create a config file" +msgstr "設定ファイルの作成" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"あなたが提供したすべての情報を、これから%s ディレクトリのconfig.phpというファイ" +"ルに書き込みます。このファイルは Gallery を運用する上で必要な情報がすべて入った非常に重要な" +"ファイルです。このファイルを作成した後でも、このファイルを読んで、必要ならば変更を加えること" +"もできます" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"始める前に、 %s ディレクトリ内に config.php という名前のファイルを作成すべきで" +"す。ウェブサーバがそのファイルに書き込みできることを確認してください。" + +msgid "Unix (with shell access)" +msgstr "Unix (シェル経由)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Windowsでは特別なことをする必要はないはずです。" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"このファイルを作成して正しくパーミッションを設定すれば、始めることができます。問題があれば、" +"修正する方法を教えます。このファイルを作成して正しくパーミッションを設定すれば、始めることが" +"できます。問題があれば、修正する方法を教えます。" + +msgid "Create config file" +msgstr "設定ファイルの作成" + +msgid "Config file created successfully." +msgstr "設定ファイルの作成に成功しました。" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"あなたが提供した全てのデータをgallery2ディレクトリの config.php というファイルに書き出" +"しました。必要ならこのファイルを読んだり変更を加えたりできます。しかし気をつけてください、そ" +"のファイルで間違いをおかすとGalleryは正しく動作しません。" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"データベースのタイプを選択して、データベースの認証情報を入力してください。インストーラーは" +"データベースを作成しません。自分でデータベースを作成し、そのデータベースの名前をここに入力し" +"てください。すでにテーブルを持つデータベースを利用する場合、テーブルとカラムのプレフィックス" +"がすでにあるテーブルとの衝突を防ぎます" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"これはマルチサイトインストールです。それぞれのマルチサイトは自身のデータベーステーブルが必要" +"です。それぞれに違うデータベースを選択するか、違うテーブルプレフィックスを用いてください。" + +msgid "Database type:" +msgstr "データベースタイプ:" + +msgid "DB Hostname:" +msgstr "DB ホスト名:" + +msgid "DB Username:" +msgstr "DB ユーザ名:" + +msgid "DB Password:" +msgstr "DB パスワード:" + +msgid "DB Name:" +msgstr "データベース名:" + +msgid "Table Prefix:" +msgstr "テーブルのプレフィックス:" + +msgid "Column Prefix:" +msgstr "カラムのプレフィックス:" + +msgid "We received the following database related errors:" +msgstr "以下のデータベースに関連するエラーを受けました:" + +msgid "Erase Data For A Clean Install" +msgstr "クリーンインストールのためにデータ消去" + +msgid "Reuse Existing Tables" +msgstr "既存のテーブルを再利用" + +msgid "Database set up successfully." +msgstr "データベースのセットアップに成功しました" + +msgid "Finished!" +msgstr "完了" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"おめでとうございます! Gallery 2 のインストールが完了しました。ほら、そんなに難しくなかったで" +"しょう? さあ、何か写真をアップロードしましょう!" + +msgid "Go to my Gallery!" +msgstr "Gallery を訪れる" + +#, fuzzy, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"あなたはいますぐ\n" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." + +msgid "Installer Help" +msgstr "インストーラのヘルプ" + +msgid "Start Over" +msgstr "やり直す" + +msgid "Error installing Gallery Core" +msgstr "Gallery コアのインストールでエラーが発生しました" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "コアもジュールインストール時に何か問題がおきました。次はどうしますか?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"システムチェックのステップに行き、すべてのチェックが'Success'と表示されているようにしてくださ" +"い。ファイルの完全性についての警告が無視されるのは、共通の課題です" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"システムチェックのステップで警告や失敗がなければ、ストレージディレクトリを空にして、データ" +"ベースのテーブルを削除し、インストール作業をやり直してください" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "%sG2 FAQ%sを訪れて、%sKnown issues section of the Readme%sを読んでください。" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"もし問題が解決されない場合は、%s にあるインストールのログをコピーして、(ファイル名はinstall." +"log.zipとして)%sG2 support forum%s の新しいフォーラムトピックに添付してください。もしくは、" +"可能ならば その install.log へのリンクを加えてください。サポートスタッフが、必要ならばそのロ" +"グファイルを分析します" + +msgid "Stack Trace:" +msgstr "スタックトレース:" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery コアのインストールに成功しました。" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Gallery のコアモジュールのインストールに成功しました。現時点ではすべてが動作しますが、インス" +"トールを続行して、Gallery のオプションのモジュールを追加してください。これによってGallery の" +"機能の正しいセットがそろいます" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"次のモジュールは自動的にインストールし、有効にすることができます。少なくとも一つの画像処理" +"ツールキットをインストールする必要があります。そうしないと Gallery は画像のサムネイルを作成で" +"きません。たいていのシステムでは、自動インストールが問題なく動作します。しかし、いくつかの場" +"合によっては失敗するかもしれません。サイト管理のページでいつでも新しいモジュールを有効にした" +"り、無効にしたりできます。ここでの決定は、恒久的ではありません" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"いくつかのモジュールは自動インストールに失敗するかもしれません。でも問題ありません。それはモ" +"ジュールにいくらかの設定が必要なためで、サイト管理のページからそれをすることができます" + +msgid "Name" +msgstr "名前" + +msgid "Version" +msgstr "バージョン" + +msgid "Description" +msgstr "説明" + +msgid "(Incompatible with this Gallery version)" +msgstr "(このバージョンの Gallery と互換性がありません)" + +msgid "(un)check all" +msgstr "全てをチェック(チェックを外す)" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "有効化せずに続けてステップ %d へ»" + +msgid "Activate Selected Modules" +msgstr "選択したモジュールを有効化" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "%s モジュールはインストールされていますが、有効化するには設定が必要です" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"このインストールの終了後に、管理者としてログインし、サイト管理をブラウズしてください。モ" +"ジュール ビューへいって以上のモジュールの設定をしてください。" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "%s モジュールの有効化に成功しました" + +msgid "Activate More Modules" +msgstr "他のモジュールも有効化する" + +#, c-format +msgid "Continue to Step %d»" +msgstr "続けてステップ %d へ»" + +msgid "Debug Output" +msgstr "デバッグ出力" + +msgid "Welcome to the Gallery Installer" +msgstr "Gallery インストーラへようこそ" + +#, c-format +msgid "Install %d%% complete" +msgstr "インストール進行率 %d%%" + +msgid "Redo this step" +msgstr "このステップをもう一度" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: your photos on your website" + +#, c-format +msgid "Missing files (%d)" +msgstr "欠落したファイル (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"注意:あなたはSVNから取得した Gallery を動かしています。最近削除されたファイルがここに表れるか" +"もしれません。それらは無視した方が安全かもしれません" + +#, c-format +msgid "Modified files (%d)" +msgstr "変更されたファイル (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"注意: あなたはSVNから取得した Gallery を動かしています。そのためいくつかの修正されたファイル" +"があることが予想されます。これは無視することもできますが、続ける前に 'svn update' を実行する" +"ようにしたほうが安全です" + +#, c-format +msgid "Old files (%d)" +msgstr "古いファイル (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"これらのファイルはもうGalleryの一部ではありません。それらは何か問題の原因になることはありませ" +"んが、インストール状態をきれいに保つために削除しておくことはよい考えです。" + +msgid "Errors occurred. Please see messages below." +msgstr "エラーが発生しました。以下のメッセージを参照してください。" + +msgid "Please select the installation type" +msgstr "インストールタイプを選択してください。" + +msgid "Standard installation" +msgstr "標準インストール" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"これはデフォルトのインストールタイプです。%2$s のURLからアクセス可能な、新しいGalleryディレク" +"トリ %1$s にインストールしたい場合はこちらを選択してください。" + +msgid "Multisite installation" +msgstr "マルチサイトインストール" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Galleryはひとつのインストールで、複数の独立したサイトをサポートできます。同じウェブサーバだが" +"違うパスやサブドメイン、URLドメインに新しいGalleryをインストールしたい場合は、こちらを選択し" +"てください。" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"マルチサイトはアルバム、画像、ユーザその他一切を共有しません。それらはそれぞれデータベースと" +"ストレージディレクトリを必要とします。マルチサイトインストールに関するさらなる情報と説明は、%" +"s ページを参照してください。" + +msgid "You must enter a directory" +msgstr "ディレクトリを入力しなければなりません" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"あなたが入力したディレクトリは中央コード保管場所(codebase)です。もしこのディレクトリに" +"Gallery をインストールしたい場合は、標準のインストール方式を選択してください。マルチサイトに" +"する場合は、別のディレクトリを選んでくさい" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "入力されたディレクトリは存在しません" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"あなたが入力したディレクトリにアクセスできません。ウェブサーバーがこのディレクトリを読み込め" +"るようにパーミッションを変更してください" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"マルチサイトのファイルを作成できません。下にリストされているファイルが書き込み可能か確認して" +"ください" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "全てのマルチサイトは、この中央コード保管場所(codebase)からインストールされます。" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"新しいマルチサイトのディレクトリを以下に入力してください。パスはこのcodebaseインストールのパ" +"スとは異なるものでなければなりません:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"そのディレクトリはウェブサーバーかPHPの利用者によって書き込みができなければいけません。もしく" +"は以下の書き込み可能なファイルを含めてください" + +msgid "Select Directory" +msgstr "ディレクトリを選択" + +msgid "Multisite directory setup successfully." +msgstr "マルチサイトディレクトリのセットアップに成功しました" + +msgid "Standard installation selected." +msgstr "標準インストールが選択されました。" + +msgid "Install Steps" +msgstr "インストールステップ" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"あなたのGallery が安全か確認します。このインストーラーが編集した config.php ファイルはその他" +"人が書き込めるようになっています。UNIXのファイルパーミッションではインストーラーがその他の人" +"として類別されいるからです。そのため終了する前に、そのファイルを他の人が書き込めないように" +"パーミッションを変更してください。今からあなたの config.php ファイルは %s モードになります。" +"以下のことをするのをおすすめします:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Gallery を安全に使う必要があります。インストーラーが作成したconfig.php を含むディレクトリは、" +"その他人によってファイルを書き込まれたり、削除されたりできます。インストールを完了する前に、" +"そのディレクトリのパーミッションを、その他の人が書き込めないように変更することをおすすめしま" +"す" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"もし本当にインストールを続けたいならば、続けることができます。しかし、安全かどうかを確認する" +"ために、もう少し時間を割くことをおすすめします" + +msgid "We've verified that your config.php is secure." +msgstr "あなたのconfig.php が安全であることを確認しました" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"%1$sGallery セキュリティガイド%3$sを読んでください。簡単な概要を見るには、%2$sショートチェッ" +"クリスト%3$sないのセキュリティガイドを見てください。%1$sGallery セキュリティガイド%3$sを読ん" +"でください。簡単な概要を見るには、%2$sショートチェックリスト%3$sないのセキュリティガイドを見" +"てください。" + +msgid "Check Again" +msgstr "もう一度チェック" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery は画像を格納するためのディレクトリが必要です。インストーラが選択したディレクトリは動" +"作するでしょうが、その場所や現在の名前はセキュリティが万全ではありません。%sdocument root%sの" +"外部のディレクトリにするか、ディレクトリ名の後ろにランダムな文字列を加えてください。(例: %s)" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"完全なセキュリティのためには、%sウェブアクセスできない%sディレクトリを選ぶべきです。それがで" +"きないならば、ランダムな名前を指定してください。" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"ランダムな名前を選ぶか、指定されたディレクトリを使う場合、あなたの選択を再確認してください。" +"ランダムな名前を選ぶか、指定されたディレクトリを使う場合、あなたの選択を再確認してください。" + +msgid "Yes, please omit the security check:" +msgstr "はい、セキュリティチェックを省略します:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"これはマルチサイトインストールです。それぞれのサイトは、独自の記憶領域が必要なことを確認して" +"ください" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"最近のブラウザを使っている場合、パスのオートコンプリートが使えるかもしれません。正しいg2data" +"ディレクトリのパスを見つけるのに問題がある場合は、以下のテキストボックスにパスを入力してみて" +"どのような補完がされるか見てください。" + +msgid "The directory you entered is read only" +msgstr "入力したディレクトリは読み込み専用です" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "記憶領域内のディレクトリ構造を作成するときにエラーが発生しました" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "あなたのストレージディレクトリは、%sウェブアクセスが可能%sです" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "ストレージディレクトリが%sウェブアクセス可能%sでないことを確認できませんでした。" + +msgid "Directory path:" +msgstr "ディレクトリパス:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"ウェブサーバはこのディレクトリに書き込める必要があります。動作させるためには、以下の例を見て" +"ください。ウェブサーバはこのディレクトリに書き込める必要があります。動作させるためには、以下" +"の例を見てください。" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "注意: これはあくまで例です。 あなたのシステムではうまく動かない場合もあります" + +msgid "Unix (with ftp access)" +msgstr "Unix (ftp 経由)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"FTPサーバーやクライアントは様々なので、これらの指示がうまく行かない場合もあります。問題があれ" +"ば、FTPクライアントのマニュアルを参照するか、システム管理者に問い合わせてください。" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"いくつかのウェブホスティング環境では、シェルやFTPから見えるパスとPHPから見えるパスが違う時が" +"あります。あなたのデータディレクトリの本当のパスを見るためには、次のコードを含むdir.phpというファイルを作成して、データディレクトリに置いてください" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"それから、dir.php へのURLを記述してそれをウェブブラウザーで開いてください(eg, %s)。これで、こ" +"こに入るための正しいパスを知ることできます。" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"注意: これにはあなたのデータディレクトリをウェブからアクセスできるようにする必要があり" +"ます。そうすると画像のファイアウォールを回避できてしまうため、おすすめしません。いったんこの" +"ようようにパスを書き出した上で、データディレクトリをウェブからアクセスできないところに移し、" +"パスをそれにしたがって更新することをおすすめします。" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "注意: 作業が終わったら必ず dir.php を削除してください" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Gallery ストレージディレクトリをどのようにセキュアにするかの情報は、%sセキュリティガイド%sを" +"参照してください。" + +msgid "Storage directory set successfully." +msgstr "ストレージディレクトリの設定に成功しました" + +msgid "Success" +msgstr "成功" + +msgid "Warning" +msgstr "警告" + +msgid "Failed" +msgstr "失敗" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Apacheを使っているなら、Gallery メインディレクトリに .haccess という名前のファイルを以下の内" +"容で作成してください:" + +msgid "Version Check" +msgstr "バージョンチェック" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"これは新規インストールではありません。インストール済みのバージョンは新しいバージョンと一致し" +"ません。" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "インストールされているバージョンは新しいバージョンにアップグレードできません。" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"インストールされているバージョンは新しいバージョンより古いです。インストーラではなく、アップ" +"グレーダーを実行すべきです。" + +msgid "Currently installed" +msgstr "現在インストールされているもの" + +msgid "New version" +msgstr "新しいバージョン" + +msgid "Go to the Upgrader!" +msgstr "アップグレーダーへ移動" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"いますぐアップグレードをすべきです。%3$s ディレクトリのURL %1$s/upgrade/index.php%2$s を入力" +"してください。" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"サーバに Gallery 2 をインストールするには、%d ステップ必要です。もしGalleryを動作させるために" +"追加のステップが必要な場合は、あなたがそれらのステップを完了することをこのインストーラがサ" +"ポートします。一度ステップを完了しても、いつでも戻って変更を加えることができます。進める前に " +"%sインストーラヘルプファイル%s を読んでください。(訳注: ヘルプは英語)" + +msgid "Select Language:" +msgstr "言語を選択:" + +msgid "Go" +msgstr "Go" + +msgid "Begin Installation»" +msgstr "インストールを始める»" diff --git a/Source/gallery2/install/po/ko.po b/Source/gallery2/install/po/ko.po new file mode 100644 index 0000000..f049515 --- /dev/null +++ b/Source/gallery2/install/po/ko.po @@ -0,0 +1,1295 @@ +# $Id: ko.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-03-31 16:49+0900\n" +"PO-Revision-Date: 2006-05-13 17:11+0900\n" +"Last-Translator: juice \n" +"Language-Team: KOREAN \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Korean\n" +"X-Poedit-Country: KOREA, REPUBLIC OF\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Unknown" +msgstr "알 수 없음." + +msgid "Admin User Setup" +msgstr "관리자 설정" + +msgid "admin" +msgstr "" + +msgid "Gallery Administrator" +msgstr "Gallery 관리자" + +msgid "Authenticate" +msgstr "사용자 확인" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "오류: %s에 login.txt 파일을 만들 수 없습니다. " + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"오류:login.txt를 읽을 수 없습니다. Gallery에서 이 파일을 읽을 수 있도록 권한을 수정해" +"주십시오." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"오류: login.txt의 내용과 인증 값이 일치하지 않습니다. 인증 값을 다시 받아 시도하십시" +"오." + +msgid "Create Config File" +msgstr "설정 파일을 생성합니다." + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"%s 디렉터리에 있는 config.php에 쓰기 권한이 없습니다. 사용 권한을 바꿔주십시요. 만일 " +"유닉스라면 chmod 666 config.php와 같은 명령어를 입력하시면 됩니다." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "%s에 config.php 파일이 없습니다." + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"config.php가 있기는 하지만 쓰기를 할 수 없습니다. 만일 서버가 Windows라면 공유를 중지하고 수" +"동으로 사용권한을 바꾸어 주십시요." + +msgid "Database Setup" +msgstr "데이터베이스 설정" + +msgid "You must have the MySQL PHP module installed" +msgstr "MYSQL PHP 모듈이 반드시 설치가 되어 있어야 합니다." + +#, fuzzy +msgid "You must have the MySQL Improved PHP module installed" +msgstr "MYSQL PHP 모듈이 반드시 설치가 되어 있어야 합니다." + +msgid "You must have the ibm_db2 PHP module installed" +msgstr " ibm_db2 PHP 모듈이 설치가 되어 있어야 합니다." + +msgid "You must have the PostgreSQL PHP module installed" +msgstr " PostgreSQL PHP 모듈이 설치가 되어 있어야 합니다." + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Oracle OCI8 PHP 모듈이 설치가 되어 있어야 합니다." + +#, fuzzy +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Oracle OCI8 PHP 모듈이 설치가 되어 있어야 합니다." + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "당신은 column 접두사를 입력해야 합니다. (%s를 추천합니다.)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "column의 접두사는 글자, 숫자와 밑줄만을 허용합니다." + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "테이블에 접두사가 반드시 있어야 합니다. (%s를 권합니다.)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "테이블의 접두사는 글자, 숫자와 밑줄만을 허용합니다." + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "%s 유형의 데이터베이스에 접근해 생성할 수 없습니다." + +msgid "Unable to connect to database with the information provided." +msgstr "잘못된 정보에 의해 데이터베이스에 접근 할 수 없습니다." + +msgid "The database you specified does not exist. Please create it." +msgstr "입력한 데이터베이스가 없습니다. 데이터베이스를 만들어 주십시오." + +msgid "The database privileges test did not complete successfully." +msgstr "데이터 베이스 privileges를 성공적으로 완료하지 못했습니다." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"데이터베이스에 Gallery 테이블이 이미 있긴 하지만 G2 저장 공간에 version.dat가 없습니다. G2가 " +"잘못된 듯합니다. 만일 이일 무마하기 위해선 version.dat를 만들거나 데이터베이스와 Gallery의 저" +"장 공간을 모두 지우거나 둘 중 하나를 선택해야 합니다." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 자료 저장 공간에 이전에 설치한 versions.dat가 이미 있습니다. 하지만 데이터베이스에 테이블" +"은 없습니다. 기존의 자료를 지우고 설치하기 버튼을 눌러 다음 단계로 넘어가시기 바립니다." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"데이터베이스에 이미 같은 이름의 테이블이 있으며 Gallery 저장 공간에 version.dta파일이 이미 있" +"습니다. 하지만 설치된 Gallery의 데이터베이스의 테이블과 Gallery의 저장 공간의 자료와 버전이 " +"일치하지 않습니다. 설치를 위해 기존을 자료를 삭제해 다음 단계로 진행하셔야 합니다." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"데이터베이스에 같은 이름의 Gallery의 테이블과 저장 공간이 있습니다. 기존의 테이블과 자료를 다" +"시 사용하거나, 설치를 위해 기존의 자료를 모두 삭제해야 합니다." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "Gallery 저장 공간을 지울 수 없습니다. Gallery 저장 공간을 수동으로 지워주십시오." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "Gallery 데이터베이스 테이블을 삭제할 수 없습니다. 수동으로 삭제해 주십시오." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"G2 API를 불러올 수 없습니다. Gallery 데이터베이스 테이블과 저장 공간을 수동으로 지워 주시기 " +"바랍니다." + +#, fuzzy +msgid "MySQL (v3.23.34a and newer)" +msgstr "IBM DB2 (v8.2 이상)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (모든 버전 포함)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x 이상" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i 이상)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x 이상)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x 이상" + +msgid "Unknown DB type or no known tables information." +msgstr "DB 유형 또는 테이블 정보를 알 수 없습니다." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "\"%s\"와 유사한 사용하지 않는 테이블을 찾을 수 없습니다." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "schema 파일을 열 수 없습니다. : \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "SQL 문법 오류" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "설치를 마칩니다." + +msgid "Install Gallery Core" +msgstr "Gallery Core를 설치합니다." + +msgid "Installing the core module" +msgstr "Core모듈을 설치중입니다." + +msgid "Unable to initialize our Gallery data" +msgstr "Gallery의 자료를 초기화 할 수 없습니다." + +msgid "Unable to communicate with the database" +msgstr "데이터베이스와 통신이 불가능합니다." + +msgid "Unable to load the core module" +msgstr "Core모듈을 불러올 수 없습니다." + +msgid "Unable to install the core module" +msgstr "Core모듈을 설치할 수 없습니다." + +msgid "Unable to activate the core module" +msgstr "Core 모듈 활성화하지 못했습니다." + +msgid "Unable to commit database transaction" +msgstr "데이터베이스 처리를 할 수 없습니다." + +msgid "Core module is only partially installed." +msgstr "Core 모듈설치가 불완전합니다." + +#, fuzzy +msgid "Install Plugins" +msgstr "설치 단계" + +msgid "Unable to initialize our Gallery session" +msgstr "Gallery 세션을 초기화 할 수 없습니다." + +#, c-format +msgid "Unable to load the %s module" +msgstr "%s 모듈을 불러올수 없습니다." + +msgid "Installing modules" +msgstr "모듈을 설치중 입니다" + +#, c-format +msgid "Unable to install the %s module" +msgstr "%s 모듈을 설치하지 못했습니다." + +#, c-format +msgid "Unable to activate the %s module" +msgstr "%s 모듈을 활성화하지 못했습니다." + +msgid "Unable to get the module list" +msgstr "모듈 목록을 받아 올수 없습니다." + +msgid "Other" +msgstr "이외 나머지" + +msgid "Installation Type" +msgstr "설치 유형" + +msgid "Check Security" +msgstr "보안 검사" + +msgid "Storage Setup" +msgstr "저장 공간 설정" + +msgid "System Checks" +msgstr "시스템 검사" + +msgid "Performing system checks" +msgstr "시스템 검사중...." + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"오류: Gallery2를 설치하기 위해선 PHP 4.1.0이상 또는 5.0.4이상이 설치되어 있어야합니다. 현재 " +"PHP %s가 설치되어있습니다. 웹서버 관리자에게 %sPHP 사이트%s를 방문해 Gallery2에서 사용가능한 " +"PHP를 설치해줄 것을 요구하십시오." + +msgid "PHP Version" +msgstr "" + +#, fuzzy +msgid "FILE directive supported" +msgstr "FILE directive 지원" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"오류: PHP __FILE__ directive가 정확하지 않습니다. 웹 서버 관리자 또는 Gallery 포럼에 문의해 " +"주십시오." + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "Safe mode 불가능" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"오류: PHP가 Safe Mode가 가능합니다. Gallery를 실행하기 전에 safe mod를 꺼두셔야 합니다." + +msgid "Safe Mode" +msgstr "" + +msgid "Regular expressions" +msgstr "정규 표현식" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"오류: PHP는 %sPerl Compatible Regular Expressions%s을 지원하지 않습니다. Gallery를 실행하기 " +"전에 이 함수들을 사용할 수 있어야합니다." + +msgid "exec() allowed" +msgstr "exec() 허용 확인" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"경고: php.ini의 매개 변수 disabled_functions에 의해 exec()함수를 사용할 수 없습니다. " +"외부의 바이너리(예 ImageMagick, NetPBM or Ffmpeg)를 사용하는 모듈을 사용할 수 없게 됩니다. " +"This can only be set server-wide, so you will need to change it in the global php.ini." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() 허용 확인" + +#, fuzzy, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"경고: php.ini의 매개 변수 disabled_functions에 의해 set_time() 함수를 사용할 수 없습니" +"다. Gallery는 이 설정을 따르기는 하겠지만 확실한 운영여부는 보장하지 못합니다. Any operation " +"that takes longer than %d seconds will fail (and in some cases just return a blank page) " +"possibly leading to data corruption." + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "" + +msgid "no limit" +msgstr "제한 없음" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"경고: 현재 PHP는 %sb (php.ini의 매개 변수 memory_limit 참고)로 제한되어 있습니다. " +"Gallery를 제대로 운영하기 위해선 최소한 %sMB가 되어야 합니다." + +msgid "File uploads allowed" +msgstr "파일 올리기 허용 여부 확인" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"경고: PHP는 현재 파일 올리기가 허용되지 않습니다. (php.ini의 매개 변수 file_uploads참" +"고) 웹 브라우저를 통해 파일을 올리기 위해선 이 옵션을 사용이 가능하도록 해주어야 합니다. " + +msgid "Maximum upload size" +msgstr "파일 올리기 최대 크기 확인" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"경고: PHP의 파일 올리기 최대 크기가 %sb로 제한(php.ini의 매개 변수 upload_max_filesize 참고) 되어 있습니다. 좀더 큰 파일을 올리기 위해선 최대 크기를 바꾸어 주어야 합니다." + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"경고: PHP는 최대 POST 데이터 크기가 %sb (php.ini의 매개 변수 post_max_size참고) 로 제" +"한되어 있습니다. 크기 가 좀 더 큰 파일을 올리기 위해선 이 설정 값을 바꿔야 합니다." + +msgid "Translation support" +msgstr "다국어 지원 확인" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"웹 서버가 지역화를 지원하지 않습니다. 추가 언어들을 사용하기 위해선 시스템 관리자에게 %" +"sgettext%s를 사용할 수 있도록 시스템 관리자에게 요구하십시오." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "Zend 최적화 모드" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "putenv() 허용 여부 확인" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"경고: php.ini의 매개 변수 disabled_functions에 의해 set_time() 함수를 사용할 수 없습니" +"다. Gallery는 이 설정을 따르기는 하겠지만 확실한 운영여부는 보장하지 못합니다. Any operation " +"that takes longer than %d seconds will fail (and in some cases just return a blank page) " +"possibly leading to data corruption." + +msgid "Output buffering disabled" +msgstr "버퍼링 출력을 할 수 없습니다." + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "Gallery 파일 확인" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "환영합니다." + +msgid "Please correct the following errors" +msgstr "다음의 오류를 수정하십시오." + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"관리자는 Gallery의 모든 곳에 접근 및 수정/보기 등이 가능합니다. 관리자 계정의 사용자 이름과 " +"열쇠 글을 설정하십시오. 나중에 라도 관리자를 추가할 수 있습니다." + +msgid "Admin username" +msgstr "관리자 이름" + +msgid "Please enter a valid user name" +msgstr "정확한 사용자 이름을 입력하세요." + +msgid "Please enter a password" +msgstr "열쇠 글을 입력하세요" + +msgid "Password" +msgstr "열쇠 글" + +msgid "Setup password" +msgstr "열쇠 글 설정" + +msgid "(type again)" +msgstr "(다시 입력)" + +msgid "Admin email address" +msgstr "관리자 전자 편지 주소" + +msgid "Please enter a valid email address" +msgstr "정확한 전자 편지 주소를 입력하세요" + +msgid "Admin full name (optional)" +msgstr "관리자 전체이름(추가 정보)" + +msgid "Missing password! Please enter the same password twice" +msgstr "열쇠 글 오류! 열쇠 글은 반드시 두 번 입력하셔야 합니다." + +msgid "The passwords you entered do not match! Please try again." +msgstr "입력한 열쇠 글이 일치하지 않습니다. 다시 입력해 주십시오." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "만들기" + +msgid "Save" +msgstr "저장" + +msgid "Admin user info entered successfully." +msgstr "관리자 정보 입력 완료." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"다음 과정으로 넘어가기 전에 당신이 올바른 사용자인지 확인하는 작업이 필요합니다. %s " +"디렉터리에 아래의 값을 가진 login.txt가 있는지 검사를 할 것입니다. ( login." +"txt는 main.php와 같은 디렉터리에 있어야 합니다.)" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"귀찮아니즘에 빠진 당신을 위해 %s여기에 login.txt파일을 준비%s했습니다. 이 파일을 내려 받거나 " +"%s 디렉터리에 직접 위의 인증 값을 가진 login.txt를 만들 수도 있습니다." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "파일을 올리기가 끝났으면, 다음으로 넘어가기 위해 아래의 버튼을 누르십시오." + +msgid "Authenticate Me" +msgstr "사용자를 확인을 합니다." + +msgid "Authentication successful!" +msgstr "사용자 확인 성공" + +msgid "Erase data for a clean install" +msgstr "설치를 위해 기존의 자료를 삭제합니다." + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "정말로 기존의 자료와 데이터베이스의 내용을 모두 삭제하시겠습니까?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"데이터베이스와 저장 공간의 데이터를 지우는 중 오류가 발생했습니다. 여기서 오류를 확인하십시" +"오." + +msgid "Cancel" +msgstr "취소" + +msgid "Erase all data" +msgstr "모든 자료를 삭제합니다." + +msgid "Please fix this error and try again." +msgstr "오류가 발생했습니다. 다시 시도하여 주십시오." + +msgid "Try Again" +msgstr "다시 시도" + +msgid "Create a config file" +msgstr "설정 파일을 생성합니다." + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"%s 디렉터리에 쓰기가 가능한 config.php가 필요합니다. 이 파일은 Gallery 운영에 필요한 " +"중요한 정보를 담고 있습니다. 나중에 필요에 따라 직접 수정도 가능합니다." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "유닉스 (쉘에서의 방법)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "설정 파일을 생성합니다." + +msgid "Config file created successfully." +msgstr "설정 파일을 만들었습니다." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"config.php에 필요한 정보를 입력했습니다. 당신이 원하면 나중에라도 이 파일을 수정할 수 " +"있습니다. - 단, 이 파일 수정에 실수를 한다면 Gallery는 작동을 안할 것입니다." + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"데이터베이스에 접근을 위한 정보를 아래에 입력하십시오. 이 설치기는 데이터베이스를 자동으로 만" +"들 수 없으므로, 당신이 직업 데이터베이스를 만들어 그 정보를 입력해야 합니다. 데티어베이스에 " +"이미 테이블이 있다면, 테이블과 column 이름앞에 접두어를 붙여 Gallery의 정보를 보존할 수 있습" +"니다." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"멀티 사이트가 설치가 되었습니다. 각 멀티 사이트마다 데이터베이스와 저장 공간이 따로 필요하다" +"는 것을 기억하십시요. 각각 멀티 사이트 마다 데이터베이스를 따로 할당하거나 테이블 접두사를 따" +"로 주시면 됩니다." + +msgid "Database type:" +msgstr "자료 창고 유형:" + +msgid "DB Hostname:" +msgstr "DB 주소:" + +msgid "DB Username:" +msgstr "DB 사용자 이름" + +msgid "DB Password:" +msgstr "DB 열쇠 글:" + +msgid "DB Name:" +msgstr "DB 이름:" + +msgid "Table Prefix:" +msgstr "테이블 이름 앞에:" + +msgid "Column Prefix:" +msgstr "Column 이름 앞에" + +msgid "We received the following database related errors:" +msgstr "아래와 같은 오류가 발생하였습니다. :" + +msgid "Erase Data For A Clean Install" +msgstr "설치를 위해 기존의 자료를 삭제합니다." + +msgid "Reuse Existing Tables" +msgstr "기존의 테이블을 재활용합니다." + +msgid "Database set up successfully." +msgstr "자료 창고 설정 완료." + +msgid "Finished!" +msgstr "마침" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"축하합니다! Gallery2의 설치를 완료하였습니다. 이젠 당신은 사진을 올려두고 감상을 하실 수 있습" +"니다." + +msgid "Go to my Gallery!" +msgstr "Gallery로 이동!" + +#, fuzzy, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"이제 새 Gallery로 이동 할 수 있습니다. Enter the URL in your browser for %smain.php%s in " +"your %s directory." + +msgid "Installer Help" +msgstr "설치 도움말" + +msgid "Start Over" +msgstr "처음부터 다시" + +msgid "Error installing Gallery Core" +msgstr "Gallery Core 설치 중 오류가 발생했습니다." + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "%sG2 FAQ%s의 %sKnown issues section of the Readme%s를 읽어주십시오." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery Core 설치 성공" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Gallery의 Core 설치를 완료하였습니다. Gallery의 추가 기능을 하는 나머지 모듈들을 지금과 같" +"이 설치를 진행할 것입니다." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"다음과 같이 자동으로 설치된 모듈들을 활성화 하여 사용할 수 있습니다. 최소한의 그래픽 툴킷을 " +"설치해야 합니다. 만일 그렇지 않으면 Gallery는 썸네일 이미지를 만들시 못할 것입니다. 대부분의 " +"경우 모듈들은 이상 없이 설치가 될 것입니다. 하지만, 일부의 경우 설치에 실패할 수도 있습니다. " +"나중에 새로운 모듈 또는 비활성인 어떤 모듈이라도 관리자 페이지에서 설치하거나 사용할 수 있습" +"니다. 여기에서 사용할 모듈을 선택하십시오." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"일부 모듈은 설치에 실패할지도 모릅니다. 일부는 관리자 페이지에서 환경 설정을 요하는 것들입니" +"다." + +msgid "Name" +msgstr "이름" + +msgid "Version" +msgstr "" + +msgid "Description" +msgstr "설명" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "모두 체크 / 체크 해제" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "활성화하지 않고 %d 단계로 이동 »" + +msgid "Activate Selected Modules" +msgstr "선택된 모듈을 활성화합니다." + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "%s 모듈은 설치는 되었지만, 사용하기 위해선 환경 설정이 필요합니다." + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"이것들은 나중에 관리자 페이지에서 설치를 완료하여 주십시오. Modules에서 모듈 목록을 보" +"실 수 있습니다. 또한, 설정을 할 수도 있습니다." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "%s모듈 활성화 성공" + +msgid "Activate More Modules" +msgstr "나머지 모듈 활성화" + +#, c-format +msgid "Continue to Step %d»" +msgstr "%d 단계로 이동 »" + +msgid "Debug Output" +msgstr "디버그 출력" + +msgid "Welcome to the Gallery Installer" +msgstr "Gallery 설치기입니다." + +#, c-format +msgid "Install %d%% complete" +msgstr "%d%% 설치 완료" + +msgid "Redo this step" +msgstr "이전 단계로 되돌림" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "파일이 없습니다. (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"주의: CVS의 Gallery가 실행중입니다. 최근 삭제된 파일이 여기에 나올것입니다. 안전에 문제가 있" +"을지도 모릅니다." + +#, c-format +msgid "Modified files (%d)" +msgstr "수정된 파일이 있습니다. (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "예전의 파일이 있습니다. (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "오류가 발생했습니다. 아래에서 오류내용을 확인하세요." + +msgid "Please select the installation type" +msgstr "설치 유형을 선택하십시오." + +msgid "Standard installation" +msgstr "기본 설치" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"기본 설치 방법입니다. %s에 Gallery를 새로 설치하는 것이라면 이것을 선택하십시오. 웹에서 접근 " +"가능한 주소는 %s 입니다." + +msgid "Multisite installation" +msgstr "멀티 사이트 설치" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery는 독립적이며 복합적인 사이트도 지원하고 있습니다. 서브 도메인 또는 다른 도메인, 다른 " +"경로에 설치하고자 한다면 이 설치 유형을 선택하십시오." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"멀티 사이트는 앨범, 사진, 사용자 등 그 어떤 것도 공유하지 않습니다. 개별적인 데이터베이스와 " +"저장 공간을 따로 필요로 합니다. 더 많은 멀티 사이트 설치를 위한 설명과 정보를 원한다면 %s 페" +"이지를 방문하십시오." + +msgid "You must enter a directory" +msgstr "디렉터리를 입력하십시요." + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"입력한 디렉터리는 codebase 디렉터리가 아닙니다. 만일 codebase에 Gallery를 설치하는 것을 원하" +"지 않는다면, 기본 설치를 선택하십시오. 멀티 사이트로 설치하고자 한다면 다른 디렉터리를 선택하" +"십시오." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "입력된 디렉터리가 없습니다." + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"입력한 디렉터리로는 접근을 할 수 없습니다. 웹 서버에서 이 디렉터리를 읽을 수 있도록 사용 권한" +"을 바꾸어 주십시오." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "멀티 사이트 파일을 만들 수 없습니다. 아래의 파일들이 쓰기 권한 있어야 합니다." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "모든 멀티 사이트는 중앙의 코드 저장소로 부터 설치가 진행이 됩니다. (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"아래의 글 상자에 멀티 사이트의 디렉터리를 입력하십시오. 경로는 반드시 Codebase와 다른 곳에 있" +"어야 합니다. :" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "디렉터리는 웹서버/PHP 사용자 또는 아래의 파일들이 쓰기 권한이 있어야 합니다" + +msgid "Select Directory" +msgstr "디렉터리 선택" + +msgid "Multisite directory setup successfully." +msgstr "멀티사이트 디렉터리 단계 성공." + +msgid "Standard installation selected." +msgstr "기본 설치가 선택되었습니다." + +msgid "Install Steps" +msgstr "설치 단계" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Gallery의 보안을 위해 config.php의 사용 권한을 수정해야 합니다. Gallery 설치기는 누군가가 접" +"근했을 때 config.php의 쓰기 권한을 허용하기 때문입니다. 설치를 마치기 전에 다른 사람이 함부" +"로 이 파일을 수정하지 못하도록 접근 허용 권한을 수정해야 만합니다. config.php파일을 %s와 같" +"이 수정해야 합니다. 아래와 같이 수정하십시오." + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"우리는 당신의 Gallery가 안전하기를 바랍니다. 다른 사람이 config.php를 함부로 다루지 못하도" +"록 사용 권한을 바꾸어 줘야합니다. 만일 그렇지 않으면 다른 사람이 이 파일을 바꾸거나 지울 수" +"도 있습니다. 설치를 마치기 선에 아래와 같이 사용 권한을 바꾸어 주어야 합니다." + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"사용 권한 수정 없이 다음 단계로 넘어 갈수도 있습니다. 하지만 우리는 당신의 보안을 위해 권한 " +"수정을 할 것을 강력히 추천합니다." + +msgid "We've verified that your config.php is secure." +msgstr "당산의 config.php의 보안 상태를 검사하였습니다." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"%1$sGallery Security Guide%3$s을 읽어 보세요. Gallery Security Guide문서의 %2$sshort check " +"list%3$s를 참고하십시오." + +msgid "Check Again" +msgstr "다시 검사" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, fuzzy, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "당신이 선택한 디렉터리는 보안 설정이 높아 웹에서 접근이 블가능합니다." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"멀티 사이트가 설치가 되었습니다. 이 멀티 사이트는 개별적으로 각각의 저장 공간을 따로 가지게 " +"되는 것을 기억하십시요." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"만일 최신의 브라우저를 사용한다면, 경로가 자동으로 입력될 것입니다. 또한, 당신의 g2data 디렉" +"터리의 경로에 문제가 있다면, 아래의 글 상자에 경로를 실험을 해보고 그 결과를 확인할 수 있습니" +"다." + +msgid "The directory you entered is read only" +msgstr "입력된 디렉터리는 읽기만 가능합니다." + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "저장 공간안에 디릭터리 구조를 만드는데 오류가 발생했습니다." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "저장 공간 설정 완료." + +#, fuzzy, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "당신이 선택한 디렉터리는 보안 설정이 높아 웹에서 접근이 블가능합니다." + +msgid "Directory path:" +msgstr "경로:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "웹 서버는 이 디렉터리에 쓰기 권한이 있어야 합니다. 다음의 예제를 따라 하십시오." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"주의: 이것은 단지 예제 일뿐 입니다! 당신의 시스템에서 제대로 작동하지 않을 수도 있습니다." + +msgid "Unix (with ftp access)" +msgstr "유닉스 (FTP에서의 방법)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"FTP 서버 또는 클라이언트는 당신의 작업에 대한 적절한 지시등을 알려주지 않음을 알아 두십시오. " +"당신이 안고 있는 문제에 대해 FTP 클라이언트 메뉴얼을 참고하거나 시스템 관리자에게 문의해 보시" +"기 바랍니다." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"일부 웹 호스팅 환경에서는, 쉘 또는 FTP를 통해 보이는 경로와 PHP를 통해 보는 경로가 다를 수도 " +"있습니다. 아래의 내용을 담고 있는 PHP 스크립트인 dir.php를 만들어 정확한 경로를 확인" +"해 볼 수 있습니다." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"dir.php의 URL을 정확히 웹 브라우저에 정확히 입력하십시오(예제, %s). 이 파일은 정확한 경로를 " +"알려줄 것입니다. " + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "주의: : 설치 완료 후 dir.php를 삭제하는 것을 잊지 마십시요!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"당신의 Gallery 저장 공간의 보안에 대한 정보를 위해 %sSecurity Guide (보안 안내서)%s를 참고 하" +"세요." + +msgid "Storage directory set successfully." +msgstr "저장 공간 설정 완료." + +msgid "Success" +msgstr "성공" + +msgid "Warning" +msgstr "경고" + +msgid "Failed" +msgstr "실패" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"만일 아파치를 사용 중이라면, Gallery 디렉터리에 .htaccess파일을 만들어 다음의 내용을 입력해야" +"합니다." + +msgid "Version Check" +msgstr "버전 검사" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "현지 설치돼어 있는 버전은 업그레이드를 할 수 없습니다." + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "현재 버전은 설치를 할 수 없습니다. 업그레이드를 실행합니다." + +msgid "Currently installed" +msgstr "현재 설치되어 있는 것" + +msgid "New version" +msgstr "" + +msgid "Go to the Upgrader!" +msgstr "업그레이드를 위해 이동합니다." + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"업그레이드를 해야 합니다. 웹 브라우저에 %s/upgrade/index.php%s를 입력하십시오. (설치 디렉터" +"리 %s뒤에 입력하시면 됩니다.)" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Gallery2를 설치하는데 %d단계로 이루어져 있습니다. 설치 중 각 단계별로 추가 정보가 필요하다면 " +"이에 대한 부연 설명이 되어 있습니다. 이미 완료가 된 단계라도 언제든 뒤로 돌아가 바꿀 수 있습" +"니다. 설치하기 전에 %s설치 도움말%s을 읽어보세요." + +msgid "Select Language:" +msgstr "언어 선택:" + +msgid "Go" +msgstr "이동." + +msgid "Begin Installation»" +msgstr "Gallery 설치를 시작합니다. »" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Gallery Core 설치 성공" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (검수하지 않았음)" + +#~ msgid "Install More Modules" +#~ msgstr "나머지 모듈설치" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "이 작업을 하기 위해선 당신은 %sconfig.php을 만들어야 합니다. 이 파일은 쓰" +#~ "기가 가능해야 합니다. 만일 유닉스라면 chmod 666 config.php와 같이 권한수정이 가능합" +#~ "니다. 만일 Windows라면 어떤 특별한 작업이 필요 없습니다. 이 파일을 만든 후 적당히 권한 수" +#~ "정을 하시면 됩니다. 만일 문제가 있다면 우리에게 알려주십시오." + +#~ msgid "Install Other Modules" +#~ msgstr "나머지 모듈 설치" + +#~ msgid "" +#~ "Gallery needs a directory to store your images. The directory we chose for you will work, " +#~ "but is web accessible." +#~ msgstr "" +#~ "Gallery는 사진을 저장할 디렉터리가 있어야 합니다. 웹에서 접근 가능한 디렉터리를 선택하셔" +#~ "야 하십시오." diff --git a/Source/gallery2/install/po/lt.po b/Source/gallery2/install/po/lt.po new file mode 100644 index 0000000..6bb0bd1 --- /dev/null +++ b/Source/gallery2/install/po/lt.po @@ -0,0 +1,1346 @@ +# $Id: lt.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Darius Zitkevicius , 2007. +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-03-12 23:42+0200\n" +"PO-Revision-Date: 2007-03-08 11:17+0200\n" +"Last-Translator: Darius Zitkevicius \n" +"Language-Team: Lithuanian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%" +"100>=20) ? 1 : 2);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Unknown" +msgstr "Nežinomas" + +msgid "Admin User Setup" +msgstr "Administratoriaus paskyros nustatyas" + +msgid "admin" +msgstr "administratorius" + +msgid "Gallery Administrator" +msgstr "Galerijos administratorius" + +msgid "Authenticate" +msgstr "Autorizuokitės" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "Klaida: nerastas failas login.txt. Įkelkite jį į %s/ aplanką." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Klaida: failas login.txt yra neperskaitomas. Suteikite Galerijai teisę " +"skaityti šį failą." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Klaida: failo login.txt turinys nesutampa su nurodytu raktu. Atsisiųskite " +"naują autorizacijos eilutę ir bandykite dar kartą." + +msgid "Create Config File" +msgstr "Sukurti konfigūracijos failą" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Neįmanoma įrašyti konfigūracinio failo config.php aplanke %s. Prašau jo pakeisti " +"prieigos teises. Jei jūs naudojate Unix, tuomet norėdami tai ištaisyti įvykdykite komandą " +"chmod 666 config.php." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Failas config.php aplanke %s neegzistuoja" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Failas config.php egzistuoja, tačiau neįmanoma į jį rašyti. Jei jūs naudojate Windows " +"serverį, išjunkite failo config.php bendrą naudojimą ir nustatykite jo prieigos teises " +"rankiniu būdu." + +msgid "Database Setup" +msgstr "Duombazės nustatymai" + +msgid "You must have the MySQL PHP module installed" +msgstr "Reikia turėti įdiegta MySQL PHP modulį" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Reikia turėti įdiegta pagerintą MySQL PHP modulį" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Reikia turėti įdiegta ibm_db2 PHP modulį" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Reikia turėti įdiegta PHP modulį PostgreSQL" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Reikia turėti įdiegta PHP modulį Oracle OCI8" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Reikia turėti įdiegta PHP modulį Object Model(COM)" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Reikia nurodyti stulpelio prefiksą (rekomenduojamas %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Stulpelio prefiksui naudojamos tik angliškos abėcėlės raidės, skaičiai ir pabraukimai" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Reikia nurodyti lentelės prefiksą (rekomenduojamas %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Lentelės prefiksui naudojamos tik angliškos abėcėlės raidės, skaičiai ir pabraukimai" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Nepavyko sukurti duombazės prisijungimo, kurio tipas %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Naudojant pateiktą informaciją, prie duombazės prisijungti nepavyko." + +msgid "The database you specified does not exist. Please create it." +msgstr "Nurodyta duombazė neegzistuoja. Reikia ją sukurti." + +msgid "The database privileges test did not complete successfully." +msgstr "Duombazės privilegijų testas baigėsi nesėkmingai." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Šioje duombazėje jau egzistuoja Galerijos lentelės! Tačiau G2 duomenų aplanke nėra failo " +"'versions.dat', todėl laikoma kad G2 yra sugadintoje būsenoje. Jei manote, kad jūsų G2 dar " +"veikia, sukurkite failą 'versions.dat' su tinkamo formato turiniu, arba diekite galeriją iš " +"naujo, tuomet visi duomenys duombazėje ir duomenų aplanke bus ištrinti." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 duomenų aplanke yra seno įdiegimo 'versions.dat' failas. Tačiau duombazėje nėra Galerijos " +"lentelių. Kad ištrinti visus duomenis iš Galerijos duomenų aplanko, pasirinkite diegimą iš " +"naujo ir ženkite į sekantį žingsnį." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Duombazėje yra Galerijos lentelės, ir duomenų aplanke yra 'versions.dat' failas. Tačiau " +"duombazės lentelėse ir duomenų aplanke nurodytos skirtingos Galerijos versijos. Kad ištrinti " +"visus duomenis iš Galerijos duomenų aplanko ir duombazės, pasirinkite diegimą iš naujo ir " +"ženkite į sekantį žingsnį." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Galerijos lentelės duombazėje jau yra ir duomenų aplankas atrodo nepažeistas. Pasirinkite " +"panaudoti senus duomenis duombazės ir domenų aplanko, arba pasirinkite diegimą iš naujo, " +"tuomet visi duombazės ir aplanko duomenys bus ištrinti." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Nepavyko įvykdyti reikiamos programos (API), kuri ištrintu duomenų aplanką. Prašau išvalyti " +"Galerijos duomenų aplanką rankiniu būdu." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Nepavyko įvykdyti reikiamos programos (API), kuri ištrintu duombazės lenteles. Prašau " +"išvalyti Galerijos duombazę rankiniu būdu." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Nepavyko įkelti G2 API. Prašau ištrinti Galerijos duombazės lenteles ir duomenų aplanką " +"rankiniu būdu." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a ar naujesnė)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versijos iki v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x ir naujesnė" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i ir naujesnė)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x ir naujesnė)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 ar naujesnė" + +msgid "Unknown DB type or no known tables information." +msgstr "Nežinomas duombazės tipas arba nėra žinomos lentelių informacijos." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Nerastas nepanaudotas lentelių prefiksas, kuris būtu panašus į „%s“." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Nepavyko atidaryti schemos failo :„%s“." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nepavyko sukurti DB bandomosios įvykių eigos. Peržiūrėkite klaidos pranešimą ir README.html " +"dėl trūkstamų privilegijų ir išvalykite duombazę." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nepavyko atlikti DB numetimo testo įvykių sekos. Peržiūrėkite klaidos pranešimą ir README." +"html dėl trūkstamų privilegijų ir išvalykite duombazę." + +msgid "Missing SQL statements" +msgstr "Trūksta SQL komandų" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Peržiūrėkite klaidos pranešimą ir README.html dėl trūkstamų privilegijų ir išvalykite " +"duombazę." + +msgid "Finish Installation" +msgstr "Baigti diegimą" + +msgid "Install Gallery Core" +msgstr "Įdiegti Galerijos pagrindą" + +msgid "Installing the core module" +msgstr "Įdiegiamas pagrindinis modulis" + +msgid "Unable to initialize our Gallery data" +msgstr "Nepavyko inicijuoti jūsų Galerijos duomenų" + +msgid "Unable to communicate with the database" +msgstr "Nepavyko užmegzti ryšio su duombaze" + +msgid "Unable to load the core module" +msgstr "Neįmanoma įkelti pagrindinio modulio" + +msgid "Unable to install the core module" +msgstr "Ar tikrai norite pašalinti pagrindinį modulį" + +msgid "Unable to activate the core module" +msgstr "Nepavyko aktyvuoti pagrindinio modulio" + +msgid "Unable to commit database transaction" +msgstr "Neįmanoma užbaigti duombazės tranzakcijos" + +msgid "Core module is only partially installed." +msgstr "Pagrindinis modulis įdiegtas tik dalinai." + +msgid "Install Plugins" +msgstr "Įdiegti priedus" + +msgid "Unable to initialize our Gallery session" +msgstr "Nepavyko inicijuoti Galerijos sesijos" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Nepavyko įkelti modulio %s" + +msgid "Installing modules" +msgstr "Diegiami moduliai" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Modulio %s pašalinti nepavyko" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Modulio %s aktyvuoti nepavyko" + +msgid "Unable to get the module list" +msgstr "Nepavyko gauti modulių sąrašo" + +msgid "Other" +msgstr "Kita" + +msgid "Installation Type" +msgstr "Įdiegimo tipas" + +msgid "Check Security" +msgstr "Patikrinkite saugumą" + +msgid "Storage Setup" +msgstr "Saugojimo nustatymai" + +msgid "System Checks" +msgstr "Sistemos patikrinimai" + +msgid "Performing system checks" +msgstr "Vykdomi sistemos patikrinimai" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP versija >= 4.3.0 arba >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Klaida: Galerijai 2 reikia PHP versijos 4.3.0 ar naujesnės, arba 5.0.4 ar naujesnės. Įdiegta " +"PHP versija %s. Susisiekite su web serverio administratoriumi, kad atnaujintu PHP versiją, " +"kurią galima atsisiųsti iš %sPHP svetainės%s." + +msgid "PHP Version" +msgstr "PHP versija" + +msgid "FILE directive supported" +msgstr "Direktyva FILE palaikoma" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Klaida: PHP __FILE__ direktyva neveikia. Paprašykite, kad web serverio administratorius " +"sutvarkytu FILE palaikymą, arba praneškite apie tai Gallery forumuose." + +msgid "FILE Directive" +msgstr "FILE direktyva" + +msgid "Safe mode disabled" +msgstr "Saugi veiksena išjungta" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Klaida: Jūsų serverio PHP sukonfigūruota saugiai veiksenai (save mode). Norint kad Galerija " +"veiktu, reikia išjungti saugią veikseną." + +msgid "Safe Mode" +msgstr "Saugi veiksena" + +msgid "Regular expressions" +msgstr "Išraiškos (Regular expressions)" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Klaida: Jūsų serverio PHP suderinta bet %sSu Perl suderinamų išraiškų%s palaikymo. Norint " +"kad Galerija veiktu, reikia išjungti šią savybę." + +msgid "exec() allowed" +msgstr "exec() leidžiama" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Dėmesio: PHP funkcija exec() yra išjungta, php.ini faile disable_functions parametro " +"pagalba. Jūs negalėsite naudoti modulių, kuriems reikalingos išorinės programos (pvz.: " +"ImageMagick, NetPBM ar Ffmpeg). Šis parametras nustatomas viso serverio mastu, taigi reikia " +"pakeisti globalų php.ini failą." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() leidžiama" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Dėmesio: PHP funkcija set_time_limit() yra išjungta, php.ini faile disable_functions " +"parametro pagalba. Galerija be šios funkcijos gali veikti, tačiau veiks nepatikimai. Bet " +"kuri operacija, kuri užtruks daugiau nei %d sekundžių nepavyks (ir kai kuriais atvejais " +"grąžint tuščią puslapį) po ko gali sekti duomenų praradimas." + +msgid "Filesystem Operations" +msgstr "Failų sistemos operacijos" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Dėmesio: PHP esminės failų sistemos operacijos išjungtos parametro disabled_functions " +"pagalba php.ini faile. Kad Galerija veiktu, šios funkcijos turi būti aktyvuotos. Trūksta šių " +"funkcijų: %s." + +msgid "Memory limit" +msgstr "Atminties riba" + +msgid "no limit" +msgstr "be ribos" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Dėmesio: Jūsų serverio PHP suderintas su atminties riba %sb (memory_limit parametras " +"php.ini faile). Norint kad Galerija veiktu normaliai, šią ribą reikia padidinti bent iki %" +"sMB." + +msgid "File uploads allowed" +msgstr "Failų įkėlimas leidžiamas" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Dėmesio: Jūsų serverio PHP suderintas neleisti įkelti failų (file_uploads parametras " +"php.ini faile). Norint įkelti failus į Galeriją reikia įjungti šią nuostatą." + +msgid "Maximum upload size" +msgstr "Didžiausias įkeliamo failo dydis" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Dėmesio: Jūsų serverio PHP suderintas taip, kad neleistu įkelti failų didesnių nei %sb " +"(upload_max_filesize parametras php.ini faile). Norėdami įkelti didesnius failus " +"turėtumėte šią ribą padidinti." + +msgid "Maximum POST size" +msgstr "Maksimalus POST dydis" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Dėmesio: Jūsų serverio PHP suderintas taip, kad neleistu įkelti POST duomenų didesnių nei %" +"sb (post_max_size parametras php.ini faile). Norėdami įkelti didesnius failus " +"turėtumėte šią ribą padidinti." + +msgid "Translation support" +msgstr "Vertimų palaikymas" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Jūsų web serveris nepalaiko lokalizavimo. Norėdami įjungti papildomų kalbų palaikimą, " +"paprašykite sistemos administratoriaus kad suderintu PHP su %sgettext%s palaikymu." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Jūsų PHP neturi %sbind_textdomain_codeset%s funkcijos. Tai reiškia, kad Galerija gali " +"iškraipyti kai kurių kalbų išplėstus (extended) simbolius." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Jūsų PHP neturi %sdngettext%s funkcijos. Tai reiškia, kad Galerija negalės išversti " +"daugiskaitos formų." + +msgid "Zend compatibility mode" +msgstr "Suderinamumo su Zend modulis" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Dėmesio: Jūsų serverio PHP suderintas su Zend ze1_compatibility_mode kad gali sukelti PHP " +"lūžimą. Spauskite čia, kad patikrinti jūsų PHP. Jei pamatysite „SĖKMĖ“, " +"tuomet jūsų PHP tvarkoje. Jei gausite klaidos pranešimo, ar negausite jokio pranešimo, " +"tuomet norėdami testi turite išjungti ze1_compatibility_mode." + +msgid "putenv() allowed" +msgstr "putenv() leidžiamas" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Dėmesio: PHP funkcija putenv() išjungta parametro disabled_functions pagalba php.ini " +"faile. Tokiomis sąlygomis Galerija gali veikti, bet kai kuriose retose sistemose Galerija " +"galės veikti tik sistemos kalba arba anglų kalba." + +msgid "Output buffering disabled" +msgstr "Išvesties buferiai išjungti" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Dėmesio: PHP veikia su įjungtu išvesties buveriu, parametro %s pagalba faile php.ini. " +"Tokiomis sąlygomis Galerija gali veikti, failų įkėlimas gali netgi pagreitėti, bet Galerija " +"negalės išsaugoti didelių failų (pvz.: didelių video failų) ir viršys atminties ribą. Taip " +"pat, kai kurios savybės, tokios kaip progreso indikatorius, gali veikti neteisingai, nebent " +"bus leidžiama funkcija ini_set()." + +msgid "Gallery file integrity" +msgstr "Galerijos failų vientisumas" + +msgid "Test skipped due to other errors." +msgstr "Užduotis praleisita dėl kitų klaidų." + +msgid "Theme available" +msgstr "Tema pasiekiama" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Klaida: Aplanke %s turi būti bent viena tema!" + +msgid "Manifest missing or inaccessible." +msgstr "Trūksta Manifesto arba jis nepasiekiamas." + +msgid "Welcome" +msgstr "Sveiki atvykę" + +msgid "Please correct the following errors" +msgstr "Ištaisykite šias klaidas" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Kiekvienoje galerijoje turi būti bent vienas administratorius, kuris gali viską matyti ir " +"modifikuoti. Nurodykite administratoriaus vartotojo vardą ir slaptažodį. Daugiau vartotojų " +"galėsite pridėtivėliau." + +msgid "Admin username" +msgstr "Administratoriaus vartotojo vardas" + +msgid "Please enter a valid user name" +msgstr "Įveskite tinkamą vartotojo vardą" + +msgid "Please enter a password" +msgstr "Įveskite slaptažodį" + +msgid "Password" +msgstr "Slaptažodis" + +msgid "Setup password" +msgstr "Nustatyti slaptažodį" + +msgid "(type again)" +msgstr "(įveskite dar kartą)" + +msgid "Admin email address" +msgstr "Administratoriaus el. pašto adresas" + +msgid "Please enter a valid email address" +msgstr "Įveskite tinkamą el. pašto adresą" + +msgid "Admin full name (optional)" +msgstr "Administratoriaus pilnas vardas ir pavardė (nebūtina)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Trūksta slaptažodžio! Įveskite tą patį slaptažodį du kartus" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Įvesti slaptažodžiai nesutampa! Pabandykite dar kartą." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Tai nėra švarus įdiegimas, kadangi naudojate jau egzistuojančias duombazės lenteles. Tai tik " +"pakeis diegimo slaptažodį, tačiau nepakeis svetainės administratoriaus slaptažodžio. Jei " +"norite pakeisti administratoriaus slaptažodį, pasirinkite Galerijos pamiršto slaptažodžio " +"mechanizmą." + +msgid "Create" +msgstr "Sukurti" + +msgid "Save" +msgstr "Išsaugoti" + +msgid "Admin user info entered successfully." +msgstr "Administruojantis vartotojas sukurtas sėkmingai." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Tam kad įdiegti Galeriją, reikia įsitikinti, kad jūs esate tas asmuo kuriuo dedatės. " +"Geriausias būdas tuo įsitikinti, yra paprašyti jūsų atlikti mažą pakeitimą Galerijos " +"aplanke, tai patvirtins, kad jūs turite tinkamas teises. Taigi, paprašysiu %s " +"aplanke sukurti naują tekstinį failą pavadinimu login.txt (šiame aplanke " +"turi būti failas main.php). Šiame faile turi būti šie atsitiktinai sugeneruoti simboliai:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Jūsų patogumui yra paruošta %stinkama login.txt failo versija%s. Atsisiųskite šią kopiją ir " +"nukopijuokite į %s aplanką. Tada jūs būsite pasiruošęs." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Kai įkelsite failą į reikiamą vietą, paspauskite mygtuką žemiau." + +msgid "Authenticate Me" +msgstr "Patikrinti manę" + +msgid "Authentication successful!" +msgstr "Patikrinimas sėkmingas!" + +msgid "Erase data for a clean install" +msgstr "Ištrinti duomenis švariam diegimui" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "Ar tikrai norite ištrinti duomenis iš Galerijos duomenų aplanko ir duomenų bazės?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "Trinant duombazę ir duomenų aplanko turinį įvyko klaida. Čia yra klaidos pranešimas:" + +msgid "Cancel" +msgstr "Atšaukti" + +msgid "Erase all data" +msgstr "Ištrinti visus duomenis" + +msgid "Please fix this error and try again." +msgstr "Ištaisykite klaidą ir pabandykite dar kartą." + +msgid "Try Again" +msgstr "Bandyti vėl" + +msgid "Create a config file" +msgstr "Sukurti konfigūracijos failą" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Dabar visą sukauptą informaciją reikia įrašyti į failą config.php aplanke %s. " +"Tai labai svarbus Galerijos failas, jis Galerijai suteikia visą informaciją, kurios reikia " +"normaliam veikimui. Po to kai failas bus įrašytas, jūs galėsite jį peržiūrėti ir jei norite " +"paredaguoti." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Prieš tęsdami, jūs turite aplanke %s sukurti failą config.php. Įsitikinkite, " +"kad web serveris gali į šį failą rašyti." + +msgid "Unix (with shell access)" +msgstr "Unix (su komandine aplinka)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Windows sistemoje jums neturėtu reikįti atlikti kažką ypatingo." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Kai sukursite šį failą ir tinkamai nustatysite prieigos teises, tuomet galėsite tęsti. Jei " +"dar kils problemų, mes pasakysime ką reikia pataisyti." + +msgid "Create config file" +msgstr "Sukurti konfigūracijos bylą" + +msgid "Config file created successfully." +msgstr "Konfigūracijos failas sukurtas sėkmingai." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Visa jūsų nurodyta informacija įrašyta į failą config.php Galerijos 2 aplanke. Jūs " +"galite jį peržiūrėti ir, jei norite, redaguoti. Tačiau būkite atsargūs -- jei šį failą " +"sugadinsite, galerija nebeveiks!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Nurodykite duomenų bazės tipą ir pateikite prisijungimo duomenys. Įdiegėjas duomenų bazės " +"nesukurs, todėl jūs turite ją sukurti patys, ir čia įveskite duomenų bazės pavadinimą. Jei " +"diegiate Galeriją į duombazę, kurioje jau yra lentelių, lentelių prefiksas padės išvengti " +"duomenų konflikto." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Tai daugelio saitų diegimas. Atminkite, kad kiekvienas saitas reikalauja savo nepriklausomų " +"duomenų bazės lentelių. Nurodykite kiekvienam saitui skirtingas duomenų bazes arba " +"skirtingus lentelių prefiksus!" + +msgid "Database type:" +msgstr "Duomenų bazės tipas:" + +msgid "DB Hostname:" +msgstr "DB mazgo pavadinimas:" + +msgid "DB Username:" +msgstr "DB vartotojo vardas:" + +msgid "DB Password:" +msgstr "DB slaptažodis:" + +msgid "DB Name:" +msgstr "DB vardas:" + +msgid "Table Prefix:" +msgstr "Lentelių prefiksas:" + +msgid "Column Prefix:" +msgstr "Stulpelio prefiksas:" + +msgid "We received the following database related errors:" +msgstr "Įvyko šios su duomenų baze susijusios klaidos:" + +msgid "Erase Data For A Clean Install" +msgstr "Ištrinti duomenis švariam įdiegimui" + +msgid "Reuse Existing Tables" +msgstr "Naudoti egzistuojančias lenteles" + +msgid "Database set up successfully." +msgstr "Duomenų bazė suderinta sėkmingai." + +msgid "Finished!" +msgstr "Baigta!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Sveikinimai! Jūsų Gallery 2 įdiegimas baigtas! Matote... tai ne taip ir sunku, ar ne? Dabar " +"laikas įkelti keletą fotografijų!" + +msgid "Go to my Gallery!" +msgstr "Įeiti į mano galeriją!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Dabar galite įeiti į savo naują galeriją. Įveskite naršyklėje adresą %smain.php%s jūsų %s " +"aplanke." + +msgid "Installer Help" +msgstr "Diegiklio pagalba" + +msgid "Start Over" +msgstr "Pradėti iš naujo" + +msgid "Error installing Gallery Core" +msgstr "Diegiant Galerijos pagrindą įvyko klaida" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Bandant įdiegti pagrindinė modulį, kažkas nepavyko. Ką daryti toliau?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Pereiti į sistemos patikrinimo žingsnį ir įsitikinti, kad visi testai rodo „Sėkmė“. " +"Dažniausiai taip atsitinka todėl, kad ignoruojamas failų vientisumo įspėjimas." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Jei sistemos testai nerodo jokių įspėjimų ar klaidų, tuomet išvalykite duomenų aplanką ir " +"ištrinkite duomenų bazės lenteles, ir pradėkite diegimą antrą kartą (pakartokite visus " +"žingsnius)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Apsilankykite %sG2 FAQ%s ir perskaitykite %sReadme sekciją Known issues%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Jei problema išliks, tuomet suarchyvuokite diegimo žurnalą (kurį rasite %s) ir prisekite " +"forume kaip naują temą %sG2 palaikymo forumuose%s, arba, jei įmanoma, forume įdėkite " +"nuorodą į install.log failą kaip naują temą, taip, kad esant reikalui, palaikymo komanda " +"galėtu jį išanalizuoti." + +msgid "Stack Trace:" +msgstr "Stack pėdsakas:" + +msgid "Installed Gallery Core successfully." +msgstr "Galerijos pagrindas įdiegtas sėkmingai." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Galerijos pagrindas įdiegtas sėkmingai. Tokioje būklėje viskas veiks, tačiau turėtumėte " +"tęsti darbą su diegikliu ir pridėti keletą papildomų modulių, kad galerija turėtu jums " +"reikalingas savybes." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Šie moduliai jums gali būti būti įdiegti ir suderinti automatiškai. Jums reikėtu įdiegti " +"bent vieną iš grafinių įrankių rinkinių, priešingu atveju Galerija negalės sugeneruoti " +"miniatiūrų. Daugeliu atveju automatinis diegimas suveiks puikiai. Tačiau kai kuriais " +"atvejais jis gali nepavykti. Svetainės administravimo puslapyje jūs visada galėsite " +"aktyvuoti naujus modulius ir deaktyvuoti nebereikalingus, taigi bet kuris sprendimas nėra " +"galutinis." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Kai kurie moduliai gali neįsidiegti automatiškai. Tai nieko baisaus. Tai dažniausiai " +"reiškia, kad juos reikia suderinti, ką galite padaryti svetainės administravimo puslapyje." + +msgid "Name" +msgstr "Pavadinimas" + +msgid "Version" +msgstr "Versija" + +msgid "Description" +msgstr "Aprašymas" + +msgid "(Incompatible with this Gallery version)" +msgstr "(nesuderinamas su šia Galerijos versija)" + +msgid "(un)check all" +msgstr "žymėti/nežymėti viską" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Pereiti į žingsnį %d be aktyvavimo»" + +msgid "Activate Selected Modules" +msgstr "Aktyvuoti pažymėtus modulius" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modulis %s įdiegtas sėkmingai, tačiau norint aktyvuoti jį reikia suderinti" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Kai užbaigsite diegimą, prisijunkite kaip administratorius ir eikite į svetainės " +"administravimą. Pasirinkite Moduliai, ten peržiūrėkite ir suderinkite išvardintus " +"modulius." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Modulis %s aktyvuotas sėkmingai" + +msgid "Activate More Modules" +msgstr "Aktyvuoti daugiau modulių" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Pereiti į žingsnį %d»" + +msgid "Debug Output" +msgstr "Testavimo išvestis" + +msgid "Welcome to the Gallery Installer" +msgstr "Sveiki atvykę į Galerijos diegiklį" + +#, c-format +msgid "Install %d%% complete" +msgstr "%d%% įdiegimas baigtas" + +msgid "Redo this step" +msgstr "Pakartoti šį žingsnį" + +msgid "Gallery: your photos on your website" +msgstr "Galerija: jūsų fotografijos -- jūsų svetainėje" + +#, c-format +msgid "Missing files (%d)" +msgstr "Trūkstami failai (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Pastaba: Jūs naudojate Galeriją iš SVN, paskutiniu metu pašalinti failai bus matomi čia. " +"Šiuos failus greičiausiai galima ignoruoti." + +#, c-format +msgid "Modified files (%d)" +msgstr "Pakeisti failai (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Pastaba: Jūs naudojate Galeriją iš SVN, tikėtina kad bus keli pakeisti failai. Greičiausiai " +"jūs galite juos ignoruoti, tačiau jei norite būti saugūs, turite įsitikinti, kad prieš " +"tęsdami įvykdėte komandą 'svn update'." + +#, c-format +msgid "Old files (%d)" +msgstr "Seni failai (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Šie failai nebepriklauso Galerijai. Dėl jų greičiausiai nekils jokių problemų, tačiau " +"geriausia juos būtu pašalinti, kad jūsų Galerija išliktu švari." + +msgid "Errors occurred. Please see messages below." +msgstr "Yra klaidų. Peržiūrėkite žemiau esančius pranešimus." + +msgid "Please select the installation type" +msgstr "Pasirinkite įdiegimo tipą" + +msgid "Standard installation" +msgstr "Standartinis įdiegimas" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Tai numatytas įdiegimo tipas. Pasirinkite šį įdiegimo tipą, jei norite naują Galeriją " +"įdiegti į palanką %s, kuris bus pasiekiamas adresu %s." + +msgid "Multisite installation" +msgstr "Daugelio saitų įdiegimas" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Galerija palaiko keletą nepriklausomų saitų, naudojant vieną kodo įdiegimą. Pasirinkite šį " +"įdiegimo tipą, jei norite turėti naują galeriją tame pačiame serveryje keliuose skirtinguose " +"aplankuose, subdomenuose ar adresuose." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Daugelio saitų įdiegimas albumų, fotografijų, vartotojų ar bet ko kito bendrai nenaudoja. " +"Jiems visiems reikia atskiro duomenų aplanko ir duomenų bazės. Norėdami sužinoti daugiau " +"apie keleto saitų įdiegimą, pasilankykite puslapyje %s." + +msgid "You must enter a directory" +msgstr "Reikia įvesti aplanką" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Aplankas, kurį įvedėte yra kodo bazės aplankas. Jei norite įdiegti galeriją ten pat kur ir " +"kodo bazė, tuomet pasirinkite standartinį įdiegimo tipą. Jei norite įdiegti keletą saitų, " +"nurodykite kitą aplanką." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Aplankas, kurį nurodėte neegzistuoja, arba jis uždraustas web serverio konfigūracijoje. Jūsų " +"web serveris sukonfigūruotas tai, kad leistu pasiekti tik šiuos aplankus. Reikia pasirinkti " +"aplanką, kuris yra viename iš nurodytų aplankų, arba pakeiskite PHP konfigūracijos nustatymą " +"open_basedir." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Įvestas aplankas neegzistuoja" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Įvestas aplankas nepasiekiamas. Pakeiskite prieigos teises tai, kad web serveris šį aplanką " +"galėtu skaityti." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Nepavyko sukurti keleto saitų failų. Įsitikinkite, kad išvardinti failai yra prieinami " +"rašymui." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Visi saitai įdiegiami iš centrinės kodo repozicijos (kodo bazė)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "Žemiau įveskite naujo saito aplanką. Kodo bazės aplankas netinka:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Aplankas turi būti prieinamas rašymui web serverio/php vartotojui, arba jame turi būti " +"prieinami rašymui šie failai:" + +msgid "Select Directory" +msgstr "Pasirinkite aplanką" + +msgid "Multisite directory setup successfully." +msgstr "Keleto saitų aplanko nustatymas sėkmingas." + +msgid "Standard installation selected." +msgstr "Pasirinktas standartinis diegimas." + +msgid "Install Steps" +msgstr "Įdiegimo žingsniai" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Reikia įsitikinti, kad Galerija yra saugi. Failas config.php, kurį redagavo diegiklis, turi " +"prieigos teises, kurios kitiems žmonėms leidžia į jį rašyti. Tai buvo būtina, kadangi " +"diegiklis, kai jis bando pasiekti Unix failų sistemą, yra interpretuojamas kaip pašalinis " +"asmuo. Taigi prieš užbaigdami , jūs turėtumete pakeisti šio failo prieigos teises taip, kad " +"kiti vartotojai negalėtu į jį rašyti. Šiuo metu failo config.php prieigos teisės yra %s. " +"Rekomenduojama atlikti šiuos veiksmus:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Reikia įsitikinti, kad Galerija yra saugi. Aplankas, kuriame yra failas config.php, kurį " +"redagavo diegiklis, turi prieigos teises, kurios kitiems žmonėms leidžia jame kurti ir " +"trinti failus. Taigi prieš užbaigdami , jūs turėtumete pakeisti šio aplanko prieigos teises " +"taip, kad kiti vartotojai negalėtu į jį rašyti. Rekomenduojama atlikti šiuos veiksmus:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Jei tikrai norite tęsti, jūs galite. Tačiau rekomenduojama, kad jūs sugaištumėte keletą " +"akimirkų tam, kad įsitikinti saugumu." + +msgid "We've verified that your config.php is secure." +msgstr "Failas config.php yra saugus." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Prašome perskaityti %1$sGallery Security Guide%3$s. Trumpą apžvalgą rasite „security guide“ " +"sekcijoje %2$sshort check list%3$s." + +msgid "Check Again" +msgstr "Patikrinti vėl" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Galerijai reikalingas aplankas, kuriame bus laikomi Jūsų failai. Aplankas, kurį mes " +"parinkome veiks, bet ši vieta nesuteikia maksimalaus saugumo. Pasirinkite naują aplanką už %" +"sdocument root%s ribų ir prie aplanko pavadinimo pridėkite atsitiktinių simbolių (pvz.: %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Maksimaliam saugumui turėtumete pasirinkite aplanką, kuris nėra %sweb accessible%s t.y. " +"pasiekiamas internetu. Jei tai neįmanoma, aplankui parinkite atsitiktinį pavadinimą." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Jei parinkote atsitiktinį pavadinimą arba paliksite pasiūlytą variantą, tuomet patvirtinkite " +"savo pasirinkimą." + +msgid "Yes, please omit the security check:" +msgstr "Taip, praleisti saugumo patikrinimą:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Tai keleto saitų įdiegimas. Atminkite, kad kiekvienam saitui reikia savo atskiro duomenų " +"aplanko." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Jei jūs naudojate modernią naršyklę, Galerija pamėgins jūsų įvedamą kelią užbaigti " +"automatiškai. Jei nesiseka rasti tinkamo kelio iki G2 duomenų aplanko, pamėginkite teksto " +"lauke paeksperimentuoti ir pažiūrėkite ką jums siūlo automatinis užbaigimas." + +msgid "The directory you entered is read only" +msgstr "Įvestas aplankas prieinamas tik skaitymui" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Duomeų aplanke, kuriant aplankų medį, įvyko klaida." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Duomenų aplankas yra %sweb accessible%s (pasiekiamas internetu)." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Neįmanoma patikrinti ar duomenų aplankas nėra %sweb accessible%s." + +msgid "Directory path:" +msgstr "Kelias iki aplanko:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Web serveris turi galėti rašyti į šį aplanką. Kad tai padaryti peržiūrėkite šiuos pavyzdžius." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Pastaba: tai tik pavyzdžiai! Gal atsitikti taip, kad jie jūsų sistemoje tinkamai neveiks." + +msgid "Unix (with ftp access)" +msgstr "Unix (su ftp prieiga)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Atkreipkite dėmesį į tai, kad ftp klientai ir serveriai labai skiriasi, todėl šie pavyzdžiai " +"jums gali nesuveikti. Jei jums kyla problemos, peržiūrėkite FTP kliento instrukcijas arba " +"pasikonsultuokite su sistemos administratoriumi" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Pas kai kuriuos hostingo paslaugų tiekėjus, keliai, kuriuos matoto komandinėje aplinkoje ar " +"per FTP, gali skirtis nuo tų, kuriuos mato PHP. Tam kad išaiškinti realų kelią iki duomenų " +"aplanko, galite sukurti PHP scenarijų dir.php į kurį įrašykite šį kodą ir failą " +"patalpinkite į duomnų aplanką." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"po to išsiaiškinkite kokiu adresu galima kreiptis į dir.php ir atverkite jį naršyklėje " +"(pvz.: %s). Tuomet pamatysite tikslų kelią, kurį galite įvesti čia." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Pastaba: Šis scenarijus reikalauja, kad duomenų aplankas būtu prieinamas per web " +"serverį, o tai yra nerekomenduojama, nes tada netenkate vaizdų ugniasienės. Kai tik šiuo " +"būdu išsiaiškinsite tikslų kelią, patariama duomenų aplanką perkelti į kitą vietą, iš kurios " +"jis būtu nepasiekiamas web serveriui, ir atitinkamai pakeiskite nustatytą kelią." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Pastaba: Kai viską atliksite nepamirškite ištrinti failo dir.php!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Daugiau informacijos kaip apsaugoti Galerijos duomenų aplanką rasite perskaitę Galerijos %" +"sSecurity Guide%s." + +msgid "Storage directory set successfully." +msgstr "Duomenų aplankas suderintas sėkmingai." + +msgid "Success" +msgstr "Sėkmė" + +msgid "Warning" +msgstr "Įspėjimas" + +msgid "Failed" +msgstr "Klaida" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Jei jūs naudojate Apache, pagrindiniame Galerijos aplanke sukurkite failą .htaccess su šiuo " +"turiniu:" + +msgid "Version Check" +msgstr "Versijos patikrinimas" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Tai nėra švarus įdiegimas ir įdiegta versija nesutampa su naujai diegiama versija." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Įdiegta versija negali būti atnaujinta į naują versiją!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Įdiegta versija yra senesnė nei įdiegiama versija. Jūs turėtumėte naudoti atnaujintoją o ne " +"diegiklį!" + +msgid "Currently installed" +msgstr "Šiuo metu įdiegta" + +msgid "New version" +msgstr "Nauja versija" + +msgid "Go to the Upgrader!" +msgstr "Eiti į atnaujintoją!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Jūs turėtumėte naudoti atnaujintoją. Naršyklės adreso juostoje dėl %s/upgrade/index.php%s " +"jūsų %s aplanke." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Kad serveryje įdiegti Galeriją 2 reikia atlikti %d žingsnių. Šis diegiklis jis palydės per " +"visus žingsnius ir, prireikus papildomo suderinimo, pateiks pagalbą. Kai diegimas bus " +"atliktas, jūs galėsite bet kada sugrįžti ir atlikti pakeitimus. Prieš tęsdami perskaitykite %" +"sDiegiklio pagalbos failą%s." + +msgid "Select Language:" +msgstr "Pasirinkite kalbą:" + +msgid "Go" +msgstr "Pirmyn" + +msgid "Begin Installation»" +msgstr "Pradėti diegimą»" diff --git a/Source/gallery2/install/po/lv.po b/Source/gallery2/install/po/lv.po new file mode 100644 index 0000000..19de7f2 --- /dev/null +++ b/Source/gallery2/install/po/lv.po @@ -0,0 +1,1168 @@ +# $Id: lv.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"POT-Creation-Date: 2006-09-30 21:44+0300\n" +"PO-Revision-Date: 2006-10-01 18:39+0200\n" +"Last-Translator: Jānis Baiža \n" +"Language-Team: Latvian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Country: LATVIA\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Unknown" +msgstr "Nezināms" + +msgid "Admin User Setup" +msgstr "Admin lietotāja iestatīšana" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Galerijas administrators" + +msgid "Authenticate" +msgstr "Autentificēties" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Kļūda: nevar atrast login.txt. Lūdzu nolieciet to savā %s/ " +"direktorijā." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Kļūda: Jūsu login.txt fails nav lasāms. Lūdzu, iedodiet Galerijai lasīšanas " +"tiesības uz failu." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Kļūda: Jūsu login.txt atslēga nav korekta. Lūdzu lejuplādējiet jaunu " +"autentifikācijas vērtību un mēģiniet vēlreiz." + +msgid "Create Config File" +msgstr "Konfigurācijas faila izveide" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Nav iespējams ierakstīt config.php konfigurācijas failu Jūsu %s direktorijā. Lūdzu, " +"izmainiet atļaujas. Ja Jūs strādājat ar Unix, lai to izdarītu, Jūs varat izpildīt chmod " +"666 config.php." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Fails config.php neatrodas Jūsu %s direktorijā" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Fails config.php eksistē, bet nav rakstāms. Ja Jūsu serveris ir Windows, Jums, iespējams, " +"nepieciešms atspējot fail config.php koplietošanu un faila atļaujas uzlikt manuāli." + +msgid "Database Setup" +msgstr "Datubāzes iestatīšana" + +msgid "You must have the MySQL PHP module installed" +msgstr "Jums ir jābūt instalētam MySQL PHP modulim" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Jums ir jābūt instalētam MySQL Improved PHP modulim" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Jums ir jābūt instalētam ibm_db2 PHP modulim" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Jums ir jābūt instalētam PostgreSQL PHP modulim" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Jums ir jābūt instalētam Oracle OCI8 PHP modulim" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Jums ir jābūt instalētam 'Component Object Model(COM)' PHP modulim" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Jums ir jānorāda kolonnu prefiks (mēs iesakām %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Kolonnu prefiksā lietojiet tikai burtus, ciparus un pasvītrojumu" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Jums ir jānorāda tabulu prefiks (mēs iesakām %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Tabulu prefiksā lietojiet tikai burtus, ciparus un pasvītrojumu" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Nav iespējams izveidot datubāzes savienojumu ar tipu %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Ar sniegto informāciju, nav iespējams pieslēgties datubāzei." + +msgid "The database you specified does not exist. Please create it." +msgstr "Jūsu norādītā datubāze neeksistē. Lūdzu izveidojiet to." + +msgid "The database privileges test did not complete successfully." +msgstr "Datubāzes privilēģiju tests beidzās neveiksmīgi." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Galerijas tables jau eksistē šajā datubāzē! Bet Jūsu G2 uzglabāšanas direktorijā nav faila " +"'versions.dat', ko mēs interpretējam kā G2 nekorektu stāvokli. Vai nu izveidojiet versions." +"dat failu ar korektu formātu, ja Jūs domājat, ka Jūsu G2 ir jāstrādā vai izvēlieties tīru " +"instalāciju, kura dzēsīs visus datus datubāzē un uzglabāšanas direktorijā." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 uzglabāšanas direktorijā ir vecas instalācijas versions.dat fails. Bet Galerijas " +"datubāzes tabulas neeksistē. Izvēlieties tīru instalāciju, lai idzēstu visus datus Galerijas " +"uzglabāšanas direktorijā un turpinātu ar nākamo soli." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Datubāzē jau eksitē Galerijas tabulas, bet ir versions.dat fails Galerijas uzglabāšanas " +"direktorijā. Bet instalētās Galerijas darubāzes tabulu versijas nesalkrīta ar datiem, kuri " +"instalēti Galerijas uzglabāšanas direktrijā. Izvēlietoes tīro instalāciju, lai izdzēstu " +"visus datus no datubāzes un uzglabāšanas direktorija un turpinātu ar nākamo soli." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Datubāzē jau eksistē Galerijas tabulas un Galerijas uzglabāšanas direktorija izskatās " +"vesela. Vai nu izvēlieties atkalizmantot eksistējošās datubāzes tabulas un uzglabāšanas " +"direktoriju vai izvēlieties tīru instalāciju, kura izdzēsīs visus datus datubāzē un " +"uzglabāšanas direktorijā." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Nevar izpildīt API, kurš nepieciešamas, lai izdzēstu uzglabāšanas direktoriju. Lūdzu, " +"izdzēsiet Galerijas uzglabāšanas direktoriju manuāli." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Nevar izpildīt API, kurš nepieciešams, lai izdzēstu Galerijas datubāzes tabulas. Lūdzu, " +"iztīriet Galerijas datubāzi manuāli." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Nevar ielādēt G2 API. Lūdzu izdzēsiet Galerijas datubāzes tabulas un uzglabāšanas " +"direktoriju manuāli." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a un jaunāks)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versijas pirms v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x un jaunāks" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i un jaunāks)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x un jaunāks)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x un jaunāks" + +msgid "Unknown DB type or no known tables information." +msgstr "Nezināms DB tips vai arī nav zināma tabulu informācija." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Nevar atrast neizmantotu tabulu prefiksu līdzīgu \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Nevar atvērt shēmas failu: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Kļūda veidojot DB testa sekvenci. Pārbaudiet atgriezto kļūdas paziņojumu un README.html, lai " +"noskaidrotu trūkstošās tiesības un iztīriet datubāzi." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Kļūda mēģinot nodzēst DB testa sekvenci. Pārbaudiet atgriezto kļūdas paziņojumu un README." +"html, lai noskaidrotu trūkstošās tiesības un iztīriet datubāzi." + +msgid "Missing SQL statements" +msgstr "Trūkstoši SQL pieprasījumi" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Pārbaudiet atgriezto kļūdas paziņojumu un README.html, lai noskaidrotu trūkstošās tiesības " +"un iztīriet datubāzi." + +msgid "Finish Installation" +msgstr "Instalācija pabeigta" + +msgid "Install Gallery Core" +msgstr "Galery kodola instalācija" + +msgid "Installing the core module" +msgstr "Instalē kodola moduli" + +msgid "Unable to initialize our Gallery data" +msgstr "Nav iespējams inicializēt Jūsu Galerijas datus" + +msgid "Unable to communicate with the database" +msgstr "Nav iespējams sazināties ar datubāzi" + +msgid "Unable to load the core module" +msgstr "Nav iespējams ielādēt kodola moduli" + +msgid "Unable to install the core module" +msgstr "Nav iespējams instalēt kodola moduli" + +msgid "Unable to activate the core module" +msgstr "Nav iespējams aktivizēt kodola moduli" + +msgid "Unable to commit database transaction" +msgstr "Nav iespējams apstiprināt datubāzes transakciju" + +msgid "Core module is only partially installed." +msgstr "Kodola modulis instalēts tikai daļēji." + +msgid "Install Plugins" +msgstr "Spraudņu instalācija" + +msgid "Unable to initialize our Gallery session" +msgstr "Nav iespējams inicalizēt Galerijas sesiju" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Nav iespējams ielādēt %s moduli" + +msgid "Installing modules" +msgstr "Instalē moduļus" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Nav iespējams instalēt %s moduli" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Nav iespējams aktivizēt %s moduli" + +msgid "Unable to get the module list" +msgstr "Nav iespējams iegūt moduļu sarakstu" + +msgid "Other" +msgstr "Cits" + +msgid "Installation Type" +msgstr "Instalācijas tips" + +msgid "Check Security" +msgstr "Pārbauda drošību" + +msgid "Storage Setup" +msgstr "Uzglabāšanas iestatīšana" + +msgid "System Checks" +msgstr "Sistēmas pārbaudes" + +msgid "Performing system checks" +msgstr "Veic sistēmas pārbaudes" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP versija >= 4.3.0 vai >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Kļūda: Lai strādātu ar Galerija 2, nepieciešamas PHP versija 4.3.0 vai jaunāka vai 5.0.4 vai " +"jaunāka. Jums ir instalēta PHP versija %s. Sazinieties ar webservera administratoru, lai " +"pieprasītu atjaunojumu, kurš pieejams %sPHP weblapā%s." + +msgid "PHP Version" +msgstr "PHP versija" + +msgid "FILE directive supported" +msgstr "Tiek atbalstīta FILE direktīva" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Kļūda: Jūsu PHP __FILE__ direktīva nestrādā korekti. Lūdzu aizpildiet atbalsta pieprasījumu " +"no Jūsu webservera administratora vai Galerijas forumā." + +msgid "FILE Directive" +msgstr "FILE direktīva" + +msgid "Safe mode disabled" +msgstr "Drošais režims atspējots" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Kļūda: Jūsu PHP versija ir konfigurēta darbam ar drošo režīmu. Pirms palaist Galeriju, " +"vispirms jums ir jāatspējo drošais režīms" + +msgid "Safe Mode" +msgstr "Drošais režīms" + +msgid "Regular expressions" +msgstr "Regulārās izteiksmes" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "exec() atļauts" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() atļauts" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "Atmiņas limits" + +msgid "no limit" +msgstr "nav limita" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "Failu augšupielāde atļauta" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "Maksimālais augšupielādes izmērs" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "Maksimālais POST izmērs" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "Tulkošanas atbalts" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "Zend savietojamības režīms" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "putenv() atļauts" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "Izvades buferēšana atspējota" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "Galerijas failu integritāte" + +msgid "Test skipped due to other errors." +msgstr "Tests izlaists citu kļūdu dēļ." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "Nav deklarācijas vai tā ir nepieejama" + +msgid "Welcome" +msgstr "Laipni lūdzam" + +msgid "Please correct the following errors" +msgstr "Lūdzu, novērsiet sekojošas kļūdas" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "Admin lietotājvārds" + +msgid "Please enter a valid user name" +msgstr "Lūdzu ievadiet korektu lietotājvārdu" + +msgid "Please enter a password" +msgstr "Lūdzu ievadiet paroli" + +msgid "Password" +msgstr "Parole" + +msgid "Setup password" +msgstr "Iestatnes parole" + +msgid "(type again)" +msgstr "(ierakstiet vēlreiz)" + +msgid "Admin email address" +msgstr "Admin e-pasta adrese" + +msgid "Please enter a valid email address" +msgstr "Lūdzu ievadiet korektu e-pasta adresi" + +msgid "Admin full name (optional)" +msgstr "Admin pilns vārds (neobligāts)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Nav ievadīta parole! Lūdzu ievadiet paroli divas reizes" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Jūsu ievadītās paroles nesakrīt" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Izveidot" + +msgid "Save" +msgstr "Saglabāt" + +msgid "Admin user info entered successfully." +msgstr "Admin lietotāja informācija veiksīgi ievadīta." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Tiklīdz esat augšupielādējis failu, spiediet zemāk, lai turpinātu" + +msgid "Authenticate Me" +msgstr "Autentificēt mani" + +msgid "Authentication successful!" +msgstr "Autentifikācija veiksmīga" + +msgid "Erase data for a clean install" +msgstr "Dzēst datus tīrai instalācijai" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "Atsaukt" + +msgid "Erase all data" +msgstr "Dzēst visus datus" + +msgid "Please fix this error and try again." +msgstr "Lūdzu, salabojoet šīs kļūdas un mēģiniet vēlreiz." + +msgid "Try Again" +msgstr "Mēģiniet vēreiz" + +msgid "Create a config file" +msgstr "Veido konfigurācijas failu" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (ar shell pieeju)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Veido konfigurācijas failu" + +msgid "Config file created successfully." +msgstr "Konfigurācijas fails izveidots veiksmīgi" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "Datubāzes tips:" + +msgid "DB Hostname:" +msgstr "DB saimniekdators:" + +msgid "DB Username:" +msgstr "DB lietotājs:" + +msgid "DB Password:" +msgstr "DB parole:" + +msgid "DB Name:" +msgstr "DB nosaukums:" + +msgid "Table Prefix:" +msgstr "Tabulu prefiks:" + +msgid "Column Prefix:" +msgstr "Kolonnu prefiks:" + +msgid "We received the following database related errors:" +msgstr "Ir notikusi(šas) sekojoša, ar datubāzi saistīta, kļūda(s):" + +msgid "Erase Data For A Clean Install" +msgstr "Izdzēst datus tīrai instalācijai" + +msgid "Reuse Existing Tables" +msgstr "Izmanto eksistējošās tabulas" + +msgid "Database set up successfully." +msgstr "Datubāze iestatīta veiksmīgi." + +msgid "Finished!" +msgstr "Pabeigts!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "Iet uz manu Galeriju!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "Instalācijas palīgs" + +msgid "Start Over" +msgstr "Sākt no sākuma" + +msgid "Error installing Gallery Core" +msgstr "Kļūda instalējot Galerijas kodolu" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "Steka trase:" + +msgid "Installed Gallery Core successfully." +msgstr "Galerijas kodols instalēts veiksmīgi." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "Nosaukums" + +msgid "Version" +msgstr "Versija" + +msgid "Description" +msgstr "Apraksts" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Nav saderīgs ar šo Galerijas versiju)" + +msgid "(un)check all" +msgstr "atzīmēt visus" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Turpināt ar soli %d bez aktivizācijas»" + +msgid "Activate Selected Modules" +msgstr "Aktivizēt izvēlētos moduļus" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modulis %s instalēts, bet nepieciešama konfigurācija, lai to aktivizētu" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Modulis %s aktivizēts veiksmīgi" + +msgid "Activate More Modules" +msgstr "Aktivizēt vairāk moduļus" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Turpināt ar soli %d»" + +msgid "Debug Output" +msgstr "Lāgošanas izvads" + +msgid "Welcome to the Gallery Installer" +msgstr "Sveicināti Galerijas instalācijā" + +#, c-format +msgid "Install %d%% complete" +msgstr "%d% % instalācija pabeigta" + +msgid "Redo this step" +msgstr "Atkārtot šo soli" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "Trūkst faili (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "Modificēti faili (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "Veci faili (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "Radušās kļūdas. Lūdzu, apskatiet zemāk esošos ziņojumus." + +msgid "Please select the installation type" +msgstr "Lūdzu, izvēlieties instalācijas tipu" + +msgid "Standard installation" +msgstr "Standarta instalācija" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "Vairākvietņu instalācija" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "Jums jāievada direktoriju" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Jūsu ievadītā direktorija neeksistē" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "Izvēlieties direktoriju" + +msgid "Multisite directory setup successfully." +msgstr "Veiksmīgi pabeigta vairākvietņu direktoriju instalācija." + +msgid "Standard installation selected." +msgstr "Izvēlēta standarta instalācija." + +msgid "Install Steps" +msgstr "Instalācijas soļi" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "Pārbaudīt vēlreiz" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "Jā, lūdzu izlaist drošības pārbaudi:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "Jūsu ievadītā direktorija ir tikai lasāma" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Jūsu uzglabāšanas direktorija ir %spieejama no ārpuses%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "Direktorijas ceļšs;" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "Unix (ar FTP piekļuvi)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "Veiksmīgi uzstādīta uzglabāšanas direktorija." + +msgid "Success" +msgstr "Veiksmīgi" + +msgid "Warning" +msgstr "Brīdinājumi" + +msgid "Failed" +msgstr "Neveiksmīgi" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "Versiju pārbaude" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "Pašlaik instalēta" + +msgid "New version" +msgstr "Jauna versija" + +msgid "Go to the Upgrader!" +msgstr "Iet uz atjaunotāju!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "Izvēlieties valodu:" + +msgid "Go" +msgstr "Aiziet" + +msgid "Begin Installation»" +msgstr "Sākt instalāciju»" + +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MSSQL (2005 un jaunāks)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Galerijas kodols instalēts veiksmīgi" diff --git a/Source/gallery2/install/po/nl.po b/Source/gallery2/install/po/nl.po new file mode 100644 index 0000000..5f1438f --- /dev/null +++ b/Source/gallery2/install/po/nl.po @@ -0,0 +1,1429 @@ +# $Id: nl.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators: +# Gidie , 2005 +# Buut, , Eindhoven Feb. 2006 +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-06-08 17:49+0200\n" +"PO-Revision-Date: 2007-03-15 14:51+0100\n" +"Last-Translator: B. Scheijgrond \n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Onbekend" + +msgid "Admin User Setup" +msgstr "Beheergebruiker Setup" + +msgid "admin" +msgstr "beheerder" + +msgid "Gallery Administrator" +msgstr "Gallery Beheerder" + +msgid "Authenticate" +msgstr "Authenticatie" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "Fout: kan login.txt niet vinden. Plaats het in uw %s directory." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Fout: uw login.txt bestand is niet leesbaar. Geef Gallery leesrechten voor het " +"bestand." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Fout: uw login.txt sleutel komt niet juist overeen. Download hieronder een " +"nieuwe authenticatie tekenreeks en probeer het opnieuw." + +msgid "Create Config File" +msgstr "Aanmaken Configuratiebestand" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Kan niet schrijven naar het config.php configuratie bestand in Uw %s " +"directory. Verander de rechten. Als U Unix gebruikt kunt U dit herstellen met chmod 666 " +"config.php." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Het config.php bestand bestaat niet in uw %s directory" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Het config.php bestand bestaat, maar is niet schrijfbaar. Als uw server op Windows draait, " +"dan zou u het delen van bestanden voor config.php uit moeten zetten en de rechten handmatig " +"bewerken." + +msgid "Database Setup" +msgstr "Database Setup" + +msgid "You must have the MySQL PHP module installed" +msgstr "U dient de MySQL PHP module geïnstalleerd te hebben" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "U dient de MySQL Improved PHP module geïnstalleerd te hebben" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "U dient de ibm_db2 PHP module geïnstalleerd te hebben" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "U dient de PostgreSQL PHP module geïnstalleerd te hebben" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "U dient de Oracle OCI8 PHP module geïnstalleerd te hebben" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "U dient de Component Object Model(COM) PHP geïnstalleerd te hebben" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "U dient een veld voorvoegsel op te geven (wij raden %s aan)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Gebruik alleen letters, cijfers en liggende streepjes in het kolom voorvoegsel" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "U dient een tabel voorvoegsel op te geven (wij raden %s aan)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Gebruik alleen letters, cijfers en liggende streepjes in het tabel voorvoegsel" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Kan geen databaseverbinding aanmaken van het type %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Kan geen verbinding naar de database maken met behulp van de opgegeven informatie." + +msgid "The database you specified does not exist. Please create it." +msgstr "De opgegeven database bestaat niet. Maak deze aan." + +msgid "The database privileges test did not complete successfully." +msgstr "De database rechten test is niet succesvol voltooid." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallery tabellen bestaan reeds in deze database! Er is echter geen 'versions.'dat' bestand " +"in uw G2 opslagdirectory, wat we als een kapotte staat van G2 interpreteren. Maak ofwel een " +"version.dat bestand in het juiste formaat als u denkt dat G2 nog steeds zou moeten werken " +"ofwel selecteer een schone installatie, welke alle data zal verwijderen in de database en in " +"de opslagdirectory." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"De G2 opslagdirectory bevat een versions.dat bestand van een oude installatie, maar de " +"database tabellen bestaan niet. Selecteer een schone installatie om alle data in de Gallery " +"opslagdirectory te wissen en ga door naar de volgende stap." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"De Gallery tabellen bestaan reeds in de database en er is een versions.dat bestand in de " +"Gallery opslagdirectory. Maar de versie van de geïnstalleerde Gallery database tabellen " +"komen niet overeen met de versie van de geïnstalleerde data in de Gallery opslagdirectory. " +"Selecteer een schone installatie om alle data in de database en in de opslagdirectory te " +"wissen en ga door naar de volgende stap." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"De Gallery tabellen bestaan reeds in de database en de Gallery opslagdirectory lijkt intact " +"te zijn. Kies ofwel om de bestaande databasetabellen en opslagdirectory opnieuw te gebruiken " +"ofwel kies voor een schone installatie om alle bestaande data in de database en " +"opslagdirectory te wissen." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Kan de vereiste API om de opslagdirectory te wissen niet uitvoeren. Wis de Gallery " +"opslagdirectory handmatig." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Kan de vereiste API om de Gallery database tabellen te verwijderen niet uitvoeren. Verwijder " +"de Gallery database handmatig." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Kan de G2 API niet laden. Verwijder de Gallery databasetabellen en de opslagdirectory " +"handmatig." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a of nieuwer)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (alle versies ouder dan v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x en nieuwer" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i of nieuwer)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x en nieuwer)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 en nieuwer" + +msgid "Unknown DB type or no known tables information." +msgstr "Onbekende DB type of geen bekende tabellen informatie." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Kan geen ongebruikte tabel voorvoegsel vinden gelijkend op \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Kan schema bestand \"%s\" niet openen." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Kan de DB test reeks niet aanmaken. Controleer de teruggekregen foutmelding en README.html " +"voor missende rechten en schoon de database op." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Test mislukt om een DB test reeks weg te gooien. Controleer de teruggekregen foutmelding en " +"README.html voor missende rechten en schoon de database op." + +msgid "Missing SQL statements" +msgstr "Missende SQL statements" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Controleer de teruggekregen foutmelding en README.html voor missende rechten en schoon de " +"database op." + +msgid "Finish Installation" +msgstr "Installatie Voltooien" + +msgid "Install Gallery Core" +msgstr "Installeren Gallery Core" + +msgid "Installing the core module" +msgstr "Installeer Core Module" + +msgid "Unable to initialize our Gallery data" +msgstr "Kan uw Gallery data niet initialiseren" + +msgid "Unable to communicate with the database" +msgstr "Kan niet communiceren met de database" + +msgid "Unable to load the core module" +msgstr "Kan de core module niet laden" + +msgid "Unable to install the core module" +msgstr "Kan de core module niet installeren" + +msgid "Unable to activate the core module" +msgstr "Kan de core module niet activeren" + +msgid "Unable to commit database transaction" +msgstr "Kan de databasetransactie niet uitvoeren" + +msgid "Core module is only partially installed." +msgstr "Core module is slechts gedeeltelijk geïnstalleerd." + +msgid "Install Plugins" +msgstr "Installeer Plug-ins" + +msgid "Unable to initialize our Gallery session" +msgstr "Kan onze Gallery sessie niet initialiseren" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Kan de %s module niet laden" + +msgid "Installing modules" +msgstr "Modules Installeren" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Kan de %s module niet installeren" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Kan de %s module niet activeren" + +msgid "Unable to get the module list" +msgstr "Kan de modulelijst niet opvragen" + +msgid "Other" +msgstr "Anders" + +msgid "Installation Type" +msgstr "Installatie Type" + +msgid "Check Security" +msgstr "Controleer Beveiliging" + +msgid "Storage Setup" +msgstr "Opslag Setup" + +msgid "System Checks" +msgstr "Systeemcontroles" + +msgid "Performing system checks" +msgstr "Systeem controle wordt uitgevoerd" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP versie >= 4.3.0 of >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Fout: Gallery 2 vereist PHP versie 4.3.0 of nieuwer of versie 5.0.4 of nieuwer. U heeft PHP " +"versie %s geïnstalleerd. Neem contact op met de beheerder van uw webserver om om een upgrade " +"te vragen, die op de %sPHP website%s beschikbaar is." + +msgid "PHP Version" +msgstr "PHP Versie" + +msgid "FILE directive supported" +msgstr "FILE directief ondersteund" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Fout: uw PHP __FILE__ directief functioneert niet goed. Vraag ondersteuning bij uw webserver " +"beheerder of in de Gallery fora." + +msgid "FILE Directive" +msgstr "FILE Directief" + +msgid "Safe mode disabled" +msgstr "Safe mode uitgeschakeld" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Fout: uw versie van PHP is ingesteld met safe mode aan. U dient safe mode uit te zetten " +"voordat Gallery zal draaien." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Regular expressions" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Fout: Uw PHP versie is ingesteld zonder ondersteuning voor %sPerl Compatibele Regular " +"Expressions%s. U dient deze functionaliteit aan te zetten voordat Gallery zal draaien." + +msgid "exec() allowed" +msgstr "exec() toegestaan" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Let Op: De exec() functie is door de disabled_functions parameter in uw php.ini " +"uitgezet. U zult niet in staat zijn om modules te gebruiken die externe programma's (bijv. " +"ImageMagick, NetPBM of Ffmpeg) vereisen. Dit kan alleen serverbreed worden ingesteld, dus u " +"dient dit te veranderen in de globale php.ini." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() toegestaan" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Let Op: De set_time_limit() functie is door de disabled_functions parameter in uw php." +"ini uitgezet. Gallery kan functioneren zonder deze instelling, maar zal niet betrouwbaar " +"zijn. Elke actie die dan dan %d seconden duurt zal mislukken (en in sommige gevallen alleen " +"resulteren in een blanco pagina) wat mogelijk kan leiden tot datacorruptie." + +msgid "Filesystem Operations" +msgstr "Beheer Bestandsysteem" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Fout: Essentiële bestandssysteem-functies zijn in uw PHP uitgeschakeld door de " +"disabled_functions parameter in php.ini. U moet deze functies inschakelen om Gallery " +"correct te doen werken. De volgende functies zijn uitgeschakeld: %s." + +msgid "Memory limit" +msgstr "Geheugenlimiet" + +msgid "no limit" +msgstr "geen limiet" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Let Op: uw PHP is ingesteld om het geheugen te beperken tot %sb (memory_limit " +"parameter in php.ini). U dient deze te verhogen tot minstens <>%sMB om Gallery juist te " +"laten functioneren." + +msgid "File uploads allowed" +msgstr "Bestandsuploads toegestaan" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Let Op: uw PHP is ingesteld om bestandsuploads niet toe te staan (file_uploads " +"parameter in php.ini). U dient deze aan te zetten als u bestanden naar uw Gallery wilt " +"uploaden met behulp van een webbrowser." + +msgid "Maximum upload size" +msgstr "Maximale upload grootte" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Let Op: uw PHP is ingesteld om de grootte van de bestandsuploads te beperken tot %sb " +"(upload_max_filesize parameter in php.ini). U dient deze te verhogen om het uploaden " +"van grotere bestanden toe te staan." + +msgid "Maximum POST size" +msgstr "Maximale POST grootte" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Let Op: uw PHP is ingesteld om de postdata te beperken tot een maximum van %sb " +"(max_post_size parameter in php.ini). U dient deze limiet te verhogen om het uploaden " +"van grotere bestanden toe te staan." + +msgid "Translation support" +msgstr "Vertaling ondersteuning" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Uw webserver ondersteund geen lokalizatie. Om ondersteuning voor extra talen aan te zetten, " +"dient u uw systeembeheerder te vragen om PHP in te stellen met de %sgettext%s optie " +"aangeschakeld." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Uw PHP mist de functie %sbind_textdomain_codeset%s. Dit betekend dat Gallery speciale " +"karakters voor sommige talen niet correct kan weergeven." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Uw PHP mist de functie %sdngettext%s. Dit betekend dat Gallery niet in staat is om " +"meervoudsvormen te vertalen." + +msgid "Zend compatibility mode" +msgstr "Zend compatibility modus" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Let Op: uw PHP is ingesteld met de Zend ze1_compatibility_mode welke kan veroorzaken dat PHP " +"crasht. Klik hier om uw PHP te testen. Als u \"SUCCES\" ziet dan is uw " +"PHP ok. Als u een fout of geen reactie krijgt, dan dient u ze1_compatability_mode uit te " +"zetten voordat u doorgaat." + +msgid "putenv() allowed" +msgstr "putenv() toegestaan" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Let Op: De putenv() functie is door de disabled_functions parameter in uw php.ini " +"uitgeschakeld. Gallery kan met deze instelling wel uitgevoerd worden, maar op sommige " +"systemen zonder deze instelling zal Gallery niet in staat zijn om andere talen dan de " +"systeemtaal en Engels te gebruiken." + +msgid "Output buffering disabled" +msgstr "Bufferen van uitvoer uitgeschakeld" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Let Op: Het bufferen van uitvoer is in uw PHP ingeschakeld door de %s parameter(s) in " +"php.ini. Gallery kan functioneren met deze instelling - het downloaden van bestanden is " +"zelfs sneller -, maar Gallerry is mogelijk niet in staat om grote bestanden (bijv. grote " +"videos) aan te bieden en tegen een geheugenlimiet aanlopen. Ook kunnen sommige " +"functionaliteiten, zoals de voortgangs balk niet juist werken als het bufferen van uitvoer " +"is aangezet, tenzij ini_set() is toegestaan." + +msgid "Gallery file integrity" +msgstr "Gallery bestandsintegriteit" + +msgid "Test skipped due to other errors." +msgstr "Test overgeslagen vanwege andere fouten." + +msgid "Theme available" +msgstr "Beschikbaar thema" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Fout: er moet minstens één thema in the %s map aanwezig zijn!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest mist of ontoegankelijk." + +msgid "Welcome" +msgstr "Welkom" + +msgid "Please correct the following errors" +msgstr "Onderstaande fouten dienen verholpen te worden:" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Elke Gallery heeft minimaal één beheerdersgebruiker die volledige toegang heeft om alles " +"weer te geven/veranderen. Kies een gebruikersnaam en wachtwoord voor uw " +"hoofdbeheerdersaccount. U kunt later extra gebruikers toevoegen." + +msgid "Admin username" +msgstr "Gerbuikersnaam beheerder" + +msgid "Please enter a valid user name" +msgstr "Geen een geldige gebruikersnaam op" + +msgid "Please enter a password" +msgstr "Geen een wachtwoord op" + +msgid "Password" +msgstr "Wachtwoord" + +msgid "Setup password" +msgstr "Wachtwoord instellen" + +msgid "(type again)" +msgstr "(type opnieuw)" + +msgid "Admin email address" +msgstr "E-mailadres beheerder" + +msgid "Please enter a valid email address" +msgstr "Geef een geldig E-mailadres op" + +msgid "Admin full name (optional)" +msgstr "Volledige naam beheerder (optioneel)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Missend wachtwoord! Geef hetzelfde wachtwoord twee maal op" + +msgid "The passwords you entered do not match! Please try again." +msgstr "De opgegeven wachtwoorden komen niet overeen! Probeer het opnieuw." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Wanneer u bestaande databasetabellen hergebruikt, dan is dat geen verse installatie. Dit zal " +"alleen het setupwachtwoord veranderen, maar het zal niet het wachtwoord van de site " +"beheerder veranderen. Om het wachtwoord van de site beheerder te veranderen, kunt u het het " +"wachtwoord vergeten mechanisme van Gallery gebruiken." + +msgid "Create" +msgstr "Aanmaken" + +msgid "Save" +msgstr "Opslaan" + +msgid "Admin user info entered successfully." +msgstr "Gebruikersinformatie beheerder succesvol opgegeven." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Om met de installatie verder te gaan dienen we eerst te verifiëren dat u bent wie u claimt " +"dat u bent. De beste manier om hier zeker van te zijn is door u te vragen een kleine " +"verandering in de Gallery directory te maken, waarmee u bewijst dat u de juiste rechten " +"heeft. Daarom gaan we u vragen om een nieuw tekst bestand genaamd login.txt " +"aan te maken in de %s directory op uw webserver (dat is dezelfde directory waar de " +"installatie zich bevindt). Dit bestand dient de volgende willekeurig gegenereerde karakters " +"te bevatten:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Voor uw gemak hebben we een %sjuiste versie van login.txt%s voor u voorbereid. Download deze " +"en kopiëer het naar uw %s directory en dan bent u klaar." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Wanneer u het bestand heeft geupload, klik hieronder om door te gaan." + +msgid "Authenticate Me" +msgstr "Authentiseer Mij" + +msgid "Authentication successful!" +msgstr "Authenticatie succesvol!" + +msgid "Erase data for a clean install" +msgstr "Verwijder data voor een schone installatie" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Weet u zeker dat u alle data in uw Gallery opslagdirectory en alle data in uw Gallery " +"database wilt verwijderen?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Er is een fout opgetreden tijdens het wissen van de database en opslagdirectory. Hier is de " +"fout:" + +msgid "Cancel" +msgstr "Annuleren" + +msgid "Erase all data" +msgstr "Verwijder alle data" + +msgid "Please fix this error and try again." +msgstr "Corrigeer deze fout en probeer opnieuw." + +msgid "Try Again" +msgstr "Probeer Opnieuw" + +msgid "Create a config file" +msgstr "Maak een configuratie bestand" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Nu dienen we alle informatie die u heeft aangeboden te schrijven naar een bestand genaamd " +"config.php in uw %s directory. Dit is een erg belangrijk bestand dat Gallery " +"alle informatie geeft die het nodig heeft om te draaien. Nadat we het aangemaakt hebben, " +"kunt u dit bestand doorlezen en aanpassingen maken als u dat wilt. " + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Voor we verder kunnen gaan, moet je eerst een bestand genaamd config.php in je %" +"s map aanmaken. Je moet er voor zorgen dat de webserver naar deze map mag schrijven " +"(\"write\" permissie)." + +msgid "Unix (with shell access)" +msgstr "Unix (met shell toegang)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Bij Windows is geen speciale handeling nodig." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Als je deze map hebt aangemaakt and de permissies juist hebt ingesteld, kun je verder gaan. " +"Als er problemen optreden, vertellen we je wat te doen." + +msgid "Create config file" +msgstr "Configuratiebestand aanmaken" + +msgid "Config file created successfully." +msgstr "Configuratiebestand succesvol aangemaakt." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"We hebben alle informatie die u heeft aangeleverd geschreven naar een bestand genaamd " +"config.php in uw gallery2 directory. U kunt dit bestand doorlezen en veranderingen " +"maken als u dat wilt. Wees voorzichtig, aangezien wanneer u een fout in dit bestand maakt " +"Gallery niet juist zal functioneren!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Kies een databasetype en geef uw database authenticatieinformatie op. De installatie zal " +"geen database voor u aanmaken, daarom dient u deze zelf aan te maken en de databasenaam hier " +"op te geven. Als u Gallery wilt installeren in een database dat al tabellen bevat, zullen de " +"tabel- en kolomvoorvoegsels ervoor zorgen dat er geen conflicten optreden met hetgeen er al " +"aanwezig is." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Dit is een multisite installatie. Onthoud dat elke multisite zijn eigen database tabellen " +"vereist. Kie ofwel een verschillende database of een verschillend tabel voorvoegsel voor " +"elke multisite!" + +msgid "Database type:" +msgstr "Database type:" + +msgid "DB Hostname:" +msgstr "DB Hostnaam:" + +msgid "DB Username:" +msgstr "DB Gebruikersnaam:" + +msgid "DB Password:" +msgstr "DB Wachtwoord:" + +msgid "DB Name:" +msgstr "DB Naam:" + +msgid "Table Prefix:" +msgstr "Tabel Voorvoegsel:" + +msgid "Column Prefix:" +msgstr "Kolom Voorvoegsel:" + +msgid "We received the following database related errors:" +msgstr "We hebben de volgende aan de database gerelateerde fouten ontvangen:" + +msgid "Erase Data For A Clean Install" +msgstr "Verwijder Data Voor Een Schone Installatie" + +msgid "Reuse Existing Tables" +msgstr "Hergebruik Bestaande Tabellen" + +msgid "Database set up successfully." +msgstr "Database is succesvol opgezet." + +msgid "Finished!" +msgstr "Voltooid!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Gefeliciteerd! Uw Gallery 2 installatie is voltooid! Kijk... dat was niet eens zo moeilijk? " +"Nu is het tijd om foto's te uploaden!" + +msgid "Go to my Gallery!" +msgstr "Ga naar mijn Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"U kunt nu naar uw nieuwe Gallery gaan. Geef de URL voor %smain.php%s in uw %s directory op " +"in uw browser." + +msgid "Installer Help" +msgstr "Installatie Help" + +msgid "Start Over" +msgstr "Start Opnieuw" + +msgid "Error installing Gallery Core" +msgstr "Fout bij het installeren van Gallery Core" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Er is iets misgegaan bij een poging om de core module te installeren. Wat nu te doen?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Ga naar de Systeemcontroles stap van de installer en zorg ervoor dat alle controlers " +"'Succesvol' laten zien. Een veel voorkomend probleem is dat de " +"bestandsintegriteitswaarschuwing is genergeerd." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Als er geen waarschuwingen of mislukkingen in de Systeemcontroles stap zijn, leeg dan uw " +"opslagdirectory en verwijder de database tabellen en start het installatie een tweede maal " +"(herhaal alle stappen)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Bezoek de %sG2 FAQ%s en lees de %sKnown issues sectie van de Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Als het probleem blijft optreden, kopiëer dan de installatie log welke is opgeslagen op %s " +"en voeg deze toe (als install.log.zip) aan een nieuw forum topic in het %sG2 " +"ondersteuningsforum%s, of indien mogelijk voeg alleen een link naar de install.log in het " +"forum topic zodat de mensen van de ondersteuning deze indien nodig kunnen analyseren." + +msgid "Stack Trace:" +msgstr "Stack Trace" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery Core succesvol geïnstalleerd" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"We hebben de kern van Gallery succesvol geïnstalleerd. Alhoewel alles vanaf nu zal werken, " +"zou u door moeten gaan met de installatie en een aantal van de optionele modules toevoegen. " +"Hiermee kunt u de juiste functionaliteit verkrijgen die u voor uw Gallery installatie wilt." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"De volgende modules kunnen automatisch voor u geïnstalleerd en geactiveerd worden. U dient " +"minstens één van de grafische toolkits te installeren, anders kan Gallery geen miniaturen " +"aanmaken vanuit uw afbeeldingen. Op de meeste systemen zal de automatische installatie goed " +"voor u werken, alhoewel deze in sommige situaties zal mislukken. U kunt altijd nieuwe " +"modules activeren of een hieronder gekozen module deactiveren vanuit de Site Beheer pagina. " +"Dus elke beslissing die u hier maakt is niet permanent." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Bij sommige modules kan het automatisch installeren mislukken. Dat is ok. Dit betekend " +"doorgaans dat deze extra configuratie vereisen, wat u kunt doen op de Site Beheer pagina." + +msgid "Name" +msgstr "Naam" + +msgid "Version" +msgstr "Versie" + +msgid "Description" +msgstr "Omschrijving" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Niet compatibel met deze Gallery versie)" + +msgid "(un)check all" +msgstr "(de)selecteer alles" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Ga door naar Stap %d zonder activeren»" + +msgid "Activate Selected Modules" +msgstr "Activeer Geselecteerde Modules" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"De %s module is geïnstalleerd, maar behoeft configuratie om te worden geactiveerd" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Meld u aan als beheerder na het voltooien van deze installatie en ga naar Site Beheer. Ga " +"naar de Modules weergave en configureer de hieronder weergegeven modules." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "De %s modules is succesvol geactiveerd" + +msgid "Activate More Modules" +msgstr "Activeer Meer Modules" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Ga door naar Stap %d»" + +msgid "Debug Output" +msgstr "Debug Uitvoer" + +msgid "Welcome to the Gallery Installer" +msgstr "Welkom bij de Gallery Installatie" + +#, c-format +msgid "Install %d%% complete" +msgstr "Installatie %d%% voltooid" + +msgid "Redo this step" +msgstr "Deze stap overdoen" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: uw foto's op uw website" + +#, c-format +msgid "Missing files (%d)" +msgstr "Missende bestanden (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Let op: u voert Gallery uit vanuit SVN, daarom kunnen recent verwijderde bestanden hier " +"verschijnen. U kunt deze veilig negeren." + +#, c-format +msgid "Modified files (%d)" +msgstr "Gewijzigde bestanden (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Let op: u voert Gallery uit vanuit SVN en daarom kunt u hier een aantal gewijzigde bestanden " +"verwachten. U kunt deze waarschijnlijk zonder veilgheidsproblemen negeren, maar om daar " +"helemaal zeker van te zijn te zijn, dient u 'svn update' uit te voeren voordat u doorgaat." + +#, c-format +msgid "Old files (%d)" +msgstr "Oude bestanden (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Deze bestanden maken niet langer deel uit van Gallery. Waarschijnlijk veroorzaken ze geen " +"problemen, maar het zou goed zijn om deze te verwijderen, om uw installatie schoon te houden." + +msgid "Errors occurred. Please see messages below." +msgstr "Er zijn fouten opgetreden. Zie hieronder" + +msgid "Please select the installation type" +msgstr "Selecteer het installatie type" + +msgid "Standard installation" +msgstr "Standaardinstallatie" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Dit is het standaard installatie type. Kies dit installatie type als u een niuewe Gallery in " +"een wilt installeren in de %s directory welke toegankelijk zal zijn met de URL %s." + +msgid "Multisite installation" +msgstr "Multisite installatie" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery ondersteunt meerdere onafhankelijke sites vanuit één enkele installatie van de code. " +"Kies dit installatie type als u een nieuwe Gallery wilt installeren op dezelfde webserver, " +"maar in een verschillend pad, subdomein of URL domein." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"De multisites delen geen albums, foto's, gebruikers of iets anders. Zij hebben ieder hun " +"eigen database en opslagdirectory nodig. Voor meer informatie en uitleg over Multisite " +"installatie, bezoek de %s pagina." + +msgid "You must enter a directory" +msgstr "U dient een directory op te geven" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"De opgegeven directory is de programmacode directory. Als u Gallery wilt installeren in de " +"programmacode directory, kies het standaard installatie type. Als u een multisite wilt " +"installeren, kies een andere directory." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"De map die je opgegeven hebt, bestaat niet of de toegang wordt door de configuratie van de " +"webserver niet toegestaan. Je webserver is zo ingesteld, dat je alleen toegang tot de " +"volgende mappen hebt. Je moet of één van deze mappen kiezen, of je moet de instelling van de " +"open_basedir wijzigen in je PHP-configuratie om het aanmaken van een nieuwe map toe " +"te staan." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Als de installatie van je \"multisite zich in een andere virtuele host bevindt, moet je je " +"systeembeheerder verzoeken de instelling van je open_basedir zodanig te wijzigen dat " +"de virtuele hosts voor elkaar toegankelijk worden." + +msgid "The directory you entered does not exist" +msgstr "De opgegeven directory bestaat niet" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"De opgegeven directory is niet toegankelijk. Wijzig de rechten, zodat de webserver deze " +"directory kan lezen." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Kan de multisite bestanden niet aanmaken. Zorg dat de bestanden hieronder schrijfbaar zijn." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Alle multisites zijn geïnstalleerd vanuit deze centrale programmacode (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Geef de directory voor de nieuwe multisite hieronder op. Het pad moet anders zijn dan zijn " +"programmacode installatie pad:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"De volgende directory dient schrijfbaar te zijn voor uw webserver/php gebruiker of dient de " +"volgende schrijfbare bestanden te bevatten:" + +msgid "Select Directory" +msgstr "Kies Directory" + +msgid "Multisite directory setup successfully." +msgstr "Multisite directory succesvol ingesteld." + +msgid "Standard installation selected." +msgstr "Standaardinstallatie geselecteerd." + +msgid "Install Steps" +msgstr "Installatie Stappen" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"We willen er zeker van zijn dat uw Gallery veilig is. Het config.php bestand dat door deze " +"installatie bewerkt is heeft rechten die andere mensen toestaat naar dit bestand te " +"schrijven. Dit is vereist aangezien de installatie zich voordoet als een \"ander persoon\" " +"wanneer het gaat om Unix rechten. Daarom dient u voordat u klaar bent de rechten van dit " +"bestand te veranderen, zodat andere gebruikers hier niet naar kunnen schrijven. Op dit " +"moment heeft uw config.php een modus van %s. We raden u aan om het volgende te doen:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"We willen er zeker van zijn dat uw Gallery veilig is. De directory die uw bestand config.php " +"bevat dat door deze installatie bewerkt is heeft rechten die andere mensen toestaan " +"bestanden te schrijven of verwijderen. Daarom dient u voordat u klaar bent de rechten van " +"deze directory te veranderen, zodat andere gebruikers hier niet naar kunnen schrijven. We " +"raden u aan om dit te doen:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Als u echt wilt doorgaan, dan kan dat. Maar we raden u aan dat u wat extra tijd neemt om er " +"zeker van te zijn dat het veilig is." + +msgid "We've verified that your config.php is secure." +msgstr "We hebben geverifieerd dat uw config.php veilig is." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Lees de %1$sGallery Security Guide%3$s. Neem de tijd om de %2$skorte checklist%3$s in de " +"guide door te nemen." + +msgid "Check Again" +msgstr "Controleer Opnieuw" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery heeft een map nodig om je afbeeldingen op te slaan. De directory die wij standaard " +"voor je aanmaken zal werken. Maar zijn locatie en huidige naam garanderen geen optimale " +"beveiliging. Maak of een nieuwe map aan buiten de %sdocument root%s map of voeg een " +"willekeurig aantal tekens toe aan de naam van de map (bijvoorbeeld %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Voor de maximale beveiliging moet u een map aanmaken die niet vanaf het %sinternet " +"toegankelijk%s is. Indien dit niet mogelijk is wordt u aangeraden de naam van de huidige map " +"in een willekeurige andere te wijzigen." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Of je nu voor de met willekeurige tekens aangepaste naam kiest of de huidige map wenst te " +"gebruiken, bevestig alsjeblieft je keuze." + +msgid "Yes, please omit the security check:" +msgstr "Ja, sla alsjeblieft de veiligheidscontrole over:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Dit is de multisite installatie. Onthoud dat elke multisite zijn eigen opslag directory " +"vereist." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Als u een moderne browser gebruikt, zullen we proberen om elk opgegeven pad automatisch aan " +"te vullen. Dus als u problemen heeft om het juiste pad naar uw g2data directory te vinden, " +"experimenteer dan met de paden in het tekstvak hieronder en zie welke aanvullingen het voor " +"u biedt." + +msgid "The directory you entered is read only" +msgstr "De opgegeven directory is alleen te lezen" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Er een fout opgetreden bij het aanmaken van de directory structuur binnen de opslagdirectory." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Uw map voor het opslaan van bestanden is %sweb toegankelijk%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Kan niet verifiëen of uw map voor bestandsopslag niet %sweb toegangkelijk%s is." + +msgid "Directory path:" +msgstr "Directory pad:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"De gebruikte webserver moet schrijftoegang hebben in deze directory. Zie onderstaande " +"voorbeelden om te realiseren." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Let op: dit zijn slechts voorbeelden! Het kan zijn dat deze niet helemaal juist werken op uw " +"systeem." + +msgid "Unix (with ftp access)" +msgstr "Unix (met ftp toegang)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Let er op dat ftpservers en -clients kunnen verschillen, waardoor deze instructies in uw " +"geval niet werken. Raadpleeg de handleiding van uw FTP client of neem contact op met uw " +"systeembeheerder als u hier problemen mee heeft" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"In sommige webhostingomgevingen zijn de paden die u in de shell of via FTP ziet niet " +"hetzelfde als wat PHP ziet. Om uit te zoeken wat het echte pad naar uw data directory is, " +"kunt u proberen een PHP script aan te maken in uw datadirectory, genaamd dir.php, dat " +"de volgende code bevat." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"zoek daarna uit wat de URL is naar dir.php en open het in uw webbrowser (bijv. %s). Dit zal " +"u vertellen wat het exacte pad isi dat u hier kunt opgeven." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Let op: Dit vereist dat uw datadirectory toegankelijk is via het web, wat we niet " +"aanraden omdat het onze afbeeldingenfirewall omzeilt. Wanneer u op deze manier het pad weet, " +"raden wij u aan om uw datadirectory buiten het gebied dat web-toegankelijk is te verplaatsen " +"en daarna het pad hier te veranderen." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Let op: Vergeet niet om dir.php te verwijderen als u klaar bent!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "Lees de %sbeveiligings Info%s, over hoe de Gallery storage directory te beveiligen." + +msgid "Storage directory set successfully." +msgstr "Opslagdirectory succesvol ingesteld." + +msgid "Success" +msgstr "Succesvol" + +msgid "Warning" +msgstr "Let Op" + +msgid "Failed" +msgstr "Mislukt" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Als u Apache gebruikt, maak een bestand aan genaamd .htaccess in de hoofddirectory van " +"Gallery met de volgende inhoud:" + +msgid "Version Check" +msgstr "Versie Controle" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Dit is geen schone installatie en de geïnstalleerde versie komt niet overeen met de nieuwe " +"versie." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "De geïnstalleerde versie kan niet opgewaardeerd worden naar de nieuwe versie!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"De geïnstalleerde versie is ouder dan de nieuwe versie. U dient de opwaardeerder uit te " +"voeren en niet de installatie!" + +msgid "Currently installed" +msgstr "Op dit moment geïnstalleerd" + +msgid "New version" +msgstr "Nieuwe versie" + +msgid "Go to the Upgrader!" +msgstr "Ga naar de Opwaardeerder!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"U dient nu naar de opwaardeerder te gaan. Geef de URL voor in uw browser op voor %s/upgrade/" +"index.php%s in uw %s directory." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"In %d stappen wordt Gallery 2 op Uw webserver geinstalleerd. Deze installatie zal U door " +"deze stappen leiden en biedt hulp tijdens dit proces als extra stappen benodigd zijn om Uw " +"Gallery werkend te krijgen. Wanneer een stap voltooid is, kunt U op elk moment terug gaan en " +"veranderingen maken. Raadpleeg het %sInstallatie Help Bestand%s voordat U verder gaat." + +msgid "Select Language:" +msgstr "Kies een taal:" + +msgid "Go" +msgstr "Gaan" + +msgid "Begin Installation»" +msgstr "Begin Installatie»" + +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL (2005 of nieuwer)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Gallery Core succesvol geïnstalleerd" + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Gefeliciteerd, we hebben het Gallery raamwerk succesvol geïnstalleerd.Hoe dan ook, de " +#~ "meeste te gekke Gallery functionaliteiten komen van additionele modules de u kunt " +#~ "installeren en configureren. De volgende stap zal u door het proces loodsen waarbij u " +#~ "modules kunt installeren, waarmee u Gallery kunt afstemmen naar uw behoeften." + +#~ msgid "Install More Modules" +#~ msgstr "Meer Modules Installeren" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Voordat we verder kunnen gaan, dient u een bestand in uw %s directory aan te maken " +#~ "genaamd config.php. U dient ervoor te zorgen dat de webserver in staat is hiernaar " +#~ "te schrijven. Als u Unix gebruikt kunt u dit doen door chmod 666 config.php uit te " +#~ "voeren. Onder Windows hoeft u niets speciaals te doen. Als u dit bestand heeft aangemaakt " +#~ "met de juiste rechten kunt u doorgaan. Als er een probleem is, zullen we u aangeven hoe u " +#~ "dit kunt oplossen." + +#~ msgid "Install Other Modules" +#~ msgstr "Installeer Andere Modules" + +#~ msgid "" +#~ "Gallery needs a directory to store your images. The directory we chose for you will work, " +#~ "but is web accessible." +#~ msgstr "" +#~ "Gallery heeft een directory nodig waarin deze de afbeeldingen kan opslaan. De huidige " +#~ "directory is toegangkelijk vanaf het internet, echter deze kan wel gebruikt worden." + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (niet goed getest)" diff --git a/Source/gallery2/install/po/no.po b/Source/gallery2/install/po/no.po new file mode 100644 index 0000000..1a2a10e --- /dev/null +++ b/Source/gallery2/install/po/no.po @@ -0,0 +1,1348 @@ +# $Id: no.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Sverre M. Vikan +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-02-15 09:26+0100\n" +"PO-Revision-Date: 2006-12-15 13:40+0100\n" +"Last-Translator: Sverre M. Vikan \n" +"Language-Team: Norwegian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Ukjent" + +msgid "Admin User Setup" +msgstr "Oppsett av administratorbruker" + +msgid "admin" +msgstr "administrator" + +msgid "Gallery Administrator" +msgstr "Galleriadministrator" + +msgid "Authenticate" +msgstr "Autentiser" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Feil: kunne ikke finne login.txt. Vennligst legg den i katalogen %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Feil: Din login.txt er ikke lesbar. Vennligst gi Gallery lesetilganger til " +"filen." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Feil: Nøkkelen i login.txt stemmer ikke. Vennligst last ned en ny " +"autentiseringstekst nedenfor og forsøk igjen." + +msgid "Create Config File" +msgstr "Opprett oppsettfil" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Kunne ikke skrive til oppsettfilen config.php i katalogen %s. Vennligst endre filens " +"tilganger. Du kan kjøre chmod 666 config.php for å reparere dette om du bruker Unix." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Filen config.php finnes ikke i katalogen %s" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Filen config.php finnes men er ikke skrivbar. Du må kanskje slå av fildeling for config.php " +"og endre tilgangene manuelt om din tjener bruker Windows." + +msgid "Database Setup" +msgstr "Databaseoppsett" + +msgid "You must have the MySQL PHP module installed" +msgstr "Du må ha PHP-modulen MySQL installert" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Du må ha PHP-modulen MySQL Improved installert" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Du må ha PHP-modulen ibm_db2 installert" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Du må ha PHP-modulen PostgreSQL installert" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Du må ha PHP-modulen Oracle OCI8 installert" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Du må ha PHP-modulen Component Object Model(COM) installert" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Du må oppgi et kolonneprefiks (vi anbefaler %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Bruk kun bokstaver, tall og understreker i kolonneprefikset" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Du må angi et tabellprefiks (vi anbefaler %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Bruk kun bokstaver, tall og understreker i tabellprefikset" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Kan ikke opprette en databaseforbindelse av typen %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Kan ikke koble til databasen med den informasjonen du oppga." + +msgid "The database you specified does not exist. Please create it." +msgstr "Databasen du oppga finnes ikke. Vennligst opprett den." + +msgid "The database privileges test did not complete successfully." +msgstr "Privilegiumstesten av databasen ble ikke fullført." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Gallerytabeller finnes allerede i denne databasen! Men det er ingen «versions.dat»-fil i G2s " +"lagringskatalog, noe vi tolker som en ødelagt installasjon av G2. Enten må du opprette en " +"versions.dat-fil i det rette formatet om du mener G2 fremdeles skulle virke, eller velge en " +"ren installasjon, noe som vil slette all data i databasen og i lagringskatalogen." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2s lagringskatalog har en versions.dat-fil fra en eldre installasjon, men Gallerys " +"databasetabeller finnes ikke. Velg ren installasjon for å slette all data i Gallerys " +"lagringskatalog og gå videre til neste trinn." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Det finnes allerede Gallerytabeller i databasen, og det er en versions.dat-fil i Gallerys " +"lagringskatalog, men de installerte databasetabellenes versjon stemmer ikke med den " +"installerte dataenes versjon i lagringskatalogen. Velg ren installasjon for å slette all " +"data i databasen og i lagringskatalogen og for å gå til neste trinn." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Det finnes allerede tabeller fra Gallery i databasen, og lagringskatalogen til Gallery " +"virker intakt. Velg enten å gjenbruke de eksisterende databasetabellene og den eksisterende " +"lagringskatalogen eller velg en ren installasjon for å slette all eksisterende data i " +"databasen og lagringskatalogen." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Kunne ikke kjøre den nødvendige API-en for å slette lagringskatalogen. Vennligst slett " +"Gallerys lagringskatalog manuelt." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Kunne ikke kjøre den nødvendige API-en for å fjerne Gallerys databasetabeller. Vennligst " +"fjern Gallerys database manuelt." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Kunne ikke laste G2s API. Vennligst fjern Gallerys databasetabeller og lagringskatalog " +"manuelt." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a og nyere)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versjoner før v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x og nyere" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i og nyere)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x og nyere)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 og nyere" + +msgid "Unknown DB type or no known tables information." +msgstr "Ukjent DB-type eller ingen kjent tabellinformasjon." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Kunne ikke finne et ubrukt tabellprefiks som ligner på «%s»." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Kunne ikke åpne skjemafil: «%s»." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Opprettelse av testsekvens for DB mislyktes. Kontroller feilmeldingen og README.html for " +"manglende rettigheter og rens opp i databasen." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Sletting av testsekvens for DB mislyktes. Kontroller feilmeldingen og README.html for " +"manglende rettigheter og rens opp i databasen." + +msgid "Missing SQL statements" +msgstr "Manglende SQL-uttrykk" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Kontroller feilmeldingen og README.html for manglende rettigheter og rens opp i databasen." + +msgid "Finish Installation" +msgstr "Fullfør installasjonen" + +msgid "Install Gallery Core" +msgstr "Installer Gallerykjernen" + +msgid "Installing the core module" +msgstr "Installerer kjernemodulen" + +msgid "Unable to initialize our Gallery data" +msgstr "Kan ikke klargjøre Gallerydata" + +msgid "Unable to communicate with the database" +msgstr "Kan ikke kommunisere med databasen" + +msgid "Unable to load the core module" +msgstr "Kan ikke laste kjernemodulen" + +msgid "Unable to install the core module" +msgstr "Kan ikke installere kjernemoulen" + +msgid "Unable to activate the core module" +msgstr "kan ikke aktivere kjernemodulen" + +msgid "Unable to commit database transaction" +msgstr "Kan ikke utføre databasetransaksjon" + +msgid "Core module is only partially installed." +msgstr "Kjernemodulen er bare delvis installert." + +msgid "Install Plugins" +msgstr "Installer programtillegg" + +msgid "Unable to initialize our Gallery session" +msgstr "Kan ikke klargjøre Galleryøkt" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Kan ikke laste modulen %s" + +msgid "Installing modules" +msgstr "Installerer moduler" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Kan ikke installere modulen %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Kan ikke aktivere modulen %s" + +msgid "Unable to get the module list" +msgstr "Kan ikke hente modullisten" + +msgid "Other" +msgstr "Annet" + +msgid "Installation Type" +msgstr "Installasjonstype" + +msgid "Check Security" +msgstr "Kontroller sikkerhet" + +msgid "Storage Setup" +msgstr "Lagringsoppsett" + +msgid "System Checks" +msgstr "Systemkontroller" + +msgid "Performing system checks" +msgstr "Utfører systemkontroller" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP versjon >=4.3.0 eller >=5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Feil: Gallery 2 påkrever PHP versjon 4.3.0 eller nyere eller 5.0.4 eller nyere. Du har PHP " +"versjon %s installert. Kontakt din nettjeneradministrator for å be om en oppgradering, som " +"er tilgjengelig på %sPHPs nettsted%s." + +msgid "PHP Version" +msgstr "PHP versjon" + +msgid "FILE directive supported" +msgstr "FILE-direktiv støttet" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Feil: Ditt PHP __FILE__-direktiv fungerer ikke riktig. Vennligst be om brukerstøtte fra din " +"nettjeneradministrator eller i Gallerys forum." + +msgid "FILE Directive" +msgstr "FILE-direktiv" + +msgid "Safe mode disabled" +msgstr "Sikker modus deaktivert" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Feil: Din versjon av PHP er satt opp med sikker modus (safe mode) aktivert. Du må slå av " +"sikker modus før Gallery kan kjøre." + +msgid "Safe Mode" +msgstr "Sikker modus" + +msgid "Regular expressions" +msgstr "Regulære uttrykk" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Feil: Din PHP er satt opp uten støtte for %sPerl Compatible Regular Expressions%s. Du må " +"aktivere disse funksjonene før Gallery vil kjøre." + +msgid "exec() allowed" +msgstr "exec() tillatt" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Advarsel: Funksjonen exec()er deaktivert i din PHP med parameteret disabled_functions " +"i php.ini. Det vil ikke være mulig å benytte moduler som krever eksterne programmer (f.eks. " +"ImageMagick, NetPBM eller FFMPEG). Dette kan bare velges på tjenersiden, så du blir nødt til " +"å endre det i den globale php.ini." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() tillatt" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Advarsel: Funksjonen set_time_limit() er deaktivert i din PHP med parameteret " +"disable_functions i php.ini. Gallery kan fungere uten denne innstillingen, men vil " +"ikke jobbe stabilt. Enhver operasjon som tar lengre enn %d sekunder vil mislykkes (og i noen " +"tilfeller gi en blank side) og muligens lede til ødelagte filer." + +msgid "Filesystem Operations" +msgstr "Filsystemoperasjoner" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Feil: Essensielle filsystemoperasjoner er deaktiverte i din PHP av " +"parameteretdisabled_fucntions i php.ini. Du må tillate disse funksjonene før Gallery " +"vil kjøre. Disse funksjonene mangler: %s." + +msgid "Memory limit" +msgstr "Minnebegrensning" + +msgid "no limit" +msgstr "ingen begrensning" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Advarsel: Din PHP er satt opp til å begrense minnet til %s B (parameteret memory_limit i php.ini). Du bør øke denne grensen til minst %s MiB for at Gallery skal operere " +"riktig." + +msgid "File uploads allowed" +msgstr "Filopplastinger er tillatt" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Advarsel: Din PHP er satt opp til å ikke tillate filopplasting (parameteret file_uploads i php.ini). Du vil måtte aktivere dette valget om du ønsker å laste opp filer til ditt " +"galleri gjennom en nettleser." + +msgid "Maximum upload size" +msgstr "Største opplastingsstørrelse" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Advarsel: Din PHP er satt opp til å begrense størrelsen på filopplastinger til %s B " +"(parameteret upload_max_filesize i php.ini)l. Du bør øke denne grensen for å tillate " +"opplasting av større filer." + +msgid "Maximum POST size" +msgstr "Største POST-størrelse" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Advarsel: Din PHP er satt opp til å begrense post-data til %s B. (parameteret " +"post_max_size i php.ini). Du bør øke denne grensen for å tillate opplasting av større " +"filer." + +msgid "Translation support" +msgstr "Støtte for oversettelser" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Din nettjener støtter ikke lokaltilpasning. Vennligst be din systemadministrator om å sette " +"opp PHP på nytt med valget %sgettext%s aktivert for å aktivere støtte for flere språk." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Din PHP mangler funksjonen %sbind_textdomain_codeset%s. Dette betyr at Gallery kan vise " +"utvidede tegn for noen språk feil." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Din PHP mangler funksjonen %sdngettext%s. Dette betyr at Gallery ikke vil kunne oversette " +"flertallsformer." + +msgid "Zend compatibility mode" +msgstr "Zend kompatibilitetsmodus" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Advarsel: Din PHP er satt opp med ze1_compatibility_mode, noe som kan få PHP til å bryte " +"sammen. Test din PHP. Om du ser «VELLYKKET» er din PHP ok. Om du får en " +"feilmelding eller ingen respons må du slå av ze1_compatibility_mode før du fortsetter." + +msgid "putenv() allowed" +msgstr "putenv() tillatt" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Advarsel: Funksjonen putenv() er deaktivert i din PHP av parameteret disabled_functions i php.ini. Gallery kan fungere med denne innstillingen, men på noen sjeldne systemer vil " +"Gallery være ute av stand til å kjøre på andre språk en systemspråket og engelsk." + +msgid "Output buffering disabled" +msgstr "Mellomlagring av utdata er deaktivert" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Advarsel: Mellomlagring av utdata er aktivert i din PHP med parameteret %s i php.ini. " +"Gallery kan fungere med denne innstillingen - nedlasting av filer er raskere - men Gallery " +"kan være ute av stand til å betjene store filer (f.eks. store filmer) og treffe " +"minnebegrensningen. Noen funksjoner, så som fremdriftsvisere, behøver ikke fungere korrekt " +"om mellomlagring av utdata er aktivert, med mindre ini_set() er tillatt." + +msgid "Gallery file integrity" +msgstr "Filintegritet for Gallery" + +msgid "Test skipped due to other errors." +msgstr "Test hoppet over grunnet andre feil." + +msgid "Theme available" +msgstr "Tema tilgjengelig" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Feil: Det må være minst ett tema i mappen %s!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest mangler eller er ikke tilgjengelig." + +msgid "Welcome" +msgstr "Velkommen" + +msgid "Please correct the following errors" +msgstr "Vennligst rett opp disse feilene" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Ethvert galleri vil ha minst én administratorbruker som har full tilgang til å se/endre alt. " +"Vennligst velg et brukernavn og passord for din hovedadministratorkonto. Du kan legge til " +"flere brukere senere." + +msgid "Admin username" +msgstr "Administratorbrukernavn" + +msgid "Please enter a valid user name" +msgstr "Vennligst skriv inn et gyldig brukernavn" + +msgid "Please enter a password" +msgstr "Vennligst skriv inn et passord" + +msgid "Password" +msgstr "Passord" + +msgid "Setup password" +msgstr "Oppsettpassord" + +msgid "(type again)" +msgstr "(skriv inn igjen)" + +msgid "Admin email address" +msgstr "E-postadresse for administrator" + +msgid "Please enter a valid email address" +msgstr "Vennligst skriv inn en gyldig e-postadresse" + +msgid "Admin full name (optional)" +msgstr "Administrators fulle navn (valgfritt)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Passord mangler! Vennligst skriv inn det samme passordet to ganger" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Passordene du skrev inn stemmer ikke overens! Vennligst forsøk igjen." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Ettersom du gjenbruker eksisterende databasetabeller er dette ikke en ny installasjon. Dette " +"vil kun endre innstillingspassordet, men ikke endre passordet til nettstedadministratoren. " +"For å endre nettstedadministratorens passord må du bruke Gallerys funksjon for glemt passord." + +msgid "Create" +msgstr "Opprett" + +msgid "Save" +msgstr "Lagre" + +msgid "Admin user info entered successfully." +msgstr "Vellykket innskriving av brukerinfo for administrator" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Vi må bekrefte at du er den du påstår for å fortsette installasjonen. Den beste måten å " +"gjøre dette på er å be deg gjøre en liten endring i Gallerykatalogen, noe som vil bevise at " +"du har de rette tilgangene. Vi må be deg opprette en ny tekstfil kalt login.txt i katalogen %s på din nettjener (det er den samme katalogen som main.php " +"ligger i). Den må inneholde følgende tilfeldige tegn:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Som en bekvemmelighet for deg har vi klargjort en %sriktig versjon av login.txt%s. Last den " +"ned og kopier den til katalogen %s, og alt er i orden." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Trykk nedenfor for å fortsette når du har lastet opp filen." + +msgid "Authenticate Me" +msgstr "Autentiser meg" + +msgid "Authentication successful!" +msgstr "Vellykket autentisering!" + +msgid "Erase data for a clean install" +msgstr "Slett data for en ren installasjon" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Er du helt sikker på at du ønsker å slette all data i Gallerys lagringskatalog og all data i " +"Gallerys database?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Det oppstod en feil under sletting av databasen og lagringskatalogens data. Her er feilen:" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "Erase all data" +msgstr "Slett all data" + +msgid "Please fix this error and try again." +msgstr "Vennligst reparer denne feilen og forsøk igjen." + +msgid "Try Again" +msgstr "Prøv igjen" + +msgid "Create a config file" +msgstr "Opprett en oppsettfil" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Vi må nå skrive ut all den informasjonen du oppga til en fil kalt config.php i " +"katalogen %s. Dette er en veldig viktig fil som gir Gallery all den informasjon som " +"er nødvendig for å fungere. Etter at vi har opprettet den kan du lese gjennom denne filen og " +"gjøre endringer i den om du ønsker." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Før vi kan fortsette må du opprette filen config.php i katalogen %s. Du må " +"sørge for at nettjeneren kan skrive til den." + +msgid "Unix (with shell access)" +msgstr "Unix (med shell-tilgang)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "I Windows skal du ikke behøve å gjøre noe spesielt." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Når du har opprettet filen og satt de rette tilgangene kan du fortsette. Om det oppstår et " +"problem forteller vi deg hva du må gjøre." + +msgid "Create config file" +msgstr "Opprett oppsettfil" + +msgid "Config file created successfully." +msgstr "Vellykket opprettelse av oppsettfil." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Vi har skrevet ut all den informasjonen du oppga til en fil kalt config.php i din " +"Gallery 2-katalog. Du kan lese gjennom denne filen og gjøre endringer i den om du ønsker. " +"Vær forsiktig, dog -- om du gjør noe galt i den filen vil ikke Gallery fungere ordentlig!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Vennligst velg din databasetype og skriv inn autentiseringsinformasjonen til databasen. " +"Installereren vil ikke opprette databasen for deg, så du må opprette en selv og skrive inn " +"databasenavnet her. Om du installerer Gallery i en database som allerede har tabeller i seg " +"vil tabell- og kolonneprefiksene holde Gallery fra å lage konflikter med det du allerede har." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Dette er en flersiders installasjon. Husk at hver flerside krever sine egne " +"databasetabeller. Velg enten en annen database eller et annet tabellprefiks for hver " +"flerside!" + +msgid "Database type:" +msgstr "Databasetype:" + +msgid "DB Hostname:" +msgstr "Databasevertsnavn:" + +msgid "DB Username:" +msgstr "Databasebrukernavn:" + +msgid "DB Password:" +msgstr "Databasepassord:" + +msgid "DB Name:" +msgstr "Databasenavn:" + +msgid "Table Prefix:" +msgstr "Tabellprefiks:" + +msgid "Column Prefix:" +msgstr "Kolonneprefiks:" + +msgid "We received the following database related errors:" +msgstr "Vi mottok følgende databaserelaterte feil:" + +msgid "Erase Data For A Clean Install" +msgstr "Slett data for en ren installasjon" + +msgid "Reuse Existing Tables" +msgstr "Gjenbruk eksisterende tabeller" + +msgid "Database set up successfully." +msgstr "Vellykket oppsett av database." + +msgid "Finished!" +msgstr "Fullført!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Gratulerer! Din installasjon av Gallery 2 er fullført! Det var ikke så vanskelig, var det " +"vel? Nå er det tid for å laste opp noen bilder!" + +msgid "Go to my Gallery!" +msgstr "Gå til mitt galleri!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Du kan nå gå til ditt nye galleri. Skriv inn nettadressen til %smain.php%s i katalogen %s i " +"din nettleser." + +msgid "Installer Help" +msgstr "Installasjonshjelp" + +msgid "Start Over" +msgstr "Start på nytt" + +msgid "Error installing Gallery Core" +msgstr "Feil ved installasjon av Gallerykjerne" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Noe gikk galt når vi forsøkte å installere kjernemodulen. Hva vil du gjøre nå?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Gå til Systemsjekk-delen av installereren og sørg for at alle kontrollene viser «Vellykket». " +"En vanlig sak er at filintegritetsadvarselen er oversett." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Om det ikke er noen advarsler eller mislyktes i Systemsjekk-delen, tøm lagringskatalogen " +"din, slett databasetabellene og start installasjonsprosedyren på nytt (gjør alle trinnene om " +"igjen)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "Vennligst besøk %sG2 FAQ-en%s og les seksjonen %sKjente problemer i Readme-filen%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Vennligst kopier installasjonsloggen som ligger i %s og legg den ved (som install.log.zip) " +"til et nytt forumemne i %sG2s brukerstøtteforum%s om problemet vedvarer, eller, om mulig, " +"legg ved en lenke til install.log i forumemnet slik at brukerstøtte kan analysere den om " +"nødvendig." + +msgid "Stack Trace:" +msgstr "Stabelsporing:" + +msgid "Installed Gallery Core successfully." +msgstr "Vellykket installasjon av Gallerykjernen." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Vi har gjort en vellykket installasjon av Gallerykjernen. Selv om alt vil fungere nå, bør du " +"fortsette med installasjonen og legge inn noen av de valgfrie modulene slik at du kan få de " +"funksjonene du ønsker for din installasjon av Gallery." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Følgende moduler kan installeres og aktiveres automatisk for deg. Du bør installere minst én " +"av grafikkverktøyene, ellers kan ikke Gallery opprette miniatyrbilder av dine bilder. Den " +"automatiske installasjonen vil fungere riktig for deg på de fleste systemer, men kan i noen " +"tilfeller mislykkes. Du kan alltid aktivere nye moduler eller deaktivere de du velger her i " +"Nettstedadministrasjonen, så valg du gjør her er ikke varige." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Noen moduler kan mislykkes i å installeres automatisk. Det er ok. Det betyr som regel at de " +"behøver noe oppsett, noe du kan gjøre under nettstedadministrasjonen." + +msgid "Name" +msgstr "Navn" + +msgid "Version" +msgstr "Versjon" + +msgid "Description" +msgstr "Beskrivelse" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Ikke kompatibel med denne versjonen av Gallery)" + +msgid "(un)check all" +msgstr "(De-)marker alle" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Fortsett til trinn %d uten å aktivere»" + +msgid "Activate Selected Modules" +msgstr "Aktiver valgte moduler" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modulen %s ble installert men må settes opp før den kan aktiveres." + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Logg inn som administrator og gå til nettstedadministrasjon etter å ha fullført denne " +"installasjonen. Gå til Moduler og sett opp modulene som er listet opp over." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Vellykket aktivering av modulen %s" + +msgid "Activate More Modules" +msgstr "Aktiver flere moduler" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Fortsett til trinn %d»" + +msgid "Debug Output" +msgstr "Feilrettingsutdata" + +msgid "Welcome to the Gallery Installer" +msgstr "Velkommen til Galleryinstallereren" + +#, c-format +msgid "Install %d%% complete" +msgstr "Installasjon %d%% fullført" + +msgid "Redo this step" +msgstr "Gjør dette trinnet på nytt" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: Dine bilderditt nettsted" + +#, c-format +msgid "Missing files (%d)" +msgstr "Manglende filer (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Merknad: Du kjører Gallery fra SVN, så nylig flyttede filer kan opptre her. Det kan være " +"trygt å se bort fra disse." + +#, c-format +msgid "Modified files (%d)" +msgstr "Endrede filer (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Merknad: Du kjører Gallery fra SVN, så enkelte endrede filer er å forvente. Du kan " +"sannsynligvis se bort fra disse, men for å være sikker bør du forsikre deg om at du kjører " +"«svn update» før du fortsetter." + +#, c-format +msgid "Old files (%d)" +msgstr "Gamle filer (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Disse filene er ikke lenger en del av Gallery. De vil sannsynligvis ikke utgjøre et problem, " +"men det er en god idé å fjerne dem for å holde installasjonen din ren." + +msgid "Errors occurred. Please see messages below." +msgstr "Feil oppstod: Vennligst se meldinger nedenfor." + +msgid "Please select the installation type" +msgstr "Vennligst velg installasjonstype" + +msgid "Standard installation" +msgstr "Standardinstallasjon" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Dette er standard installasjonstype. Velg denne installasjonstypen om du ønsker å installere " +"et nytt galleri i katalogen %s, som vil være tilgjengelig med nettadressen %s." + +msgid "Multisite installation" +msgstr "Flerstedsinstallasjon" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery kan støtte flere uavhengige nettsteder med en enkelt installasjon av koden. Velg " +"denne installasjonstypen om du ønsker å installere et nytt galleri på samme nettjeneren men " +"i en annen sti, subdomene eller domene." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Flersteder deler ikke album, bilder, brukere eller noe annet. De behøver alle hver sin " +"database og sin egen lagringskatalog. For mere informasjon og forklaringer om " +"flerstedinstallasjoner, besøk siden %s." + +msgid "You must enter a directory" +msgstr "Du må srkive inn en katalog" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Katalogen du skrev inn er kodebasekatalogen. Om du ønsker å installere et galleri i " +"kodebasekatalogen, velg standard installasjonstype. Om du ønsker å installere et flersted, " +"velg en annen katalog." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Katalogen du oppga eksisterer ikke, eller den er utilgjengelig grunnet nettjeneroppsettet. " +"Nettjeneren din er satt opp til å bare tillate tilgang til følgende kataloger. Du må velge " +"en katalog under en av disse, eller du må endre innstillingen open_basedir i PHP-" +"oppsettet for å tillate en ny katalog." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Om din flersidersinstallasjon er på en annen virtuell vert må du kontakte din systemadmin og " +"be om at de setter opp innstillingen open_basedir slik at dine virtuelle verter kan " +"få tak i hverandre." + +msgid "The directory you entered does not exist" +msgstr "Katalogen du skrev inn finnes ikke" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Katalogen du skrev inn er ikke tilgjengelig. Endre tilgangene slik at nettjeneren kan lese " +"denne katalogen." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "Kunne ikke opprette flerstedsfiler. Sørg for at filene nedenfor er skrivbare." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Alle flersteder installeres fra dette sentrale kodelageret (kodebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Skriv inn katalogen for det nye flerstedet nedenfor. Stien må være forskjellig fra " +"kodebasens installasjonsadresse:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Katalogen må være skrivbar av din nettjener/php-bruker eller inneholde følgende skrivbare " +"filer:" + +msgid "Select Directory" +msgstr "Velg katalog" + +msgid "Multisite directory setup successfully." +msgstr "Vellykket oppsett av flerstedskatalog." + +msgid "Standard installation selected." +msgstr "Standardinstallasjon valgt." + +msgid "Install Steps" +msgstr "Installasjonstrinn" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Vi ønsker å forsikre oss om at ditt galleri er sikkert. Filen config.php som denne " +"installereren har redigert har tilganger som tillater andre mennesker å skrive til den. " +"Dette er påkrevd fordi installereren kvalifiserer som et «annet menneske» når det kommer til " +"filtilganger i Unix. Før du avslutter bør du endre tilgangene til denne filen slik at andre " +"brukere ikke kan skrive til den. Akkurat nå har din config.php modusene %s. Vi foreslår at " +"du gjør dette:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Vi ønsker å forsikre oss om at ditt galleri er sikkert. Katalogen som inneholder din config." +"php som denne installereren har redigert har tilganger som gjør at andre mennesker kan " +"skrive eller slette filer. Før du avslutter bør du endre tilgangene til denne katalogen slik " +"at andre brukere ikke kan skrive til den. Vi foreslår at du gjør dette:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Om du virkelig ønsker å fortsette, så kan du det, men vi anbefaler at du bruker et ekstra " +"øyeblikk for å forsikre deg om at du er trygg." + +msgid "We've verified that your config.php is secure." +msgstr "Vi har bekreftet at din config.php er sikker." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Vennligst les %1$sGallerys sikkerhetsguide%3$s. Se på den %2$skorte sjekklisten%3$s innenfor " +"sikkerhetsguiden for et raskt overblikk." + +msgid "Check Again" +msgstr "Kontroller igjen" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery trenger en katalog å lagre bildene dine i. Katalogen vi valgte for deg vil virke, " +"men plasseringen eller det nåværende navnet gir ikke full sikkerhet. Velg enten en ny " +"katalog utenfor %sdokumentroten%s eller legg til en tilfeldig tekst på slutten av " +"katalognavnet (f.eks. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"For største sikkerhet bør du velge en katalog som ikke er %stilgjengelig fra nett%s. Om " +"dette ikke er mulig, oppgi et tilfeldig navn på katalogen." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Venligst bekreft valget ditt om du velger et tilfeldig navn eller foretrekker å beholde den " +"oppgitte katalogen." + +msgid "Yes, please omit the security check:" +msgstr "Ja, vennligst utelat sikkerhetskontrollen:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Dette er en flerstedinstallasjon. Husk at hvert flersted krever sin egen lagringskatalog." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Om du bruker en moderne nettleser vil vi forsøke å automatisk fullføre enhver sti du skriver " +"inn her. Om du har problemer med å finne den rette stien til din g2data-katalog, forsøk å " +"eksperimentere med stier i tekstboksen nedenfor og se hvilke automatiske fullføringer den " +"tilbyr deg." + +msgid "The directory you entered is read only" +msgstr "Katalogen du skrev inn er skrivebeskyttet" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Det oppstod en feil under opprettelsen av katalogstrukturen innen lagringskatalogen." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Lagringskatalogen din er %stilgjengelig fra nett%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Kunne ikke bekrefte at lagringskatalogen ikke er %stilgjengelig fra nett%s." + +msgid "Directory path:" +msgstr "Katalogsti:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Nettjeneren din må kunne skrive til denne katalogen. Du kan følge disse eksemplene for å få " +"det til å virke." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Merknad: Dette er bare eksempler! Det kan hende de ikke virker ordentlig på ditt system." + +msgid "Unix (with ftp access)" +msgstr "Unix (med ftp-tilgang)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Merk at FTP-tjenere og -klienter varierer, så disse instruksjonene trenger ikke virke for " +"deg. Konsulter manualen for din FTP-klient eller snakk med en systemadministrator for hjelp " +"med dette om du har problemer." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"I noen nettjenermiljøer er ikke stiene du ser i shell eller via FTP de samme stiene som PHP " +"ser. For å finne ut den virkelige stien til din lagringskatalog kan du forsøke å opprette et " +"PHP-skript kalt dir.php som inneholder følgende kode og legg den i din datakatalog." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"finn så ut nettadressen til dir.php og åpne den i din nettleser(f.eks. %s). Dette vil " +"fortelle deg den nøyaktige stien å skrive inn her." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Merknad: Dette påkrever at din datakatalog er tilgjengelig fra nettet, noe vi ikke " +"anbefaler fordi det omgår vår bildebrannvegg. Så snart du finner ut stien på denne måten " +"anbefaler vi at du flytter din datakatalog ut av ditt nettilgjengelige område og så " +"oppdaterer katalogen hit samsvarende." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Merknad: Ikke glem å slette dir.php når du er ferdig!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Vennligst les %sSikkerhetsguiden%s for informasjon om hvordan du sikrer dit galleris " +"lagringskatalog." + +msgid "Storage directory set successfully." +msgstr "Vellykket valg av lagringskatalog." + +msgid "Success" +msgstr "Vellykket" + +msgid "Warning" +msgstr "Advarsel" + +msgid "Failed" +msgstr "Mislykket" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Opprett en fil kalt .htaccess i galleriets hovedkatalog med følgende innhold om du bruker " +"Apache:" + +msgid "Version Check" +msgstr "Kontroll av versjon" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Dette er ikke en ny installasjon og den installerte versjonen passer ikke med den nye " +"versjonen." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Den installerte versjonen kan ikke oppgraderes til den nye versjonen!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Den installerte versjonen er eldre enn den nye versjonen. Du bør kjøre oppgradereren, og " +"ikke installereren." + +msgid "Currently installed" +msgstr "For øyeblikket installert" + +msgid "New version" +msgstr "Ny versjon" + +msgid "Go to the Upgrader!" +msgstr "Gå til oppgradereren!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Du bør nå gå til oppgradereren. Skriv i nettleseren din inn nettadressen til %s/upgrade/" +"index.php%s i din katalog %s." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Å installere Gallery 2 på din nettjenere krever %d trinn. Denne installereren vil føre deg " +"gjennom disse trinnene og gi deg assistanse på veien om flere trinn er nødvendig for å få " +"din installasjon av Gallery opp og kjøre. Så snart et trinn er gjennomført kan du gå tilbake " +"og gjøre endringer underveis. Vennligst les %sInstallererens hjelpefil%s før du fortsetter." + +msgid "Select Language:" +msgstr "Velg språk:" + +msgid "Go" +msgstr "Gå" + +msgid "Begin Installation»" +msgstr "Start installasjonen»" diff --git a/Source/gallery2/install/po/pl.po b/Source/gallery2/install/po/pl.po new file mode 100644 index 0000000..a69e5e1 --- /dev/null +++ b/Source/gallery2/install/po/pl.po @@ -0,0 +1,1361 @@ +# $Id: pl.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"POT-Creation-Date: 2006-02-23 10:15+0100\n" +"PO-Revision-Date: 2006-12-27 16:34+0100\n" +"Last-Translator: Kappana \n" +"Language-Team: Polish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? " +"1 : 2);\n" +"X-Poedit-Language: Polish\n" +"X-Poedit-Country: POLAND\n" + +msgid "Unknown" +msgstr "Nieznany" + +msgid "Admin User Setup" +msgstr "Ustawienia administratora" + +msgid "admin" +msgstr "administrator" + +msgid "Gallery Administrator" +msgstr "Administrator galerii" + +msgid "Authenticate" +msgstr "Autoryzacja" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Błąd: Nie można zlokalizować pliku login.txt. Proszę umieścić ten plik w " +"katalogu %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Błąd: Nie można czytać z pliku login.txt. Proszę nadać galerii prawa do " +"czytania tego pliku." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Błąd: Plik login.txt zawiera błędny klucz. Proszę pobrać nowy klucz " +"autoryzacyjny i spróbować ponownie." + +msgid "Create Config File" +msgstr "Tworzenie pliku konfiguracyjnego" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Plik config.php znajdujący się w katalogu %s nie ma uprawnień zapisu. Proszę to " +"zmienić. W przypadku używania systemu Unix wystarczy uruchomić komendę chmod 666 config." +"php." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "W katalogu %s nie istnieje plik config.php" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Plik config.php istnieje, ale nie jest on zapisywalny. W przypadku serwera Windows, można " +"wyłączyć udostępnianie pliku confiog.php lub ustawić jego uprawnienia ręcznie." + +msgid "Database Setup" +msgstr "Ustawienia bazy danych" + +msgid "You must have the MySQL PHP module installed" +msgstr "Konieczne jest zainstalowanie modułu PHP: MySQL" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Konieczne jest zainstalowanie modułu PHP: MySQL Improved" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Konieczne jest zainstalowanie modułu PHP: ibm_db2" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Konieczne jest zainstalowanie modułu PHP: PostgreSQL" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Konieczne jest zainstalowanie modułu PHP: Oracle OCI8" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Konieczne jest zainstalowanie modułu PHP: Component Object Model(COM)" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Proszę określić przedrostek kolumny (zalecamy %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "W przedrostku kolumny można używać tylko litery, liczby i podkreśliniki" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Proszę określić przedrostek kolumny (zalecamy %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "W przedrostku tabeli można używać tylko litery, liczby i podkreśliniki" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Nie można ustanowić połączenia z bazą danych typu %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Nie można ustanowić połączenia z bazą danych na podstawie podanych informacji" + +msgid "The database you specified does not exist. Please create it." +msgstr "Podana baza danych nie istnieje. Proszę ją stworzyć." + +msgid "The database privileges test did not complete successfully." +msgstr "Test uprawnień bazy danych nie został zakończony poprawnie." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"W bazie danych istnieją już tabele galerii, jednak ze względu na brak pliku 'version.dat' w " +"katalogu składowania galerii, status G2 interpretowany jest jako zepsuty. Proszę odtworzyć " +"prawidłowy plik versions.dat, jeśli galeria powinna nadal działać poprawnie lub wybrać opcję " +"czystej instalacji, która skasuje wszystkie dane z bazy danych i wszystkie pliki z katalogu " +"składowania galerii. " + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"W katalogu składowania galerii znajduje się plik versions.dat zawierający informacje o " +"starej instalacji. Jednakże informacje te nie pokrywają się z bazą danych G2 nie zawierającą " +"aktualnie żadnych tabel galerii. Proszę wybrać czystą instalację, w celu skasowania " +"wszystkich danych z katalogu składowania galerii i przejść do następnego kroku." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"W bazie danych istnieją odpowiednie tabele, jak również w katalogu składowania istnieje " +"odpowiedni plik versions.dat. Jednakże zainstalowana wersja wersja tabel galerii nie jest " +"zgodna z wersją plików w katalogu składowania. Proszę wybrać czystą instalację, w celu " +"skasowania wszystkich danych z katalogu składowania galerii i przejść do następnego kroku." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"W bazie danych istnieją odpowiednie tabele, jak również pliki w katalogu składowania wydają " +"się kompletne i poprawne. Proszę wybrać czy użyć ponownie istniejących tabel i istniejącego " +"katalogu, czy też przeprowadzić czystą instalację i skasować wszystkie dane." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Nie można uruchomić wymaganego API do czyszczenia katalogu składowania. Proszę ręcznie " +"wyczyścić katalog składowania galerii." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Nie można uruchomić wymaganego API do usuwania tabel bazy danych galerii. Proszę ręcznie " +"wyczyścić bazę danych galerii." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Nie można załadować G2 API. Proszę ręcznie wyczyścić tabele bazy danych i katalog " +"składowania galerii." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a i nowsze)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (wersje przed v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x i nowsze" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i i nowsze)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x i nowsze)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 i nowszy" + +msgid "Unknown DB type or no known tables information." +msgstr "Nieznany typ bazy danych lub brak odpowiednich tabel." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Nie można znaleźć nieużywanego przedrostka tabeli podobnego do \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Nie można otworzyć pliku schematu: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nieudane stworzenie sekwencji testowej bazy danych. Proszę sprawdzić zwrócone komunikaty " +"błędów i README.html dla brakujących uprawnień, a następnie wyczyścić bazę danych." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nieudane usunięcie sekwencji testowej bazy danych. Proszę sprawdzić zwrócone komunikaty " +"błędów i README.html dla brakujących uprawnień, a następnie wyczyścić bazę danych." + +msgid "Missing SQL statements" +msgstr "Brakujące komunikaty SQL" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Proszę sprawdzić zwrócone komunikaty błędów i README.html dla brakujących uprawnień, a " +"następnie wyczyścić bazę danych." + +msgid "Finish Installation" +msgstr "Kończenie instalacji" + +msgid "Install Gallery Core" +msgstr "Instalacja modułu głównego" + +msgid "Installing the core module" +msgstr "Instalowanie modułu głównego" + +msgid "Unable to initialize our Gallery data" +msgstr "Nie można zainicjować sesji galerii" + +msgid "Unable to communicate with the database" +msgstr "Nie można ustanowić połączenia z bazą danych" + +msgid "Unable to load the core module" +msgstr "Nie można załadować modułu głównego" + +msgid "Unable to install the core module" +msgstr "Nie można zainstalować modułu głównego" + +msgid "Unable to activate the core module" +msgstr "Nie można aktywować modułu głównego " + +msgid "Unable to commit database transaction" +msgstr "Nie można ustanowić połączenia z bazą danych" + +msgid "Core module is only partially installed." +msgstr "Moduł główny zostal tylko częściowo zainstalowany." + +msgid "Install Plugins" +msgstr "Instalacja modułów" + +msgid "Unable to initialize our Gallery session" +msgstr "Nie można zainicjować sesji galerii" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Nie można załadować modułu %s" + +msgid "Installing modules" +msgstr "Instalowanie modułów" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Nie można zainstalować modułu %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Nie można aktywować modułu %s" + +msgid "Unable to get the module list" +msgstr "Nie można pobrać listy modułów" + +msgid "Other" +msgstr "Inny" + +msgid "Installation Type" +msgstr "Typ instalacji" + +msgid "Check Security" +msgstr "Sprawdzanie bezpieczeństwa" + +msgid "Storage Setup" +msgstr "Ustawienia katalogu składowania" + +msgid "System Checks" +msgstr "Sprawdzanie systemu" + +msgid "Performing system checks" +msgstr "Sprawdzanie systemu" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "Wersja PHP >= 4.3.0 or >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Gallery 2 wymaga wersji PHP 4.3.0 lub nowszej albo 5.0.4 lub nowszej. Zainstalowana wersja " +"PHP to %s. Należy skontaktować się z administratorem serwera WWW i poprosić go o " +"aktualizację do nowszej wersji, dostępnej w %switrynie PHP%s." + +msgid "PHP Version" +msgstr "Wersja PHP" + +msgid "FILE directive supported" +msgstr "Wspierana dyrektywa FILE" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Błąd: Dyrektywa __FILE__ w zainstalowanym PHP nie działa poprawnie. Proszę skontaktować się " +"z administratorem serwera WWW lub zgłosić problem na forum Gallery 2." + +msgid "FILE Directive" +msgstr "Dyrektywa FILE" + +msgid "Safe mode disabled" +msgstr "Tryb bezpieczny wyłączony" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Błąd: Zainstalowana wersja PHP działa w trybie bezpiecznym. Należy go wyłączyć przed " +"uruchomieniem galerii." + +msgid "Safe Mode" +msgstr "Tryb bezpieczny" + +msgid "Regular expressions" +msgstr "Wyrażenia regularne" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Błąd: PHP działa z wyłączoną obsługą %sPerl Compatible Regular Expressions%s (wyrażenia " +"regularne zgodne z językiem Perl). Należy ją włączyć przed uruchomieniem galerii." + +msgid "exec() allowed" +msgstr "exec() dozwolony" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Ostrzeżenie: Funkcja exec() została wyłączona w zainstalowanym PHP za pomocą parametru " +"disabled_functions w pliku php.ini. W związku z tym nie będzie możliwe używanie " +"modułów wymagających zewnętrznych binariów (np. ImageMagick, NetPBM czy Ffmpeg). Można " +"zmienić te ustawienia dla całego serwera, edytując globalny plik php.ini." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() dozwolony" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Ostrzeżenie: Funkcja set_time_limit() została wyłaczona w zainstalowanym PHP za pomocą " +"parametru disabled_functions w pliku php.ini. Galeria może funkcjonować z tym " +"ustawieniem, ale działanie może nie być stabilne. Żadna operacja zajmująca więcej czasu niż " +"%d sekund(y) nie powiedzie się (w pewnych przypadkach wyświetli pustą stronę), jak również " +"może prowadzić do utraty danych." + +msgid "Filesystem Operations" +msgstr "Podstawowe funkcje operacyjne" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Błąd: Podstawowe funkcje operacyjne zostały wyłączone w zainstalowanym PHP za pomocą " +"parametru disabled_functions w pliku php.ini. Przed uruchomieniem galerii konieczne " +"jest włączenie następujących brakujących funkcji: %s." + +msgid "Memory limit" +msgstr "Limit pamięci" + +msgid "no limit" +msgstr "bez ograniczeń" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Ostrzeżenie: Aktualna konfiguracja PHP ogranicza dostępną pamięć do %sb (parametr " +"memory_limit w pliku php.ini). Aby galeria działała poprawnie należy zwiększyć ten " +"limit do co najmniej %sMB." + +msgid "File uploads allowed" +msgstr "Wysyłanie plików dozwolone" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Ostrzeżenie: Aktualna konfiguracja PHP nie pozwala na wysyłanie plików (parametr " +"file_uploads w pliku php.ini). Aby wysyłanie plików do galerii za pomocą przeglądarki " +"internetowej było możliwe, należy włączyć tę opcję." + +msgid "Maximum upload size" +msgstr "Maksymalny rozmiar wysyłanego pliku" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Ostrzeżenie: Aktualna konfiguracja PHP nie pozwala na wysyłanie plików większych niż %sb " +"(parametr upload_max_filesize w pliku php.ini). Aby umożliwić wysyłanie większych " +"plików, należy zwiększyć ten limit." + +msgid "Maximum POST size" +msgstr "Maksymalny rozmiar POST" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Ostrzeżenie: Aktualna konfiguracja PHP nie pozwala na wysyłanie danych większych niż %sb " +"(parametr post_max_size w pliku php.ini). Należy zwiększyć ten limit, aby umożliwić " +"wysyłanie większych plików." + +msgid "Translation support" +msgstr "Wsparcie dla lokalizacji" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Serwer WWW nie wspiera lokalizacji. Aby dodać obsługę dodatkowych języków, należy poprosić " +"administratora systemu o włączenie opcji %sgettext%s w konfiguracji PHP." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"W zainstalowanym PHP brakuje funkcji %sbind_textdomain_codeset%s. Oznacza to, że Gallery " +"może nieprawidłowo wyświetlać znaki diakrytyczne niektórych języków." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"W zainstalowanym PHP brakuje funkcji %sdngettext%s. Oznacza to, że Gallery nie będzie mogło " +"tłumaczyć liczby mnogiej." + +msgid "Zend compatibility mode" +msgstr "Tryb komatybilności z Zend" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Ostrzeżenie: W aktualnej konfiguracji PHP włączony jest tryb Zend ze1_compatibility_mod, " +"który może powodować błędy w PHP. Kliknij tutaj, aby sprawdzić PHP. " +"Jeśli pojawi się napis \"SUKCES\", konfiguracja jest poprawna. Jeśli wyświetli się błąd, " +"należy wyłączyć ze1_compatibility_mode przed przejściem do kolejnego kroku." + +msgid "putenv() allowed" +msgstr "putenv() dozwolony" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Ostrzeżenie: Funkcja putenv() została wyłaczona w zainstalowanym PHP za pomocą parametru " +"disabled_functions w pliku php.ini. Gallery 2 może funkcjonować z tym ustawieniem, " +"ale na pewnych rzadkich systemach Gallery 2 może nie być w stanie przyjąć innego języka niż " +"język systemowy i angielski." + +msgid "Output buffering disabled" +msgstr "Buforowanie wyłączone" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Ostrzeżenie: Buforowanie zostało wyłaczone w zainstalowanym PHP za pomocą parametru %s w pliku php.ini. Gallery 2 może funkcjonować z tym ustawieniem - pobieranie plików jest " +"wtedy szybsze - jednakże Gallery 2 może mieć problemy z obsługą większych plików (np. filmy " +"video). Jak również, pewne funkcje takie jak pasek postępu może nie działać prawidłowo jeśli " +"buforowanie jest włączone, chyba, że ini_set() jest dozwolony." + +msgid "Gallery file integrity" +msgstr "Spójność plików galerii" + +msgid "Test skipped due to other errors." +msgstr "Test pominięty ze względu na błędy" + +msgid "Theme available" +msgstr "Temat dostępny" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Błąd: Wymagany jest przynajmniej jeden temat w folderze %s!" + +msgid "Manifest missing or inaccessible." +msgstr "Zaznacz brakujące i niedostępne" + +msgid "Welcome" +msgstr "Wstęp" + +msgid "Please correct the following errors" +msgstr "Proszę poprawić następujące błędy" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Każda galeria musi posiadać przynajmniej jednego administratora, który będzie posiadał pełny " +"dostęp do przeglądania i modyfikacji wszystkich elementów galerii. Proszę wybrać nazwę " +"użytkownika i hasło dla głównego konta administratora. Dodatkowych użytkowników będzie można " +"dodać później." + +msgid "Admin username" +msgstr "Nazwa administratora" + +msgid "Please enter a valid user name" +msgstr "Proszę wprowadzić prawidłową nazwę użytkownika" + +msgid "Please enter a password" +msgstr "Proszę wprowadzić hasło" + +msgid "Password" +msgstr "Hasło" + +msgid "Setup password" +msgstr "Ustawienia hasła" + +msgid "(type again)" +msgstr "(wprowadź ponownie)" + +msgid "Admin email address" +msgstr "Adres e-mail administratora" + +msgid "Please enter a valid email address" +msgstr " Proszę wprowadzić prawidłowy adres e-mail" + +msgid "Admin full name (optional)" +msgstr "Pełna nazwa administratora (opcjonalnie)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Brak hasla! P roszę wprowadzić to samo haslo dwukrotnie" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Wprowadzone hasła nie są jednakowe! Proszę spróbować ponownie." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Ponieważ została wybrana opcja zachowania istniejących tabel, nie będzie to czysta " +"instalacja. Zmienione zostanie tylko hasło galerii. Hasło administratora pozostanie bez " +"zmian. Aby je zmienić, można skorzystać z funkcjonalności galerii 'Zapomniane hasło'." + +msgid "Create" +msgstr "Utwórz" + +msgid "Save" +msgstr "Zapisz" + +msgid "Admin user info entered successfully." +msgstr "Dane administratora zostały wprowadzone prawidłowo." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Aby kontynuować odzyskiwanie hasła konieczna jest weryfikacja posiadanych uprawnień. W tym " +"celu, proszę stworzyć w katalogu głównym galerii (%s) nowy plik login.txt zawierający następujący ciąg losowo wygenerowanych znaków:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Można też pobrać przygotowany przez galerię prawidłowy plik %slogin.txt%s, a następnie " +"skopiować go do katalogu %s." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Jak tylko plik zostanie przesłany, proszę kliknąć poniższy przycisk." + +msgid "Authenticate Me" +msgstr "Zautoryzuj" + +msgid "Authentication successful!" +msgstr "Autoryzacja zakończona sukcesem!" + +msgid "Erase data for a clean install" +msgstr "Usuń dane w celu uzyskania czystej instalacji" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Proszę potwierdzić usunięcie wszystkich informacji z bazy danych galerii jak również " +"wszystkich plików z katalogu składowania galerii." + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Wystąpił następujący błąd podczas czyszczenia bazy danych i katalogu składowania galerii:" + +msgid "Cancel" +msgstr "Anuluj" + +msgid "Erase all data" +msgstr "Usuń wszystkie dane" + +msgid "Please fix this error and try again." +msgstr "Proszę poprawić błąd i spróbować ponownie." + +msgid "Try Again" +msgstr "Spróbuj ponownie" + +msgid "Create a config file" +msgstr "Stwórz plik konfiguracyjny" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Galeria zapisze wszystkie podane informacje do pliku config.php znajdującym się w " +"katalogu %s. Plik ten jest niezbędny do poprawnego działania galerii. Stworzony " +"plik może być czytany i modyfikowany zależnie od potrzeby." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Przed kontynuowaniem procesu instalacji, proszę stworzyć w katalogu %s plik o nazwie " +"config.php. Proszę również upewnić się, że serwer WWW ma prawa zapisu do tego pliku." + +msgid "Unix (with shell access)" +msgstr "Unix (z dostępem shell)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Na serwerze Windows, nie powinno być potrzeby dodatkowych ustawień." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Po stworzeniu pliku i nadaniu uprawnień, proces instalacji może być kontynuowany. Jeśli " +"pojawi się problem, galeria podpowie co zrobić aby poprawić błąd." + +msgid "Create config file" +msgstr "Stwórz plik konfiguracyjny " + +msgid "Config file created successfully." +msgstr "Plik konfiguracyjny został utworzony." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Wszystkie podane informacje zostały zapisane w katalogu głównym galerii w pliku config." +"php. Plik ten może być czytany i modyfikowany zależnie od potrzeby. Jednakże proszę " +"uważać -- w razie pomyłki galeria może przestać działać poprawnie!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Proszę podać typ bazy danych oraz wprowadzić dane niezbędne do autoryzacji w bazie danych. " +"Uwaga: instalator nie tworzy bazy danych, baza danych powinna być już założona. Jeśli " +"galeria instalowana jest w istniejącej bazie danych posiadającej już tabele, przedrostki " +"tabel i kolumn pozwolą oddzielić dane galerii od istniejących danych." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"To jest instalacja multisite. Proszę pamiętać, że każda galeria z osobna potrzebuje swoją " +"bazę danych. Proszę wybrać inną bazę danych lub ustawić inny przedrostek dla każdej galerii " +"multisite!" + +msgid "Database type:" +msgstr "Typ bazy danych:" + +msgid "DB Hostname:" +msgstr "Nazwa serwera bazy danych:" + +msgid "DB Username:" +msgstr "Nazwa użytkownika bazy danych:" + +msgid "DB Password:" +msgstr "Hasło do bazy danych:" + +msgid "DB Name:" +msgstr "Nazwa bazy danych:" + +msgid "Table Prefix:" +msgstr "Przedrostek tabeli:" + +msgid "Column Prefix:" +msgstr "Przedrostek kolumny:" + +msgid "We received the following database related errors:" +msgstr "Otrzymano następujące błędy związane z bazą danych:" + +msgid "Erase Data For A Clean Install" +msgstr "Usuń dane w celu uzyskania czystej instalacji" + +msgid "Reuse Existing Tables" +msgstr "Użyj ponownie istniejące tabele" + +msgid "Database set up successfully." +msgstr "Baza danych została założona" + +msgid "Finished!" +msgstr "Zakończono!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "Gratulacje! Instalacja galerii została zakończona!" + +msgid "Go to my Gallery!" +msgstr "Przejdź do galerii" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Można teraz przejść do nowej galerii. W tym celu w przeglądarce WWW proszę dopisać %smain." +"php%s do adresu %s." + +msgid "Installer Help" +msgstr "Pomoc instalatora" + +msgid "Start Over" +msgstr "Zacznij od nowa" + +msgid "Error installing Gallery Core" +msgstr "Błąd podczas instalowania modułu głównego" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Coś poszło nie tak podczas instalowania modułu głównego galerii. Co dalej?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Proszę przejść do kroku instalatora 'Sprawdzanie systemu' i upewnić się, że przy wszystkich " +"pozycjach pojawiło się słowo 'Sukces'. Ostrzeżenie przy pozycji 'Spojność plików galerii' " +"można zignorować." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Jeśli w kroku sprawdzania systemu nie pojawiły się żadne ostrzeżenia lub błędy, należy " +"wyczyścić katalog składowania galerii, usunąć tabele z bazy danych, a następnie ponownie " +"przeprowadzić cały proces instalacji (Zacznij od nowa)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Więcej informacji znajduje się w %sG2 FAQ%s w sekcji %sZnane problemy (Known issues)%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Jeśli problem będzie się powtarzać, proszę skopiować log instalacyjny zlokalizowany w %s i " +"załączyć go (jako install.log.zip) do nowego tematu na %sforum Gallery%s lub jeśli to " +"możliwe, dodać w temacie link do pliku install.log, tak aby zespół wsparcia Gallery mógł go " +"w razie potrzeby przeanalizować." + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Instalowanie modułu głównego galerii zostało zakończone." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Moduł główny galerii został zainstalowany. Od tego momentu wszystko powinno dzialać " +"poprawnie, aczkolwiek zalecane jest kontynuowanie instalacji i aktywowanie kilku dodatkowych " +"modułów wzbogacających galerię w nowe funkcjonalności." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Następujące moduły mogą być automatycznie zainstalowane i zaktywowane. Aby możliwe było " +"generowanie miniaturek zdjęć, konieczne jest zainstalowanie przynajmniej jednego narzędzia " +"graficznego. Na większości systemów instalacja automatyczna powinna przebiegać bez " +"zakłóceń. Jednakże, w niektórych przypadkach mogą pojawić się problemy. Zarówno nowe jak i " +"istniejące moduły w każdej chwili mogą być zaktywowane i zdeaktywowane w panelu " +"administracyjnym, tak więc decyzja nie musi być podejmowana teraz." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Dla niektórych modulów instalacja automatyczna może nie być możliwa. Zazwyczaj oznacza to, " +"że moduły te wymagają dodatkowej konfiguracji w panelu administracyjnym." + +msgid "Name" +msgstr "Nazwa" + +msgid "Version" +msgstr "Wersja" + +msgid "Description" +msgstr "Opis" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Niekompatybilne z tą wersją galerii)" + +msgid "(un)check all" +msgstr "zaznacz/odznacz wszystko" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Przejdź do kroku %d bez aktywowania»" + +msgid "Activate Selected Modules" +msgstr "Aktywuj wybrane moduły" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"Moduł %s został zainstalowany, ale wymaga jeszcze dodatkowej konfiguracji, aby " +"możliwa była aktywacja" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Po zakończeniu instalacji, proszę zalogować się jako administrator, otworzyć panel " +"administracyjny i przejść do zakładki Moduły w celu przejrzenia i konfiguracji " +"powyżej wylistowanych modułów." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Moduł %s został zaktywowany" + +msgid "Activate More Modules" +msgstr "Zaktywuj więcej modułów" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Przejdź do kroku %d»" + +msgid "Debug Output" +msgstr "Debug Output" + +msgid "Welcome to the Gallery Installer" +msgstr "Witaj w instalatorze Gallery 2" + +#, c-format +msgid "Install %d%% complete" +msgstr "Postęp instalacji: %d%%" + +msgid "Redo this step" +msgstr "Powtórz ten krok" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: your photos on your website" + +#, c-format +msgid "Missing files (%d)" +msgstr "Brakujące pliki (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Uwaga: Galeria uruchamiana jest z SVN, w związku z czym mogą się tu pojawić ostatnio " +"usunięte pliki. Można to jednak zignorować." + +#, c-format +msgid "Modified files (%d)" +msgstr "Zmienione pliki (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Uwaga: Galeria uruchamiana jest z SVN, w związku z czym mogą można założyć, że pewne pliki " +"zostały w międzyczasie zmienione. Można to zignorować, jednakże bezpieczniej jest upewnić " +"się przed kontynuacją instalacji, że została uruchomiona komenda 'svn update'." + +#, c-format +msgid "Old files (%d)" +msgstr "Stare pliki (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Poniższe pliki nie stanowią już części Gallery 2. Pozostawienie ich nie powinno wpłynąć na " +"działanie Gallery 2, ale warto je usunąć, aby utrzymać czystą instalację." + +msgid "Errors occurred. Please see messages below." +msgstr "Wystąpił błąd. Proszę sprawdzić wiadomości poniżej." + +msgid "Please select the installation type" +msgstr "Proszę wybrać typ instalacji" + +msgid "Standard installation" +msgstr "Instalacja standardowa" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"To jest domyślny typ instalacji. Proszę wybrać ten typ, jeśli ma być zainstalowana nowa " +"galeria w katalogu %s. Galeria ta będzie dostępna pod adresem %s." + +msgid "Multisite installation" +msgstr "Instalacja multisite" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Galeria może wspierać wiele niezależnych stron www korzystając z jednej instalacji kodu. " +"Proszę wybrać ten typ instalacji, jeśli ma być zainstalowana nowa galeria na tym samym " +"serwerze WWW, ale w innej ścieżce, poddomenie lub z innym adresem URL." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Galeria typu multisite nie współdzieli albumów, zdjęć, użytkowników ani nic innego. " +"Wszystkie galerie potrzebują swoich własnych baz danych i katalogu składowania. Aby uzyskać " +"więcej informacji na temat instalacji typu multisite proszę odwiedzić stronę %s." + +msgid "You must enter a directory" +msgstr "Proszę wprowadzić katalog" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Wybrany katalog znajduje się w katalogu z instalacyjnym kodem bazowym. W przypadku, gdy jest " +"to wybór zamierzony, proszę wybrać typ instalacji standardowy. Jeśli jednak instalacja ma " +"być typu multisite, proszę wybrać inny katalog." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Wybrany katalog nie istnieje lub nie ma ustawionych praw dostępu dla serwera WWW. Serwer " +"WWW został skonfigurowany tak, aby mieć dostęp tylko do następujących katalogów. Proszę " +"wybrać katalog z listy poniżej lub zmodyfikować ustawienie open_basedir w " +"konfiguracji PHP, aby umożliwić dostęp do nowego katalogu." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Jeśli instalacja typu multisite jest przeprowadzana na innym wirtualnym hoście, proszę " +"skontaktować się z administratorem systemu w celu skonfigurowania ustawienia " +"open_basedir w ten sposob, aby wirualne hosty miały dostęp do siebie nawzajem." + +msgid "The directory you entered does not exist" +msgstr "Podany katalog nie istnieje" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Podany katalog jest niedostępny. Proszę zmienić jego uprawnienia tak, aby serwer WWW miał " +"prawa odczytu do tego katalogu." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Nie można stworzyć plików mutisite. Proszę upewnić się, że poniższe pliki mają ustawione " +"uprawnienia zapisu." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Wszystkie galerie multisite instalowane są z centralnego repozytorium (kod bazowy)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Proszę podać katalog nowej galerii multisite. Ścieżka musi być różna od ścieżki do katalogu " +"z instalacyjnym kodem bazowym:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Katalog musi mieć prawa zapisu dla użytkownika www/php lub zawierać następujące zapisywalne " +"pliki:" + +msgid "Select Directory" +msgstr "Wybierz katalog" + +msgid "Multisite directory setup successfully." +msgstr "Ustawianie katalogu multisite zostalo zakończone." + +msgid "Standard installation selected." +msgstr "Wybrano instalację standardową." + +msgid "Install Steps" +msgstr "Kroki instalacji" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Dopełniamy wszelkich starań, aby galeria była bezpieczna. Plik config.php zmodyfikowany " +"przez instalatora ma prawa dostępu, które umożliwiają innym osobom jego modyfikację. " +"Wymagane jest to ze względu na to, że instalator jest określany jako 'wszyscy', jeżeli " +"chodzi o Unixowe prawa dostępu. W związku z tym po zakończeniu instalacji, zalecana jest " +"zmiana uprawnień dostępu do tego pliku, aby pozostałe osoby nie mogły go modyfikować. " +"Obecnie plik config.php ma prawa dostępu %s. Sugerujemy wykonanie następującego polecenia:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Dopełniamy wszelkich starań, aby galeria była bezpieczna. Katalog zawierający plik config." +"php zmodyfikowany przez instalatora ma prawa dostępu, które umożliwiają innym osobom " +"nadpisywanie lub usuwanie plików. W związku z tym po zakończeniu instalacji, zalecana jest " +"zmiana uprawnień dostępu do tego katalogu, aby pozostałe osoby nie mogły go modyfikować. " +"Sugerujemy wykonanie następującego polecenia:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Jeżeli rzeczywiście chcesz kontynuować - jest to możliwe. Zalecamy jednak poświęcenie " +"dodatkowego czasu w celu zabezpieczenia galerii." + +msgid "We've verified that your config.php is secure." +msgstr "Plik config.php został zweryfikowany pod względem bezpieczeństwa." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Więcej informacji znajduje się w %1$sGallery Security Guide%3$s. Streszczenie podręcznika " +"dostępne jest w %2$sshort check list%3$s." + +msgid "Check Again" +msgstr "Zaznacz ponownie" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Galeria wymaga stworzenia katalogu w którym przechowywane będą zdjęcia. Katalog wybrany " +"przez galerię będzie dzialać, jednak jego lokalizacja i obecna nazwa nie gwarantują " +"maksymalnego bezpieczeństwa. Zalecane jest wybranie nowego katalogu poza katalogiem %" +"sdocument root%s lub dodanie losowego ciągu znaków w nazwie katalogu (np. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Dla maksymalnej ochrony wybrany katalog powinien być %sniedostępny przez strony WWW%s. Jeśli " +"nie jest to możliwe, proszę wybrać losową nazwę dla tego katalogu." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"W przypadku losowej nazwy lub w przypadku pozostawienia katalogu bez zmian konieczne jest " +"potwierdzenie decyzji." + +msgid "Yes, please omit the security check:" +msgstr "Tak, proszę ominąć sprawdzanie bezpieczeństwa:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"To jest instalacja multisite. Proszę pamiętać, że każda galeria z osobna potrzebuje swój " +"własny katalog składowania w którym przechowywane będą zdjęcia." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"W przypadku używania nowoczesnej przeglądarki, wprowadzana ścieżka będzie (o ile to możliwe) " +"automatycznie uzupełniana. W związku z tym jeśli pojawią się problemy co do znalezienia " +"prawidłowej ścieżki do katalogu danych galerii, proszę próbować wpisać prawdopodobną ścieżkę " +"i sprawdzić czy i jak zostanie ona uzupełniona." + +msgid "The directory you entered is read only" +msgstr "Wybrany katalog ma wyłącznie prawa odczytu" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Wystąpił błąd podczas tworzenia struktury katalogowej w katalogu składowania." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Wybrany katalog jest %sdostępny przez strony WWW%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Nie można sprawdzić czy katalog nie jest %sdostępny przez strony WWW%s." + +msgid "Directory path:" +msgstr "Ścieżka katalogu:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Serwer WWW wymaga uprawnień zapisu do tego katalogu. Aby to umożliwić, proszę skorzystać z " +"poniższych przykładów." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Uwaga: to są tylko przykłady! Może okazać się, że nie będą one działać prawidłowo na każdym " +"systemie." + +msgid "Unix (with ftp access)" +msgstr "Unix (z dostępem ftp)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Uwaga: ze względu na różnice pomiędzy serwerami jak i klientami ftp, poniższe instrukcje " +"mogą nie działać poprawnie. W przypadku gdyby pojawiły się jakieś problemy, proszę sprawdzić " +"podręcznik użytkownika klienta ftp lub skontaktować się z administratorem systemu." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"W niektórych środowiskach ścieżka, która jest widoczna przez shell lub przez FTP, nie jest " +"tą samą ścieżką, którą widzi PHP. Aby znaleźć prawdziwą ścieżkę do katalogu danych galerii, " +"można spróbować stworzyć plik o nazwie dir.php zawierający niżej podany kod i " +"umieścić go w katalogu danych galerii." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"Następnie proszę sprawdzić jaki jest adres URL pliku dir.php i otworzyć go w przeglądarce " +"WWW (np.: %s). Na otwartej stronie wyświetlona zostanie dokładna ścieżka, którą należy " +"tutaj podać." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Note: Opcja ta wymaga, aby katalog danych był dostępny przez strony WWW, co nie jest " +"zalecanym rozwiązaniem ze względu na obejście firewalla galerii. Po sprawdzeniu jaka " +"ścieżka powinna być użyta, sugerujemy przeniesienie katalogu danych poza obszar dostępny " +"przez strony WWW i odpowiednie zaktualizowanie ścieżki." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Uwaga: Po zakończeniu, proszę pamiętać o skasowaniu pliku dir.php!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Informacje na temat zabezpieczania katalogów składowania galerii można znaleźć w %" +"sPrzewodniku Bezpieczeństwa%s." + +msgid "Storage directory set successfully." +msgstr "Katalog składowania został ustawiony." + +msgid "Success" +msgstr "Sukces" + +msgid "Warning" +msgstr "Ostrzeżenie" + +msgid "Failed" +msgstr "Błąd" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Jeśli używany jest Apache, należy stwórzyć plik o nazwie .htaccess i umieścić go w katalogu " +"głównym galerii. W pliku należy zamieścić następujące komendy:" + +msgid "Version Check" +msgstr "Sprawdzanie wersji" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "To nie jest nowa instalacja i zainstalowana wersja nie pasuje do nowej wersji." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Zainstalowana wersja nie może być zaktualizowana!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Zainstalowana jest starsza wersja niż wersja z instalatora. Proszę uruchomić aktualizator a " +"nie instalator!" + +msgid "Currently installed" +msgstr "Aktualna wersja" + +msgid "New version" +msgstr "Nowa wersja" + +msgid "Go to the Upgrader!" +msgstr "Przejdź do aktualizatora galerii!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Proszę teraz przejść do aktualizatora galerii. W tym celu w przeglądarce WWW proszę dopisać " +"%s/upgrade/index.php%s do adresu %s." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Aktualizacja Gallery 2 wymaga przejścia przez %d kroków. Niniejszy aktualizator poprowadzi " +"przez nie i pomoże jeśli okaże się, że konieczne będą dodatkowe przejścia. Zanim proces " +"aktualizacji zostanie rozpoczęty proszę przeczytać %splik pomocy%s." + +msgid "Select Language:" +msgstr "Wybierz język:" + +msgid "Go" +msgstr "Przejdź do" + +msgid "Begin Installation»" +msgstr "Rozpocznij instalację»" diff --git a/Source/gallery2/install/po/ro.po b/Source/gallery2/install/po/ro.po new file mode 100644 index 0000000..453cf3d --- /dev/null +++ b/Source/gallery2/install/po/ro.po @@ -0,0 +1,1121 @@ +# $Id: ro.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Ermanno Baschiera , 2004. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 15:43-0700\n" +"PO-Revision-Date: 2006-03-16 16:27+0100\n" +"Last-Translator: Serban Constantinescu \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Generator: KBabel 1.3\n" +"X-Poedit-Language: Romanian\n" +"X-Poedit-Country: ROMANIA\n" + +msgid "Unknown" +msgstr "Necunoscut" + +msgid "Admin User Setup" +msgstr "" + +msgid "admin" +msgstr "" + +msgid "Gallery Administrator" +msgstr "" + +msgid "Authenticate" +msgstr "" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" + +msgid "Create Config File" +msgstr "" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" + +msgid "Database Setup" +msgstr "" + +msgid "You must have the MySQL PHP module installed" +msgstr "" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "" + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "" + +msgid "PostgreSQL v7.x and newer" +msgstr "" + +msgid "Oracle (9i and newer)" +msgstr "" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "" + +msgid "Install Gallery Core" +msgstr "" + +msgid "Installing the core module" +msgstr "Instalez modulul de baza" + +msgid "Unable to initialize our Gallery data" +msgstr "" + +msgid "Unable to communicate with the database" +msgstr "" + +msgid "Unable to load the core module" +msgstr "" + +msgid "Unable to install the core module" +msgstr "" + +msgid "Unable to activate the core module" +msgstr "" + +msgid "Unable to commit database transaction" +msgstr "" + +msgid "Core module is only partially installed." +msgstr "" + +msgid "Install Plugins" +msgstr "" + +msgid "Unable to initialize our Gallery session" +msgstr "" + +#, c-format +msgid "Unable to load the %s module" +msgstr "" + +msgid "Installing modules" +msgstr "" + +#, c-format +msgid "Unable to install the %s module" +msgstr "" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "" + +msgid "Unable to get the module list" +msgstr "" + +msgid "Other" +msgstr "Altii" + +msgid "Installation Type" +msgstr "" + +msgid "Check Security" +msgstr "" + +msgid "Storage Setup" +msgstr "" + +msgid "System Checks" +msgstr "" + +msgid "Performing system checks" +msgstr "" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" + +msgid "PHP Version" +msgstr "" + +msgid "FILE directive supported" +msgstr "" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" + +msgid "Safe Mode" +msgstr "" + +msgid "Regular expressions" +msgstr "" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "" + +msgid "no limit" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "" + +msgid "Please enter a valid user name" +msgstr "" + +msgid "Please enter a password" +msgstr "" + +msgid "Password" +msgstr "Parola" + +msgid "Setup password" +msgstr "" + +msgid "(type again)" +msgstr "" + +msgid "Admin email address" +msgstr "" + +msgid "Please enter a valid email address" +msgstr "" + +msgid "Admin full name (optional)" +msgstr "" + +msgid "Missing password! Please enter the same password twice" +msgstr "" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Creaza" + +msgid "Save" +msgstr "Salveaza" + +msgid "Admin user info entered successfully." +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "" + +msgid "Authentication successful!" +msgstr "" + +msgid "Erase data for a clean install" +msgstr "" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "Anuleaza" + +msgid "Erase all data" +msgstr "" + +msgid "Please fix this error and try again." +msgstr "" + +msgid "Try Again" +msgstr "" + +msgid "Create a config file" +msgstr "" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "" + +msgid "Config file created successfully." +msgstr "" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "" + +msgid "DB Hostname:" +msgstr "" + +msgid "DB Username:" +msgstr "" + +msgid "DB Password:" +msgstr "" + +msgid "DB Name:" +msgstr "" + +msgid "Table Prefix:" +msgstr "" + +msgid "Column Prefix:" +msgstr "" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "" + +msgid "Reuse Existing Tables" +msgstr "" + +msgid "Database set up successfully." +msgstr "" + +msgid "Finished!" +msgstr "" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "" + +msgid "Start Over" +msgstr "Reia de la capat" + +msgid "Error installing Gallery Core" +msgstr "" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "Nume" + +msgid "Version" +msgstr "Versiune" + +msgid "Description" +msgstr "Descriere" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "" + +msgid "Activate Selected Modules" +msgstr "" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "" + +msgid "Activate More Modules" +msgstr "" + +#, c-format +msgid "Continue to Step %d»" +msgstr "" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "" + +#, c-format +msgid "Install %d%% complete" +msgstr "" + +msgid "Redo this step" +msgstr "" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "" + +msgid "Standard installation" +msgstr "" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "" + +msgid "Install Steps" +msgstr "" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "" + +msgid "Success" +msgstr "Succes" + +msgid "Warning" +msgstr "Atentie" + +msgid "Failed" +msgstr "Eroare" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "" + +msgid "New version" +msgstr "" + +msgid "Go to the Upgrader!" +msgstr "" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "" + +msgid "Go" +msgstr "Du-te" + +msgid "Begin Installation»" +msgstr "" diff --git a/Source/gallery2/install/po/ru.po b/Source/gallery2/install/po/ru.po new file mode 100644 index 0000000..25f2154 --- /dev/null +++ b/Source/gallery2/install/po/ru.po @@ -0,0 +1,1497 @@ +# $Id: ru.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-11-19 07:50-0800\n" +"PO-Revision-Date: 2006-03-17 19:29+0300\n" +"Last-Translator: Konstantin Ivanov \n" +"Language-Team: Russian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Russian\n" +"X-Poedit-Country: RUSSIAN FEDERATION\n" + +msgid "Unknown" +msgstr "Неизвестно" + +msgid "Admin User Setup" +msgstr "Создание Администратора" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Администратор Галереи" + +msgid "Authenticate" +msgstr "Авторизация" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Ошибка: не могу обнаружить login.txt. Пожалуйста, поместите его в Вашей %s/" +" папке." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Ошибка: указанный Вами файл login.txt не может быть прочитан. Пожалуйста, " +"дайте право доступа на чтение Галерее этого файла." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Ошибка: указанный Вами файл login.txt содержит неверный ключ.Пожалуйста, " +"загрузите новую идентификационную строку, указанную ниже, и попробуйте еще раз." + +msgid "Create Config File" +msgstr "Создание файла конфигурации" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Невозможно записать данные в конфигурационный файл config.php в Вашей %s директории. " +"Пожалуйста, измените его разрешения. Если Вы используйете Unix систему, Вы можете это " +"сделать командой chmod 666 config.php и исправить это." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Файл config.php не существует в Вашей %s папке" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Файл config.php существует, но в него не можут быть записаны данные. Если в качестве сервера " +"Вы используйете Windows, возможно, Вам необходимо отключить Общий Доступ для config.php и " +"установить эти разрешения вручную." + +msgid "Database Setup" +msgstr "Установка базы данных" + +msgid "You must have the MySQL PHP module installed" +msgstr "У Вас должен быть установлен модуль MySQL PHP" + +#, fuzzy +msgid "You must have the MySQL Improved PHP module installed" +msgstr "У Вас должен быть установлен модуль MySQL PHP" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "У Вас должен быть установлен модуль ibm_db2 PHP" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "У Вас должен быть установлен модуль PostgreSQL PH" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "У Вас должен быть установлен модуль Oracle OCI8 PHP " + +#, fuzzy +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "У Вас должен быть установлен модуль Oracle OCI8 PHP " + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Вы должны указать column prefix (мы рекомендуем %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Используйте только буквы, числа и символ подчеркивания в графе column prefix" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Вы должны указать table prefix (мы рекомендуем %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Используйте только буквы, числа и символ подчеркивания в графе table prefix" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Невозможно создать подключение к базе данных для типа %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Невозможно подключиться к базе данных на основе указанной информации" + +msgid "The database you specified does not exist. Please create it." +msgstr "Указанная Вами база данных не существует. Пожалуйста, создайте ее." + +msgid "The database privileges test did not complete successfully." +msgstr "Тест базы данных на разрешения (privileges) не был завершен удачно." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Таблицы Галереи уже существуют в этой базе данных. Однако, отсутствует файл 'versions.dat' " +"в Вашей папке хранилища G2, что следует понимать как поврежденное состояние G2. Либо " +"создайте файл versions.dat с корректной информацией, если Вы полагаете, что G2 все еще будет " +"работать или выберете новую инсталляцию, что уничтожит все данные в базе данных и в папке " +"хранилища." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Папка хранилища G2 содержит файл versions.dat старой инсталляции. Однако, таблицы базы " +"данных Галереи не существуют. Выберете новую инсталляцию для уничтожения всех данных в папке " +"хранилища файлов Галереи и переходите к следующему шагу." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Таблицы Галереи уже существуют в базе данных и присутствует файл versions.dat в папке " +"хранилища файлов. Однако, версия установленных таблиц базы данных Галереи не соответствует " +"версии установленным данным в папке хранилища Галереи. Выберете новую инсталляцию для " +"уничтожения всех данных в базе данных и в папке хранилища файлов Галереи и переходите к " +"следующему шагу." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Таблицы Галереи уже существуют в базе данных и папка хранилища Галереи, кажется, невредима. " +"Либо выберете использование существующих таблиц и папки хранилища данных, либо выберете " +"новую инсталляцию для уничтожения всех данных в базе данных и в в папке хранилища." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Невозможно выполнить требуемый API для уничтожения папки хранилища. Пожалуйста, очистите " +"папку хранилища Галереи вручную." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Невозможно выполнить требуемый API для уничтожения таблиц базы данных. Пожалуйста, очистите " +"базу данных Галереи вручную." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Невозможно загрузить G2 API. Пожалуйста, очистите базу данных Галереи и папку хранилища " +"Галереи вручную." + +#, fuzzy +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL with Transactions (v3.23.34a или новее)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (все версии)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x и выше" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i и выше)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x и выше)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x и выше" + +msgid "Unknown DB type or no known tables information." +msgstr "Неизвестный тип базы данных или неизвестная информация о таблицах." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Невозможно найти неиспользуемый table prefix сходный с \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Невозможно открыть файл схемы \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Невозможно создать тестовую последовательность DB. Проверьте возвращаемое сообщение об " +"ошибке и посмотрите файл README.html на предмет пропущенных привилегий, а так же очистите " +"базу данных." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Тест не удался и-за невозможности удалить (drop) тестовую последовательность DB. Проверьте " +"возвращаемое сообщение об ошибке и посмотрите файл README.html на предмет пропущенных " +"привилегий, а так же очистите базу данных." + +msgid "Missing SQL statements" +msgstr "Пропушены операторы SQL" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Проверьте возвращаемое сообщение об ошибке и посмотрите файл README.html на предмет " +"пропущенных привилегий, а так же очистите базу данных." + +msgid "Finish Installation" +msgstr "Завершение инсталляции" + +msgid "Install Gallery Core" +msgstr "Инсталляция Ядра Галереи" + +msgid "Installing the core module" +msgstr "Инсталляция основного модуля (ядра)" + +msgid "Unable to initialize our Gallery data" +msgstr "Невозможно инициализировать наши данные Галереи" + +msgid "Unable to communicate with the database" +msgstr "Невозможно взаимодействие с базой данных" + +msgid "Unable to load the core module" +msgstr "Невозможно загрузить основной модуль (ядро)" + +msgid "Unable to install the core module" +msgstr "Невозможно инсталлировать основной модуль (ядро)" + +msgid "Unable to activate the core module" +msgstr "Невозможно активизировать основной модуль (ядро)" + +msgid "Unable to commit database transaction" +msgstr "Невозможно выполнить транзакцию базы данных" + +msgid "Core module is only partially installed." +msgstr "Основной модуль (ядро) установлен только частично." + +#, fuzzy +msgid "Install Plugins" +msgstr "Шаги инсталляции" + +msgid "Unable to initialize our Gallery session" +msgstr "Невозможно инициализировать сессию Галереи" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Невозможно загрузить модуль %s" + +msgid "Installing modules" +msgstr "Инсталляция модулей" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Невозможно инсталлировать модуль %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Невозможно активизировать модуль %s" + +msgid "Unable to get the module list" +msgstr "Невозможно получить список модулей" + +msgid "Other" +msgstr "Другие" + +msgid "Installation Type" +msgstr "Выбор типа инсталляции" + +msgid "Check Security" +msgstr "Проверка безопасности" + +msgid "Storage Setup" +msgstr "Установка хранилища" + +msgid "System Checks" +msgstr "Проверка системы" + +msgid "Performing system checks" +msgstr "Выполение проверки системы" + +#, fuzzy +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP версия >= 4.1.0 или >= 5.0.4" + +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Ошибка: Галерее 2 необходим PHP версии 4.1.0 или выше или 5.0.4 или выше. У вас установлен " +"PHP версии %s. Обратитесь к администратору Вашего веб-сервера с просьбой обновления, " +"доступного на %sPHP website%s." + +msgid "PHP Version" +msgstr "Версия PHP" + +msgid "FILE directive supported" +msgstr "Директива FILE поддерживается" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Ошибка: Ваша PHP __FILE__ директива функционирует неверно. Пожалуйста, обратитесь за " +"поддержкой к администратору Вашего веб-сервера или на форумы Галереи." + +msgid "FILE Directive" +msgstr "Директива FILE" + +msgid "Safe mode disabled" +msgstr "Safe mode disabled" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Ошибка: Ваша версия PHP сконфигурирована с параметром safe mode enabled. Вы должны " +"отключить режим safe mode перед тем, как Галерея будет запущена." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Регулярные выражения" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Ошибка: Ваша версия PHP сконфигурирована без поддержки %sPerl Compatible Regular Expressions%" +"s. Вы должны включить данную функцию перед тем как Галерея будет запущена." + +msgid "exec() allowed" +msgstr "exec() allowed" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Предупреждение: Функция exec() отключена в Вашем PHP в разделе disabled_functions в " +"php.ini. Вы не сможете использовать модули, которые требуют внешних бинарных кодов " +"(например, ImageMagick, NetPBM или Ffmpeg). Эта функция может быть установлена только на " +"стороне сервера, поэтому Вам будет необходимо поменять ее в глобальном php.ini." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() allowed" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Предупреждение: Функция set_time_limit() отключена в Вашем PHP в разделе " +"disabled_functions в php.ini. Галерея может функционировать с такими параметрами, но " +"ее работа будет ненадежной. Любая операция, которая длиться дольше чем %d секунд, будет " +"выполнена неудачно (и в некоторых случаях возвратит лишь белый экран), возможно, следуя к " +"повреждению данных." + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Предупреждение: Функция putenv() отключена в Вашем PHP в разделе disabled_functions " +"в php.ini. Галерея может функционировать без данной настройки, но на некоторые редких " +"системах Галерея не сможет быть запущена на другом языке, чем системный язык и Английский. " + +msgid "Memory limit" +msgstr "Memory limit" + +msgid "no limit" +msgstr "без ограничений" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Предупреждение: Ваш PHP сконфигурирован с ограничением памяти %sb (параметр memory_limit в php.ini). Вы должны увеличить это значение по крайней мере до %sMB для " +"нормального фунционирование Галереи." + +msgid "File uploads allowed" +msgstr "File uploads allowed" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Предупреждение: Ваш PHP сконфигурирован таким образом, что запрещает загрузку файлов. " +"(параметр file_uploads в php.ini). Вы должны разрешить данную функцию, если Вы хотите " +"загружать файлы в Вашу Галерею с помощью веб-браузера." + +msgid "Maximum upload size" +msgstr "Maximum upload size" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Предупреждение: Ваш PHP сконфигурирован таким образом, чтобы ограничивать размер загружаемых " +"файлов до %sb (параметр upload_max_filesize в php.ini). Вы должны увеличить " +"предельное значение для того, чтобы разрешить загрузку файлов больших размеров." + +msgid "Maximum POST size" +msgstr "Maximum POST size" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Предупреждение: Ваш PHP сконфигурирован таким образом, чтобы ограничивать размер загружаемых " +"данных до %sb (параметр post_max_size в php.ini). Вы должны увеличить предельное " +"значение для того, чтобы разрешить загрузку файлов больших размеров." + +msgid "Translation support" +msgstr "Поддержка перевода" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Ваш Веб-сервер не поддерживает локализацию. Для получения возможности поддержки " +"дополнительных языков обратитесь за помощью к системному администратору для реконфигурации " +"PHP с включенной опцией %sgettext%s." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"В вашей сборке PHP отсутствует функция %sbind_textdomain_codeset%s. Это означает, что " +"Галерея может отображать расширенный набор символов для некоторых языков некорректно." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"В вашей сборке PHP отсутствует функция %sdngettext%s. Это означает, что Галерея не сможет " +"работать с переводом слов в форме множественного числа." + +msgid "Zend compatibility mode" +msgstr "Zend compatibility mode" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Предупреждение: Ваш PHP сконфигурирован с Zend ze1_compatibility_mode, что может привести к " +"сбою PHP. Нажмите здесь, чтобы протестировать Ваш PHP. Если Вы видите " +"(\"УСПЕШНО\") \"SUCCESS\", значит Ваш PHP в порядке. Если Вы получили сообщение об ошибке " +"или остались без ответа, тогда Вы должн выключить ze1_compatibility_mode перед тем как " +"продолжить." + +msgid "putenv() allowed" +msgstr "putenv() allowed" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Предупреждение: Функция putenv() отключена в Вашем PHP в разделе disabled_functions " +"в php.ini. Галерея может функционировать без данной настройки, но на некоторые редких " +"системах Галерея не сможет быть запущена на другом языке, чем системный язык и Английский. " + +msgid "Output buffering disabled" +msgstr "Буфферизация выходных данных отключена" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Внимание: буфферезация выходных данных включена в настройках PHP установкой %s " +"параметра(ов) в php.ini. Галерея может функционировать с данной опцией - загрузка файлов " +"будет происходить даже быстрее - но Галерея не сможет обрабатывать большие файлы (например, " +"длинные видеоролики) и будет ограничена размером памяти. Кроме того, некоторые функции такие " +"как статусная строка процента выполнения может работать некорректно, если буфферезация " +"выходных данных включена пока разрешен параметр ini_set()." + +msgid "Gallery file integrity" +msgstr "Целостность файлов Галереи" + +msgid "Test skipped due to other errors." +msgstr "Тест пропушен в виду других ошибок." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest отсутствует или недоступен." + +msgid "Welcome" +msgstr "Добро пожаловать" + +msgid "Please correct the following errors" +msgstr "Пожалуйста, исправьте следующие ошибки:" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Каждая Галерея будет иметь по крайней мере одного пользователя администратора, кто будет " +"иметь полный доступ просмотра/изменения на все. Пожалуйста, выберете имя пользователя и " +"пароль для Вашей главной учетной записи администратора. Вы сможете добавить дополнительных " +"пользователей позже." + +msgid "Admin username" +msgstr "Имя пользователя администратор" + +msgid "Please enter a valid user name" +msgstr "Пожалуйста, введите верное имя пользователя" + +msgid "Please enter a password" +msgstr "Пожалуйста, введите пароль" + +msgid "Password" +msgstr "Пароль" + +msgid "Setup password" +msgstr "Введите пароль" + +msgid "(type again)" +msgstr "(введите повторно)" + +msgid "Admin email address" +msgstr "E-mail адрес администратора" + +msgid "Please enter a valid email address" +msgstr "Пожалуйста, введите верный адрес e-mail" + +msgid "Admin full name (optional)" +msgstr "Полное имя администратора (не обязательно)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Отсутствует пароль! Пожалуйста, введите один и тот же пароль дважды" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Введенными Вами пароль не совпадают! Пожалуйста, попробуйте еще раз." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Поскольку Вы используете уже существующие таблицы базы данных, данная инсталляция не " +"является новой. Будет изменен только пароль на установку, но это не изменит пароль " +"администратора сайта. Для изменения пароля администратора сайта используйте механизм " +"возврата забытого пароля в Галерее." + +msgid "Create" +msgstr "Создать" + +msgid "Save" +msgstr "Сохранить" + +msgid "Admin user info entered successfully." +msgstr "Информация о пользователе администратор успешно введена." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Для того, чтобы продолжить инсталляцию, нам необходимо проверить, что Вы тот, за кого себя " +"выдаете. Самым надежным способом удостовериться в этом является просьба внести Вас " +"незначительные изменения в директорию, где установлена Галерея, что и докажет Ваши права " +"доступа. Так, мы хотим попросить Вас создать новый текстовый файл под названием " +"login.txt в Вашей директории %s на веб-сервере (это та же самая " +"директория, где находится файл main.php). Он должен содержать следующую последовательность " +"случайно сгенерированных символов:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"В качестве удобства для Вас мы подготовили %sкорректную версию файла login.txt%s. Скачайте " +"его и скопируйте в Вашу папку %s, таким образом, подготовка будет завершена." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Как только Вы закончите загрузку файла, нажмите ниже для продолжения." + +msgid "Authenticate Me" +msgstr "Идентифицировать меня" + +msgid "Authentication successful!" +msgstr "Идентификация прошла успешно!" + +msgid "Erase data for a clean install" +msgstr "Уничтожить данные для новой инсталляции" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Вы действительно уверены, что хотите уничтожить все данные в папке хранилища Галереи и все " +"данные в базе данных Галереи?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Произошла ошибка при удалении базы данных и папки хранилища данных. Далее следует ошибка:" + +msgid "Cancel" +msgstr "Отменить" + +msgid "Erase all data" +msgstr "Уничтожить все данные" + +msgid "Please fix this error and try again." +msgstr "Пожалуйста, исправьте ошибку и попробуйте еще раз." + +msgid "Try Again" +msgstr "Попробовать еще раз" + +msgid "Create a config file" +msgstr "Создать файл конфигурации" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Теперь нам необходимо записать всю предоставленную Вами информацию в файл под названием " +"config.php в Вашей %s директории. Данный файл является очень важным, т.к. " +"обеспечивает Галерею всей необходимой информацией, которая необходима для ее работы. После " +"того, как мы создадим его, Вы сможете просмотреть данный фал и при желании внести в него " +"изменения." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (shell доступ)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Создать конфигурационный файл" + +msgid "Config file created successfully." +msgstr "Конфигурационный файл создан успешно." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Мы внесли всю предоставленную Вами информацию в файл под названием config.php в Вашей " +"папке Галереи 2. Вы можете просмотреть данный файл и внести изменения, если это необходимо. " +"Будьте внимательны! Если Вы допустите ошибки в данном файле, Галерея будет работать " +"неправильно!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Пожалуйста, выберите тип базы данных и введите аутентификационную информацию базы данных. " +"Инсталляция не создаст для Вас базу данных, поэтому Вы должны создать одну из них " +"самостоятельно и ввести здесь имя базы данных. Если Вы инсталлируете Галерею в базу данных, " +"в которой уже содержатся таблицы внутри, то префиксы table и column позволят уберечь данные " +"Галереи от конфликтов с тем, что Вы уже имеете." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Это мультисайтовая (multisite) инсталляция. Помните, что каждый мультисайт требует свои " +"собственным таблицы базы данных. Либо выберете другую базу данных, либо другие префиксы " +"table для каждого мультисайта." + +msgid "Database type:" +msgstr "Тип базы данных:" + +msgid "DB Hostname:" +msgstr "DB Hostname:" + +msgid "DB Username:" +msgstr "DB Username:" + +msgid "DB Password:" +msgstr "DB Password:" + +msgid "DB Name:" +msgstr "DB Name:" + +msgid "Table Prefix:" +msgstr "Table Prefix:" + +msgid "Column Prefix:" +msgstr "Column Prefix:" + +msgid "We received the following database related errors:" +msgstr "Мы получили следующие ошибки, относящиеся к базе данных:" + +msgid "Erase Data For A Clean Install" +msgstr "Уничтожить данные для Новой Инсталляции" + +msgid "Reuse Existing Tables" +msgstr "Использовать Существующие Таблицы" + +msgid "Database set up successfully." +msgstr "База данных успешно установлена." + +msgid "Finished!" +msgstr "Завершено!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Поздравляем! Инсталляция Вашей Галереи 2 успешно завершена! Как оказалось, это не было очень " +"трудным. Особую благодарность выражаем Константину Иванову, который выполнил перевод Галереи на русский язык. А " +"теперь самое время загрузить немного фотографий в Вашу Галерею!" + +msgid "Go to my Gallery!" +msgstr "Перейти в мою галерею!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Теперь Вы можете перейти в Вашу новую Галерею. Введите адрес URL в Вашем браузере для %smain." +"php%s в Вашей %s директории. " + +msgid "Installer Help" +msgstr "Помощь" + +msgid "Start Over" +msgstr "Начать сначала" + +msgid "Error installing Gallery Core" +msgstr "Возникла ошибка в процессе инсталляции основного модуля Галереи (ядра)" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" +"Что-то пошло не так, когда мы пытались инсталлировать основной модуль (ядро). Что будем " +"делать дальше?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Перейки к шагу Проверка Системы инсталляции и убедиться, что все проверка отображают " +"\"Успешно\". Обычно это случается, когда игнорируется предупреждение о целостности файлов. " + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Если какие-либо предупреждения или ошибки отсутствуют в шаге Проверка Системы, очистите Вашу " +"папку хранилища и сотрите таблицы базы данных, после чего запустите процесс инсталляции " +"второй раз (повторно выполнить все шаги)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Пожалуйста, посмотрите %sG2 FAQ%s и прочитайте раздел %sKnown issues section of the Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Если проблема не исчезает, пожалуйста, скопируйте журнал (log) инсталляции, который " +"расположен здесь %s и прикрепите его (в виде install.log.zip) в новую тему (топик) в %" +"sфорумах поддержки G2%s, либо, если это возможно, укажите лишь ссылку к install.log в теме " +"форума, чтобы слубжа поддежки смогла его проанализировать, если это необходимо." + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Основной модуль Галереи (ядро) успешно инсталлирован." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Мы успешно инсталлировали основную часть Галереи. Несмотря на то, что все будет работать в " +"этом случае, Вы должны продолжить инсталляцию и добавить несколько дополнительных модулей, " +"таким образом, получив необходимый набор функций, которые Вы хотели бы инсталлировать в " +"Галерею." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Следующие модули могут быть автоматически инсталлированы и активизированы для Вас. Вам " +"необходимо инcталлировать по крайней мере один из графических инструментов, в противном " +"случае, Галерея не сможет создать макеты Ваших изображений. В большинстве систем " +"автоматическая инсталляция должным образом сделает это для Вас. Однако, в некоторых других " +"случаях она может не удаться. Вы сможете всегда активизировать новый модуль, либо " +"деактивизировать любой из тех, что выберите на странице Администрирования, так что любое " +"принятое Вами решение здесь не является окончательным." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Некоторые модули не могут быть установлены автоматически. Это нормально. Обычно это " +"означает, что они требуют дополнительной конфигурации, которую Вы сможете осуществить на " +"странице Администрирования." + +msgid "Name" +msgstr "Название" + +msgid "Version" +msgstr "Версия" + +msgid "Description" +msgstr "Описание" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Несовместим с данной версией Галереи)" + +msgid "(un)check all" +msgstr "отметить все/снять отметку со всех" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Перейти к шагу %d без Активации»" + +msgid "Activate Selected Modules" +msgstr "Активизировать Выделенные Модули" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"Модуль %s был инсталлирован, но нуждается в конфигурировании перед тем, как быть " +"активизированным." + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"После завершения инсталляции, войдите как Администратор и просмотрите раздел " +"Администрирование. Перейдите в меню Модули и сконфигурируйте вышеперечисленные модули." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Модуль %s успешно активизирован" + +msgid "Activate More Modules" +msgstr "Активировать другие Модули" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Перейти к Шагу %d»" + +msgid "Debug Output" +msgstr "Выходные отладочные данные " + +msgid "Welcome to the Gallery Installer" +msgstr "Добро Пожаловать в Инсталляцию Галереи." + +#, c-format +msgid "Install %d%% complete" +msgstr "Инсталляция завершена на %d%%" + +msgid "Redo this step" +msgstr "Повторно выполнить этот шаг" + +msgid "Gallery: your photos on your website" +msgstr "" +"Перевод на русский язык: Константин Иванов. Галерея: Ваши фотографии на Вашем веб-" +"сайте :: www.gallery2.ru" + +#, c-format +msgid "Missing files (%d)" +msgstr "Отсутствуют файлов (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Комментарий: Вы запустили Галерею из CVS, поэтому недавно удаленные файлы могут всплыть " +"здесь. Игнорирование этого, возможно, будет безопасным." + +#, c-format +msgid "Modified files (%d)" +msgstr "Модифицицированных файлов (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Комментарий: Вы запустили Галерею из CVS, поэтому некоторые модификации файлов вполне " +"ожидаемы. Возможно, Вы можете игнорировать это, но для обеспечения безопасности Вы должны " +"убедиться, что Вы запустили 'cvs update -Pd' перед тем, как продолжить." + +#, c-format +msgid "Old files (%d)" +msgstr "Устаревших файлов (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Эти файлы больше не являются частью Галереи. Возможно, они не вызовут никаких проблем, но " +"лучше будет удалить их для чистой инсталляции." + +msgid "Errors occurred. Please see messages below." +msgstr "Произошли ошибки. Пожалуйста, смотрите сообщения ниже." + +msgid "Please select the installation type" +msgstr "Пожалуста, выберите тип инсталляции" + +msgid "Standard installation" +msgstr "Стандартная инсталляция" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Это тип инсталляции по умолчанию. Выберите данный тип инсталляции, если Вы хотите " +"инсталлировать новую Галерею в директорию %s, которая будет доступна по адресу URL %s." + +msgid "Multisite installation" +msgstr "Мультисайтовая (multisite) инсталляция" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Галерея может поддерживать множество независимых сайтов на одном инсталляционном коде. " +"Выберете данный тип инсталляции, если Вы хотите инсталлировать новую Галерею на один и тот " +"же сервер, но в разные папки, поддомены или основные домены URL. " + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Мультисайты не имеют общих альбомов, фотографий, пользователей или что-либо еще. Каждому из " +"них необходима своя собственная база данных и своя собственная папка хранилища. Для более " +"подробной информацией о Мультисайтовой инсталляции посетите страницу %s." + +msgid "You must enter a directory" +msgstr "Вы должны ввести директорию" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Введенная Вами директория является директории базы основного кода. Если Вы хотите " +"инсталлировать Галерею в директорию базы основного кода, выберете стандартный тип " +"инсталляции. Если Вы хотите инсталлировать мультисайт, выберете другую директорию." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Введенная Вами директория не существует" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Введеная Вами директория не доступна. Измените разрешения, чтобы веб-сервер мог прочитать " +"эту директорию." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Невозможно создать файлы мультисайта. Убедитесь, что нижеперечисленные файлы доступны для " +"записи." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Все мультисайты инсталлируются из этой центральной базы основого кода." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Введите директорию для нового мультисайта ниже. Путь должен быть отличным от инсталляции " +"базы основого кода" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Директория должна быть доступна для записи пользователю webserver/php или содержать " +"следующие доступные дя записи файлы:" + +msgid "Select Directory" +msgstr "Выберете директорию" + +msgid "Multisite directory setup successfully." +msgstr "Директория мультисайта успешно установлена" + +msgid "Standard installation selected." +msgstr "Выбрана стандартная инсталляция" + +msgid "Install Steps" +msgstr "Шаги инсталляции" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Нам необходимо убедиться, что Ваша Галерея защищена. Файл config.php, который редактировался " +"в процессе данной инсталляции, содержит разрешения, которые позволяют другим лицам " +"осуществлять запись в него. Это было необходимо, поскольку инсталляция относится к \"другим " +"лицам\", если мы говорим о файловых разрешениях Unix. Поэтому, перед тем как завершить, Вы " +"должны изменить разрешения на данный файл так, чтобы другие пользователи не смогут " +"записывать в него. В настоящее время Ваш config.php имеет разрешения %s. Мы предлагаем Вам " +"выполнить следующие действия:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Нам необходимо убедиться, что Ваша Галерея защищена. Директория, содержащая файл config.php, " +"который редактировался в процессе данной инсталляции, имеет права доступа, позволяющие " +"другим лицам записывать или удалять файлы. Поэтому, перед тем как завершить, Вы должны " +"изменить разрешения на данную директорию, чтобы другие пользователи не смогут записывать в " +"нее. Мы предлагаем Вам выполнить следующие действия:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Если Вы дейсвительно желаете продолжить, Вы можете. Но мы рекомендуем, что бы Вы выделили " +"немного времени на проверку безопасности." + +msgid "We've verified that your config.php is secure." +msgstr "Мы проверили, что Ваш config.php теперь в безопасности." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Пожалуйста прочитайте %1$sРуководство по безопасности и защите Галереи%3$s. Для быстрого " +"ознакомления, посмотрите %2$sкраткий список действий%3$s для защиты в руководстве по " +"безопасности." + +msgid "Check Again" +msgstr "Проверить заново" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, fuzzy, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Для максимальной защиты Вы должны выбрать директорию, которая не будет доступна через веб." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Это мультисайтовая инсталляция. Учтите, что каждый мультисайт требует свою собственную " +"директорию для хранилища." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Если Вы используете современный браузер, мы попытаемся автоматически заполнить любой " +"вводимый Вами здесь путь. Поэтому, если Вы испытываете сложности при нахождении верного пути " +"к Вашей g2data директории, попытайтесь поэкпериментировать с путями в текстовом поле ниже и " +"посмотрите, какие автозаполнения Вам будут предложены." + +msgid "The directory you entered is read only" +msgstr "Введенная Вами директория доступна только для чтения" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Возникла ошибка во время создании структуры папок в Вашей директории хранилища." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Директория хранилища успешно установлена" + +#, fuzzy, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" +"Для максимальной защиты Вы должны выбрать директорию, которая не будет доступна через веб." + +msgid "Directory path:" +msgstr "Путь к директории:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Ваш веб-сервер должен иметь право доступа на запись в данную директорию. Чтобы выполнить это " +"требование, Вы можете следовать следующим примерам:" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Внимание: это только примеры! Вы можете обнаружить, что они будут работать не совсем верно " +"на Вашей системе." + +msgid "Unix (with ftp access)" +msgstr "Unix (ftp доступ)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Обратите внимание, что ftp серверы и клиенты могут отличаться, поэтому данные инструкции " +"возможно не будут работать у Вас. Обратитеть к документации Вашего ftp-клиента или " +"поговорите с системным администратором, чтобы Вам оказали поддержку в случае возникновения " +"сложностей" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"У некоторых провайдеров пути, которые видите Вы в консоли (shell) или по FTP не совпадают с " +"путями, которые видит PHP. Для того, чтобы выяснить реальный путь к Вашей директории с " +"данными, Вы можете попробовать создать PHP скрит под названием dir.php, содержащий " +"следующий код, и разместить его в Вашу директорию с данными." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"затем выяснить адрес URL к файлу dir.php и открыть его в Вашем веб-браузере (например, %s). " +"Вам будет указан точный путь, который вводить здесь." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Замечание: Требуется, чтобы Ваша директория с данными была доступна через веб, что мы " +"не рекомендуем, поскольку это является обходом нашей защиты изображений. Как только Вы " +"выяснили путь указанным способом, мы рекомендуем, чтобы Вы переместили Вашу директорию с " +"данными за пределы области, доступной через веб-сервер, и затем заново указали " +"соответствующй путь здесь." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Замечание:" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Для получения более детальной информации о защите директории хранилища Галереи, пожалуйста " +"ознакомтесь с %sРуководством по безопасности и защите%s." + +msgid "Storage directory set successfully." +msgstr "Директория хранилища успешно установлена" + +msgid "Success" +msgstr "Успешно" + +msgid "Warning" +msgstr "Предупреждение" + +msgid "Failed" +msgstr "Неуспешно" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Если Вы используете Apache, создайте файл под названием .htaccess в Вашей главной директории " +"Галереи со следующим содержанием:" + +msgid "Version Check" +msgstr "Проверка версии" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Это не первая инсталляция, и уже инсталлированная версия не совпадает с новой версией." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Инталлированная версия не может быть обновлена на новую версию!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Инталлированная версия старше, чем новая версия. Вы должны запустить программу обновления " +"(upgrader), а не инсталляцию!" + +msgid "Currently installed" +msgstr "Текущая установка" + +msgid "New version" +msgstr "Новая версия" + +msgid "Go to the Upgrader!" +msgstr "Перейти в программу обновления (Upgrader)!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Сейчас Вы должны перейти в программу обновления (upgrader). Введите адрес URL в Ваше " +"браузере для %s/upgrade/index.php%s в Вашей %s директории." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Чтобы инсталлировать Gallery 2 на Ваш веб-сервер, Вам потребуется проделать %d шагов. " +"Программа инсталляции поможет пройти эти шаги и обеспечит поддержку во время процесса, если " +"потребуется проделать дополнительные действия для установки и запуска Галереи. Как только Вы " +"один раз пройдете любой из шагов, Вы сможете вернуться к нему и внести изменения в любое " +"время. Пожалуйста, прочтите %sфайл справки%s перед тем, как продолжить дальше." + +msgid "Select Language:" +msgstr "Выберете язык:" + +msgid "Go" +msgstr "Вперед" + +msgid "Begin Installation»" +msgstr "Начать инсталляцию»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL with Transactions (v3.23.34a или новее)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Основной модуль Галереи (ядро) успешно инсталлирован" + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Поздравляем, мы успешно инсталлировали основную часть Галереи. Однако, большинство из " +#~ "дейсвительно интересных функций в Галерее доступно вместе с дополнительными модулями, " +#~ "которые Вы можете установить и сконфигурировать. Следующий шаг позволит Вам перейти к " +#~ "процессу выбора модулей для инсталляции, так что Вы сможете подстроить Галерею выполнять " +#~ "те функции, которые хотите." + +#~ msgid "Install More Modules" +#~ msgstr "Инсталляция других модулей" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Перед тем как продолжить, Вы должны создать файл в Вашей %s папке под названием " +#~ "config.php. Вы должны удостовериться, что веб-сервер будет иметь возможность " +#~ "записывать в него. Если Вы используйете unix, попробуйте команду chmod 666 config.php. Если Windows, Вы не должны делать что-то специального. Как только Вы создадите данный " +#~ "файл и установите правильные разрешения, Вы можете продолжить. Если возникнут проблемы, " +#~ "мы сообщим Вам, что необходимо будет исправить." + +#~ msgid "Install Other Modules" +#~ msgstr "Инсталляция других модулей" + +#~ msgid "" +#~ "Gallery needs a directory to store your images. The directory we chose for you will work, " +#~ "but is web accessible." +#~ msgstr "" +#~ "Галерея требуется дирекорию, где будут храниться Ваши изображения. Директория, которая " +#~ "будет Вам предложена, будет работать, но в тоже время будет доступна через веб." + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (недостаточно хорошо протестировано)" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "Gallery needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browsed " +#~ "directly via the web. This is necessary if you wish to have your images accessible only " +#~ "via Gallery [%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "Галерее необходимо хранить данные в директории на Вашем сервере. Она будет использовать " +#~ "данную директорию для хранения Ваших изображений, а так же другой важной информации. В " +#~ "целях безопасности мы предлагаем расположить данную директорию за пределами Вашего " +#~ "веб-сайта, чтобы было невозможно просматривать ее напрямую через веб-сервер. Это " +#~ "необходимо, если Вы хотите, чтобы Ваши изображения были доступны только через Галерею [%" +#~ "s]. Обратите внимание, что путь ниже, который указан по умолчанию, находится внутри " +#~ "области веб-сервера. Это только потому, что мы не можем предположить с большой степенью " +#~ "вероятности директорию за пределами Вашего веб-сайта. Вы должны изменить это на более " +#~ "надежное месторасположение, например, на уровень ниже вашей home директории, если это " +#~ "возможно. Если Вы имеет доступ к Вашему сайту по FTP, скорее всего вы не можете " +#~ "воспользоваться данной опцией." + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get " +#~ "Gallery working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "Требуется, чтобы Ваш веб-сервер имел доступ на запись в эту директорию. Системы " +#~ "разрешений варьируются в зависимости от провайдера. Вы можете установить максимальные " +#~ "разрешения на данную директорию, чтобы позволить Галерее функционировать, но если Вы " +#~ "заботитесь о вопросах безопасности, Вы должны проконсультироваться с Вашим системным " +#~ "администратором, чтобы выяснить, как сделать ее максимально защищенной. Чтобы заставить " +#~ "это работать, Вы можете следовать следующими примерам." + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "Под этим подразумевается термин image firewall (защита изображений)" + +#~ msgid "Finished" +#~ msgstr "Завершение" + +#~ msgid "Installation Status" +#~ msgstr "Статус инсталляции" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "Тестовый файл SQL \"%s\" не найден." diff --git a/Source/gallery2/install/po/sk.po b/Source/gallery2/install/po/sk.po new file mode 100644 index 0000000..99769e7 --- /dev/null +++ b/Source/gallery2/install/po/sk.po @@ -0,0 +1,1123 @@ +# $Id: sk.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Branislav Hanacek , 2006. +# Branislav Hanacek , 2006. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-20 09:32-0800\n" +"PO-Revision-Date: 2006-09-10 21:10+0200\n" +"Last-Translator: Branislav Hanacek \n" +"Language-Team: Slovak \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: KBabel 1.11.4\n" +"X-Poedit-Language: Slovak\n" +"X-Poedit-Country: SLOVAKIA\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Unknown" +msgstr "Neznámy" + +msgid "Admin User Setup" +msgstr "" + +msgid "admin" +msgstr "" + +msgid "Gallery Administrator" +msgstr "" + +msgid "Authenticate" +msgstr "" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" + +msgid "Create Config File" +msgstr "" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" + +msgid "Database Setup" +msgstr "" + +msgid "You must have the MySQL PHP module installed" +msgstr "" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "" + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "" + +msgid "PostgreSQL v7.x and newer" +msgstr "" + +msgid "Oracle (9i and newer)" +msgstr "" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "" + +msgid "Install Gallery Core" +msgstr "" + +msgid "Installing the core module" +msgstr "Inštalujú sa základné moduly" + +msgid "Unable to initialize our Gallery data" +msgstr "" + +msgid "Unable to communicate with the database" +msgstr "" + +msgid "Unable to load the core module" +msgstr "" + +msgid "Unable to install the core module" +msgstr "" + +msgid "Unable to activate the core module" +msgstr "" + +msgid "Unable to commit database transaction" +msgstr "" + +msgid "Core module is only partially installed." +msgstr "" + +msgid "Install Plugins" +msgstr "" + +msgid "Unable to initialize our Gallery session" +msgstr "" + +#, c-format +msgid "Unable to load the %s module" +msgstr "" + +msgid "Installing modules" +msgstr "" + +#, c-format +msgid "Unable to install the %s module" +msgstr "" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "" + +msgid "Unable to get the module list" +msgstr "" + +msgid "Other" +msgstr "Iné" + +msgid "Installation Type" +msgstr "" + +msgid "Check Security" +msgstr "" + +msgid "Storage Setup" +msgstr "" + +msgid "System Checks" +msgstr "" + +msgid "Performing system checks" +msgstr "" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" + +msgid "PHP Version" +msgstr "" + +msgid "FILE directive supported" +msgstr "" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" + +msgid "Safe Mode" +msgstr "" + +msgid "Regular expressions" +msgstr "" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "" + +msgid "no limit" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "" + +msgid "Please enter a valid user name" +msgstr "" + +msgid "Please enter a password" +msgstr "" + +msgid "Password" +msgstr "Heslo" + +msgid "Setup password" +msgstr "" + +msgid "(type again)" +msgstr "" + +msgid "Admin email address" +msgstr "" + +msgid "Please enter a valid email address" +msgstr "" + +msgid "Admin full name (optional)" +msgstr "" + +msgid "Missing password! Please enter the same password twice" +msgstr "" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Vytvoriť" + +msgid "Save" +msgstr "Uložiť" + +msgid "Admin user info entered successfully." +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "" + +msgid "Authentication successful!" +msgstr "" + +msgid "Erase data for a clean install" +msgstr "" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "Zrušiť" + +msgid "Erase all data" +msgstr "" + +msgid "Please fix this error and try again." +msgstr "" + +msgid "Try Again" +msgstr "" + +msgid "Create a config file" +msgstr "" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "" + +msgid "Config file created successfully." +msgstr "" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "" + +msgid "DB Hostname:" +msgstr "" + +msgid "DB Username:" +msgstr "" + +msgid "DB Password:" +msgstr "" + +msgid "DB Name:" +msgstr "" + +msgid "Table Prefix:" +msgstr "" + +msgid "Column Prefix:" +msgstr "" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "" + +msgid "Reuse Existing Tables" +msgstr "" + +msgid "Database set up successfully." +msgstr "" + +msgid "Finished!" +msgstr "" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "" + +msgid "Start Over" +msgstr "" + +msgid "Error installing Gallery Core" +msgstr "" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "Meno" + +msgid "Version" +msgstr "Verzia" + +msgid "Description" +msgstr "Popis" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "" + +msgid "Activate Selected Modules" +msgstr "" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "" + +msgid "Activate More Modules" +msgstr "" + +#, c-format +msgid "Continue to Step %d»" +msgstr "" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "" + +#, c-format +msgid "Install %d%% complete" +msgstr "" + +msgid "Redo this step" +msgstr "" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "" + +msgid "Standard installation" +msgstr "" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "" + +msgid "Install Steps" +msgstr "" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "" + +msgid "Success" +msgstr "Úspech" + +msgid "Warning" +msgstr "" + +msgid "Failed" +msgstr "Chyba" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "" + +msgid "New version" +msgstr "" + +msgid "Go to the Upgrader!" +msgstr "" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "" + +msgid "Go" +msgstr "Prejsť na" + +msgid "Begin Installation»" +msgstr "" diff --git a/Source/gallery2/install/po/sr.po b/Source/gallery2/install/po/sr.po new file mode 100644 index 0000000..fe8ba2e --- /dev/null +++ b/Source/gallery2/install/po/sr.po @@ -0,0 +1,1490 @@ +# $Id: sr.po 16026 2007-03-16 16:30:29Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Jozef Selesi , 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 15:43-0700\n" +"PO-Revision-Date: 2005-09-07 12:42+0200\n" +"Last-Translator: Jozef Selesi \n" +"Language-Team: Srpski \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.10\n" + +msgid "Unknown" +msgstr "FNepoznato" + +msgid "Admin User Setup" +msgstr "Podešavanje administrativnog naloga" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Administrator Galerije" + +msgid "Authenticate" +msgstr "Provera identiteta" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Greška: nije pronađena login.txt datoteka. Molimo vas da je stavite u vaš %" +"s/ direktorijum." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Greška: vašu login.txt datoteku nije moguće pročitati. Molimo vas da Galeriji " +"date pravo na čitanje ove datoteke." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Greška: vaš login.txt ključ ne odgovara traženom. Molimo vas da preuzmete nov " +"niz znakova za proveru identiteta koji je dat ispod i pokušate ponovo." + +msgid "Create Config File" +msgstr "Pravljenje konfiguracione datoteke" + +#, fuzzy, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Pisanje u config.php datoteku sa podešavanjima u vašem %s direktorijumu nije " +"moguće. Molimo vas da joj izmenite prava. Ako koristite Unix, možete izvršiti chmod 666 " +"config.php da ovo sredite." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Datoteka config.php ne postoji u vašem %s direktorijumu." + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Datoteka config.php postoji, ali nije moguće pisati u nju. Ako je vaš server Windows, možda " +"ćete morati da isključite deljenje datoteka za config.php i ručno joj podesite prava." + +msgid "Database Setup" +msgstr "Podešavanje baze podataka" + +msgid "You must have the MySQL PHP module installed" +msgstr "Morate imati instaliran MySQL PHP modul" + +#, fuzzy +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Morate imati instaliran MySQL PHP modul" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Morate imati instaliran ibm_db2 PHP modul" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Morate imati instaliran PostgreSQL PHP modul" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Morate imati instaliran Oracle OCI8 PHP modul" + +#, fuzzy +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Morate imati instaliran Oracle OCI8 PHP modul" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Morate navesti prefiks za kolone (predlažemo %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Koristite samo slova, brojeve i donje crte u prefiksu kolona" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Morate navesti prefiks za tabele (predlažemo %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Koristite samo slova, brojeve i donje crte u prefiksu kolona" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Nije moguće priključiti se na bazu podataka tipa %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Sa zadatim informacijama nije moguće priključiti se na bazu podataka," + +msgid "The database you specified does not exist. Please create it." +msgstr "Baza podataka koju ste naveli ne postoji. Molimo vas da je napravite." + +msgid "The database privileges test did not complete successfully." +msgstr "Provera privilegija baze podataka nije uspešno završena." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Tabele Galerije već postoje u ovoj bazi podataka! Ali nema versions.dat datoteke u vašem G2 " +"direktorijumu za skladištenje, što interpretiramo kao nepravilno stanje Galerije 2. Ili " +"napravite versions.dat datoteku u tačnom formatu ako mislite da će vaša G2 ipak " +"funkcionisati, ili izaberite čistu instalaciju, koja će obrisati sve podatke u bazi podataka " +"i u direktorijumu za skladištenje." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Direktorijum Galerije 2 za skladištenje ima versions.dat datoteku iz prethodne instalacije. " +"Ali baza podataka Galerije ne postoji. Izaberite čistu instalaciju da izbrišete sve podatke " +"iz direktorijuma za skladištenje i pređite na sledeći korak." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Tabele Galerije već postoje u bazi podataka i postoji versions.dat datoteka u Galerijinom " +"direktorijumu za skladištenje. Ali verzija instaliranih tabela u bazi se ne slaže sa " +"verzijom instaliranih podataka u direktorijumu za skladištenje. Izaberite čistu instalaciju " +"da bi se izbrisali svi podaci u bazi i direktorijumu za skladištenje, i pređite na sledeći " +"korak." + +#, fuzzy +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Tabele Galerije već postoje u bazi podataka, a direktorijum za skladištenje se čini " +"netaknutim. Ili iskoristite tabele u postojećoj bazi podataka i podatke u direktorijumu za " +"skladištenje, ili uradite čistu instalaciju prilikom koje će svi postojeći podaci u bazi i " +"direktorijumu za skladištenje biti izbrisani." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Nije moguće izvršiti potreban API za brisanje Galerijinog direktorijuma za skladištenje. " +"Molimo vas da sami izbrišete ovaj direktorijum." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Nije moguće izvršiti potreban API za brisanje tabela u Galerijinoj bazi podataka. Molimo vas " +"da ih sami izbrišete." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Nije moguće učitati G2 API. Molimo vas da izbrišete tabele u Galerijinoj bazi i podatke u " +"direktorijumu za skladištenje." + +#, fuzzy +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL sa transakcijama (v3.23.34a ili novija)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (sve verzije)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x ili novija" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i i novije)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x i novije)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x ili novija" + +msgid "Unknown DB type or no known tables information." +msgstr "Nepoznat tip baze ili nema informacija o postojećim tabelama." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Nije pronađen neiskorišćen prefix nalik na \"%s\"." + +#, fuzzy, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Otvaranje SQL test datoteke \"%s\" nije uspelo." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nije uspelo pravljenje test sekvence u bazi podataka. Pročitajte prikazanu poruku o grešci, " +"proverite u README.html da li su sve privilegije odgovarajuće podešene i ispraznite bazu " +"podataka." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Nije uspelo brisanje testne sekvence iz baze podataka. Pročitajte prikazanu poruku o grešci, " +"proverite u README.html da li su sve privilegije odgovarajuće podešene i ispraznite bazu " +"podataka." + +msgid "Missing SQL statements" +msgstr "Nedostajuće SQL naredbe" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Pročitajte prikazanu poruku o grešci, proverite u README.html da li su sve privilegije " +"odgovarajuće podešene i ispraznite bazu podataka." + +#, fuzzy +msgid "Finish Installation" +msgstr "Višesajtna instalacija" + +msgid "Install Gallery Core" +msgstr "Instalacija jezgra Galerije" + +#, fuzzy +msgid "Installing the core module" +msgstr "Instaliraj druge module" + +msgid "Unable to initialize our Gallery data" +msgstr "Nije moguće pripremiti Galerijine podatke za rad" + +msgid "Unable to communicate with the database" +msgstr "Nije moguća komunikacija sa bazom podataka" + +msgid "Unable to load the core module" +msgstr "Nije moguće učitati modul sa jezgrom" + +msgid "Unable to install the core module" +msgstr "Nije moguće instalirati modul sa jezgrom" + +msgid "Unable to activate the core module" +msgstr "Nije moguće aktivirati modul sa jezgrom" + +msgid "Unable to commit database transaction" +msgstr "Nije moguće potvrditi transakciju u bazi podataka" + +msgid "Core module is only partially installed." +msgstr "Modul sa jezgrom je samo delimično instaliran." + +#, fuzzy +msgid "Install Plugins" +msgstr "Instalacioni koraci" + +#, fuzzy +msgid "Unable to initialize our Gallery session" +msgstr "Nije moguće pripremiti Galerijine podatke za rad" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Nije moguće učitati modul %s" + +#, fuzzy +msgid "Installing modules" +msgstr "Instalacija dodatnih modula" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Nije moguće instalirati modul %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Nije moguće aktivirati modul %s" + +msgid "Unable to get the module list" +msgstr "Nije moguće preuzeti spisak modula" + +msgid "Other" +msgstr "Drugo" + +msgid "Installation Type" +msgstr "Biranje vrste instalacije" + +msgid "Check Security" +msgstr "Provera bezbednosti" + +msgid "Storage Setup" +msgstr "Podešavanje skladišta" + +msgid "System Checks" +msgstr "Provera sistema" + +msgid "Performing system checks" +msgstr "Provera sistema" + +#, fuzzy +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP verzija >= 4.1.0 ili >= 5.0.4" + +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Greška: Galeriji 2 je potrebna PHP verzija 4.1.0 ili novija, ili 5.0.4 ili novija. Imate " +"instaliran PHP verzije %s. Tražite od administratora vašeg web servera da instalira noviju " +"verziju, koja se može preuzeti sa %sPHP web sajta%s." + +msgid "PHP Version" +msgstr "PHP verzija" + +msgid "FILE directive supported" +msgstr "FILE direktiva je podržana" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Greška: __FILE__ direktiva vašeg PHP-a ne funkcioniše pravilno. Molimo vas da potražite " +"pomoć od administratora vašeg web servera ili na Galerijinim forumima." + +msgid "FILE Directive" +msgstr "FILE direktiva" + +msgid "Safe mode disabled" +msgstr "Safe mode je onemogućen" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Greška: Vaša verzija PHP-a je konfigurisana sa uključenim safe mode-om. Safe mode mora biti " +"isključen pre pokretanja Galerije." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Regularni izrazi" + +#, fuzzy, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Greška: Vaša verzija PHP-a je konfigurisana sa uključenim safe mode-om. Safe mode mora biti " +"isključen pre pokretanja Galerije." + +msgid "exec() allowed" +msgstr "exec() je dozvoljen" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Upozorenje: Funkcija exec() je onemogućena u vašoj verziji PHP-a parametrom " +"disabled_functions u datoteci php.ini. Nećete moći da koristite module kojima su " +"potrebne spoljne binarne datoteke (npr. ImageMagick, NetPBM ili Ffmpeg). Ovo se može uraditi " +"samo na nivou servera, pa ćete morati da promenite ovaj parametar u globalnoj php.ini " +"datoteci." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() je dozvoljen" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Upozorenje: Funkcija set_time_limit() je onemogućena u vašoj verziji PHP-a parametrom " +"disabled_functions u php.ini datoteci. Galerija može da radi sa ovakvim " +"podešavanjima, ali ne pouzdano. Bilo koja radnja koja traje duže od %d sekundi će biti " +"neuspešna (a u nekim slučajevima samo prikazati praznu stranu), uz mogućnost oštećenja " +"podataka." + +msgid "Filesystem Operations" +msgstr "Operacije sistema datoteka" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Upozorenje: Funkcija set_time_limit() je onemogućena u vašoj verziji PHP-a parametrom " +"disabled_functions u php.ini datoteci. Galerija može da radi sa ovakvim " +"podešavanjima, ali ne pouzdano. Bilo koja radnja koja traje duže od %d sekundi će biti " +"neuspešna (a u nekim slučajevima samo prikazati praznu stranu), uz mogućnost oštećenja " +"podataka." + +msgid "Memory limit" +msgstr "Ograničenje memorije" + +msgid "no limit" +msgstr "nema ograničenja" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Upozorenje: Vaša verzija PHP-a je konfigurisana da ograniči memoriju na %sb (parametar " +"memory_limit u php.ini). Za ispravan rad Galerije, ovo ograničenje bi trebalo da " +"podignete na bar %sMB." + +msgid "File uploads allowed" +msgstr "Prenos datoteka je dozvoljen" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Upozorenje: Vaša verzija PHP-a nije podešena da omogući prenos datoteka na server (parametar " +"file_uploads u php.ini). Ovu mogućnost ćete morati da uključite ako želite da web " +"čitačem prenosite datoteke u Galeriju." + +msgid "Maximum upload size" +msgstr "Maksimalna veličina prenosa" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Upozorenje: Vaša verzija PHP-a je podešena da ograniči veličinu datoteka pri prenosu na %sb " +"(parametar upload_max_filesize u php.ini). Trebalo bi da povećate ovu vrednost da bi " +"bio moguć prenos većih datoteka." + +msgid "Maximum POST size" +msgstr "Maksimalna POST veličina" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Upozorenje: Vaša verzija PHP-a je podešena da ograniči POST podatke na najviše %sb " +"(parametar post_max_size u php.ini). Trebalo bi da povećate ovu vrednost da bi bio " +"moguć prenos većih datoteka." + +msgid "Translation support" +msgstr "Podrška za prevode" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Vaš web server ne podržava lokalizaciju. Da biste omogućili podršku za dodatne jezike, " +"molimo vas da tražite od sistem administratora da rekonfiguriše PHP sa omogućenom %sgettext%" +"s opcijom." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Vašem PHP-u nedostaje funkcija %sbind_textdomain_codeset%s. Ovo znači da će Galerija možda " +"netačno prikazivati posebne znake u nekim jezicima." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Vašem PHP-u nedostaje funkcija %sdngettext%s. Ovo znači da Galerija neće moći da prevodi " +"oblike množine." + +msgid "Zend compatibility mode" +msgstr "Režim Zend kompatibilnosti" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Upozorenje: Vaša verzija PHP-a je konfigurisana sa uključenim Zend ze1_compatibility_mode " +"režimom, što može prouzrokovati krah PHP-a. Kliknite here da proverite " +"vaš PHP. Ako se prikaže \"SUCCESS\", onda je sve u redu sa vašim PHP-om. Ako dobijete grešku " +"ili se ništa ne prikaže, onda morate isključiti ze1_compatibility_mode pre nego što " +"nastavite." + +msgid "putenv() allowed" +msgstr "putenv() je dozvoljen" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Upozorenje: Funkcija set_time_limit() je onemogućena u vašoj verziji PHP-a parametrom " +"disabled_functions u php.ini datoteci. Galerija može da radi sa ovakvim " +"podešavanjima, ali ne pouzdano. Bilo koja radnja koja traje duže od %d sekundi će biti " +"neuspešna (a u nekim slučajevima samo prikazati praznu stranu), uz mogućnost oštećenja " +"podataka." + +msgid "Output buffering disabled" +msgstr "Baferovanje izlaza je onemogućeno" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Upozorenje: Baferovanje izlaza je u vašem PHP-u uključeno parametrom %s u php.ini " +"datoteci. Galerija može da funkcioniše sa ovakvim podešavanjem, preuzimanje datoteka je čak " +"i brže, ali Galerija možda neće biti u mogućnosti da prikazuje velike datoteke (npr. velike " +"filmove) i dostići će memorijski limit. Takođe, neke funkcije, poput indikatora " +"napredovanja, možda neće pravilno funkcionisati ako uključeno baferovanje izlaza, osim ako " +"je dozvoljena ini_set() funkcija." + +msgid "Gallery file integrity" +msgstr "Integritet datoteka Galerije" + +msgid "Test skipped due to other errors." +msgstr "Test je preskočen zbog drugih grešaka." + +msgid "Theme available" +msgstr "Dostupan izgled" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Greška: U direktorijumu %s se mora nalaziti bar jedan izgled!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest fali ili je nedostupan" + +msgid "Welcome" +msgstr "Dobro došli" + +#, fuzzy +msgid "Please correct the following errors" +msgstr "Primili smo sledeće greške vezane za bezu podataka:" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Svaka Galerija ima bar jednog korisnika administratora koji ima mogućnost da pristupa i " +"menja sve. Molimo vas da izaberete korisničko ime i lozinku za vaš glavni administrativni " +"nalog. Kasnije ćete moći da dodate još korisnika." + +msgid "Admin username" +msgstr "Korisničko ime:" + +msgid "Please enter a valid user name" +msgstr "Molimo vas da unesete ispravno korisničko ime" + +msgid "Please enter a password" +msgstr "Molimo vas da unesete lozinku" + +msgid "Password" +msgstr "Lozinka" + +msgid "Setup password" +msgstr "Instalaciona lozinka" + +msgid "(type again)" +msgstr "(ukucajte ponovo)" + +msgid "Admin email address" +msgstr "Email adresa:" + +msgid "Please enter a valid email address" +msgstr "Molimo vas da unesete ispravnu email adresu" + +msgid "Admin full name (optional)" +msgstr "Puno ime (neobavezno)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Nedostaje lozinka! Molimo vas da dva puta unesete istu lozinku." + +msgid "The passwords you entered do not match! Please try again." +msgstr "Lozinke koje ste uneli nisu iste! Molimo vas da pokušate ponovo." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Pošto koristite postojeće tabele u bazi podataka, ovo nije sveža instalacija. Ovim će biti " +"promenjena samo instalaciona lozinka, ali ne i lozinka administrativnog korisnika. Da biste " +"promenili lozinku administratora, koristite Galerijin mehanizam za vraćanje izgubljene čifre." + +msgid "Create" +msgstr "Napravi" + +msgid "Save" +msgstr "Sačuvaj" + +msgid "Admin user info entered successfully." +msgstr "Podaci o administrativnom korisniku su uspešno uneti." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Da bi se instalacija nastavila, moramo da potvrdimo da ste onaj za koga se izdajete. " +"Najbolji način da to uradimo je da vas zamolimo da napravite malu izmenu u osnovnom " +"direktorijumu Galerije, što će dokazati da imate odgovarajuća prava. Prema tome, zamolićemo " +"vas da napravite novu tekstualnu datoteku sa nazivom login.txt u " +"direktorijumu %s vašeg web servera (to je isti direktorijum u kojem se nalazi main." +"php). Mora sadržati sledeće slučajno generisane znake:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Radi vaše udobnosti, pripremili smo vam %sispravnu verziju login.txt datoteke%s. Preuzmite " +"je i stavite u direktorijum %s, i sve će biti spremno." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Kada postavite datoteku, kliknite ispod da biste nastavili." + +msgid "Authenticate Me" +msgstr "Proverite moj identitet" + +msgid "Authentication successful!" +msgstr "Provera identiteta uspešna!" + +msgid "Erase data for a clean install" +msgstr "Briši podatke za čistu instalaciju" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Da li ste zaista sigurni da želite da izbrišete sve podatke u Galerijinom direktorijumu za " +"skladištenje i sve podatke u vašoj bazi podataka namenjenoj Galeriji?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" +"Desila se greška prilikom brisanja baze podataka i direktorijuma za skladištenje. Greška je " +"bila sledeća:" + +msgid "Cancel" +msgstr "Otkaži" + +msgid "Erase all data" +msgstr "Briši sve podatke" + +msgid "Please fix this error and try again." +msgstr "Molimo vas da ispravite ovu grešku i pokušate ponovo." + +msgid "Try Again" +msgstr "Pokušaj ponovo" + +msgid "Create a config file" +msgstr "Pravljenje konfiguracione datoteke" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Sada treba da sačuvamo sve podatke koje ste dali u datoteku sa nazivom config.php u " +"vašem %s direktorijumu. Ovo je izuzetno važna datoteka koja Galeriji pruža sve " +"informacije neophodne za pravilan rad. Pošto je napravimo, možete čitati njen sadržaj i " +"praviti eventualne izmene koje želite." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Pre nego što možemo da nastavimo, treba da napravite datotekuu vašem %s direktorijumu " +"naziva config.php. Uverite se da će web server moći da piše u njega." + +msgid "Unix (with shell access)" +msgstr "Unix (sa shell pristupom)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Na Windows-u, verovatno ništa posebno ne morate da uradite." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"Kada ste napravili ovu datoteku i pravilno podesili prava pristupa, možete nastaviti. Ako se " +"pojavi neki problem, reći ćemo vam kako da ga rešite." + +msgid "Create config file" +msgstr "Pravljenje konfiguracione datoteke" + +msgid "Config file created successfully." +msgstr "Konfiguraciona datoteka uspešno napravljena." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Upisali smo sve informacije koje ste nam dali u datoteku sa nazivom config.php u " +"osnovni direktorijum vaše Galerije. Možete pročitati ovu datoteku i napraviti izmene koje " +"želite. Međutim, obratite pažnju na to da ako u nju unesete grešku, Galerija neće raditi " +"ispravno!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Molimo vas da izaberete tip vaše baze podataka i unesete informacije potrebne za pristup. " +"Instalacioni program neće umesto vas napraviti bazu, pa je morate sami napraviti i ovde " +"uneti njeno ime. Ako instalirate Galeriju u bazu podataka koja već sadrži tabele, prefiksi " +"kolona i redova će sprečiti sukob sa onim što se u njoj nalazi." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Ovo je višesajtna instalacija. Zapamtite da svaki sajt mora da ima sopstvene tabele. Ili " +"izaberite drugu bazu podataka, ili drugi prefix za svaki od sajtova." + +msgid "Database type:" +msgstr "Tip baze podataka:" + +msgid "DB Hostname:" +msgstr "Adresa:" + +msgid "DB Username:" +msgstr "Korisničko ime:" + +msgid "DB Password:" +msgstr "Lozinka:" + +msgid "DB Name:" +msgstr "Naziv baze:" + +msgid "Table Prefix:" +msgstr "Prefiks tabela:" + +msgid "Column Prefix:" +msgstr "Prefiks kolona:" + +msgid "We received the following database related errors:" +msgstr "Primili smo sledeće greške vezane za bezu podataka:" + +msgid "Erase Data For A Clean Install" +msgstr "Briši sve podatke za čistu instalaciju" + +msgid "Reuse Existing Tables" +msgstr "Iskoristi postojeće tabele" + +msgid "Database set up successfully." +msgstr "Baza podataka uspešno konfigurisana." + +msgid "Finished!" +msgstr "Završeno!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Čestitamo! Instalacija vaše Galerije 2 je završena! Vidite da i nije bilo tako komplikovano, " +"zar ne? A sad je vreme za unos fotografija!" + +msgid "Go to my Gallery!" +msgstr "Idi u moju Galeriju" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Sada možete preći u vašu novu Galeriju. Unesite adresu %smain.php%s datoteke u vašem %s " +"direktorijumu." + +msgid "Installer Help" +msgstr "Pomoć u vezi sa instalacijom" + +msgid "Start Over" +msgstr "Kreni ispočetka" + +msgid "Error installing Gallery Core" +msgstr "Greška prilikom instalacije jezgra Galerije" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Nešto je pošlo naopako dok smo pokušali da instaliramo modul sa jezgrom. Šta sad?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Pređite na korak Provera sistema u instalacionom programu i proverite da li sve provere " +"pokazuju 'Uspešno'. Čest problem je ignorisanje upozorenja u vezi sa integritetom datoteka." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Ako nema upozorenja ili problema u koraku Provera sistema, ispraznite direktorijum za " +"skladištenje i izbrišite tabele u bazi podataka, i ponovo pokrenite instalacioni proces " +"(uradite sve korake)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Molimo vas da posetite stranicu sa %sčesto pastavljanim pitanjima%s i pročitate %sodeljak o " +"poznatim problemima u Readme datoteci%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Ako se problem i dalje javlja, molimo vas da napravite kopiju instalacionog dnevnika koji se " +"nalazi u %s i priključite ga (kao install.log.zip) uz novu temu na %sforumu za podršku " +"Galerije 2%s ili, ako je moguće, jednostavno dodajte link ka install.log datoteci u " +"forumskoj temi, da bi osoblje za podršku moglo da ga analizira bude li potrebe za tim." + +msgid "Stack Trace:" +msgstr "Stanje steka:" + +msgid "Installed Gallery Core successfully." +msgstr "Jezgro Galerije je uspešno instalirano." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Uspešno smo instalirali jezgro Galerije. Iako će u ovom trenutku sve raditi, trebalo bi da " +"nastavite sa instalacijom i dodate neke od dodatnih modula da biste imali skup mogućnosti " +"koji želite u vašoj instalaciji Galerije." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Sledeći moduli mogu biti automatski instalirani i aktivirani. Trebalo bi da izaberete bar " +"jednu od grafičkih alatki, jer, u suprotnom, Galerija neće moći da pravi umanjene prikaze " +"vaših slika. Na većini računara, automatska instalacija će to uraditi. Međutim, u nekim " +"slučajevima neće uspeti. Uvek možete aktivirati nove module ili deaktivirati neke od ovde " +"izabranih, tako da bilo koja odluka koju ovde načinite ne mora biti konačna." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Moguće je da neki od modula neće uspeti automatski da se instaliraju, što je u redu. To " +"obično znači da ih je potrebno podesiti, što možete uraditi na administrativnoj strani." + +msgid "Name" +msgstr "Naziv" + +msgid "Version" +msgstr "Verzija" + +msgid "Description" +msgstr "Opis" + +msgid "(Incompatible with this Gallery version)" +msgstr "(nekompatibilno sa ovom verzijom Galerije)" + +msgid "(un)check all" +msgstr "Obeleži/isključi sve" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Pređi na %d. korak bez aktiviranja»" + +msgid "Activate Selected Modules" +msgstr "Aktiviraj izabrane module" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modul %s je instaliran, ali ga je potrebno podesiti da bi mogao biti aktiviran." + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Pošto završite proces instalacije, prijavite se kao administrator i otvorite Administraciju. " +"Otvorite odeljak Moduli i podesite gore navedene module." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Modul %s uspešno aktiviran." + +msgid "Activate More Modules" +msgstr "Aktiviraj još modula" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Pređi na %d. korak»" + +msgid "Debug Output" +msgstr "Izlaz za otklanjanje grešaka" + +msgid "Welcome to the Gallery Installer" +msgstr "Dobro došli u instalacioni program Galerije" + +#, c-format +msgid "Install %d%% complete" +msgstr "Instalacija je %d%% završena" + +msgid "Redo this step" +msgstr "Ponovi ovaj korak" + +msgid "Gallery: your photos on your website" +msgstr "Galerija: vaše fotografije na vašem web sajtu" + +#, c-format +msgid "Missing files (%d)" +msgstr "Nedostajuće datoteke (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Napomena: Koristite Galeriju iz CVS-a, pa se može desiti da se ovde pojave nedavno uklonjene " +"datoteke." + +#, c-format +msgid "Modified files (%d)" +msgstr "Promenjene datoteke (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Napomena: Koristite Galeriju iz CVS-a, pa se može očekivati da će postojati bar neke " +"izmenjene datoteke. Verovatno ih možete ignorisati, ali za svaki slučaj izvršite 'cvs update " +"-Pd' pre nego što nastavite." + +#, c-format +msgid "Old files (%d)" +msgstr "Stare datoteke (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Ove datoteke više nisu deo Galerije. Verovatno neće prouzrokovati nikakve probleme, ali bi " +"bilo dobro da ih uklonite kako bi vaša instalacija bila čista." + +msgid "Errors occurred. Please see messages below." +msgstr "Desile su se greške. Molimo vas pogledate poruke ispod." + +msgid "Please select the installation type" +msgstr "Molimo vas da izaberete vrstu instalacije:" + +msgid "Standard installation" +msgstr "Standardna instalacija" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Ovo je podrazumevana vrsta instalacije. Izaberite je ako želite da instalirate novu Galeriju " +"u direktorijum %s kojoj će moći da se pristupi preko adrese %s." + +msgid "Multisite installation" +msgstr "Višesajtna instalacija" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Galerija jednom instalacijom osnovnih datoteka može da podrži više nezavisnih sajtova. " +"Izaberite ovu vrstu instalacije ako želite da instalirate novu Galeriju na isti web server, " +"ali u drugi direktorijum, poddomen ili URL domen." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Višesajtne Galerije ne dele albume, fotografije, korisnike niti bilo šta drugo. Potrebne su " +"im sopstvene baze podataka i direktorijumi za skladištenje. Za više informacija i " +"objašnjenja u vezi sa Višesajtnim instalacijama, posetite %s stranu." + +msgid "You must enter a directory" +msgstr "Morate uneti direktorijum" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Direktorijum koje ste uneli je direktorijum skladišta izvornog koda. Ako želite da " +"instalirate Galeriju u taj direktorijum, izaberite standardnu vrstu instalacije. Ako želite " +"višesajtnu instalaciju, izaberite neki drugi direktorijum." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Direktorijum koji ste uneli ne postoji, ili nema prava pristupa zbog vaše konfiguracije web " +"servera. Vaš web server je podešen da dozvoli pristup samo sledećim direktorijumima. Morate " +"izabrati direktorijum pod jednim od njih, ili morate izmeniti open_basedir parametar " +"u vašoj PHP konfiguraciji da biste dozvolili upis i u neki drugi direktorijum." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Ako se vaša višesajtna instalacija nalazi u drugom virtuelnom domaćinu, treba da " +"kontaktirate vašeg sistem administratora i tražite da konfigurišu vaš open_basedir " +"parametar, kako bi vaši virtualni domaćini mogli pristupati jedan drugom." + +msgid "The directory you entered does not exist" +msgstr "Direktorijum koji ste uneli ne postoji" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Direktorijum koji ste uneli nije dostupan. Promenite mu prava tako da web server može da ga " +"čita." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Pravljenje višesajtnih fajlova nije moguće. Proverite da li je moguće pisati u ispod " +"navedene datoteke." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Sve višesajtne Galerije se instaliraju iz ovog skladišta izvornog koda." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Unesite ispod direktorijum za novu višesajtnu Galeriju. Putanja mora biti različita od " +"putanje ovog skladišta izvornog koda:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Vaš web sever i PHP moraju imati pravo pisanja u direktorijum ili sadržati sledeće datoteke:" + +msgid "Select Directory" +msgstr "Izaberi direktorijum" + +msgid "Multisite directory setup successfully." +msgstr "Višesajtni direktorijum se uspešno podešen." + +msgid "Standard installation selected." +msgstr "Izabrana je standardna instalacija." + +msgid "Install Steps" +msgstr "Instalacioni koraci" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Želimo da budemo sigurni da je vaša Galerija bezbedna. Datoteka config.php koju je ova " +"instalacija popunila ima tako podešena prava da i neko drugi može da je menja. Ovo je tako " +"zbog toga što je, sa stanovišta Unix prava u sistemu datoteka, i Galerija \"neko drugi\". " +"Prema tome, pre nego što završite, trebalo bi da promenite prava ove datoteke tako da drugi " +"korisnici ne mogu da je menjaju. Trenutno je režim vaše config.php datoteke %s. Predlažemo " +"da uradite sledeće:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Želimo da budemo sigurni da je vaša Galerija bezbedna. Direktorijum koji sadrži vašu config." +"php datoteku koji je ova instalacija menjala ima tako podešena prava da dozvoljava drugima " +"da ga menjaju. Pre nego što završite, trebalo bi da promenite prava ovog direktorijuma tako " +"da drugi korisnici ne mogu da ga menjaju. Predlažemo da uradite sledeće:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Ako zaista želite da nastavite, možete. Ali preporučujemo da provedete bar jedan momenat da " +"biste bili sigurni da ste bezbedni." + +msgid "We've verified that your config.php is secure." +msgstr "Potvrdili smo da je vaš config.php bezbedan." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Molimo vas da pročitate %1$sVodič kroz bezbednost Galerije%3$s. Za brz pregled, pogledajte %2" +"$skratku kontrolnu listu%3$s unutar Vodiča." + +msgid "Check Again" +msgstr "Proveri ponovo" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Galeriji je potreban direktorijum za skladištenje vaših slika. Direktorijum koji smo " +"izabrali će funkcionisati, ali njegova lokacija i sadašnji naziv ne pružaju maksimalnu " +"bezbednost. Izaberite novi direktorijum van %skorenskog%s direktorijuma, ili dodajte " +"slučajno odabran niz znakova na kraj naziva direktorijuma (npr. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"Radi maksimalne bezbednosti, trebalo bi da izaberete direktorijum kojem nije moguć %spristup " +"preko weba%s. Ako ovo nije moguće, zadajte mu slučajno izabran naziv." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Ako ste odabrali slučajan naziv ili ipak želite da koristite naveden direktorijum, molimo " +"vas da potvrdite taj izbor." + +msgid "Yes, please omit the security check:" +msgstr "Da, molim vas da preskočite bezbednosnu proveru:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Ovo je višesajtna instalacija. Zapamtite da svaka višesajtna Galerija zahteva sopstveni " +"direktorijum za skladištenje." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Ako koristite moderan čitač, pokušaćemo da dovršimo putanju koju ovde unesete. Ako imate " +"problema sa pronalaženjem odgovarajuće putanje za vaš direktorijum za skladištenje, " +"pokušajte da eksperimentišete sa putanjama u polju za unos ispod i vidite koje su vam dopune " +"pružene." + +msgid "The directory you entered is read only" +msgstr "Direktorijum koji ste uneli je samo za čitanje" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" +"Desila se greška u toku pravljenja strukture direktorijuma unutar direktorijuma za " +"skladištenje." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Direktorijum za skladištenje je uspešno podešen." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Nije moguće potvrditi da skladišnom direktorijumu nije moguć %spristup preko weba%s." + +msgid "Directory path:" +msgstr "Putanja direktorijuma:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Vaš web server mora biti u stanju da piše u ovaj direktorijum. Da bi u tome uspeo, možete " +"iskoristiti sledeće primere." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "Napomena: Ovo su samo primeri! Moguće je da neće raditi baš najbolje na vašem sistemu." + +msgid "Unix (with ftp access)" +msgstr "Unix (sa FTP pristupom)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Obratite pažnju na to da FTP serveri i klijenti variraju, tako da ova uputstva možda neće " +"odgovarati vašem slučaju. Pročitajte uputstvo vašeg FTP klijenta ili razgovarajte sa " +"administratorom sistema ako imate problema," + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"U nekim okolnostima iznajmljivanja web prostora, putanje koje vidite u shell-u ili preko FTP-" +"a nisu iste putanje koje i PHP vidi. Da biste saznali pravu putanju do vašeg direktorijuma " +"za skladištenje, možete pokušati da napravite PHP skript pod nazivom dir.php sa ispod " +"datim sadržajem i stavite ga u vaš direktorijum za skladištenje." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"Onda otkrijte adresu datoteke dir.php i otvorite je u vašem web čitaču (npr. %s), što će vam " +"ispisati tačnu putanju koju ovde treba da unesete." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Napomena: Ovo podrazumeva da je vaš direktorijum za skladištenje dostupan preko web-" +"a, što ne preporučujemo, jer zaobilazi našu zaštitnu barijeru za slike. Kada na ovaj način " +"otkrijete pravu putanju, preporučujemo da vaš direktorijum za skladištenje premestite van " +"prostora dostupnog preko web-a i onda ovde ažurirate putanju." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Napomena: Nemojte zaboraviti da izbrišete dir.php kada završite!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"Za više informacija o zaštiti skladišnog direktorijuma vaše Galerije, molimo vas da " +"pročitate %sVodič kroz bezbednost%s." + +msgid "Storage directory set successfully." +msgstr "Direktorijum za skladištenje je uspešno podešen." + +msgid "Success" +msgstr "Uspešno" + +msgid "Warning" +msgstr "Upozorenje" + +msgid "Failed" +msgstr "Neuspešno" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Ako koristite Apache, napravite datoteku sa nazivom .htaccess u glavom direktorijumu " +"Galerije 2 sa sledećim sadržajem:" + +msgid "Version Check" +msgstr "Provera verzije" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Ovo nije sveža instalacija, a instalirana verzija ne odgovara novoj verziji." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Instalirana verzija se ne može nadograditi na novu!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Instalirana verzija je starija od nove. Trebalo bi da pokrenete proces nadogradnje, a ne " +"instalacije." + +msgid "Currently installed" +msgstr "Trenutno instalirano" + +msgid "New version" +msgstr "Nova verzija" + +msgid "Go to the Upgrader!" +msgstr "Pokreni nadogradnju!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Sada bi trebalo da pokrenete nadogradnju. Unesite u vaš čitač adresu %s/upgrade/index.php%s " +"u vašem %s direktorijumu." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Instalacija Galerije 2 na vaš web server sastoji se iz %d koraka. Ovaj program za " +"instalaciju će vas voditi kroz te korake i pružati vam pomoć usput ako su potrebni dodatni " +"koraci za pokretanje Galerije. Pošto se jedan korak završi, možete se u bilo kom trenutku " +"vratiti i napraviti izmene. Molimo vas da pročitate %sUputstvo za instalaciju%s pre nego što " +"nastavite." + +msgid "Select Language:" +msgstr "Izaberite jezik:" + +msgid "Go" +msgstr "Kreni" + +msgid "Begin Installation»" +msgstr "Počni instalaciju»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL sa transakcijama (v3.23.34a ili novija)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Jezgro Galerije je uspešno instalirano." + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Čestitamo, uspešno smo instalirali osnovu Galerije. Međutim, većina zaista zanimljivih " +#~ "mogućnosti Galerije se nalazi u dodatnim modulima koje možete instalirati i podesiti. Da " +#~ "biste mogli da prilagodite Galeriju svojim potrebama, u sledećem koraku ćete moći da " +#~ "izaberete module koji vas zanimaju." + +#~ msgid "Install More Modules" +#~ msgstr "Instalacija dodatnih modula" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Pre nego što nastavimo, treba da napravite jednu datoteku u vašem %s direktorijumu " +#~ "sa nazivom config.php. Morate osigurati da će vaš web server biti u mogućnosti da " +#~ "piše u njega. Ako koristite Unix, pokušajte da izvršite chmod 666 config.php. Na " +#~ "Windows-u, ne biste morali da radite ništa posebno. Kada ste napravili ovu datoteku i na " +#~ "odgovarajući način podesili prava, možete nastaviti. Ako postoji problem, reći ćemo vam " +#~ "kako da ga rešite." + +#~ msgid "Install Other Modules" +#~ msgstr "Instaliraj druge module" + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (nije detaljno testiran)" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "Gallery needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browsed " +#~ "directly via the web. This is necessary if you wish to have your images accessible only " +#~ "via Gallery [%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "Galerija treba da skladišti podatke u jednom direktorijumu na vašem serveru. Ovaj " +#~ "direktorijum će koristiti za čuvanje vaših slika kao i drugih važnih podataka. Iz " +#~ "bezbednosnih razloga, predlažemo da izaberete direktorijum koji nije unutar vašeg " +#~ "sajta da mu ne bi bilo moguće pristupiti direktno preko web-a. Ovo je neophodno ako " +#~ "želite da se vašim slikama pristupa isključivo preko Galerije [%s]. Obratite pažnju na to " +#~ "da je dole navedena podrazumevana putanja unutar web servera. Ovo je zbog toga što ne " +#~ "možemo pouzdano da navedemo direktorijum van vašeg web sajta. Trebalo bi da je zamenite " +#~ "bezbednom lokacijom, kao što je na primer putanja pod vašim korisničkom direktorijumom. " +#~ "Ako svom sajtu pristupate preko FTP-a, ovo možda neće biti moguće." + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get " +#~ "Gallery working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "Vaš web server mora imati pravo da piše u ovaj direktorijum. Sistemi prava variraju od " +#~ "servera do servera. Možete dati veoma široka ovlašćenja ovom direktorijumu da omogućite " +#~ "rad Galerije, ali ako vas brine bezbednost, trebalo bi da se konsultujete sa vašim " +#~ "administratorom sistema u vezi sa tim kako postići najbolju moguću sigurnost. Da bi " +#~ "proradila, možete da pratite ove primere:" + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "Ovo je poznato i kao zaštitna barijera za slike." + +#~ msgid "Finished" +#~ msgstr "Završeno" + +#~ msgid "Installation Status" +#~ msgstr "Stanje instalacije" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "Nije pronađena SQL test datoteka \"%s\"." diff --git a/Source/gallery2/install/po/strings.raw b/Source/gallery2/install/po/strings.raw new file mode 100644 index 0000000..3fe520f --- /dev/null +++ b/Source/gallery2/install/po/strings.raw @@ -0,0 +1,348 @@ +# $Id: strings.raw 16577 2007-06-10 20:50:34Z mindless $ + +/* InstallStep.class */ +gettext("Unknown") + +/* steps/AdminUserSetupStep.class */ +gettext("Admin User Setup") /* also in: templates/AdminUserSetupRequest.html */ +gettext("admin") +gettext("Gallery Administrator") + +/* steps/AuthenticateStep.class */ +gettext("Authenticate") /* also in: templates/AuthenticateRequest.html */ +gettext("Error: could not locate login.txt. Please place it in your %s/ directory.") +gettext("Error: your login.txt file is not readable. Please give Gallery read permissions on the file.") +gettext("Error: your login.txt key does not match correctly. Please download a new authentication string from below and try again.") + +/* steps/CreateConfigFileStep.class */ +gettext("Create Config File") +gettext("Unable to write to the config.php configuration file in your %s directory. Please change its permissions. If you're on Unix you can do chmod 666 config.php to fix this.") +gettext("The config.php file does not exist in your %s directory") +gettext("The config.php file exists but is not writeable. If your server is Windows, you may have to disable file sharing for config.php and set its permissions manually.") + +/* steps/DatabaseSetupStep.class */ +gettext("Database Setup") /* also in: templates/DatabaseSetupRequest.html */ +gettext("You must have the MySQL PHP module installed") +gettext("You must have the MySQL Improved PHP module installed") +gettext("You must have the ibm_db2 PHP module installed") +gettext("You must have the PostgreSQL PHP module installed") +gettext("You must have the Oracle OCI8 PHP module installed") +gettext("You must have the Component Object Model(COM) PHP module installed") +gettext("You must specify a column prefix (we recommend %s)") +gettext("Use only letters, numbers and underscore in the column prefix") +gettext("You must specify a table prefix (we recommend %s)") +gettext("Use only letters, numbers and underscore in the table prefix") +gettext("Unable to create a database connection of type %s") +gettext("Unable to connect to database with the information provided.") +gettext("The database you specified does not exist. Please create it.") +gettext("The database privileges test did not complete successfully.") +gettext("Gallery tables already exist in this database! But there is no 'versions.dat' file in your G2 storage directory which we interpret as a broken state of G2. Either create a versions.dat file with the correct format if you think your G2 should still work or select a clean install, which will erase all data in the database and in the storage directory.") +gettext("The G2 storage directory has a versions.dat file of an old install. But the Gallery database tables don't exist. Select a clean install to erase all data in the Gallery storage directory and advance to the next step.") +gettext("Gallery tables already exist in the database and there is a versions.dat file in the Gallery storage directory. But the version of the installed Gallery database tables does not match the version of the installed data in the Gallery storage directory. Select a clean install to erase all data in the database and in the storage directory and to advance to the next step.") +gettext("Gallery tables already exist in the database and the Gallery storage directory seems to be intact. Either choose to reuse the existing database tables and storage directory data or select a clean install to erase all existing data in the database and the storage directory.") +gettext("Could not execute the required API to erase the storage directory. Please erase the Gallery storage directory manually.") +gettext("Could not execute the required API to drop the Gallery database tables. Please clean the Gallery database manually.") +gettext("Could not load the G2 API. Please erase the Gallery database tables and the storage directory manually.") +gettext("MySQL (v3.23.34a and newer)") +gettext("MySQL (versions before v3.23.34a)") +gettext("PostgreSQL v7.x and newer") +gettext("Oracle (9i and newer)") +gettext("IBM DB2 (v9.x and newer)") +gettext("Microsoft SQL Server 2005 and newer") +gettext("Unknown DB type or no known tables information.") +gettext("Could not find an unused table prefix similar to \"%s\".") +gettext("Could not open schema file: \"%s\".") +gettext("Failed to create a DB test sequence.Check the returned error message and README.html for missing privileges and clean up the database.") +gettext("Test failed to drop a DB test sequence.Check the returned error message and README.html for missing privileges and clean up the database.") +gettext("Missing SQL statements") +gettext("Check the returned error message and README.html for missing privileges and clean up the database.") + +/* steps/FinishedStep.class */ +gettext("Finish Installation") + +/* steps/InstallCoreModuleStep.class */ +gettext("Install Gallery Core") +gettext("Installing the core module") +gettext("Unable to initialize our Gallery data") /* also in: steps/InstallOtherModulesStep.class */ +gettext("Unable to communicate with the database") +gettext("Unable to load the core module") +gettext("Unable to install the core module") +gettext("Unable to activate the core module") +gettext("Unable to commit database transaction") /* also in: steps/InstallOtherModulesStep.class */ +gettext("Core module is only partially installed.") + +/* steps/InstallOtherModulesStep.class */ +gettext("Install Plugins") /* also in: templates/InstallOtherModulesRequest.html templates/InstallOtherModulesSuccess.html */ +gettext("Unable to initialize our Gallery session") +gettext("Unable to load the %s module") +gettext("Installing modules") +gettext("Unable to install the %s module") +gettext("Unable to activate the %s module") +gettext("Unable to get the module list") +gettext("Other") + +/* steps/MultisiteStep.class */ +gettext("Installation Type") /* also in: templates/Multisite.html */ + +/* steps/SecureStep.class */ +gettext("Check Security") /* also in: templates/Secure.html */ + +/* steps/StorageSetupStep.class */ +gettext("Storage Setup") /* also in: templates/StorageSetupRequest.html */ + +/* steps/SystemChecksStep.class */ +gettext("System Checks") /* also in: templates/SystemChecks.html */ +gettext("Performing system checks") +gettext("PHP version >= 4.3.0 or >= 5.0.4") +gettext("Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version %s installed. Contact your webserver administrator to request an upgrade, available at the %sPHP website%s.") +gettext("PHP Version") +gettext("FILE directive supported") +gettext("Error: your PHP __FILE__ directive is not functioning correctly. Please file a support request with your webserver administrator or in the Gallery forums.") +gettext("FILE Directive") +gettext("Safe mode disabled") +gettext("Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode before Gallery will run.") +gettext("Safe Mode") +gettext("Regular expressions") +gettext("Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. You must enable these functions before Gallery will run.") +gettext("exec() allowed") +gettext("Warning: The exec() function is disabled in your PHP by the disabled_functions parameter in php.ini. You won't be able to use modules that require external binaries (e.g. ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change it in the global php.ini.") +gettext("set_time_limit() allowed") +gettext("Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate reliably. Any operation that takes longer than %d seconds will fail (and in some cases just return a blank page) possibly leading to data corruption.") +gettext("Filesystem Operations") +gettext("Error: Essential filesystem operations are disabled in your PHP by the disabled_functions parameter in php.ini. You must allow these functions before Gallery will run. These functions are missing: %s.") +gettext("Memory limit") +gettext("no limit") +gettext("Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in php.ini). You should raise this limit to at least %sMB for proper Gallery operation.") +gettext("File uploads allowed") +gettext("Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in php.ini). You will need to enable this option if you want to upload files to your Gallery with a web browser.") +gettext("Maximum upload size") +gettext("Warning: Your PHP is configured to limit the size of file uploads to %sb (upload_max_filesize parameter in php.ini). You should raise this limit to allow uploading bigger files.") +gettext("Maximum POST size") +gettext("Warning: Your PHP is configured to limit the post data to a maximum of %sb (post_max_size parameter in php.ini). You should raise this limit to allow uploading bigger files.") +gettext("Translation support") +gettext("Your webserver does not support localization. To enable support for additional languages please instruct your system administrator to reconfigure PHP with the %sgettext%s option enabled.") +gettext("Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display extended characters for some languages incorrectly.") +gettext("Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to translate plural forms.") +gettext("Zend compatibility mode") +gettext("Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to crash. Click here to test your PHP. If you see \"SUCCESS\" then your PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode before proceeding.") +gettext("putenv() allowed") +gettext("Warning: The putenv() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but on some rare systems Gallery will be unable to run in other languages than the system language and English.") +gettext("Output buffering disabled") +gettext("Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. Gallery can function with this setting - downloading files is even faster - but Gallery might be unable to serve large files (e.g. large videos) and run into the memory limit. Also, some features like the progress bars might not work correctly if output buffering is enabled unless ini_set() is allowed.") +gettext("Gallery file integrity") +gettext("Test skipped due to other errors.") +gettext("Theme available") +gettext("Error: There must be at least one theme in the %s folder!") +gettext("Manifest missing or inaccessible.") + +/* steps/WelcomeStep.class */ +gettext("Welcome") /* also in: templates/Welcome.html */ + +/* templates/AdminUserSetupRequest.html */ +gettext("Please correct the following errors") +gettext("Every Gallery will have at least one administrator user who has full access to view/modify everything. Please choose a username and password for your main administrator account. You can add additional users later.") +gettext("Admin username") +gettext("Please enter a valid user name") +gettext("Please enter a password") +gettext("Password") +gettext("Setup password") +gettext("(type again)") +gettext("Admin email address") +gettext("Please enter a valid email address") +gettext("Admin full name (optional)") +gettext("Missing password! Please enter the same password twice") +gettext("The passwords you entered do not match! Please try again.") +gettext("As you are reusing existing database tables, this is not a fresh install. This will only change the setup password, but not change the password of the site admin. To change the password of the site admin, choose the forgot password mechanism of Gallery.") +gettext("Create") +gettext("Save") /* also in: templates/DatabaseSetupRequest.html templates/StorageSetupRequest.html */ + +/* templates/AdminUserSetupSuccess.html */ +gettext("Admin user info entered successfully.") + +/* templates/AuthenticateRequest.html */ +gettext("In order to proceed with the install, we have to verify that you are who you claim. The best way to be sure is to ask you to make a tiny change in the Gallery directory which will prove that you have the right permissions. So, we're going to ask that you create a new text file called login.txt in the %s directory on your webserver (that's the same directory where main.php is located). It must contain the following randomly generated characters:") +gettext("As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. Download that and copy it into your %s directory and you're all set.") +gettext("Once you've uploaded the file, click below to continue.") +gettext("Authenticate Me") + +/* templates/AuthenticateSuccessful.html */ +gettext("Authentication successful!") + +/* templates/CleanInstallRequest.html */ +gettext("Erase data for a clean install") +gettext("Are you really sure you want to delete all your data in your Gallery storage directory and all your data in your Gallery database?") +gettext("There was an error erasing the db and storage directory data. Here's the error:") +gettext("Cancel") +gettext("Erase all data") + +/* templates/CreateConfigFileFailed.html */ +gettext("Please fix this error and try again.") +gettext("Try Again") + +/* templates/CreateConfigFileInstructions.html */ +gettext("Create a config file") +gettext("Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the information that it needs to operate. After we create it, you can read through this file and make changes to it if you want.") +gettext("Before we can proceed, you should create a file in your %s directory called config.php. You must make sure that the webserver will be able to write to it.") +gettext("Unix (with shell access)") /* also in: templates/StorageSetupRequest.html */ +gettext("On Windows, you shouldn't have to do anything special.") +gettext("When you've created this file and set the permissions properly, you can proceed. If there's a problem, we'll tell you what to fix.") +gettext("Create config file") + +/* templates/CreateConfigFileSuccess.html */ +gettext("Config file created successfully.") /* also in: templates/VersionCheckFailed.html */ +gettext("We've written out all the information you provided into a file called config.php in your gallery2 directory. You can read through this file and make changes to it if you want. Be careful, though -- if you make mistakes in that file then Gallery won't work properly!") + +/* templates/DatabaseSetupRequest.html */ +gettext("Please select your database type and enter your database authentication information. The installer will not create the database for you, so you must create one yourself and enter the database name here. If you are installing Gallery into a database that already has tables in it, the table and column prefixes will keep Gallery data from conflicting with what you already have.") +gettext("This is a multisite installation. Remember that each multisite requires its own database tables. Either choose a different database or a different table prefix for each multisite!") +gettext("Database type:") +gettext("DB Hostname:") +gettext("DB Username:") +gettext("DB Password:") +gettext("DB Name:") +gettext("Table Prefix:") +gettext("Column Prefix:") +gettext("We received the following database related errors:") +gettext("Erase Data For A Clean Install") +gettext("Reuse Existing Tables") + +/* templates/DatabaseSetupSuccess.html */ +gettext("Database set up successfully.") + +/* templates/Finished.html */ +gettext("Finished!") +gettext("Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now it's time to upload some photos!") +gettext("Go to my Gallery!") +gettext("You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %s directory.") + +/* templates/Header.html */ +gettext("Installer Help") +gettext("Start Over") + +/* templates/InstallCoreModuleError.html */ +gettext("Error installing Gallery Core") +gettext("Something went wrong when we tried to install the core module. What to do next?") +gettext("Go to the System Checks step of the installer and make sure all checks shows 'Success'. A common issue is that the file integrity warning is ignored.") +gettext("If there are no warnings or failures in the System Checks step, empty your storage directory and delete the database tables and start the installation process a second time (redo all steps).") +gettext("Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s.") +gettext("If the problem persists, please copy the installation log which is located at %s and attach it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, just add a link to the install.log in the forum topic such that the support staff can analyze it if necessary.") +gettext("Stack Trace:") + +/* templates/InstallCoreModuleSuccess.html */ +gettext("Installed Gallery Core successfully.") +gettext("We've successfully installed the core of Gallery. Although everything will work at this point, you should continue with the installer and add in some of the optional modules so that you can get the right set of features that you want for your Gallery installation.") + +/* templates/InstallOtherModulesRequest.html */ +gettext("The following modules can be automatically installed and activated for you. You should install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of your images. On most systems, the automatic install will work properly for you. However, in some cases it may fail. You can always activate new modules or deactivate any of the ones you choose here on the Site Administration page, so any decision you make here is not permanent.") +gettext("Some modules may fail to install automatically. That's ok. It typically means that they require some configuration, which you can do on the Site Adminstration page") +gettext("Name") +gettext("Version") +gettext("Description") +gettext("(Incompatible with this Gallery version)") +gettext("(un)check all") +gettext("Continue to Step %d Without Activating»") +gettext("Activate Selected Modules") + +/* templates/InstallOtherModulesSuccess.html */ +gettext("The %s module was installed, but needs configuration to be activated") +gettext("After finishing this installation, login as Admin and browse to Site Admin. Go to the Modules view and configure the above listed modules.") +gettext("Activated the %s module successfully") +gettext("Activate More Modules") +gettext("Continue to Step %d»") /* also in: templates/MainPage.html templates/Multisite.html */ +gettext("Debug Output") + +/* templates/MainPage.html */ +gettext("Welcome to the Gallery Installer") +gettext("Install %d%% complete") +gettext("Redo this step") +gettext("Gallery: your photos on your website") + +/* templates/ManifestSystemCheck.html */ +gettext("Missing files (%d)") +gettext("Note: You're running Gallery from SVN, so recently removed files may appear here. It might be safe to ignore these.") +gettext("Modified files (%d)") +gettext("Note: You're running Gallery from SVN, so some modified files are to be expected. You can probably ignore these, but to be safe you should make sure that you do 'svn update' before continuing.") +gettext("Old files (%d)") +gettext("These files are no longer part of Gallery. They probably won't cause any problems but it is a good idea to remove them to keep your install clean.") + +/* templates/Multisite.html */ +gettext("Errors occurred. Please see messages below.") /* also in: templates/StorageSetupRequest.html */ +gettext("Please select the installation type") +gettext("Standard installation") +gettext("This is the default installation type. Choose this installation type if you want to install a new Gallery in the directory %s which will be accessible with the URL %s.") +gettext("Multisite installation") +gettext("Gallery can support multiple independent sites with a single installation of the code. Choose this installation type if you want to install a new Gallery on the same webserver but in a different path, subdomain or URL domain.") +gettext("The multisites don't share albums, photos, users, or anything else. They all need their own database and their own storage directory. For more information and explanations about Multisite installations, visit the %s page.") +gettext("You must enter a directory") /* also in: templates/StorageSetupRequest.html */ +gettext("The directory you entered is the codebase directory. If you want to install a Gallery in the codebase directory, select the standard installation type. If you want to install a multisite, choose another directory.") +gettext("The directory you entered either does not exist, or is prohibited by your webserver configuration. Your webserver is configured to only allow access to the following directories. You must choose a directory under one of these, or you must modify the open_basedir setting in your PHP configuration to allow a new directory.") +gettext("If your multisite install is in a different virtual host, you should contact your system administrator and request that they configure your open_basedir setting so that your virtual hosts can access each other.") +gettext("The directory you entered does not exist") /* also in: templates/StorageSetupRequest.html */ +gettext("The directory you entered is not accessible. Change the permissions so that the webserver can read this directory.") /* also in: templates/StorageSetupRequest.html */ +gettext("Unable to create multisite files. Ensure the files listed below are writeable.") +gettext("All multisites are installed from this central code repository (codebase).") +gettext("Enter the directory for the new multisite below. The path must be different from this codebase installation's path:") +gettext("The directory must be writeable by your webserver/php user or contain the following writeable files:") +gettext("Select Directory") + +/* templates/MultisiteSuccess.html */ +gettext("Multisite directory setup successfully.") +gettext("Standard installation selected.") + +/* templates/NavBar.html */ +gettext("Install Steps") + +/* templates/Secure.html */ +gettext("We want to make sure that your Gallery is secure. The config.php file that this installer has edited has permissions that allow other people to write to it. This is required because the installer qualifies as an \"other person\" when it comes to Unix file permissions. So before you finish, you should change the permissions on this file such that other users can't write to it. Right now your config.php has modes of %s. We suggest that you do this:") +gettext("We want to make sure that your Gallery is secure. The directory containing your config.php file that this installer has edited has permissions that allow other people to write or delete files. So before you finish, you should change the permissions on this directory such that other users can't write to it. We suggest that you do this:") +gettext("If you really want to continue, you can. But we recommend that you take an extra moment to make sure that you're safe.") +gettext("We've verified that your config.php is secure.") +gettext("Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2$sshort check list%3$s within the security guide.") +gettext("Check Again") + +/* templates/StorageSetupRequest.html */ +gettext("Gallery needs a directory to store your images. The directory we chose for you will work, but its location or current name does not provide maximum security. Either select a new directory outside of the %sdocument root%s directory or add a random string to the end of the directory name (e.g. %s).") +gettext("For maximum security you should pick a directory that is not %sweb accessible%s. If this is not possible, specify a randomized name for this directory.") +gettext("If you choose a randomized name or prefer to stick with the specified directory, please confirm your choice.") +gettext("Yes, please omit the security check:") +gettext("This is a multisite installation. Remember that each multisite requires its own storage directory.") +gettext("If you're using a modern browser, we'll try to autocomplete any path you enter here. So if you're having trouble finding the right path to your g2data directory, try experimenting with paths in the text box below and see what completions it provides for you.") +gettext("The directory you entered is read only") +gettext("There was an error creating the directory structure within the storage directory.") +gettext("Your storage directory is %sweb accessible%s.") +gettext("Unable to verify that the storage directory is not %sweb accessible%s.") +gettext("Directory path:") +gettext("Your webserver needs to be able to write to this directory. To get it working, you can follow these examples.") +gettext("Note: these are only examples! You may find that they don't work quite right on your system.") +gettext("Unix (with ftp access)") +gettext("Note that ftp servers and clients vary so these instructions may not work for you. Consult the manual for your FTP client or talk to a system administrator for help with this if you have problems.") +gettext("In some web hosting environments, the paths that you see in the shell or via FTP are not the same paths that PHP sees. In order to find out the real path to your data directory, you can try creating a PHP script called dir.php containing the following code in it and put it into your data directory.") +gettext("then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell you the exact path to enter here.") +gettext("Note: This requires that your data directory is web accessible, which we don't recommend because it circumvents our image firewall. Once you figure out the path this way, we recommend that you move your data directory outside of your web accessible area and then update the path here accordingly.") +gettext("Note: Don't forget to delete dir.php when you're done!") +gettext("For information on how to secure your Gallery storage directory, please read the %sSecurity Guide%s.") + +/* templates/StorageSetupSuccess.html */ +gettext("Storage directory set successfully.") + +/* templates/SystemChecks.html */ +gettext("Success") +gettext("Warning") +gettext("Failed") +gettext("If you are using Apache, create a file named .htaccess in the main Gallery directory with the following content:") + +/* templates/VersionCheckFailed.html */ +gettext("Version Check") +gettext("This is not a fresh install and the installed version does not match the new version.") +gettext("The installed version cannot be upgraded to the new version!") +gettext("The installed version is older than the new version. You should run the upgrader and not the installer!") +gettext("Currently installed") +gettext("New version") +gettext("Go to the Upgrader!") +gettext("You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s in your %s directory.") + +/* templates/Welcome.html */ +gettext("Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide you through these steps and provide assistance along the way if additional steps are required to get your Gallery up and running. Once a step has been completed, you can go back and make changes at any time. Please read the %sInstaller Help File%s before proceeding.") +gettext("Select Language:") +gettext("Go") +gettext("Begin Installation»") diff --git a/Source/gallery2/install/po/sv.po b/Source/gallery2/install/po/sv.po new file mode 100644 index 0000000..fca1b8c --- /dev/null +++ b/Source/gallery2/install/po/sv.po @@ -0,0 +1,1351 @@ +# $Id: sv.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2006-01-15 16:15+0100\n" +"PO-Revision-Date: 2007-01-01 22:10+0100\n" +"Last-Translator: Anders Lindquist \n" +"Language-Team: Swedish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Okänd" + +msgid "Admin User Setup" +msgstr "Uppsättning av Admin-användaren" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery-administratör" + +msgid "Authenticate" +msgstr "Verifiera" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "Fel: kan ej hitta login.txt. Lägg in den i %s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Fel: din login.txt-fil är inte läsbar. Ge Gallery läsrättigheter till filen." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Fel: din login.txt-nyckel stämmer inte. Var god ladda ned en ny " +"autentiseringsnyckel nedan och försök igen." + +msgid "Create Config File" +msgstr "Skapar konfigurationsfilen" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Kan ej skriva till config.php konfigurationsfilen i din %s katalog. Ändra filens " +"rättigheter. Om du är på en Unix-maskin så kan du använda kommandot chmod 666 config.php för att ordna detta." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Filen config.php finns ej i katalogen %s" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Filen config.php existerar men är ej skrivbar. Om din server är en Windows-maskin, så kan du " +"behöva ta bort file sharing för config.php och sätta filens rättigheter manuellt." + +msgid "Database Setup" +msgstr "Databasinställningar" + +msgid "You must have the MySQL PHP module installed" +msgstr "Du måste ha MySQL-PHP-modulen installerad" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Du måste ha den förbättrade MySQL-PHP-modulen installerad" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Du måste ha ibm_db2-PHP modulen installerad" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Du måste ha PostgreSQL-PHP-modulen installerad" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Du måste ha Oracle OCI8-PHP-modulen installerad" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Du måste ha Component Object Model (COM)-PHP-modulen installerad" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Du måste specifiera ett kolumnprefix (vi rekommenderar %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Använd bara bokstäver, siffror och understrykningstecken som kolumnprefix" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Du måste specifiera ett tabellprefix (vi rekommenderar %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Använd bara bokstäver, siffror och understrykningstecken som tabellprefix" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Kan ej skapa en databaskoppling av typen %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Kan ej koppla upp mot databasen med givna inställningar " + +msgid "The database you specified does not exist. Please create it." +msgstr "Databasen du har angivit existerar inte. Var god skapa databasen." + +msgid "The database privileges test did not complete successfully." +msgstr "Test av databasrättigheter misslyckades." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Tabeller för Gallery existerar redan i databasen! Men det finns ingen 'versions.dat'-" +"fil i din fillagerkatalog för Gallery-filer, vilket vi tolkar som en skadad installation av " +"G2. Antingen kan du skapa en versions.dat-fil med korrekt format om du tror att G2 " +"fortfarande kan fungera eller välj nyinstallation, som kommer rensa bort all data i " +"databasen och i fillagerkatalogen." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Fillagerkatalogen har en versions.dat fil från en äldre installation, men databasen saknar " +"Gallery-tabeller. Välj en nyinstallation för att radera alla filer i Gallerys " +"fillagerkatalog och fortsätt till nästa steg." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Gallery-tabeller existerar redan i databasen och det finns en versions.dat-fil i " +"Gallerys fillagerkatalog, de databastabeller som är installerade stämmer dock inte med den " +"version som är installerad i fillagerkatalogen. Välj en nyinstallation för att radera all " +"data i databasen och fillagerkatalogen och fortsätt till nästa steg." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Tabeller för Gallery existerar redan i databasen och fillagerkatalogen verkar vara intakt. " +"Välj antingen att återanvända existerande databastabeller och filer i fillagerkatalogen, " +"alternativt gör en nyinstallation som raderar all existerande data i databasen och " +"fillagerkatalogen." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Kunde ej exekvera de nödvändiga kommandona för att tömma fillagerkatalogen. Radera filerna " +"manuellt i fillagerkatalogen." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Kunde ej exekvera de nödvändiga kommandona för att ta bort Gallerys databastabeller. Tag " +"manuellt bort Gallerys databastabeller." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Kunde inte ladda G2 API. Radera tabellerna i Gallery-databasen och filerna i " +"fillagerkatalogen manuellt. " + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a och nyare)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (versioner före v3.23.34a)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x och nyare" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i och nyare)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x och nyare)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 och nyare" + +msgid "Unknown DB type or no known tables information." +msgstr "Okänd databastyp eller okänd tabellinformation." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Kunde inte finna en oanvänd tabellprefix som \"%s\"." + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Kunde inte öppna schemafilen \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Misslyckades med att skapa en databastestsekvens. Kontrollera felmeddelandet och README.html " +"efter saknade privilegier och rensa upp databasen." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Test misslyckades med att radera en databastestsekvens. Kontrollera felmeddelandet och " +"README.html efter saknade privilegier och rensa upp databasen." + +msgid "Missing SQL statements" +msgstr "Saknad SQL-sats" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Kontrollera det returnerade felmeddelandet och README.html efter saknade privilegier och " +"rensa upp databasen." + +msgid "Finish Installation" +msgstr "Installationen klar" + +msgid "Install Gallery Core" +msgstr "Installerar Gallerys kärna" + +msgid "Installing the core module" +msgstr "Installera kärnmodulen" + +msgid "Unable to initialize our Gallery data" +msgstr "Kan ej initiera data för Gallery" + +msgid "Unable to communicate with the database" +msgstr "Kan ej kommunicera med databasen" + +msgid "Unable to load the core module" +msgstr "Kan ej ladda kärnmodulen" + +msgid "Unable to install the core module" +msgstr "Kan ej installera kärnmodulen" + +msgid "Unable to activate the core module" +msgstr "Kan ej aktivera kärnmodulen" + +msgid "Unable to commit database transaction" +msgstr "Kan ej utföra databastransaktionen" + +msgid "Core module is only partially installed." +msgstr "Kärnmodulen är bara delvis installerad." + +msgid "Install Plugins" +msgstr "Installera Pluginer" + +msgid "Unable to initialize our Gallery session" +msgstr "Kan ej initiera Gallerysessionen" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Kan ej ladda %s-modulen" + +msgid "Installing modules" +msgstr "Installerar Modulerna" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Kan ej installera %s-modulen" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Kan ej aktivera %s-modulen" + +msgid "Unable to get the module list" +msgstr "Kan ej hämta listan över moduler" + +msgid "Other" +msgstr "Övrigt" + +msgid "Installation Type" +msgstr "Installationstyp" + +msgid "Check Security" +msgstr "Kontrollerar Säkerheten" + +msgid "Storage Setup" +msgstr "Uppsättning av fillager" + +msgid "System Checks" +msgstr "Kontroll av Systemet" + +msgid "Performing system checks" +msgstr "Utför kontroll av Systemet" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP version >= 4.3.0 eller >= 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Fel: Gallery 2 kräver PHP version 4.3.0 eller nyare alternativt 5.0.4 eller nyare. Du har " +"PHP version %s installerad. Kontakta din systemadministratör och begär en uppgradering, " +"vilken finns tillgänglig på %sPHP-projektets hemsida%s." + +msgid "PHP Version" +msgstr "PHP-version" + +msgid "FILE directive supported" +msgstr "Stöde för FILE-direktiv" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Fel: ditt PHP __FILE__-direktiv fungerar ej korrekt. Registrera en felrapport hos din " +"systemadministratör eller i Gallery-forumen." + +msgid "FILE Directive" +msgstr "FILE-direktiv" + +msgid "Safe mode disabled" +msgstr "Safe mode avslaget" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Fel: Din version av PHP är konfigurerad med safe mode aktiverad. Du måste inaktivera safe " +"mode innan Gallery kan fungera." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "Reguljära uttryck" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Fel: Din PHP är konfigurerad utan stöd för %sPerl Compatible Regular Expressions%s. Du måste " +"aktivera stöd för dessa för att Gallery skall fungera." + +msgid "exec() allowed" +msgstr "exec() tillåten" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Varning: Funktionen exec() är avaktiverad i PHP via disabled_functions-parametern i " +"php.ini. Du kan inte använda moduler som kräver externa program (t.ex. ImageMagick, NetPBM " +"eller Ffmpeg). Denna inställning gäller för hela servern, så inställningen måste ändras i " +"den globala php.ini-konfigurationsfilen." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() tillåten" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Varning: Funktionen set_time_limit() är inaktiverad i PHP via disabled_functions-" +"parametern i php.ini. Gallery kan fungera med denna inställning, men kommer inte att fungera " +"tillförlitligt. Alla operationer som tar längre tid än %d sekunder kommer att misslyckas " +"(och i vissa fall bara lämna tillbaka en tom sida) möjligen kan data bli korrupta." + +msgid "Filesystem Operations" +msgstr "Filsystemsoperationer " + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Fel: Nödvändiga filsystemsoperationer är inaktiverade i PHP via disabled_functions-" +"parametern i php.ini. Du måste aktivera stöd för dessa för att Gallery ska fungera. Följande " +"funktioner saknas: %s" + +msgid "Memory limit" +msgstr "Minnesgräns" + +msgid "no limit" +msgstr "ingen begränsning" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Varining: Din PHP är konfigurerad till att begränsa minnet till %sb (memory_limit-" +"parametern i php.ini). Du bör höja minnesgränsen till åtminstone %sMB för att Gallery " +"skall fungera utan problem." + +msgid "File uploads allowed" +msgstr "Filuppladdning tillåten" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Varning: Din PHP är konfigurerad till att inte tillåta filuppladdningar (file_uploads-" +"parametern i php.ini). Du måste aktivera denna parameter om du skall kunna ladda upp filer " +"med en webbläsare." + +msgid "Maximum upload size" +msgstr "Maximal filstorlek för uppladdning" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Varning: Din PHP är konfigurerad till att begränsa storleken på uppladdade filer till %sb " +"(upload_max_filesize-parametern i php.ini). Du bör höja detta värde för att tillåta " +"uppladdning av större filer." + +msgid "Maximum POST size" +msgstr "Maximal POST-storlek" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Varning: Din PHP är konfigurerad till att begränsa post-data till maximalt %sb " +"(post_max_size-parametern i php.ini). Du bör höja gränsen för att tillåta uppladdning " +"av större filer." + +msgid "Translation support" +msgstr "Översättningsstöd" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Din webbserver har inte stöd för lokala språk. För att möjliggöra stöd för ytterligare språk " +"be systemadministratören att konfigurera om PHP med %sgettext%s aktiverat." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"Din PHP saknar funktionen %sbind_textdomain_codeset%s, vilket innebär att Gallery kan visa " +"vissa lokala tecken felaktigt för en del språk." + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" +"Din PHP saknar funktionen %sdngettext%s. Det innebär att Gallery inte kan översätta " +"pluralformer." + +msgid "Zend compatibility mode" +msgstr "Zend-kompatibilitetsläge" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Varning: Din PHP är konfigurerad med Zend zel_compatibility_mode vilket kan orsaka att PHP " +"havererar. Klicka här för att testa din PHP. Om du ser \"LYCKADES\" är " +"din PHP ok. Om du får ett fel eller inget svar måste du stänga av ze1_compatibility_mode " +"innan du fortsätter." + +msgid "putenv() allowed" +msgstr "putenv() tillåten" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Varning: Funktionen putenv() är inaktiverad i PHP via disabled_functions-parametern i " +"php.ini. Gallery kan fungera med den inställningen, men på vissa system kan Gallery bara " +"användas med det språk som systemet är installerat med samt på engelska." + +msgid "Output buffering disabled" +msgstr "Utmatningsbuffert avslagen" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"Varning: Buffring av utmatning är påslagen i din PHP via %s-parametern i php.ini. " +"Gallery kan fungera med denna inställning - nedladdning av filer är faktiskt snabbare - men " +"Gallery kan ha problem med att skicka stora filer (t.ex. stora videofiler) pga. " +"minnesbegränsningar. Även vissa funktioner som progress bars fungerar inte korrekt om " +"utmatningsbuffert är aktiverad om inte ini_set() är tillåten." + +msgid "Gallery file integrity" +msgstr "Kontroll av att samtliga filer finns" + +msgid "Test skipped due to other errors." +msgstr "Test överhoppad pga. andra fel." + +msgid "Theme available" +msgstr "Tema tillgängligt " + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "Fel: Det måste finnas minst ett tema i %s-katalogen!" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest saknas eller oåtkomlig." + +msgid "Welcome" +msgstr "Välkommen" + +msgid "Please correct the following errors" +msgstr "Var vänlig och korrigera följande fel" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Alla Gallery-installationer måste ha åtminstone en administratör eller användare som har " +"full åtkomst till att läsa/modifiera allting. Välj ett användarnamn och lösenord till din " +"huvudadministratörs konto. Du kan lägga till ytterligare användare senare." + +msgid "Admin username" +msgstr "Administratörens användarnamn" + +msgid "Please enter a valid user name" +msgstr "Ange ett gilltigt användarnamn" + +msgid "Please enter a password" +msgstr "Var god ange ett lösenord" + +msgid "Password" +msgstr "Lösenord" + +msgid "Setup password" +msgstr "Installationslösenord" + +msgid "(type again)" +msgstr "(skriv en gång till)" + +msgid "Admin email address" +msgstr "Administratörens e-postadress" + +msgid "Please enter a valid email address" +msgstr "Var god ange en giltig e-postadress" + +msgid "Admin full name (optional)" +msgstr "Administratörens hela namn (frivilligt)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Lösenord saknas! Var god ange samma lösenord två gånger" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Lösenorden du angav överensstämmer inte! Försök igen." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Eftersom du återanvänder existerande databastabeller, så är detta inte en nyinstallation. " +"Det här kommer bara att ändra installationslösenordet, inte administratörens lösenord. För " +"att ändra administratörens lösenord, välj glömt lösenordsfunktionen i Gallery." + +msgid "Create" +msgstr "Skapa" + +msgid "Save" +msgstr "Spara" + +msgid "Admin user info entered successfully." +msgstr "Lyckades med att lägga in administratörens användarinformation." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"För att kunna fortsätta med installationen, måste vi verifiera att du är den du utger dig " +"för. Bästa sättet att bli säker är att be dig om att göra en liten ändring i Gallery " +"katalogen som kommer att bevisa att du har rätt tillgång. Så vi kommer att be dig att skapa " +"en ny textfil med namnet login.txt i %s-katalogen på din " +"webbserver (det är den katalog som innehåller main.php). Filen måste innehålla följande " +"slumpmässigt valda tecken:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Som en tjänst till dig, har vi skapat en %skorrekt version av login.txt%s till dig. Ladda " +"ner filen och kopiera den till din %s-katalog." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Så snart du har laddat upp filen, klicka nedan för att fortsätta." + +msgid "Authenticate Me" +msgstr "Verifiera mig" + +msgid "Authentication successful!" +msgstr "Verifiering lyckades!" + +msgid "Erase data for a clean install" +msgstr "Radera data för en ren installation" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Är du säker på att du verkligen vill radera all data i Gallerys fillager samt all data i " +"Gallery-databasen?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "Det uppstod ett fel vid radering av databasen och fillagret. Felmeddelande:" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "Erase all data" +msgstr "Radera all data" + +msgid "Please fix this error and try again." +msgstr "Var god rätta till detta fel och försök igen." + +msgid "Try Again" +msgstr "Försök Igen" + +msgid "Create a config file" +msgstr "Skapa en konfigurationsfil" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Nu behöver vi skriva ut all information som du har gett till en fil kallad config.php " +"i katalogen %s. Detta är en viktig fil som ger Gallery all information som behövs för " +"att det skall fungera. Efter skapandet av filen, så kan du läsa igenom den och göra " +"ändringar om du vill." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"Innan vi kan fortsätta så måste du skapa en fil i katalogen %s med namnet config." +"php. Du måste även se till att webbservern har möjlighet att skriva till filen." + +msgid "Unix (with shell access)" +msgstr "Unix (med shell-åtkomst)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "I Windows så skall du inte behöva göra något speciellt." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"När du har skapat den här filen och satt rättigheterna rätt, så kan du fortsätta. Om det är " +"något problem, så kommer vi att tala om för dig hur du skall åtgärda det." + +msgid "Create config file" +msgstr "Skapa konfigurationsfil" + +msgid "Config file created successfully." +msgstr "Lyckades skapa konfigurationsfil." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Vi har skrivit ut all information du angivit till en fil kallad config.php i din " +"Gallery-katalog. Du kan läsa filen och göra ändringar i den om du vill. Var noggrann -- om " +"du gör misstag i filen så kommer inte Gallery att fungera!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Ange databastyp och inloggningsuppgifter för databasen. Installationsprogramet skapar ej " +"databasen, du måste själv skapa databasen och ange databasens namn här. Om du installerar " +"Gallery i en databas som redan har tabeller så kommer tabell- och kolumnprefix att särskilja " +"informationen från konflikter med existerande tabeller." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Det här är en multisite-installation. Kom ihåg att varje multisite kräver sina egna " +"databastabeller. Välj antingen en annan databas eller ett annat tabell-prefix för varje " +"multisite!" + +msgid "Database type:" +msgstr "Databastyp:" + +msgid "DB Hostname:" +msgstr "Adress till databas:" + +msgid "DB Username:" +msgstr "Användarnamn för databas:" + +msgid "DB Password:" +msgstr "Lösenord för databas:" + +msgid "DB Name:" +msgstr "Databasnamn:" + +msgid "Table Prefix:" +msgstr "Tabellprefix:" + +msgid "Column Prefix:" +msgstr "Kolumnprefix:" + +msgid "We received the following database related errors:" +msgstr "Följande databasrelaterade fel returnerades:" + +msgid "Erase Data For A Clean Install" +msgstr "Radera Data För En Ren Installation" + +msgid "Reuse Existing Tables" +msgstr "Återanvänd Existerande Tabeller" + +msgid "Database set up successfully." +msgstr "Lyckades med databasinitieringen" + +msgid "Finished!" +msgstr "Klart!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Grattis! Din Gallery 2 installation är komplett! Såå... det var väl inte så jobbigt, eller? " +"Nu är det dags att ladda upp lite bilder!" + +msgid "Go to my Gallery!" +msgstr "Gå till mitt Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Du kan nu gå till ditt nya Gallery. Ange adressen i din browser till %smain.php%s i " +"katalogen %s." + +msgid "Installer Help" +msgstr "Installationshjälp" + +msgid "Start Over" +msgstr "Börja om" + +msgid "Error installing Gallery Core" +msgstr "Fel vid installation av Gallerys kärna" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Någonting gick fel när vi försökte installera kärnmodulen. Vad skall vi göra nu?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Gå till systemkontrollsteget av installationsguiden och kontrollera att alla kontroller " +"visar 'Lyckades'. Ett vanligt problem är att kontrollen av att samtliga filer finns " +"ignoreras." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Om det inte finns några varningar eller fel i systemkontrollsteget, töm fillagerkatalogen " +"och radera databasens tabeller. Starta sedan om installationsprocessen en andra gång (gör om " +"alla steg)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Var vänlig besök %sG2 FAQ%s och läs avsnittet om %sKnown issues section of the Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Om problemet kvarstår, var god kopiera installationsloggen som är placerad i %s och bifoga " +"den (som install.log.zip) i ett nytt foruminlägg i %sG2 supportforum%s eller, om möjligt, " +"infoga en länk till install.log i foruminlägget så att supportpersonalen kan analysera " +"loggen om det är nödvändigt." + +msgid "Stack Trace:" +msgstr "Stackspårning" + +msgid "Installed Gallery Core successfully." +msgstr "Lyckades med installation av Gallery-kärnan." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Vi lyckades installera Gallerys kärna. Även om allting fungerar nu, så bör du fortsätta med " +"installeraren och lägga in några av extra modulerna så du får de funktioner du vill att din " +"Galleryinstallation skall ha." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Följande moduler kan automatiskt installeras och aktiveras åt dig. Du bör installera " +"åtminstone en av de grafiska verktygslådorna, annars kan inte Gallery göra några tumnaglar " +"av dina bilder. På de flesta systemen fungerar automatisk installation. Men i vissa fall så " +"kan det falera. Du kan alltid aktivera nya moduler eller inaktivera någon av de du väljer " +"via administratörssidan, så de val du gör här är inte permanenta." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Installationen av vissa moduler kan misslyckas vid automatisk installation. Det kan bero på " +"att modulen kräver viss konfiguration, som du kan utföra på administratörssidan" + +msgid "Name" +msgstr "Namn" + +msgid "Version" +msgstr "Version" + +msgid "Description" +msgstr "Beskrivning" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Inkompatibel med den här versionen av Gallery)" + +msgid "(un)check all" +msgstr "(av)markera alla" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Fortsätt till Steg %d Utan Aktivering»" + +msgid "Activate Selected Modules" +msgstr "Aktivera Valda Moduler" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Modulen %s har installerats, men behöver konfigureras för att aktiveras" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"När installationen är klar, logga in som Administratör och gå till administratörssidan, välj " +"sedan Moduler och konfigurera ovanstående moduler." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Lyckades aktivera modulen %s" + +msgid "Activate More Modules" +msgstr "Aktivera Fler Moduler" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Fortsätt till Steg %d»" + +msgid "Debug Output" +msgstr "Avlusningsutskrift" + +msgid "Welcome to the Gallery Installer" +msgstr "Välkommen till Gallery-installationen " + +#, c-format +msgid "Install %d%% complete" +msgstr "Installationen %d%% färdig" + +msgid "Redo this step" +msgstr "Gör om detta steg" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: dina bilderdin webbsida" + +#, c-format +msgid "Missing files (%d)" +msgstr "Saknade filer (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"OBS: du kör Gallery från SVN, så nyligen avlägsnade filer kan återfinnas här. Det är ingen " +"fara att ta bort dem." + +#, c-format +msgid "Modified files (%d)" +msgstr "Modifierade filer (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"OBS: du kör Gallery från SVN, så modifierade filer kan förväntas dyka upp. Du kan troligen " +"ignorera dem, men för att vara säker bör du kontrollera att du kör 'svn update' innan du " +"fortsätter." + +#, c-format +msgid "Old files (%d)" +msgstr "Gamla filer (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Dessa filer är inte längre en del av Gallery. De kommer troligen inte ställa till med några " +"problem men det kan vara en bra idé att ta bort dem för att hålla din installation ren." + +msgid "Errors occurred. Please see messages below." +msgstr "Fel inträffade. Var god se meddelande nedan." + +msgid "Please select the installation type" +msgstr "Var god välj installationstyp" + +msgid "Standard installation" +msgstr "Standardinstallation" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Det här är en standardinstallation. Välj denna installationstyp om du vill installera ett " +"nytt Gallery i katalogen %s som kommer att vara åtkomlig via adress %s." + +msgid "Multisite installation" +msgstr "Multisite-installation" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery kan stödja flera oberoende webbsidor med en installation av programkoden. Välj denna " +"installationstyp om du vill installera ett nytt Gallery på samma webbserver men under annan " +"sökväg, underdomän eller domän." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Multisite-installationer delar inte album, bilder, användare eller någonting annat. De " +"behöver alla sin egen databas och egen fillagerkatalog. För mer information och förklaring " +"om Multisite-installationer, besök %s-sidan." + +msgid "You must enter a directory" +msgstr "Du måste ange en katalog" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Katalogen du angav är kodförvaringsplatsens katalog. Om du vill installera ett Gallery i " +"kodförvaringsplatsens katalog, välj en standardinstallation. Om du vil installera en " +"multisite, välj en annan katalog." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"Katalogen du angav existerar inte, alternativt är den inte åtkomlig pga din webbservers " +"konfiguration. Din webbserver är konfigurerad till att tillåta åtkomst till följande " +"kataloger. Du måste välja en katalog under någon av dessa, annars måste du ändra på " +"open_basedir-inställningen i din PHP-konfiguration för att tillåta en ny katalog." + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"Om din multisite-installation är en annan virtuell host, måste du kontakta din " +"systemadministratör och begära att de konfigurerar din open_basedir inställning så " +"att dina virtuella hostar kan få åtkomst till varandra." + +msgid "The directory you entered does not exist" +msgstr "Katalogen du angav existerar inte" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Katalogen du angav är inte åtkomlig. Ändra rättigheterna så att webbserven kan läsa denna " +"katalog." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Kan inte skapa multisite-filer. Säkerställ att filerna som listas här nedan är skrivbara." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Alla multisites är installerade från denna centrala kodförvaringsplats (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Ange katalog för den nya webbsidan nedan. Sökvägen måste skilja från den centrala " +"kodförvaringsplatsens sökväg:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Katalogen måste vara skrivbar för din webbserver/PHP-användare eller innehålla följande " +"skrivbara filer:" + +msgid "Select Directory" +msgstr "Välj Katalog " + +msgid "Multisite directory setup successfully." +msgstr "Lyckades sätta upp multisite-katalogen." + +msgid "Standard installation selected." +msgstr "Standardinstallation vald." + +msgid "Install Steps" +msgstr "Installationssteg" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Vi vill vara säkra på att ditt Gallery är säkert. Filen config.php som installeraren har " +"editerat har filrättigheter som tillåter andra att skriva till den, det behövs för att " +"installeraren ur operativsystemets synvinkel är en \"annan person\". Innan du fortsätter bör " +"du ändra rättigheterna på filen så att andra användare inte kan skriva till den. Nu har " +"filen config.php rättigheterna satta till %s. Vi föreslår att du gör följande:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Vi vill vara säkra på att ditt Gallery är säkert. Katalogen som innehåller filen config.php " +"som installeraren har editerat har filrättigheter som tillåter andra att skriva eller radera " +"filer. Innan du avslutar, bör du ändra rättigheterna på katalogen så att andra användare " +"inte kan skriva till katalogen. Vi föreslår att du gör följande:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Om du verkligen vill fortsätta, så kan du det. Men vi rekommenderar att du avsätter ett " +"ögonblick på att övertyga dig om att du är säker." + +msgid "We've verified that your config.php is secure." +msgstr "Vi har verifierat att din config.php är säker." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"Var god läs %1$sGallery Security Guide%3$s. För en kort överblick, se på %2$sshort check list" +"%3$s inuti säkerhetsguiden." + +msgid "Check Again" +msgstr "Kontrollera Igen" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery behöver en katalog för att lagra dina bilder. Katalogen som vi har valt åt dig " +"kommer att fungera, men dess placering eller dess nuvarande namn medför en säkerhetsrisk. " +"Välj antingen en katalog utanför webbserverns %sdocument root%s eller lägg till en " +"slumpmässig sträng till slutet av katalognamnet (t.ex. %s)." + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"För maximal säkerhet så bör du välja en katalog som inte är åtkomlig %sdirekt via webben%s. " +"Om detta inte är möjligt, ge katatalogen ett slumpmässigt namn." + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" +"Om du väljer ett slumpmässingt namn eller föredrar det specifierade katalognamnet, var god " +"och bekräfta ditt val." + +msgid "Yes, please omit the security check:" +msgstr "Ja, hoppa över säkerhetskontrollerna:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" +"Det här är en multisite-installation. Kom ihåg att varje multisite kräver sin egen " +"lagerkatalog." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Om du använder en modern webbläsare, så kommer vi försöka att göra automatisk expansion av " +"sökvägarna som du fyller i. Om du har problem med att hitta rätt sökväg till din " +"datakatalog, experimentera med sökvägarna i textrutan nedan och se vilken expansion den ger " +"dig." + +msgid "The directory you entered is read only" +msgstr "Katalogen du angett tillåter endast läsning" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Det uppstod ett fel när vi försökte skapa katalogstrukturen i lagerkatalogen." + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Din lagerkatalog är %sdirekt åtkomlig via webben%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "Kan inte verifiera att lagerkatalog inte är %såtkomlig direkt via webben%s." + +msgid "Directory path:" +msgstr "Sökväg till katalogen:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" +"Din webbserver behöver kunna skriva till denna katalog. För att få det att fungera, kan du " +"följa dessa exempel." + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "OBS: detta är bara exempel! Det kan hända att de inte fungerar på just ditt system." + +msgid "Unix (with ftp access)" +msgstr "Unix (med FTP-åtkomst)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Observera att FTP-servrar och klienter kan variera så dessa instruktioner fungerar inte " +"alltid. Se i manualen för din FTP-klient eller tala med systemadministratören för att få " +"hjälp om du har problem." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"I somliga webbservermiljöer kan sökvägen du ser i skalet eller via FTP skilja sig från den " +"sökväg som PHP ser. För att finna den sökväg som PHP förväntar sig så kan du försöka skapa " +"ett PHP skript kallat dir.php innehållande följande kod och lägga upp det i din " +"lagerkatalog." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"lista sen ut adress till dir.php och öppna den i din webbläsare (eg, %s). Då talar den om " +"den exakta sökvägen du skall ange här." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"OBS: Detta kräver att din lagerkatalog är åtkomlig via webben, vilket vi inte " +"rekommenderar pga. att det kringår vår bildbrandvägg. Så fort du har listat ut sökvägen på " +"detta sätt, så rekommenderar vi att du flyttar lagerkatalogen utanför den katalogstruktur " +"som är åtkomlig via webben och uppdaterar sökvägen därefter." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "OBS: Glöm inte att ta bort dir.php när du är klar!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" +"För information om hur du skall säkra upp din lagringskatalog för Gallery, var god läs %" +"sSäkerhetsguiden%s." + +msgid "Storage directory set successfully." +msgstr "Lyckades skapa lagerkatalogen" + +msgid "Success" +msgstr "Lyckades" + +msgid "Warning" +msgstr "Varning" + +msgid "Failed" +msgstr "Misslyckades" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Om du använder Apache, skapa en fil som heter .htaccess i Gallerys huvudkatalog med följande " +"innehåll:" + +msgid "Version Check" +msgstr "Versionskontroll" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" +"Det här är inte en nyinstallation och den installerade versionen överensstämmer inte med den " +"nya versionen." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Den installerade versionen kan inte uppgraderas till den nya versionen!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Den installerade versionen är äldre än den nya versionen. Du måste köra uppgraderaren och " +"inte installeraren!" + +msgid "Currently installed" +msgstr "Installerat nu" + +msgid "New version" +msgstr "Ny version" + +msgid "Go to the Upgrader!" +msgstr "Gå till Uppgraderaren!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Du bör gå till uppgraderaren. Ange följande adress i din webbläsare %s/upgrade/index.php%s i " +"din %s-katalog." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"För att installera Gallery 2 på din webbserver krävs %d steg. Den här installeraren kommer " +"att leda dig igenom dessa steg och ge hjälp under vägen om ytterligare steg är nödvändiga " +"för att få igång ditt Gallery. Så fort ett steg är avklarat, så kan du gå tillbaka och göra " +"ändringar när du vill. Var god läs %sInstallationshjälpen%s innan du fortsätter." + +msgid "Select Language:" +msgstr "Välj Språk:" + +msgid "Go" +msgstr "Utför" + +msgid "Begin Installation»" +msgstr "Börja Installationen»" diff --git a/Source/gallery2/install/po/tr.po b/Source/gallery2/install/po/tr.po new file mode 100644 index 0000000..32b360b --- /dev/null +++ b/Source/gallery2/install/po/tr.po @@ -0,0 +1,1265 @@ +# $Id: tr.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Georg Rehfeld +# - Frederik Kunz +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-05-19 01:26+0100\n" +"PO-Revision-Date: 2006-08-31 23:06+0200\n" +"Last-Translator: Ishak Goker ISIK \n" +"Language-Team: Turkish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Turkish\n" +"X-Poedit-Country: TURKEY\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Unknown" +msgstr "Bilinmeyen" + +msgid "Admin User Setup" +msgstr "Yönetici Kullanıcı Kurulumu" + +msgid "admin" +msgstr "yönetici" + +msgid "Gallery Administrator" +msgstr "Galeri Yöneticisi" + +msgid "Authenticate" +msgstr "Doğrula" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "Hata: b>login.txt bulunamadı. Lütfen %s/ klasörünüze yükleyin." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Hata: login.txt dosyanız okunabilir değil. Lütfen Galeriye dosyayı okuma izni " +"verin." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Hata: login.txt anahtarı doğru olarak eşleşmedi. Lütfen aşağıdan yeni " +"doğrulama dizgisini download edip gerekli yere gönderin ve tekrar deneyin." + +msgid "Create Config File" +msgstr "Config Dosyası Yarat" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"%s klasöründe bulunan config.php yapılandırma dosyasına yazılamıyor. Lütfen " +"izinlerini değiştirin. Unix sistemlerde chmod 666 config.php yaparak bu problemi " +"çözebilirsiniz." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "%s klasöründe config.php dosyası mevcut değil" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Config.php dosyası mevcut ancak yazılabilir değil. Eğer serverınız Windows ise, config.php " +"için dosya paylaşımını kapatabilir ve izinlerini manuel olarak girebilirsiniz." + +msgid "Database Setup" +msgstr "Veritabanı Kurulumu" + +msgid "You must have the MySQL PHP module installed" +msgstr "MYSQL PHP modülü sisteminizde yüklü olmak zorunda" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "MYSQL geliştirilmiş PHP modülü sisteminizde yüklü olmak zorunda" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr " ibm_db2 PHP modülü sisteminizde yüklü olmak zorunda" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "PostgreSQL PHP modülü sisteminizde yüklü olmak zorunda" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Oracle OCI8 PHP modülü sisteminizde yüklü olmak zorunda" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Component Object Model(COM) PHP modülü sisteminizde yüklü olmak zorunda" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Sütün öneki belirtmek zorundasınız (tavsiyemiz %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Sadece harf, rakam ve sütün önekindeki altıçizilileri kullanın" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Tablo öneki belirtmek zorundasınız (tavsiyemiz %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Sadece harf, rakam ve tablo önekindeki altıçizilileri kullanın" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr " %s türünde veritabanı bağlantısı sağlanamadı" + +msgid "Unable to connect to database with the information provided." +msgstr "Vermiş olduğunuz bilgilerle veritabanına bağlantı sağlanamadı." + +msgid "The database you specified does not exist. Please create it." +msgstr "Vermiş olduğunuz veritabanı mevcut değil. Lütfen veritabanı oluşturun." + +msgid "The database privileges test did not complete successfully." +msgstr "Veritabanı izin testi başarıyla tamamlanamadı." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Galeri tabloları veritabanınızda zaten mevcut! Ancak G2 depolama klasörünüzde 'versions." +"dat' dosyası mevcut değil, biz bunu bozuk G2 olarak ifade ediyoruz. Eğer galerinizin " +"çalışacağınızı düşünüyorsanız, doğru formatta version.dat dosyasını kendiniz " +"yaratabilirsiniz ya da temiz bir kurulum seçebilirsiniz, bu işlem sonucu veritabanı ve " +"depolama klasöründe bulunan tüm verileriniz silinecektir." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"G2 depolama klasörü eski kurulumun version.dat dosyasını barındırmaktadır. Ancak Galeri " +"veritabanı tabloları mevcut değil. Temiz kurulumu seçerek Galeri depolama klasöründeki tüm " +"dosyaların silinmesini sağlayınız ve sonraki adıma geçiniz." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Galeri veritabanı tabloları ve Galeri depolama klasöründeki versions.dat dosyası mevcut. " +"Ancak yüklenmiş Galeri veritabanı tablolarının versiyonu , Galeri depolama klasöründe " +"bulunan verilerin versiyonuyla eşleşmiyor. Temiz kurulumu seçerek veritabanı ve depolama " +"klasöründe bulunan tüm verilerin silinmesini sağlayınız ve bir sonraki adıma geçiniz." + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Galeri tabloları veritabanında mevcut ve Galeri depolama klasörü eksiksiz gözüküyor.Kurulum " +"için iki yoldan birini seçebilirsiniz. Birinci yolda mevcut veritabanı tablolarını ve " +"depolama klasöründe bulunan verileri kullanabilir, ikinci yolda ise Temiz Kurulum seçerek " +"veritabanı ve depolama klasöründeki tüm verilerin silinmesini sağlayabilirsiniz." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Gerekli API depolama klasöründeki silme işlemini gerçekleştiremiyor. Lütfen Galeri depolama " +"klasörünü manuel olarak siliniz." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Gerekli API veritabanı tablolarını silme işlemini gerçekleştiremiyor. Lütfen Galeri " +"veritabanını manuel olarak temizleyiniz." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"G2 API'si yüklenemiyor. Please Galeri veritabanı tablolarını ve depolama klasörünü manuel " +"olarak temizleyiniz." + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL (v3.23.34a ve üstü)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (v3.23.34a'dan önceki versiyonlar)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x ve daha yeni" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i ve üstü)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x ve daha yeni)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x ve daha yeni" + +msgid "Unknown DB type or no known tables information." +msgstr "Bilinmeyen Veritabanı türü veya bilinen tablo bilgileri yok." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Şema dosyası açılamıyor: \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "Kayıp SQL raporları" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Kayıp ayrıcalıkları bulmak için görünen hata mesajını ve README.html'ye göz atınız ve " +"veritabını temizleyiniz." + +msgid "Finish Installation" +msgstr "Kurulumu Bitir" + +msgid "Install Gallery Core" +msgstr "Galeri Çekirdeğini Kur" + +msgid "Installing the core module" +msgstr "Çekirdek modül kuruluyor" + +msgid "Unable to initialize our Gallery data" +msgstr "Galeri verisi sıfırlanamıyor" + +msgid "Unable to communicate with the database" +msgstr "Veritabanı ile bağlantı kurulamıyor" + +msgid "Unable to load the core module" +msgstr "Çekirdek modül yüklenemiyor" + +msgid "Unable to install the core module" +msgstr "Çekirdek modül kurulamıyor" + +msgid "Unable to activate the core module" +msgstr "Çekirdek modül aktif duruma getirilemiyor" + +msgid "Unable to commit database transaction" +msgstr "Veritabanı işlemleri gerçekleştirilemiyor" + +msgid "Core module is only partially installed." +msgstr "Çekirdek modülün sadece bir kısmı kuruldu." + +msgid "Install Plugins" +msgstr "Eklentileri Kur" + +msgid "Unable to initialize our Gallery session" +msgstr "Galeri oturumumuz sıfırlanamıyor" + +#, c-format +msgid "Unable to load the %s module" +msgstr "%s modülü yüklenemiyor" + +msgid "Installing modules" +msgstr "Modüller kuruluyor" + +#, c-format +msgid "Unable to install the %s module" +msgstr "%s Modülü yüklenemiyor" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "%s modülü aktif duruma getirilemiyor" + +msgid "Unable to get the module list" +msgstr "Modül listesi alınamıyor" + +msgid "Other" +msgstr "Diğer" + +msgid "Installation Type" +msgstr "Kurulum Türü" + +msgid "Check Security" +msgstr "Güvenliği Kontrol et" + +msgid "Storage Setup" +msgstr "Depolama Kurulumu" + +msgid "System Checks" +msgstr "Sistem Kontrolleri" + +msgid "Performing system checks" +msgstr "Sistem denetleniyor" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP versiyon >= 4.3.0 veya >= 5.0.4" + +# param0 = existing php version, param1 = '', param2 = '' +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Hata: Galeri 2 için PHP versiyonu 4.3.0 ya da daha üstü veya 5.0.4 ya da daha üstü " +"gereklidir. Şu anda kullanmakta olduğunuz PHP versiyonunuz %s. Webserver yöneticinizle " +"iletişime geçip PHP versiyonunuzun güncellenmesini isteyin. Dosyalara %sPHP websitesinden%s " +"ulaşılabilir." + +msgid "PHP Version" +msgstr "PHP Versiyon" + +msgid "FILE directive supported" +msgstr "DOSYA direktifleri deskleniyor" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Hata: PHP __FILE__ direktifleriniz doğru olarak çalışmıyor. Lütfen webserver yöneticinizden " +"ya da Galeri forumlarından destek isteyiniz." + +msgid "FILE Directive" +msgstr "DOSYA Direktifleri" + +msgid "Safe mode disabled" +msgstr "Sade mode kapalı" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Hata: Php Versiyonunuzda safe mode açık olarak ayarlanmış. Galeri'nin çalışabilmesi için " +"safe mode'u kapatmalısınız." + +msgid "Safe Mode" +msgstr "Güvenli Kip" + +msgid "Regular expressions" +msgstr "Düzenli ifadeler" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Hata: PHP versiyonunuz %sPerl Compatible Regular Expressions%s desteklemeyen biçimde " +"yapılandırılmış. Galeriyi çalıştırmadan önce bu fonksiyonları açık duruma getirmelisiniz." + +msgid "exec() allowed" +msgstr "exec() allowed" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Uyarı: exec() function fonksiyonu php.ini de bulunan disabled_functions parametresi " +"kullanılarak kapalı duruma geitirlmiş. Bu durumda dışarıdan binary gerektiren modülleri " +"kullanamazsınız (ör. ImageMagick, NetPBM or Ffmpeg). Bu özellik sadece tüm server için " +"değiştirilebilir, bu nedenle bu özelliği global php.ini dosyasından değiştirmelisiniz." + +msgid "set_time_limit() allowed" +msgstr "set_time_limit() allowed" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Uyarı: set_time_limit() fonksiyonu php.ini de bulunan disabled_functions parametresi " +"kullanılarak kapalı konuma getirilmiş. Galeri bu durumda çalışmasını sürdürebilir, ancak " +"operasyonları güvenilir olarak gerçekleştiremez. %d saniyeden fazla süren her işlem " +"başarısızlıkla sonuçlanır (bazen boş sayfala sonuçlanır) ve veri bozulmasına yol açabilir." + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Uyarı: putenv() fonksiyonu php.ini de bulunan disabled_functions parametresi " +"kullanılarak kapalı konuma getirilmiş. Galeri bu durumda çalışmasını sürdürebilir, ancak " +"ender bulunan sistemlerde Galeri İngilizce ve sistem dili dışındaki dillerde çalışamaz." + +msgid "Memory limit" +msgstr "Hafıza limiti" + +msgid "no limit" +msgstr "no limit" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Uyarı: PHP'nizin hafıza limiti %sb olarak yapılandırılmış [php.ini de bulunan " +"memory_limit parametresi] . Galerinizin düzgün olarak çalışması için bu limiti en az " +"%sMB'a yükseltmelisiniz." + +msgid "File uploads allowed" +msgstr "Dosya gönderimi izinli" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Uyarı: PHP'niz dosya gönderimine izin vermeyecek şekilde yapılandırılmış [php.ini de bulunan " +"file_uploads parametresi] . Galerinize web tarayıcısı kullanarak dosya göndermek " +"istiyorsanız bu seçeneği açık duruma getirmelisiniz." + +msgid "Maximum upload size" +msgstr "Maksimum gönderim boyutu" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Uyarı: PHP'nizin dosya gönder limiti en fazla %sb olarak yapılandırılmış [php.ini de bulunan " +"upload_max_filesize parametresi] . Daha büyük dosyalar gönderebilmek için bu limiti " +"yükseltmelisiniz. " + +msgid "Maximum POST size" +msgstr "Maksimum POST büyüklüğü" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Uyarı: PHP'nizin veri gönder limiti en fazla %sb olarak yapılandırılmış [php.ini de bulunan " +"post_max_size parametresi] . Daha büyük veri gönderebilmek için bu limiti " +"yükseltmelisiniz. " + +msgid "Translation support" +msgstr "Çeviri desteği" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"Web Serverınız yerelleştirmeyi desteklemiyor. Diğer dil özelliklerini kullanabilmek için " +"Sistem Yöneticinizden PHP programını %sgettext%s özelliği ile birlikte tekrar " +"yapılandırmasını isteyiniz." + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "Zend uyumluluk modu" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Uyarı: PHP'niz Zend ze1_compatibility_mode ile yapılandırılmış, bu durum PHP'nizin " +"bozulmasına yol açabilir. Buraya tıklayarak PHP'nizi test edin. Eğer " +"\"BAŞARILI\" görüyorsanız PHP'nizde sorun yok. Eğer hatayla karşılaşıyorsanız, işlem " +"yapmadan önce ze1_compatibility_mode'u kapatmalısınız." + +msgid "putenv() allowed" +msgstr "putenv() izinli" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Uyarı: putenv() fonksiyonu php.ini de bulunan disabled_functions parametresi " +"kullanılarak kapalı konuma getirilmiş. Galeri bu durumda çalışmasını sürdürebilir, ancak " +"ender bulunan sistemlerde Galeri İngilizce ve sistem dili dışındaki dillerde çalışamaz." + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "Galeri dosya bütünlüğü" + +msgid "Test skipped due to other errors." +msgstr "Diğer hatalardan dolayı test geçildi." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "Manifest kayıp ya da erişilemez." + +msgid "Welcome" +msgstr "Hoşgeldiniz" + +msgid "Please correct the following errors" +msgstr "Lütfen takip eden hataları düzeltiniz" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Her Galerinin tam erişime sahip herşeyi görüntüleyip modifiye edebilecek en az bir yönetici " +"kullanıcısı olur. Lütfen ana yönetici hesabınız için kullanıcı adı ve şifre seçiniz. Ekstra " +"kullanıcılar daha sonra ekleyebilirsiniz." + +msgid "Admin username" +msgstr "Yönetici kullanıcıadı" + +msgid "Please enter a valid user name" +msgstr "Lütfen geçerli bir kullanıcıadı giriniz" + +msgid "Please enter a password" +msgstr "Lütfen şifre giriniz" + +msgid "Password" +msgstr "Şifre" + +msgid "Setup password" +msgstr "Şifre kurulumu" + +msgid "(type again)" +msgstr "(tekrar dene)" + +msgid "Admin email address" +msgstr "Yönetici email adresi" + +msgid "Please enter a valid email address" +msgstr "Lütfen geçerli bir email adresi giriniz" + +msgid "Admin full name (optional)" +msgstr "Yönetici tam adı (opsiyonel)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Kayı şifre! Lütfen aynı şifreyi iki kez giriniz" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Girdiğiniz şifreler eşleşmedi! Lütfen tekrar deneyiniz." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Yarat" + +msgid "Save" +msgstr "Kaydet" + +msgid "Admin user info entered successfully." +msgstr "Yönetici kullanıcı bilgisi başarıyla girildi." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Dosyayı gönderdikten sonra, aşağıya tıklayarak devam edin." + +msgid "Authenticate Me" +msgstr "Beni Doğrula" + +msgid "Authentication successful!" +msgstr "Doğrulama başarılı!" + +msgid "Erase data for a clean install" +msgstr "Temiz kurulum için verileri silin" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "Veritabanı ve depolama klasörü verilerini silersen bir hatayla karşılaşıldı. Hata:" + +msgid "Cancel" +msgstr "İptal" + +msgid "Erase all data" +msgstr "Tüm veriyi sil" + +msgid "Please fix this error and try again." +msgstr "Lütfen hatayı çözüp tekrar deneyin." + +msgid "Try Again" +msgstr "Tekrar Dene" + +msgid "Create a config file" +msgstr "Config dosyası yarat" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (shell erişimi ile)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "Windows'ta, özel bir şey yapmanıza gerek yok." + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Config dosyası yarat" + +msgid "Config file created successfully." +msgstr "Config dosyası başarıyla yaratıldı." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "Veritabanı türü:" + +msgid "DB Hostname:" +msgstr "VT Hostadı:" + +msgid "DB Username:" +msgstr "VT Kullanıcıadı:" + +msgid "DB Password:" +msgstr "VT Şifre:" + +msgid "DB Name:" +msgstr "VT Adı:" + +msgid "Table Prefix:" +msgstr "Tablo Öneki:" + +msgid "Column Prefix:" +msgstr "Sütün Öneki:" + +msgid "We received the following database related errors:" +msgstr "Takip eden veritabanı hatalarını alıyoruz:" + +msgid "Erase Data For A Clean Install" +msgstr "Temiz Kurulum İçin Verileri Sil" + +msgid "Reuse Existing Tables" +msgstr "Varolan Tabloları Kullan" + +msgid "Database set up successfully." +msgstr "Veritabanı başarıyla kuruldu." + +msgid "Finished!" +msgstr "Bitti!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Tebrikler! Galeri 2 kurulumunuz tamamlandı! Gördünüz hiç de zor değildi, Değil mi? Şimdi " +"biraz fotoğraf yüklemenin tam zamanı!" + +msgid "Go to my Gallery!" +msgstr "Galerime Git!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Şimdi yeni Galerinize gidebilirsiniz. Tarayıcınıza %s klasörünüz için %smain.php%s adresini " +"girin." + +msgid "Installer Help" +msgstr "Kurulum Yardım" + +msgid "Start Over" +msgstr "Baştan Başla" + +msgid "Error installing Gallery Core" +msgstr "Galeri Çekirdeği kurulumunda Hata" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Çekirdek modülünü kurarken birşeyler ters gitti. Ne Yapılacak?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Galeri Çekirdeği başarıyla kuruldu." + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "İsim" + +msgid "Version" +msgstr "Versiyon" + +msgid "Description" +msgstr "Açıklama" + +msgid "(Incompatible with this Gallery version)" +msgstr "[Bu Galeri versiyonu ile uyumsuz]" + +msgid "(un)check all" +msgstr "tüm çekleri kaldır" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Devam et Adım %d Aktif duruma getirmeden»" + +msgid "Activate Selected Modules" +msgstr "Seçilmiş Modülleri Etkinleştir" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" +"%s modülü kuruldu, ancak aktif duruma getirilmesi için yapılandırılması gerekiyor" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "%s modülü başarıyla etkinleştirildi" + +msgid "Activate More Modules" +msgstr "Daha Fazla Modül Etkinleştir" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Devam et Adım %d»" + +msgid "Debug Output" +msgstr "Hata Çıktısı" + +msgid "Welcome to the Gallery Installer" +msgstr "Galeri Kurulumuna Hoşgeldiniz" + +# param0 = integer percentage +#, c-format +msgid "Install %d%% complete" +msgstr "Kurulum %d%% tamamlandı" + +msgid "Redo this step" +msgstr "Bu adımı geri al" + +msgid "Gallery: your photos on your website" +msgstr "Ga" + +#, c-format +msgid "Missing files (%d)" +msgstr "Kayıp Dosyalar (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Not: Galeriyi SVN'den çalıştırıyorsunuz, yakın zamanda silinmiş dosyalar burada görünebilir. " +"Bunları güvenilir olarak görmezden gelebilirsiniz." + +#, c-format +msgid "Modified files (%d)" +msgstr "Modifiye edilmiş dosyalar (%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "Eski dosyalar (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Bu dosyalar artık Galerinin bir parçası değil. Büyük ihtimalle bu dosyalar bir probleme yol " +"açmaz ancak kurulumunuzu temiz tutmak açısından bunları kaldırmak iyi fikir." + +msgid "Errors occurred. Please see messages below." +msgstr "Hata meydana geldi. Lütfen aşağıdaki mesaja göz atın." + +msgid "Please select the installation type" +msgstr "Lütfen kurulum türünü seçiniz" + +msgid "Standard installation" +msgstr "Standart kurulum" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "Çoklusite kurulumu" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "Klasör girmelisiniz" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Girmiş olduğunuz klasör mevcut değil" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Çoklusite dosyaları oluşturulamıyor. Aşağıda listelenmiş dosyaların yazılabilir olduğundan " +"emin olun." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "Klasör Seç" + +msgid "Multisite directory setup successfully." +msgstr "Çoklusite klasörü başarıyla kuruldu." + +msgid "Standard installation selected." +msgstr "Standart kurulum seçildi" + +msgid "Install Steps" +msgstr "Kurulum Adımları" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "Config.php dosyanızın güvenli olduğunu onayladık." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "Tekrar Kontrol et" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "Evet, lütfen güvenlik taramasını atla:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "Girmiş olduğunuz klasör sadece okunabilir" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Depolama klasörünüz %sweb'den erişilebilir%s." + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "Klasör yolu:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Not: bunlar sadece örneklerdir! Sisteminizde her yönüyle doğru çalışmadığını görebilirsiniz." + +msgid "Unix (with ftp access)" +msgstr "Unix (ftp erişimi ile)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Not: İşiniz bittiğinde dir.php'yi silmeyi unutmayınız!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "Depolama klasörü başarıyla girildi." + +msgid "Success" +msgstr "Başarılı" + +msgid "Warning" +msgstr "Uyarı" + +msgid "Failed" +msgstr "Başarısız" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Eğer Apache kullanıyor iseniz, .htaccess adında bir dosyayu Galeri ana klasöründe " +"oluşturarak izleyen içeriği bu dosyanın içine ekleyin: " + +msgid "Version Check" +msgstr "Versiyon Kontrolü" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Kurulu versiyon yeni versiyona yükseltilemez!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "Şu an kuruldu" + +msgid "New version" +msgstr "Yeni Versiyon" + +msgid "Go to the Upgrader!" +msgstr "Güncelleyiciye Git!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Şimdi güncelleştiriciye gitmelisiniz. Tarayıcınıza %s/upgrade/index.php%s adresini giriniz, %" +"s klasörünüz." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "Dil Seç:" + +msgid "Go" +msgstr "Git" + +msgid "Begin Installation»" +msgstr "Kurulumu Başlat»" + +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MSSQL (2005 ve üstü)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Galeri Çekirdeği başarıyla kuruldu" + +#~ msgid "Install More Modules" +#~ msgstr "Daha Fazla Modül Kur" + +#~ msgid "Install Other Modules" +#~ msgstr "Diğer Modülleri Kur" + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (iyi test edilmedi)" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "Bazen image firewall olarakda bilinir." + +#~ msgid "Finished" +#~ msgstr "Bitti" + +#~ msgid "Installation Status" +#~ msgstr "Kurulum Durumu" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "SQL test dosyası \"%s\" bulunamadı." diff --git a/Source/gallery2/install/po/uk.po b/Source/gallery2/install/po/uk.po new file mode 100644 index 0000000..c4d52e5 --- /dev/null +++ b/Source/gallery2/install/po/uk.po @@ -0,0 +1,1124 @@ +# $Id: uk.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Юра , 2006. +# Yurii Smetana , 2006. +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-20 09:35-0800\n" +"PO-Revision-Date: 2006-08-07 20:36+0300\n" +"Last-Translator: Yurii Smetana \n" +"Language-Team: Ukrainian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.1\n" + +#, fuzzy +msgid "Unknown" +msgstr "Невідомо" + +msgid "Admin User Setup" +msgstr "" + +msgid "admin" +msgstr "" + +msgid "Gallery Administrator" +msgstr "" + +msgid "Authenticate" +msgstr "" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" + +msgid "Create Config File" +msgstr "" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" + +msgid "Database Setup" +msgstr "" + +msgid "You must have the MySQL PHP module installed" +msgstr "" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "" + +msgid "Unable to connect to database with the information provided." +msgstr "" + +msgid "The database you specified does not exist. Please create it." +msgstr "" + +msgid "The database privileges test did not complete successfully." +msgstr "" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "" + +msgid "PostgreSQL v7.x and newer" +msgstr "" + +msgid "Oracle (9i and newer)" +msgstr "" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "" + +msgid "Unknown DB type or no known tables information." +msgstr "" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" + +msgid "Finish Installation" +msgstr "" + +msgid "Install Gallery Core" +msgstr "" + +#, fuzzy +msgid "Installing the core module" +msgstr "Встановлення головних модулів" + +msgid "Unable to initialize our Gallery data" +msgstr "" + +msgid "Unable to communicate with the database" +msgstr "" + +msgid "Unable to load the core module" +msgstr "" + +msgid "Unable to install the core module" +msgstr "" + +msgid "Unable to activate the core module" +msgstr "" + +msgid "Unable to commit database transaction" +msgstr "" + +msgid "Core module is only partially installed." +msgstr "" + +msgid "Install Plugins" +msgstr "" + +msgid "Unable to initialize our Gallery session" +msgstr "" + +#, c-format +msgid "Unable to load the %s module" +msgstr "" + +msgid "Installing modules" +msgstr "" + +#, c-format +msgid "Unable to install the %s module" +msgstr "" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "" + +msgid "Unable to get the module list" +msgstr "" + +#, fuzzy +msgid "Other" +msgstr "Інші" + +msgid "Installation Type" +msgstr "" + +msgid "Check Security" +msgstr "" + +msgid "Storage Setup" +msgstr "" + +msgid "System Checks" +msgstr "" + +msgid "Performing system checks" +msgstr "" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" + +msgid "PHP Version" +msgstr "" + +msgid "FILE directive supported" +msgstr "" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" + +msgid "FILE Directive" +msgstr "" + +msgid "Safe mode disabled" +msgstr "" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" + +msgid "Safe Mode" +msgstr "" + +msgid "Regular expressions" +msgstr "" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" + +msgid "exec() allowed" +msgstr "" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" + +msgid "set_time_limit() allowed" +msgstr "" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" + +msgid "Filesystem Operations" +msgstr "" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" + +msgid "Memory limit" +msgstr "" + +msgid "no limit" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" + +msgid "File uploads allowed" +msgstr "" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" + +msgid "Maximum upload size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" + +msgid "Maximum POST size" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" + +msgid "putenv() allowed" +msgstr "" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "" + +msgid "Test skipped due to other errors." +msgstr "" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "" + +msgid "Welcome" +msgstr "" + +msgid "Please correct the following errors" +msgstr "" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" + +msgid "Admin username" +msgstr "" + +msgid "Please enter a valid user name" +msgstr "" + +msgid "Please enter a password" +msgstr "" + +msgid "Password" +msgstr "Пароль" + +msgid "Setup password" +msgstr "" + +msgid "(type again)" +msgstr "" + +msgid "Admin email address" +msgstr "" + +msgid "Please enter a valid email address" +msgstr "" + +msgid "Admin full name (optional)" +msgstr "" + +msgid "Missing password! Please enter the same password twice" +msgstr "" + +msgid "The passwords you entered do not match! Please try again." +msgstr "" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" + +msgid "Create" +msgstr "Створити" + +msgid "Save" +msgstr "Зберегти" + +msgid "Admin user info entered successfully." +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "" + +msgid "Authenticate Me" +msgstr "" + +msgid "Authentication successful!" +msgstr "" + +msgid "Erase data for a clean install" +msgstr "" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "" + +msgid "Cancel" +msgstr "Скасувати" + +msgid "Erase all data" +msgstr "" + +msgid "Please fix this error and try again." +msgstr "" + +msgid "Try Again" +msgstr "" + +msgid "Create a config file" +msgstr "" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "" + +msgid "Config file created successfully." +msgstr "" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" + +msgid "Database type:" +msgstr "" + +msgid "DB Hostname:" +msgstr "" + +msgid "DB Username:" +msgstr "" + +msgid "DB Password:" +msgstr "" + +msgid "DB Name:" +msgstr "" + +msgid "Table Prefix:" +msgstr "" + +msgid "Column Prefix:" +msgstr "" + +msgid "We received the following database related errors:" +msgstr "" + +msgid "Erase Data For A Clean Install" +msgstr "" + +msgid "Reuse Existing Tables" +msgstr "" + +msgid "Database set up successfully." +msgstr "" + +msgid "Finished!" +msgstr "" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" + +msgid "Go to my Gallery!" +msgstr "" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" + +msgid "Installer Help" +msgstr "" + +msgid "Start Over" +msgstr "Знову" + +msgid "Error installing Gallery Core" +msgstr "" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" + +msgid "Stack Trace:" +msgstr "" + +msgid "Installed Gallery Core successfully." +msgstr "" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" + +msgid "Name" +msgstr "Назва" + +msgid "Version" +msgstr "Версія" + +msgid "Description" +msgstr "Опис" + +msgid "(Incompatible with this Gallery version)" +msgstr "" + +msgid "(un)check all" +msgstr "" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "" + +msgid "Activate Selected Modules" +msgstr "" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "" + +msgid "Activate More Modules" +msgstr "" + +#, c-format +msgid "Continue to Step %d»" +msgstr "" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "" + +#, c-format +msgid "Install %d%% complete" +msgstr "" + +msgid "Redo this step" +msgstr "" + +msgid "Gallery: your photos on your website" +msgstr "" + +#, c-format +msgid "Missing files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" + +#, c-format +msgid "Modified files (%d)" +msgstr "" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" + +#, c-format +msgid "Old files (%d)" +msgstr "" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "" + +msgid "Standard installation" +msgstr "" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" + +msgid "Multisite installation" +msgstr "" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" + +msgid "You must enter a directory" +msgstr "" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" + +msgid "Select Directory" +msgstr "" + +msgid "Multisite directory setup successfully." +msgstr "" + +msgid "Standard installation selected." +msgstr "" + +msgid "Install Steps" +msgstr "" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" + +msgid "We've verified that your config.php is secure." +msgstr "" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" + +msgid "The directory you entered is read only" +msgstr "" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" + +msgid "Unix (with ftp access)" +msgstr "" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "" + +msgid "Success" +msgstr "Успішно" + +msgid "Warning" +msgstr "" + +msgid "Failed" +msgstr "Невдало" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" + +msgid "Version Check" +msgstr "" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" + +msgid "Currently installed" +msgstr "" + +msgid "New version" +msgstr "" + +msgid "Go to the Upgrader!" +msgstr "" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" + +msgid "Select Language:" +msgstr "" + +msgid "Go" +msgstr "Вперед" + +msgid "Begin Installation»" +msgstr "" diff --git a/Source/gallery2/install/po/vi.po b/Source/gallery2/install/po/vi.po new file mode 100644 index 0000000..94637f1 --- /dev/null +++ b/Source/gallery2/install/po/vi.po @@ -0,0 +1,1435 @@ +# $Id: vi.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"POT-Creation-Date: 2005-05-29 05:54-0400\n" +"PO-Revision-Date: 2005-08-29 18:40+0100\n" +"Last-Translator: Trung Dong Huynh \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Unknown" +msgstr "Không xác định" + +msgid "Admin User Setup" +msgstr "Cài đặt người dùng Quản trị (Admin)" + +msgid "admin" +msgstr "người quản trị" + +msgid "Gallery Administrator" +msgstr "Người Quản trị Gallery" + +msgid "Authenticate" +msgstr "Xác nhận" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "" +"Lỗi: không thể tìm được tập tin login.txt. Hãy chép tập tin này vào thư mục " +"%s/." + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "" +"Lỗi: không thể đọc tập tin login.txt. Hãy điều chỉnh quyền truy cập tập tin " +"này." + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"Lỗi: tập tin login.txt của bạn không đúng. Hãy tải chuỗi xác nhận mới dưới đây " +"và thử lại lần nữa." + +msgid "Create Config File" +msgstr "Tạo tập tin cấu hình" + +#, fuzzy, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"Không thể ghi vào tập tin cấu hình config.php trong thư mục %s của bạn. Hãy " +"chỉnh lại quyền truy cập tập tin này. Nếu bạn dùng Unix thì bạn có thể dùng lệnh chmod " +"666 config.php." + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "Tập tin config.php không tồn tại trong thư mục %s của bạn" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"Tập tin config.php tồn tại nhưng không ghi được. Nếu máy chủ của bạn dùng Windows thì bạn có " +"thể phải tắt chia sẻ tập tin cho config.php và đặt quyền cho tập tin này." + +msgid "Database Setup" +msgstr "Cài đặt Cơ sở dữ liệu" + +msgid "You must have the MySQL PHP module installed" +msgstr "Bạn cần có module MySQL cài trong chương trình PHP" + +#, fuzzy +msgid "You must have the MySQL Improved PHP module installed" +msgstr "Bạn cần có module MySQL cài trong chương trình PHP" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "Bạn cần có module ibm_db2 cài trong chương trình PHP" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "Bạn cần có module PostgreSQL cài trong chương trình PHP" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "Bạn cần có module Oracle OCI8 cài trong chương trình PHP" + +#, fuzzy +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "Bạn cần có module Oracle OCI8 cài trong chương trình PHP" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "Bạn cần phải chỉ định một tiếp đầu ngữ cho cột (chúng tôi khuyên bạn dùng %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "Chỉ dùng chữ cái, số và gạch chân cho tiếp đầu ngữ của cột" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "Bạn cần phải chỉ định một tiếp đầu ngữ cho bảng (chúng tôi khuyên bạn dùng %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "Chỉ dùng chữ cái, số và gạch chân cho tiếp đầu ngữ của bảng" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "Không thể tạo kết nối cơ sở dữ liệu kiểu %s" + +msgid "Unable to connect to database with the information provided." +msgstr "Không thể kết nối với cơ sở dữ liệu với các thông tin bạn cung cấp." + +msgid "The database you specified does not exist. Please create it." +msgstr "Cơ sở dữ liệu mà bạn chỉ định không tồn tại. Hãy tạo CSDL đó trước." + +msgid "The database privileges test did not complete successfully." +msgstr "Kiểm tra quyền trên cơ sở dữ liệu không thành công." + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"Các bảng của Gallery đang có sẵn trong cơ sở dữ liệu. Nhưng không có tập tin 'versions.dat' " +"trong thư mục lưu trữ G2 của bạn nên chúng tôi coi bản cài đặt này bị hỏng. Bạn hãy tạo tập " +"tin versions.dat theo định đúng nếu bạn nghĩ là G2 của bạn vẫn hoạt động được, hoặc chọn cài " +"đặt mới và tất cả dữ liệu trong cơ sở dữ liệu và thư mục lưu trữ của bạn sẽ bị xóa." + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"Thư mục lưu trữ G2 có tập tin versions.dat của một bản cài đặt cũ nhưng các bảng trong cơ sở " +"dữ liệu của Gallery không tồn tại. Hãy chọn cài đặt mới để xóa tất cả dữ liệu trong cơ sở dữ " +"liệu và thư mục lưu trữ và chuyển sang bước kế tiếp." + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"Các bảng dữ liệu của Gallery đang có trong cơ sở dữ liệu và có tập tin versions.dat trong " +"thư mục lưu trữ của Gallery nhưng số phiên bản trong cơ sở dữ liệu không trùng với số phiên " +"bảng trong thư mục lưu trữ. Hãy chọn cài đặt mới để xóa tất cả dữ liệu trong cơ sở dữ liệu " +"và thư mục lưu trữ và chuyển sang bước kế tiếp." + +#, fuzzy +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"Các bảng dữ liệu của Gallery đang có trong cơ sở dữ liệu và thư mục lưu trữ của Gallery có " +"vẻ vẫn toàn vẹn. Bạn có thể chọn dùng lại các bảng đang có trong cơ sở dữ liệu và dữ liệu " +"trong thư mục lưu trữ hoặc chọn cài đặt mới để xóa tất cả dữ liệu trong cơ sở dữ liệu và thư " +"mục lưu trữ và chuyển sang bước kế tiếp." + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "" +"Không thể thực hiện hàm API cần để xóa thư mục lưu trữ. Bạn hãy tự xóa thư mục lưu trữ của " +"Gallery." + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "" +"Không thể thực hiện hàm API cần để xóa các bảng trong cơ sở dữ liệu của Gallery. Bạn hãy tự " +"xóa các bảng này." + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "" +"Không thể nạp các hàm API của G2. Bạn hãy tự xóa các bảng trong cơ sở dữ liệu và thư mục lưu " +"trữ của Gallery." + +#, fuzzy +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL với Transactions (v3.23.34a và mới hơn)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL (tất cả phiên bản)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x và mới hơn" + +msgid "Oracle (9i and newer)" +msgstr "Oracle (9i và mới hơn)" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2 (v9.x và mới hơn)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x và mới hơn" + +msgid "Unknown DB type or no known tables information." +msgstr "Không xác định được kiểu cơ sở dữ liệu hoặc thông tin về bảng." + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "Không thể xác định một tiếp đầu ngữ chưa sử dụng cho bản tương tự như \"%s\"." + +#, fuzzy, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "Không thể mở tập tin kiểm tra SQL \"%s\"." + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Thử tạo CSDL thất bại. Hãy kiểm tra thông báo lỗi được trả lại và tập tin README.html về " +"quyền bị thiếu và xóa trắng cơ sở dữ liệu." + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"Thử xóa CSDL thất bại. Hãy kiểm tra thông báo lỗi được trả lại và tập tin README.html về " +"quyền bị thiếu và xóa trắng cơ sở dữ liệu." + +msgid "Missing SQL statements" +msgstr "" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "" +"Hãy kiểm tra thông báo lỗi được trả lại và tập tin README.html về quyền bị thiếu và xóa " +"trắng cơ sở dữ liệu." + +#, fuzzy +msgid "Finish Installation" +msgstr "Cài đặt cho nhiều trang web" + +msgid "Install Gallery Core" +msgstr "Cài đặt Lõi của Gallery" + +#, fuzzy +msgid "Installing the core module" +msgstr "Cài các module khác" + +msgid "Unable to initialize our Gallery data" +msgstr "Không thể khởi tạo dữ liệu Gallery" + +msgid "Unable to communicate with the database" +msgstr "Không thể liên lạc được với cơ sở dữ liệu" + +msgid "Unable to load the core module" +msgstr "Không thể nạp module lõi" + +msgid "Unable to install the core module" +msgstr "Không thể cài đặt module lõi" + +msgid "Unable to activate the core module" +msgstr "Không thể kích hoạt module lõi" + +msgid "Unable to commit database transaction" +msgstr "Không thể thực hiện thao tác cơ sở dữ liệu" + +msgid "Core module is only partially installed." +msgstr "Module Lõi chỉ mới được cài đặt một phần." + +#, fuzzy +msgid "Install Plugins" +msgstr "Các bước cài đặt" + +#, fuzzy +msgid "Unable to initialize our Gallery session" +msgstr "Không thể khởi tạo dữ liệu Gallery" + +#, c-format +msgid "Unable to load the %s module" +msgstr "Không thể nạp module %s" + +#, fuzzy +msgid "Installing modules" +msgstr "Cài thêm module" + +#, c-format +msgid "Unable to install the %s module" +msgstr "Không thể cài đặt module %s" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "Không thể kích hoạt module %s" + +msgid "Unable to get the module list" +msgstr "Không thể nạp danh sách các module" + +msgid "Other" +msgstr "Khác" + +msgid "Installation Type" +msgstr "Kiểu cài đặt" + +msgid "Check Security" +msgstr "Kiểm tra an ninh" + +msgid "Storage Setup" +msgstr "Cài đặt lưu trữ" + +msgid "System Checks" +msgstr "Các kiểm tra hệ thống" + +msgid "Performing system checks" +msgstr "" + +#, fuzzy +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "Phiên bản PHP >= 4.1.0 hoặc >= 5.0.4" + +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"Lỗi: Gallery 2 cần có PHP phiên bản 4.1.0 hoặc mới hơn, hay 5.0.4 hoặc mới hơn. Bạn đang " +"dùng PHP phiên bản %s. Hãy liên hệ với quản trị máy chủ web của bạn để yêu cầu nâng cấp. PHP " +"có thể download ở %strang web PHP%s." + +msgid "PHP Version" +msgstr "Phiên bản PHP" + +msgid "FILE directive supported" +msgstr "Chỉ thị FILE được hỗ trợ" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"Lỗi: Chỉ thị PHP __FILE__ không hoạt động. Hãy gửi yêu cầu hỗ trợ đến quản trị máy chủ web " +"của bạn hoặc trong Diễn đàn của Gallery." + +msgid "FILE Directive" +msgstr "Chỉ thị FILE" + +msgid "Safe mode disabled" +msgstr "Chế độ safe mode đã được tắt" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"Lỗi: PHP bạn đang dùng đang bật chế độ safe mode. Bạn phải tắt chế độ safe mode thì Gallery " +"mới hoạt động được." + +msgid "Safe Mode" +msgstr "Safe Mode" + +msgid "Regular expressions" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"Lỗi: PHP bạn đang dùng đang bật chế độ safe mode. Bạn phải tắt chế độ safe mode thì Gallery " +"mới hoạt động được." + +msgid "exec() allowed" +msgstr "cho phép dùng exec()" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"Cảnh báo: Hàm exec() đang bị tắt trong chương trình PHP bằng thông số disabled_functions trong tập tin php.ini. Bạn sẽ không thể sử dụng các module cần dùng các chương trình " +"ngoài (ví dụ như ImageMagick, NetPBM hay Ffmpeg). Thông số này chỉ có thể được đặt cho cả " +"máy chủ nên bạn phải thay đổi thông số này trong tập tin php.ini toàn cục." + +msgid "set_time_limit() allowed" +msgstr "cho phép dùng set_time_limit()" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"Cảnh báo: Hàm set_time_limit() đang bị tắt trong chương trình PHP bằng thông số " +"disabled_functions trong tập tin php.ini. Gallery tuy vẫn có thể hoạt động nhưng có " +"thể sẽ không ổn định. Bất kỳ thao tác nào cần chạy lâu hơn %d giây sẽ thất bại (trong một số " +"trường hợp chỉ hiển thị một trang trắng) và có khả năng dẫn đến hỏng dữ liệu." + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"Cảnh báo: Hàm set_time_limit() đang bị tắt trong chương trình PHP bằng thông số " +"disabled_functions trong tập tin php.ini. Gallery tuy vẫn có thể hoạt động nhưng có " +"thể sẽ không ổn định. Bất kỳ thao tác nào cần chạy lâu hơn %d giây sẽ thất bại (trong một số " +"trường hợp chỉ hiển thị một trang trắng) và có khả năng dẫn đến hỏng dữ liệu." + +msgid "Memory limit" +msgstr "Giới hạn bộ nhớ" + +msgid "no limit" +msgstr "không giới hạn" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"Cảnh báo: Chương trình PHP của bạn đặt giới hạn bộ nhớ là %sb (trong thông số " +"memory_limit ở tập tin php.ini. Bạn nên nâng giới hạn này lên ít nhất là %sMB " +"để Gallery có thể hoạt động ổn định." + +msgid "File uploads allowed" +msgstr "Cho phép tải tập tin lên máy chủ" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"Cảnh báo: Chương trình PHP của bạn được cài đặt cấm tải tập tin lên (bằng thông số " +"file_uploads trong tập tin php.ini). Bạn cần phải thay đổi cài đặt này nếu bạn muốn " +"tải tập tin vào Gallery của bạn thông qua trình duyệt web." + +msgid "Maximum upload size" +msgstr "Kích thước tải lên tối đa" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"Cảnh báo: Chương trình PHP của bạn đặt giới hạn kích thước tập tin tải lên là %sb (trong " +"thông số post_max_filesize ở tập tin php.ini). Bạn nên nâng giới hạn này lên để cho " +"phép tải các tập tin có kích thước lớn hơn." + +msgid "Maximum POST size" +msgstr "Kích thước POST tối đa" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"Cảnh báo: Chương trình PHP của bạn đặt giới hạn dữ liệu gửi lên tối đã là %sb (trong thông " +"số post_max_size ở tập tin php.ini). Bạn nên nâng giới hạn này lên để cho phép tải " +"các tập tin có kích thước lớn hơn." + +msgid "Translation support" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "" + +msgid "Zend compatibility mode" +msgstr "Chế độ tương thích với Zend" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"Cảnh báo: Chương trình PHP của bạn được cài đặt chế độ Zend ze1_compatibility_mode. Chế độ " +"này có thể làm cho PHP bị ngưng hoạt động. Bạn hãy nhấp chuột vào đây để " +"kiểm tra thử. Nếu kết quả là \"SUCCESS\" thì chương trình PHP của bạn không bị ảnh hưởng. " +"Nếu bạn gặp lỗi thì bạn phải tắt chế độ ze1_compatibility_mode trước khi tiếp tục." + +msgid "putenv() allowed" +msgstr "cho phép dùng putenv()" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"Cảnh báo: Hàm set_time_limit() đang bị tắt trong chương trình PHP bằng thông số " +"disabled_functions trong tập tin php.ini. Gallery tuy vẫn có thể hoạt động nhưng có " +"thể sẽ không ổn định. Bất kỳ thao tác nào cần chạy lâu hơn %d giây sẽ thất bại (trong một số " +"trường hợp chỉ hiển thị một trang trắng) và có khả năng dẫn đến hỏng dữ liệu." + +msgid "Output buffering disabled" +msgstr "" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" + +msgid "Gallery file integrity" +msgstr "Tính toàn vẹn các tập tin Gallery" + +msgid "Test skipped due to other errors." +msgstr "Kiểm tra bị bỏ qua vì một số lỗi khác." + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "Thiếu tập tin Manifest hoặc không truy cập được." + +msgid "Welcome" +msgstr "Chào mừng" + +#, fuzzy +msgid "Please correct the following errors" +msgstr "Chúng tôi nhận được các lỗi liên quan đến CSDL sau:" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"Mỗi chương trình Gallery cần có ít nhất một người dùng quản trị, người này có toàn quyền xem " +"và hiệu chỉnh toàn bộ Gallery. Hãy chọn một tên người dùng và mật khẩu cho tài khoản quản " +"trị chính của bạn. Bạn có thể thêm người dùng quản trị sau nếu muốn." + +msgid "Admin username" +msgstr "Tên người dùng Quản trị" + +msgid "Please enter a valid user name" +msgstr "Bạn hãy nhập một tên người dùng hợp lệ" + +msgid "Please enter a password" +msgstr "Xin hãy nhập một mật khẩu" + +msgid "Password" +msgstr "Mật khẩu" + +msgid "Setup password" +msgstr "Mật khẩu cài đặt" + +msgid "(type again)" +msgstr "(đánh lại)" + +msgid "Admin email address" +msgstr "Địa chỉ email của người quản trị" + +msgid "Please enter a valid email address" +msgstr "Bạn hãy nhập một địa chỉ email hợp lệ" + +msgid "Admin full name (optional)" +msgstr "Tên đầy đủ của người quản trị (không bắt buộc)" + +msgid "Missing password! Please enter the same password twice" +msgstr "Thiếu mật khẩu! Hãy nhập mật khẩu hai lần" + +msgid "The passwords you entered do not match! Please try again." +msgstr "Mật khẩu bạn nhập không trùng nhau! Xin hãy thử lại." + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"Vì bạn dùng lại các bảng đang có trong cơ sở dữ liệu, đây không phải là bản cài đặt mới. Do " +"đó, mật khẩu cài đặt sẽ được thay đổi nhưng mật khẩu của người quản trị sẽ vẫn dùng mật khẩu " +"cũ. Để thay đổi mật khẩu của người quản trị, bạn hãy dùng chức năng quên mật khẩu của " +"Gallery." + +msgid "Create" +msgstr "Tạo" + +msgid "Save" +msgstr "Lưu" + +msgid "Admin user info entered successfully." +msgstr "Thông tin người dùng Quản trị đã được nhập." + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"Để bắt đầu cài đặt, chúng tôi cần xác nhận bạn đúng là người có quyền cài Gallery này. Cách " +"tốt nhất là yêu cầu bạn tạo một thay đổi nhỏ trong thư mục của Gallery để chứng tỏ bạn có đủ " +"quyền hạn. Cho nên chúng tôi sẽ yêu cầu bạn tạo một tập tin có tên login.txt trong thư mục %s ở máy chủ web của bạn (đó là thư mục chứa tập tin main." +"php). Tập tin này phải chứa chuỗi các ký tự được tạo ngẫu nhiên dưới đây:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"Để tiện lợi cho bạn, chúng tôi đã chuẩn bị %stập tin login.txt%s cho bạn. Hãy tải tập tin " +"này về và chép nó vào thư mục %s của bạn là được." + +msgid "Once you've uploaded the file, click below to continue." +msgstr "Một khi bạn đã tải tập tin đó lên, hãy ấn vào phía dưới để tiếp tục." + +msgid "Authenticate Me" +msgstr "Hãy xác nhận tôi" + +msgid "Authentication successful!" +msgstr "Đã xác nhận" + +msgid "Erase data for a clean install" +msgstr "Xóa dữ liệu để cài đặt mới" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "" +"Bạn có chắc là bạn muốn xóa tất cả dữ liệu của bạn trong thư mục lưu trữ của Gallery và tất " +"cả dữ liệu trong cơ sở dữ liệu của Gallery?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "Có lỗi khi xóa CSDL và thư mục lưu trữ. Sau đây là thông báo lỗi:" + +msgid "Cancel" +msgstr "Hủy" + +msgid "Erase all data" +msgstr "Xóa tất cả dữ liệu" + +msgid "Please fix this error and try again." +msgstr "Xin hãy sửa lỗi này và thử lại." + +msgid "Try Again" +msgstr "Thử lại" + +msgid "Create a config file" +msgstr "Tạo một tập tin cấu hình" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"Bây giờ chúng tôi cần ghi lại tất cả các thông tin mà bạn cung cấp vào một tập tin có tên " +"config.php trong thư mục %s của bạn. Tập tin này rất quan trọng vì nó cho " +"Gallery biết các thông tin cần thiết để nó hoạt động. Sau khi chúng tôi tạo tập tin này " +"xong, bạn có thể đọc lại và chỉnh sửa nó nếu bạn muốn." + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix (truy cập qua shell)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "Tạo tập tin cấu hình" + +msgid "Config file created successfully." +msgstr "Đã tạo tập tin cấu hình thành công." + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"Chúng tôi đã ghi lại các thông tin bạn cung cấp vào một tập tin tên là config.php " +"trong thư mục gallery2 của bạn. Bạn có thể đọc lại tập tin này và chỉnh sửa nó nếu muốn. Tuy " +"nhiên bạn phải rất cẩn thận vì nếu bạn chỉnh sai thì Gallery sẽ không hoạt động được!" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"Xin hãy chọn loại cơ sở dữ liệu của bạn và nhập thông tin đăng nhập vào CSDL. Chương trình " +"cài đặt sẽ không tạo CSDL cho bạn nên bạn phải tự tạo và điền tên CSDL vào đây. Nếu bạn cài " +"Gallery vào một CSDL đã có sẵn dữ liệu, các tiếp đầu tố cho bảng và cột sẽ tránh xung đột " +"với các bảng và cột sẵn có." + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"Đây là kiểu cài đặt nhiều trang web. Hãy nhớ là mỗi trang cần có các bảng cơ sở dữ liệu " +"riêng. Hãy chọn một cơ sở dữ liệu khác hoặc một tiếp đầu tố khác cho bảng cho mỗi trang!" + +msgid "Database type:" +msgstr "Kiểu CSDL:" + +msgid "DB Hostname:" +msgstr "Tên máy chủ CSDL:" + +msgid "DB Username:" +msgstr "Tên người dùng CSDL:" + +msgid "DB Password:" +msgstr "Mật khẩu cho CSDL:" + +msgid "DB Name:" +msgstr "Tên CSDL:" + +msgid "Table Prefix:" +msgstr "Tiếp đầu tố cho bảng:" + +msgid "Column Prefix:" +msgstr "Tiếp đầu tố của cột:" + +msgid "We received the following database related errors:" +msgstr "Chúng tôi nhận được các lỗi liên quan đến CSDL sau:" + +msgid "Erase Data For A Clean Install" +msgstr "Xóa dữ liệu để cài đặt mới" + +msgid "Reuse Existing Tables" +msgstr "Dùng các bảng đã có sẵn" + +msgid "Database set up successfully." +msgstr "Cơ sở dữ liệu đã được cài đặt thành công." + +msgid "Finished!" +msgstr "Hoàn tất!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "" +"Chúc mừng bạn! Cài đặt Gallery 2 đã hoàn tất! Bạn thấy chưa... cài đặt cũng không quá khó, " +"đúng không? Bây giờ là lúc bạn tải ảnh lên!" + +msgid "Go to my Gallery!" +msgstr "Vào Gallery của tôi!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"Bây giờ bạn có thể vào Gallery của bạn. Hãy nhập đường dẫn trong trình duyệt của bạn cho %" +"smain.php%s trong thư mục %s của bạn." + +msgid "Installer Help" +msgstr "Hướng dẫn Chương trình Cài đặt" + +msgid "Start Over" +msgstr "Bắt đầu lại từ đầu" + +msgid "Error installing Gallery Core" +msgstr "Có lỗi khi cài đặt Lõi của Gallery" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "Có gì sai trong khi chúng tôi cài module lõi. Cần phải làm gì tiếp?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"Quay lại bước Kiểm tra hệ thống của chương trình cài đặt và bảo đảm tất cả các kiểm tra đều " +"Thành công. Một vấn đề thường gặp là cảnh bảo về tính toàn vẹn bị bỏ qua." + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"Nếu không có cảnh báo hay thất bại trong bước Kiểm tra hệ thống, hãy xóa trắng thư mục lưu " +"trữ và xóa các bảng trong cơ sở dữ liệu và thử bắt đầu lại quá trình cài đặt (thực hiện lại " +"tất cả các bước)." + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "" +"Bạn hãy xem trang %sCác câu hỏi G2 thường gặp%s và đọc %sphần Các vấn đề đã biết của tập tin " +"Readme%s." + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"Nếu vấn đề của bạn vẫn còn tiếp diễn, hãy chép log cài đặt tại %s và gửi kèm (như là install." +"log.zip) vào một bài trong %sdiễn đàn hỗ trợ G2%s hoặc, nếu có thể, chỉ thêm một liên kết " +"đến tập tin install.log trong một bài gửi ở diễn đàn để bộ phận hỗ trợ có thể phân tích nếu " +"cần." + +msgid "Stack Trace:" +msgstr "Stack Trace:" + +msgid "Installed Gallery Core successfully." +msgstr "Lõi của Gallery đã được cài đặt thành công" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"Lõi của Gallery đã được cài đặt. Tuy là Gallery đã có thể hoạt động ở thời điểm này, bạn nên " +"tiếp tục chương trình cài đặt để cài thêm một số module tùy chọn để bạn có được các tính " +"năng bạn muốn có trong Gallery của bạn." + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"Các module sau đây có thể được cài và kích hoạt tự động cho bạn. Bạn nên cài ít nhất một bộ " +"công cụ đồ họa. Nếu không, Gallery sẽ không thể tạo ảnh con cho các ảnh của bạn. Trên hầu " +"hết các hệ thống, các module được cài đặt tự động sẽ làm việc bình thường. Tuy nhiên trong " +"một số trường hợp càiđặt tự động có thể bị thất bại. Bạn lúc nào cũng có thể kích hoạt các " +"module mới hoặc bỏ kích hoạt bất cứ module nào bạn chọn trong trang Quản Trị. Vì vậy, các " +"quyết định của bạn ở đây đều có thể thay đổi được." + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"Một số module có thể không thể cài tự động. Tuy nhiên đây không phải là vấn đề. Những trường " +"hợp này thường là do bạn phải cấu hình module. Bạn có thể đặt cấu hình cho chúng trong trang " +"Quản trị." + +msgid "Name" +msgstr "Tên" + +msgid "Version" +msgstr "Phiên bản" + +msgid "Description" +msgstr "Mô tả" + +msgid "(Incompatible with this Gallery version)" +msgstr "(Không tương thích với phiên bản Gallery này)" + +msgid "(un)check all" +msgstr "(bỏ) đánh dấu tất cả" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "Chuyển sang Bước %d và bỏ qua kích hoạt»" + +msgid "Activate Selected Modules" +msgstr "Kích hoạt các module được chọn" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "Module %s đã được cài nhưng cần được đặt cấu hình trước khi kích hoạt" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "" +"Sau khi hoàn tất quá trình cài đặt, bạn hãy đăng nhập như là Quản trị và vào trang Quản trị " +"của Gallery. Sau đấy vào phần Module và cấu hình các module được liệt kê ở trên." + +#, c-format +msgid "Activated the %s module successfully" +msgstr "Module %s đã được kích hoạt thành công" + +msgid "Activate More Modules" +msgstr "Kích hoạt thêm module" + +#, c-format +msgid "Continue to Step %d»" +msgstr "Chuyển sang Bước %d»" + +msgid "Debug Output" +msgstr "" + +msgid "Welcome to the Gallery Installer" +msgstr "Chào mừng bạn đến với chương trình cài đặt Gallery" + +#, c-format +msgid "Install %d%% complete" +msgstr "Cài đặt hoàn tất %d%%" + +msgid "Redo this step" +msgstr "Thực hiện lại bước này" + +msgid "Gallery: your photos on your website" +msgstr "Gallery: ảnh của bạn trên chính trang web của bạn" + +#, c-format +msgid "Missing files (%d)" +msgstr "Các tập tin thiếu(%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"Lưu ý: Bạn đang dùng phiên bản Gallery từ CVS và một số tập tin mới bị xóa gần đây được liệt " +"kê dưới đây. Tuy nhiên, thường bạn có thể bỏ qua các cảnh báo này." + +#, c-format +msgid "Modified files (%d)" +msgstr "Các tập tin bị hiệu chỉnh (%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"Lưu ý: Bạn đang dùng phiên bản Gallery từ CVS và một số tập tin mới được hiệu chỉnh được " +"liệt kê dưới đây. Tuy bạn có thể bỏ qua các cảnh báo này, nhưng để an toàn thì bạn nên chạy " +"lệnh 'cvs update -Pd' trước khi tiếp tục." + +#, c-format +msgid "Old files (%d)" +msgstr "Các tập tin cũ (%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "" +"Các tập tin này không còn được Gallery dùng nữa. Chúng có thể sẽ không gây ra vấn đề gì " +"nhưng nói chung bạn nên xóa chúng đi để bản Gallery của bạn được sạch." + +msgid "Errors occurred. Please see messages below." +msgstr "" + +msgid "Please select the installation type" +msgstr "Hãy chọn kiểu cài đặt" + +msgid "Standard installation" +msgstr "Cài đặt chuẩn" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"Đây là kiểu cài đặt chuẩn. Hãy chọn kiểu cài đặt này nếu bạn muốn cài một bản Gallery mới " +"trong thư mục %s và được truy cập với đường dẫn (URL) %s." + +msgid "Multisite installation" +msgstr "Cài đặt cho nhiều trang web" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery cho phép các trang web độc lập dùng chung một bản cài đặt mã nguồn. Hãy chọn kiểu " +"cài đặt này nếu bạn muốn cài bản Gallery mới trên cùng một máy chủ web nhưng trong các đường " +"dẫn, tên miền con khác nhau." + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"Cài đặt nhiều trang không chia sẻ album, ảnh, người dùng hay bất cứ gì. Tất cả các trang này " +"đều cần cơ sở dữ liệu riêng và thư mục lưu trữ riêng. Để biết thêm thông tin và giải thích " +"về cài đặt nhiều trang web, hãy xem trang %s." + +msgid "You must enter a directory" +msgstr "Bạn cần phải nhập một thư mục" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"Thư mục bạn nhập vào là thư mục của codebase. Nếu bạn muốn cài một chương trình Gallery vào " +"thư mục codebase, hãy chọn kiểu cài đặt chuẩn. Nếu bạn muốn cài cho nhiều trang web, hãy " +"chọn một thư mục khác." + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "Thư mục bạn nhập vào không tồn tại" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "" +"Thư mục bạn nhập vào không truy cập được. Hãy chỉnh quyền lại để máy chủ web có thể đọc được " +"thư mục này." + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "" +"Không thể tạo các tập tin cho cài đặt nhiều trang web. Hãy đảm bảo là các tập tin liệt kê " +"dưới đây là có thể ghi được." + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "Tất cả trang đều được cài từ một bản mã nguồn trung tâm (codebase)." + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "" +"Hãy nhập thư mục cho trang mới dưới đây. Đường dẫn phải khác với đường dẫn cài codebase:" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "" +"Thư mục đó phải có thể ghi được bởi người dùng máy chủ web hoặc PHP, hoặc chứa các tập tin " +"có thể ghi được sau:" + +msgid "Select Directory" +msgstr "Chọn thư mục" + +msgid "Multisite directory setup successfully." +msgstr "Thư mục cài đặt cho nhiều trang web được tạo thành công." + +msgid "Standard installation selected." +msgstr "Cài đặt chuẩn được chọn." + +msgid "Install Steps" +msgstr "Các bước cài đặt" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"Chúng tôi muốn đảm bảo là Gallery của bạn được an toàn. Tập tin config.php mà chương trình " +"cài đặt này vừa hiệu chỉnh đang được đặt quyền hạn cho người khác được phép ghi vào nó. Việc " +"này cần vì chương trình cài đặt được coi là \"người khác\" trong hệ thống quyền hạn của " +"Unix. Vì vậy, trước khi bạn kết thúc cài đặt, bạn nên đổi quyền của tập tin này để người " +"khác không thể chỉnh sửa nó. Bây giờ, quyền hạn trên tập tin config.php của bạn đang là %s. " +"Chúng tôi khuyên bạn nên làm như sau:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"Chúng tôi muốn đảm bảo là Gallery của bạn được an toàn. Thư mục chứa tập tin config.php của " +"bạn mà chương trình cài đặt vừa hiệu chỉnh đang cho phép người khác vào ghi và xóa tập tin. " +"Vì vậy, trước khi bạn kết thúc cài đặt, bạn nên đổi quyền của thư mục này để người khác " +"không thể ghi được. Chúng tôi khuyên bạn nên làm như sau:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "" +"Bạn có thể tiếp tục nếu bạn thực sự muốn. Nhưng chúng tôi khuyên bạn nên bỏ một ít thời gian " +"kiểm tra để bảo đảm là không có vấn đề gì." + +msgid "We've verified that your config.php is secure." +msgstr "Chúng tôi xác nhận là tập tin config.php đã an toàn." + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "Kiểm tra lại" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "Đây là cài đặt cho nhiều trang. Hãy nhớ là mỗi trang cần có thư mục lưu trữ riêng." + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"Nếu bạn đang dùng một trình duyệt mới, chúng tôi sẽ cố gắng tự điền tiếp đường dẫn bạn nhập " +"vào. Cho nên nếu bạn có khó khăn trong việc tìm ra đường dẫn đúng cho thư mục g2data, thử " +"các đường dẫn khác nhau trong hộp chữ dưới đây để xem các đường dẫn được tự động điền đủ." + +msgid "The directory you entered is read only" +msgstr "Thư mục bạn nhập vào chỉ cho đọc" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "Có lỗi khi tạo cấu trúc thư mục trong thư mục lưu trữ." + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "Thư mục lưu trữ đã được đặt" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "Đường dẫn thư mục:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "" +"Lưu ý: Đây chỉ là các ví dụ! Chúng có thể sẽ không hoạt động được trên hệ thống của bạn." + +msgid "Unix (with ftp access)" +msgstr "Unix (truy cập bằng FTP)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"Lưu ý là các chương trình FTP và máy chủ FTP có khả năng khác nhau nên các chỉ dẫn này có " +"thể không chạy được. Hãy tham khảo tài liệu hướng dẫn của chương trình FTP của bạn hoặc một " +"nhà quản trị hệ thống nếu bạn gặp khó khăn." + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"Trong một số môi trường lưu trữ web, đường dẫn bạn thấy khi truy cập qua shell hay qua FTP " +"không giống đường dẫn PHP thấy. Để tìm ra đúng đường dẫn đến thư mục dữ liệu của bạn, bạn có " +"thể thử tạo một tập tin PHP tên dir.php chứa đoạn chương trình dưới đây và chép nó " +"vào thư mục dữ liệu của bạn." + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"sau đó hãy xác định địa chỉ web của tập tin dir.php và mở tập tin này trong trình duyệt web " +"của bạn (chẳng hạn như %s). Các lệnh trong dir.php sẽ cho bạn biết đường dẫn chính xác để " +"điền ở đây." + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"Lưu ý: Điều này yêu cầu thư mục dữ liệu của bạn phải truy cập được từ web. Chúng tôi " +"khuyến cáo không nên dùng theo cách này vì nó có thể làm hỏng tính năng tường lửa ảnh của " +"chúng tôi. Một khi bạn đã nghĩ ra đường dẫn theo cách này thì chúng tôi khuyên bạn hãy " +"chuyển thư mục dữ liệu ra ngoài khu vực có thể truy cập được từ web và cập nhật lại đường " +"dẫn ở đây." + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "Lưu ý: Hãy nhớ xóa tập tin dir.php khi dùng xong!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "Thư mục lưu trữ đã được đặt" + +msgid "Success" +msgstr "Thành công" + +msgid "Warning" +msgstr "Cảnh báo" + +msgid "Failed" +msgstr "Thất bại" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "" +"Nếu bạn đang dùng Apache, hãy tạo tập tin có tên .htaccess trong thư mục chính của Gallery " +"với nội dung dưới đây:" + +msgid "Version Check" +msgstr "Kiểm tra phiên bản" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "Đây không phải cài đặt mới và phiên bản cài đặt cũ không trùng phiên bản mới." + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "Phiên bàn đang cài đặt không thể nâng cấp lên phiên bản mới!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "" +"Phiên bản đang cài đặt cũ hơn phiên bản mới. Bạn nên chạy chương trình nâng cấp thay vì " +"chương trình cài đặt!" + +msgid "Currently installed" +msgstr "Hiện đang cài" + +msgid "New version" +msgstr "Phiên bản mới" + +msgid "Go to the Upgrader!" +msgstr "Vào chương trình nâng cấp!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"Bây giờ bạn nên vào chương trình nâng cấp. Hãy nhập đường dẫn trong trình duyệt của bạn cho %" +"s/upgrade/index.php%s trong thư mục %s của bạn." + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"Để cài đặt Gallery 2 trên máy chủ web của bạn cần phải qua %d bước. Công cụ cài đặt này sẽ " +"hướng dẫn bạn đi qua những bước này và sẽ hỗ trợ bạn trong trường hợp cần thực hiện các bước " +"thêm để cài Gallery. Sau khi hoàn tất một bước, bạn có thể quay lại và thay đổi bất cứ lúc " +"nào. Hãy đọc %sHướng Dẫn Chương Trình Cài Đặt%s trước khi tiếp tục." + +msgid "Select Language:" +msgstr "Chọn ngôn ngữ:" + +msgid "Go" +msgstr "Đi tiếp" + +msgid "Begin Installation»" +msgstr "Bắt đầu cài đặt»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL với Transactions (v3.23.34a và mới hơn)" + +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "Lõi của Gallery đã được cài đặt thành công" + +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "Chúc mừng bạn, khung chương trình Gallery đã được cài đặt thành công. Tuy nhiên, hầu hết " +#~ "các tính năng hấp dẫn của Gallery được cung cấp bởi các module mà bạn có thể tự cài và " +#~ "cấu hình. Trong bước tiếp theo bạn sẽ chọn các module để cài đặt và tinh chỉnh chương " +#~ "trình Gallery theo như bạn muốn." + +#~ msgid "Install More Modules" +#~ msgstr "Cài thêm module" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "Trước khi tiếp tục, bạn nên tạo một tập tin tên config.php (để lưu cấu hình)trong " +#~ "thư mục %s của bạn. Bạn phải bảo đảm là máy chủ web có quyền ghi vào tập tin này. " +#~ "Nếu bạn dùng Unix, hãy thử dùng lệnh chmod 666 config.php. Trên Windows thì bạn " +#~ "không cần phải làm gì cả. Bạn có thể tiếp tục sau khi bạn đã tạo tập tin này và đặt quyền " +#~ "cho nó. Nếu có vấn đề gì thì chúng tôi sẽ chỉ dẫn bạn tiếp." + +#~ msgid "Install Other Modules" +#~ msgstr "Cài các module khác" + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x (chưa được kiểm tra kỹ)" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "Gallery needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browsed " +#~ "directly via the web. This is necessary if you wish to have your images accessible only " +#~ "via Gallery [%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "Gallery cần lưu dữ liệu vào một thư mục trên máy chủ của bạn. Thư mục này sẽ được dùng để " +#~ "lưu ảnh cũng như các thông tin quan trọng khác. Để an toàn, chúng tôi khuyên bạn nên đặt " +#~ "thư mục này ngoài vùng có thể truy cập qua web để người khác không thể trực tiếp " +#~ "duyệt thư mục này được. Điều này là cần thiết nếu bạn muốn hạn chế ảnh chỉ có thể được " +#~ "truy cập thông qua chương trình Gallery [%s]. Lưu ý rằng đường dẫn mặc định cung cấp dưới " +#~ "đây là trong vùng truy cập của web vì chúng tôi không thể biết chắc chắn cấu trúc thư mục " +#~ "ngoài trang web của bạn. Bạn nên đổi đường dẫn này để chỉ vào một thư mục an toàn, chẳng " +#~ "hạn như một đường dẫn nằm trong thư mục home của bạn, nếu có thể. Tuy nhiên, nếu bạn chỉ " +#~ "có thể truy cập máy chủ bằng FTP thì bạn có thể không làm được như vậy." + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get " +#~ "Gallery working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "Máy chủ web của bạn cần phải ghi vào thư mục này. Các hệ thống quyền hạn có thể khác nhau " +#~ "tùy theo máy chủ. Bạn có thể đặt một tập quyền rất thoải mái cho thư mục này để Gallery " +#~ "hoạt động được, nhưng nếu bạn quan ngại về an toàn thì bạn nên tham vấn quản trị hệ thống " +#~ "của bạn để tìm hiểu cách làm an toàn nhất có thể. Để làm cho nó hoạt động được, bạn có " +#~ "thể làm theo các ví dụ dưới đây." + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "Cái này có lúc được gọi là bức tường lửa cho ảnh." + +#~ msgid "Finished" +#~ msgstr "Hoàn tất" + +#~ msgid "Installation Status" +#~ msgstr "Trạng thái cài đặt" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "Tập tin kiểm tra SQL \"%s\" không tìm thấy." diff --git a/Source/gallery2/install/po/zh_CN.po b/Source/gallery2/install/po/zh_CN.po new file mode 100644 index 0000000..1808fe1 --- /dev/null +++ b/Source/gallery2/install/po/zh_CN.po @@ -0,0 +1,1374 @@ +# $Id: zh_CN.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"POT-Creation-Date: 2005-08-05 21:48-0400\n" +"PO-Revision-Date: 2006-03-09 23:54+0800\n" +"Last-Translator: Lyric \n" +"Language-Team: Chinese Simplified \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "Unknown" +msgstr "未知" + +msgid "Admin User Setup" +msgstr "管理员设置" + +msgid "admin" +msgstr "admin" + +#, fuzzy +msgid "Gallery Administrator" +msgstr "图库系统管理员" + +msgid "Authenticate" +msgstr "认证" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "错误:找不到 login.txt。请把它放在 %s/ 目录中。" + +#, fuzzy +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "错误:无法读取 login.txt 文件。请给图库读取这个文件的权限。" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "错误: login.txt 中秘钥不符合。请从下面下载一个新的认证字串後再试一次。" + +msgid "Create Config File" +msgstr "创建配置文件" + +#, fuzzy, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"无法写入配置文件 config.php 在 %s 目录中。请改变它的存取权限。如果使用 Unix 可以用" +"「chmod 666 config.php」指令来修正。" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr " %s 目录中没有 config.php 文件。" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"无法写入 config.php 文件。如果服务器是 Windows,可能需要停止 config.php 的文件分享,然后手动" +"设置存取权限。" + +msgid "Database Setup" +msgstr "数据库设置" + +msgid "You must have the MySQL PHP module installed" +msgstr "你必需装有 MySQL PHP 模块" + +#, fuzzy +msgid "You must have the MySQL Improved PHP module installed" +msgstr "你必需装有 MySQL PHP 模块" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "你必需装有 ibm_db2 PHP 模块" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "你必需装有 PostgreSQL PHP 模块" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "你必需装有 Oracle OCI8 PHP 模块" + +#, fuzzy +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "你必需装有 Oracle OCI8 PHP 模块" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "你必需指定一个列前缀(我们建议 %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "列前缀只能使用英文字母、数字和下划线" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "你必需指定一个表前缀(我们建议 %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "表前缀只能使用英文字母、数字和底线" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "无法创建%s类型的数据库连接" + +msgid "Unable to connect to database with the information provided." +msgstr "无法使用所提供的信息连接数据库。" + +msgid "The database you specified does not exist. Please create it." +msgstr "指定的数据库并不存在。请先创建。" + +msgid "The database privileges test did not complete successfully." +msgstr "数据库权限测试没有成功地完成。" + +#, fuzzy +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"这个数据库中已经有图库的表!可是你的图库储存目录中没有「versions.dat」文件,所以我们判断你的" +"图库已经损坏。如果你认为你的图库应该还能使用,请产生一个有正确格式的 versions.dat 文件。或选" +"择重新安装,但这样会清除所有数据库和储存目录中的资料。" + +#, fuzzy +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"这个图库储存目录中有一个从前一次安装留下来的 versions.dat 文件。可是数据库中没有图库的表格。" +"选择重新安装以清除所有储存目录中的资料并前住下一个步骤。" + +#, fuzzy +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"这个数据库中已经有图库的表而且图库储存目录有一个 versions.dat 文件。可是安装的 图库数据库的版" +"本和安装在图库储存目录中的资料版本不符。选择重新安装以清除所有数据库和储存目录中的资料并前住" +"下一个步骤。" + +#, fuzzy +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"数据库中已经有 图库 的表格而且 图库 储存目录看来是完整的。请选择继续使用现有的数据库表格和储" +"存目录资料或重新安装以清除所有数据库和储存目录中的资料。" + +#, fuzzy +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "无法执行清除储存目录所需的 API。请手动删除图库储存目录。" + +#, fuzzy +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "无法执行移除图库数据库表格所需的 API。请手动清理图库数据库。" + +#, fuzzy +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "无法载入 图库 API。请手动删除 图库数据库表格和储存目录。" + +#, fuzzy +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL with Transactions(v3.23.34a 和更新版)" + +#, fuzzy +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL(所有版本)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x 和更新版" + +msgid "Oracle (9i and newer)" +msgstr "Oracle(9i 和更新版)" + +#, fuzzy +msgid "IBM DB2 (v9.x and newer)" +msgstr "(实验性质!)IBM DB2(v8.2.2 和更新版)" + +#, fuzzy +msgid "Microsoft SQL Server 2005 and newer" +msgstr "PostgreSQL v7.x 和更新版" + +msgid "Unknown DB type or no known tables information." +msgstr "不明数据库类型或没有表资讯。" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "找不到类似「%s」的可用表前缀。" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "无法打开纲要(schema)文件:「%s」。" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"无法产生 DB 测试序列。检查返回的错误讯息和 README.html 有关缺少权限的信息并清理数据库。" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"测试无法删除 DB 测试序列。检查返回的错误讯息和 README.html 有关缺少权限的信息并清理数据库。" + +msgid "Missing SQL statements" +msgstr "没有 SQL 指令" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "检查返回的错误讯息和 README.html 有关缺少权限的信息并清理数据库。" + +msgid "Finish Installation" +msgstr "安装完成" + +#, fuzzy +msgid "Install Gallery Core" +msgstr "安装说明" + +msgid "Installing the core module" +msgstr "安装核心模块" + +#, fuzzy +msgid "Unable to initialize our Gallery data" +msgstr "无法初始化图库资料" + +msgid "Unable to communicate with the database" +msgstr "无法和数据库通讯" + +msgid "Unable to load the core module" +msgstr "无法载入核心模块" + +msgid "Unable to install the core module" +msgstr "无法安装核心模块" + +msgid "Unable to activate the core module" +msgstr "无法启用核心模块" + +msgid "Unable to commit database transaction" +msgstr "无法确认数据库事务" + +msgid "Core module is only partially installed." +msgstr "核心模块安装不完全。" + +#, fuzzy +msgid "Install Plugins" +msgstr "安装步骤" + +#, fuzzy +msgid "Unable to initialize our Gallery session" +msgstr "无法初始化图库会话" + +#, c-format +msgid "Unable to load the %s module" +msgstr "无法载入%s模块" + +msgid "Installing modules" +msgstr "安装模块中...." + +#, c-format +msgid "Unable to install the %s module" +msgstr "无法安装%s模块" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "无法启用%s模块" + +msgid "Unable to get the module list" +msgstr "无法取得模块列表" + +msgid "Other" +msgstr "其他" + +msgid "Installation Type" +msgstr "安装类型" + +msgid "Check Security" +msgstr "安全检查" + +msgid "Storage Setup" +msgstr "储存空间设置" + +msgid "System Checks" +msgstr "系统检查" + +msgid "Performing system checks" +msgstr "进行系统检查中" + +#, fuzzy +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP 版本大於或等於 4.1.0 或大於或等於 5.0.4" + +#, fuzzy, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"错误:图库2 需要 PHP 版本 4.1.0 以上或 5.0.4 以上。你安装的 PHP 版本是 %s。请要求你的网页服务" +"器管理员昇级。新的版本在 %sPHP 的网站上%s。" + +msgid "PHP Version" +msgstr "PHP 版本" + +msgid "FILE directive supported" +msgstr "支持 FILE 指令" + +#, fuzzy +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"错误:你的 PHP __FILE__ 指令工作不正常。请向你的WEB服务器管理员或图库讨论区要求技术支援。" + +msgid "FILE Directive" +msgstr "FILE 指令" + +msgid "Safe mode disabled" +msgstr "安全模式已关闭" + +#, fuzzy +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"错误:你的 PHP 版本设置为使用安全模式(Safe Mode)。你必需关闭安全模式才能继续执行图库。" + +msgid "Safe Mode" +msgstr "安全模式" + +msgid "Regular expressions" +msgstr "正则表达式" + +#, fuzzy, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"错误:你的 PHP 设置并不支援 %sPerl Compatible Regular Expressions%s。你必需开启这些功能才能继" +"续执行 Gallery。" + +msgid "exec() allowed" +msgstr "允许 exec()" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"警告:你的 PHP 中的 exec() 函数被 php.ini 中的 disabled_functions 关闭了。你将无法使用" +"需要外部执行档的模块(如 ImageMagick、NetPBM 或 Ffmpeg)。这个选项只能在服务器端改变,所以你" +"需要在全体共用的 php.ini 中改正。" + +msgid "set_time_limit() allowed" +msgstr "允许 set_time_limit()" + +#, fuzzy, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"警告:你的 PHP 中的 set_time_limit() 函数被 php.ini 中的 disabled_functions 关闭了。图" +"库仍然可以在这个设置下执行,可是稳定度会有问题。任何功能执行超过 %d 秒钟都会失败(有时会传回" +"一个空白页面)并可能导致资料损毁。" + +msgid "Filesystem Operations" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"警告:你的 PHP 中的 putenv() 函数被 php.ini 中的 disabled_functions 参数关闭了。图库仍" +"然可以在这个设置下执行,可是在极少数的系统上 图库将无法在除了系统和英文以外的语言下执行。" + +msgid "Memory limit" +msgstr "记忆空间限制" + +msgid "no limit" +msgstr "没有限制" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"警告:你的 PHP 设置成只能使用 %sb(在 php.ini 中的 memory_limit 参数)的记忆空间。你应" +"该把这个限制提昇到至少 %sMB,图库才能正常工作。" + +msgid "File uploads allowed" +msgstr "允许上传文件" + +#, fuzzy +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"警告:你的 PHP 设置成禁止文件上传(在 php.ini 中的 file_uploads 参数)的记忆空间。你需" +"要启动这个选项才能用网页浏览程式上传文件到 Gallery。" + +msgid "Maximum upload size" +msgstr "最大上传大小" + +#, fuzzy, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"警告:你的 PHP 设置成上传文件最大为 %sb(在 php.ini 中的 upload_max_filesize 参数)。" +"你应该提高这个限制以允许上传更大的文件。" + +msgid "Maximum POST size" +msgstr "最大 POST 大小" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"警告:你的 PHP 设置成最大 POST 资料为 %sb(在 php.ini 中的 post_max_size 参数)。你应" +"该提高这个限制以允许上传更大的文件。" + +msgid "Translation support" +msgstr "翻译支援" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"你的网页服务器不支援多语言环境。请指示你的系统管理员重新设置 PHP,启动 %sgettext%s 选项,才能" +"使用其他语言。" + +#, fuzzy, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"你的 PHP 没有 %sbind_textdomain_codeset%s 函数。这表示 图库可能无法正确显示某些语言中的字符。" + +#, fuzzy, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "你的 PHP 没有 %sdngettext%s 函数。这表示 图库将无法翻译复数名词。" + +msgid "Zend compatibility mode" +msgstr "Zend 兼容模式" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"警告:你的 PHP 设置使用可能使 PHP 当机的 Zend ze1_compatibility_mode 选项。请按这里测试 PHP。如果你看到「SUCCESS」表示你的 PHP 正常。如果你得到一个错误讯息或完全没有" +"反应,你需要把 ze1_compatibility_mode关掉才能继续。" + +msgid "putenv() allowed" +msgstr "允许 putenv()" + +#, fuzzy +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"警告:你的 PHP 中的 putenv() 函数被 php.ini 中的 disabled_functions 参数关闭了。图库仍" +"然可以在这个设置下执行,可是在极少数的系统上 图库将无法在除了系统和英文以外的语言下执行。" + +msgid "Output buffering disabled" +msgstr "输出缓冲已关闭" + +#, fuzzy, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"警告:你的 PHP 中的输出缓冲功能被 php.ini 中的 %s 参数打开了。图库仍然可以在这个设置下" +"执行,下载文件可能还会变快,可是 图库可能会无法传送太大的文件(如影片)而且可能会耗尽记忆空" +"间。此外,除非 ini_set() 可以被使用,打开输出缓冲会使有些如处理进度等的功能无法正确工作。" + +#, fuzzy +msgid "Gallery file integrity" +msgstr "图库完整性" + +msgid "Test skipped due to other errors." +msgstr "因其他错误略过测试。" + +msgid "Theme available" +msgstr "" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "" + +msgid "Manifest missing or inaccessible." +msgstr "找不到或无法存取文件清单" + +msgid "Welcome" +msgstr "欢迎" + +msgid "Please correct the following errors" +msgstr "请修正下列错误" + +#, fuzzy +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"每个 图库都必需有至少一个可以查看和修改所有事项的管理用户。请为你的主要管理员选择一个用户名称" +"和密码。你可以稍後再增加其他的用户。" + +msgid "Admin username" +msgstr "管理员用户名称" + +msgid "Please enter a valid user name" +msgstr "请输入一个有效的用户名称" + +msgid "Please enter a password" +msgstr "请输入一个密码" + +msgid "Password" +msgstr "密码" + +msgid "Setup password" +msgstr "设置密码" + +msgid "(type again)" +msgstr "(再输入一次)" + +msgid "Admin email address" +msgstr "管理员电邮地址" + +msgid "Please enter a valid email address" +msgstr "请输入一个有效的电邮地址" + +msgid "Admin full name (optional)" +msgstr "管理员全名(选填)" + +msgid "Missing password! Please enter the same password twice" +msgstr "没有密码!请输入同一个密码两次" + +msgid "The passwords you entered do not match! Please try again." +msgstr "你输入的密码不相同!请再试一次。" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"你正在使用现有的数据库表格,这不是一个全新安装。这只会改变设置程式的密码而不是网站管理员的密" +"码。要改变网站管理员的密码,请选用 图库中遗失密码的功能。" + +msgid "Create" +msgstr "产生" + +msgid "Save" +msgstr "储存" + +msgid "Admin user info entered successfully." +msgstr "管理员用户资料输入成功。" + +#, fuzzy, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"在继续安装之前,我们必需确定你确实是你宣称的身份。最好的方法是要求你在 图库目录中作一个小小的" +"改变,这可以用来证明你有正确的权限。所以,我们要求你在你的网页服务器的 %s 目录中产生" +"一个叫 login.txt 的文件。(那个目录是 main.php 所在的同一个目录)这个文件的" +"内容必需是下面随机产生的文字:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"为了你的方便,我们预先准备好了一份%s正确版本的 login.txt%s。下载这个文件然後把它拷贝到你的 " +"%s 目录中就可以了。" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "在你上传这个文件後,按下面继续。" + +msgid "Authenticate Me" +msgstr "确认我的身分" + +msgid "Authentication successful!" +msgstr "认证成功" + +msgid "Erase data for a clean install" +msgstr "清除资料以重新安装" + +#, fuzzy +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "你确定要删除所有在你的 图库储存目录 和 图库数据库中的资料?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "清除数据库和储存空间时发生错误。错误如下:" + +msgid "Cancel" +msgstr "取消" + +msgid "Erase all data" +msgstr "清除所有资料" + +msgid "Please fix this error and try again." +msgstr "请修正这个错误後再试一次。" + +msgid "Try Again" +msgstr "再试一次" + +msgid "Create a config file" +msgstr "产生一个设置档" + +#, fuzzy, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"现在我们需要把你提供的资料写到一个在 %s 中叫 config.php 的文件。这个文件非常重" +"要。它提供 图库所有运作需要的资讯。在我们产生这个文件後,你可以阅读这个文件并自己修改。" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" + +msgid "Unix (with shell access)" +msgstr "Unix(指今列)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" + +msgid "Create config file" +msgstr "产生设置档" + +msgid "Config file created successfully." +msgstr "设置档产生成功" + +#, fuzzy +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"我们已经把你提供的所有资讯写到在你的 图库2 目录中一个叫 config.php 的文件中。你可以阅" +"读这个文件并自己修改。不过请小心,如果你改错了这个文件,图库会无法正常动作。" + +#, fuzzy +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"请选择你的数据库类型并输入你的数据库认证资料。安装程式并不会为你产生数据库,所以你必需自己产" +"生一个并在这里输入它的名称。如果你要把 图库安装到一个已经有表格的现有数据库中,表格和栏位的字" +"首会避免和你现有的资料冲突。" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"这是个多站台的安装。请记住每个站都需要它自己的数据库表格。你可以为个别站台选用不同的数据库或" +"不同的表格字首。" + +msgid "Database type:" +msgstr "数据库型式:" + +msgid "DB Hostname:" +msgstr "数据库主机名称:" + +msgid "DB Username:" +msgstr "数据库用户名称:" + +msgid "DB Password:" +msgstr "数据库密码:" + +msgid "DB Name:" +msgstr "数据库名称" + +msgid "Table Prefix:" +msgstr "表格字首:" + +msgid "Column Prefix:" +msgstr "栏位字首:" + +msgid "We received the following database related errors:" +msgstr "我们收到下列数据库相关的错误:" + +msgid "Erase Data For A Clean Install" +msgstr "清除资料以重新安装" + +msgid "Reuse Existing Tables" +msgstr "使用现有表格" + +msgid "Database set up successfully." +msgstr "数据库设置成功" + +msgid "Finished!" +msgstr "完成了!" + +#, fuzzy +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "恭禧!你的 图库2 安装已经完成!看吧,没有多难嘛,对不对?现在该放一些照片进去了!" + +msgid "Go to my Gallery!" +msgstr "前往我的 Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"你现在可以前往你的新 Gallery。在你的浏览程式中输入在你的%s目录中的 %smain.php%s 的网址。" + +msgid "Installer Help" +msgstr "安装说明" + +msgid "Start Over" +msgstr "重新开始" + +#, fuzzy +msgid "Error installing Gallery Core" +msgstr "安装 图库核心时发生错误" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "当我们试着昇级核心模块时发生了问题。要如何处理?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"前往安装程式的系统检查步骤并确认所有的检查都显示「成功」。最常见的现象是忽略了整合性警告。" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"如果在系统检查步骤中没有任何警告或失败的讯息,清除你的储存目录并删除数据库表格然後再安装一次" +"(重覆所有步骤)。" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "请前往 %sG2 常见问题解答%s并参考%s读我文件中已知问题的部分%s。" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"如果问题仍然存在,请拷贝在 %s 中的安装记录,在 %sG2 支援论譠%s中发表一个新话题,把它附在话题" +"中(如 install.log.zip),或者可以的话,留下指到 install.log 的真接链接。这样支援人员在需要的" +"时可以用来分析问题所在。" + +msgid "Stack Trace:" +msgstr "堆叠记录:" + +#, fuzzy +msgid "Installed Gallery Core successfully." +msgstr "图库核心模块安装成功。" + +#, fuzzy +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"我们已经成功地安装了 图库的核心。虽然现在所有功能都会正常动作,你还是应该继续安装程式并加入其" +"他选用的模块。这样你才能得到你想要的 图库功能。" + +#, fuzzy +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"下列的模块可自动为你安装并设置。你需要安装至少一个图形工具,否则 图库无法从你的图片产生缩略" +"图。在大部分的系统上,自动安装就可以正常工作。不过,有时它还是会失败。你可以在这个网站管理页" +"面中启用新的模块或停用你在这里选用的模块。所以你在这里做的任何决定都不是不能改变的。" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"有些模块可能会无法自动安装。没有关系。这通常表示他们需要一些额外的设置。你可以在网站管理页面" +"中做这些设置。" + +msgid "Name" +msgstr "名称" + +msgid "Version" +msgstr "版本" + +msgid "Description" +msgstr "详细描述" + +#, fuzzy +msgid "(Incompatible with this Gallery version)" +msgstr "(和这个版本的 图库不兼容)" + +msgid "(un)check all" +msgstr "全部勾选或全部不选" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "不启用、继续到步骤 %d»" + +msgid "Activate Selected Modules" +msgstr "启用所选模块" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "「%s」模块已经安装,可是需要进一步设置才能启用。" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "在完成这个安装後,请以管理员身分登入并前往网站管理。到「模块」显示画面并设置上列模块。" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "%s模块启用成功" + +msgid "Activate More Modules" +msgstr "启用其他 图库模块" + +#, c-format +msgid "Continue to Step %d»" +msgstr "继续到步骤 %d»" + +msgid "Debug Output" +msgstr "除错输出" + +#, fuzzy +msgid "Welcome to the Gallery Installer" +msgstr "欢迎使用 图库安装程式" + +#, c-format +msgid "Install %d%% complete" +msgstr "安装完成 %d%%" + +msgid "Redo this step" +msgstr "重覆这个步骤" + +msgid "Gallery: your photos on your website" +msgstr "Gallery:你的照片你的网站" + +#, c-format +msgid "Missing files (%d)" +msgstr "缺少的文件(%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"注意:你正在执行由 CVS 中下载的 Gallery,所以有些最近移除的文件可能会出现在这里。可能可以安全" +"的忽略它们。" + +#, c-format +msgid "Modified files (%d)" +msgstr "修改过的文件(%d)" + +#, fuzzy +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"注意:你正在执行由 CVS 中下载的 Gallery,所以会有些修改过的文件。你大概可以忽略这些文件,可是" +"为了安全起见,你最好先执行「cvs update -Pd」指令再继续。" + +#, c-format +msgid "Old files (%d)" +msgstr "旧版的文件(%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "图库已经不再使用这些文件。它们大概不会造成任何问题可是最好还是把它们删除。" + +msgid "Errors occurred. Please see messages below." +msgstr "发生错误。请见下列讯息。" + +msgid "Please select the installation type" +msgstr "请选择安装类型" + +msgid "Standard installation" +msgstr "标准安装" + +#, fuzzy, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"这是预设的安装类型。如果你要在 %s 目录中安装一个全新的 Gallery,并可用 %s 网址存取的话,请选" +"这个安装类型。" + +msgid "Multisite installation" +msgstr "多站台安装" + +#, fuzzy +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"图库可以用一份单独的安装来支援多个独立的网站。如果你要在同一个网页服务器上的不同路径、子网域" +"或网址上安装一个全新的 图库的话,请选这个安装类型。" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"多站台并不共用相簿、照片、用户、或其他任何项目。它们都需要自己的数据库和自己的储存目录。前参" +"阅 %s 页面中有关多站台安装的资讯和解释。" + +msgid "You must enter a directory" +msgstr "你必需输入一个目录" + +#, fuzzy +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"你所输入的目录是程式所在的目录。如果你要把一个 图库安装到程式目录中,请选择标准安装类型。如果" +"你要安装多站台,请选一个不同的目录。" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" + +msgid "The directory you entered does not exist" +msgstr "你输入的目录不存在" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "无法存取你所输入的目录。请改变它的存取权限让网页服务器可以读取这个目录。" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "无法产生多站台文件。请确定下列文件可以写入。" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "所有的站台都是从这个中央程式库(基础程式)安装出来。" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "在下面输入新的站台的目录。这个路径不能和基础程式安装的路径相同。" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "目录必需可以让你的网页服务器或 PHP 用户写入或含有下列可写入的文件:" + +msgid "Select Directory" +msgstr "选择目录" + +msgid "Multisite directory setup successfully." +msgstr "多站台目录设置成功" + +msgid "Standard installation selected." +msgstr "选择标准安装。" + +msgid "Install Steps" +msgstr "安装步骤" + +#, fuzzy, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"我们要确定你的 图库是安全的。这个安装程式修改过的 config.php 文件的权限允许其他用户写入。这是" +"必要的,因为对 Unix 权限来说,这个安装程式也算「其他用户」。所以在结束之前,你需要把这个文件" +"的权限改成其他用户无法写入。现在你的 config.php 档的模式为 %s。我们建议你这样做:" + +#, fuzzy +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"我们要确定你的 图库是安全的。含有这个安装程式修改过的 config.php 文件的目录的权限允许其他用户" +"写入或删除文件。所以在结束之前,你需要把这个目录的权限改成其他用户无法写入。我们建议你这样" +"做:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "如果你真的要继续,你还是可以。可是我们建议你多花一点时间来确定你是安全的。" + +msgid "We've verified that your config.php is secure." +msgstr "我们证实你的 config.php 文件是安全的。" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" + +msgid "Check Again" +msgstr "再检查一次" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "" + +msgid "Yes, please omit the security check:" +msgstr "" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "这是一个多站台的安装。请记住每个站台都需要自己的储存目录。" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"如果你正在使用的是最新的浏览程式,我们会试着自动完成你输入的任何路径。所以如果你无法找到指到" +"你的 g2data 目录的正确路径,试着在下面的文字框中打一些可能的路径,看看自动完成会不会找到它。" + +msgid "The directory you entered is read only" +msgstr "你输入的目录是唯读的。" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "在储存目录中产生目录结构时发生错误。" + +#, fuzzy, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "储存目录设置成功。" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "" + +msgid "Directory path:" +msgstr "目录路径:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "注意:这些只是范例!它们可能不适用於你的系统。" + +msgid "Unix (with ftp access)" +msgstr "Unix(使用 FTP)" + +#, fuzzy +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"请注意 FTP 服务器和用户端程式种类变化很多所以这些指令可能不适用於你的情况。如果发生问题,请参" +"考你的FTP 用户端程式手册或询问你的系统管理员。" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"在有些网站主机的环境下,你在指令列或 FTP 下看到的路径和 PHP 看到的是不一样的。要找出指到你的" +"资料目录的真正路径,你可以试着产生一个包含下列程式码,叫做 dir.php 的 PHP 程式档并把它" +"放到你的资料目录。" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"然後找出指到 dir.php 的网址并在你的网页浏览程式中打开它(如 %s)。它会告诉你正确的路径。" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"注意:你的资料目录必需可以透过网页存取,我们不建议这样做因为这等於规避了我们的图像防火" +"墙功能。当你用这个方法找出路径後,我们建议你把资料目录移到网页可以存取的范围之外并更正路径设" +"置。" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "注意:不要忘了在完成後删除 dir.php 文件!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "" + +msgid "Storage directory set successfully." +msgstr "储存目录设置成功。" + +msgid "Success" +msgstr "成功" + +msgid "Warning" +msgstr "警告" + +msgid "Failed" +msgstr "失败" + +#, fuzzy +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "如果你使用 Apache,在 图库主目录中产生一个叫 .htaccess 的文件并加入下列内容:" + +msgid "Version Check" +msgstr "版本检查" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "这不是一个全新安装而且已安装的版本和新的版本不符合。" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "已安装的版本不能昇级到新的版本!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "已安装的版本比新的版本旧。你应该要执行昇级程式而不是安装程式!" + +msgid "Currently installed" +msgstr "目前安装" + +msgid "New version" +msgstr "新版本" + +msgid "Go to the Upgrader!" +msgstr "前往 图库昇级程式!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"你现在应该前往昇级程式。在你的浏览程式中输入在你的%s目录中的 %s/upgrade/index.php%s 的网址。" + +#, fuzzy, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"把 图库2 安装到你的系统中需要 %d 个步骤。这个安装程式指引你走过这些步骤,并在需要额外步骤时提" +"供协助。当一个步骤完成後,你还是可以在任何时候回去并更改设置。在继续之前,请先阅读%s安装程式" +"说明文件%s。" + +msgid "Select Language:" +msgstr "选择语言:" + +msgid "Go" +msgstr "开始" + +msgid "Begin Installation»" +msgstr "开始安装»" + +#, fuzzy +#~ msgid "MSSQL (2005 and newer)" +#~ msgstr "MySQL with Transactions(v3.23.34a 和更新版)" + +#, fuzzy +#~ msgid "Installed Gallery Core successfully" +#~ msgstr "图库核心模块安装成功" + +#, fuzzy +#~ msgid "" +#~ "Congratulations, we've successfully installed the Gallery framework. However, most of " +#~ "the really cool features from Gallery come from additional modules that you can install " +#~ "and configure. The next step will take you through the process of selecting modules to " +#~ "install so that you can tune Gallery to do exactly what you want." +#~ msgstr "" +#~ "恭禧,我们已经成功地安装了 图库的架构。不过绝大部分 图库的功能来自你需要另外安装和设置的模" +#~ "块。下一个步骤会指引会选择要安装的模块,这样你可以把 图库调成你想要的样子。" + +#~ msgid "Install More Modules" +#~ msgstr "安装其他模块" + +#~ msgid "" +#~ "Before we can proceed, you should create a file in your %s directory called " +#~ "config.php. You must make sure that the webserver will be able to write to it. " +#~ "If you're on unix, try doing chmod 666 config.php. On Windows, you shouldn't have " +#~ "to do anything special. When you've created this file and set the permissions properly, " +#~ "you can proceed. If there's a problem, we'll tell you what to fix." +#~ msgstr "" +#~ "在我们继续之前,你必需先在你的 %s 目录中产生一个叫「config.php」的文件。你必需确定" +#~ "网页服务器可以写到这个文件。如果你在使用 Unix,试着使用「chmod 666 config.php」。在 " +#~ "Windows 上,你应该不必特别做什麽。在你产生了这个文件并设置好存取权限之後,就可以继续。如果" +#~ "发生了问题,我们会告诉你该修改什麽。" + +#~ msgid "Install Other Modules" +#~ msgstr "安装其他模块" + +#~ msgid "mkdir %s" +#~ msgstr "mkdir %s" + +#~ msgid "chmod 777 %s" +#~ msgstr "chmod 777 %s" + +#~ msgid "cd %s" +#~ msgstr "cd %s" + +#~ msgid "PostgreSQL v6.x (not well tested)" +#~ msgstr "PostgreSQL v6.x(并未充分测试)" + +#~ msgid "Install 图库Core" +#~ msgstr "安装图库核心" + +#~ msgid "chmod 644 %s" +#~ msgstr "chmod 644 %s" + +#~ msgid "chmod 755 %s" +#~ msgstr "chmod 755 %s" + +#~ msgid "" +#~ "图库needs to store data in a directory on your server. It will use this directory to " +#~ "store your images as well as other important data. For security, we suggest that you " +#~ "place this directory outside of your web site so that it cannot be browsed " +#~ "directly via the web. This is necessary if you wish to have your images accessible only " +#~ "via 图库[%s]. Note that the default path provided below is inside the webserver area. " +#~ "This is because we are unable to reliably guess a directory outside of your web site. You " +#~ "should update it with a secure location, such as a path under your user home directory, " +#~ "if possible. If you access your site via FTP, you might not have this option." +#~ msgstr "" +#~ "图库需要把资料储存在你的服务器上的一个目录中。它会用这个目录来存放你的图片和其他重要的资" +#~ "料。为了安全起见,我们建议你把这个目录放在你的网站之外,这样它就不能直接在网页上浏" +#~ "览。这在如果你希望你的图片只能透过 图库[%s] 存取的状况下是很重要的。请注意下面提供的预设路" +#~ "径是在网页服务器的范围内。这是因为我们无法可靠地推测出一个在你的网站之外的目录。如果可能的" +#~ "话,你应该把它改成一个安全的位置,像是一个在你的用户根目录下的目录。如果你是使用 FTP 存取" +#~ "网站的话,你可能无法这麽做。" + +#~ msgid "" +#~ "Your webserver needs to be able to write to this directory. Permission systems vary from " +#~ "host to host. You can set a very relaxed set of permissions on this directory to get 图库" +#~ "working, but if you're concerned about security you should consult your system " +#~ "adminstrator to figure out how to make this as secure as possible. To get it working, you " +#~ "can follow these examples." +#~ msgstr "" +#~ "你的网页服务器必需能写入这个目录。在各个主机上的权限系统都不相同。你可以给这个目录很松散的" +#~ "存取权限让 图库开始作用,可是如果你关心安全的问题,你应该资询你的系统管理员有关如何可以使" +#~ "你的系统尽可能的安全。要让它开始工作,你可以用下面的例子。" + +#~ msgid "This is sometimes known as an image firewall." +#~ msgstr "这有时也叫一个图像防火墙。" + +#~ msgid "You must have the ODBC module installed" +#~ msgstr "你必需装有 ODBC 模块" + +#~ msgid "Finished" +#~ msgstr "完成" + +#~ msgid "Installation Status" +#~ msgstr "安装状况" + +#~ msgid "SQL test file \"%s\" not found." +#~ msgstr "找不到 SQL 测试文件「%s」。" diff --git a/Source/gallery2/install/po/zh_TW.po b/Source/gallery2/install/po/zh_TW.po new file mode 100644 index 0000000..caa5d26 --- /dev/null +++ b/Source/gallery2/install/po/zh_TW.po @@ -0,0 +1,1250 @@ +# $Id: zh_TW.po 16578 2007-06-10 20:53:13Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Installer 2.2.2\n" +"POT-Creation-Date: 2005-08-05 21:48-0400\n" +"PO-Revision-Date: 2005-08-05 21:48-0400\n" +"Last-Translator: Stephen Chu \n" +"Language-Team: Chinese Traditional \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "Unknown" +msgstr "未知" + +msgid "Admin User Setup" +msgstr "管理員設定" + +msgid "admin" +msgstr "admin" + +msgid "Gallery Administrator" +msgstr "Gallery 系統管理員" + +msgid "Authenticate" +msgstr "認證" + +#, c-format +msgid "" +"Error: could not locate login.txt. Please place it in your %s/ " +"directory." +msgstr "錯誤:找不到 login.txt。請把它放在你的 %s/ 目錄中。" + +msgid "" +"Error: your login.txt file is not readable. Please give Gallery read " +"permissions on the file." +msgstr "錯誤:無法讀取你的 login.txt 檔案。請給 Gallery 讀取這個檔案的權限。" + +msgid "" +"Error: your login.txt key does not match correctly. Please download a new " +"authentication string from below and try again." +msgstr "" +"錯誤:你的 login.txt 解碼字串不符合。請從下面下載一個新的認證字串後再試一次。" + +msgid "Create Config File" +msgstr "產生設定檔案" + +#, c-format +msgid "" +"Unable to write to the config.php configuration file in your %s directory. Please " +"change its permissions. If you're on Unix you can do chmod 666 config.php to fix " +"this." +msgstr "" +"無法寫入在你的 %s 目錄中的 config.php 設定檔案。請改變它的存取權限。如果你是使用 Unix " +"你可以用「chmod 666 config.php」指令來修正。" + +#, c-format +msgid "The config.php file does not exist in your %s directory" +msgstr "你的 %s 目錄中沒有 config.php 檔案。" + +msgid "" +"The config.php file exists but is not writeable. If your server is Windows, you may have to " +"disable file sharing for config.php and set its permissions manually." +msgstr "" +"無法寫入 config.php 檔案。如果你的伺服器是 Windows,你可能需要停止 config.php 的檔案分享然後" +"手動設定它的存取權限。" + +msgid "Database Setup" +msgstr "資料庫設定" + +msgid "You must have the MySQL PHP module installed" +msgstr "你必需裝有 MySQL PHP 模組" + +msgid "You must have the MySQL Improved PHP module installed" +msgstr "你必需裝有 MySQL Improved PHP 模組" + +msgid "You must have the ibm_db2 PHP module installed" +msgstr "你必需裝有 ibm_db2 PHP 模組" + +msgid "You must have the PostgreSQL PHP module installed" +msgstr "你必需裝有 PostgreSQL PHP 模組" + +msgid "You must have the Oracle OCI8 PHP module installed" +msgstr "你必需裝有 Oracle OCI8 PHP 模組" + +msgid "You must have the Component Object Model(COM) PHP module installed" +msgstr "你必需裝有 Component Object Model(COM) PHP 模組" + +#, c-format +msgid "You must specify a column prefix (we recommend %s)" +msgstr "你必需指定一個欄位字首(我們建議 %s)" + +msgid "Use only letters, numbers and underscore in the column prefix" +msgstr "欄位字首只能使用英文字母、數字和底線" + +#, c-format +msgid "You must specify a table prefix (we recommend %s)" +msgstr "你必需指定一個表格字首(我們建議 %s)" + +msgid "Use only letters, numbers and underscore in the table prefix" +msgstr "表格字首只能使用英文字母、數字和底線" + +#, c-format +msgid "Unable to create a database connection of type %s" +msgstr "無法產生%s類型的資料庫連接" + +msgid "Unable to connect to database with the information provided." +msgstr "無法使用所提供的資訊連接資料庫。" + +msgid "The database you specified does not exist. Please create it." +msgstr "仔所指定的資料庫並不存在。請先產生它。" + +msgid "The database privileges test did not complete successfully." +msgstr "資料庫權限測試並沒有成功地完成。" + +msgid "" +"Gallery tables already exist in this database! But there is no 'versions.dat' file in your " +"G2 storage directory which we interpret as a broken state of G2. Either create a versions." +"dat file with the correct format if you think your G2 should still work or select a clean " +"install, which will erase all data in the database and in the storage directory." +msgstr "" +"這個資料庫中已經有 Gallery 的表格!可是你的 G2 儲存目錄中沒有「versions.dat」檔案,所以我們判" +"斷你的 G2 已經損壞。如果你認為你的 G2 應該還能使用,請產生一個有正確格式的 versions.dat 檔" +"案。或選擇重新安裝,但這樣會清除所有資料庫和儲存目錄中的資料。" + +msgid "" +"The G2 storage directory has a versions.dat file of an old install. But the Gallery database " +"tables don't exist. Select a clean install to erase all data in the Gallery storage " +"directory and advance to the next step." +msgstr "" +"這個 G2 儲存目錄中有一個從前一次安裝留下來的 versions.dat 檔案。可是資料庫中沒有Gallery 的表" +"格。選擇重新安裝以清除所有儲存目錄中的資料並前住下一個步驟。" + +msgid "" +"Gallery tables already exist in the database and there is a versions.dat file in the Gallery " +"storage directory. But the version of the installed Gallery database tables does not match " +"the version of the installed data in the Gallery storage directory. Select a clean install " +"to erase all data in the database and in the storage directory and to advance to the next " +"step." +msgstr "" +"這個資料庫中已經有 Gallery 的表格而且 G2 儲存目錄有一個 versions.dat 檔案。可是安裝的 " +"Gallery 資料庫的版本和安裝在 Gallery 儲存目錄中的資料版本不符。選擇重新安裝以清除所有資料庫和" +"儲存目錄中的資料並前住下一個步驟。" + +msgid "" +"Gallery tables already exist in the database and the Gallery storage directory seems to be " +"intact. Either choose to reuse the existing database tables and storage directory data or " +"select a clean install to erase all existing data in the database and the storage directory." +msgstr "" +"資料庫中已經有 Gallery 的表格而且 Gallery 儲存目錄看來是完整的。請選擇繼續使用現有的資料庫表" +"格和儲存目錄資料或重新安裝以清除所有資料庫和儲存目錄中的資料。" + +msgid "" +"Could not execute the required API to erase the storage directory. Please erase the Gallery " +"storage directory manually." +msgstr "無法執行清除儲存目錄所需的 API。請手動刪除 Gallery 儲存目錄。" + +msgid "" +"Could not execute the required API to drop the Gallery database tables. Please clean the " +"Gallery database manually." +msgstr "無法執行移除 Gallery 資料庫表格所需的 API。請手動清理 Gallery 資料庫。" + +msgid "" +"Could not load the G2 API. Please erase the Gallery database tables and the storage " +"directory manually." +msgstr "無法載入 G2 API。請手動刪除 Gallery 資料庫表格和儲存目錄。" + +msgid "MySQL (v3.23.34a and newer)" +msgstr "MySQL(v3.23.34a 以上的版本)" + +msgid "MySQL (versions before v3.23.34a)" +msgstr "MySQL(v3.23.34a 之前的版本)" + +msgid "PostgreSQL v7.x and newer" +msgstr "PostgreSQL v7.x 以上的版本" + +msgid "Oracle (9i and newer)" +msgstr "Oracle(9i 以上的版本" + +msgid "IBM DB2 (v9.x and newer)" +msgstr "IBM DB2(v9.x 以上的版本)" + +msgid "Microsoft SQL Server 2005 and newer" +msgstr "Microsoft SQL Server 2005 以上的版本" + +msgid "Unknown DB type or no known tables information." +msgstr "不明資料庫類型或沒有表格資訊。" + +#, c-format +msgid "Could not find an unused table prefix similar to \"%s\"." +msgstr "找不到類似「%s」的可用表格字首。" + +#, c-format +msgid "Could not open schema file: \"%s\"." +msgstr "無法打開綱要(schema)檔案:「%s」。" + +msgid "" +"Failed to create a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"無法產生 DB 測試序列。檢查傳回的錯誤訊息和 README.html 有關缺少存取權限的資訊並清理資料庫。" + +msgid "" +"Test failed to drop a DB test sequence.Check the returned error message and README.html for " +"missing privileges and clean up the database." +msgstr "" +"測試無法移除一個 DB 測試序列。檢查傳回的錯誤訊息和 README.html 有關缺少存取權限的資訊並清理資" +"料庫。" + +msgid "Missing SQL statements" +msgstr "沒有 SQL 指令" + +msgid "" +"Check the returned error message and README.html for missing privileges and clean up the " +"database." +msgstr "檢查傳回的錯誤訊息和 README.html 有關缺少存取權限的資訊並清理資料庫。" + +msgid "Finish Installation" +msgstr "完成安裝" + +msgid "Install Gallery Core" +msgstr "安裝 Gallery 核心" + +msgid "Installing the core module" +msgstr "安裝核心模組" + +msgid "Unable to initialize our Gallery data" +msgstr "無法初始化我們的 Gallery 資料" + +msgid "Unable to communicate with the database" +msgstr "無法和資料庫通訊" + +msgid "Unable to load the core module" +msgstr "無法載入核心模組" + +msgid "Unable to install the core module" +msgstr "無法安裝核心模組" + +msgid "Unable to activate the core module" +msgstr "無法啟用核心模組" + +msgid "Unable to commit database transaction" +msgstr "無法送出資料庫異動" + +msgid "Core module is only partially installed." +msgstr "核心模組安裝不完全。" + +msgid "Install Plugins" +msgstr "安裝外掛組件" + +msgid "Unable to initialize our Gallery session" +msgstr "無法初始化我們的 Gallery 連線資料" + +#, c-format +msgid "Unable to load the %s module" +msgstr "無法載入%s模組" + +msgid "Installing modules" +msgstr "安裝模組中" + +#, c-format +msgid "Unable to install the %s module" +msgstr "無法安裝%s模組" + +#, c-format +msgid "Unable to activate the %s module" +msgstr "無法啟用%s模組" + +msgid "Unable to get the module list" +msgstr "無法取得模組列表" + +msgid "Other" +msgstr "其他" + +msgid "Installation Type" +msgstr "安裝類型" + +msgid "Check Security" +msgstr "安全檢查" + +msgid "Storage Setup" +msgstr "儲存空間設定" + +msgid "System Checks" +msgstr "系統檢查" + +msgid "Performing system checks" +msgstr "進行系統檢查中" + +msgid "PHP version >= 4.3.0 or >= 5.0.4" +msgstr "PHP 版本大於等於 4.3.0 或大於等於 5.0.4" + +#, c-format +msgid "" +"Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or newer. You have PHP version " +"%s installed. Contact your webserver administrator to request an upgrade, available at the %" +"sPHP website%s." +msgstr "" +"錯誤:Gallery 2 需要 PHP 版本 4.3.0 以上或 5.0.4 以上。你安裝的 PHP 版本是 %s。請要求你的網頁" +"伺服器管理員升級。新的版本在 %sPHP 的網站上%s。" + +msgid "PHP Version" +msgstr "PHP 版本" + +msgid "FILE directive supported" +msgstr "支援 FILE 指令" + +msgid "" +"Error: your PHP __FILE__ directive is not functioning correctly. Please file a support " +"request with your webserver administrator or in the Gallery forums." +msgstr "" +"錯誤:你的 PHP __FILE__ 指令工作不正常。請向你的網頁伺服器管理員或 Gallery 討論區要求技術支" +"援。" + +msgid "FILE Directive" +msgstr "FILE 指令" + +msgid "Safe mode disabled" +msgstr "安全模式已關閉" + +msgid "" +"Error: Your version of PHP is configured with safe mode enabled. You must disable safe mode " +"before Gallery will run." +msgstr "" +"錯誤:你的 PHP 版本設定為使用安全模式(Safe Mode)。你必需關閉安全模式才能繼續執行 Gallery。" + +msgid "Safe Mode" +msgstr "安全模式" + +msgid "Regular expressions" +msgstr "常規表示式(Regular expressions)" + +#, c-format +msgid "" +"Error: Your PHP is configured without support for %sPerl Compatible Regular Expressions%s. " +"You must enable these functions before Gallery will run." +msgstr "" +"錯誤:你的 PHP 設定並不支援 %sPerl Compatible Regular Expressions%s。你必需開啟這些功能才能繼" +"續執行 Gallery。" + +msgid "exec() allowed" +msgstr "允許 exec()" + +msgid "" +"Warning: The exec() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. You won't be able to use modules that require external binaries (e.g. " +"ImageMagick, NetPBM or Ffmpeg). This can only be set server-wide, so you will need to change " +"it in the global php.ini." +msgstr "" +"警告:你的 PHP 中的 exec() 函式被 php.ini 中的 disabled_functions 關閉了。你將無法使用" +"需要外部執行檔的模組(如 ImageMagick、NetPBM 或 Ffmpeg)。這個選項只能在伺服器端改變,所以你" +"需要在全體共用的 php.ini 中改正。" + +msgid "set_time_limit() allowed" +msgstr "允許 set_time_limit()" + +#, c-format +msgid "" +"Warning: The set_time_limit() function is disabled in your PHP by the disabled_functions parameter in php.ini. Gallery can function with this setting, but it will not operate " +"reliably. Any operation that takes longer than %d seconds will fail (and in some cases just " +"return a blank page) possibly leading to data corruption." +msgstr "" +"警告:你的 PHP 中的 set_time_limit() 函式被 php.ini 中的 disabled_functions 關閉了。" +"Gallery 仍然可以在這個設定下執行,可是穩定度會有問題。任何功能執行超過 %d 秒鐘都會失敗(有時" +"會傳回一個空白頁面)並可能導致資料損毀。" + +msgid "Filesystem Operations" +msgstr "檔案系統功能" + +#, c-format +msgid "" +"Error: Essential filesystem operations are disabled in your PHP by the " +"disabled_functions parameter in php.ini. You must allow these functions before " +"Gallery will run. These functions are missing: %s." +msgstr "" +"錯誤:你的 PHP 中的基本檔案系統功能被 php.ini 中的 disabled_functions 參數關閉了。你必" +"需允許這些函式 Gallery 才能執行。被關閉的函式為:%s" + +msgid "Memory limit" +msgstr "記憶空間限制" + +msgid "no limit" +msgstr "沒有限制" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the memory to %sb (memory_limit parameter in " +"php.ini). You should raise this limit to at least %sMB for proper Gallery operation." +msgstr "" +"警告:你的 PHP 設定成只能使用 %sb(在 php.ini 中的 memory_limit 參數)的記憶空間。你應" +"該把這個限制提昇到至少 %sMB,Gallery 才能正常工作。" + +msgid "File uploads allowed" +msgstr "允許上傳檔案" + +msgid "" +"Warning: Your PHP is configured not to allow file uploads (file_uploads parameter in " +"php.ini). You will need to enable this option if you want to upload files to your Gallery " +"with a web browser." +msgstr "" +"警告:你的 PHP 設定成禁止檔案上傳(在 php.ini 中的 file_uploads 參數)的記憶空間。你需" +"要啟動這個選項才能用網頁瀏覽程式上傳檔案到 Gallery。" + +msgid "Maximum upload size" +msgstr "最大上傳大小" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the size of file uploads to %sb " +"(upload_max_filesize parameter in php.ini). You should raise this limit to allow " +"uploading bigger files." +msgstr "" +"警告:你的 PHP 最大上傳檔案設定為 %sb(在 php.ini 中的 upload_max_filesize 參數)。你" +"應該提高這個限制以允許上傳更大的檔案。" + +msgid "Maximum POST size" +msgstr "最大 POST 大小" + +#, c-format +msgid "" +"Warning: Your PHP is configured to limit the post data to a maximum of %sb " +"(post_max_size parameter in php.ini). You should raise this limit to allow uploading " +"bigger files." +msgstr "" +"警告:你的 PHP 設定成最大 POST 資料為 %sb(在 php.ini 中的 post_max_size 參數)。你應" +"該提高這個限制以允許上傳更大的檔案。" + +msgid "Translation support" +msgstr "翻譯支援" + +#, c-format +msgid "" +"Your webserver does not support localization. To enable support for additional languages " +"please instruct your system administrator to reconfigure PHP with the %sgettext%s option " +"enabled." +msgstr "" +"你的網頁伺服器不支援多語文環境。請指示你的系統管理員重新設定 PHP,啟動 %sgettext%s 選項,才能" +"使用其他語文。" + +#, c-format +msgid "" +"Your PHP is missing the function %sbind_textdomain_codeset%s. This means Gallery may display " +"extended characters for some languages incorrectly." +msgstr "" +"你的 PHP 沒有 %sbind_textdomain_codeset%s 函式。這表示 Gallery 可能無法正確顯示某些語文中的字" +"元。" + +#, c-format +msgid "" +"Your PHP is missing the function %sdngettext%s. This means Gallery will be unable to " +"translate plural forms." +msgstr "你的 PHP 沒有 %sdngettext%s 函式。這表示 Gallery 將無法翻譯複數名詞。" + +msgid "Zend compatibility mode" +msgstr "Zend 相容模式" + +#, c-format +msgid "" +"Warning: Your PHP is configured with Zend ze1_compatibility_mode which can cause PHP to " +"crash. Click here to test your PHP. If you see \"SUCCESS\" then your " +"PHP is ok. If you get an error or no response then you must turn off ze1_compatibility_mode " +"before proceeding." +msgstr "" +"警告:你的 PHP 設定使用可能使 PHP 當機的 Zend ze1_compatibility_mode 選項。請按這裡測試 PHP。如果你看到「SUCCESS」表示你的 PHP 正常。如果你得到一個錯誤訊息或完全沒有" +"反應,你需要把 ze1_compatibility_mode關掉才能繼續。" + +msgid "putenv() allowed" +msgstr "允許 putenv()" + +msgid "" +"Warning: The putenv() function is disabled in your PHP by the disabled_functions " +"parameter in php.ini. Gallery can function with this setting, but on some rare systems " +"Gallery will be unable to run in other languages than the system language and English." +msgstr "" +"警告:你的 PHP 中的 putenv() 函式被 php.ini 中的 disabled_functions 參數關閉了。" +"Gallery 仍然可以在這個設定下執行,可是在極少數的系統上 Gallery 將無法在除了系統和英文以外的語" +"文下執行。" + +msgid "Output buffering disabled" +msgstr "輸出緩衝已關閉" + +#, c-format +msgid "" +"Warning: Output buffering is enabled in your PHP by the %s parameter(s) in php.ini. " +"Gallery can function with this setting - downloading files is even faster - but Gallery " +"might be unable to serve large files (e.g. large videos) and run into the memory limit. " +"Also, some features like the progress bars might not work correctly if output buffering is " +"enabled unless ini_set() is allowed." +msgstr "" +"警告:你的 PHP 中的輸出緩衝功能被 php.ini 中的 %s 參數打開了。Gallery 仍然可以在這個設" +"定下執行,下載檔案可能還會變快,可是 Gallery 可能會無法傳送太大的檔案(如影片)而且可能會耗盡" +"記憶空間。此外,除非 ini_set() 可以被使用,打開輸出緩衝會使有些如處理進度等的功能無法正確工" +"作。" + +msgid "Gallery file integrity" +msgstr "Gallery 完整性" + +msgid "Test skipped due to other errors." +msgstr "因其他錯誤略過測試。" + +msgid "Theme available" +msgstr "可用的佈景主題" + +#, c-format +msgid "Error: There must be at least one theme in the %s folder!" +msgstr "錯誤:在 %s 目錄中必需有至少一個佈景主題!" + +msgid "Manifest missing or inaccessible." +msgstr "找不到或無法存取檔案清單" + +msgid "Welcome" +msgstr "歡迎" + +msgid "Please correct the following errors" +msgstr "請修正下列錯誤" + +msgid "" +"Every Gallery will have at least one administrator user who has full access to view/modify " +"everything. Please choose a username and password for your main administrator account. You " +"can add additional users later." +msgstr "" +"每個 Gallery 都必需有至少一個可以查看和修改所有事項的管理用戶。請為你的主要管理員選擇一個用戶" +"名稱和密碼。你可以稍後再增加其他的用戶。" + +msgid "Admin username" +msgstr "管理員用戶名稱" + +msgid "Please enter a valid user name" +msgstr "請輸入一個有效的用戶名稱" + +msgid "Please enter a password" +msgstr "請輸入一個密碼" + +msgid "Password" +msgstr "密碼" + +msgid "Setup password" +msgstr "設定密碼" + +msgid "(type again)" +msgstr "(再輸入一次)" + +msgid "Admin email address" +msgstr "管理員電郵地址" + +msgid "Please enter a valid email address" +msgstr "請輸入一個有效的電郵地址" + +msgid "Admin full name (optional)" +msgstr "管理員全名(選填)" + +msgid "Missing password! Please enter the same password twice" +msgstr "沒有密碼!請輸入同一個密碼兩次" + +msgid "The passwords you entered do not match! Please try again." +msgstr "你輸入的密碼不相同!請再試一次。" + +msgid "" +"As you are reusing existing database tables, this is not a fresh install. This will only " +"change the setup password, but not change the password of the site admin. To change the " +"password of the site admin, choose the forgot password mechanism of Gallery." +msgstr "" +"你正在使用現有的資料庫表格,這不是一個全新安裝。這只會改變設定程式的密碼而不是網站管理員的密" +"碼。要改變網站管理員的密碼,請選用 Gallery 中遺失密碼的功能。" + +msgid "Create" +msgstr "產生" + +msgid "Save" +msgstr "儲存" + +msgid "Admin user info entered successfully." +msgstr "管理員用戶資料輸入成功。" + +#, c-format +msgid "" +"In order to proceed with the install, we have to verify that you are who you claim. The " +"best way to be sure is to ask you to make a tiny change in the Gallery directory which will " +"prove that you have the right permissions. So, we're going to ask that you create a new " +"text file called login.txt in the %s directory on your webserver " +"(that's the same directory where main.php is located). It must contain the following " +"randomly generated characters:" +msgstr "" +"在繼續安裝之前,我們必需確定你確實是你宣稱的身份。最好的方法是要求你在 Gallery 目錄中作一個小" +"小的改變,這可以用來證明你有正確的權限。所以,我們要求你在你的網頁伺服器的 %s 目錄中" +"產生一個叫 login.txt 的檔案。(那個目錄是 main.php 所在的同一個目錄)這個檔" +"案的內容必需是下面隨機產生的文字:" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your %s directory and you're all set." +msgstr "" +"為了你的方便,我們預先準備好了一份%s正確版本的 login.txt%s。下載這個檔案然後把它拷貝到你的 " +"%s 目錄中就可以了。" + +msgid "Once you've uploaded the file, click below to continue." +msgstr "在你上傳這個檔案後,按下面繼續。" + +msgid "Authenticate Me" +msgstr "確認我的身分" + +msgid "Authentication successful!" +msgstr "認證成功" + +msgid "Erase data for a clean install" +msgstr "清除資料以重新安裝" + +msgid "" +"Are you really sure you want to delete all your data in your Gallery storage directory and " +"all your data in your Gallery database?" +msgstr "你確定要刪除所有在你的 Gallery 儲存目錄 和 Gallery 資料庫中的資料?" + +msgid "There was an error erasing the db and storage directory data. Here's the error:" +msgstr "清除資料庫和儲存空間時發生錯誤。錯誤如下:" + +msgid "Cancel" +msgstr "取消" + +msgid "Erase all data" +msgstr "清除所有資料" + +msgid "Please fix this error and try again." +msgstr "請修正這個錯誤後再試一次。" + +msgid "Try Again" +msgstr "再試一次" + +msgid "Create a config file" +msgstr "產生一個設定檔" + +#, c-format +msgid "" +"Now we need to write out all the information you provided into a file called config.php in your %s directory. This is a very important file that gives Gallery all the " +"information that it needs to operate. After we create it, you can read through this file " +"and make changes to it if you want." +msgstr "" +"現在我們需要把你提供的資料寫到一個在 %s 中叫 config.php 的檔案。這個檔案非常重" +"要。它提供 Gallery 所有運作需要的資訊。在我們產生這個檔案後,你可以閱讀這個檔案並自己修改。" + +#, c-format +msgid "" +"Before we can proceed, you should create a file in your %s directory called config." +"php. You must make sure that the webserver will be able to write to it." +msgstr "" +"在我們繼續之前,你必需先在你的 %s 目錄中產生一個叫「config.php」的檔案。你必需確定網頁" +"伺服器可以寫到這個檔案。" + +msgid "Unix (with shell access)" +msgstr "Unix(指今列)" + +msgid "On Windows, you shouldn't have to do anything special." +msgstr "在 Windows 上,你不需要做任何特別的動作。" + +msgid "" +"When you've created this file and set the permissions properly, you can proceed. If there's " +"a problem, we'll tell you what to fix." +msgstr "" +"在你產生了這個檔案並設定好存取權限之後,就可以繼續。如果發生了問題,我們會告訴你該修改什麼。" + +msgid "Create config file" +msgstr "產生設定檔" + +msgid "Config file created successfully." +msgstr "設定檔產生成功" + +msgid "" +"We've written out all the information you provided into a file called config.php in " +"your gallery2 directory. You can read through this file and make changes to it if you " +"want. Be careful, though -- if you make mistakes in that file then Gallery won't work " +"properly!" +msgstr "" +"我們已經把你提供的所有資訊寫到在你的 Gallery 2 目錄中一個叫 config.php 的檔案中。你可" +"以閱讀這個檔案並自己修改。不過請小心,如果你改錯了這個檔案,Gallery 會無法正常動作。" + +msgid "" +"Please select your database type and enter your database authentication information. The " +"installer will not create the database for you, so you must create one yourself and enter " +"the database name here. If you are installing Gallery into a database that already has " +"tables in it, the table and column prefixes will keep Gallery data from conflicting with " +"what you already have." +msgstr "" +"請選擇你的資料庫類型並輸入你的資料庫認證資料。安裝程式並不會為你產生資料庫,所以你必需自己產" +"生一個並在這裡輸入它的名稱。如果你要把 Gallery 安裝到一個已經有表格的現有資料庫中,表格和欄位" +"的字首會避免和你現有的資料衝突。" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own database " +"tables. Either choose a different database or a different table prefix for each multisite!" +msgstr "" +"這是個多站台的安裝。請記住每個站都需要它自己的資料庫表格。你可以為個別站台選用不同的資料庫或" +"不同的表格字首。" + +msgid "Database type:" +msgstr "資料庫型式:" + +msgid "DB Hostname:" +msgstr "資料庫主機名稱:" + +msgid "DB Username:" +msgstr "資料庫用戶名稱:" + +msgid "DB Password:" +msgstr "資料庫密碼:" + +msgid "DB Name:" +msgstr "資料庫名稱" + +msgid "Table Prefix:" +msgstr "表格字首:" + +msgid "Column Prefix:" +msgstr "欄位字首:" + +msgid "We received the following database related errors:" +msgstr "我們收到下列資料庫相關的錯誤:" + +msgid "Erase Data For A Clean Install" +msgstr "清除資料以重新安裝" + +msgid "Reuse Existing Tables" +msgstr "使用現有表格" + +msgid "Database set up successfully." +msgstr "資料庫設定成功" + +msgid "Finished!" +msgstr "完成了!" + +msgid "" +"Congratulations! Your Gallery 2 install is complete! See... that wasn't so hard, was it? Now " +"it's time to upload some photos!" +msgstr "恭禧!你的 Gallery 2 安裝已經完成!看吧,沒有多難嘛,對不對?現在該放一些照片進去了!" + +msgid "Go to my Gallery!" +msgstr "前往我的 Gallery!" + +#, c-format +msgid "" +"You may now go to your new Gallery. Enter the URL in your browser for %smain.php%s in your %" +"s directory." +msgstr "" +"你現在可以前往你的新 Gallery。在你的瀏覽程式中輸入在你的%s目錄中的 %smain.php%s 的網址。" + +msgid "Installer Help" +msgstr "安裝說明" + +msgid "Start Over" +msgstr "重新開始" + +msgid "Error installing Gallery Core" +msgstr "安裝 Gallery 核心時發生錯誤" + +msgid "Something went wrong when we tried to install the core module. What to do next?" +msgstr "當我們試著升級核心模組時發生了問題。要如何處理?" + +msgid "" +"Go to the System Checks step of the installer and make sure all checks shows 'Success'. A " +"common issue is that the file integrity warning is ignored." +msgstr "" +"前往安裝程式的系統檢查步驟並確認所有的檢查都顯示「成功」。最常見的現象是忽略了整合性警告。" + +msgid "" +"If there are no warnings or failures in the System Checks step, empty your storage directory " +"and delete the database tables and start the installation process a second time (redo all " +"steps)." +msgstr "" +"如果在系統檢查步驟中沒有任何警告或失敗的訊息,清除你的儲存目錄並刪除資料庫表格然後再安裝一次" +"(重覆所有步驟)。" + +#, c-format +msgid "Please visit the %sG2 FAQ%s and read the %sKnown issues section of the Readme%s." +msgstr "請前往 %sG2 常見問題解答%s並參考%s讀我檔案中已知問題的部分%s。" + +#, c-format +msgid "" +"If the problem persists, please copy the installation log which is located at %s and attach " +"it (as install.log.zip) to a new forum topic in the %sG2 support forum%s or, if possible, " +"just add a link to the install.log in the forum topic such that the support staff can " +"analyze it if necessary." +msgstr "" +"如果問題仍然存在,請拷貝在 %s 中的安裝記錄,在 %sG2 支援論譠%s中發表一個新話題,把它附在話題" +"中(如 install.log.zip),或者可以的話,留下指到 install.log 的真接鏈接。這樣支援人員在需要的" +"時可以用來分析問題所在。" + +msgid "Stack Trace:" +msgstr "堆疊記錄:" + +msgid "Installed Gallery Core successfully." +msgstr "Gallery 核心模組安裝成功。" + +msgid "" +"We've successfully installed the core of Gallery. Although everything will work at this " +"point, you should continue with the installer and add in some of the optional modules so " +"that you can get the right set of features that you want for your Gallery installation." +msgstr "" +"我們已經成功地安裝了 Gallery 的核心。雖然現在所有功能都會正常動作,你還是應該繼續安裝程式並加" +"入其他選用的模組。這樣你才能得到你想要的 Gallery 功能。" + +msgid "" +"The following modules can be automatically installed and activated for you. You should " +"install at least one of the graphics toolkits otherwise Gallery can't make thumbnails out of " +"your images. On most systems, the automatic install will work properly for you. However, " +"in some cases it may fail. You can always activate new modules or deactivate any of the " +"ones you choose here on the Site Administration page, so any decision you make here is not " +"permanent." +msgstr "" +"下列的模組可自動為你安裝並設定。你需要安裝至少一個圖形工具,否則 Gallery 無法從你的圖片產生縮" +"略圖。在大部分的系統上,自動安裝就可以正常工作。不過,有時它還是會失敗。你可以在這個網站管理" +"頁面中啟用新的模組或停用你在這裡選用的模組。所以你在這裡做的任何決定都不是不能改變的。" + +msgid "" +"Some modules may fail to install automatically. That's ok. It typically means that they " +"require some configuration, which you can do on the Site Adminstration page" +msgstr "" +"有些模組可能會無法自動安裝。沒有關係。這通常表示他們需要一些額外的設定。你可以在網站管理頁面" +"中做這些設定。" + +msgid "Name" +msgstr "名稱" + +msgid "Version" +msgstr "版本" + +msgid "Description" +msgstr "詳細描述" + +msgid "(Incompatible with this Gallery version)" +msgstr "(和這個版本的 Gallery 不相容)" + +msgid "(un)check all" +msgstr "全部勾選或全部不選" + +#, c-format +msgid "Continue to Step %d Without Activating»" +msgstr "不啟用、繼續到步驟 %d»" + +msgid "Activate Selected Modules" +msgstr "啟用所選模組" + +#, c-format +msgid "The %s module was installed, but needs configuration to be activated" +msgstr "「%s」模組已經安裝,可是需要進一步設定才能啟用。" + +msgid "" +"After finishing this installation, login as Admin and browse to Site Admin. Go to the " +"Modules view and configure the above listed modules." +msgstr "在完成這個安裝後,請以管理員身分登入並前往網站管理。到「模組」顯示畫面並設定上列模組。" + +#, c-format +msgid "Activated the %s module successfully" +msgstr "%s模組啟用成功" + +msgid "Activate More Modules" +msgstr "啟用其他 Gallery 模組" + +#, c-format +msgid "Continue to Step %d»" +msgstr "繼續到步驟 %d»" + +msgid "Debug Output" +msgstr "除錯輸出" + +msgid "Welcome to the Gallery Installer" +msgstr "歡迎使用 Gallery 安裝程式" + +#, c-format +msgid "Install %d%% complete" +msgstr "安裝完成 %d%%" + +msgid "Redo this step" +msgstr "重覆這個步驟" + +msgid "Gallery: your photos on your website" +msgstr "Gallery:你的照片你的網站" + +#, c-format +msgid "Missing files (%d)" +msgstr "缺少的檔案(%d)" + +msgid "" +"Note: You're running Gallery from SVN, so recently removed files may appear here. It might " +"be safe to ignore these." +msgstr "" +"注意:你正在執行由 SVN 中下載的 Gallery,所以有些最近移除的檔案可能會出現在這裡。可能可以安全" +"的忽略它們。" + +#, c-format +msgid "Modified files (%d)" +msgstr "修改過的檔案(%d)" + +msgid "" +"Note: You're running Gallery from SVN, so some modified files are to be expected. You can " +"probably ignore these, but to be safe you should make sure that you do 'svn update' before " +"continuing." +msgstr "" +"注意:你正在執行由 SVN 中下載的 Gallery,所以會有些修改過的檔案。你大概可以忽略這些檔案,可是" +"為了安全起見,你最好先執行「svn update」指令再繼續。" + +#, c-format +msgid "Old files (%d)" +msgstr "舊版的檔案(%d)" + +msgid "" +"These files are no longer part of Gallery. They probably won't cause any problems but it is " +"a good idea to remove them to keep your install clean." +msgstr "Gallery 已經不再使用這些檔案。它們大概不會造成任何問題可是最好還是把它們刪除。" + +msgid "Errors occurred. Please see messages below." +msgstr "發生錯誤。請見下列訊息。" + +msgid "Please select the installation type" +msgstr "請選擇安裝類型" + +msgid "Standard installation" +msgstr "標準安裝" + +#, c-format +msgid "" +"This is the default installation type. Choose this installation type if you want to install " +"a new Gallery in the directory %s which will be accessible with the URL %s." +msgstr "" +"這是預設的安裝類型。如果你要在 %s 目錄中安裝一個全新的 Gallery,並可用 %s 網址存取的話,請選" +"這個安裝類型。" + +msgid "Multisite installation" +msgstr "多站台安裝" + +msgid "" +"Gallery can support multiple independent sites with a single installation of the code. " +"Choose this installation type if you want to install a new Gallery on the same webserver but " +"in a different path, subdomain or URL domain." +msgstr "" +"Gallery 可以用一份單獨的安裝來支援多個獨立的網站。如果你要在同一個網頁伺服器上的不同路徑、子" +"網域或網址上安裝一個全新的 Gallery 的話,請選這個安裝類型。" + +#, c-format +msgid "" +"The multisites don't share albums, photos, users, or anything else. They all need their own " +"database and their own storage directory. For more information and explanations about " +"Multisite installations, visit the %s page." +msgstr "" +"多站台並不共用相簿、照片、用戶、或其他任何項目。它們都需要自己的資料庫和自己的儲存目錄。前參" +"閱 %s 頁面中有關多站台安裝的資訊和解釋。" + +msgid "You must enter a directory" +msgstr "你必需輸入一個目錄" + +msgid "" +"The directory you entered is the codebase directory. If you want to install a Gallery in the " +"codebase directory, select the standard installation type. If you want to install a " +"multisite, choose another directory." +msgstr "" +"你所輸入的目錄是程式所在的目錄。如果你要把一個 Gallery 安裝到程式目錄中,請選擇標準安裝類型。" +"如果你要安裝多站台,請選一個不同的目錄。" + +msgid "" +"The directory you entered either does not exist, or is prohibited by your webserver " +"configuration. Your webserver is configured to only allow access to the following " +"directories. You must choose a directory under one of these, or you must modify the " +"open_basedir setting in your PHP configuration to allow a new directory." +msgstr "" +"你輸入的目錄不存在,或你的網頁伺服器組態不允許使用。你的網頁伺服器設定只允許使用下列的目錄。" +"你必需選用一個在這些目錄下的目錄,或者更改你的 PHP 設定中的 open_basedir 以允許使用新" +"的目錄。" + +msgid "" +"If your multisite install is in a different virtual host, you should contact your system " +"administrator and request that they configure your open_basedir setting so that your " +"virtual hosts can access each other." +msgstr "" +"如果你的多站台安裝是在一個不同的虛擬主機上,你必需連絡你的系統管理員並要求他們設定你的 " +"open_basedir 來讓你的虛擬主機可以互相存取彼此的檔案。" + +msgid "The directory you entered does not exist" +msgstr "你輸入的目錄不存在" + +msgid "" +"The directory you entered is not accessible. Change the permissions so that the webserver " +"can read this directory." +msgstr "無法存取你所輸入的目錄。請改變它的存取權限讓網頁伺服器可以讀取這個目錄。" + +msgid "Unable to create multisite files. Ensure the files listed below are writeable." +msgstr "無法產生多站台檔案。請確定下列檔案可以寫入。" + +msgid "All multisites are installed from this central code repository (codebase)." +msgstr "所有的站台都是從這個中央程式庫(基礎程式)安裝出來。" + +msgid "" +"Enter the directory for the new multisite below. The path must be different from this " +"codebase installation's path:" +msgstr "在下面輸入新的站台的目錄。這個路徑不能和基礎程式安裝的路徑相同。" + +msgid "" +"The directory must be writeable by your webserver/php user or contain the following " +"writeable files:" +msgstr "目錄必需可以讓你的網頁伺服器或 PHP 用戶寫入或含有下列可寫入的檔案:" + +msgid "Select Directory" +msgstr "選擇目錄" + +msgid "Multisite directory setup successfully." +msgstr "多站台目錄設定成功" + +msgid "Standard installation selected." +msgstr "選擇標準安裝。" + +msgid "Install Steps" +msgstr "安裝步驟" + +#, c-format +msgid "" +"We want to make sure that your Gallery is secure. The config.php file that this installer " +"has edited has permissions that allow other people to write to it. This is required because " +"the installer qualifies as an \"other person\" when it comes to Unix file permissions. So " +"before you finish, you should change the permissions on this file such that other users " +"can't write to it. Right now your config.php has modes of %s. We suggest that you do this:" +msgstr "" +"我們要確定你的 Gallery 是安全的。這個安裝程式修改過的 config.php 檔案的權限允許其他用戶寫入。" +"這是必要的,因為對 Unix 權限來說,這個安裝程式也算「其他用戶」。所以在結束之前,你需要把這個" +"檔案的權限改成其他用戶無法寫入。現在你的 config.php 檔的模式為 %s。我們建議你這樣做:" + +msgid "" +"We want to make sure that your Gallery is secure. The directory containing your config.php " +"file that this installer has edited has permissions that allow other people to write or " +"delete files. So before you finish, you should change the permissions on this directory " +"such that other users can't write to it. We suggest that you do this:" +msgstr "" +"我們要確定你的 Gallery 是安全的。含有這個安裝程式修改過的 config.php 檔案的目錄的權限允許其他" +"用戶寫入或刪除檔案。所以在結束之前,你需要把這個目錄的權限改成其他用戶無法寫入。我們建議你這" +"樣做:" + +msgid "" +"If you really want to continue, you can. But we recommend that you take an extra moment to " +"make sure that you're safe." +msgstr "如果你真的要繼續,你還是可以。可是我們建議你多花一點時間來確定你是安全的。" + +msgid "We've verified that your config.php is secure." +msgstr "我們證實你的 config.php 檔案是安全的。" + +#, c-format +msgid "" +"Please read the %1$sGallery Security Guide%3$s. For a brief overview, take a look at the %2" +"$sshort check list%3$s within the security guide." +msgstr "" +"請詳閱 %1$sGallery 安全指南%3$s。在安全指南中的%2$s簡短清單%3$s可以給你一個簡要的說明。" + +msgid "Check Again" +msgstr "再檢查一次" + +#, c-format +msgid "" +"Gallery needs a directory to store your images. The directory we chose for you will work, " +"but its location or current name does not provide maximum security. Either select a new " +"directory outside of the %sdocument root%s directory or add a random string to the end of " +"the directory name (e.g. %s)." +msgstr "" +"Gallery 需要一個目錄來儲存你的圖像。我們為選的目錄是可以使用的,但是它的位置或名稱不符合最高" +"的安全要求。請選擇一個在%s網頁文件根目錄%s之外的目錄,或在目錄名稱加上一個隨機字串(如 %s)。" + +#, c-format +msgid "" +"For maximum security you should pick a directory that is not %sweb accessible%s. If this is " +"not possible, specify a randomized name for this directory." +msgstr "" +"為了安全起見,你應該選一個不能%s從網頁直接存取%s的目錄。如果這個方法不可行,請為這個目錄選一" +"個選機名稱。" + +msgid "" +"If you choose a randomized name or prefer to stick with the specified directory, please " +"confirm your choice." +msgstr "如果你選用隨機名稱或一定要用選指定的目錄,請確認你的選擇。" + +msgid "Yes, please omit the security check:" +msgstr "是的,請略過安全檢查:" + +msgid "" +"This is a multisite installation. Remember that each multisite requires its own storage " +"directory." +msgstr "這是一個多站台的安裝。請記住每個站台都需要自己的儲存目錄。" + +msgid "" +"If you're using a modern browser, we'll try to autocomplete any path you enter here. So if " +"you're having trouble finding the right path to your g2data directory, try experimenting " +"with paths in the text box below and see what completions it provides for you." +msgstr "" +"如果你正在使用的是最新的瀏覽程式,我們會試著自動完成你輸入的任何路徑。所以如果你無法找到指到" +"你的 g2data 目錄的正確路徑,試著在下面的文字框中打一些可能的路徑,看看自動完成會不會找到它。" + +msgid "The directory you entered is read only" +msgstr "你輸入的目錄是唯讀的。" + +msgid "There was an error creating the directory structure within the storage directory." +msgstr "在儲存目錄中產生目錄結構時發生錯誤。" + +#, c-format +msgid "Your storage directory is %sweb accessible%s." +msgstr "你的儲存目錄%s可被網頁直接存取%s。" + +#, c-format +msgid "Unable to verify that the storage directory is not %sweb accessible%s." +msgstr "無法驗證儲存目錄是否%s可被網頁直接存取%s。" + +msgid "Directory path:" +msgstr "目錄路徑:" + +msgid "" +"Your webserver needs to be able to write to this directory. To get it working, you can " +"follow these examples." +msgstr "你的網頁伺服器必需能寫入這個目錄。要讓它可以使用,請遵循下面的例子。" + +msgid "" +"Note: these are only examples! You may find that they don't work quite right on your system." +msgstr "注意:這些只是範例!它們可能不適用於你的系統。" + +msgid "Unix (with ftp access)" +msgstr "Unix(使用 FTP)" + +msgid "" +"Note that ftp servers and clients vary so these instructions may not work for you. Consult " +"the manual for your FTP client or talk to a system administrator for help with this if you " +"have problems." +msgstr "" +"請注意 FTP 伺服器和用戶端程式種類變化很多所以這些指令可能不適用於你的情況。如果發生問題,請參" +"考你的 FTP 用戶端程式手冊或詢問你的系統管理員。" + +msgid "" +"In some web hosting environments, the paths that you see in the shell or via FTP are not the " +"same paths that PHP sees. In order to find out the real path to your data directory, you " +"can try creating a PHP script called dir.php containing the following code in it and " +"put it into your data directory." +msgstr "" +"在有些網站主機的環境下,你在指令列或 FTP 下看到的路徑和 PHP 看到的是不一樣的。要找出指到你的" +"資料目錄的真正路徑,你可以試著產生一個包含下列程式碼,叫做 dir.php 的 PHP 程式檔並把它" +"放到你的資料目錄。" + +#, c-format +msgid "" +"then figure out the URL to dir.php and open it in your web browser (eg, %s). This will tell " +"you the exact path to enter here." +msgstr "" +"然後找出指到 dir.php 的網址並在你的網頁瀏覽程式中打開它(如 %s)。它會告訴你正確的路徑。" + +msgid "" +"Note: This requires that your data directory is web accessible, which we don't " +"recommend because it circumvents our image firewall. Once you figure out the path this way, " +"we recommend that you move your data directory outside of your web accessible area and then " +"update the path here accordingly." +msgstr "" +"注意:你的資料目錄必需可以透過網頁存取,我們不建議這樣做因為這等於規避了我們的圖像防火" +"牆功能。當你用這個方法找出路徑後,我們建議你把資料目錄移到網頁可以存取的範圍之外並更正路徑設" +"定。" + +msgid "Note: Don't forget to delete dir.php when you're done!" +msgstr "注意:不要忘了在完成後刪除 dir.php 檔案!" + +#, c-format +msgid "" +"For information on how to secure your Gallery storage directory, please read the %sSecurity " +"Guide%s." +msgstr "關於保護你的 Gallery 儲存目錄的資訊,請詳閱 %sGallery 安全指南%s。" + +msgid "Storage directory set successfully." +msgstr "儲存目錄設定成功。" + +msgid "Success" +msgstr "成功" + +msgid "Warning" +msgstr "警告" + +msgid "Failed" +msgstr "失敗" + +msgid "" +"If you are using Apache, create a file named .htaccess in the main Gallery directory with " +"the following content:" +msgstr "如果你使用 Apache,在 Gallery 主目錄中產生一個叫 .htaccess 的檔案並加入下列內容:" + +msgid "Version Check" +msgstr "版本檢查" + +msgid "This is not a fresh install and the installed version does not match the new version." +msgstr "這不是一個全新安裝而且已安裝的版本和新的版本不符合。" + +msgid "The installed version cannot be upgraded to the new version!" +msgstr "已安裝的版本不能升級到新的版本!" + +msgid "" +"The installed version is older than the new version. You should run the upgrader and not the " +"installer!" +msgstr "已安裝的版本比新的版本舊。你應該要執行升級程式而不是安裝程式!" + +msgid "Currently installed" +msgstr "目前安裝" + +msgid "New version" +msgstr "新版本" + +msgid "Go to the Upgrader!" +msgstr "前往 Gallery 升級程式!" + +#, c-format +msgid "" +"You should go now to the upgrader. Enter the URL in your browser for %s/upgrade/index.php%s " +"in your %s directory." +msgstr "" +"你現在應該前往升級程式。在你的瀏覽程式中輸入在你的%s目錄中的 %s/upgrade/index.php%s 的網址。" + +#, c-format +msgid "" +"Getting Gallery 2 installed on your webserver requires %d steps. This installer will guide " +"you through these steps and provide assistance along the way if additional steps are " +"required to get your Gallery up and running. Once a step has been completed, you can go back " +"and make changes at any time. Please read the %sInstaller Help File%s before proceeding." +msgstr "" +"把 Gallery 2 安裝到你的系統中需要 %d 個步驟。這個安裝程式指引你走過這些步驟,並在需要額外步驟" +"時提供協助。當一個步驟完成後,你還是可以在任何時候回去並更改設定。在繼續之前,請先閱讀%s安裝" +"程式說明檔案%s。" + +msgid "Select Language:" +msgstr "選擇語言:" + +msgid "Go" +msgstr "開始" + +msgid "Begin Installation»" +msgstr "開始安裝»" diff --git a/Source/gallery2/install/steps/AdminUserSetupStep.class b/Source/gallery2/install/steps/AdminUserSetupStep.class new file mode 100644 index 0000000..25b0f2d --- /dev/null +++ b/Source/gallery2/install/steps/AdminUserSetupStep.class @@ -0,0 +1,122 @@ +_hasBeenLoadedBefore)) { + $this->_hasBeenLoadedBefore = 1; + $this->_password = $galleryStub->getConfig('setup.password'); + $this->_adminName = _('admin'); + $this->_email = ''; + $this->_fullName = _('Gallery Administrator'); + } + + $templateData['passwordA'] = $templateData['passwordB'] = + strlen($this->_password) ? '******' : ''; + $templateData['adminName'] = $this->_adminName; + $templateData['email'] = $this->_email; + $templateData['fullName'] = $this->_fullName; + + $templateData['freshInstall'] = $galleryStub->getConfig('freshInstall'); + + if (isset($_POST['action']) && $_POST['action'] == 'create') { + $passwordOk = false; + $isStars = preg_match('/^\*+$/', trim($_POST['passwordA'])); + if (empty($_POST['passwordA']) || ($isStars && empty($this->_password))) { + $templateData['error']['passwordA_missing'] = 1; + $templateData['passwordA'] = $templateData['passwordB'] = ''; + } else if (empty($_POST['passwordB'])) { + $templateData['error']['passwordB_missing'] = 1; + $templateData['passwordA'] = $templateData['passwordB'] = ''; + } else if ($_POST['passwordA'] != $_POST['passwordB']) { + $templateData['error']['password_mismatch'] = 1; + $templateData['passwordA'] = $templateData['passwordB'] = ''; + } else { + if (!$isStars) { + $this->_password = $this->sanitize($_POST['passwordA']); + } + $templateData['passwordA'] = $templateData['passwordB'] = '******'; + $passwordOk = true; + } + + if ($templateData['freshInstall']) { + /* It's a fresh install, show the admin data fields and check their value */ + $this->_adminName = $templateData['adminName'] = + $this->sanitize($_POST['adminName']); + $this->_email = $templateData['email'] = $this->sanitize($_POST['email']); + $this->_fullName = $templateData['fullName'] = $this->sanitize($_POST['fullName']); + + $adminNameOk = false; + if (empty($this->_adminName) || strlen($this->_adminName) < 1 + || strlen($this->_adminName) > 32) { + $templateData['error']['invalid_adminName'] = 1; + } else { + $adminNameOk = true; + } + $emailOk = false; + if (!empty($this->_email) + && !GalleryUtilities::isValidEmailString($this->_email)) { + $templateData['error']['invalid_email'] = 1; + } else { + $emailOk = true; + } + if ($passwordOk && $adminNameOk && $emailOk) { + $this->setComplete(true); + } + } else if ($passwordOk) { + /* + * If we're reusing db tables, we don't create a new admin user and just + * change the setup password + */ + $this->setComplete(true); + } + } + + if ($this->isComplete()) { + $galleryStub->setConfig('setup.password', $this->_password); + if ($templateData['freshInstall']) { + /* Store admin name and data for later use in InstallCoreModule */ + $galleryStub->setConfig('setup.admin.userName', $this->_adminName); + $galleryStub->setConfig('setup.admin.email', $this->_email); + $galleryStub->setConfig('setup.admin.fullName', $this->_fullName); + } + $templateData['bodyFile'] = 'AdminUserSetupSuccess.html'; + } else { + $templateData['bodyFile'] = 'AdminUserSetupRequest.html'; + } + } + + function isRedoable() { + return true; + } +} +?> diff --git a/Source/gallery2/install/steps/AuthenticateStep.class b/Source/gallery2/install/steps/AuthenticateStep.class new file mode 100644 index 0000000..df147d9 --- /dev/null +++ b/Source/gallery2/install/steps/AuthenticateStep.class @@ -0,0 +1,97 @@ +_uniqueKey = GallerySetupUtilities::generateAuthenticationKey(); + $this->_firstTime = true; + } + + function stepName() { + return _('Authenticate'); + } + + function processRequest() { + if (!empty($_GET['downloadLogin'])) { + GallerySetupUtilities::generateLoginTxtFile($this->_uniqueKey); + return false; + } + + return true; + } + + function loadTemplateData(&$templateData) { + $authenticationDir = dirname(dirname(dirname(__FILE__))); + + if (!$this->isComplete()) { + /* Authenticate */ + $authenticated = false; + $authFile = dirname(__FILE__) . '/../../login.txt'; + if (!file_exists($authFile)) { + if (!$this->_firstTime) { + $templateData['errors'][] = + sprintf(_('Error: could not locate login.txt. ' . + 'Please place it in your %s/ directory.'), + basename($authenticationDir)); + } + } else if (!is_readable($authFile)) { + $templateData['errors'][] = + _('Error: your login.txt file is not readable. ' . + 'Please give Gallery read permissions on the file.'); + } else { + + $fileAuth = trim(join('', file($authFile))); + if ($fileAuth == $this->_uniqueKey) { + /* Authenticate, but don'treset the login attempts because we have no db */ + GallerySetupUtilities::authenticateThisSession(false); + $this->setComplete(true); + } else { + $templateData['errors'][] = + _('Error: your login.txt key does not match correctly. ' . + 'Please download a new authentication string from below and try again.'); + } + } + } + + $this->_firstTime = false; + + $templateData['authenticationDir'] = basename($authenticationDir); + + if ($this->isComplete()) { + $templateData['bodyFile'] = 'AuthenticateSuccessful.html'; + } else { + $templateData['bodyFile'] = 'AuthenticateRequest.html'; + } + } + + function getUniqueKey() { + return $this->_uniqueKey; + } +} +?> diff --git a/Source/gallery2/install/steps/CreateConfigFileStep.class b/Source/gallery2/install/steps/CreateConfigFileStep.class new file mode 100644 index 0000000..e8563b8 --- /dev/null +++ b/Source/gallery2/install/steps/CreateConfigFileStep.class @@ -0,0 +1,216 @@ +_firstTime = true; + } + + function stepName() { + return _('Create Config File'); + } + + function loadTemplateData(&$templateData) { + global $galleryStub; + + $configDir = $_SESSION['configPath']; + $configFilePath = $configDir . '/config.php'; + $templateData['OS'] = strncasecmp(PHP_OS, 'win', 3) ? 'unix' : 'winnt'; + if (file_exists($configFilePath) && !is_writeable($configFilePath)) { + /* The file exists but we can't write to it */ + $templateData['error'] = sprintf( + _('Unable to write to the config.php configuration file in your %s ' . + 'directory. Please change its permissions. If you\'re on ' . + 'Unix you can do chmod 666 config.php to fix this.'), + '' . basename($configDir) . ''); + $this->setInError(true); + $templateData['bodyFile'] = 'CreateConfigFileInstructions.html'; + $templateData['galleryDir'] = basename($configDir); + } else { + /* Don't (overwrite) the config file, if we recommend an upgrade */ + $writeConfigFile = false; + $freshInstall = $galleryStub->getConfig('freshInstall'); + $versionStatus = $upgradeRecommended = false; + $versions = array('installed' => '', 'codebase' => false); + if (!$freshInstall) { + /* We are reusing database tables, it's not a fresh install */ + list ($versionStatus, $upgradeRecommended, $versions) = $this->_versionCheck(); + if (!$versionStatus && file_exists($configFilePath)) { + if ($upgradeRecommended) { + /* + * Only write config.php, if it's empty. Else, the upgrader would + * assume a wrong state of config.php when it tries to update it. + */ + $configContents = implode('', file($configFilePath)); + if (empty($configContents) || strlen($configContents) < 100) { + $writeConfigFile = true; + } + } + } else { + $writeConfigFile = true; + } + } else { + $writeConfigFile = true; + } + + /* Before writing, check if the file is writable and give instructions if it isn't */ + if ($writeConfigFile && !$out = @fopen($configFilePath, 'w')) { + /* Give the user instructions */ + $templateData['bodyFile'] = 'CreateConfigFileInstructions.html'; + $templateData['galleryDir'] = basename($configDir); + + if (!$this->_firstTime) { + if (!file_exists($configFilePath)) { + $templateData['error'] = sprintf( + _('The config.php file does not exist in your %s directory'), + $configDir); + } else { + $templateData['error'] = sprintf( + _('The config.php file exists but is not writeable. If your server ' . + 'is Windows, you may have to disable file sharing for config.php ' . + 'and set its permissions manually.'), + $configDir); + } + } + } else { + if (!$freshInstall && !$versionStatus) { + $this->setComplete(false); + $templateData['recommendUpgrade'] = $upgradeRecommended; + $templateData['versions'] = $versions; + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); + $templateData['galleryDir'] = basename($_SESSION['configPath']); + $templateData['configFileWritten'] = $writeConfigFile; + $templateData['bodyFile'] = 'VersionCheckFailed.html'; + } else { + /* It's a fresh install or the installed version matches the codebase version */ + $this->setComplete(true); + $templateData['bodyFile'] = 'CreateConfigFileSuccess.html'; + } + + /* Finally write the config file */ + if ($writeConfigFile) { + $this->_writeConfig($out, $configDir); + fclose($out); + } + } + } + $this->_firstTime = false; + } + + function _writeConfig(&$out, $configDir) { + global $galleryStub; + $baseDir = dirname(dirname(dirname(__FILE__))); + require_once($baseDir . '/modules/core/classes/GalleryUrlGenerator.class'); + $baseUrl = getBaseUrl() . preg_replace('{install/' . INDEX_PHP . '\?.*}', '', + GalleryUrlGenerator::getCurrentRequestUri()); + + $addslashes = array('\\' => '\\\\', "'" => "\\'"); + $newStoreConfig = $galleryStub->getConfig('storage.config'); + $in = @fopen($baseDir . '/install/config.php-template', 'r'); + while ($line = fgets($in, 2000)) { + if (trim($line) == '$gallery->setConfig(\'setup.password\', \'\');') { + $tmp = strtr($galleryStub->getConfig('setup.password'), $addslashes); + $line = sprintf("\$gallery->setConfig('setup.password', '%s');\n", $tmp); + } + + if (trim($line) == '$gallery->setConfig(\'data.gallery.base\', \'\');') { + $tmp = strtr($galleryStub->getConfig('data.gallery.base'), $addslashes); + $line = sprintf("\$gallery->setConfig('data.gallery.base', '%s');\n", $tmp); + } + + foreach (array('type', 'hostname', 'database', 'username', + 'password', 'tablePrefix', 'columnPrefix') as $key) { + if (preg_match("/^.storeConfig\['$key'\] = '.*';/", $line)) { + $newStoreConfig[$key] = strtr($newStoreConfig[$key], $addslashes); + $line = "\$storeConfig['$key'] = '$newStoreConfig[$key]';\n"; + } + } + + if (trim($line) == '$gallery->setConfig(\'galleryBaseUrl\', \'\');' && + $configDir != $baseDir) { + /* galleryBaseUrl not required for config.php in codebase dir */ + $tmp = strtr($baseUrl, $addslashes); + $line = sprintf("\$gallery->setConfig('galleryBaseUrl', '%s');\n", $tmp); + } + + fwrite($out, $line); + } + fclose($in); + } + + /** + * Check installed version vs. codebase version + * + * If G2 isn't installed at the moment or the installed version is the same as the codebase + * version, advance to the next step. Else, give a warning and instruct to run the upgrader if + * codebase version > installed version. + * Note: database = g2data version, checked in db step + * + * @return array (boolean versionsOk, boolean upgradeRecommended, + * array ('codebase' => string version, 'installed' => string version)) + */ + function _versionCheck() { + global $galleryStub; + + $freshInstall = $galleryStub->getConfig('freshInstall'); + $versions = array(); + $versionsOk = false; + $recommendUpgrade = false; + + if ($freshInstall) { + /* It's a fresh install */ + $versionsOk = true; + } else { + /* Get the installed version from the DatabaseSetup Step */ + $tmp = $galleryStub->getConfig('installed.version'); + $versions['installed'] = empty($tmp) ? ' ' : $tmp; + /* ^Avoid http://bugs.php.net/bug.php?id=17433 */ + /* Get the codebase version, also from the DB setup step */ + $versions['codebase'] = $galleryStub->getConfig('codebase.version'); + + /* Compare the versions */ + if (($cmp = version_compare($versions['installed'], $versions['codebase'])) == 0) { + /* Installed version and codebase version are the same. Good. */ + $versionsOk = true; + } else if ($cmp < 0) { + /* + * G2 is installed, but its version doesn't match the codebase version. + * Recommend an upgrade (redirect to the upgrader) + */ + $recommendUpgrade = true; + } else { + /* + * G2 is installed, but its version doesn't match the codebase version. + * And no upgrade is recommended because the codebase version is not newer than + * the installed version. Something's wrong. + */ + } + } + + return array($versionsOk, $recommendUpgrade, $versions); + } +} +?> diff --git a/Source/gallery2/install/steps/DatabaseSetupStep.class b/Source/gallery2/install/steps/DatabaseSetupStep.class new file mode 100644 index 0000000..86857fc --- /dev/null +++ b/Source/gallery2/install/steps/DatabaseSetupStep.class @@ -0,0 +1,726 @@ +_config)) { + $this->_config = $galleryStub->getConfig('storage.config'); + if (empty($this->_config)) { + $this->_config = array(); + $this->_config['type'] = 'mysqlt'; + $this->_config['hostname'] = 'localhost'; + $this->_config['username'] = 'root'; + $this->_config['password'] = ''; + $this->_config['database'] = 'gallery2'; + $this->_config['tablePrefix'] = 'g2_'; + $this->_config['columnPrefix'] = 'g_'; + $firstConfig = true; + } + } + + $templateData['password'] = strlen($this->_config['password']) ? '******' : ''; + + if (!empty($_POST['action']) && $_POST['action'] == 'save') { + foreach (array('type', 'hostname', 'username', 'database', + 'tablePrefix', 'columnPrefix') as $key) { + $this->_config[$key] = $this->sanitize($_POST[$key]); + } + if (!preg_match('/^\*+$/', trim($_POST['password']))){ + $this->_config['password'] = $this->sanitize($_POST['password']); + } + } + + $dbPlatformType = null; + /* Autoselect mysqli instead of mysqlt if possible */ + $mysqltType = 'mysqlt'; + if ($this->_config['type'] == 'mysqlt' && function_exists('mysqli_real_connect')) { + $this->_config['type'] = 'mysqli'; + $mysqltType = 'mysqli'; + } + switch ($this->_config['type']) { + case 'mysql': + case 'mysqlt': + if (!$firstConfig && !function_exists('mysql_connect')) { + $templateData['error']['phpDbMissing'] = + _('You must have the MySQL PHP module installed'); + } + $dbPlatformType = 'mysql'; + break; + case 'mysqli': + if (!$firstConfig && !function_exists('mysqli_real_connect')) { + $templateData['error']['phpDbMissing'] = + _('You must have the MySQL Improved PHP module installed'); + } + $dbPlatformType = 'mysql'; + break; + case 'db2': + if (!$firstConfig && !function_exists('db2_connect')) { + $templateData['error']['phpDbMissing'] = + _('You must have the ibm_db2 PHP module installed'); + } + $dbPlatformType = 'db2'; + break; + case 'postgres7': + if (!$firstConfig && !function_exists('pg_connect')) { + $templateData['error']['phpDbMissing'] = + _('You must have the PostgreSQL PHP module installed'); + } + $dbPlatformType = 'postgres'; + break; + case 'oci8po': + if (!$firstConfig && !function_exists('OCIPLogon')) { + $templateData['error']['phpDbMissing'] = + _('You must have the Oracle OCI8 PHP module installed'); + } + $dbPlatformType = 'oracle'; + break; + case 'ado_mssql': + if (!$firstConfig && !class_exists('COM')) { + $templateData['error']['phpDbMissing'] = + _('You must have the Component Object Model(COM) PHP module installed'); + } + $dbPlatformType = 'mssql'; + break; + } + + if (!empty($_POST['action']) && $_POST['action'] == 'save') { + if (empty($this->_config['columnPrefix'])) { + $templateData['error']['columnPrefix'] = + sprintf(_('You must specify a column prefix (we recommend %s)'), 'g_'); + } else if (preg_match('{[^A-Za-z0-9_]}', $this->_config['columnPrefix'])) { + $templateData['error']['columnPrefix'] = + _('Use only letters, numbers and underscore in the column prefix'); + } + + if (empty($this->_config['tablePrefix'])) { + $templateData['error']['tablePrefix'] = + sprintf(_('You must specify a table prefix (we recommend %s)'), 'g2_'); + } else if (preg_match('{[^A-Za-z0-9_]}', $this->_config['tablePrefix'])) { + $templateData['error']['tablePrefix'] = + _('Use only letters, numbers and underscore in the table prefix'); + } + + if (empty($templateData['errors']) && empty($templateData['error'])) { + /* Load up ADOdb */ + require_once(dirname(__FILE__) . '/../../lib/adodb/adodb.inc.php'); + + $this->_captureStart(); + $this->_db =& ADONewConnection($this->_config['type']); + $this->_db->debug = true; + $this->_captureEnd(); + + if (empty($this->_db)) { + $templateData['errors'][] = sprintf( + _('Unable to create a database connection of type %s'), + $this->_config['type']); + } + + if (empty($templateData['errors'])) { + $this->_captureStart(); + if ($dbPlatformType != 'mssql') { + $result = $this->_db->NConnect($this->_config['hostname'], + $this->_config['username'], + $this->_config['password'], + $this->_config['database']); + } else { + $result = $this->_db->NConnect( + 'PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER=' + . $this->_config['hostname'] . ';DATABASE=' + . $this->_config['database'], + $this->_config['username'], $this->_config['password'], 'MSDASQL'); + } + $this->_captureEnd(); + if ($result === false) { + $templateData['errors'][] = + _('Unable to connect to database with the information provided.'); + } + } + } + + if (empty($templateData['errors']) && empty($templateData['error'])) { + $this->_captureStart(); + $result = $this->_db->MetaTables(); + if ($result === false) { + $templateData['errors'][] = + _('The database you specified does not exist. Please create it.'); + $dbVersion = ''; + } else { + /* + * Check if the db user has (all?) required db privileges to finish the + * installer steps. + */ + list ($ret, $error) = $this->_testPrivileges($dbPlatformType, $result); + if ($ret === false) { + $templateData['errors'][] = + _('The database privileges test did not complete successfully.'); + if (!empty($error)) { + $templateData['errors'][] = $error; + } + } + + /* Check the status and get the version of the Gallery database */ + $dbVersion = $this->_getDbVersion($result); + } + + $this->_captureEnd(); + + /* Check the status of the disk storage (g2data directory) */ + $versions = $this->_getVersions(); + $datVersion = $versions['installed']; + $codebaseVersion = $versions['codebase']; + $galleryStub->setConfig('codebase.version', $codebaseVersion); + } + + $templateData['databaseErrors'] = $this->_getCaptured(); + + if (empty($_POST['confirmReuseTables'])) { + if (empty($dbVersion) && empty($datVersion)) { + /* Fresh, clean install. Good. */ + /* Advance to next step */ + $confirmRequired = 0; + } else if (!empty($dbVersion) && empty($datVersion)) { + /* DB tables exist, but g2data seems to be not ok. */ + /* Explain and offer clean install. */ + $confirmRequired = 1; + $templateData['showConfirmCleanInstall'] = 1; + $templateData['warnings'][] = + _('Gallery tables already exist in this database! But there is no ' . + '\'versions.dat\' file in your G2 storage directory which we interpret ' . + 'as a broken state of G2. Either create a versions.dat file with the ' . + 'correct format if you think your G2 should still work or select a ' . + 'clean install, which will erase all data in the database and in the ' . + 'storage directory.'); + + } else if (empty($dbVersion) && !empty($datVersion)) { + /* DB tables don't exist, but g2data has versions.dat */ + /* Explain and offer clean install. */ + $confirmRequired = 1; + $templateData['showConfirmCleanInstall'] = 1; + $templateData['warnings'][] = + _('The G2 storage directory has a versions.dat file of an old install. ' . + 'But the Gallery database tables don\'t exist. Select a clean install ' . + 'to erase all data in the Gallery storage directory and advance to the ' . + 'next step.'); + + } else if ($dbVersion != $datVersion) { + /* Installed version is not ok, mismatch between g2data and the database */ + /* Explain and offer Clean Install. */ + $confirmRequired = 1; + $templateData['showConfirmCleanInstall'] = 1; + $templateData['warnings'][] = + _('Gallery tables already exist in the database and there is a versions.' . + 'dat file in the Gallery storage directory. But the version of the ' . + 'installed Gallery database tables does not match the version of the ' . + 'installed data in the Gallery storage directory. Select a clean ' . + 'install to erase all data in the database and in the storage directory' . + ' and to advance to the next step.'); + + } else { + /* Installed version is ok, offer Reuse Tables and Clean Install. */ + $confirmRequired = 1; + $templateData['showConfirmCleanInstall'] = 1; + $templateData['showConfirmReuseTables'] = 1; + + $templateData['warnings'][] = + _('Gallery tables already exist in the database and the Gallery storage ' . + 'directory seems to be intact. Either choose to reuse the existing ' . + 'database tables and storage directory data or select a clean install ' . + 'to erase all existing data in the database and the storage directory.'); + } + } + if (empty($templateData['errors']) && empty($templateData['error']) && + (empty($confirmRequired) || !empty($_POST['confirmReuseTables']))) { + $this->setComplete(true); + } + } elseif (!empty($_GET['action']) && $_GET['action'] == 'clean') { + /* Do a clean install, erase the data, initiate the G2 API on db level */ + if ($this->_loadG2Api(3)) { + $storageCleaned = $dbCleaned = false; + + /* Reset the storage directory */ + if (!$this->_emptyGalleryStorageDirectory()) { + $templateData['errors'][] = + _('Could not execute the required API to erase the storage directory. ' . + 'Please erase the Gallery storage directory manually.'); + } else { + $storageCleaned = true; + } + + /* Drop all Gallery database tables listed in the schema table */ + $this->_captureStart(); + $ret = $this->_cleanDatabase(); + if ($ret) { + $ret = $ret; + global $gallery; + $templateData['errors'][] = + _('Could not execute the required API to drop the Gallery database tables' . + '. Please clean the Gallery database manually.'); + $templateData['databaseErrors'] = $gallery->getDebugBuffer(); + $templateData['stackTrace'] = $ret->getAsHtml(); + $gallery->clearDebugBuffer(); + } else { + $dbCleaned = true; + } + $this->_captureEnd(); + $templateData['databaseErrors'] = $this->_getCaptured(); + + if ($storageCleaned && $dbCleaned) { + $this->setComplete(true); + } + + } else { + $templateData['errors'][] = + _('Could not load the G2 API. Please erase the Gallery database tables and ' . + 'the storage directory manually.'); + } + } + + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); + + if ($this->isComplete()) { + $galleryStub->setConfig('storage.config', $this->_config); + if (empty($_POST['confirmReuseTables'])) { + /* Remember that this is a fresh/clean install for later steps */ + $galleryStub->setConfig('freshInstall', true); + } else { + $galleryStub->setConfig('freshInstall', false); + /* Remember the installed version to compare it later to the codebase version */ + $galleryStub->setConfig('installed.version', $datVersion); + } + $templateData['bodyFile'] = 'DatabaseSetupSuccess.html'; + } else if ((empty($templateData['errors']) && empty($templateData['error']) || + !empty($_POST['action']) && $_POST['action'] == 'clean') && + !empty($_POST['confirmCleanInstall'])) { + $galleryStub->setConfig('storage.config', $this->_config); + $templateData['bodyFile'] = 'CleanInstallRequest.html'; + } else { + $templateData['config'] = $this->_config; + + foreach (array($mysqltType => _('MySQL (v3.23.34a and newer)'), + 'mysql' => _('MySQL (versions before v3.23.34a)'), + 'postgres7' => _('PostgreSQL v7.x and newer'), + 'oci8po' => _('Oracle (9i and newer)'), + 'db2' => _('IBM DB2 (v9.x and newer)'), + 'ado_mssql' => _('Microsoft SQL Server 2005 and newer')) + as $key => $value) { + $templateData['dbList'][$key] = $value; + } + $templateData['dbSelected'][$this->_config['type']] = 1; + + $templateData['bodyFile'] = 'DatabaseSetupRequest.html'; + } + } + + function _captureStart() { + ob_start(); + } + + function _captureEnd() { + if (!isset($this->_debugContents)) { + $this->_debugContents = ''; + } + $this->_debugContents .= ob_get_contents(); + ob_end_clean(); + } + + function _getCaptured() { + if (empty($this->_debugContents)) { + return ""; + } + + $contents = $this->_debugContents; + unset($this->_debugContents); + return $contents; + } + + function isRedoable() { + return true; + } + + /** + * Check if the user has the most basic database privileges required to finish the install + * steps successfully. Check: + * - CREATE TABLE, ALTER TABLE, DROP TABLE + * - CREATE INDEX, DROP INDEX + * - CREATE SEQUENCE, DROP SEQUENCE + * + * @param string $dbType platform name (i.e. not mysqlt, but mysql) + * @param array $metatables (string tableName) + * @return array (boolean success, string errors) + */ + function _testPrivileges($dbType, $metatables) { + global $gallery; + + if (!is_array($metatables) || empty($dbType)) { + return array(false, _('Unknown DB type or no known tables information.')); + } + + /* + * Execute T_InstallerTest_1.sql through T_InstallerTest_4.sql. These create, alter and + * drop a table, and create and drop index. Because our .xml transforms (MySQL.xsl,...) + * always updates the Schema table for all table create, alter, drops, we use here a test + * table which also has the name and the structure of the Schema table, just with another + * tablePrefix. + * + * Set an unused tablePrefix such that we can play with create/drop table in an + * unused database "namespace". Try a few prefices, don't try to drop! + */ + $ok = false; + for ($i = 0; $i < 10; $i++) { + $tablePrefix = 'gtst' . $i; + if (!$this->in_array_cin($tablePrefix . 'Schema', $metatables)) { + $ok = true; + break; + } + } + if (!$ok) { + return array(false, + sprintf(_('Could not find an unused table prefix similar to "%s".'), + $tablePrefix)); + } + + /* Load the Test SQL code */ + require_once(dirname(__FILE__) . + '/../../modules/core/classes/GalleryStorage/GalleryStorageExtras.class'); + /* GalleryPlatform is not available at this point */ + $schemaTpl = dirname(__FILE__) . '/../../modules/core/classes/GalleryStorage/schema.tpl'; + if (!($sqlData = file($schemaTpl))) { + return array(false, sprintf(_('Could not open schema file: "%s".'), $schemaTpl)); + } + $moduleSql = GalleryStorageExtras::parseSqlTemplate($sqlData, $dbType); + + for ($i = 1; $i <= 4; $i++) { + list ($success, $errorMessage) = + $this->_executeSql($moduleSql['test']['InstallerTest'][$i], $tablePrefix); + if (!$success) { + return array(false, $errorMessage); + } + } + + /* Check CREATE and DROP SEQUENCE privileges */ + $sequenceId = 'g2privtestseq'; + $result = $this->_db->CreateSequence($tablePrefix . $sequenceId); + if (empty($result)) { + return array(false, _('Failed to create a DB test sequence.' . + 'Check the returned error message and README.html ' . + 'for missing privileges and clean up the database.')); + } + $result = $this->_db->DropSequence($tablePrefix . $sequenceId); + if (empty($result)) { + return array(false, _('Test failed to drop a DB test sequence.' . + 'Check the returned error message and README.html ' . + 'for missing privileges and clean up the database.')); + } + + return array(true, null); + } + + /** + * Execute a series of SQL statements + * + * @param string $buffer the SQL statements + * @param string $tablePrefix prefix for table names + * @return array(boolean success, string error message) + */ + function _executeSql($buffer, $tablePrefix) { + if (empty($buffer)) { + return array(false, _('Missing SQL statements')); + } + /* + * Split the file where semicolons are followed by a blank line.. + * PL/SQL blocks will have other semicolons, so we can't split on every one. + * But first, remove that last semicolon such that all statements have no semicolon + * (required for oracle) + */ + if ($pos = strrpos($buffer, ';')) { + $buffer = substr($buffer, 0, $pos); + } + $statements = preg_split('/; *\r?\n *\r?\n/s', $buffer); + foreach ($statements as $query) { + $query = trim($query); + if (!empty($query)) { + $query = str_replace('DB_TABLE_PREFIX', $tablePrefix, $query); + $query = str_replace('DB_COLUMN_PREFIX', $this->_config['columnPrefix'], $query); + /* For mysql, another replacement is required */ + $query = str_replace('DB_TABLE_TYPE', '', $query); + + $result = $this->_db->Execute($query); + if (empty($result)) { + return array(false, _('Check the returned error message and README.html ' . + 'for missing privileges and clean up the database.')); + } + } + } + + return array(true, null); + } + + /** + * Get the installed version from versions.dat in the Storage directory + * And the codebase version from modules/core/module.inc + * + * Avoid using GalleryInitFirstPass (as this is called even for fresh installs) + * + * @return array ('installed' => string the storage versions.dat version, + * 'codebase' => string the codebase version) + */ + function _getVersions() { + global $galleryStub; + + $versions['installed'] = $versions['codebase'] = ''; + + /* Load platform level to use the CoreModule and read data from versions.dat */ + $this->_loadG2Api(2); + require_once(dirname(__FILE__) . '/../../modules/core/module.inc'); + $coreModule = new CoreModule(); + $instVersions = $coreModule->getInstalledVersions(); + if (isset($instVersions) && isset($instVersions['core']) && + !empty($instVersions['core'])) { + $versions['installed'] = $instVersions['core']; + } + + /* Get the codebase version for the CreateConfigFileStep */ + $versions['codebase'] = $coreModule->getVersion(); + + $this->resetL10Domain(); + return $versions; + } + + /** + * Get the state and the version of the Gallery database + * + * @param array $metaTables the meta tables info array from the database + * @return string the db version + */ + function _getDbVersion($metaTables) { + + $dbVersion = ''; + if ($this->in_array_cin($this->_config['tablePrefix'] . 'Schema', $metaTables)) { + /* + * Get core module version from the database. But first verify that we + * have plugin params db table. Default to dummy version + */ + $dbVersion = 'corrupt db install'; + if ($this->in_array_cin($this->_config['tablePrefix'] . 'PluginParameterMap', + $metaTables)) { + + /* Initiate the G2 API to use its db abstraction layer */ + if ($this->_loadG2Api(3)) { + list ($ret, $version) = + GalleryCoreApi::getPluginParameter('module', 'core', '_version'); + if (!$ret && !empty($version)) { + $dbVersion = $version; + } + } + } else { + /* + * Not all db tables are present, a clean install is definitely + * required + */ + } + } + + return $dbVersion; + } + + /** + * Load minimal G2 API + * + * Used to check the version in the db and to clean the db / storage dir + * + * @param int $level (optional) which level to load + * @return boolean success + */ + function _loadG2Api($level=1) { + global $galleryStub; + /* + * levels: 0 = off, 1 = basic, 2 = platform, 3 = initfirstpass / db + * firstPass includes platform level + */ + static $initiated; + $platformLevel = 2; + $firstPassLevel = 3; + $success = true; + + if (!isset($initiated)) { + $initiated = 1; + + /* Include basic G2 classes to use G2 API to get the core version etc. */ + require_once(dirname(__FILE__) . '/../../modules/core/classes/Gallery.class'); + require_once(dirname(__FILE__) .'/../../modules/core/classes/GalleryDataCache.class'); + $GLOBALS['gallery'] =& new Gallery(); + /* + * GalleryInitFirstPass adds a trailing slash if necessary, but we don't call it in + * all cases + */ + $configPath = $galleryStub->getConfig('data.gallery.base'); + if ($configPath{strlen($configPath)-1} != DIRECTORY_SEPARATOR) { + $configPath .= DIRECTORY_SEPARATOR; + } + $GLOBALS['gallery']->setConfig('data.gallery.base', $configPath); + $GLOBALS['gallery']->setConfig('plugins.dirname', + $galleryStub->getConfig('plugins.dirname')); + } + global $gallery; + + if ($level == $platformLevel && $initiated < $platformLevel) { + /* Platform level requested, platform level not already loaded */ + $initiated = $platformLevel; + require_once(dirname(__FILE__) . '/../../modules/core/classes/GalleryCoreApi.class'); + require_once(dirname(__FILE__) . + '/../../modules/core/classes/GalleryCapabilities.class'); + require_once(dirname(__FILE__) . '/../../modules/core/classes/GalleryPlatform.class'); + $gallery->setPlatform(new GalleryPlatform()); + /* Configure G2 such that getInstalledVersions() can be called */ + $gallery->initTranslator(true); + require_once(dirname(__FILE__) . '/../../modules/core/classes/GalleryModule.class'); + } + + if ($level == $firstPassLevel && $initiated < $firstPassLevel) { + $initiated = $firstPassLevel; + + /* Configure the G2 db abstraction layer */ + $this->_config['usePersistentConnections'] = false; + $gallery->setConfig('storage.config', $this->_config); + $gallery->setDebug(false); + $gallery->setProfile(false); + /* Init paths etc., used for the clean DB function */ + require_once(dirname(__FILE__) . '/../../init.inc'); + if (!defined('GALLERY_FORM_VARIABLE_PREFIX')) { + define('GALLERY_FORM_VARIABLE_PREFIX', 'g2_'); + } + $ret = GalleryInitFirstPass(array('noDatabase' => true)); + $success = !$ret; + + GalleryDataCache::setFileCachingEnabled(false); + GalleryDataCache::reset(); + } + + if ($level >= $platformLevel) { + /* Gallery init selects language from browser; reset to language currently in use */ + $translator =& $gallery->getTranslator(); + $translator->init($_SESSION['language'], true); + } + + return $success; + } + + /** + * Empty the Gallery storage directory and reset it to its original state + * + * Deletes everything in the storage directory and then rebuilds the initial folder structure + * @return boolean success + */ + function _emptyGalleryStorageDirectory() { + global $gallery; + + /* Make sure that all the required paths exist. */ + $baseDir = $gallery->getConfig('data.gallery.base'); + $platform =& $gallery->getPlatform(); + + if ($baseDir{strlen($baseDir)-1} != $platform->getDirectorySeparator()) { + $baseDir .= $platform->getDirectorySeparator(); + } + + /* Scrub the contents of the gallery data directory */ + $dir = $platform->opendir($baseDir); + + while (($filename = $platform->readdir($dir)) !== false) { + if (!strcmp($filename, '.') || !strcmp($filename, '..')) { + continue; + } + $path = $baseDir . $filename; + + if ($platform->is_dir($path)) { + $ret = $platform->recursiveRmdir($path); + } else { + $ret = $platform->unlink($path); + } + + if ($ret == false) { + return false; + } + } + $platform->closedir($dir); + + /* Recreate the gallery data directory */ + return populateDataDirectory($baseDir); + } + + /** + * Drop all Gallery database tables + * + * Drop all Gallery database tables that are listed in the Gallery schema table + * @return array GalleryStatus a status code + */ + function _cleanDatabase() { + global $gallery; + + $storage =& $gallery->getStorage(); + $gallery->setDebug('immediate'); + $ret = $storage->cleanStore(); + if ($ret) { + return $ret; + } + + $ret = $storage->commitTransaction(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * in_array_cin: case-insensitive in_array + * + * case-insensitive version of php function in_array() + * returns true if param 1 is in array param 2 + * + * PostgreSQL in windows/linux, Mysql on Windows both return a all lower-case list of existing + * tables. DB2 on Windows returns a all upper-case list of tablenames. + * Probably, only MySQL on linux returns a case-sensitive list of tablenames. Generalize to + * compare tablenames case-insensitively. + * + * @param string $strItem the search argument + * @param array $arItems vars to search in + * @return bool success status + */ + function in_array_cin($strItem, $arItems) { + foreach ($arItems as $strValue) { + if (strtoupper($strItem) == strtoupper($strValue)) { + return true; + } + } + return false; + } +} +?> diff --git a/Source/gallery2/install/steps/FinishedStep.class b/Source/gallery2/install/steps/FinishedStep.class new file mode 100644 index 0000000..24e92bc --- /dev/null +++ b/Source/gallery2/install/steps/FinishedStep.class @@ -0,0 +1,39 @@ +getConfig('isMultisite'); + $templateData['galleryDir'] = basename($_SESSION['configPath']); + $templateData['bodyFile'] = 'Finished.html'; + $this->setComplete(true); + } +} +?> diff --git a/Source/gallery2/install/steps/InstallCoreModuleStep.class b/Source/gallery2/install/steps/InstallCoreModuleStep.class new file mode 100644 index 0000000..aa2501f --- /dev/null +++ b/Source/gallery2/install/steps/InstallCoreModuleStep.class @@ -0,0 +1,246 @@ +renderHeader(true); + $template->renderStatusMessage(_('Installing the core module'), null, 0); + + /* We want to log all debug output in our install log */ + global $gallery; + $gallery->setDebug('logged'); + $tag = substr(md5(microtime() . rand(1, 32767)), 0, 10); + $dataBase = $gallery->getConfig('data.gallery.base'); + $installLogPath = sprintf('%s/install_%s.log', $dataBase, $tag); + $gallery->setDebugLogFile($installLogPath); + $templateData['installLogPath'] = $installLogPath; + $this->_createDebugLogHeader(); + $gallery->guaranteeTimeLimit(120); + + $gallery->debug('Init first pass'); + $ret = GalleryInitFirstPass(array('noDatabase' => true, + 'activeLanguage' => $_SESSION['language'])); + if ($ret) { + $gallery->debug(sprintf('Error: Unable to initialize our Gallery data, this is the ' . + 'error stack trace: %s', $ret->getAsText())); + $templateData['errors'][] = _('Unable to initialize our Gallery data'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } + + $this->_addSystemInformationToDebugLog(); + + /* We want to avoid using the cache */ + GalleryDataCache::setFileCachingEnabled(false); + + /* + * Delete anything in the cache, which can be left around if we're + * installing on top of an older install. + */ + $platform =& $gallery->getPlatform(); + $gallery->debug('Clear the cache directory'); + $cacheDirs = array('entity', 'theme', 'module', 'derivative'); + foreach ($cacheDirs as $dir) { + $dir = sprintf('%s/cache/%s', $dataBase, $dir); + if ($platform->file_exists($dir)) { + if (!$platform->recursiveRmDir($dir)) { + return false; + } + } + } + + $template->renderStatusMessage(_('Installing the core module'), null, 0.05); + $gallery->guaranteeTimeLimit(180); + + if (empty($templateData['errors'])) { + $gallery->debug('Check if the persistent storage is installed'); + /* + * Check to see if the database tables already exist. If they do then + * we should assume that they said that it was ok to reuse existing tables + * in the Database setup step, which means we don't have to perform an + * install now. + */ + $storage =& $gallery->getStorage(); + list ($ret, $isInstalled) = $storage->isInstalled(); + if ($ret) { + $gallery->debug(sprintf('Error: Unable to communicate with the database, this ' . + 'is the error stack trace; %s', $ret->getAsText())); + $templateData['errors'][] = _('Unable to communicate with the database'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } + } + + if (empty($templateData['errors'])) { + $gallery->debug('Load core module'); + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core', true); + $this->resetL10Domain(); + if ($ret) { + $gallery->debug(sprintf('Error: Unable to load the core module, this ' . + 'is the error stack trace; %s', $ret->getAsText())); + $templateData['errors'][] = _('Unable to load the core module'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } + } + + $template->renderStatusMessage(_('Installing the core module'), null, 0.1); + $gallery->guaranteeTimeLimit(180); + + $freshInstall = $galleryStub->getConfig('freshInstall'); + if ($freshInstall) { + $gallery->debug('Hand over admin user parameters'); + /* It's a fresh install. Hand over install config parameters */ + $gallery->setConfig('setup.admin.userName', + $galleryStub->getConfig('setup.admin.userName')); + $gallery->setConfig('setup.admin.email', + $galleryStub->getConfig('setup.admin.email')); + $gallery->setConfig('setup.admin.fullName', + $galleryStub->getConfig('setup.admin.fullName')); + } + + if (empty($templateData['errors'])) { + if (!$isInstalled) { + $gallery->debug('Install core module now!'); + $ret = $core->installOrUpgrade(true, $template); + if ($ret) { + $this->resetL10Domain(); + $gallery->debug(sprintf('Error: Unable to install the core module, this ' . + 'is the error stack trace; %s', $ret->getAsText())); + $templateData['errors'][] = _('Unable to install the core module'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } else { + $gallery->debug('Core module installed successfully'); + } + + $template->renderStatusMessage(_('Installing the core module'), '', 0.8); + $gallery->guaranteeTimeLimit(180); + + $gallery->debug('Activate core module'); + list ($ret, $ignored) = $core->activate(false); + $this->resetL10Domain(); + if ($ret) { + $gallery->debug(sprintf('Error: Unable to activate the core module, this ' . + 'is the error stack trace; %s', $ret->getAsText())); + $templateData['errors'][] = _('Unable to activate the core module'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } else { + $gallery->debug('Core module activated successfully'); + } + + $template->renderStatusMessage(_('Installing the core module'), '', 0.9); + $gallery->guaranteeTimeLimit(180); + + $gallery->debug('Commit transaction'); + $ret = $storage->commitTransaction(); + if ($ret) { + $gallery->debug(sprintf('Error: Unable to commit database transaction, this ' . + 'is the error stack trace; %s', $ret->getAsText())); + $templateData['errors'][] = _('Unable to commit database transaction'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } else { + $gallery->debug('Committed transaction successfully'); + } + } else { + $gallery->debug('NOT installing, rollback!'); + $storage->rollbackTransaction(); /* Ignore any errors from this */ + /* + * Don't allow this step to complete when only partially installed. + * Verify that versions.dat is up to date. + */ + $versions = $core->getInstalledVersions(); + if (empty($versions['core']) || $versions['core'] != $core->getVersion()) { + $gallery->debug('Error: Core module is only partially installed'); + $templateData['errors'][] = _('Core module is only partially installed.'); + $templateData['stackTrace'] = ''; + } else { + $gallery->debug('Core module version is ok'); + } + } + } + + $this->resetL10Domain(); + $template->renderStatusMessage(_('Installing the core module'), '', 1.0); + $gallery->guaranteeTimeLimit(120); + + $gallery->debug('Finish install core module step'); + if (empty($templateData['errors'])) { + $gallery->debug('Install core module step completed successfully'); + $this->setComplete(true); + $templateData['bodyFile'] = 'InstallCoreModuleSuccess.html'; + } else { + $gallery->debug('Error: Failure during install core module step'); + $templateData['bodyFile'] = 'InstallCoreModuleError.html'; + } + $template->hideStatusBlock(); + $template->renderBodyAndFooter($templateData); + return false; + } + + /* Adds a header to the debug log */ + function _createDebugLogHeader() { + global $gallery; + + $gallery->debug("\n\n +-------------------------------------------------------- + Prepare installation of the core module +--------------------------------------------------------\n\n"); + } + + /* Adds some system information to the log */ + function _addSystemInformationToDebugLog() { + global $gallery; + global $galleryStub; + + $storage =& $gallery->getStorage(); + $isSvnInstall = $galleryStub->getConfig('systemchecks.issvninstall'); + $isSvnInstall = empty($isSvnInstall) ? "No" : "Yes"; + + $gallery->debug("\n +-------------------------------------------------------- +System and Gallery information: +-------------------------------------------------------- + Gallery version:\t" . $galleryStub->getConfig('codebase.version') . " + File integrity:\t" . $galleryStub->getConfig('systemchecks.fileintegrity') . " + SVN install:\t" . $isSvnInstall . " + PHP version:\t" . phpversion() . " " . php_sapi_name() . " + PHP memory limit:\t" . ini_get('memory_limit') . " + PHP disable_functions:\t" . ini_get('disable_functions') . " + PHP zend.ze1_compatibility_mode:\t" . ini_get('zend.ze1_compatibility_mode') . " + Webserver:\t" . GalleryUtilities::getServerVar('SERVER_SOFTWARE') . " + Database:\t" . $storage->getAdoDbType() . " " . @$storage->getVersion() . " + Operating system:\t" . php_uname() . " + Browser:\t " . GalleryUtilities::getServerVar('HTTP_USER_AGENT') . " +--------------------------------------------------------\n\n +"); + } +} +?> diff --git a/Source/gallery2/install/steps/InstallOtherModulesStep.class b/Source/gallery2/install/steps/InstallOtherModulesStep.class new file mode 100644 index 0000000..d0f6e4b --- /dev/null +++ b/Source/gallery2/install/steps/InstallOtherModulesStep.class @@ -0,0 +1,299 @@ +_init($templateData); + + if (!isset($_REQUEST['activate'])) { + return true; + } + + global $gallery; + $currentModule = $totalModules = 0; + $templateData['stackTrace'] = ''; + $template = new StatusTemplate(); + + $ret = $this->_selectAdminUser(); + if ($ret) { + $templateData['errors'][] = _('Unable to initialize our Gallery session'); + $templateData['stackTrace'] .= $ret->getAsHtml(); + unset($_REQUEST['module']); + } + if (isset($_REQUEST['module'])) { + $storage =& $gallery->getStorage(); + } + + if ( !empty($_REQUEST['module']) && is_array($_REQUEST['module']) ) { + uksort($_REQUEST['module'], array($this, '_sortModules')); + $template->renderHeader(true); + $totalModules = count($_REQUEST['module']); + foreach (array_keys($_REQUEST['module']) as $moduleId) { + $currentModule++; + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', $moduleId); + if ($ret) { + $this->resetL10Domain(); + $templateData['errors'][] = + sprintf(_('Unable to load the %s module'), $moduleId); + $templateData['stackTrace'] .= $ret->getAsHtml(); + continue; + } + $module->setName($module->translate($module->getName())); + $module->setDescription($module->translate($module->getDescription())); + $this->resetL10Domain(); + $gallery->guaranteeTimeLimit(120); + + $template->renderStatusMessage(_('Installing modules'), + $module->getName(), $currentModule / $totalModules); + + $ret = $module->installOrUpgrade(); + if ($ret) { + $this->resetL10Domain(); + $templateData['errors'][] = + sprintf(_('Unable to install the %s module'), $module->getName()); + $templateData['stackTrace'] = $ret->getAsHtml(); + continue; + } + $moduleInstalled[$moduleId] = true; + + $templateData['installedModule'][$moduleId] = $module->getName(); + $ret = $storage->checkPoint(); + if ($ret) { + $this->resetL10Domain(); + $templateData['errors'][] = _('Unable to commit database transaction'); + $templateData['stackTrace'] .= $ret->getAsHtml(); + } + + list ($ret, $success) = $module->autoConfigure(); + if ($ret) { + $this->resetL10Domain(); + $templateData['errors'][] = + sprintf(_('Unable to activate the %s module'), $module->getName()); + $templateData['stackTrace'] .= $ret->getAsHtml(); + continue; + } + + if (!$success) { + /* This is not really an error, just a warning */ + $templateData['needsConfiguration'][$moduleId] = $module->getName(); + $this->resetL10Domain(); + continue; + } + + list ($ret, $redirect) = $module->activate(); + $this->resetL10Domain(); + if ($ret) { + $templateData['errors'][] = + sprintf(_('Unable to activate the %s module'), $module->getName()); + $templateData['stackTrace'] .= $ret->getAsHtml(); + continue; + } + $templateData['activated'][$moduleId] = $module->getName(); + continue; + } + $template->hideStatusBlock(); + } else { + $template->renderHeader(); + } + + if (!empty($_REQUEST['module'])) { + $ret = $storage->commitTransaction(); + if ($ret) { + $templateData['errors'][] = _('Unable to commit database transaction'); + $templateData['stackTrace'] .= $ret->getAsHtml(); + } + } + $templateData['bodyFile'] = 'InstallOtherModulesSuccess.html'; + $templateData['anyInstallable'] = false; + if (!empty($templateData['errors'])) { + $templateData['debug'] = $gallery->getDebugBuffer(); + } else { + if ($totalModules < $_REQUEST['install']) { + $templateData['anyInstallable'] = true; + } else { + $this->setComplete(true); + } + } + $template->renderBodyAndFooter($templateData); + return false; + } + + function loadTemplateData(&$templateData) { + $this->_init($templateData); + $groupedModules = $groupLabel = $moduleInstalled = $moduleInvalid = array(); + + if (empty($templateData['errors'])) { + list ($ret, $moduleList) = GalleryCoreApi::fetchPluginStatus('module', true); + if ($ret) { + $templateData['errors'][] = _('Unable to get the module list'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } + } + + if (empty($templateData['errors'])) { + foreach (array_keys($moduleList) as $moduleId) { + list ($ret, $modulePlugin) = GalleryCoreApi::loadPlugin('module', $moduleId); + if ($ret) { + $this->resetL10Domain(); + $templateData['warnings'][] = + sprintf(_('Unable to load the %s module'), $moduleId); + $templateData['stackTrace'] = $ret->getAsHtml(); + } else { + $modulePlugin->setName($modulePlugin->translate($modulePlugin->getName())); + $modulePlugin->setDescription( + $modulePlugin->translate($modulePlugin->getDescription())); + $modules[$moduleId] = $modulePlugin; + $this->resetL10Domain(); + } + } + + uksort($modules, array($this, '_sortModules')); + foreach (array_keys($modules) as $moduleId) { + $moduleInstalled[$moduleId] = !empty($moduleList[$moduleId]['version']); + $module =& $modules[$moduleId]; + $moduleInvalid[$moduleId] = !GalleryCoreApi::isPluginCompatibleWithApis($module); + + $group = $module->getGroup(); + if (empty($group)) { + $group = array('group' => 'others', 'groupLabel' => _('Other')); + } + $groupedModules[$group['group']][$moduleId] =& $module; + $groupLabel[$group['group']] = $group['groupLabel']; + } + } + + $templateData['groupedModules'] =& $groupedModules; + $templateData['groupLabel'] = $groupLabel; + $templateData['moduleInstalled'] = $moduleInstalled; + $templateData['moduleInvalid'] = $moduleInvalid; + $templateData['bodyFile'] = 'InstallOtherModulesRequest.html'; + + $templateData['anyInstallable'] = false; + foreach ($moduleInstalled as $moduleId => $tmp) { + if (!$tmp) { + $templateData['anyInstallable'] = true; + break; + } + } + if (!$templateData['anyInstallable']) { + $this->setComplete(true); + } + } + + function _init(&$templateData) { + require_once(dirname(__FILE__) . '/../../modules/core/classes/GalleryDataCache.class'); + $cacheKey = 'Installer::installOtherModulesStepInitialized'; + if (!GalleryDataCache::containsKey($cacheKey)) { + /* + * Disable the data cache before initializing. If we don't do this + * *first* then some data (like factory registrations) will get cached + * now, and then the modules won't be able to update it later on. + */ + GalleryDataCache::setFileCachingEnabled(false); + + if (!defined('GALLERY_CONFIG_DIR')) { + define('GALLERY_CONFIG_DIR', $_SESSION['configPath']); + } + require_once(dirname(__FILE__) . '/../../bootstrap.inc'); + require_once(dirname(__FILE__) . '/../../init.inc'); + $ret = GalleryInitFirstPass(array('debug' => 'buffered', 'noDatabase' => true, + 'activeLanguage' => $_SESSION['language'])); + if ($ret) { + $templateData['errors'][] = _('Unable to initialize our Gallery data'); + $templateData['stackTrace'] = $ret->getAsHtml(); + } + if (empty($templateData['errors'])) { + $ret = $this->_selectAdminUser(); + if ($ret) { + $templateData['errors'][] = _('Unable to initialize our Gallery session'); + $templateData['stackTrace'] .= $ret->getAsHtml(); + } + } + GalleryDataCache::put($cacheKey, true); + } + } + + function isRedoable() { + return false; + } + + function isOptional() { + return true; + } + + /** + * Find admin user and set as active user + * @return object GalleryStatus a status code + */ + function _selectAdminUser() { + global $gallery; + + list ($ret, $siteAdminGroupId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.adminGroup'); + if ($ret) { + return $ret; + } + list ($ret, $adminUserInfo) = GalleryCoreApi::fetchUsersForGroup($siteAdminGroupId, 1); + if ($ret) { + return $ret; + } + if (empty($adminUserInfo)) { + return GalleryCoreApi::error(ERROR_MISSING_VALUE); + } + $adminUserInfo = array_keys($adminUserInfo); + list ($ret, $adminUser) = GalleryCoreApi::loadEntitiesById($adminUserInfo[0]); + if ($ret) { + return $ret; + } + + $gallery->setActiveUser($adminUser); + $session =& $gallery->getSession(); + $session->put('isInstall', true); + return null; + } + + /** + * Put GD at the end of the list so that it's the lowest priority toolkit. This is a hack, + * that we should replace with a more sophisticated system in the future. + * + * Note: we do the same in the upgrader + */ + function _sortModules($a, $b) { + if ($a == 'gd' && $b == 'gd') { + return 0; + } else if ($a == 'gd') { + return 1; + } else if ($b == 'gd') { + return -1; + } else { + return strcmp($a, $b); + } + } +} +?> diff --git a/Source/gallery2/install/steps/MultisiteStep.class b/Source/gallery2/install/steps/MultisiteStep.class new file mode 100644 index 0000000..c67df9a --- /dev/null +++ b/Source/gallery2/install/steps/MultisiteStep.class @@ -0,0 +1,180 @@ +_configPath = rtrim($this->sanitize($_POST['configPath']), + ' ' . DIRECTORY_SEPARATOR); + if ($_POST['isMultisite'] == '0') { + $this->_isMultisite = false; + $baseDir = dirname(dirname(dirname(__FILE__))); + $_SESSION['configPath'] = $baseDir; + $this->setComplete(true); + $this->readConfigFile(); + /* Remember the value also for the storage and database setup steps */ + $galleryStub->setConfig('isMultisite', false); + require_once($baseDir . '/modules/core/classes/GalleryUrlGenerator.class'); + $uri = preg_replace('{\?.*}', '', GalleryUrlGenerator::getCurrentRequestUri()); + $uri .= '?step=' . ($this->getStepNumber() + 1); + /* Cookieless browsing (see index.php), 'session.use_trans_sid' won't help here */ + if (!GallerySetupUtilities::areCookiesSupported()) { + $uri .= sprintf('&%s=%s', session_name(), session_id()); + } + + header('Location: ' . getBaseUrl() . $uri); + return false; + } + } + return true; + } + + function loadTemplateData(&$templateData) { + global $galleryStub; + + if (!isset($this->_isMultisite)) { + $this->_isMultisite = false; + $this->_configPath = ''; + } + + $galleryDir = dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR; + + if (isset($_POST['isMultisite']) && $_POST['isMultisite'] == '1') { + $this->_isMultisite = true; + if (empty($this->_configPath)) { + $templateData['error']['missing_value'] = 1; + } else if (!is_dir($this->_configPath)) { + $templateData['error']['missing_dir'] = 1; + } else if ($this->_configPath == $galleryDir || + $this->_configPath . DIRECTORY_SEPARATOR == $galleryDir) { + $templateData['error']['codebase_dir'] = 1; + } else if (!is_readable($this->_configPath)) { + $templateData['error']['inaccessible_dir'] = 1; + } else if (!MultisiteStep::populateMultisiteDirectory($this->_configPath)) { + $templateData['error']['creation_error'] = 1; + } else { + $_SESSION['configPath'] = $this->_configPath; + $this->setComplete(true); + $this->readConfigFile(); + $galleryStub->setConfig('isMultisite', true); + } + } + + /* + * Show full filesystem path and the full URL to config file dir. + */ + $openBasedir = ini_get('open_basedir'); + if (!empty($openBasedir)) { + $separator = strncasecmp(PHP_OS, 'win', 3) ? ':' : ';'; + $templateData['openBasedir'] = explode($separator, $openBasedir); + } else { + $templateData['openBasedir'] = array(); + } + + $templateData['isMultisite'] = $this->_isMultisite; + $templateData['configPath'] = $this->_configPath; + $templateData['galleryDir'] = $galleryDir; + $templateData['galleryUrl'] = getGalleryDirUrl(); + $templateData['bodyFile'] = $this->isComplete() ? 'MultisiteSuccess.html' + : 'Multisite.html'; + } + + function populateMultisiteDirectory($dir) { + umask(0022); + $galleryDir = dirname(dirname(dirname(__FILE__))) . DIRECTORY_SEPARATOR; + if (!$out = @fopen("$dir/main.php", 'w')) { + return false; + } + fwrite($out, "\n"); + fclose($out); + if (!$out = @fopen("$dir/embed.php", 'w')) { + return false; + } + fwrite($out, "\n"); + fclose($out); + if (!$out = @fopen("$dir/index.php", 'w')) { + return false; + } + fwrite($out, "\n"); + fclose($out); + if (!is_dir("$dir/upgrade") && !mkdir("$dir/upgrade", 0755)) { + return false; + } + if (!$out = @fopen("$dir/upgrade/index.php", 'w')) { + return false; + } + fwrite($out, "\n"); + fclose($out); + /* lib/support/index.php is optional; ignore errors */ + if ((is_dir("$dir/lib") || mkdir("$dir/lib", 0755)) + && (is_dir("$dir/lib/support") || mkdir("$dir/lib/support", 0755)) + && $out = @fopen("$dir/lib/support/index.php", 'w')) { + fwrite($out, "\n"); + fclose($out); + } + return true; + } + + function readConfigFile() { + /* Load existing config.php (if found), which requires $gallery to be valid */ + $configFile = $_SESSION['configPath'] . DIRECTORY_SEPARATOR . 'config.php'; + $gallery = new GalleryStub(); + if (@is_file($configFile) && is_readable($configFile)) { + ob_start(); + @include($configFile); + ob_end_clean(); + } + global $galleryStub; + /* Copy config data from system checks step which will be used in the install log */ + $gallery->setConfig('systemchecks.fileintegrity', + $galleryStub->getConfig('systemchecks.fileintegrity')); + $gallery->setConfig('systemchecks.issvninstall', + $galleryStub->getConfig('systemchecks.issvninstall')); + /* Replace galleryStub */ + $galleryStub = $gallery; + } +} +?> diff --git a/Source/gallery2/install/steps/SecureStep.class b/Source/gallery2/install/steps/SecureStep.class new file mode 100644 index 0000000..1c2ef73 --- /dev/null +++ b/Source/gallery2/install/steps/SecureStep.class @@ -0,0 +1,62 @@ +setComplete(true); + } +} +?> diff --git a/Source/gallery2/install/steps/StorageSetupStep.class b/Source/gallery2/install/steps/StorageSetupStep.class new file mode 100644 index 0000000..23e216d --- /dev/null +++ b/Source/gallery2/install/steps/StorageSetupStep.class @@ -0,0 +1,310 @@ +_dir)) { + $this->_dir = $galleryStub->getConfig('data.gallery.base'); + if (empty($this->_dir)) { + $this->_dir = $_SESSION['configPath'] . DIRECTORY_SEPARATOR . 'g2data'; + } + } + /* + * An example for a slightly obfuscated g2data folder name such that the location + * of the storage folder can't be guessed too easily. + */ + $templateData['suggested_obfuscated_g2data_name'] = 'g2data_' . substr(md5(rand()),0 , 10); + + $templateData['isMultisite'] = $galleryStub->getConfig('isMultisite'); + + if (!empty($_POST['action']) && $_POST['action'] == 'save') { + if (empty($_POST['dir'])) { + $templateData['error']['missing_value'] = 1; + } else { + $dir = rtrim($this->sanitize($_POST['dir'])); + /* Normalize the path, add a traling slash if necessary */ + if (substr($dir, -1) != DIRECTORY_SEPARATOR) { + $dir .= DIRECTORY_SEPARATOR; + } + /* + * Make the path absolute since relative to the install/ folder isn't the same as + * relative to the main.php entry file. And also check if it exists. + */ + $realPath = @realpath($dir); + if (empty($realPath)) { + /* + * The folder does not exist yet. If we have already write permission on the + * parent folder, create the storage folder. + */ + $parentDir = realpath(dirname($dir)); + if (!empty($parentDir) && is_dir($parentDir) + && is_readable($parentDir) && is_writeable($parentDir)) { + $dir = $parentDir . DIRECTORY_SEPARATOR + . basename($dir) . DIRECTORY_SEPARATOR; + /* Create the storage folder with restrictive permissions */ + if (@mkdir($dir)) { + chmod($dir, 0700); + } + } + } + /* Check if the (newly created) dir exists, is writeable etc. */ + if (!is_dir($dir)) { + $templateData['error']['missing_dir'] = 1; + } else if (!is_readable($dir)) { + $templateData['error']['inaccessible_dir'] = 1; + } else if (!is_writeable($dir)) { + $templateData['error']['readonly_dir'] = 1; + } else { + /* + * Security check: + * If the user ticks the checkbox and thereby acknowledges that the storage + * folder might be accessible from the web, we proceed with the installation. + */ + list ($checkExecuted, $webAccessible) = + $this->_isStoragePathWebAccessible($dir); + if (empty($_POST['i_acknowledge_the_risk']) + && (!$checkExecuted || $webAccessible)) { + if (!$checkExecuted) { + /* Show a warning suggesting an obfuscated path. */ + $templateData['error']['possibly_web_accessible_dir'] = 1; + } else if ($webAccessible) { + $templateData['error']['web_accessible_dir'] = 1; + } + } else { + /* + * Populate the dir. + */ + if (!populateDataDirectory($dir)) { + $templateData['error']['creation_error'] = 1; + } else { + $this->_dir = $dir; + $this->setComplete(true); + } + } + } + } + $templateData['dir'] = $dir; + } else { + $templateData['dir'] = $this->_dir; + } + + if ($this->isComplete()) { + $galleryStub->setConfig('data.gallery.base', $this->_dir); + $templateData['bodyFile'] = 'StorageSetupSuccess.html'; + } else { + $templateData['bodyFile'] = 'StorageSetupRequest.html'; + } + + if (!strncasecmp(PHP_OS, 'win', 3)) { + $templateData['OS'] = 'winnt'; + } else { + $templateData['OS'] = 'unix'; + } + } + + function processRequest() { + if (!empty($_GET['doAutoComplete'])) { + processAutoCompleteRequest(); + return false; + } + + return true; + } + + function isRedoable() { + return true; + } + + /** + * Try to protect the given folder with a .htaccess file from direct web-access. + * And then check if the given folder is web-accessible either way. + * Precondition: gallery and g2data folders exist. + * + * @return array(boolean false if check procedure failed due to platform issues, + * boolean true if the folder is accessible from the web (=insecure)) + */ + function _isStoragePathWebAccessible($dir) { + /* Check if we can use fsockopen. Else we can't test it at all. */ + if (!function_exists('fsockopen') + || in_array('fsockopen', split(',\s*', ini_get('disable_functions')))) { + return array(false, false); + } + + /* Add a .htaccess file. */ + if (!secureStorageFolder($dir)) { + return array(false, false); + } + /* Add a probe file. */ + $probeFileName = 'probe_' . substr(md5(uniqid(rand())), 0, 10) . '.html'; + $probeFilePath = $dir . $probeFileName; + $checkString = md5(rand()); + $fh = @fopen($probeFilePath, 'w'); + if ($fh) { + $contents = "Probe$checkString"; + fwrite($fh, $contents); + fclose($fh); + } + + if (!file_exists($probeFilePath)) { + return array(false, false); + } + + /* Try to guess the URL to the g2data folder. */ + $storageUrlCandidates = array(); + /* Get the URL of the G2 folder. */ + $galleryUrl = getGalleryDirUrl(); + /* Get the relative path of the g2data folder to the gallery dir. */ + $storagePath = realpath($dir); + $galleryPath = realpath(dirname(dirname(dirname(__FILE__)))); + if (strpos($storagePath, $galleryPath) === 0) { + /* The g2data folder is within the gallery folder. */ + $relativeStoragePath = substr($storagePath, strlen($galleryPath) + 1); + $relativeStoragePath = str_replace("\\", '/', $relativeStoragePath); + $storageUrlCandidates[] = $galleryUrl . $relativeStoragePath . '/'; + } else { + /* + * The g2data folder is in another directory tree. + * Try to remove the common part of the paths and then construct a URL. + */ + $galleryPathElements = explode(DIRECTORY_SEPARATOR, $galleryPath); + $storagePathElements = explode(DIRECTORY_SEPARATOR, $storagePath); + $max = 30; + /* Before: e.g. /foo/bar/gallery2/ and /foo/bar/g2data/. */ + while (!empty($galleryPathElements) && !empty($storagePathElements) && $max-- > 0 + && $galleryPathElements[0] == $storagePathElements[0]) { + array_shift($storagePathElements); + array_shift($galleryPathElements); + } + /* After, e.g. /g2data/ (common part removed). */ + $relativeStoragePath = implode('/', $storagePathElements); + + $storageUrlCandidates[] = getBaseUrl() . '/' . $relativeStoragePath . '/'; + if (preg_match('!^.*?://.*?/[^/]+!', $galleryUrl, $matches)) { + $storageUrlCandidates[] = $matches[0] . '/' . $relativeStoragePath . '/'; + } + } + + /* Also try the default path and other common paths. */ + $storageUrlCandidates[] = $galleryUrl . basename($dir) . '/'; + $storageUrlCandidates[] = getBaseUrl() . '/' . basename($dir) . '/'; + + /* Try to fetch the probe file. */ + $isAccessible = false; + foreach ($storageUrlCandidates as $storageFolderUrl) { + $url = $storageFolderUrl . $probeFileName; + list ($urlFetched, $isAccessible) = $this->_isUrlAccessible($url, $checkString); + if ($urlFetched && $isAccessible) { + $isAccessible = true; + break; + } + } + + /* Cleanup: Delete the probe file. */ + unlink($probeFilePath); + + return array(true, $isAccessible); + } + + /** + * Try to fetch a a probe file from the storage folder and check if the returned page contains + * the probe string. If so, the storage folder is web-accessible (read: not secure). + * + * @param string $url the URL that should be fetched + * @param string $probeString expected string from the fetched file + * @return array(boolean false if check procedure failed due to platform issues, + * boolean true if the folder is accessible from the web (=insecure)) + */ + function _isUrlAccessible($url, $probeString) { + $components = @parse_url($url); + if (!$components) { + return array(false, false); + } + $port = empty($components['port']) ? 80 : $components['port']; + if (empty($components['path'])) { + $components['path'] = '/'; + } + + $fd = @fsockopen($components['host'], $port, $errno, $errstr, 1); + if (empty($fd)) { + return array(false, false); + } + + $get = $components['path']; + + /* Read the web page into a buffer */ + $ok = fwrite($fd, sprintf("GET %s HTTP/1.0\r\n" . + "Host: %s\r\n" . + "\r\n", + $get, + $components['host'])); + + if (!$ok) { + /* Zero bytes written or false was returned */ + return array(false, false); + } + fflush($fd); + + /* + * Read the response code. fgets stops after newlines. + * The first line contains only the status code (200, 404, etc.). + */ + $headers = array(); + $response = trim(fgets($fd, 4096)); + /* + * Ignore the status code. + * We expect either a 2xx code which would mean that the file has been fetched successfully + * (or there's a 404 -> redirect that suppresses the 404) and we check that later + * with the probe text. + * Or we expect an internal server 500 because mod_access is not installed. + * Or a 403 Forbidden since the .htaccess rule works correctly. + * Or a 404 because the URL is just plain wrong. + * + * Let's interpret everything but a successfully detected probe page as "secure". + */ + + /* Ignore the headers. */ + while (!feof($fd)) { + $line = trim(fgets($fd, 4096)); + if (empty($line)) { + break; + } + } + /* Read the body */ + $fetchedPage = ''; + while (!feof($fd)) { + $fetchedPage .= fread($fd, 4096); + } + fclose($fd); + + /* Check if the expected string is present. */ + return array(true, strpos($fetchedPage, $probeString) !== false); + } +} +?> diff --git a/Source/gallery2/install/steps/SystemChecksStep.class b/Source/gallery2/install/steps/SystemChecksStep.class new file mode 100644 index 0000000..f06a83d --- /dev/null +++ b/Source/gallery2/install/steps/SystemChecksStep.class @@ -0,0 +1,529 @@ +renderHeader(true); + $template->renderStatusMessage(_('Performing system checks'), '', 0); + + /* assert compatible version of PHP, we accept 4.3.0+ / 5.0.4+ */ + if (!function_exists('version_compare') || version_compare(phpversion(), '4.3.0', '<') + || (version_compare(phpversion(), '5.0.0', '>=') + && version_compare(phpversion(), '5.0.4', '<'))) { + $templateData['check'][] = + array('title' => _('PHP version >= 4.3.0 or >= 5.0.4'), + 'error' => true, + 'notice' => sprintf( + _("Error: Gallery 2 requires PHP version 4.3.0 or newer or 5.0.4 or " . + "newer. You have PHP version %s installed. Contact your webserver " . + "administrator to request an upgrade, available at the %sPHP " . + "website%s."), phpversion(), '', '')); + $failCount++; + } else { + $templateData['check'][] = + array('title' => _('PHP Version'), 'success' => true); + } + + /* assert that __FILE__ works correctly */ + if (!SystemChecksStep::CheckFileDirective()) { + $templateData['check'][] = + array('title' => _('FILE directive supported'), + 'error' => true, + 'notice' => _('Error: your PHP __FILE__ directive is not functioning ' . + 'correctly. Please file a support request with your ' . + 'webserver administrator or in the Gallery forums.')); + $failCount++; + } else { + $templateData['check'][] = + array('title' => _('FILE Directive'), 'success' => true); + } + + /* Make sure that safe mode is not enabled */ + if (GalleryUtilities::getPhpIniBool('safe_mode')) { + $templateData['check'][] = + array('title' => _('Safe mode disabled'), + 'error' => true, + 'notice' => _('Error: Your version of PHP is configured with safe mode ' . + 'enabled. You must disable safe mode before Gallery will run.')); + $failCount++; + } else { + $templateData['check'][] = + array('title' => _('Safe Mode'), 'success' => true); + } + + /* Make sure we have PCRE support */ + if (!function_exists('preg_match') || !function_exists('preg_replace')) { + $templateData['check'][] = + array('title' => _('Regular expressions'), + 'error' => true, + 'notice' => sprintf( + _('Error: Your PHP is configured without support for %sPerl Compatible ' . + 'Regular Expressions%s. You must enable these functions before ' . + 'Gallery will run.'), '', '')); + $failCount++; + } /* skip showing 'success' for this one */ + + /* Warning when exec() is disabled */ + if (in_array('exec', split(',\s*', ini_get('disable_functions')))) { + $templateData['check'][] = + array('title' => _('exec() allowed'), + 'warning' => true, + 'notice' => + _('Warning: The exec() function is disabled in your PHP by the disabled' . + '_functions parameter in php.ini. You won\'t be able to use modules ' . + 'that require external binaries (e.g. ImageMagick, NetPBM or Ffmpeg). ' . + 'This can only be set server-wide, so you will need to change it in the ' . + 'global php.ini.'), + ); + } else { + $templateData['check'][] = + array('title' => _('exec() allowed'), 'success' => true); + } + + /* Warning when set_time_limit() is disabled */ + if (in_array('set_time_limit', split(',\s*', ini_get('disable_functions')))) { + $timeLimit = ini_get('max_execution_time'); + $templateData['check'][] = + array('title' => _('set_time_limit() allowed'), + 'warning' => true, + 'notice' => sprintf( + _('Warning: The set_time_limit() function is disabled in your PHP by ' . + 'the disabled_functions parameter in php.ini. Gallery can ' . + 'function with this setting, but it will not operate reliably. ' . + 'Any operation that takes longer than %d seconds will fail (and in ' . + 'some cases just return a blank page) possibly leading to data ' . + 'corruption.'), $timeLimit), + ); + } else { + $templateData['check'][] = + array('title' => _('set_time_limit() allowed'), 'success' => true); + + /* Set the time limit large enough for the remaining checks (slow systems) */ + set_time_limit(180); + $setTimeLimitAvailable = true; + } + + $template->renderStatusMessage(_('Performing system checks'), '', 0.02); + + /* Make sure filesystem operations are allowed */ + $missingFilesystemFunctions = array(); + foreach (array('fopen', 'fclose', 'fread', 'fwrite', 'file', 'copy', 'rename', 'readfile', + 'file_get_contents', 'copy', 'move_uploaded_file', 'file_exists', 'tempnam', 'glob', + 'closedir', 'stat', 'unlink', 'rmdir', 'mkdir', 'getcwd', 'chdir', 'opendir', + 'readdir', 'chmod') as $function) { + if (!function_exists($function)) { + $missingFilesystemFunctions[] = $function; + } + } + if (!empty($missingFilesystemFunctions)) { + $templateData['check'][] = + array('title' => _('Filesystem Operations'), + 'error' => true, + 'notice' => sprintf( + _('Error: Essential filesystem operations are disabled in your PHP by ' . + 'the disabled_functions parameter in php.ini. You must allow ' . + 'these functions before Gallery will run. These functions are ' . + 'missing: %s.'), + implode(', ', $missingFilesystemFunctions))); + $failCount++; + } /* skip showing 'success' for this one */ + + /* Warning if memory_limit is set and is too low */ + $memoryLimit = ini_get('memory_limit'); + $title = sprintf('%s (%s)', _('Memory limit'), + ($memoryLimit == '' ? _('no limit') : $memoryLimit . 'b')); + $minimumMemoryLimit = 16; + if ($memoryLimit != '' + && ($this->_getBytes($memoryLimit) / (1024 * 1024)) < $minimumMemoryLimit) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => sprintf( + _('Warning: Your PHP is configured to limit the memory to %sb (' . + 'memory_limit parameter in php.ini). You should raise this limit ' . + 'to at least %sMB for proper Gallery operation.'), + $memoryLimit, $minimumMemoryLimit), + ); + $suggestedHtaccess[] = sprintf('php_value memory_limit %sM', $minimumMemoryLimit); + } else { + $templateData['check'][] = + array('title' => $title, 'success' => true); + } + + /* Warning if file_uploads are not allowed */ + if (! GalleryUtilities::getPhpIniBool('file_uploads')) { + $templateData['check'][] = + array('title' => _('File uploads allowed'), + 'warning' => true, + 'notice' => + _('Warning: Your PHP is configured not to allow file uploads (file_' . + 'uploads parameter in php.ini). You will need to enable this option ' . + 'if you want to upload files to your Gallery with a web browser.'), + ); + $suggestedHtaccess[] = 'php_flag file_uploads on'; + } else { + $templateData['check'][] = + array('title' => _('File uploads allowed'), 'success' => true); + } + + /* Warning if upload_max_filesize is less than 2M */ + $title = sprintf('%s (%sb)', _('Maximum upload size'), ini_get('upload_max_filesize')); + $minimumUploadsize = 2; + $uploadSize = $this->_getBytes(ini_get('upload_max_filesize')) / (1024 * 1024); + if ($uploadSize < $minimumUploadsize) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => sprintf( + _('Warning: Your PHP is configured to limit the size of file uploads to' . + ' %sb (upload_max_filesize parameter in php.ini). You should ' . + 'raise this limit to allow uploading bigger files.'), + ini_get('upload_max_filesize')), + ); + $suggestedHtaccess[] = sprintf('php_value upload_max_filesize %sM', $minimumUploadsize); + } else { + $templateData['check'][] = + array('title' => $title, 'success' => true); + } + + /* Warning if post_max_size is less than 2M */ + $title = sprintf('%s (%sb)', _('Maximum POST size'), ini_get('post_max_size')); + $minimumPostsize = 2; + $postSize = $this->_getBytes(ini_get('post_max_size')) / (1024 * 1024); + if ($postSize < $minimumPostsize) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => sprintf( + _('Warning: Your PHP is configured to limit the post data to a maximum ' . + 'of %sb (post_max_size parameter in php.ini). You should raise' . + ' this limit to allow uploading bigger files.'), + ini_get('post_max_size')), + ); + $suggestedHtaccess[] = sprintf('php_value post_max_size %sM', $minimumPostsize); + } else { + $templateData['check'][] = + array('title' => $title, 'success' => true); + } + + /* Check for gettext support */ + $title = _('Translation support'); + if (!function_exists('dgettext')) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => sprintf( + _('Your webserver does not support localization. To enable support for ' . + 'additional languages please instruct your system administrator to ' . + 'reconfigure PHP with the %sgettext%s option enabled.'), + '', '')); + } else if (!function_exists('bind_textdomain_codeset')) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => sprintf( + _('Your PHP is missing the function %sbind_textdomain_codeset%s. This ' . + 'means Gallery may display extended characters for some languages ' . + 'incorrectly.'), + '', '')); + } else if (!function_exists('dngettext')) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => sprintf( + _('Your PHP is missing the function %sdngettext%s. This means Gallery ' . + 'will be unable to translate plural forms.'), + '', '')); + } else { + $templateData['check'][] = array('title' => $title, 'success' => true); + } + + /* $x=$x[0] <--(an object) can crash PHP with zend.ze1_compatibility_mode ON */ + if (GalleryUtilities::getPhpIniBool('zend.ze1_compatibility_mode')) { + $templateData['check'][] = + array('title' => _('Zend compatibility mode'), + 'warning' => true, + 'notice' => sprintf( + _('Warning: Your PHP is configured with Zend ze1_compatibility_mode ' . + 'which can cause PHP to crash. Click here to test ' . + 'your PHP. If you see "SUCCESS" then your PHP is ok. If you get an ' . + 'error or no response then you must turn off ze1_compatibility_mode ' . + 'before proceeding.'), + INDEX_PHP . '?step=' . $this->_stepNumber . '&zendtest=1'), + ); + } /* skip showing 'success' for this one */ + + /* Warning if putenv is disabled */ + if (in_array('putenv', split(',\s*', ini_get('disable_functions')))) { + $templateData['check'][] = + array('title' => _('putenv() allowed'), + 'warning' => true, + 'notice' => + _('Warning: The putenv() function is disabled in your PHP by the ' . + 'disabled_functions parameter in php.ini. Gallery can function with ' . + 'this setting, but on some rare systems Gallery will be unable to run in ' . + 'other languages than the system language and English.'), + ); + } /* skip showing 'success' for this one */ + + /* Warning if output_buffering / handlers are enabled */ + $outputBuffers = array(); + foreach (array('output_buffering', 'zlib.output_compression') as $outputFunction) { + if (GalleryUtilities::getPhpIniBool($outputFunction) || + (int) ini_get($outputFunction) > 0) { + $outputBuffers[] = $outputFunction; + } + } + foreach (array('output_handler', 'zlib.output_handler') as $outputHandler) { + if (($value = ini_get($outputHandler)) && !empty($value)) { + $outputBuffers[] = $outputHandler; + } + } + if (!empty($outputBuffers)) { + $templateData['check'][] = + array('title' => _('Output buffering disabled'), + 'warning' => true, + 'notice' => sprintf( + _('Warning: Output buffering is enabled in your PHP by the %s ' . + 'parameter(s) in php.ini. Gallery can function with this setting - ' . + 'downloading files is even faster - but Gallery might be unable to ' . + 'serve large files (e.g. large videos) and run into the memory limit.' . + ' Also, some features like the progress bars might not work correctly' . + ' if output buffering is enabled unless ini_set() is allowed.'), + implode(', ', $outputBuffers)), + ); + } /* skip showing 'success' for this one */ + + $template->renderStatusMessage(_('Performing system checks'), '', 0.06); + + /* Check all files against MANIFEST */ + $title = _('Gallery file integrity'); + if (!SystemChecksStep::CheckFileDirective() || !empty($missingFilesystemFunctions)) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => _('Test skipped due to other errors.')); + } else { + /* Error if no themes are available */ + if (!SystemChecksStep::AssertThemeIsAvailable()) { + $templateData['check'][] = + array('title' => _('Theme available'), + 'error' => true, + 'notice' => sprintf( + _('Error: There must be at least one theme in the %s folder!'), + dirname(dirname(dirname(__FILE__))) + . DIRECTORY_SEPARATOR . 'themes') + ); + $failCount++; + } /* skip showing 'success' for this one */ + + /* Now check the MANIFEST files */ + $isSvnInstall = file_exists(dirname(__FILE__) . '/.svn'); + $manifest = SystemChecksStep::CheckManifest($template, $setTimeLimitAvailable); + if (!isset($manifest)) { + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => _('Manifest missing or inaccessible.')); + + $galleryStub->setConfig('systemchecks.fileintegrity', + 'Manifest missing or inaccessible.'); + } else if (empty($manifest['missing']) && empty($manifest['modified']) + && empty($manifest['shouldRemove'])) { + $templateData['check'][] = array('title' => $title, 'success' => true); + + $galleryStub->setConfig('systemchecks.fileintegrity', + 'Ok'); + } else { + ob_start(); + include(dirname(__FILE__) . '/../templates/ManifestSystemCheck.html'); + $notice = ob_get_contents(); + ob_end_clean(); + + $templateData['check'][] = + array('title' => $title, + 'warning' => true, + 'notice' => $notice); + + if (empty($manifest['missing']) && empty($manifest['modified'])) { + $galleryStub->setConfig('systemchecks.fileintegrity', + 'There are some old files'); + } else { + $galleryStub->setConfig('systemchecks.fileintegrity', + 'There are missing/modified files!'); + } + } + $galleryStub->setConfig('systemchecks.issvninstall', $isSvnInstall); + } + + $template->renderStatusMessage(_('Performing system checks'), '', 1); + $template->hideStatusBlock(); + + $templateData['suggestedHtaccess'] = join("\n", $suggestedHtaccess); + $templateData['bodyFile'] = 'SystemChecks.html'; + $this->setComplete($failCount == 0); + $this->setInError($failCount > 0); + $template->renderBodyAndFooter($templateData); + return false; + } + + function CheckFileDirective() { + if (strstr(__FILE__, 'install/steps/SystemChecksStep.class') || + strstr(__FILE__, '\\install\\steps\\SystemChecksStep.class')) { + return true; + } else { + return false; + } + } + + /** Verify that there is at least one themes/.../theme.inc file. */ + function AssertThemeIsAvailable() { + $themesFolder = dirname(dirname(dirname(__FILE__))) . '/themes/' ; + if (!file_exists($themesFolder)) { + return false; + } + $dh = opendir($themesFolder); + if (!$dh) { + return false; + } + while (false !== ($folder = readdir($dh))) { + if ($folder == '..' || $folder == '.') { + continue; + } + if (file_exists($themesFolder . $folder . '/theme.inc')) { + closedir($dh); + return true; + } + } + closedir($dh); + return false; + } + + function CheckManifest(&$statusMonitor, $useSetTimeLimit) { + $base = realpath(dirname(__FILE__) . '/../..') . '/'; + + if ($useSetTimeLimit) { + set_time_limit(180); + } + $manifest = GalleryUtilities::readManifest(); + if (empty($manifest)) { + return null; + } + + $statusMonitor->renderStatusMessage(_('Performing system checks'), '', 0.1); + if ($useSetTimeLimit) { + set_time_limit(180); + } + + $missing = $modified = $shouldRemove = array(); + $stepSize = max((int)(count($manifest) / 22), 1); + $i = 0; + foreach ($manifest as $file => $info) { + $i++; + if ($file == 'MANIFEST') { + continue; + } + $path = $base . $file; + + if ($i % $stepSize == 0) { + $statusMonitor->renderStatusMessage(_('Performing system checks'), '', + 0.12 + $i / $stepSize * 0.04); + if ($useSetTimeLimit) { + set_time_limit(180); + } + } + + if (!empty($info['removed'])) { + if (file_exists($path)) { + $shouldRemove[] = $file; + } + } else if (!file_exists($path)) { + $missing[] = $file; + } else { + /* + * Use size comparison instead of checksum for speed. We have + * two sizes, one calculated with unix eols, one with windows eols. + */ + $actualSize = filesize($path); + if ($actualSize != $info['size'] && $actualSize != $info['size_crlf']) { + /* This can be useful debug info */ + if (false) { + printf("%s (expected: %s/%s, actual: %s)
", $file, + $info['size'], $info['size_crlf'], $actualSize); + } + $modified[] = $file; + } + } + } + + return array('missing' => $missing, 'modified' => $modified, + 'shouldRemove' => $shouldRemove); + } +} +?> diff --git a/Source/gallery2/install/steps/WelcomeStep.class b/Source/gallery2/install/steps/WelcomeStep.class new file mode 100644 index 0000000..4d3a3ed --- /dev/null +++ b/Source/gallery2/install/steps/WelcomeStep.class @@ -0,0 +1,50 @@ +init($_POST['language'], true); + unset($gallery); + $_SESSION['language'] = $_POST['language']; + } + return true; + } + + function loadTemplateData(&$templateData) { + $templateData['totalSteps'] = count($GLOBALS['steps']) - 1; + $templateData['bodyFile'] = 'Welcome.html'; + } + + function isOptional() { + return true; + } +} +?> diff --git a/Source/gallery2/install/templates/AdminUserSetupRequest.html b/Source/gallery2/install/templates/AdminUserSetupRequest.html new file mode 100644 index 0000000..fc9ce54 --- /dev/null +++ b/Source/gallery2/install/templates/AdminUserSetupRequest.html @@ -0,0 +1,116 @@ +

+ + +
+

+ +

+
+ + +

+ +

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ +
+ +
+ + + + + + + + +
+ + + +
+ + + +
+ +
+ + + +
+ +

+ +

+ + + +

+ +

+ +
+ + +
+ +
+ + +
+
+ +
+
diff --git a/Source/gallery2/install/templates/AdminUserSetupSuccess.html b/Source/gallery2/install/templates/AdminUserSetupSuccess.html new file mode 100644 index 0000000..4946ed1 --- /dev/null +++ b/Source/gallery2/install/templates/AdminUserSetupSuccess.html @@ -0,0 +1,5 @@ +
+

+ +

+
diff --git a/Source/gallery2/install/templates/AuthenticateRequest.html b/Source/gallery2/install/templates/AuthenticateRequest.html new file mode 100644 index 0000000..3f909a8 --- /dev/null +++ b/Source/gallery2/install/templates/AuthenticateRequest.html @@ -0,0 +1,23 @@ +

+ +

+ %s directory and you're all set."), + '', + '', $templateData['authenticationDir']) ?> +

+ +

+ +

+ +
+
+ +
+
diff --git a/Source/gallery2/install/templates/AuthenticateSuccessful.html b/Source/gallery2/install/templates/AuthenticateSuccessful.html new file mode 100644 index 0000000..d6d6fea --- /dev/null +++ b/Source/gallery2/install/templates/AuthenticateSuccessful.html @@ -0,0 +1,5 @@ +
+

+ +

+
diff --git a/Source/gallery2/install/templates/CleanInstallRequest.html b/Source/gallery2/install/templates/CleanInstallRequest.html new file mode 100644 index 0000000..c59207d --- /dev/null +++ b/Source/gallery2/install/templates/CleanInstallRequest.html @@ -0,0 +1,24 @@ +

+ + +

+ +

+ +
+

+ +

+
+
+ +
+ +
+
+ +
+
+ +
+
diff --git a/Source/gallery2/install/templates/CreateConfigFileFailed.html b/Source/gallery2/install/templates/CreateConfigFileFailed.html new file mode 100644 index 0000000..9ba7788 --- /dev/null +++ b/Source/gallery2/install/templates/CreateConfigFileFailed.html @@ -0,0 +1,17 @@ +

Create Config File

+ +
+

+ +

+
+ +

+ +

+ +
+
+ +
+
diff --git a/Source/gallery2/install/templates/CreateConfigFileInstructions.html b/Source/gallery2/install/templates/CreateConfigFileInstructions.html new file mode 100644 index 0000000..c9db6b4 --- /dev/null +++ b/Source/gallery2/install/templates/CreateConfigFileInstructions.html @@ -0,0 +1,38 @@ +

+ + +
+

+ +

+
+ + +

+ config.php in your %s directory. This is a very important file that gives Gallery all the information that it needs to operate. After we create it, you can read through this file and make changes to it if you want."), $templateData['galleryDir']) ?> +

+ +

+ + %s directory called config.php. You must make sure that the webserver will be able to write to it."), $templateData['galleryDir']) ?> + +

+

+
 $ touch config.php 
$ chmod 666 config.php
+
+ + +
+

Windows

+
  
+
+ + + +

+ +
+
+ +
+
diff --git a/Source/gallery2/install/templates/CreateConfigFileSuccess.html b/Source/gallery2/install/templates/CreateConfigFileSuccess.html new file mode 100644 index 0000000..d00013e --- /dev/null +++ b/Source/gallery2/install/templates/CreateConfigFileSuccess.html @@ -0,0 +1,9 @@ +
+

+ +

+
+ +

+ config.php in your gallery2 directory. You can read through this file and make changes to it if you want. Be careful, though -- if you make mistakes in that file then Gallery won't work properly!") ?> +

diff --git a/Source/gallery2/install/templates/DatabaseSetupRequest.html b/Source/gallery2/install/templates/DatabaseSetupRequest.html new file mode 100644 index 0000000..ced8998 --- /dev/null +++ b/Source/gallery2/install/templates/DatabaseSetupRequest.html @@ -0,0 +1,138 @@ +

+ +

+ + +
+ +
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+ +
+
+ + + + +
+ +
+ +
+ +
+ +
+
+ +
+
+ +
+
+ +
+
+
+ + +
+

+ +

+
+
+ +
+ + + +
+ +
+ + +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ diff --git a/Source/gallery2/install/templates/DatabaseSetupSuccess.html b/Source/gallery2/install/templates/DatabaseSetupSuccess.html new file mode 100644 index 0000000..7bd5aca --- /dev/null +++ b/Source/gallery2/install/templates/DatabaseSetupSuccess.html @@ -0,0 +1,5 @@ +
+

+ +

+
diff --git a/Source/gallery2/install/templates/Finished.html b/Source/gallery2/install/templates/Finished.html new file mode 100644 index 0000000..3bae95b --- /dev/null +++ b/Source/gallery2/install/templates/Finished.html @@ -0,0 +1,17 @@ +

+ +

+ +

+ + +
+
+ +
+
+ +

+ ', '', '' . $templateData['galleryDir'] . '') ?> +

+ diff --git a/Source/gallery2/install/templates/Header.html b/Source/gallery2/install/templates/Header.html new file mode 100644 index 0000000..44627c6 --- /dev/null +++ b/Source/gallery2/install/templates/Header.html @@ -0,0 +1,24 @@ + + + Gallery Installer + + + + + + + + + +
+ ? + + +
+ X + + +
+ + \ No newline at end of file diff --git a/Source/gallery2/install/templates/InstallCoreModuleError.html b/Source/gallery2/install/templates/InstallCoreModuleError.html new file mode 100644 index 0000000..6e3a631 --- /dev/null +++ b/Source/gallery2/install/templates/InstallCoreModuleError.html @@ -0,0 +1,28 @@ +
+

+
+ +

+ +

+ +
    +
  1. + +
  2. + +
  3. + ', '', '', ''); ?> +
  4. + ', ''); ?> +
  5. +
+ +

+ +

+
+ +
+ +
diff --git a/Source/gallery2/install/templates/InstallCoreModuleSuccess.html b/Source/gallery2/install/templates/InstallCoreModuleSuccess.html new file mode 100644 index 0000000..ffa2c12 --- /dev/null +++ b/Source/gallery2/install/templates/InstallCoreModuleSuccess.html @@ -0,0 +1,9 @@ +
+

+ +

+
+ +

+ +

diff --git a/Source/gallery2/install/templates/InstallOtherModulesRequest.html b/Source/gallery2/install/templates/InstallOtherModulesRequest.html new file mode 100644 index 0000000..0e338e5 --- /dev/null +++ b/Source/gallery2/install/templates/InstallOtherModulesRequest.html @@ -0,0 +1,114 @@ + +
+ +

+ + +

+ + + +

+ +

+

+ +

+ + +
+ + + + + + + + $modules): ?> + + + + + $module): ?> + + + > + + + + + + + + + + + + + + +
+   + + + + + + +

+ + disabled="disabled" + + /> + + + + + + + getVersion() ?> + + + + getDescription() ?> + ' . _('(Incompatible with this Gallery version)') ?> + +
+ + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
+ + diff --git a/Source/gallery2/install/templates/InstallOtherModulesSuccess.html b/Source/gallery2/install/templates/InstallOtherModulesSuccess.html new file mode 100644 index 0000000..3488cf6 --- /dev/null +++ b/Source/gallery2/install/templates/InstallOtherModulesSuccess.html @@ -0,0 +1,45 @@ + +
+ +

+ + +

+ + +

+ login.txt in the %s directory on your webserver (that's the same directory where main.php is located). It must contain the following randomly generated characters:"), $templateData['authenticationDir']); ?> +

+ +

getUniqueKey(); ?>

+ +
    + $moduleName): ?> +
  • %s module was installed, but needs configuration to be activated"), $moduleName) ?>
  • + +
+

+ Modules view and configure the above listed modules."); ?> +

+ + + +
    + $moduleName): ?> +
  • %s module successfully"), $moduleName) ?>
  • + +
+ + + +
+
+ +
+ +
+ +
+
+ + + +
+

+
+
+ diff --git a/Source/gallery2/install/templates/MainPage.html b/Source/gallery2/install/templates/MainPage.html new file mode 100644 index 0000000..a45c9db --- /dev/null +++ b/Source/gallery2/install/templates/MainPage.html @@ -0,0 +1,164 @@ + + + + + <?php print _('Welcome to the Gallery Installer') ?> + + + + + isRightToLeft()) print ' style="direction:rtl"' ?>> +
+ + +s because Internet Explorer doesn't start rendering a + * table before it receives the closing tag. If the whole page was in a single , + * IE would not display the progress bar at all (because as soon as the progress bar reaches 100%, + * we hide it and display a success message). + */ + ?> + +
+ + + + + +
+
+

+

 

+

+

+

 

+

+ + + + + + +
  
+
+ + +
+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
  
+

+ + +
+

+ + + 2) print "
\n" ?> + +

+
+ + + +
+

+ +
+ +

+
+ + + + + isComplete() && !$currentStep->isLastStep()): ?> +
+ isRedoable()): ?> + +
+ + + +
+ + + + +
+ +
+
+ +
+
+
+ + + diff --git a/Source/gallery2/install/templates/ManifestSystemCheck.html b/Source/gallery2/install/templates/ManifestSystemCheck.html new file mode 100644 index 0000000..c3ae723 --- /dev/null +++ b/Source/gallery2/install/templates/ManifestSystemCheck.html @@ -0,0 +1,62 @@ + + + + + + + + + + + +
+ + + + + + +

+ + + + + + + + + + + +
+ + + + + + +

+ + + + + + + + + + +
+ + + diff --git a/Source/gallery2/install/templates/Multisite.html b/Source/gallery2/install/templates/Multisite.html new file mode 100644 index 0000000..ca23d7e --- /dev/null +++ b/Source/gallery2/install/templates/Multisite.html @@ -0,0 +1,118 @@ + + + + + + + + + +
+

+ +

+
+ + +

+

+ +

+
+
+ > + +
+ ' . $templateData['galleryDir'] . '', '' . $templateData['galleryUrl'] . '') ?> +
+
+ > + +
+ +
+ Multisite Documentation') ?> +
+
+ +
+ + + + + + + open_basedir setting in your PHP configuration to allow a new directory.'); ?> +
    + +
  • + +
+ open_basedir setting so that your virtual hosts can access each other.'); ?> + + + + + + + + +
+
+ + +
+ +
+ + +
+ + +
+
+main.php
+index.php
+embed.php
+upgrade/index.php
+lib/support/index.php (optional)
+
+
+
+
+ + diff --git a/Source/gallery2/install/templates/MultisiteSuccess.html b/Source/gallery2/install/templates/MultisiteSuccess.html new file mode 100644 index 0000000..63d2296 --- /dev/null +++ b/Source/gallery2/install/templates/MultisiteSuccess.html @@ -0,0 +1,10 @@ +
+

+ +

+
diff --git a/Source/gallery2/install/templates/NavBar.html b/Source/gallery2/install/templates/NavBar.html new file mode 100644 index 0000000..05e4606 --- /dev/null +++ b/Source/gallery2/install/templates/NavBar.html @@ -0,0 +1,40 @@ +
+ + + + + + + + + + +
+ +
+
\ No newline at end of file diff --git a/Source/gallery2/install/templates/Secure.html b/Source/gallery2/install/templates/Secure.html new file mode 100644 index 0000000..e0a1219 --- /dev/null +++ b/Source/gallery2/install/templates/Secure.html @@ -0,0 +1,52 @@ +
> +

+ +

+
+ + + + +

+ +

+ +
+
 
+
+ + +

+ +

+ +
+
 
+
+ + +

+ +

+ + + +

+ +

+ + + +
+ ', '', '') ?> +
+ + +
+
+ + + +
+
+ diff --git a/Source/gallery2/install/templates/StorageSetupRequest.html b/Source/gallery2/install/templates/StorageSetupRequest.html new file mode 100644 index 0000000..c30da77 --- /dev/null +++ b/Source/gallery2/install/templates/StorageSetupRequest.html @@ -0,0 +1,149 @@ + + + + + + + + + +
+

+ +

+
+ + +

+ +

+ ', + '', $templateData['suggested_obfuscated_g2data_name']); ?> +

+ +
+
+ ', + ''); ?> + +

+ +

+ + + +
+ + +

+ +

+ + +

+ +

+ + +
+ + + + + + + + + + + + + + + + + ', + ''); ?> + + + ', + ''); ?> + +
+ + + + + + +
+ +

+ +
+ + + +

+ + +
+

+
 $ mkdir 
$ chmod 777
+
+ +
+

+
+
 ftp> cd 
ftp> mkdir
ftp> chmod 777
+
+ + + +
+

Windows

+
 C:\> mkdir 
+
+ + + +

+ dir.php containing the following code in it and put it into your data directory.') ?> +

+
+
 <?php print system("pwd"); ?> 
+
+

+ http://your.server.com/g2data/dir.php'); ?> +

+

+ Note: This requires that your data directory is web accessible, which we don\'t recommend because it circumvents our image firewall. Once you figure out the path this way, we recommend that you move your data directory outside of your web accessible area and then update the path here accordingly.'); ?> +

+

+ Note: Don\'t forget to delete dir.php when you\'re done!'); ?> +

+ + +
+ ', '') ?> +
+ +
+
+ +
+
diff --git a/Source/gallery2/install/templates/StorageSetupSuccess.html b/Source/gallery2/install/templates/StorageSetupSuccess.html new file mode 100644 index 0000000..8786119 --- /dev/null +++ b/Source/gallery2/install/templates/StorageSetupSuccess.html @@ -0,0 +1,5 @@ +
+

+ +

+
diff --git a/Source/gallery2/install/templates/SystemChecks.html b/Source/gallery2/install/templates/SystemChecks.html new file mode 100644 index 0000000..04c1366 --- /dev/null +++ b/Source/gallery2/install/templates/SystemChecks.html @@ -0,0 +1,39 @@ +

+ +
+ + + + + + + + + + + + + + +
+ + + +

+ +

+ +

+ +
+ +
+ + +

+
+
+
+ + +
diff --git a/Source/gallery2/install/templates/VersionCheckFailed.html b/Source/gallery2/install/templates/VersionCheckFailed.html new file mode 100644 index 0000000..f5aa359 --- /dev/null +++ b/Source/gallery2/install/templates/VersionCheckFailed.html @@ -0,0 +1,61 @@ +

+ + +
+

+ +

+
+ +
+

+ +

+
+ + +

+ +

+ +

+ +

+ + + + + + + + + + + +
+ + + + + +
+ + + + + +
+ + + +
+
+ +
+
+ +

+ ', '', '' . $templateData['galleryDir'] . '') ?> +

+ + diff --git a/Source/gallery2/install/templates/Welcome.html b/Source/gallery2/install/templates/Welcome.html new file mode 100644 index 0000000..7804b2b --- /dev/null +++ b/Source/gallery2/install/templates/Welcome.html @@ -0,0 +1,32 @@ +

+

+ ', '') ?> +

+ +

+ + + + +

+ + +
+
+ +
+
diff --git a/Source/gallery2/lib/JSON/JSON.php b/Source/gallery2/lib/JSON/JSON.php new file mode 100644 index 0000000..667ca69 --- /dev/null +++ b/Source/gallery2/lib/JSON/JSON.php @@ -0,0 +1,805 @@ + + * @author Matt Knapp + * @author Brett Stimmerman + * @copyright 2005 Michal Migurski + * @version CVS: $Id: JSON.php 15342 2006-12-01 21:14:46Z andy_st $ + * @license http://www.opensource.org/licenses/bsd-license.php + * @link http://pear.php.net/pepr/pepr-proposal-show.php?id=198 + */ + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_SLICE', 1); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_STR', 2); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_ARR', 3); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_OBJ', 4); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_CMT', 5); + +/** + * Behavior switch for Services_JSON::decode() + */ +define('SERVICES_JSON_LOOSE_TYPE', 16); + +/** + * Behavior switch for Services_JSON::decode() + */ +define('SERVICES_JSON_SUPPRESS_ERRORS', 32); + +/** + * Converts to and from JSON format. + * + * Brief example of use: + * + * + * // create a new instance of Services_JSON + * $json = new Services_JSON(); + * + * // convert a complexe value to JSON notation, and send it to the browser + * $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4))); + * $output = $json->encode($value); + * + * print($output); + * // prints: ["foo","bar",[1,2,"baz"],[3,[4]]] + * + * // accept incoming POST data, assumed to be in JSON notation + * $input = file_get_contents('php://input', 1000000); + * $value = $json->decode($input); + * + */ +class Services_JSON +{ + /** + * constructs a new JSON instance + * + * @param int $use object behavior flags; combine with boolean-OR + * + * possible values: + * - SERVICES_JSON_LOOSE_TYPE: loose typing. + * "{...}" syntax creates associative arrays + * instead of objects in decode(). + * - SERVICES_JSON_SUPPRESS_ERRORS: error suppression. + * Values which can't be encoded (e.g. resources) + * appear as NULL instead of throwing errors. + * By default, a deeply-nested resource will + * bubble up with an error, so all return values + * from encode() should be checked with isError() + */ + function Services_JSON($use = 0) + { + $this->use = $use; + } + + /** + * convert a string from one UTF-16 char to one UTF-8 char + * + * Normally should be handled by mb_convert_encoding, but + * provides a slower PHP-only method for installations + * that lack the multibye string extension. + * + * @param string $utf16 UTF-16 character + * @return string UTF-8 character + * @access private + */ + function utf162utf8($utf16) + { + // oh please oh please oh please oh please oh please + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($utf16, 'UTF-8', 'UTF-16'); + } + + $bytes = (ord($utf16{0}) << 8) | ord($utf16{1}); + + switch(true) { + case ((0x7F & $bytes) == $bytes): + // this case should never be reached, because we are in ASCII range + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0x7F & $bytes); + + case (0x07FF & $bytes) == $bytes: + // return a 2-byte UTF-8 character + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0xC0 | (($bytes >> 6) & 0x1F)) + . chr(0x80 | ($bytes & 0x3F)); + + case (0xFFFF & $bytes) == $bytes: + // return a 3-byte UTF-8 character + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0xE0 | (($bytes >> 12) & 0x0F)) + . chr(0x80 | (($bytes >> 6) & 0x3F)) + . chr(0x80 | ($bytes & 0x3F)); + } + + // ignoring UTF-32 for now, sorry + return ''; + } + + /** + * convert a string from one UTF-8 char to one UTF-16 char + * + * Normally should be handled by mb_convert_encoding, but + * provides a slower PHP-only method for installations + * that lack the multibye string extension. + * + * @param string $utf8 UTF-8 character + * @return string UTF-16 character + * @access private + */ + function utf82utf16($utf8) + { + // oh please oh please oh please oh please oh please + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($utf8, 'UTF-16', 'UTF-8'); + } + + switch(strlen($utf8)) { + case 1: + // this case should never be reached, because we are in ASCII range + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return $utf8; + + case 2: + // return a UTF-16 character from a 2-byte UTF-8 char + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0x07 & (ord($utf8{0}) >> 2)) + . chr((0xC0 & (ord($utf8{0}) << 6)) + | (0x3F & ord($utf8{1}))); + + case 3: + // return a UTF-16 character from a 3-byte UTF-8 char + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr((0xF0 & (ord($utf8{0}) << 4)) + | (0x0F & (ord($utf8{1}) >> 2))) + . chr((0xC0 & (ord($utf8{1}) << 6)) + | (0x7F & ord($utf8{2}))); + } + + // ignoring UTF-32 for now, sorry + return ''; + } + + /** + * encodes an arbitrary variable into JSON format + * + * @param mixed $var any number, boolean, string, array, or object to be encoded. + * see argument 1 to Services_JSON() above for array-parsing behavior. + * if var is a strng, note that encode() always expects it + * to be in ASCII or UTF-8 format! + * + * @return mixed JSON string representation of input var or an error if a problem occurs + * @access public + */ + function encode($var) + { + switch (gettype($var)) { + case 'boolean': + return $var ? 'true' : 'false'; + + case 'NULL': + return 'null'; + + case 'integer': + return (int) $var; + + case 'double': + case 'float': + return (float) $var; + + case 'string': + // STRINGS ARE EXPECTED TO BE IN ASCII OR UTF-8 FORMAT + $ascii = ''; + $strlen_var = strlen($var); + + /* + * Iterate over every character in the string, + * escaping with a slash or encoding to UTF-8 where necessary + */ + for ($c = 0; $c < $strlen_var; ++$c) { + + $ord_var_c = ord($var{$c}); + + switch (true) { + case $ord_var_c == 0x08: + $ascii .= '\b'; + break; + case $ord_var_c == 0x09: + $ascii .= '\t'; + break; + case $ord_var_c == 0x0A: + $ascii .= '\n'; + break; + case $ord_var_c == 0x0C: + $ascii .= '\f'; + break; + case $ord_var_c == 0x0D: + $ascii .= '\r'; + break; + + case $ord_var_c == 0x22: + case $ord_var_c == 0x2F: + case $ord_var_c == 0x5C: + // double quote, slash, slosh + $ascii .= '\\'.$var{$c}; + break; + + case (($ord_var_c >= 0x20) && ($ord_var_c <= 0x7F)): + // characters U-00000000 - U-0000007F (same as ASCII) + $ascii .= $var{$c}; + break; + + case (($ord_var_c & 0xE0) == 0xC0): + // characters U-00000080 - U-000007FF, mask 110XXXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, ord($var{$c + 1})); + $c += 1; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xF0) == 0xE0): + // characters U-00000800 - U-0000FFFF, mask 1110XXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2})); + $c += 2; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xF8) == 0xF0): + // characters U-00010000 - U-001FFFFF, mask 11110XXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3})); + $c += 3; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xFC) == 0xF8): + // characters U-00200000 - U-03FFFFFF, mask 111110XX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3}), + ord($var{$c + 4})); + $c += 4; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xFE) == 0xFC): + // characters U-04000000 - U-7FFFFFFF, mask 1111110X + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3}), + ord($var{$c + 4}), + ord($var{$c + 5})); + $c += 5; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + } + } + + return '"'.$ascii.'"'; + + case 'array': + /* + * As per JSON spec if any array key is not an integer + * we must treat the the whole array as an object. We + * also try to catch a sparsely populated associative + * array with numeric keys here because some JS engines + * will create an array with empty indexes up to + * max_index which can cause memory issues and because + * the keys, which may be relevant, will be remapped + * otherwise. + * + * As per the ECMA and JSON specification an object may + * have any string as a property. Unfortunately due to + * a hole in the ECMA specification if the key is a + * ECMA reserved word or starts with a digit the + * parameter is only accessible using ECMAScript's + * bracket notation. + */ + + // treat as a JSON object + if (is_array($var) && count($var) && (array_keys($var) !== range(0, sizeof($var) - 1))) { + $properties = array_map(array($this, 'name_value'), + array_keys($var), + array_values($var)); + + foreach($properties as $property) { + if(Services_JSON::isError($property)) { + return $property; + } + } + + return '{' . join(',', $properties) . '}'; + } + + // treat it like a regular array + $elements = array_map(array($this, 'encode'), $var); + + foreach($elements as $element) { + if(Services_JSON::isError($element)) { + return $element; + } + } + + return '[' . join(',', $elements) . ']'; + + case 'object': + $vars = get_object_vars($var); + + $properties = array_map(array($this, 'name_value'), + array_keys($vars), + array_values($vars)); + + foreach($properties as $property) { + if(Services_JSON::isError($property)) { + return $property; + } + } + + return '{' . join(',', $properties) . '}'; + + default: + return ($this->use & SERVICES_JSON_SUPPRESS_ERRORS) + ? 'null' + : new Services_JSON_Error(gettype($var)." can not be encoded as JSON string"); + } + } + + /** + * array-walking function for use in generating JSON-formatted name-value pairs + * + * @param string $name name of key to use + * @param mixed $value reference to an array element to be encoded + * + * @return string JSON-formatted name-value pair, like '"name":value' + * @access private + */ + function name_value($name, $value) + { + $encoded_value = $this->encode($value); + + if(Services_JSON::isError($encoded_value)) { + return $encoded_value; + } + + return $this->encode(strval($name)) . ':' . $encoded_value; + } + + /** + * reduce a string by removing leading and trailing comments and whitespace + * + * @param $str string string value to strip of comments and whitespace + * + * @return string string value stripped of comments and whitespace + * @access private + */ + function reduce_string($str) + { + $str = preg_replace(array( + + // eliminate single line comments in '// ...' form + '#^\s*//(.+)$#m', + + // eliminate multi-line comments in '/* ... */' form, at start of string + '#^\s*/\*(.+)\*/#Us', + + // eliminate multi-line comments in '/* ... */' form, at end of string + '#/\*(.+)\*/\s*$#Us' + + ), '', $str); + + // eliminate extraneous space + return trim($str); + } + + /** + * decodes a JSON string into appropriate variable + * + * @param string $str JSON-formatted string + * + * @return mixed number, boolean, string, array, or object + * corresponding to given JSON input string. + * See argument 1 to Services_JSON() above for object-output behavior. + * Note that decode() always returns strings + * in ASCII or UTF-8 format! + * @access public + */ + function decode($str) + { + $str = $this->reduce_string($str); + + switch (strtolower($str)) { + case 'true': + return true; + + case 'false': + return false; + + case 'null': + return null; + + default: + $m = array(); + + if (is_numeric($str)) { + // Lookie-loo, it's a number + + // This would work on its own, but I'm trying to be + // good about returning integers where appropriate: + // return (float)$str; + + // Return float or int, as appropriate + return ((float)$str == (integer)$str) + ? (integer)$str + : (float)$str; + + } elseif (preg_match('/^("|\').*(\1)$/s', $str, $m) && $m[1] == $m[2]) { + // STRINGS RETURNED IN UTF-8 FORMAT + $delim = substr($str, 0, 1); + $chrs = substr($str, 1, -1); + $utf8 = ''; + $strlen_chrs = strlen($chrs); + + for ($c = 0; $c < $strlen_chrs; ++$c) { + + $substr_chrs_c_2 = substr($chrs, $c, 2); + $ord_chrs_c = ord($chrs{$c}); + + switch (true) { + case $substr_chrs_c_2 == '\b': + $utf8 .= chr(0x08); + ++$c; + break; + case $substr_chrs_c_2 == '\t': + $utf8 .= chr(0x09); + ++$c; + break; + case $substr_chrs_c_2 == '\n': + $utf8 .= chr(0x0A); + ++$c; + break; + case $substr_chrs_c_2 == '\f': + $utf8 .= chr(0x0C); + ++$c; + break; + case $substr_chrs_c_2 == '\r': + $utf8 .= chr(0x0D); + ++$c; + break; + + case $substr_chrs_c_2 == '\\"': + case $substr_chrs_c_2 == '\\\'': + case $substr_chrs_c_2 == '\\\\': + case $substr_chrs_c_2 == '\\/': + if (($delim == '"' && $substr_chrs_c_2 != '\\\'') || + ($delim == "'" && $substr_chrs_c_2 != '\\"')) { + $utf8 .= $chrs{++$c}; + } + break; + + case preg_match('/\\\u[0-9A-F]{4}/i', substr($chrs, $c, 6)): + // single, escaped unicode character + $utf16 = chr(hexdec(substr($chrs, ($c + 2), 2))) + . chr(hexdec(substr($chrs, ($c + 4), 2))); + $utf8 .= $this->utf162utf8($utf16); + $c += 5; + break; + + case ($ord_chrs_c >= 0x20) && ($ord_chrs_c <= 0x7F): + $utf8 .= $chrs{$c}; + break; + + case ($ord_chrs_c & 0xE0) == 0xC0: + // characters U-00000080 - U-000007FF, mask 110XXXXX + //see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 2); + ++$c; + break; + + case ($ord_chrs_c & 0xF0) == 0xE0: + // characters U-00000800 - U-0000FFFF, mask 1110XXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 3); + $c += 2; + break; + + case ($ord_chrs_c & 0xF8) == 0xF0: + // characters U-00010000 - U-001FFFFF, mask 11110XXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 4); + $c += 3; + break; + + case ($ord_chrs_c & 0xFC) == 0xF8: + // characters U-00200000 - U-03FFFFFF, mask 111110XX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 5); + $c += 4; + break; + + case ($ord_chrs_c & 0xFE) == 0xFC: + // characters U-04000000 - U-7FFFFFFF, mask 1111110X + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 6); + $c += 5; + break; + + } + + } + + return $utf8; + + } elseif (preg_match('/^\[.*\]$/s', $str) || preg_match('/^\{.*\}$/s', $str)) { + // array, or object notation + + if ($str{0} == '[') { + $stk = array(SERVICES_JSON_IN_ARR); + $arr = array(); + } else { + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $stk = array(SERVICES_JSON_IN_OBJ); + $obj = array(); + } else { + $stk = array(SERVICES_JSON_IN_OBJ); + $obj = new stdClass(); + } + } + + array_push($stk, array('what' => SERVICES_JSON_SLICE, + 'where' => 0, + 'delim' => false)); + + $chrs = substr($str, 1, -1); + $chrs = $this->reduce_string($chrs); + + if ($chrs == '') { + if (reset($stk) == SERVICES_JSON_IN_ARR) { + return $arr; + + } else { + return $obj; + + } + } + + //print("\nparsing {$chrs}\n"); + + $strlen_chrs = strlen($chrs); + + for ($c = 0; $c <= $strlen_chrs; ++$c) { + + $top = end($stk); + $substr_chrs_c_2 = substr($chrs, $c, 2); + + if (($c == $strlen_chrs) || (($chrs{$c} == ',') && ($top['what'] == SERVICES_JSON_SLICE))) { + // found a comma that is not inside a string, array, etc., + // OR we've reached the end of the character list + $slice = substr($chrs, $top['where'], ($c - $top['where'])); + array_push($stk, array('what' => SERVICES_JSON_SLICE, 'where' => ($c + 1), 'delim' => false)); + //print("Found split at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + if (reset($stk) == SERVICES_JSON_IN_ARR) { + // we are in an array, so just push an element onto the stack + array_push($arr, $this->decode($slice)); + + } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) { + // we are in an object, so figure + // out the property name and set an + // element in an associative array, + // for now + $parts = array(); + + if (preg_match('/^\s*(["\'].*[^\\\]["\'])\s*:\s*(\S.*),?$/Uis', $slice, $parts)) { + // "name":value pair + $key = $this->decode($parts[1]); + $val = $this->decode($parts[2]); + + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $obj[$key] = $val; + } else { + $obj->$key = $val; + } + } elseif (preg_match('/^\s*(\w+)\s*:\s*(\S.*),?$/Uis', $slice, $parts)) { + // name:value pair, where name is unquoted + $key = $parts[1]; + $val = $this->decode($parts[2]); + + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $obj[$key] = $val; + } else { + $obj->$key = $val; + } + } + + } + + } elseif ((($chrs{$c} == '"') || ($chrs{$c} == "'")) && ($top['what'] != SERVICES_JSON_IN_STR)) { + // found a quote, and we are not inside a string + array_push($stk, array('what' => SERVICES_JSON_IN_STR, 'where' => $c, 'delim' => $chrs{$c})); + //print("Found start of string at {$c}\n"); + + } elseif (($chrs{$c} == $top['delim']) && + ($top['what'] == SERVICES_JSON_IN_STR) && + (($chrs{$c - 1} != '\\') || + ($chrs{$c - 1} == '\\' && $chrs{$c - 2} == '\\'))) { + // found a quote, we're in a string, and it's not escaped + array_pop($stk); + //print("Found end of string at {$c}: ".substr($chrs, $top['where'], (1 + 1 + $c - $top['where']))."\n"); + + } elseif (($chrs{$c} == '[') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a left-bracket, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_ARR, 'where' => $c, 'delim' => false)); + //print("Found start of array at {$c}\n"); + + } elseif (($chrs{$c} == ']') && ($top['what'] == SERVICES_JSON_IN_ARR)) { + // found a right-bracket, and we're in an array + array_pop($stk); + //print("Found end of array at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } elseif (($chrs{$c} == '{') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a left-brace, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_OBJ, 'where' => $c, 'delim' => false)); + //print("Found start of object at {$c}\n"); + + } elseif (($chrs{$c} == '}') && ($top['what'] == SERVICES_JSON_IN_OBJ)) { + // found a right-brace, and we're in an object + array_pop($stk); + //print("Found end of object at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } elseif (($substr_chrs_c_2 == '/*') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a comment start, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_CMT, 'where' => $c, 'delim' => false)); + $c++; + //print("Found start of comment at {$c}\n"); + + } elseif (($substr_chrs_c_2 == '*/') && ($top['what'] == SERVICES_JSON_IN_CMT)) { + // found a comment end, and we're in one now + array_pop($stk); + $c++; + + for ($i = $top['where']; $i <= $c; ++$i) + $chrs = substr_replace($chrs, ' ', $i, 1); + + //print("Found end of comment at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } + + } + + if (reset($stk) == SERVICES_JSON_IN_ARR) { + return $arr; + + } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) { + return $obj; + + } + + } + } + } + + /** + * @todo Ultimately, this should just call PEAR::isError() + */ + function isError($data, $code = null) + { + if (class_exists('pear')) { + return PEAR::isError($data, $code); + } elseif (is_object($data) && (get_class($data) == 'services_json_error' || + is_subclass_of($data, 'services_json_error'))) { + return true; + } + + return false; + } +} + +if (class_exists('PEAR_Error')) { + + class Services_JSON_Error extends PEAR_Error + { + function Services_JSON_Error($message = 'unknown error', $code = null, + $mode = null, $options = null, $userinfo = null) + { + parent::PEAR_Error($message, $code, $mode, $options, $userinfo); + } + } + +} else { + + /** + * @todo Ultimately, this class shall be descended from PEAR_Error + */ + class Services_JSON_Error + { + function Services_JSON_Error($message = 'unknown error', $code = null, + $mode = null, $options = null, $userinfo = null) + { + + } + } + +} + +?> diff --git a/Source/gallery2/lib/adodb/adodb-error.inc.php b/Source/gallery2/lib/adodb/adodb-error.inc.php new file mode 100644 index 0000000..e35b04e --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb-error.inc.php @@ -0,0 +1,258 @@ + DB_ERROR_NOSUCHTABLE, + '/Relation [\"\'].*[\"\'] already exists|Cannot insert a duplicate key into (a )?unique index.*/' => DB_ERROR_ALREADY_EXISTS, + '/divide by zero$/' => DB_ERROR_DIVZERO, + '/pg_atoi: error in .*: can\'t parse /' => DB_ERROR_INVALID_NUMBER, + '/ttribute [\"\'].*[\"\'] not found|Relation [\"\'].*[\"\'] does not have attribute [\"\'].*[\"\']/' => DB_ERROR_NOSUCHFIELD, + '/parser: parse error at or near \"/' => DB_ERROR_SYNTAX, + '/referential integrity violation/' => DB_ERROR_CONSTRAINT, + '/Relation [\"\'].*[\"\'] already exists|Cannot insert a duplicate key into (a )?unique index.*|duplicate key violates unique constraint/' + => DB_ERROR_ALREADY_EXISTS + ); + reset($error_regexps); + while (list($regexp,$code) = each($error_regexps)) { + if (preg_match($regexp, $errormsg)) { + return $code; + } + } + // Fall back to DB_ERROR if there was no mapping. + return DB_ERROR; +} + +function adodb_error_odbc() +{ +static $MAP = array( + '01004' => DB_ERROR_TRUNCATED, + '07001' => DB_ERROR_MISMATCH, + '21S01' => DB_ERROR_MISMATCH, + '21S02' => DB_ERROR_MISMATCH, + '22003' => DB_ERROR_INVALID_NUMBER, + '22008' => DB_ERROR_INVALID_DATE, + '22012' => DB_ERROR_DIVZERO, + '23000' => DB_ERROR_CONSTRAINT, + '24000' => DB_ERROR_INVALID, + '34000' => DB_ERROR_INVALID, + '37000' => DB_ERROR_SYNTAX, + '42000' => DB_ERROR_SYNTAX, + 'IM001' => DB_ERROR_UNSUPPORTED, + 'S0000' => DB_ERROR_NOSUCHTABLE, + 'S0001' => DB_ERROR_NOT_FOUND, + 'S0002' => DB_ERROR_NOSUCHTABLE, + 'S0011' => DB_ERROR_ALREADY_EXISTS, + 'S0012' => DB_ERROR_NOT_FOUND, + 'S0021' => DB_ERROR_ALREADY_EXISTS, + 'S0022' => DB_ERROR_NOT_FOUND, + 'S1000' => DB_ERROR_NOSUCHTABLE, + 'S1009' => DB_ERROR_INVALID, + 'S1090' => DB_ERROR_INVALID, + 'S1C00' => DB_ERROR_NOT_CAPABLE + ); + return $MAP; +} + +function adodb_error_ibase() +{ +static $MAP = array( + -104 => DB_ERROR_SYNTAX, + -150 => DB_ERROR_ACCESS_VIOLATION, + -151 => DB_ERROR_ACCESS_VIOLATION, + -155 => DB_ERROR_NOSUCHTABLE, + -157 => DB_ERROR_NOSUCHFIELD, + -158 => DB_ERROR_VALUE_COUNT_ON_ROW, + -170 => DB_ERROR_MISMATCH, + -171 => DB_ERROR_MISMATCH, + -172 => DB_ERROR_INVALID, + -204 => DB_ERROR_INVALID, + -205 => DB_ERROR_NOSUCHFIELD, + -206 => DB_ERROR_NOSUCHFIELD, + -208 => DB_ERROR_INVALID, + -219 => DB_ERROR_NOSUCHTABLE, + -297 => DB_ERROR_CONSTRAINT, + -530 => DB_ERROR_CONSTRAINT, + -803 => DB_ERROR_CONSTRAINT, + -551 => DB_ERROR_ACCESS_VIOLATION, + -552 => DB_ERROR_ACCESS_VIOLATION, + -922 => DB_ERROR_NOSUCHDB, + -923 => DB_ERROR_CONNECT_FAILED, + -924 => DB_ERROR_CONNECT_FAILED + ); + + return $MAP; +} + +function adodb_error_ifx() +{ +static $MAP = array( + '-201' => DB_ERROR_SYNTAX, + '-206' => DB_ERROR_NOSUCHTABLE, + '-217' => DB_ERROR_NOSUCHFIELD, + '-329' => DB_ERROR_NODBSELECTED, + '-1204' => DB_ERROR_INVALID_DATE, + '-1205' => DB_ERROR_INVALID_DATE, + '-1206' => DB_ERROR_INVALID_DATE, + '-1209' => DB_ERROR_INVALID_DATE, + '-1210' => DB_ERROR_INVALID_DATE, + '-1212' => DB_ERROR_INVALID_DATE + ); + + return $MAP; +} + +function adodb_error_oci8() +{ +static $MAP = array( + 1 => DB_ERROR_ALREADY_EXISTS, + 900 => DB_ERROR_SYNTAX, + 904 => DB_ERROR_NOSUCHFIELD, + 923 => DB_ERROR_SYNTAX, + 942 => DB_ERROR_NOSUCHTABLE, + 955 => DB_ERROR_ALREADY_EXISTS, + 1476 => DB_ERROR_DIVZERO, + 1722 => DB_ERROR_INVALID_NUMBER, + 2289 => DB_ERROR_NOSUCHTABLE, + 2291 => DB_ERROR_CONSTRAINT, + 2449 => DB_ERROR_CONSTRAINT + ); + + return $MAP; +} + +function adodb_error_mssql() +{ +static $MAP = array( + 208 => DB_ERROR_NOSUCHTABLE, + 2601 => DB_ERROR_ALREADY_EXISTS + ); + + return $MAP; +} + +function adodb_error_sqlite() +{ +static $MAP = array( + 1 => DB_ERROR_SYNTAX + ); + + return $MAP; +} + +function adodb_error_mysql() +{ +static $MAP = array( + 1004 => DB_ERROR_CANNOT_CREATE, + 1005 => DB_ERROR_CANNOT_CREATE, + 1006 => DB_ERROR_CANNOT_CREATE, + 1007 => DB_ERROR_ALREADY_EXISTS, + 1008 => DB_ERROR_CANNOT_DROP, + 1045 => DB_ERROR_ACCESS_VIOLATION, + 1046 => DB_ERROR_NODBSELECTED, + 1049 => DB_ERROR_NOSUCHDB, + 1050 => DB_ERROR_ALREADY_EXISTS, + 1051 => DB_ERROR_NOSUCHTABLE, + 1054 => DB_ERROR_NOSUCHFIELD, + 1062 => DB_ERROR_ALREADY_EXISTS, + 1064 => DB_ERROR_SYNTAX, + 1100 => DB_ERROR_NOT_LOCKED, + 1136 => DB_ERROR_VALUE_COUNT_ON_ROW, + 1146 => DB_ERROR_NOSUCHTABLE, + 1048 => DB_ERROR_CONSTRAINT, + 2002 => DB_ERROR_CONNECT_FAILED, + 2005 => DB_ERROR_CONNECT_FAILED + ); + + return $MAP; +} +?> diff --git a/Source/gallery2/lib/adodb/adodb-iterator.inc.php b/Source/gallery2/lib/adodb/adodb-iterator.inc.php new file mode 100644 index 0000000..f682727 --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb-iterator.inc.php @@ -0,0 +1,85 @@ +Execute("select * from adoxyz"); + foreach($rs as $k => $v) { + echo $k; print_r($v); echo "
"; + } + + + Iterator code based on http://cvs.php.net/cvs.php/php-src/ext/spl/examples/cachingiterator.inc?login=2 + */ + + + class ADODB_Iterator implements Iterator { + + private $rs; + + function __construct($rs) + { + $this->rs = $rs; + } + function rewind() + { + $this->rs->MoveFirst(); + } + + function valid() + { + return !$this->rs->EOF; + } + + function key() + { + return $this->rs->_currentRow; + } + + function current() + { + return $this->rs->fields; + } + + function next() + { + $this->rs->MoveNext(); + } + + function __call($func, $params) + { + return call_user_func_array(array($this->rs, $func), $params); + } + + + function hasMore() + { + return !$this->rs->EOF; + } + +} + + +class ADODB_BASE_RS implements IteratorAggregate { + function getIterator() { + return new ADODB_Iterator($this); + } + + /* this is experimental - i don't really know what to return... */ + function __toString() + { + include_once(ADODB_DIR.'/toexport.inc.php'); + return _adodb_export($this,',',',',false,true); + } +} + + +?> diff --git a/Source/gallery2/lib/adodb/adodb-lib.inc.php b/Source/gallery2/lib/adodb/adodb-lib.inc.php new file mode 100644 index 0000000..cf45552 --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb-lib.inc.php @@ -0,0 +1,1128 @@ + sizeof($array)) $max = sizeof($array); + else $max = $probe; + + + for ($j=0;$j < $max; $j++) { + $row =& $array[$j]; + if (!$row) break; + $i = -1; + foreach($row as $v) { + $i += 1; + + if (isset($types[$i]) && $types[$i]=='C') continue; + + //print " ($i ".$types[$i]. "$v) "; + $v = trim($v); + + if (!preg_match('/^[+-]{0,1}[0-9\.]+$/',$v)) { + $types[$i] = 'C'; // once C, always C + + continue; + } + if ($j == 0) { + // If empty string, we presume is character + // test for integer for 1st row only + // after that it is up to testing other rows to prove + // that it is not an integer + if (strlen($v) == 0) $types[$i] = 'C'; + if (strpos($v,'.') !== false) $types[$i] = 'N'; + else $types[$i] = 'I'; + continue; + } + + if (strpos($v,'.') !== false) $types[$i] = 'N'; + + } + } +} + +function &adodb_transpose(&$arr, &$newarr, &$hdr) +{ + $oldX = sizeof(reset($arr)); + $oldY = sizeof($arr); + + if ($hdr) { + $startx = 1; + $hdr = array(); + for ($y = 0; $y < $oldY; $y++) { + $hdr[] = $arr[$y][0]; + } + } else + $startx = 0; + + for ($x = $startx; $x < $oldX; $x++) { + $newarr[] = array(); + for ($y = 0; $y < $oldY; $y++) { + $newarr[$x-$startx][] = $arr[$y][$x]; + } + } +} + +// Force key to upper. +// See also http://www.php.net/manual/en/function.array-change-key-case.php +function _array_change_key_case($an_array) +{ + if (is_array($an_array)) { + $new_array = array(); + foreach($an_array as $key=>$value) + $new_array[strtoupper($key)] = $value; + + return $new_array; + } + + return $an_array; +} + +function _adodb_replace(&$zthis, $table, $fieldArray, $keyCol, $autoQuote, $has_autoinc) +{ + if (count($fieldArray) == 0) return 0; + $first = true; + $uSet = ''; + + if (!is_array($keyCol)) { + $keyCol = array($keyCol); + } + foreach($fieldArray as $k => $v) { + if ($autoQuote && !is_numeric($v) and strncmp($v,"'",1) !== 0 and strcasecmp($v,$zthis->null2null)!=0) { + $v = $zthis->qstr($v); + $fieldArray[$k] = $v; + } + if (in_array($k,$keyCol)) continue; // skip UPDATE if is key + + if ($first) { + $first = false; + $uSet = "$k=$v"; + } else + $uSet .= ",$k=$v"; + } + + $where = false; + foreach ($keyCol as $v) { + if (isset($fieldArray[$v])) { + if ($where) $where .= ' and '.$v.'='.$fieldArray[$v]; + else $where = $v.'='.$fieldArray[$v]; + } + } + + if ($uSet && $where) { + $update = "UPDATE $table SET $uSet WHERE $where"; + + $rs = $zthis->Execute($update); + + + if ($rs) { + if ($zthis->poorAffectedRows) { + /* + The Select count(*) wipes out any errors that the update would have returned. + http://phplens.com/lens/lensforum/msgs.php?id=5696 + */ + if ($zthis->ErrorNo()<>0) return 0; + + # affected_rows == 0 if update field values identical to old values + # for mysql - which is silly. + + $cnt = $zthis->GetOne("select count(*) from $table where $where"); + if ($cnt > 0) return 1; // record already exists + } else { + if (($zthis->Affected_Rows()>0)) return 1; + } + } else + return 0; + } + + // print "

Error=".$this->ErrorNo().'

'; + $first = true; + foreach($fieldArray as $k => $v) { + if ($has_autoinc && in_array($k,$keyCol)) continue; // skip autoinc col + + if ($first) { + $first = false; + $iCols = "$k"; + $iVals = "$v"; + } else { + $iCols .= ",$k"; + $iVals .= ",$v"; + } + } + $insert = "INSERT INTO $table ($iCols) VALUES ($iVals)"; + $rs = $zthis->Execute($insert); + return ($rs) ? 2 : 0; +} + +// Requires $ADODB_FETCH_MODE = ADODB_FETCH_NUM +function _adodb_getmenu(&$zthis, $name,$defstr='',$blank1stItem=true,$multiple=false, + $size=0, $selectAttr='',$compareFields0=true) +{ + $hasvalue = false; + + if ($multiple or is_array($defstr)) { + if ($size==0) $size=5; + $attr = ' multiple size="'.$size.'"'; + if (!strpos($name,'[]')) $name .= '[]'; + } else if ($size) $attr = ' size="'.$size.'"'; + else $attr =''; + + $s = '\n"; +} + +// Requires $ADODB_FETCH_MODE = ADODB_FETCH_NUM +function _adodb_getmenu_gp(&$zthis, $name,$defstr='',$blank1stItem=true,$multiple=false, + $size=0, $selectAttr='',$compareFields0=true) +{ + $hasvalue = false; + + if ($multiple or is_array($defstr)) { + if ($size==0) $size=5; + $attr = ' multiple size="'.$size.'"'; + if (!strpos($name,'[]')) $name .= '[]'; + } else if ($size) $attr = ' size="'.$size.'"'; + else $attr =''; + + $s = '\n"; +} + + +/* + Count the number of records this sql statement will return by using + query rewriting heuristics... + + Does not work with UNIONs, except with postgresql and oracle. + + Usage: + + $conn->Connect(...); + $cnt = _adodb_getcount($conn, $sql); + +*/ +function _adodb_getcount(&$zthis, $sql,$inputarr=false,$secs2cache=0) +{ + $qryRecs = 0; + + if (!empty($zthis->_nestedSQL) || preg_match("/^\s*SELECT\s+DISTINCT/is", $sql) || + preg_match('/\s+GROUP\s+BY\s+/is',$sql) || + preg_match('/\s+UNION\s+/is',$sql)) { + // ok, has SELECT DISTINCT or GROUP BY so see if we can use a table alias + // but this is only supported by oracle and postgresql... + if ($zthis->dataProvider == 'oci8') { + + $rewritesql = preg_replace('/(\sORDER\s+BY\s[^)]*)/is','',$sql); + + // Allow Oracle hints to be used for query optimization, Chris Wrye + if (preg_match('#/\\*+.*?\\*\\/#', $sql, $hint)) { + $rewritesql = "SELECT ".$hint[0]." COUNT(*) FROM (".$rewritesql.")"; + } else + $rewritesql = "SELECT COUNT(*) FROM (".$rewritesql.")"; + + } else if (strncmp($zthis->databaseType,'postgres',8) == 0) { + $rewritesql = preg_replace('/(\sORDER\s+BY\s[^)]*)/is','',$sql); + $rewritesql = "SELECT COUNT(*) FROM ($rewritesql) _ADODB_ALIAS_"; + } + } else { + // now replace SELECT ... FROM with SELECT COUNT(*) FROM + $rewritesql = preg_replace( + '/^\s*SELECT\s.*\s+FROM\s/Uis','SELECT COUNT(*) FROM ',$sql); + + + + // fix by alexander zhukov, alex#unipack.ru, because count(*) and 'order by' fails + // with mssql, access and postgresql. Also a good speedup optimization - skips sorting! + // also see http://phplens.com/lens/lensforum/msgs.php?id=12752 + if (preg_match('/\sORDER\s+BY\s*\(/i',$rewritesql)) + $rewritesql = preg_replace('/(\sORDER\s+BY\s.*)/is','',$rewritesql); + else + $rewritesql = preg_replace('/(\sORDER\s+BY\s[^)]*)/is','',$rewritesql); + } + + + + if (isset($rewritesql) && $rewritesql != $sql) { + if (preg_match('/\sLIMIT\s+[0-9]+/i',$sql,$limitarr)) $rewritesql .= $limitarr[1]; + + if ($secs2cache) { + // we only use half the time of secs2cache because the count can quickly + // become inaccurate if new records are added + $qryRecs = $zthis->CacheGetOne($secs2cache/2,$rewritesql,$inputarr); + + } else { + $qryRecs = $zthis->GetOne($rewritesql,$inputarr); + } + if ($qryRecs !== false) return $qryRecs; + } + //-------------------------------------------- + // query rewrite failed - so try slower way... + + + // strip off unneeded ORDER BY if no UNION + if (preg_match('/\s*UNION\s*/is', $sql)) $rewritesql = $sql; + else $rewritesql = preg_replace('/(\sORDER\s+BY\s.*)/is','',$sql); + + if (preg_match('/\sLIMIT\s+[0-9]+/i',$sql,$limitarr)) $rewritesql .= $limitarr[0]; + + $rstest = &$zthis->Execute($rewritesql,$inputarr); + if (!$rstest) $rstest = $zthis->Execute($sql,$inputarr); + + if ($rstest) { + $qryRecs = $rstest->RecordCount(); + if ($qryRecs == -1) { + global $ADODB_EXTENSION; + // some databases will return -1 on MoveLast() - change to MoveNext() + if ($ADODB_EXTENSION) { + while(!$rstest->EOF) { + adodb_movenext($rstest); + } + } else { + while(!$rstest->EOF) { + $rstest->MoveNext(); + } + } + $qryRecs = $rstest->_currentRow; + } + $rstest->Close(); + if ($qryRecs == -1) return 0; + } + return $qryRecs; +} + +/* + Code originally from "Cornel G" + + This code might not work with SQL that has UNION in it + + Also if you are using CachePageExecute(), there is a strong possibility that + data will get out of synch. use CachePageExecute() only with tables that + rarely change. +*/ +function &_adodb_pageexecute_all_rows(&$zthis, $sql, $nrows, $page, + $inputarr=false, $secs2cache=0) +{ + $atfirstpage = false; + $atlastpage = false; + $lastpageno=1; + + // If an invalid nrows is supplied, + // we assume a default value of 10 rows per page + if (!isset($nrows) || $nrows <= 0) $nrows = 10; + + $qryRecs = false; //count records for no offset + + $qryRecs = _adodb_getcount($zthis,$sql,$inputarr,$secs2cache); + $lastpageno = (int) ceil($qryRecs / $nrows); + $zthis->_maxRecordCount = $qryRecs; + + + + // ***** Here we check whether $page is the last page or + // whether we are trying to retrieve + // a page number greater than the last page number. + if ($page >= $lastpageno) { + $page = $lastpageno; + $atlastpage = true; + } + + // If page number <= 1, then we are at the first page + if (empty($page) || $page <= 1) { + $page = 1; + $atfirstpage = true; + } + + // We get the data we want + $offset = $nrows * ($page-1); + if ($secs2cache > 0) + $rsreturn = &$zthis->CacheSelectLimit($secs2cache, $sql, $nrows, $offset, $inputarr); + else + $rsreturn = &$zthis->SelectLimit($sql, $nrows, $offset, $inputarr, $secs2cache); + + + // Before returning the RecordSet, we set the pagination properties we need + if ($rsreturn) { + $rsreturn->_maxRecordCount = $qryRecs; + $rsreturn->rowsPerPage = $nrows; + $rsreturn->AbsolutePage($page); + $rsreturn->AtFirstPage($atfirstpage); + $rsreturn->AtLastPage($atlastpage); + $rsreturn->LastPageNo($lastpageno); + } + return $rsreturn; +} + +// Ivn Oliva version +function &_adodb_pageexecute_no_last_page(&$zthis, $sql, $nrows, $page, $inputarr=false, $secs2cache=0) +{ + + $atfirstpage = false; + $atlastpage = false; + + if (!isset($page) || $page <= 1) { // If page number <= 1, then we are at the first page + $page = 1; + $atfirstpage = true; + } + if ($nrows <= 0) $nrows = 10; // If an invalid nrows is supplied, we assume a default value of 10 rows per page + + // ***** Here we check whether $page is the last page or whether we are trying to retrieve a page number greater than + // the last page number. + $pagecounter = $page + 1; + $pagecounteroffset = ($pagecounter * $nrows) - $nrows; + if ($secs2cache>0) $rstest = &$zthis->CacheSelectLimit($secs2cache, $sql, $nrows, $pagecounteroffset, $inputarr); + else $rstest = &$zthis->SelectLimit($sql, $nrows, $pagecounteroffset, $inputarr, $secs2cache); + if ($rstest) { + while ($rstest && $rstest->EOF && $pagecounter>0) { + $atlastpage = true; + $pagecounter--; + $pagecounteroffset = $nrows * ($pagecounter - 1); + $rstest->Close(); + if ($secs2cache>0) $rstest = &$zthis->CacheSelectLimit($secs2cache, $sql, $nrows, $pagecounteroffset, $inputarr); + else $rstest = &$zthis->SelectLimit($sql, $nrows, $pagecounteroffset, $inputarr, $secs2cache); + } + if ($rstest) $rstest->Close(); + } + if ($atlastpage) { // If we are at the last page or beyond it, we are going to retrieve it + $page = $pagecounter; + if ($page == 1) $atfirstpage = true; // We have to do this again in case the last page is the same as the first + //... page, that is, the recordset has only 1 page. + } + + // We get the data we want + $offset = $nrows * ($page-1); + if ($secs2cache > 0) $rsreturn = &$zthis->CacheSelectLimit($secs2cache, $sql, $nrows, $offset, $inputarr); + else $rsreturn = &$zthis->SelectLimit($sql, $nrows, $offset, $inputarr, $secs2cache); + + // Before returning the RecordSet, we set the pagination properties we need + if ($rsreturn) { + $rsreturn->rowsPerPage = $nrows; + $rsreturn->AbsolutePage($page); + $rsreturn->AtFirstPage($atfirstpage); + $rsreturn->AtLastPage($atlastpage); + } + return $rsreturn; +} + +function _adodb_getupdatesql(&$zthis,&$rs, $arrFields,$forceUpdate=false,$magicq=false,$force=2) +{ + if (!$rs) { + printf(ADODB_BAD_RS,'GetUpdateSQL'); + return false; + } + + $fieldUpdatedCount = 0; + $arrFields = _array_change_key_case($arrFields); + + $hasnumeric = isset($rs->fields[0]); + $setFields = ''; + + // Loop through all of the fields in the recordset + for ($i=0, $max=$rs->FieldCount(); $i < $max; $i++) { + // Get the field from the recordset + $field = $rs->FetchField($i); + + // If the recordset field is one + // of the fields passed in then process. + $upperfname = strtoupper($field->name); + if (adodb_key_exists($upperfname,$arrFields,$force)) { + + // If the existing field value in the recordset + // is different from the value passed in then + // go ahead and append the field name and new value to + // the update query. + + if ($hasnumeric) $val = $rs->fields[$i]; + else if (isset($rs->fields[$upperfname])) $val = $rs->fields[$upperfname]; + else if (isset($rs->fields[$field->name])) $val = $rs->fields[$field->name]; + else if (isset($rs->fields[strtolower($upperfname)])) $val = $rs->fields[strtolower($upperfname)]; + else $val = ''; + + + if ($forceUpdate || strcmp($val, $arrFields[$upperfname])) { + // Set the counter for the number of fields that will be updated. + $fieldUpdatedCount++; + + // Based on the datatype of the field + // Format the value properly for the database + $type = $rs->MetaType($field->type); + + + if ($type == 'null') { + $type = 'C'; + } + + if (strpos($upperfname,' ') !== false) + $fnameq = $zthis->nameQuote.$upperfname.$zthis->nameQuote; + else + $fnameq = $upperfname; + + + // is_null requires php 4.0.4 + //********************************************************// + if (is_null($arrFields[$upperfname]) + || (empty($arrFields[$upperfname]) && strlen($arrFields[$upperfname]) == 0) + || $arrFields[$upperfname] === $zthis->null2null + ) + { + switch ($force) { + + //case 0: + // //Ignore empty values. This is allready handled in "adodb_key_exists" function. + //break; + + case 1: + //Set null + $setFields .= $field->name . " = null, "; + break; + + case 2: + //Set empty + $arrFields[$upperfname] = ""; + $setFields .= _adodb_column_sql($zthis, 'U', $type, $upperfname, $fnameq,$arrFields, $magicq); + break; + default: + case 3: + //Set the value that was given in array, so you can give both null and empty values + if (is_null($arrFields[$upperfname]) || $arrFields[$upperfname] === $zthis->null2null) { + $setFields .= $field->name . " = null, "; + } else { + $setFields .= _adodb_column_sql($zthis, 'U', $type, $upperfname, $fnameq,$arrFields, $magicq); + } + break; + } + //********************************************************// + } else { + //we do this so each driver can customize the sql for + //DB specific column types. + //Oracle needs BLOB types to be handled with a returning clause + //postgres has special needs as well + $setFields .= _adodb_column_sql($zthis, 'U', $type, $upperfname, $fnameq, + $arrFields, $magicq); + } + } + } + } + + // If there were any modified fields then build the rest of the update query. + if ($fieldUpdatedCount > 0 || $forceUpdate) { + // Get the table name from the existing query. + if (!empty($rs->tableName)) $tableName = $rs->tableName; + else { + preg_match("/FROM\s+".ADODB_TABLE_REGEX."/is", $rs->sql, $tableName); + $tableName = $tableName[1]; + } + // Get the full where clause excluding the word "WHERE" from + // the existing query. + preg_match('/\sWHERE\s(.*)/is', $rs->sql, $whereClause); + + $discard = false; + // not a good hack, improvements? + if ($whereClause) { + #var_dump($whereClause); + if (preg_match('/\s(ORDER\s.*)/is', $whereClause[1], $discard)); + else if (preg_match('/\s(LIMIT\s.*)/is', $whereClause[1], $discard)); + else if (preg_match('/\s(FOR UPDATE.*)/is', $whereClause[1], $discard)); + else preg_match('/\s.*(\) WHERE .*)/is', $whereClause[1], $discard); # see http://sourceforge.net/tracker/index.php?func=detail&aid=1379638&group_id=42718&atid=433976 + } else + $whereClause = array(false,false); + + if ($discard) + $whereClause[1] = substr($whereClause[1], 0, strlen($whereClause[1]) - strlen($discard[1])); + + $sql = 'UPDATE '.$tableName.' SET '.substr($setFields, 0, -2); + if (strlen($whereClause[1]) > 0) + $sql .= ' WHERE '.$whereClause[1]; + + return $sql; + + } else { + return false; + } +} + +function adodb_key_exists($key, &$arr,$force=2) +{ + if ($force<=0) { + // the following is the old behaviour where null or empty fields are ignored + return (!empty($arr[$key])) || (isset($arr[$key]) && strlen($arr[$key])>0); + } + + if (isset($arr[$key])) return true; + ## null check below + if (ADODB_PHPVER >= 0x4010) return array_key_exists($key,$arr); + return false; +} + +/** + * There is a special case of this function for the oci8 driver. + * The proper way to handle an insert w/ a blob in oracle requires + * a returning clause with bind variables and a descriptor blob. + * + * + */ +function _adodb_getinsertsql(&$zthis,&$rs,$arrFields,$magicq=false,$force=2) +{ +static $cacheRS = false; +static $cacheSig = 0; +static $cacheCols; + + $tableName = ''; + $values = ''; + $fields = ''; + $recordSet = null; + $arrFields = _array_change_key_case($arrFields); + $fieldInsertedCount = 0; + + if (is_string($rs)) { + //ok we have a table name + //try and get the column info ourself. + $tableName = $rs; + + //we need an object for the recordSet + //because we have to call MetaType. + //php can't do a $rsclass::MetaType() + $rsclass = $zthis->rsPrefix.$zthis->databaseType; + $recordSet = new $rsclass(-1,$zthis->fetchMode); + $recordSet->connection = &$zthis; + + if (is_string($cacheRS) && $cacheRS == $rs) { + $columns =& $cacheCols; + } else { + $columns = $zthis->MetaColumns( $tableName ); + $cacheRS = $tableName; + $cacheCols = $columns; + } + } else if (is_subclass_of($rs, 'adorecordset')) { + if (isset($rs->insertSig) && is_integer($cacheRS) && $cacheRS == $rs->insertSig) { + $columns =& $cacheCols; + } else { + for ($i=0, $max=$rs->FieldCount(); $i < $max; $i++) + $columns[] = $rs->FetchField($i); + $cacheRS = $cacheSig; + $cacheCols = $columns; + $rs->insertSig = $cacheSig++; + } + $recordSet =& $rs; + + } else { + printf(ADODB_BAD_RS,'GetInsertSQL'); + return false; + } + + // Loop through all of the fields in the recordset + foreach( $columns as $field ) { + $upperfname = strtoupper($field->name); + if (adodb_key_exists($upperfname,$arrFields,$force)) { + $bad = false; + if (strpos($upperfname,' ') !== false) + $fnameq = $zthis->nameQuote.$upperfname.$zthis->nameQuote; + else + $fnameq = $upperfname; + + $type = $recordSet->MetaType($field->type); + + /********************************************************/ + if (is_null($arrFields[$upperfname]) + || (empty($arrFields[$upperfname]) && strlen($arrFields[$upperfname]) == 0) + || $arrFields[$upperfname] === $zthis->null2null + ) + { + switch ($force) { + + case 0: // we must always set null if missing + $bad = true; + break; + + case 1: + $values .= "null, "; + break; + + case 2: + //Set empty + $arrFields[$upperfname] = ""; + $values .= _adodb_column_sql($zthis, 'I', $type, $upperfname, $fnameq,$arrFields, $magicq); + break; + + default: + case 3: + //Set the value that was given in array, so you can give both null and empty values + if (is_null($arrFields[$upperfname]) || $arrFields[$upperfname] === $zthis->null2null) { + $values .= "null, "; + } else { + $values .= _adodb_column_sql($zthis, 'I', $type, $upperfname, $fnameq, $arrFields, $magicq); + } + break; + } // switch + + /*********************************************************/ + } else { + //we do this so each driver can customize the sql for + //DB specific column types. + //Oracle needs BLOB types to be handled with a returning clause + //postgres has special needs as well + $values .= _adodb_column_sql($zthis, 'I', $type, $upperfname, $fnameq, + $arrFields, $magicq); + } + + if ($bad) continue; + // Set the counter for the number of fields that will be inserted. + $fieldInsertedCount++; + + + // Get the name of the fields to insert + $fields .= $fnameq . ", "; + } + } + + + // If there were any inserted fields then build the rest of the insert query. + if ($fieldInsertedCount <= 0) return false; + + // Get the table name from the existing query. + if (!$tableName) { + if (!empty($rs->tableName)) $tableName = $rs->tableName; + else if (preg_match("/FROM\s+".ADODB_TABLE_REGEX."/is", $rs->sql, $tableName)) + $tableName = $tableName[1]; + else + return false; + } + + // Strip off the comma and space on the end of both the fields + // and their values. + $fields = substr($fields, 0, -2); + $values = substr($values, 0, -2); + + // Append the fields and their values to the insert query. + return 'INSERT INTO '.$tableName.' ( '.$fields.' ) VALUES ( '.$values.' )'; +} + + +/** + * This private method is used to help construct + * the update/sql which is generated by GetInsertSQL and GetUpdateSQL. + * It handles the string construction of 1 column -> sql string based on + * the column type. We want to do 'safe' handling of BLOBs + * + * @param string the type of sql we are trying to create + * 'I' or 'U'. + * @param string column data type from the db::MetaType() method + * @param string the column name + * @param array the column value + * + * @return string + * + */ +function _adodb_column_sql_oci8(&$zthis,$action, $type, $fname, $fnameq, $arrFields, $magicq) +{ + $sql = ''; + + // Based on the datatype of the field + // Format the value properly for the database + switch($type) { + case 'B': + //in order to handle Blobs correctly, we need + //to do some magic for Oracle + + //we need to create a new descriptor to handle + //this properly + if (!empty($zthis->hasReturningInto)) { + if ($action == 'I') { + $sql = 'empty_blob(), '; + } else { + $sql = $fnameq. '=empty_blob(), '; + } + //add the variable to the returning clause array + //so the user can build this later in + //case they want to add more to it + $zthis->_returningArray[$fname] = ':xx'.$fname.'xx'; + } else if (empty($arrFields[$fname])){ + if ($action == 'I') { + $sql = 'empty_blob(), '; + } else { + $sql = $fnameq. '=empty_blob(), '; + } + } else { + //this is to maintain compatibility + //with older adodb versions. + $sql = _adodb_column_sql($zthis, $action, $type, $fname, $fnameq, $arrFields, $magicq,false); + } + break; + + case "X": + //we need to do some more magic here for long variables + //to handle these correctly in oracle. + + //create a safe bind var name + //to avoid conflicts w/ dupes. + if (!empty($zthis->hasReturningInto)) { + if ($action == 'I') { + $sql = ':xx'.$fname.'xx, '; + } else { + $sql = $fnameq.'=:xx'.$fname.'xx, '; + } + //add the variable to the returning clause array + //so the user can build this later in + //case they want to add more to it + $zthis->_returningArray[$fname] = ':xx'.$fname.'xx'; + } else { + //this is to maintain compatibility + //with older adodb versions. + $sql = _adodb_column_sql($zthis, $action, $type, $fname, $fnameq, $arrFields, $magicq,false); + } + break; + + default: + $sql = _adodb_column_sql($zthis, $action, $type, $fname, $fnameq, $arrFields, $magicq,false); + break; + } + + return $sql; +} + +function _adodb_column_sql(&$zthis, $action, $type, $fname, $fnameq, $arrFields, $magicq, $recurse=true) +{ + + if ($recurse) { + switch($zthis->dataProvider) { + case 'postgres': + if ($type == 'L') $type = 'C'; + break; + case 'oci8': + return _adodb_column_sql_oci8($zthis, $action, $type, $fname, $fnameq, $arrFields, $magicq); + + } + } + + switch($type) { + case "C": + case "X": + case 'B': + $val = $zthis->qstr($arrFields[$fname],$magicq); + break; + + case "D": + $val = $zthis->DBDate($arrFields[$fname]); + break; + + case "T": + $val = $zthis->DBTimeStamp($arrFields[$fname]); + break; + + default: + $val = $arrFields[$fname]; + if (empty($val)) $val = '0'; + break; + } + + if ($action == 'I') return $val . ", "; + + + return $fnameq . "=" . $val . ", "; + +} + + + +function _adodb_debug_execute(&$zthis, $sql, $inputarr) +{ + $ss = ''; + if ($inputarr) { + foreach($inputarr as $kk=>$vv) { + if (is_string($vv) && strlen($vv)>64) $vv = substr($vv,0,64).'...'; + $ss .= "($kk=>'$vv') "; + } + $ss = "[ $ss ]"; + } + $sqlTxt = is_array($sql) ? $sql[0] : $sql; + /*str_replace(', ','##1#__^LF',is_array($sql) ? $sql[0] : $sql); + $sqlTxt = str_replace(',',', ',$sqlTxt); + $sqlTxt = str_replace('##1#__^LF', ', ' ,$sqlTxt); + */ + // check if running from browser or command-line + $inBrowser = isset($_SERVER['HTTP_USER_AGENT']); + + $dbt = $zthis->databaseType; + if (isset($zthis->dsnType)) $dbt .= '-'.$zthis->dsnType; + if ($inBrowser) { + if ($ss) { + $ss = ''.htmlspecialchars($ss).''; + } + if ($zthis->debug === -1) + ADOConnection::outp( "
\n($dbt): ".htmlspecialchars($sqlTxt)."   $ss\n
\n",false); + else + ADOConnection::outp( "


\n($dbt): ".htmlspecialchars($sqlTxt)."   $ss\n
\n",false); + } else { + ADOConnection::outp("-----\n($dbt): ".$sqlTxt."\n-----\n",false); + } + + $qID = $zthis->_query($sql,$inputarr); + + /* + Alexios Fakios notes that ErrorMsg() must be called before ErrorNo() for mssql + because ErrorNo() calls Execute('SELECT @ERROR'), causing recursion + */ + if ($zthis->databaseType == 'mssql') { + // ErrorNo is a slow function call in mssql, and not reliable in PHP 4.0.6 + if($emsg = $zthis->ErrorMsg()) { + if ($err = $zthis->ErrorNo()) ADOConnection::outp($err.': '.$emsg); + } + } else if (!$qID) { + ADOConnection::outp($zthis->ErrorNo() .': '. $zthis->ErrorMsg()); + } + + if ($zthis->debug === 99) _adodb_backtrace(true,9999,2); + return $qID; +} + +# pretty print the debug_backtrace function +function _adodb_backtrace($printOrArr=true,$levels=9999,$skippy=0) +{ + if (!function_exists('debug_backtrace')) return ''; + + $html = (isset($_SERVER['HTTP_USER_AGENT'])); + $fmt = ($html) ? " %% line %4d, file: %s" : "%% line %4d, file: %s"; + + $MAXSTRLEN = 128; + + $s = ($html) ? '
' : '';
+	
+	if (is_array($printOrArr)) $traceArr = $printOrArr;
+	else $traceArr = debug_backtrace();
+	array_shift($traceArr);
+	array_shift($traceArr);
+	$tabs = sizeof($traceArr)-2;
+	
+	foreach ($traceArr as $arr) {
+		if ($skippy) {$skippy -= 1; continue;}
+		$levels -= 1;
+		if ($levels < 0) break;
+		
+		$args = array();
+		for ($i=0; $i < $tabs; $i++) $s .=  ($html) ? '   ' : "\t";
+		$tabs -= 1;
+		if ($html) $s .= '';
+		if (isset($arr['class'])) $s .= $arr['class'].'.';
+		if (isset($arr['args']))
+		 foreach($arr['args'] as $v) {
+			if (is_null($v)) $args[] = 'null';
+			else if (is_array($v)) $args[] = 'Array['.sizeof($v).']';
+			else if (is_object($v)) $args[] = 'Object:'.get_class($v);
+			else if (is_bool($v)) $args[] = $v ? 'true' : 'false';
+			else {
+				$v = (string) @$v;
+				$str = htmlspecialchars(substr($v,0,$MAXSTRLEN));
+				if (strlen($v) > $MAXSTRLEN) $str .= '...';
+				$args[] = $str;
+			}
+		}
+		$s .= $arr['function'].'('.implode(', ',$args).')';
+		
+		
+		$s .= @sprintf($fmt, $arr['line'],$arr['file'],basename($arr['file']));
+			
+		$s .= "\n";
+	}	
+	if ($html) $s .= '
'; + if ($printOrArr) print $s; + + return $s; +} +/* +function _adodb_find_from($sql) +{ + + $sql = str_replace(array("\n","\r"), ' ', $sql); + $charCount = strlen($sql); + + $inString = false; + $quote = ''; + $parentheseCount = 0; + $prevChars = ''; + $nextChars = ''; + + + for($i = 0; $i < $charCount; $i++) { + + $char = substr($sql,$i,1); + $prevChars = substr($sql,0,$i); + $nextChars = substr($sql,$i+1); + + if((($char == "'" || $char == '"' || $char == '`') && substr($prevChars,-1,1) != '\\') && $inString === false) { + $quote = $char; + $inString = true; + } + + elseif((($char == "'" || $char == '"' || $char == '`') && substr($prevChars,-1,1) != '\\') && $inString === true && $quote == $char) { + $quote = ""; + $inString = false; + } + + elseif($char == "(" && $inString === false) + $parentheseCount++; + + elseif($char == ")" && $inString === false && $parentheseCount > 0) + $parentheseCount--; + + elseif($parentheseCount <= 0 && $inString === false && $char == " " && strtoupper(substr($prevChars,-5,5)) == " FROM") + return $i; + + } +} +*/ + +?> diff --git a/Source/gallery2/lib/adodb/adodb-perf.inc.php b/Source/gallery2/lib/adodb/adodb-perf.inc.php new file mode 100644 index 0000000..e6bde5d --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb-perf.inc.php @@ -0,0 +1,1068 @@ +=2) return (integer) $memarr[1]; + + return 0; +} + +// avoids localization problems where , is used instead of . +function adodb_round($n,$prec) +{ + return number_format($n, $prec, '.', ''); +} + +/* return microtime value as a float */ +function adodb_microtime() +{ + $t = microtime(); + $t = explode(' ',$t); + return (float)$t[1]+ (float)$t[0]; +} + +/* sql code timing */ +function& adodb_log_sql(&$connx,$sql,$inputarr) +{ + $perf_table = adodb_perf::table(); + $connx->fnExecute = false; + $t0 = microtime(); + $rs =& $connx->Execute($sql,$inputarr); + $t1 = microtime(); + + if (!empty($connx->_logsql) && (empty($connx->_logsqlErrors) || !$rs)) { + global $ADODB_LOG_CONN; + + if (!empty($ADODB_LOG_CONN)) { + $conn = &$ADODB_LOG_CONN; + if ($conn->databaseType != $connx->databaseType) + $prefix = '/*dbx='.$connx->databaseType .'*/ '; + else + $prefix = ''; + } else { + $conn =& $connx; + $prefix = ''; + } + + $conn->_logsql = false; // disable logsql error simulation + $dbT = $conn->databaseType; + + $a0 = split(' ',$t0); + $a0 = (float)$a0[1]+(float)$a0[0]; + + $a1 = split(' ',$t1); + $a1 = (float)$a1[1]+(float)$a1[0]; + + $time = $a1 - $a0; + + if (!$rs) { + $errM = $connx->ErrorMsg(); + $errN = $connx->ErrorNo(); + $conn->lastInsID = 0; + $tracer = substr('ERROR: '.htmlspecialchars($errM),0,250); + } else { + $tracer = ''; + $errM = ''; + $errN = 0; + $dbg = $conn->debug; + $conn->debug = false; + if (!is_object($rs) || $rs->dataProvider == 'empty') + $conn->_affected = $conn->affected_rows(true); + $conn->lastInsID = @$conn->Insert_ID(); + $conn->debug = $dbg; + } + if (isset($_SERVER['HTTP_HOST'])) { + $tracer .= '
'.$_SERVER['HTTP_HOST']; + if (isset($_SERVER['PHP_SELF'])) $tracer .= $_SERVER['PHP_SELF']; + } else + if (isset($_SERVER['PHP_SELF'])) $tracer .= '
'.$_SERVER['PHP_SELF']; + //$tracer .= (string) adodb_backtrace(false); + + $tracer = (string) substr($tracer,0,500); + + if (is_array($inputarr)) { + if (is_array(reset($inputarr))) $params = 'Array sizeof='.sizeof($inputarr); + else { + // Quote string parameters so we can see them in the + // performance stats. This helps spot disabled indexes. + $xar_params = $inputarr; + foreach ($xar_params as $xar_param_key => $xar_param) { + if (gettype($xar_param) == 'string') + $xar_params[$xar_param_key] = '"' . $xar_param . '"'; + } + $params = implode(', ', $xar_params); + if (strlen($params) >= 3000) $params = substr($params, 0, 3000); + } + } else { + $params = ''; + } + + if (is_array($sql)) $sql = $sql[0]; + if ($prefix) $sql = $prefix.$sql; + $arr = array('b'=>strlen($sql).'.'.crc32($sql), + 'c'=>substr($sql,0,3900), 'd'=>$params,'e'=>$tracer,'f'=>adodb_round($time,6)); + //var_dump($arr); + $saved = $conn->debug; + $conn->debug = 0; + + $d = $conn->sysTimeStamp; + if (empty($d)) $d = date("'Y-m-d H:i:s'"); + if ($conn->dataProvider == 'oci8' && $dbT != 'oci8po') { + $isql = "insert into $perf_table values($d,:b,:c,:d,:e,:f)"; + } else if ($dbT == 'odbc_mssql' || $dbT == 'informix' || strncmp($dbT,'odbtp',4)==0) { + $timer = $arr['f']; + if ($dbT == 'informix') $sql2 = substr($sql2,0,230); + + $sql1 = $conn->qstr($arr['b']); + $sql2 = $conn->qstr($arr['c']); + $params = $conn->qstr($arr['d']); + $tracer = $conn->qstr($arr['e']); + + $isql = "insert into $perf_table (created,sql0,sql1,params,tracer,timer) values($d,$sql1,$sql2,$params,$tracer,$timer)"; + if ($dbT == 'informix') $isql = str_replace(chr(10),' ',$isql); + $arr = false; + } else { + if ($dbT == 'db2') $arr['f'] = (float) $arr['f']; + $isql = "insert into $perf_table (created,sql0,sql1,params,tracer,timer) values( $d,?,?,?,?,?)"; + } + $ok = $conn->Execute($isql,$arr); + $conn->debug = $saved; + + if ($ok) { + $conn->_logsql = true; + } else { + $err2 = $conn->ErrorMsg(); + $conn->_logsql = true; // enable logsql error simulation + $perf =& NewPerfMonitor($conn); + if ($perf) { + if ($perf->CreateLogTable()) $ok = $conn->Execute($isql,$arr); + } else { + $ok = $conn->Execute("create table $perf_table ( + created varchar(50), + sql0 varchar(250), + sql1 varchar(4000), + params varchar(3000), + tracer varchar(500), + timer decimal(16,6))"); + } + if (!$ok) { + ADOConnection::outp( "

LOGSQL Insert Failed: $isql
$err2

"); + $conn->_logsql = false; + } + } + $connx->_errorMsg = $errM; + $connx->_errorCode = $errN; + } + $connx->fnExecute = 'adodb_log_sql'; + return $rs; +} + + +/* +The settings data structure is an associative array that database parameter per element. + +Each database parameter element in the array is itself an array consisting of: + +0: category code, used to group related db parameters +1: either + a. sql string to retrieve value, eg. "select value from v\$parameter where name='db_block_size'", + b. array holding sql string and field to look for, e.g. array('show variables','table_cache'), + c. a string prefixed by =, then a PHP method of the class is invoked, + e.g. to invoke $this->GetIndexValue(), set this array element to '=GetIndexValue', +2: description of the database parameter +*/ + +class adodb_perf { + var $conn; + var $color = '#F0F0F0'; + var $table = ''; + var $titles = ''; + var $warnRatio = 90; + var $tablesSQL = false; + var $cliFormat = "%32s => %s \r\n"; + var $sql1 = 'sql1'; // used for casting sql1 to text for mssql + var $explain = true; + var $helpurl = "LogSQL help"; + var $createTableSQL = false; + var $maxLength = 2000; + + // Sets the tablename to be used + function table($newtable = false) + { + static $_table; + + if (!empty($newtable)) $_table = $newtable; + if (empty($_table)) $_table = 'adodb_logsql'; + return $_table; + } + + // returns array with info to calculate CPU Load + function _CPULoad() + { +/* + +cpu 524152 2662 2515228 336057010 +cpu0 264339 1408 1257951 168025827 +cpu1 259813 1254 1257277 168031181 +page 622307 25475680 +swap 24 1891 +intr 890153570 868093576 6 0 4 4 0 6 1 2 0 0 0 124 0 8098760 2 13961053 0 0 0 0 0 0 0 0 0 0 0 0 0 16 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +disk_io: (3,0):(3144904,54369,610378,3090535,50936192) (3,1):(3630212,54097,633016,3576115,50951320) +ctxt 66155838 +btime 1062315585 +processes 69293 + +*/ + // Algorithm is taken from + // http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/example__obtaining_raw_performance_data.asp + if (strncmp(PHP_OS,'WIN',3)==0) { + if (PHP_VERSION == '5.0.0') return false; + if (PHP_VERSION == '5.0.1') return false; + if (PHP_VERSION == '5.0.2') return false; + if (PHP_VERSION == '5.0.3') return false; + if (PHP_VERSION == '4.3.10') return false; # see http://bugs.php.net/bug.php?id=31737 + + @$c = new COM("WinMgmts:{impersonationLevel=impersonate}!Win32_PerfRawData_PerfOS_Processor.Name='_Total'"); + if (!$c) return false; + + $info[0] = $c->PercentProcessorTime; + $info[1] = 0; + $info[2] = 0; + $info[3] = $c->TimeStamp_Sys100NS; + //print_r($info); + return $info; + } + + // Algorithm - Steve Blinch (BlitzAffe Online, http://www.blitzaffe.com) + $statfile = '/proc/stat'; + if (!file_exists($statfile)) return false; + + $fd = fopen($statfile,"r"); + if (!$fd) return false; + + $statinfo = explode("\n",fgets($fd, 1024)); + fclose($fd); + foreach($statinfo as $line) { + $info = explode(" ",$line); + if($info[0]=="cpu") { + array_shift($info); // pop off "cpu" + if(!$info[0]) array_shift($info); // pop off blank space (if any) + return $info; + } + } + + return false; + + } + + /* NOT IMPLEMENTED */ + function MemInfo() + { + /* + + total: used: free: shared: buffers: cached: +Mem: 1055289344 917299200 137990144 0 165437440 599773184 +Swap: 2146775040 11055104 2135719936 +MemTotal: 1030556 kB +MemFree: 134756 kB +MemShared: 0 kB +Buffers: 161560 kB +Cached: 581384 kB +SwapCached: 4332 kB +Active: 494468 kB +Inact_dirty: 322856 kB +Inact_clean: 24256 kB +Inact_target: 168316 kB +HighTotal: 131064 kB +HighFree: 1024 kB +LowTotal: 899492 kB +LowFree: 133732 kB +SwapTotal: 2096460 kB +SwapFree: 2085664 kB +Committed_AS: 348732 kB + */ + } + + + /* + Remember that this is client load, not db server load! + */ + var $_lastLoad; + function CPULoad() + { + $info = $this->_CPULoad(); + if (!$info) return false; + + if (empty($this->_lastLoad)) { + sleep(1); + $this->_lastLoad = $info; + $info = $this->_CPULoad(); + } + + $last = $this->_lastLoad; + $this->_lastLoad = $info; + + $d_user = $info[0] - $last[0]; + $d_nice = $info[1] - $last[1]; + $d_system = $info[2] - $last[2]; + $d_idle = $info[3] - $last[3]; + + //printf("Delta - User: %f Nice: %f System: %f Idle: %f
",$d_user,$d_nice,$d_system,$d_idle); + + if (strncmp(PHP_OS,'WIN',3)==0) { + if ($d_idle < 1) $d_idle = 1; + return 100*(1-$d_user/$d_idle); + }else { + $total=$d_user+$d_nice+$d_system+$d_idle; + if ($total<1) $total=1; + return 100*($d_user+$d_nice+$d_system)/$total; + } + } + + function Tracer($sql) + { + $perf_table = adodb_perf::table(); + $saveE = $this->conn->fnExecute; + $this->conn->fnExecute = false; + + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $sqlq = $this->conn->qstr($sql); + $arr = $this->conn->GetArray( +"select count(*),tracer + from $perf_table where sql1=$sqlq + group by tracer + order by 1 desc"); + $s = ''; + if ($arr) { + $s .= '

Scripts Affected

'; + foreach($arr as $k) { + $s .= sprintf("%4d",$k[0]).'   '.strip_tags($k[1]).'
'; + } + } + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_CACHE_MODE = $save; + $this->conn->fnExecute = $saveE; + return $s; + } + + /* + Explain Plan for $sql. + If only a snippet of the $sql is passed in, then $partial will hold the crc32 of the + actual sql. + */ + function Explain($sql,$partial=false) + { + return false; + } + + function InvalidSQL($numsql = 10) + { + + if (isset($_GET['sql'])) return; + $s = '

Invalid SQL

'; + $saveE = $this->conn->fnExecute; + $this->conn->fnExecute = false; + $perf_table = adodb_perf::table(); + $rs =& $this->conn->SelectLimit("select distinct count(*),sql1,tracer as error_msg from $perf_table where tracer like 'ERROR:%' group by sql1,tracer order by 1 desc",$numsql);//,$numsql); + $this->conn->fnExecute = $saveE; + if ($rs) { + $s .= rs2html($rs,false,false,false,false); + } else + return "

$this->helpurl. ".$this->conn->ErrorMsg()."

"; + + return $s; + } + + + /* + This script identifies the longest running SQL + */ + function _SuspiciousSQL($numsql = 10) + { + global $ADODB_FETCH_MODE; + + $perf_table = adodb_perf::table(); + $saveE = $this->conn->fnExecute; + $this->conn->fnExecute = false; + + if (isset($_GET['exps']) && isset($_GET['sql'])) { + $partial = !empty($_GET['part']); + echo "".$this->Explain($_GET['sql'],$partial)."\n"; + } + + if (isset($_GET['sql'])) return; + $sql1 = $this->sql1; + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + //$this->conn->debug=1; + $rs =& $this->conn->SelectLimit( + "select avg(timer) as avg_timer,$sql1,count(*),max(timer) as max_timer,min(timer) as min_timer + from $perf_table + where {$this->conn->upperCase}({$this->conn->substr}(sql0,1,5)) not in ('DROP ','INSER','COMMI','CREAT') + and (tracer is null or tracer not like 'ERROR:%') + group by sql1 + order by 1 desc",$numsql); + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + $this->conn->fnExecute = $saveE; + + if (!$rs) return "

$this->helpurl. ".$this->conn->ErrorMsg()."

"; + $s = "

Suspicious SQL

+The following SQL have high average execution times
+
ParameterValueDescription
\n"; + $max = $this->maxLength; + while (!$rs->EOF) { + $sql = $rs->fields[1]; + $raw = urlencode($sql); + if (strlen($raw)>$max-100) { + $sql2 = substr($sql,0,$max-500); + $raw = urlencode($sql2).'&part='.crc32($sql); + } + $prefix = ""; + $suffix = ""; + if ($this->explain == false || strlen($prefix)>$max) { + $suffix = ' ... String too long for GET parameter: '.strlen($prefix).''; + $prefix = ''; + } + $s .= ""; + $rs->MoveNext(); + } + return $s."
Avg TimeCountSQLMaxMin
".adodb_round($rs->fields[0],6)."".$rs->fields[2]."".$prefix.htmlspecialchars($sql).$suffix."". + "".$rs->fields[3]."".$rs->fields[4]."
"; + + } + + function CheckMemory() + { + return ''; + } + + + function SuspiciousSQL($numsql=10) + { + return adodb_perf::_SuspiciousSQL($numsql); + } + + function ExpensiveSQL($numsql=10) + { + return adodb_perf::_ExpensiveSQL($numsql); + } + + + /* + This reports the percentage of load on the instance due to the most + expensive few SQL statements. Tuning these statements can often + make huge improvements in overall system performance. + */ + function _ExpensiveSQL($numsql = 10) + { + global $ADODB_FETCH_MODE; + + $perf_table = adodb_perf::table(); + $saveE = $this->conn->fnExecute; + $this->conn->fnExecute = false; + + if (isset($_GET['expe']) && isset($_GET['sql'])) { + $partial = !empty($_GET['part']); + echo "".$this->Explain($_GET['sql'],$partial)."\n"; + } + + if (isset($_GET['sql'])) return; + + $sql1 = $this->sql1; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $rs =& $this->conn->SelectLimit( + "select sum(timer) as total,$sql1,count(*),max(timer) as max_timer,min(timer) as min_timer + from $perf_table + where {$this->conn->upperCase}({$this->conn->substr}(sql0,1,5)) not in ('DROP ','INSER','COMMI','CREAT') + and (tracer is null or tracer not like 'ERROR:%') + group by sql1 + having count(*)>1 + order by 1 desc",$numsql); + if (isset($savem)) $this->conn->SetFetchMode($savem); + $this->conn->fnExecute = $saveE; + $ADODB_FETCH_MODE = $save; + if (!$rs) return "

$this->helpurl. ".$this->conn->ErrorMsg()."

"; + $s = "

Expensive SQL

+Tuning the following SQL could reduce the server load substantially
+\n"; + $max = $this->maxLength; + while (!$rs->EOF) { + $sql = $rs->fields[1]; + $raw = urlencode($sql); + if (strlen($raw)>$max-100) { + $sql2 = substr($sql,0,$max-500); + $raw = urlencode($sql2).'&part='.crc32($sql); + } + $prefix = ""; + $suffix = ""; + if($this->explain == false || strlen($prefix>$max)) { + $prefix = ''; + $suffix = ''; + } + $s .= ""; + $rs->MoveNext(); + } + return $s."
LoadCountSQLMaxMin
".adodb_round($rs->fields[0],6)."".$rs->fields[2]."".$prefix.htmlspecialchars($sql).$suffix."". + "".$rs->fields[3]."".$rs->fields[4]."
"; + } + + /* + Raw function to return parameter value from $settings. + */ + function DBParameter($param) + { + if (empty($this->settings[$param])) return false; + $sql = $this->settings[$param][1]; + return $this->_DBParameter($sql); + } + + /* + Raw function returning array of poll paramters + */ + function &PollParameters() + { + $arr[0] = (float)$this->DBParameter('data cache hit ratio'); + $arr[1] = (float)$this->DBParameter('data reads'); + $arr[2] = (float)$this->DBParameter('data writes'); + $arr[3] = (integer) $this->DBParameter('current connections'); + return $arr; + } + + /* + Low-level Get Database Parameter + */ + function _DBParameter($sql) + { + $savelog = $this->conn->LogSQL(false); + if (is_array($sql)) { + global $ADODB_FETCH_MODE; + + $sql1 = $sql[0]; + $key = $sql[1]; + if (sizeof($sql)>2) $pos = $sql[2]; + else $pos = 1; + if (sizeof($sql)>3) $coef = $sql[3]; + else $coef = false; + $ret = false; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $rs = $this->conn->Execute($sql1); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + if ($rs) { + while (!$rs->EOF) { + $keyf = reset($rs->fields); + if (trim($keyf) == $key) { + $ret = $rs->fields[$pos]; + if ($coef) $ret *= $coef; + break; + } + $rs->MoveNext(); + } + $rs->Close(); + } + $this->conn->LogSQL($savelog); + return $ret; + } else { + if (strncmp($sql,'=',1) == 0) { + $fn = substr($sql,1); + return $this->$fn(); + } + $sql = str_replace('$DATABASE',$this->conn->database,$sql); + $ret = $this->conn->GetOne($sql); + $this->conn->LogSQL($savelog); + + return $ret; + } + } + + /* + Warn if cache ratio falls below threshold. Displayed in "Description" column. + */ + function WarnCacheRatio($val) + { + if ($val < $this->warnRatio) + return 'Cache ratio should be at least '.$this->warnRatio.'%'; + else return ''; + } + + /***********************************************************************************************/ + // HIGH LEVEL UI FUNCTIONS + /***********************************************************************************************/ + + + function UI($pollsecs=5) + { + + $perf_table = adodb_perf::table(); + $conn = $this->conn; + + $app = $conn->host; + if ($conn->host && $conn->database) $app .= ', db='; + $app .= $conn->database; + + if ($app) $app .= ', '; + $savelog = $this->conn->LogSQL(false); + $info = $conn->ServerInfo(); + if (isset($_GET['clearsql'])) { + $this->conn->Execute("delete from $perf_table"); + } + $this->conn->LogSQL($savelog); + + // magic quotes + + if (isset($_GET['sql']) && get_magic_quotes_gpc()) { + $_GET['sql'] = $_GET['sql'] = str_replace(array("\\'",'\"'),array("'",'"'),$_GET['sql']); + } + + if (!isset($_SESSION['ADODB_PERF_SQL'])) $nsql = $_SESSION['ADODB_PERF_SQL'] = 10; + else $nsql = $_SESSION['ADODB_PERF_SQL']; + + $app .= $info['description']; + + + if (isset($_GET['do'])) $do = $_GET['do']; + else if (isset($_POST['do'])) $do = $_POST['do']; + else if (isset($_GET['sql'])) $do = 'viewsql'; + else $do = 'stats'; + + if (isset($_GET['nsql'])) { + if ($_GET['nsql'] > 0) $nsql = $_SESSION['ADODB_PERF_SQL'] = (integer) $_GET['nsql']; + } + echo "ADOdb Performance Monitor on $app"; + if ($do == 'viewsql') $form = "
# SQL:
"; + else $form = " "; + + $allowsql = !defined('ADODB_PERF_NO_RUN_SQL'); + + if (empty($_GET['hidem'])) + echo "
+ ADOdb Performance Monitor for $app
+ Performance Stats   View SQL +   View Tables   Poll Stats", + $allowsql ? '   Run SQL' : '', + "$form", + "
"; + + + switch ($do) { + default: + case 'stats': + echo $this->HealthCheck(); + //$this->conn->debug=1; + echo $this->CheckMemory(); + break; + case 'poll': + echo ""; + break; + case 'poll2': + echo "
";
+			$this->Poll($pollsecs);
+			break;
+		
+		case 'dosql':
+			if (!$allowsql) break;
+			
+			$this->DoSQLForm();
+			break;
+		case 'viewsql':
+			if (empty($_GET['hidem']))
+				echo "  Clear SQL Log
"; + echo($this->SuspiciousSQL($nsql)); + echo($this->ExpensiveSQL($nsql)); + echo($this->InvalidSQL($nsql)); + break; + case 'tables': + echo $this->Tables(); break; + } + global $ADODB_vers; + echo "

$ADODB_vers Sponsored by phpLens
"; + } + + /* + Runs in infinite loop, returning real-time statistics + */ + function Poll($secs=5) + { + $this->conn->fnExecute = false; + //$this->conn->debug=1; + if ($secs <= 1) $secs = 1; + echo "Accumulating statistics, every $secs seconds...\n";flush(); + $arro =& $this->PollParameters(); + $cnt = 0; + set_time_limit(0); + sleep($secs); + while (1) { + + $arr =& $this->PollParameters(); + + $hits = sprintf('%2.2f',$arr[0]); + $reads = sprintf('%12.4f',($arr[1]-$arro[1])/$secs); + $writes = sprintf('%12.4f',($arr[2]-$arro[2])/$secs); + $sess = sprintf('%5d',$arr[3]); + + $load = $this->CPULoad(); + if ($load !== false) { + $oslabel = 'WS-CPU%'; + $osval = sprintf(" %2.1f ",(float) $load); + }else { + $oslabel = ''; + $osval = ''; + } + if ($cnt % 10 == 0) echo " Time ".$oslabel." Hit% Sess Reads/s Writes/s\n"; + $cnt += 1; + echo date('H:i:s').' '.$osval."$hits $sess $reads $writes\n"; + flush(); + + if (connection_aborted()) return; + + sleep($secs); + $arro = $arr; + } + } + + /* + Returns basic health check in a command line interface + */ + function HealthCheckCLI() + { + return $this->HealthCheck(true); + } + + + /* + Returns basic health check as HTML + */ + function HealthCheck($cli=false) + { + $saveE = $this->conn->fnExecute; + $this->conn->fnExecute = false; + if ($cli) $html = ''; + else $html = $this->table.'

'.$this->conn->databaseType.'

'.$this->titles; + + $oldc = false; + $bgc = ''; + foreach($this->settings as $name => $arr) { + if ($arr === false) break; + + if (!is_string($name)) { + if ($cli) $html .= " -- $arr -- \n"; + else $html .= "color>$arr  "; + continue; + } + + if (!is_array($arr)) break; + $category = $arr[0]; + $how = $arr[1]; + if (sizeof($arr)>2) $desc = $arr[2]; + else $desc = '   '; + + + if ($category == 'HIDE') continue; + + $val = $this->_DBParameter($how); + + if ($desc && strncmp($desc,"=",1) === 0) { + $fn = substr($desc,1); + $desc = $this->$fn($val); + } + + if ($val === false) { + $m = $this->conn->ErrorMsg(); + $val = "Error: $m"; + } else { + if (is_numeric($val) && $val >= 256*1024) { + if ($val % (1024*1024) == 0) { + $val /= (1024*1024); + $val .= 'M'; + } else if ($val % 1024 == 0) { + $val /= 1024; + $val .= 'K'; + } + //$val = htmlspecialchars($val); + } + } + if ($category != $oldc) { + $oldc = $category; + //$bgc = ($bgc == ' bgcolor='.$this->color) ? ' bgcolor=white' : ' bgcolor='.$this->color; + } + if (strlen($desc)==0) $desc = ' '; + if (strlen($val)==0) $val = ' '; + if ($cli) { + $html .= str_replace(' ','',sprintf($this->cliFormat,strip_tags($name),strip_tags($val),strip_tags($desc))); + + }else { + $html .= "".$name.''.$val.''.$desc."\n"; + } + } + + if (!$cli) $html .= "\n"; + $this->conn->fnExecute = $saveE; + + return $html; + } + + function Tables($orderby='1') + { + if (!$this->tablesSQL) return false; + + $savelog = $this->conn->LogSQL(false); + $rs = $this->conn->Execute($this->tablesSQL.' order by '.$orderby); + $this->conn->LogSQL($savelog); + $html = rs2html($rs,false,false,false,false); + return $html; + } + + + function CreateLogTable() + { + if (!$this->createTableSQL) return false; + + $table = $this->table(); + $sql = str_replace('adodb_logsql',$table,$this->createTableSQL); + $savelog = $this->conn->LogSQL(false); + $ok = $this->conn->Execute($sql); + $this->conn->LogSQL($savelog); + return ($ok) ? true : false; + } + + function DoSQLForm() + { + + + $PHP_SELF = $_SERVER['PHP_SELF']; + $sql = isset($_REQUEST['sql']) ? $_REQUEST['sql'] : ''; + + if (isset($_SESSION['phplens_sqlrows'])) $rows = $_SESSION['phplens_sqlrows']; + else $rows = 3; + + if (isset($_REQUEST['SMALLER'])) { + $rows /= 2; + if ($rows < 3) $rows = 3; + $_SESSION['phplens_sqlrows'] = $rows; + } + if (isset($_REQUEST['BIGGER'])) { + $rows *= 2; + $_SESSION['phplens_sqlrows'] = $rows; + } + +?> + +
+ + + + + + +
Form size: + + +
+
+
+ +undomq(trim($sql)); + if (substr($sql,strlen($sql)-1) === ';') { + $print = true; + $sqla = $this->SplitSQL($sql); + } else { + $print = false; + $sqla = array($sql); + } + foreach($sqla as $sqls) { + + if (!$sqls) continue; + + if ($print) { + print "

".htmlspecialchars($sqls)."

"; + flush(); + } + $savelog = $this->conn->LogSQL(false); + $rs = $this->conn->Execute($sqls); + $this->conn->LogSQL($savelog); + if ($rs && is_object($rs) && !$rs->EOF) { + rs2html($rs); + while ($rs->NextRecordSet()) { + print "
 
"; + rs2html($rs); + } + } else { + $e1 = (integer) $this->conn->ErrorNo(); + $e2 = $this->conn->ErrorMsg(); + if (($e1) || ($e2)) { + if (empty($e1)) $e1 = '-1'; // postgresql fix + print '   '.$e1.': '.$e2; + } else { + print "

No Recordset returned

"; + } + } + } // foreach + } + + function SplitSQL($sql) + { + $arr = explode(';',$sql); + return $arr; + } + + function undomq($m) + { + if (get_magic_quotes_gpc()) { + // undo the damage + $m = str_replace('\\\\','\\',$m); + $m = str_replace('\"','"',$m); + $m = str_replace('\\\'','\'',$m); + } + return $m; +} + + + /************************************************************************/ + + /** + * Reorganise multiple table-indices/statistics/.. + * OptimizeMode could be given by last Parameter + * + * @example + *
+     *          optimizeTables( 'tableA');
+     *      
+ *
+     *          optimizeTables( 'tableA', 'tableB', 'tableC');
+     *      
+ *
+     *          optimizeTables( 'tableA', 'tableB', ADODB_OPT_LOW);
+     *      
+ * + * @param string table name of the table to optimize + * @param int mode optimization-mode + * ADODB_OPT_HIGH for full optimization + * ADODB_OPT_LOW for CPU-less optimization + * Default is LOW ADODB_OPT_LOW + * @author Markus Staab + * @return Returns true on success and false on error + */ + function OptimizeTables() + { + $args = func_get_args(); + $numArgs = func_num_args(); + + if ( $numArgs == 0) return false; + + $mode = ADODB_OPT_LOW; + $lastArg = $args[ $numArgs - 1]; + if ( !is_string($lastArg)) { + $mode = $lastArg; + unset( $args[ $numArgs - 1]); + } + + foreach( $args as $table) { + $this->optimizeTable( $table, $mode); + } + } + + /** + * Reorganise the table-indices/statistics/.. depending on the given mode. + * Default Implementation throws an error. + * + * @param string table name of the table to optimize + * @param int mode optimization-mode + * ADODB_OPT_HIGH for full optimization + * ADODB_OPT_LOW for CPU-less optimization + * Default is LOW ADODB_OPT_LOW + * @author Markus Staab + * @return Returns true on success and false on error + */ + function OptimizeTable( $table, $mode = ADODB_OPT_LOW) + { + ADOConnection::outp( sprintf( "

%s: '%s' not implemented for driver '%s'

", __CLASS__, __FUNCTION__, $this->conn->databaseType)); + return false; + } + + /** + * Reorganise current database. + * Default implementation loops over all MetaTables() and + * optimize each using optmizeTable() + * + * @author Markus Staab + * @return Returns true on success and false on error + */ + function optimizeDatabase() + { + $conn = $this->conn; + if ( !$conn) return false; + + $tables = $conn->MetaTables( 'TABLES'); + if ( !$tables ) return false; + + foreach( $tables as $table) { + if ( !$this->optimizeTable( $table)) { + return false; + } + } + + return true; + } + // end hack +} + +?> diff --git a/Source/gallery2/lib/adodb/adodb-php4.inc.php b/Source/gallery2/lib/adodb/adodb-php4.inc.php new file mode 100644 index 0000000..b6c9ed9 --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb-php4.inc.php @@ -0,0 +1,16 @@ + diff --git a/Source/gallery2/lib/adodb/adodb-time.inc.php b/Source/gallery2/lib/adodb/adodb-time.inc.php new file mode 100644 index 0000000..e1cca59 --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb-time.inc.php @@ -0,0 +1,1337 @@ + 4 digit year conversion. The maximum is billions of years in the +future, but this is a theoretical limit as the computation of that year +would take too long with the current implementation of adodb_mktime(). + +This library replaces native functions as follows: + +
	
+	getdate()  with  adodb_getdate()
+	date()     with  adodb_date() 
+	gmdate()   with  adodb_gmdate()
+	mktime()   with  adodb_mktime()
+	gmmktime() with  adodb_gmmktime()
+	strftime() with  adodb_strftime()
+	strftime() with  adodb_gmstrftime()
+
+ +The parameters are identical, except that adodb_date() accepts a subset +of date()'s field formats. Mktime() will convert from local time to GMT, +and date() will convert from GMT to local time, but daylight savings is +not handled currently. + +This library is independant of the rest of ADOdb, and can be used +as standalone code. + +PERFORMANCE + +For high speed, this library uses the native date functions where +possible, and only switches to PHP code when the dates fall outside +the 32-bit signed integer range. + +GREGORIAN CORRECTION + +Pope Gregory shortened October of A.D. 1582 by ten days. Thursday, +October 4, 1582 (Julian) was followed immediately by Friday, October 15, +1582 (Gregorian). + +Since 0.06, we handle this correctly, so: + +adodb_mktime(0,0,0,10,15,1582) - adodb_mktime(0,0,0,10,4,1582) + == 24 * 3600 (1 day) + +============================================================================= + +COPYRIGHT + +(c) 2003-2005 John Lim and released under BSD-style license except for code by +jackbbs, which includes adodb_mktime, adodb_get_gmt_diff, adodb_is_leap_year +and originally found at http://www.php.net/manual/en/function.mktime.php + +============================================================================= + +BUG REPORTS + +These should be posted to the ADOdb forums at + + http://phplens.com/lens/lensforum/topics.php?id=4 + +============================================================================= + +FUNCTION DESCRIPTIONS + + +** FUNCTION adodb_getdate($date=false) + +Returns an array containing date information, as getdate(), but supports +dates greater than 1901 to 2038. The local date/time format is derived from a +heuristic the first time adodb_getdate is called. + + +** FUNCTION adodb_date($fmt, $timestamp = false) + +Convert a timestamp to a formatted local date. If $timestamp is not defined, the +current timestamp is used. Unlike the function date(), it supports dates +outside the 1901 to 2038 range. + +The format fields that adodb_date supports: + +
+	a - "am" or "pm" 
+	A - "AM" or "PM" 
+	d - day of the month, 2 digits with leading zeros; i.e. "01" to "31" 
+	D - day of the week, textual, 3 letters; e.g. "Fri" 
+	F - month, textual, long; e.g. "January" 
+	g - hour, 12-hour format without leading zeros; i.e. "1" to "12" 
+	G - hour, 24-hour format without leading zeros; i.e. "0" to "23" 
+	h - hour, 12-hour format; i.e. "01" to "12" 
+	H - hour, 24-hour format; i.e. "00" to "23" 
+	i - minutes; i.e. "00" to "59" 
+	j - day of the month without leading zeros; i.e. "1" to "31" 
+	l (lowercase 'L') - day of the week, textual, long; e.g. "Friday"  
+	L - boolean for whether it is a leap year; i.e. "0" or "1" 
+	m - month; i.e. "01" to "12" 
+	M - month, textual, 3 letters; e.g. "Jan" 
+	n - month without leading zeros; i.e. "1" to "12" 
+	O - Difference to Greenwich time in hours; e.g. "+0200" 
+	Q - Quarter, as in 1, 2, 3, 4 
+	r - RFC 2822 formatted date; e.g. "Thu, 21 Dec 2000 16:01:07 +0200" 
+	s - seconds; i.e. "00" to "59" 
+	S - English ordinal suffix for the day of the month, 2 characters; 
+	   			i.e. "st", "nd", "rd" or "th" 
+	t - number of days in the given month; i.e. "28" to "31"
+	T - Timezone setting of this machine; e.g. "EST" or "MDT" 
+	U - seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)  
+	w - day of the week, numeric, i.e. "0" (Sunday) to "6" (Saturday) 
+	Y - year, 4 digits; e.g. "1999" 
+	y - year, 2 digits; e.g. "99" 
+	z - day of the year; i.e. "0" to "365" 
+	Z - timezone offset in seconds (i.e. "-43200" to "43200"). 
+	   			The offset for timezones west of UTC is always negative, 
+				and for those east of UTC is always positive. 
+
+ +Unsupported: +
+	B - Swatch Internet time 
+	I (capital i) - "1" if Daylight Savings Time, "0" otherwise.
+	W - ISO-8601 week number of year, weeks starting on Monday 
+
+
+ + +** FUNCTION adodb_date2($fmt, $isoDateString = false) +Same as adodb_date, but 2nd parameter accepts iso date, eg. + + adodb_date2('d-M-Y H:i','2003-12-25 13:01:34'); + + +** FUNCTION adodb_gmdate($fmt, $timestamp = false) + +Convert a timestamp to a formatted GMT date. If $timestamp is not defined, the +current timestamp is used. Unlike the function date(), it supports dates +outside the 1901 to 2038 range. + + +** FUNCTION adodb_mktime($hr, $min, $sec[, $month, $day, $year]) + +Converts a local date to a unix timestamp. Unlike the function mktime(), it supports +dates outside the 1901 to 2038 range. All parameters are optional. + + +** FUNCTION adodb_gmmktime($hr, $min, $sec [, $month, $day, $year]) + +Converts a gmt date to a unix timestamp. Unlike the function gmmktime(), it supports +dates outside the 1901 to 2038 range. Differs from gmmktime() in that all parameters +are currently compulsory. + +** FUNCTION adodb_gmstrftime($fmt, $timestamp = false) +Convert a timestamp to a formatted GMT date. + +** FUNCTION adodb_strftime($fmt, $timestamp = false) + +Convert a timestamp to a formatted local date. Internally converts $fmt into +adodb_date format, then echo result. + +For best results, you can define the local date format yourself. Define a global +variable $ADODB_DATE_LOCALE which is an array, 1st element is date format using +adodb_date syntax, and 2nd element is the time format, also in adodb_date syntax. + + eg. $ADODB_DATE_LOCALE = array('d/m/Y','H:i:s'); + + Supported format codes: + +
+	%a - abbreviated weekday name according to the current locale 
+	%A - full weekday name according to the current locale 
+	%b - abbreviated month name according to the current locale 
+	%B - full month name according to the current locale 
+	%c - preferred date and time representation for the current locale 
+	%d - day of the month as a decimal number (range 01 to 31) 
+	%D - same as %m/%d/%y 
+	%e - day of the month as a decimal number, a single digit is preceded by a space (range ' 1' to '31') 
+	%h - same as %b
+	%H - hour as a decimal number using a 24-hour clock (range 00 to 23) 
+	%I - hour as a decimal number using a 12-hour clock (range 01 to 12) 
+	%m - month as a decimal number (range 01 to 12) 
+	%M - minute as a decimal number 
+	%n - newline character 
+	%p - either `am' or `pm' according to the given time value, or the corresponding strings for the current locale 
+	%r - time in a.m. and p.m. notation 
+	%R - time in 24 hour notation 
+	%S - second as a decimal number 
+	%t - tab character 
+	%T - current time, equal to %H:%M:%S 
+	%x - preferred date representation for the current locale without the time 
+	%X - preferred time representation for the current locale without the date 
+	%y - year as a decimal number without a century (range 00 to 99) 
+	%Y - year as a decimal number including the century 
+	%Z - time zone or name or abbreviation 
+	%% - a literal `%' character 
+
+ + Unsupported codes: +
+	%C - century number (the year divided by 100 and truncated to an integer, range 00 to 99) 
+	%g - like %G, but without the century. 
+	%G - The 4-digit year corresponding to the ISO week number (see %V). 
+	     This has the same format and value as %Y, except that if the ISO week number belongs 
+		 to the previous or next year, that year is used instead. 
+	%j - day of the year as a decimal number (range 001 to 366) 
+	%u - weekday as a decimal number [1,7], with 1 representing Monday 
+	%U - week number of the current year as a decimal number, starting 
+	    with the first Sunday as the first day of the first week 
+	%V - The ISO 8601:1988 week number of the current year as a decimal number, 
+	     range 01 to 53, where week 1 is the first week that has at least 4 days in the 
+		 current year, and with Monday as the first day of the week. (Use %G or %g for 
+		 the year component that corresponds to the week number for the specified timestamp.) 
+	%w - day of the week as a decimal, Sunday being 0 
+	%W - week number of the current year as a decimal number, starting with the 
+	     first Monday as the first day of the first week 
+
+ +============================================================================= + +NOTES + +Useful url for generating test timestamps: + http://www.4webhelp.net/us/timestamp.php + +Possible future optimizations include + +a. Using an algorithm similar to Plauger's in "The Standard C Library" +(page 428, xttotm.c _Ttotm() function). Plauger's algorithm will not +work outside 32-bit signed range, so i decided not to implement it. + +b. Implement daylight savings, which looks awfully complicated, see + http://webexhibits.org/daylightsaving/ + + +CHANGELOG +- 19 March 2006 0.24 +Changed strftime() locale detection, because some locales prepend the day of week to the date when %c is used. + +- 10 Feb 2006 0.23 +PHP5 compat: when we detect PHP5, the RFC2822 format for gmt 0000hrs is changed from -0000 to +0000. + In PHP4, we will still use -0000 for 100% compat with PHP4. + +- 08 Sept 2005 0.22 +In adodb_date2(), $is_gmt not supported properly. Fixed. + +- 18 July 2005 0.21 +In PHP 4.3.11, the 'r' format has changed. Leading 0 in day is added. Changed for compat. +Added support for negative months in adodb_mktime(). + +- 24 Feb 2005 0.20 +Added limited strftime/gmstrftime support. x10 improvement in performance of adodb_date(). + +- 21 Dec 2004 0.17 +In adodb_getdate(), the timestamp was accidentally converted to gmt when $is_gmt is false. +Also adodb_mktime(0,0,0) did not work properly. Both fixed thx Mauro. + +- 17 Nov 2004 0.16 +Removed intval typecast in adodb_mktime() for secs, allowing: + adodb_mktime(0,0,0 + 2236672153,1,1,1934); +Suggested by Ryan. + +- 18 July 2004 0.15 +All params in adodb_mktime were formerly compulsory. Now only the hour, min, secs is compulsory. +This brings it more in line with mktime (still not identical). + +- 23 June 2004 0.14 + +Allow you to define your own daylights savings function, adodb_daylight_sv. +If the function is defined (somewhere in an include), then you can correct for daylights savings. + +In this example, we apply daylights savings in June or July, adding one hour. This is extremely +unrealistic as it does not take into account time-zone, geographic location, current year. + +function adodb_daylight_sv(&$arr, $is_gmt) +{ + if ($is_gmt) return; + $m = $arr['mon']; + if ($m == 6 || $m == 7) $arr['hours'] += 1; +} + +This is only called by adodb_date() and not by adodb_mktime(). + +The format of $arr is +Array ( + [seconds] => 0 + [minutes] => 0 + [hours] => 0 + [mday] => 1 # day of month, eg 1st day of the month + [mon] => 2 # month (eg. Feb) + [year] => 2102 + [yday] => 31 # days in current year + [leap] => # true if leap year + [ndays] => 28 # no of days in current month + ) + + +- 28 Apr 2004 0.13 +Fixed adodb_date to properly support $is_gmt. Thx to Dimitar Angelov. + +- 20 Mar 2004 0.12 +Fixed month calculation error in adodb_date. 2102-June-01 appeared as 2102-May-32. + +- 26 Oct 2003 0.11 +Because of daylight savings problems (some systems apply daylight savings to +January!!!), changed adodb_get_gmt_diff() to ignore daylight savings. + +- 9 Aug 2003 0.10 +Fixed bug with dates after 2038. +See http://phplens.com/lens/lensforum/msgs.php?id=6980 + +- 1 July 2003 0.09 +Added support for Q (Quarter). +Added adodb_date2(), which accepts ISO date in 2nd param + +- 3 March 2003 0.08 +Added support for 'S' adodb_date() format char. Added constant ADODB_ALLOW_NEGATIVE_TS +if you want PHP to handle negative timestamps between 1901 to 1969. + +- 27 Feb 2003 0.07 +All negative numbers handled by adodb now because of RH 7.3+ problems. +See http://bugs.php.net/bug.php?id=20048&edit=2 + +- 4 Feb 2003 0.06 +Fixed a typo, 1852 changed to 1582! This means that pre-1852 dates +are now correctly handled. + +- 29 Jan 2003 0.05 + +Leap year checking differs under Julian calendar (pre 1582). Also +leap year code optimized by checking for most common case first. + +We also handle month overflow correctly in mktime (eg month set to 13). + +Day overflow for less than one month's days is supported. + +- 28 Jan 2003 0.04 + +Gregorian correction handled. In PHP5, we might throw an error if +mktime uses invalid dates around 5-14 Oct 1582. Released with ADOdb 3.10. +Added limbo 5-14 Oct 1582 check, when we set to 15 Oct 1582. + +- 27 Jan 2003 0.03 + +Fixed some more month problems due to gmt issues. Added constant ADODB_DATE_VERSION. +Fixed calculation of days since start of year for <1970. + +- 27 Jan 2003 0.02 + +Changed _adodb_getdate() to inline leap year checking for better performance. +Fixed problem with time-zones west of GMT +0000. + +- 24 Jan 2003 0.01 + +First implementation. +*/ + + +/* Initialization */ + +/* + Version Number +*/ +define('ADODB_DATE_VERSION',0.24); + +/* + This code was originally for windows. But apparently this problem happens + also with Linux, RH 7.3 and later! + + glibc-2.2.5-34 and greater has been changed to return -1 for dates < + 1970. This used to work. The problem exists with RedHat 7.3 and 8.0 + echo (mktime(0, 0, 0, 1, 1, 1960)); // prints -1 + + References: + http://bugs.php.net/bug.php?id=20048&edit=2 + http://lists.debian.org/debian-glibc/2002/debian-glibc-200205/msg00010.html +*/ + +if (!defined('ADODB_ALLOW_NEGATIVE_TS')) define('ADODB_NO_NEGATIVE_TS',1); + +function adodb_date_test_date($y1,$m,$d=13) +{ + $t = adodb_mktime(0,0,0,$m,$d,$y1); + $rez = adodb_date('Y-n-j H:i:s',$t); + if ("$y1-$m-$d 00:00:00" != $rez) { + print "$y1 error, expected=$y1-$m-$d 00:00:00, adodb=$rez
"; + return false; + } + return true; +} + +function adodb_date_test_strftime($fmt) +{ + $s1 = strftime($fmt); + $s2 = adodb_strftime($fmt); + + if ($s1 == $s2) return true; + + echo "error for $fmt, strftime=$s1, $adodb=$s2
"; + return false; +} + +/** + Test Suite +*/ +function adodb_date_test() +{ + + error_reporting(E_ALL); + print "

Testing adodb_date and adodb_mktime. version=".ADODB_DATE_VERSION.' PHP='.PHP_VERSION."

"; + @set_time_limit(0); + $fail = false; + + // This flag disables calling of PHP native functions, so we can properly test the code + if (!defined('ADODB_TEST_DATES')) define('ADODB_TEST_DATES',1); + + adodb_date_test_strftime('%Y %m %x %X'); + adodb_date_test_strftime("%A %d %B %Y"); + adodb_date_test_strftime("%H %M S"); + + $t = adodb_mktime(0,0,0); + if (!(adodb_date('Y-m-d') == date('Y-m-d'))) print 'Error in '.adodb_mktime(0,0,0).'
'; + + $t = adodb_mktime(0,0,0,6,1,2102); + if (!(adodb_date('Y-m-d',$t) == '2102-06-01')) print 'Error in '.adodb_date('Y-m-d',$t).'
'; + + $t = adodb_mktime(0,0,0,2,1,2102); + if (!(adodb_date('Y-m-d',$t) == '2102-02-01')) print 'Error in '.adodb_date('Y-m-d',$t).'
'; + + + print "

Testing gregorian <=> julian conversion

"; + $t = adodb_mktime(0,0,0,10,11,1492); + //http://www.holidayorigins.com/html/columbus_day.html - Friday check + if (!(adodb_date('D Y-m-d',$t) == 'Fri 1492-10-11')) print 'Error in Columbus landing
'; + + $t = adodb_mktime(0,0,0,2,29,1500); + if (!(adodb_date('Y-m-d',$t) == '1500-02-29')) print 'Error in julian leap years
'; + + $t = adodb_mktime(0,0,0,2,29,1700); + if (!(adodb_date('Y-m-d',$t) == '1700-03-01')) print 'Error in gregorian leap years
'; + + print adodb_mktime(0,0,0,10,4,1582).' '; + print adodb_mktime(0,0,0,10,15,1582); + $diff = (adodb_mktime(0,0,0,10,15,1582) - adodb_mktime(0,0,0,10,4,1582)); + if ($diff != 3600*24) print " Error in gregorian correction = ".($diff/3600/24)." days
"; + + print " 15 Oct 1582, Fri=".(adodb_dow(1582,10,15) == 5 ? 'Fri' : 'Error')."
"; + print " 4 Oct 1582, Thu=".(adodb_dow(1582,10,4) == 4 ? 'Thu' : 'Error')."
"; + + print "

Testing overflow

"; + + $t = adodb_mktime(0,0,0,3,33,1965); + if (!(adodb_date('Y-m-d',$t) == '1965-04-02')) print 'Error in day overflow 1
'; + $t = adodb_mktime(0,0,0,4,33,1971); + if (!(adodb_date('Y-m-d',$t) == '1971-05-03')) print 'Error in day overflow 2
'; + $t = adodb_mktime(0,0,0,1,60,1965); + if (!(adodb_date('Y-m-d',$t) == '1965-03-01')) print 'Error in day overflow 3 '.adodb_date('Y-m-d',$t).'
'; + $t = adodb_mktime(0,0,0,12,32,1965); + if (!(adodb_date('Y-m-d',$t) == '1966-01-01')) print 'Error in day overflow 4 '.adodb_date('Y-m-d',$t).'
'; + $t = adodb_mktime(0,0,0,12,63,1965); + if (!(adodb_date('Y-m-d',$t) == '1966-02-01')) print 'Error in day overflow 5 '.adodb_date('Y-m-d',$t).'
'; + $t = adodb_mktime(0,0,0,13,3,1965); + if (!(adodb_date('Y-m-d',$t) == '1966-01-03')) print 'Error in mth overflow 1
'; + + print "Testing 2-digit => 4-digit year conversion

"; + if (adodb_year_digit_check(00) != 2000) print "Err 2-digit 2000
"; + if (adodb_year_digit_check(10) != 2010) print "Err 2-digit 2010
"; + if (adodb_year_digit_check(20) != 2020) print "Err 2-digit 2020
"; + if (adodb_year_digit_check(30) != 2030) print "Err 2-digit 2030
"; + if (adodb_year_digit_check(40) != 1940) print "Err 2-digit 1940
"; + if (adodb_year_digit_check(50) != 1950) print "Err 2-digit 1950
"; + if (adodb_year_digit_check(90) != 1990) print "Err 2-digit 1990
"; + + // Test string formating + print "

Testing date formating

"; + $fmt = '\d\a\t\e T Y-m-d H:i:s a A d D F g G h H i j l L m M n O \R\F\C2822 r s t U w y Y z Z 2003'; + $s1 = date($fmt,0); + $s2 = adodb_date($fmt,0); + if ($s1 != $s2) { + print " date() 0 failed
$s1
$s2
"; + } + flush(); + for ($i=100; --$i > 0; ) { + + $ts = 3600.0*((rand()%60000)+(rand()%60000))+(rand()%60000); + $s1 = date($fmt,$ts); + $s2 = adodb_date($fmt,$ts); + //print "$s1
$s2

"; + $pos = strcmp($s1,$s2); + + if (($s1) != ($s2)) { + for ($j=0,$k=strlen($s1); $j < $k; $j++) { + if ($s1[$j] != $s2[$j]) { + print substr($s1,$j).' '; + break; + } + } + print "Error date(): $ts

 
+  \"$s1\" (date len=".strlen($s1).")
+  \"$s2\" (adodb_date len=".strlen($s2).")

"; + $fail = true; + } + + $a1 = getdate($ts); + $a2 = adodb_getdate($ts); + $rez = array_diff($a1,$a2); + if (sizeof($rez)>0) { + print "Error getdate() $ts
"; + print_r($a1); + print "
"; + print_r($a2); + print "

"; + $fail = true; + } + } + + // Test generation of dates outside 1901-2038 + print "

Testing random dates between 100 and 4000

"; + adodb_date_test_date(100,1); + for ($i=100; --$i >= 0;) { + $y1 = 100+rand(0,1970-100); + $m = rand(1,12); + adodb_date_test_date($y1,$m); + + $y1 = 3000-rand(0,3000-1970); + adodb_date_test_date($y1,$m); + } + print '

'; + $start = 1960+rand(0,10); + $yrs = 12; + $i = 365.25*86400*($start-1970); + $offset = 36000+rand(10000,60000); + $max = 365*$yrs*86400; + $lastyear = 0; + + // we generate a timestamp, convert it to a date, and convert it back to a timestamp + // and check if the roundtrip broke the original timestamp value. + print "Testing $start to ".($start+$yrs).", or $max seconds, offset=$offset: "; + $cnt = 0; + for ($max += $i; $i < $max; $i += $offset) { + $ret = adodb_date('m,d,Y,H,i,s',$i); + $arr = explode(',',$ret); + if ($lastyear != $arr[2]) { + $lastyear = $arr[2]; + print " $lastyear "; + flush(); + } + $newi = adodb_mktime($arr[3],$arr[4],$arr[5],$arr[0],$arr[1],$arr[2]); + if ($i != $newi) { + print "Error at $i, adodb_mktime returned $newi ($ret)"; + $fail = true; + break; + } + $cnt += 1; + } + echo "Tested $cnt dates
"; + if (!$fail) print "

Passed !

"; + else print "

Failed :-(

"; +} + +/** + Returns day of week, 0 = Sunday,... 6=Saturday. + Algorithm from PEAR::Date_Calc +*/ +function adodb_dow($year, $month, $day) +{ +/* +Pope Gregory removed 10 days - October 5 to October 14 - from the year 1582 and +proclaimed that from that time onwards 3 days would be dropped from the calendar +every 400 years. + +Thursday, October 4, 1582 (Julian) was followed immediately by Friday, October 15, 1582 (Gregorian). +*/ + if ($year <= 1582) { + if ($year < 1582 || + ($year == 1582 && ($month < 10 || ($month == 10 && $day < 15)))) $greg_correction = 3; + else + $greg_correction = 0; + } else + $greg_correction = 0; + + if($month > 2) + $month -= 2; + else { + $month += 10; + $year--; + } + + $day = floor((13 * $month - 1) / 5) + + $day + ($year % 100) + + floor(($year % 100) / 4) + + floor(($year / 100) / 4) - 2 * + floor($year / 100) + 77 + $greg_correction; + + return $day - 7 * floor($day / 7); +} + + +/** + Checks for leap year, returns true if it is. No 2-digit year check. Also + handles julian calendar correctly. +*/ +function _adodb_is_leap_year($year) +{ + if ($year % 4 != 0) return false; + + if ($year % 400 == 0) { + return true; + // if gregorian calendar (>1582), century not-divisible by 400 is not leap + } else if ($year > 1582 && $year % 100 == 0 ) { + return false; + } + + return true; +} + + +/** + checks for leap year, returns true if it is. Has 2-digit year check +*/ +function adodb_is_leap_year($year) +{ + return _adodb_is_leap_year(adodb_year_digit_check($year)); +} + +/** + Fix 2-digit years. Works for any century. + Assumes that if 2-digit is more than 30 years in future, then previous century. +*/ +function adodb_year_digit_check($y) +{ + if ($y < 100) { + + $yr = (integer) date("Y"); + $century = (integer) ($yr /100); + + if ($yr%100 > 50) { + $c1 = $century + 1; + $c0 = $century; + } else { + $c1 = $century; + $c0 = $century - 1; + } + $c1 *= 100; + // if 2-digit year is less than 30 years in future, set it to this century + // otherwise if more than 30 years in future, then we set 2-digit year to the prev century. + if (($y + $c1) < $yr+30) $y = $y + $c1; + else $y = $y + $c0*100; + } + return $y; +} + +/** + get local time zone offset from GMT +*/ +function adodb_get_gmt_diff() +{ +static $TZ; + if (isset($TZ)) return $TZ; + + $TZ = mktime(0,0,0,1,2,1970,0) - gmmktime(0,0,0,1,2,1970,0); + return $TZ; +} + +/** + Returns an array with date info. +*/ +function adodb_getdate($d=false,$fast=false) +{ + if ($d === false) return getdate(); + if (!defined('ADODB_TEST_DATES')) { + if ((abs($d) <= 0x7FFFFFFF)) { // check if number in 32-bit signed range + if (!defined('ADODB_NO_NEGATIVE_TS') || $d >= 0) // if windows, must be +ve integer + return @getdate($d); + } + } + return _adodb_getdate($d); +} + +/* +// generate $YRS table for _adodb_getdate() +function adodb_date_gentable($out=true) +{ + + for ($i=1970; $i >= 1600; $i-=10) { + $s = adodb_gmmktime(0,0,0,1,1,$i); + echo "$i => $s,
"; + } +} +adodb_date_gentable(); + +for ($i=1970; $i > 1500; $i--) { + +echo "
$i "; + adodb_date_test_date($i,1,1); +} + +*/ + + +$_month_table_normal = array("",31,28,31,30,31,30,31,31,30,31,30,31); +$_month_table_leaf = array("",31,29,31,30,31,30,31,31,30,31,30,31); + +function adodb_validdate($y,$m,$d) +{ +global $_month_table_normal,$_month_table_leaf; + + if (_adodb_is_leap_year($y)) $marr =& $_month_table_leaf; + else $marr =& $_month_table_normal; + + if ($m > 12 || $m < 1) return false; + + if ($d > 31 || $d < 1) return false; + + if ($marr[$m] < $d) return false; + + if ($y < 1000 && $y > 3000) return false; + + return true; +} + +/** + Low-level function that returns the getdate() array. We have a special + $fast flag, which if set to true, will return fewer array values, + and is much faster as it does not calculate dow, etc. +*/ +function _adodb_getdate($origd=false,$fast=false,$is_gmt=false) +{ +static $YRS; +global $_month_table_normal,$_month_table_leaf; + + $d = $origd - ($is_gmt ? 0 : adodb_get_gmt_diff()); + + $_day_power = 86400; + $_hour_power = 3600; + $_min_power = 60; + + if ($d < -12219321600) $d -= 86400*10; // if 15 Oct 1582 or earlier, gregorian correction + + $_month_table_normal = array("",31,28,31,30,31,30,31,31,30,31,30,31); + $_month_table_leaf = array("",31,29,31,30,31,30,31,31,30,31,30,31); + + $d366 = $_day_power * 366; + $d365 = $_day_power * 365; + + if ($d < 0) { + + if (empty($YRS)) $YRS = array( + 1970 => 0, + 1960 => -315619200, + 1950 => -631152000, + 1940 => -946771200, + 1930 => -1262304000, + 1920 => -1577923200, + 1910 => -1893456000, + 1900 => -2208988800, + 1890 => -2524521600, + 1880 => -2840140800, + 1870 => -3155673600, + 1860 => -3471292800, + 1850 => -3786825600, + 1840 => -4102444800, + 1830 => -4417977600, + 1820 => -4733596800, + 1810 => -5049129600, + 1800 => -5364662400, + 1790 => -5680195200, + 1780 => -5995814400, + 1770 => -6311347200, + 1760 => -6626966400, + 1750 => -6942499200, + 1740 => -7258118400, + 1730 => -7573651200, + 1720 => -7889270400, + 1710 => -8204803200, + 1700 => -8520336000, + 1690 => -8835868800, + 1680 => -9151488000, + 1670 => -9467020800, + 1660 => -9782640000, + 1650 => -10098172800, + 1640 => -10413792000, + 1630 => -10729324800, + 1620 => -11044944000, + 1610 => -11360476800, + 1600 => -11676096000); + + if ($is_gmt) $origd = $d; + // The valid range of a 32bit signed timestamp is typically from + // Fri, 13 Dec 1901 20:45:54 GMT to Tue, 19 Jan 2038 03:14:07 GMT + // + + # old algorithm iterates through all years. new algorithm does it in + # 10 year blocks + + /* + # old algo + for ($a = 1970 ; --$a >= 0;) { + $lastd = $d; + + if ($leaf = _adodb_is_leap_year($a)) $d += $d366; + else $d += $d365; + + if ($d >= 0) { + $year = $a; + break; + } + } + */ + + $lastsecs = 0; + $lastyear = 1970; + foreach($YRS as $year => $secs) { + if ($d >= $secs) { + $a = $lastyear; + break; + } + $lastsecs = $secs; + $lastyear = $year; + } + + $d -= $lastsecs; + if (!isset($a)) $a = $lastyear; + + //echo ' yr=',$a,' ', $d,'.'; + + for (; --$a >= 0;) { + $lastd = $d; + + if ($leaf = _adodb_is_leap_year($a)) $d += $d366; + else $d += $d365; + + if ($d >= 0) { + $year = $a; + break; + } + } + /**/ + + $secsInYear = 86400 * ($leaf ? 366 : 365) + $lastd; + + $d = $lastd; + $mtab = ($leaf) ? $_month_table_leaf : $_month_table_normal; + for ($a = 13 ; --$a > 0;) { + $lastd = $d; + $d += $mtab[$a] * $_day_power; + if ($d >= 0) { + $month = $a; + $ndays = $mtab[$a]; + break; + } + } + + $d = $lastd; + $day = $ndays + ceil(($d+1) / ($_day_power)); + + $d += ($ndays - $day+1)* $_day_power; + $hour = floor($d/$_hour_power); + + } else { + for ($a = 1970 ;; $a++) { + $lastd = $d; + + if ($leaf = _adodb_is_leap_year($a)) $d -= $d366; + else $d -= $d365; + if ($d < 0) { + $year = $a; + break; + } + } + $secsInYear = $lastd; + $d = $lastd; + $mtab = ($leaf) ? $_month_table_leaf : $_month_table_normal; + for ($a = 1 ; $a <= 12; $a++) { + $lastd = $d; + $d -= $mtab[$a] * $_day_power; + if ($d < 0) { + $month = $a; + $ndays = $mtab[$a]; + break; + } + } + $d = $lastd; + $day = ceil(($d+1) / $_day_power); + $d = $d - ($day-1) * $_day_power; + $hour = floor($d /$_hour_power); + } + + $d -= $hour * $_hour_power; + $min = floor($d/$_min_power); + $secs = $d - $min * $_min_power; + if ($fast) { + return array( + 'seconds' => $secs, + 'minutes' => $min, + 'hours' => $hour, + 'mday' => $day, + 'mon' => $month, + 'year' => $year, + 'yday' => floor($secsInYear/$_day_power), + 'leap' => $leaf, + 'ndays' => $ndays + ); + } + + + $dow = adodb_dow($year,$month,$day); + + return array( + 'seconds' => $secs, + 'minutes' => $min, + 'hours' => $hour, + 'mday' => $day, + 'wday' => $dow, + 'mon' => $month, + 'year' => $year, + 'yday' => floor($secsInYear/$_day_power), + 'weekday' => gmdate('l',$_day_power*(3+$dow)), + 'month' => gmdate('F',mktime(0,0,0,$month,2,1971)), + 0 => $origd + ); +} + +function adodb_gmdate($fmt,$d=false) +{ + return adodb_date($fmt,$d,true); +} + +// accepts unix timestamp and iso date format in $d +function adodb_date2($fmt, $d=false, $is_gmt=false) +{ + if ($d !== false) { + if (!preg_match( + "|^([0-9]{4})[-/\.]?([0-9]{1,2})[-/\.]?([0-9]{1,2})[ -]?(([0-9]{1,2}):?([0-9]{1,2}):?([0-9\.]{1,4}))?|", + ($d), $rr)) return adodb_date($fmt,false,$is_gmt); + + if ($rr[1] <= 100 && $rr[2]<= 1) return adodb_date($fmt,false,$is_gmt); + + // h-m-s-MM-DD-YY + if (!isset($rr[5])) $d = adodb_mktime(0,0,0,$rr[2],$rr[3],$rr[1],false,$is_gmt); + else $d = @adodb_mktime($rr[5],$rr[6],$rr[7],$rr[2],$rr[3],$rr[1],false,$is_gmt); + } + + return adodb_date($fmt,$d,$is_gmt); +} + + +/** + Return formatted date based on timestamp $d +*/ +function adodb_date($fmt,$d=false,$is_gmt=false) +{ +static $daylight; + + if ($d === false) return ($is_gmt)? @gmdate($fmt): @date($fmt); + if (!defined('ADODB_TEST_DATES')) { + if ((abs($d) <= 0x7FFFFFFF)) { // check if number in 32-bit signed range + if (!defined('ADODB_NO_NEGATIVE_TS') || $d >= 0) // if windows, must be +ve integer + return ($is_gmt)? @gmdate($fmt,$d): @date($fmt,$d); + + } + } + $_day_power = 86400; + + $arr = _adodb_getdate($d,true,$is_gmt); + + if (!isset($daylight)) $daylight = function_exists('adodb_daylight_sv'); + if ($daylight) adodb_daylight_sv($arr, $is_gmt); + + $year = $arr['year']; + $month = $arr['mon']; + $day = $arr['mday']; + $hour = $arr['hours']; + $min = $arr['minutes']; + $secs = $arr['seconds']; + + $max = strlen($fmt); + $dates = ''; + + $isphp5 = PHP_VERSION >= 5; + + /* + at this point, we have the following integer vars to manipulate: + $year, $month, $day, $hour, $min, $secs + */ + for ($i=0; $i < $max; $i++) { + switch($fmt[$i]) { + case 'T': $dates .= date('T');break; + // YEAR + case 'L': $dates .= $arr['leap'] ? '1' : '0'; break; + case 'r': // Thu, 21 Dec 2000 16:01:07 +0200 + + // 4.3.11 uses '04 Jun 2004' + // 4.3.8 uses ' 4 Jun 2004' + $dates .= gmdate('D',$_day_power*(3+adodb_dow($year,$month,$day))).', ' + . ($day<10?'0'.$day:$day) . ' '.date('M',mktime(0,0,0,$month,2,1971)).' '.$year.' '; + + if ($hour < 10) $dates .= '0'.$hour; else $dates .= $hour; + + if ($min < 10) $dates .= ':0'.$min; else $dates .= ':'.$min; + + if ($secs < 10) $dates .= ':0'.$secs; else $dates .= ':'.$secs; + + $gmt = adodb_get_gmt_diff(); + if ($isphp5) + $dates .= sprintf(' %s%04d',($gmt<=0)?'+':'-',abs($gmt)/36); + else + $dates .= sprintf(' %s%04d',($gmt<0)?'+':'-',abs($gmt)/36); + break; + + case 'Y': $dates .= $year; break; + case 'y': $dates .= substr($year,strlen($year)-2,2); break; + // MONTH + case 'm': if ($month<10) $dates .= '0'.$month; else $dates .= $month; break; + case 'Q': $dates .= ($month+3)>>2; break; + case 'n': $dates .= $month; break; + case 'M': $dates .= date('M',mktime(0,0,0,$month,2,1971)); break; + case 'F': $dates .= date('F',mktime(0,0,0,$month,2,1971)); break; + // DAY + case 't': $dates .= $arr['ndays']; break; + case 'z': $dates .= $arr['yday']; break; + case 'w': $dates .= adodb_dow($year,$month,$day); break; + case 'l': $dates .= gmdate('l',$_day_power*(3+adodb_dow($year,$month,$day))); break; + case 'D': $dates .= gmdate('D',$_day_power*(3+adodb_dow($year,$month,$day))); break; + case 'j': $dates .= $day; break; + case 'd': if ($day<10) $dates .= '0'.$day; else $dates .= $day; break; + case 'S': + $d10 = $day % 10; + if ($d10 == 1) $dates .= 'st'; + else if ($d10 == 2 && $day != 12) $dates .= 'nd'; + else if ($d10 == 3) $dates .= 'rd'; + else $dates .= 'th'; + break; + + // HOUR + case 'Z': + $dates .= ($is_gmt) ? 0 : -adodb_get_gmt_diff(); break; + case 'O': + $gmt = ($is_gmt) ? 0 : adodb_get_gmt_diff(); + + if ($isphp5) + $dates .= sprintf('%s%04d',($gmt<=0)?'+':'-',abs($gmt)/36); + else + $dates .= sprintf('%s%04d',($gmt<0)?'+':'-',abs($gmt)/36); + break; + + case 'H': + if ($hour < 10) $dates .= '0'.$hour; + else $dates .= $hour; + break; + case 'h': + if ($hour > 12) $hh = $hour - 12; + else { + if ($hour == 0) $hh = '12'; + else $hh = $hour; + } + + if ($hh < 10) $dates .= '0'.$hh; + else $dates .= $hh; + break; + + case 'G': + $dates .= $hour; + break; + + case 'g': + if ($hour > 12) $hh = $hour - 12; + else { + if ($hour == 0) $hh = '12'; + else $hh = $hour; + } + $dates .= $hh; + break; + // MINUTES + case 'i': if ($min < 10) $dates .= '0'.$min; else $dates .= $min; break; + // SECONDS + case 'U': $dates .= $d; break; + case 's': if ($secs < 10) $dates .= '0'.$secs; else $dates .= $secs; break; + // AM/PM + // Note 00:00 to 11:59 is AM, while 12:00 to 23:59 is PM + case 'a': + if ($hour>=12) $dates .= 'pm'; + else $dates .= 'am'; + break; + case 'A': + if ($hour>=12) $dates .= 'PM'; + else $dates .= 'AM'; + break; + default: + $dates .= $fmt[$i]; break; + // ESCAPE + case "\\": + $i++; + if ($i < $max) $dates .= $fmt[$i]; + break; + } + } + return $dates; +} + +/** + Returns a timestamp given a GMT/UTC time. + Note that $is_dst is not implemented and is ignored. +*/ +function adodb_gmmktime($hr,$min,$sec,$mon=false,$day=false,$year=false,$is_dst=false) +{ + return adodb_mktime($hr,$min,$sec,$mon,$day,$year,$is_dst,true); +} + +/** + Return a timestamp given a local time. Originally by jackbbs. + Note that $is_dst is not implemented and is ignored. + + Not a very fast algorithm - O(n) operation. Could be optimized to O(1). +*/ +function adodb_mktime($hr,$min,$sec,$mon=false,$day=false,$year=false,$is_dst=false,$is_gmt=false) +{ + if (!defined('ADODB_TEST_DATES')) { + + if ($mon === false) { + return $is_gmt? @gmmktime($hr,$min,$sec): @mktime($hr,$min,$sec); + } + + // for windows, we don't check 1970 because with timezone differences, + // 1 Jan 1970 could generate negative timestamp, which is illegal + if (1971 < $year && $year < 2038 + || !defined('ADODB_NO_NEGATIVE_TS') && (1901 < $year && $year < 2038) + ) { + return $is_gmt ? + @gmmktime($hr,$min,$sec,$mon,$day,$year): + @mktime($hr,$min,$sec,$mon,$day,$year); + } + } + + $gmt_different = ($is_gmt) ? 0 : adodb_get_gmt_diff(); + + /* + # disabled because some people place large values in $sec. + # however we need it for $mon because we use an array... + $hr = intval($hr); + $min = intval($min); + $sec = intval($sec); + */ + $mon = intval($mon); + $day = intval($day); + $year = intval($year); + + + $year = adodb_year_digit_check($year); + + if ($mon > 12) { + $y = floor($mon / 12); + $year += $y; + $mon -= $y*12; + } else if ($mon < 1) { + $y = ceil((1-$mon) / 12); + $year -= $y; + $mon += $y*12; + } + + $_day_power = 86400; + $_hour_power = 3600; + $_min_power = 60; + + $_month_table_normal = array("",31,28,31,30,31,30,31,31,30,31,30,31); + $_month_table_leaf = array("",31,29,31,30,31,30,31,31,30,31,30,31); + + $_total_date = 0; + if ($year >= 1970) { + for ($a = 1970 ; $a <= $year; $a++) { + $leaf = _adodb_is_leap_year($a); + if ($leaf == true) { + $loop_table = $_month_table_leaf; + $_add_date = 366; + } else { + $loop_table = $_month_table_normal; + $_add_date = 365; + } + if ($a < $year) { + $_total_date += $_add_date; + } else { + for($b=1;$b<$mon;$b++) { + $_total_date += $loop_table[$b]; + } + } + } + $_total_date +=$day-1; + $ret = $_total_date * $_day_power + $hr * $_hour_power + $min * $_min_power + $sec + $gmt_different; + + } else { + for ($a = 1969 ; $a >= $year; $a--) { + $leaf = _adodb_is_leap_year($a); + if ($leaf == true) { + $loop_table = $_month_table_leaf; + $_add_date = 366; + } else { + $loop_table = $_month_table_normal; + $_add_date = 365; + } + if ($a > $year) { $_total_date += $_add_date; + } else { + for($b=12;$b>$mon;$b--) { + $_total_date += $loop_table[$b]; + } + } + } + $_total_date += $loop_table[$mon] - $day; + + $_day_time = $hr * $_hour_power + $min * $_min_power + $sec; + $_day_time = $_day_power - $_day_time; + $ret = -( $_total_date * $_day_power + $_day_time - $gmt_different); + if ($ret < -12220185600) $ret += 10*86400; // if earlier than 5 Oct 1582 - gregorian correction + else if ($ret < -12219321600) $ret = -12219321600; // if in limbo, reset to 15 Oct 1582. + } + //print " dmy=$day/$mon/$year $hr:$min:$sec => " .$ret; + return $ret; +} + +function adodb_gmstrftime($fmt, $ts=false) +{ + return adodb_strftime($fmt,$ts,true); +} + +// hack - convert to adodb_date +function adodb_strftime($fmt, $ts=false,$is_gmt=false) +{ +global $ADODB_DATE_LOCALE; + + if (!defined('ADODB_TEST_DATES')) { + if ((abs($ts) <= 0x7FFFFFFF)) { // check if number in 32-bit signed range + if (!defined('ADODB_NO_NEGATIVE_TS') || $ts >= 0) // if windows, must be +ve integer + return ($is_gmt)? @gmstrftime($fmt,$ts): @strftime($fmt,$ts); + + } + } + + if (empty($ADODB_DATE_LOCALE)) { + /* + $tstr = strtoupper(gmstrftime('%c',31366800)); // 30 Dec 1970, 1 am + $sep = substr($tstr,2,1); + $hasAM = strrpos($tstr,'M') !== false; + */ + # see http://phplens.com/lens/lensforum/msgs.php?id=14865 for reasoning, and changelog for version 0.24 + $dstr = gmstrftime('%x',31366800); // 30 Dec 1970, 1 am + $sep = substr($dstr,2,1); + $tstr = strtoupper(gmstrftime('%X',31366800)); // 30 Dec 1970, 1 am + $hasAM = strrpos($tstr,'M') !== false; + + $ADODB_DATE_LOCALE = array(); + $ADODB_DATE_LOCALE[] = strncmp($tstr,'30',2) == 0 ? 'd'.$sep.'m'.$sep.'y' : 'm'.$sep.'d'.$sep.'y'; + $ADODB_DATE_LOCALE[] = ($hasAM) ? 'h:i:s a' : 'H:i:s'; + + } + $inpct = false; + $fmtdate = ''; + for ($i=0,$max = strlen($fmt); $i < $max; $i++) { + $ch = $fmt[$i]; + if ($ch == '%') { + if ($inpct) { + $fmtdate .= '%'; + $inpct = false; + } else + $inpct = true; + } else if ($inpct) { + + $inpct = false; + switch($ch) { + case '0': + case '1': + case '2': + case '3': + case '4': + case '5': + case '6': + case '7': + case '8': + case '9': + case 'E': + case 'O': + /* ignore format modifiers */ + $inpct = true; + break; + + case 'a': $fmtdate .= 'D'; break; + case 'A': $fmtdate .= 'l'; break; + case 'h': + case 'b': $fmtdate .= 'M'; break; + case 'B': $fmtdate .= 'F'; break; + case 'c': $fmtdate .= $ADODB_DATE_LOCALE[0].$ADODB_DATE_LOCALE[1]; break; + case 'C': $fmtdate .= '\C?'; break; // century + case 'd': $fmtdate .= 'd'; break; + case 'D': $fmtdate .= 'm/d/y'; break; + case 'e': $fmtdate .= 'j'; break; + case 'g': $fmtdate .= '\g?'; break; //? + case 'G': $fmtdate .= '\G?'; break; //? + case 'H': $fmtdate .= 'H'; break; + case 'I': $fmtdate .= 'h'; break; + case 'j': $fmtdate .= '?z'; $parsej = true; break; // wrong as j=1-based, z=0-basd + case 'm': $fmtdate .= 'm'; break; + case 'M': $fmtdate .= 'i'; break; + case 'n': $fmtdate .= "\n"; break; + case 'p': $fmtdate .= 'a'; break; + case 'r': $fmtdate .= 'h:i:s a'; break; + case 'R': $fmtdate .= 'H:i:s'; break; + case 'S': $fmtdate .= 's'; break; + case 't': $fmtdate .= "\t"; break; + case 'T': $fmtdate .= 'H:i:s'; break; + case 'u': $fmtdate .= '?u'; $parseu = true; break; // wrong strftime=1-based, date=0-based + case 'U': $fmtdate .= '?U'; $parseU = true; break;// wrong strftime=1-based, date=0-based + case 'x': $fmtdate .= $ADODB_DATE_LOCALE[0]; break; + case 'X': $fmtdate .= $ADODB_DATE_LOCALE[1]; break; + case 'w': $fmtdate .= '?w'; $parseu = true; break; // wrong strftime=1-based, date=0-based + case 'W': $fmtdate .= '?W'; $parseU = true; break;// wrong strftime=1-based, date=0-based + case 'y': $fmtdate .= 'y'; break; + case 'Y': $fmtdate .= 'Y'; break; + case 'Z': $fmtdate .= 'T'; break; + } + } else if (('A' <= ($ch) && ($ch) <= 'Z' ) || ('a' <= ($ch) && ($ch) <= 'z' )) + $fmtdate .= "\\".$ch; + else + $fmtdate .= $ch; + } + //echo "fmt=",$fmtdate,"
"; + if ($ts === false) $ts = time(); + $ret = adodb_date($fmtdate, $ts, $is_gmt); + return $ret; +} + + +?> diff --git a/Source/gallery2/lib/adodb/adodb.inc.php b/Source/gallery2/lib/adodb/adodb.inc.php new file mode 100644 index 0000000..d8c1b59 --- /dev/null +++ b/Source/gallery2/lib/adodb/adodb.inc.php @@ -0,0 +1,4221 @@ +fields is available on EOF + $ADODB_FETCH_MODE; // DEFAULT, NUM, ASSOC or BOTH. Default follows native driver default... + + //============================================================================================== + // GLOBAL SETUP + //============================================================================================== + + $ADODB_EXTENSION = defined('ADODB_EXTENSION'); + + //********************************************************// + /* + Controls $ADODB_FORCE_TYPE mode. Default is ADODB_FORCE_VALUE (3). + Used in GetUpdateSql and GetInsertSql functions. Thx to Niko, nuko#mbnet.fi + + 0 = ignore empty fields. All empty fields in array are ignored. + 1 = force null. All empty, php null and string 'null' fields are changed to sql NULL values. + 2 = force empty. All empty, php null and string 'null' fields are changed to sql empty '' or 0 values. + 3 = force value. Value is left as it is. Php null and string 'null' are set to sql NULL values and empty fields '' are set to empty '' sql values. + */ + define('ADODB_FORCE_IGNORE',0); + define('ADODB_FORCE_NULL',1); + define('ADODB_FORCE_EMPTY',2); + define('ADODB_FORCE_VALUE',3); + //********************************************************// + + + if (!$ADODB_EXTENSION || ADODB_EXTENSION < 4.0) { + + define('ADODB_BAD_RS','

Bad $rs in %s. Connection or SQL invalid. Try using $connection->debug=true;

'); + + // allow [ ] @ ` " and . in table names + define('ADODB_TABLE_REGEX','([]0-9a-z_\:\"\`\.\@\[-]*)'); + + // prefetching used by oracle + if (!defined('ADODB_PREFETCH_ROWS')) define('ADODB_PREFETCH_ROWS',10); + + + /* + Controls ADODB_FETCH_ASSOC field-name case. Default is 2, use native case-names. + This currently works only with mssql, odbc, oci8po and ibase derived drivers. + + 0 = assoc lowercase field names. $rs->fields['orderid'] + 1 = assoc uppercase field names. $rs->fields['ORDERID'] + 2 = use native-case field names. $rs->fields['OrderID'] + */ + + define('ADODB_FETCH_DEFAULT',0); + define('ADODB_FETCH_NUM',1); + define('ADODB_FETCH_ASSOC',2); + define('ADODB_FETCH_BOTH',3); + + if (!defined('TIMESTAMP_FIRST_YEAR')) define('TIMESTAMP_FIRST_YEAR',100); + + // PHP's version scheme makes converting to numbers difficult - workaround + $_adodb_ver = (float) PHP_VERSION; + if ($_adodb_ver >= 5.2) { + define('ADODB_PHPVER',0x5200); + } else if ($_adodb_ver >= 5.0) { + define('ADODB_PHPVER',0x5000); + } else if ($_adodb_ver > 4.299999) { # 4.3 + define('ADODB_PHPVER',0x4300); + } else if ($_adodb_ver > 4.199999) { # 4.2 + define('ADODB_PHPVER',0x4200); + } else if (strnatcmp(PHP_VERSION,'4.0.5')>=0) { + define('ADODB_PHPVER',0x4050); + } else { + define('ADODB_PHPVER',0x4000); + } + } + + //if (!defined('ADODB_ASSOC_CASE')) define('ADODB_ASSOC_CASE',2); + + + /** + Accepts $src and $dest arrays, replacing string $data + */ + function ADODB_str_replace($src, $dest, $data) + { + if (ADODB_PHPVER >= 0x4050) return str_replace($src,$dest,$data); + + $s = reset($src); + $d = reset($dest); + while ($s !== false) { + $data = str_replace($s,$d,$data); + $s = next($src); + $d = next($dest); + } + return $data; + } + + function ADODB_Setup() + { + GLOBAL + $ADODB_vers, // database version + $ADODB_COUNTRECS, // count number of records returned - slows down query + $ADODB_CACHE_DIR, // directory to cache recordsets + $ADODB_FETCH_MODE, + $ADODB_FORCE_TYPE; + + $ADODB_FETCH_MODE = ADODB_FETCH_DEFAULT; + $ADODB_FORCE_TYPE = ADODB_FORCE_VALUE; + + + if (!isset($ADODB_CACHE_DIR)) { + $ADODB_CACHE_DIR = '/tmp'; //(isset($_ENV['TMP'])) ? $_ENV['TMP'] : '/tmp'; + } else { + // do not accept url based paths, eg. http:/ or ftp:/ + if (strpos($ADODB_CACHE_DIR,'://') !== false) + die("Illegal path http:// or ftp://"); + } + + + // Initialize random number generator for randomizing cache flushes + // -- note Since PHP 4.2.0, the seed becomes optional and defaults to a random value if omitted. + srand(((double)microtime())*1000000); + + /** + * ADODB version as a string. + */ + $ADODB_vers = 'V4.93 10 Oct 2006 (c) 2000-2006 John Lim (jlim#natsoft.com.my). All rights reserved. Released BSD & LGPL.'; + + /** + * Determines whether recordset->RecordCount() is used. + * Set to false for highest performance -- RecordCount() will always return -1 then + * for databases that provide "virtual" recordcounts... + */ + if (!isset($ADODB_COUNTRECS)) $ADODB_COUNTRECS = true; + } + + + //============================================================================================== + // CHANGE NOTHING BELOW UNLESS YOU ARE DESIGNING ADODB + //============================================================================================== + + ADODB_Setup(); + + //============================================================================================== + // CLASS ADOFieldObject + //============================================================================================== + /** + * Helper class for FetchFields -- holds info on a column + */ + class ADOFieldObject { + var $name = ''; + var $max_length=0; + var $type=""; +/* + // additional fields by dannym... (danny_milo@yahoo.com) + var $not_null = false; + // actually, this has already been built-in in the postgres, fbsql AND mysql module? ^-^ + // so we can as well make not_null standard (leaving it at "false" does not harm anyways) + + var $has_default = false; // this one I have done only in mysql and postgres for now ... + // others to come (dannym) + var $default_value; // default, if any, and supported. Check has_default first. +*/ + } + + + + function ADODB_TransMonitor($dbms, $fn, $errno, $errmsg, $p1, $p2, &$thisConnection) + { + //print "Errorno ($fn errno=$errno m=$errmsg) "; + $thisConnection->_transOK = false; + if ($thisConnection->_oldRaiseFn) { + $fn = $thisConnection->_oldRaiseFn; + $fn($dbms, $fn, $errno, $errmsg, $p1, $p2,$thisConnection); + } + } + + //============================================================================================== + // CLASS ADOConnection + //============================================================================================== + + /** + * Connection object. For connecting to databases, and executing queries. + */ + class ADOConnection { + // + // PUBLIC VARS + // + var $dataProvider = 'native'; + var $databaseType = ''; /// RDBMS currently in use, eg. odbc, mysql, mssql + var $database = ''; /// Name of database to be used. + var $host = ''; /// The hostname of the database server + var $user = ''; /// The username which is used to connect to the database server. + var $password = ''; /// Password for the username. For security, we no longer store it. + var $debug = false; /// if set to true will output sql statements + var $maxblobsize = 262144; /// maximum size of blobs or large text fields (262144 = 256K)-- some db's die otherwise like foxpro + var $concat_operator = '+'; /// default concat operator -- change to || for Oracle/Interbase + var $substr = 'substr'; /// substring operator + var $length = 'length'; /// string length ofperator + var $random = 'rand()'; /// random function + var $upperCase = 'upper'; /// uppercase function + var $fmtDate = "'Y-m-d'"; /// used by DBDate() as the default date format used by the database + var $fmtTimeStamp = "'Y-m-d, h:i:s A'"; /// used by DBTimeStamp as the default timestamp fmt. + var $true = '1'; /// string that represents TRUE for a database + var $false = '0'; /// string that represents FALSE for a database + var $replaceQuote = "\\'"; /// string to use to replace quotes + var $nameQuote = '"'; /// string to use to quote identifiers and names + var $charSet=false; /// character set to use - only for interbase, postgres and oci8 + var $metaDatabasesSQL = ''; + var $metaTablesSQL = ''; + var $uniqueOrderBy = false; /// All order by columns have to be unique + var $emptyDate = ' '; + var $emptyTimeStamp = ' '; + var $lastInsID = false; + //-- + var $hasInsertID = false; /// supports autoincrement ID? + var $hasAffectedRows = false; /// supports affected rows for update/delete? + var $hasTop = false; /// support mssql/access SELECT TOP 10 * FROM TABLE + var $hasLimit = false; /// support pgsql/mysql SELECT * FROM TABLE LIMIT 10 + var $readOnly = false; /// this is a readonly database - used by phpLens + var $hasMoveFirst = false; /// has ability to run MoveFirst(), scrolling backwards + var $hasGenID = false; /// can generate sequences using GenID(); + var $hasTransactions = true; /// has transactions + //-- + var $genID = 0; /// sequence id used by GenID(); + var $raiseErrorFn = false; /// error function to call + var $isoDates = false; /// accepts dates in ISO format + var $cacheSecs = 3600; /// cache for 1 hour + + // memcache + var $memCache = false; /// should we use memCache instead of caching in files + var $memCacheHost; /// memCache host + var $memCachePort = 11211; /// memCache port + var $memCacheCompress = false; /// Use 'true' to store the item compressed (uses zlib) + + var $sysDate = false; /// name of function that returns the current date + var $sysTimeStamp = false; /// name of function that returns the current timestamp + var $arrayClass = 'ADORecordSet_array'; /// name of class used to generate array recordsets, which are pre-downloaded recordsets + + var $noNullStrings = false; /// oracle specific stuff - if true ensures that '' is converted to ' ' + var $numCacheHits = 0; + var $numCacheMisses = 0; + var $pageExecuteCountRows = true; + var $uniqueSort = false; /// indicates that all fields in order by must be unique + var $leftOuter = false; /// operator to use for left outer join in WHERE clause + var $rightOuter = false; /// operator to use for right outer join in WHERE clause + var $ansiOuter = false; /// whether ansi outer join syntax supported + var $autoRollback = false; // autoRollback on PConnect(). + var $poorAffectedRows = false; // affectedRows not working or unreliable + + var $fnExecute = false; + var $fnCacheExecute = false; + var $blobEncodeType = false; // false=not required, 'I'=encode to integer, 'C'=encode to char + var $rsPrefix = "ADORecordSet_"; + + var $autoCommit = true; /// do not modify this yourself - actually private + var $transOff = 0; /// temporarily disable transactions + var $transCnt = 0; /// count of nested transactions + + var $fetchMode=false; + + var $null2null = 'null'; // in autoexecute/getinsertsql/getupdatesql, this value will be converted to a null + // + // PRIVATE VARS + // + var $_oldRaiseFn = false; + var $_transOK = null; + var $_connectionID = false; /// The returned link identifier whenever a successful database connection is made. + var $_errorMsg = false; /// A variable which was used to keep the returned last error message. The value will + /// then returned by the errorMsg() function + var $_errorCode = false; /// Last error code, not guaranteed to be used - only by oci8 + var $_queryID = false; /// This variable keeps the last created result link identifier + + var $_isPersistentConnection = false; /// A boolean variable to state whether its a persistent connection or normal connection. */ + var $_bindInputArray = false; /// set to true if ADOConnection.Execute() permits binding of array parameters. + var $_evalAll = false; + var $_affected = false; + var $_logsql = false; + var $_transmode = ''; // transaction mode + + + + /** + * Constructor + */ + function ADOConnection() + { + die('Virtual Class -- cannot instantiate'); + } + + function Version() + { + global $ADODB_vers; + + return (float) substr($ADODB_vers,1); + } + + /** + Get server version info... + + @returns An array with 2 elements: $arr['string'] is the description string, + and $arr[version] is the version (also a string). + */ + function ServerInfo() + { + return array('description' => '', 'version' => ''); + } + + function IsConnected() + { + return !empty($this->_connectionID); + } + + function _findvers($str) + { + if (preg_match('/([0-9]+\.([0-9\.])+)/',$str, $arr)) return $arr[1]; + else return ''; + } + + /** + * All error messages go through this bottleneck function. + * You can define your own handler by defining the function name in ADODB_OUTP. + */ + function outp($msg,$newline=true) + { + global $ADODB_FLUSH,$ADODB_OUTP; + + if (defined('ADODB_OUTP')) { + $fn = ADODB_OUTP; + $fn($msg,$newline); + return; + } else if (isset($ADODB_OUTP)) { + $fn = $ADODB_OUTP; + $fn($msg,$newline); + return; + } + + if ($newline) $msg .= "
\n"; + + if (isset($_SERVER['HTTP_USER_AGENT']) || !$newline) echo $msg; + else echo strip_tags($msg); + + + if (!empty($ADODB_FLUSH) && ob_get_length() !== false) flush(); // do not flush if output buffering enabled - useless - thx to Jesse Mullan + + } + + function Time() + { + $rs =& $this->_Execute("select $this->sysTimeStamp"); + if ($rs && !$rs->EOF) return $this->UnixTimeStamp(reset($rs->fields)); + + return false; + } + + /** + * Connect to database + * + * @param [argHostname] Host to connect to + * @param [argUsername] Userid to login + * @param [argPassword] Associated password + * @param [argDatabaseName] database + * @param [forceNew] force new connection + * + * @return true or false + */ + function Connect($argHostname = "", $argUsername = "", $argPassword = "", $argDatabaseName = "", $forceNew = false) + { + if ($argHostname != "") $this->host = $argHostname; + if ($argUsername != "") $this->user = $argUsername; + if ($argPassword != "") $this->password = $argPassword; // not stored for security reasons + if ($argDatabaseName != "") $this->database = $argDatabaseName; + + $this->_isPersistentConnection = false; + if ($forceNew) { + if ($rez=$this->_nconnect($this->host, $this->user, $this->password, $this->database)) return true; + } else { + if ($rez=$this->_connect($this->host, $this->user, $this->password, $this->database)) return true; + } + if (isset($rez)) { + $err = $this->ErrorMsg(); + if (empty($err)) $err = "Connection error to server '$argHostname' with user '$argUsername'"; + $ret = false; + } else { + $err = "Missing extension for ".$this->dataProvider; + $ret = 0; + } + if ($fn = $this->raiseErrorFn) + $fn($this->databaseType,'CONNECT',$this->ErrorNo(),$err,$this->host,$this->database,$this); + + + $this->_connectionID = false; + if ($this->debug) ADOConnection::outp( $this->host.': '.$err); + return $ret; + } + + function _nconnect($argHostname, $argUsername, $argPassword, $argDatabaseName) + { + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabaseName); + } + + + /** + * Always force a new connection to database - currently only works with oracle + * + * @param [argHostname] Host to connect to + * @param [argUsername] Userid to login + * @param [argPassword] Associated password + * @param [argDatabaseName] database + * + * @return true or false + */ + function NConnect($argHostname = "", $argUsername = "", $argPassword = "", $argDatabaseName = "") + { + return $this->Connect($argHostname, $argUsername, $argPassword, $argDatabaseName, true); + } + + /** + * Establish persistent connect to database + * + * @param [argHostname] Host to connect to + * @param [argUsername] Userid to login + * @param [argPassword] Associated password + * @param [argDatabaseName] database + * + * @return return true or false + */ + function PConnect($argHostname = "", $argUsername = "", $argPassword = "", $argDatabaseName = "") + { + if (defined('ADODB_NEVER_PERSIST')) + return $this->Connect($argHostname,$argUsername,$argPassword,$argDatabaseName); + + if ($argHostname != "") $this->host = $argHostname; + if ($argUsername != "") $this->user = $argUsername; + if ($argPassword != "") $this->password = $argPassword; + if ($argDatabaseName != "") $this->database = $argDatabaseName; + + $this->_isPersistentConnection = true; + if ($rez = $this->_pconnect($this->host, $this->user, $this->password, $this->database)) return true; + if (isset($rez)) { + $err = $this->ErrorMsg(); + if (empty($err)) $err = "Connection error to server '$argHostname' with user '$argUsername'"; + $ret = false; + } else { + $err = "Missing extension for ".$this->dataProvider; + $ret = 0; + } + if ($fn = $this->raiseErrorFn) { + $fn($this->databaseType,'PCONNECT',$this->ErrorNo(),$err,$this->host,$this->database,$this); + } + + $this->_connectionID = false; + if ($this->debug) ADOConnection::outp( $this->host.': '.$err); + return $ret; + } + + // Format date column in sql string given an input format that understands Y M D + function SQLDate($fmt, $col=false) + { + if (!$col) $col = $this->sysDate; + return $col; // child class implement + } + + /** + * Should prepare the sql statement and return the stmt resource. + * For databases that do not support this, we return the $sql. To ensure + * compatibility with databases that do not support prepare: + * + * $stmt = $db->Prepare("insert into table (id, name) values (?,?)"); + * $db->Execute($stmt,array(1,'Jill')) or die('insert failed'); + * $db->Execute($stmt,array(2,'Joe')) or die('insert failed'); + * + * @param sql SQL to send to database + * + * @return return FALSE, or the prepared statement, or the original sql if + * if the database does not support prepare. + * + */ + function Prepare($sql) + { + return $sql; + } + + /** + * Some databases, eg. mssql require a different function for preparing + * stored procedures. So we cannot use Prepare(). + * + * Should prepare the stored procedure and return the stmt resource. + * For databases that do not support this, we return the $sql. To ensure + * compatibility with databases that do not support prepare: + * + * @param sql SQL to send to database + * + * @return return FALSE, or the prepared statement, or the original sql if + * if the database does not support prepare. + * + */ + function PrepareSP($sql,$param=true) + { + return $this->Prepare($sql,$param); + } + + /** + * PEAR DB Compat + */ + function Quote($s) + { + return $this->qstr($s,false); + } + + /** + Requested by "Karsten Dambekalns" + */ + function QMagic($s) + { + return $this->qstr($s,get_magic_quotes_gpc()); + } + + function q(&$s) + { + #if (!empty($this->qNull)) if ($s == 'null') return $s; + $s = $this->qstr($s,false); + } + + /** + * PEAR DB Compat - do not use internally. + */ + function ErrorNative() + { + return $this->ErrorNo(); + } + + + /** + * PEAR DB Compat - do not use internally. + */ + function nextId($seq_name) + { + return $this->GenID($seq_name); + } + + /** + * Lock a row, will escalate and lock the table if row locking not supported + * will normally free the lock at the end of the transaction + * + * @param $table name of table to lock + * @param $where where clause to use, eg: "WHERE row=12". If left empty, will escalate to table lock + */ + function RowLock($table,$where) + { + return false; + } + + function CommitLock($table) + { + return $this->CommitTrans(); + } + + function RollbackLock($table) + { + return $this->RollbackTrans(); + } + + /** + * PEAR DB Compat - do not use internally. + * + * The fetch modes for NUMERIC and ASSOC for PEAR DB and ADODB are identical + * for easy porting :-) + * + * @param mode The fetchmode ADODB_FETCH_ASSOC or ADODB_FETCH_NUM + * @returns The previous fetch mode + */ + function SetFetchMode($mode) + { + $old = $this->fetchMode; + $this->fetchMode = $mode; + + if ($old === false) { + global $ADODB_FETCH_MODE; + return $ADODB_FETCH_MODE; + } + return $old; + } + + + /** + * PEAR DB Compat - do not use internally. + */ + function &Query($sql, $inputarr=false) + { + $rs = &$this->Execute($sql, $inputarr); + if (!$rs && defined('ADODB_PEAR')) return ADODB_PEAR_Error(); + return $rs; + } + + + /** + * PEAR DB Compat - do not use internally + */ + function &LimitQuery($sql, $offset, $count, $params=false) + { + $rs = &$this->SelectLimit($sql, $count, $offset, $params); + if (!$rs && defined('ADODB_PEAR')) return ADODB_PEAR_Error(); + return $rs; + } + + + /** + * PEAR DB Compat - do not use internally + */ + function Disconnect() + { + return $this->Close(); + } + + /* + Returns placeholder for parameter, eg. + $DB->Param('a') + + will return ':a' for Oracle, and '?' for most other databases... + + For databases that require positioned params, eg $1, $2, $3 for postgresql, + pass in Param(false) before setting the first parameter. + */ + function Param($name,$type='C') + { + return '?'; + } + + /* + InParameter and OutParameter are self-documenting versions of Parameter(). + */ + function InParameter(&$stmt,&$var,$name,$maxLen=4000,$type=false) + { + return $this->Parameter($stmt,$var,$name,false,$maxLen,$type); + } + + /* + */ + function OutParameter(&$stmt,&$var,$name,$maxLen=4000,$type=false) + { + return $this->Parameter($stmt,$var,$name,true,$maxLen,$type); + + } + + + /* + Usage in oracle + $stmt = $db->Prepare('select * from table where id =:myid and group=:group'); + $db->Parameter($stmt,$id,'myid'); + $db->Parameter($stmt,$group,'group',64); + $db->Execute(); + + @param $stmt Statement returned by Prepare() or PrepareSP(). + @param $var PHP variable to bind to + @param $name Name of stored procedure variable name to bind to. + @param [$isOutput] Indicates direction of parameter 0/false=IN 1=OUT 2= IN/OUT. This is ignored in oci8. + @param [$maxLen] Holds an maximum length of the variable. + @param [$type] The data type of $var. Legal values depend on driver. + + */ + function Parameter(&$stmt,&$var,$name,$isOutput=false,$maxLen=4000,$type=false) + { + return false; + } + + + function IgnoreErrors($saveErrs=false) + { + if (!$saveErrs) { + $saveErrs = array($this->raiseErrorFn,$this->_transOK); + $this->raiseErrorFn = false; + return $saveErrs; + } else { + $this->raiseErrorFn = $saveErrs[0]; + $this->_transOK = $saveErrs[1]; + } + } + + /** + Improved method of initiating a transaction. Used together with CompleteTrans(). + Advantages include: + + a. StartTrans/CompleteTrans is nestable, unlike BeginTrans/CommitTrans/RollbackTrans. + Only the outermost block is treated as a transaction.
+ b. CompleteTrans auto-detects SQL errors, and will rollback on errors, commit otherwise.
+ c. All BeginTrans/CommitTrans/RollbackTrans inside a StartTrans/CompleteTrans block + are disabled, making it backward compatible. + */ + function StartTrans($errfn = 'ADODB_TransMonitor') + { + if ($this->transOff > 0) { + $this->transOff += 1; + return; + } + + $this->_oldRaiseFn = $this->raiseErrorFn; + $this->raiseErrorFn = $errfn; + $this->_transOK = true; + + if ($this->debug && $this->transCnt > 0) ADOConnection::outp("Bad Transaction: StartTrans called within BeginTrans"); + $this->BeginTrans(); + $this->transOff = 1; + } + + + /** + Used together with StartTrans() to end a transaction. Monitors connection + for sql errors, and will commit or rollback as appropriate. + + @autoComplete if true, monitor sql errors and commit and rollback as appropriate, + and if set to false force rollback even if no SQL error detected. + @returns true on commit, false on rollback. + */ + function CompleteTrans($autoComplete = true) + { + if ($this->transOff > 1) { + $this->transOff -= 1; + return true; + } + $this->raiseErrorFn = $this->_oldRaiseFn; + + $this->transOff = 0; + if ($this->_transOK && $autoComplete) { + if (!$this->CommitTrans()) { + $this->_transOK = false; + if ($this->debug) ADOConnection::outp("Smart Commit failed"); + } else + if ($this->debug) ADOConnection::outp("Smart Commit occurred"); + } else { + $this->_transOK = false; + $this->RollbackTrans(); + if ($this->debug) ADOCOnnection::outp("Smart Rollback occurred"); + } + + return $this->_transOK; + } + + /* + At the end of a StartTrans/CompleteTrans block, perform a rollback. + */ + function FailTrans() + { + if ($this->debug) + if ($this->transOff == 0) { + ADOConnection::outp("FailTrans outside StartTrans/CompleteTrans"); + } else { + ADOConnection::outp("FailTrans was called"); + adodb_backtrace(); + } + $this->_transOK = false; + } + + /** + Check if transaction has failed, only for Smart Transactions. + */ + function HasFailedTrans() + { + if ($this->transOff > 0) return $this->_transOK == false; + return false; + } + + /** + * Execute SQL + * + * @param sql SQL statement to execute, or possibly an array holding prepared statement ($sql[0] will hold sql text) + * @param [inputarr] holds the input data to bind to. Null elements will be set to null. + * @return RecordSet or false + */ + function &Execute($sql,$inputarr=false) + { + if ($this->fnExecute) { + $fn = $this->fnExecute; + $ret =& $fn($this,$sql,$inputarr); + if (isset($ret)) return $ret; + } + if ($inputarr) { + if (!is_array($inputarr)) $inputarr = array($inputarr); + + $element0 = reset($inputarr); + # is_object check because oci8 descriptors can be passed in + $array_2d = is_array($element0) && !is_object(reset($element0)); + //remove extra memory copy of input -mikefedyk + unset($element0); + + if (!is_array($sql) && !$this->_bindInputArray) { + $sqlarr = explode('?',$sql); + + if (!$array_2d) $inputarr = array($inputarr); + foreach($inputarr as $arr) { + $sql = ''; $i = 0; + //Use each() instead of foreach to reduce memory usage -mikefedyk + while(list(, $v) = each($arr)) { + $sql .= $sqlarr[$i]; + // from Ron Baldwin + // Only quote string types + $typ = gettype($v); + if ($typ == 'string') + //New memory copy of input created here -mikefedyk + $sql .= $this->qstr($v); + else if ($typ == 'double') + $sql .= str_replace(',','.',$v); // locales fix so 1.1 does not get converted to 1,1 + else if ($typ == 'boolean') + $sql .= $v ? $this->true : $this->false; + else if ($typ == 'object') { + if (method_exists($v, '__toString')) $sql .= $this->qstr($v->__toString()); + else $sql .= $this->qstr((string) $v); + } else if ($v === null) + $sql .= 'NULL'; + else + $sql .= $v; + $i += 1; + } + if (isset($sqlarr[$i])) { + $sql .= $sqlarr[$i]; + if ($i+1 != sizeof($sqlarr)) ADOConnection::outp( "Input Array does not match ?: ".htmlspecialchars($sql)); + } else if ($i != sizeof($sqlarr)) + ADOConnection::outp( "Input array does not match ?: ".htmlspecialchars($sql)); + + $ret =& $this->_Execute($sql); + if (!$ret) return $ret; + } + } else { + if ($array_2d) { + if (is_string($sql)) + $stmt = $this->Prepare($sql); + else + $stmt = $sql; + + foreach($inputarr as $arr) { + $ret =& $this->_Execute($stmt,$arr); + if (!$ret) return $ret; + } + } else { + $ret =& $this->_Execute($sql,$inputarr); + } + } + } else { + $ret =& $this->_Execute($sql,false); + } + + return $ret; + } + + + function &_Execute($sql,$inputarr=false) + { + if ($this->debug) { + global $ADODB_INCLUDED_LIB; + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + $this->_queryID = _adodb_debug_execute($this, $sql,$inputarr); + } else { + $this->_queryID = @$this->_query($sql,$inputarr); + } + + /************************ + // OK, query executed + *************************/ + + if ($this->_queryID === false) { // error handling if query fails + if ($this->debug == 99) adodb_backtrace(true,5); + $fn = $this->raiseErrorFn; + if ($fn) { + $fn($this->databaseType,'EXECUTE',$this->ErrorNo(),$this->ErrorMsg(),$sql,$inputarr,$this); + } + $false = false; + return $false; + } + + if ($this->_queryID === true) { // return simplified recordset for inserts/updates/deletes with lower overhead + $rs =& new ADORecordSet_empty(); + return $rs; + } + + // return real recordset from select statement + $rsclass = $this->rsPrefix.$this->databaseType; + $rs = new $rsclass($this->_queryID,$this->fetchMode); + $rs->connection = &$this; // Pablo suggestion + $rs->Init(); + if (is_array($sql)) $rs->sql = $sql[0]; + else $rs->sql = $sql; + if ($rs->_numOfRows <= 0) { + global $ADODB_COUNTRECS; + if ($ADODB_COUNTRECS) { + if (!$rs->EOF) { + $rs = &$this->_rs2rs($rs,-1,-1,!is_array($sql)); + $rs->_queryID = $this->_queryID; + } else + $rs->_numOfRows = 0; + } + } + return $rs; + } + + function CreateSequence($seqname='adodbseq',$startID=1) + { + if (empty($this->_genSeqSQL)) return false; + return $this->Execute(sprintf($this->_genSeqSQL,$seqname,$startID)); + } + + function DropSequence($seqname='adodbseq') + { + if (empty($this->_dropSeqSQL)) return false; + return $this->Execute(sprintf($this->_dropSeqSQL,$seqname)); + } + + /** + * Generates a sequence id and stores it in $this->genID; + * GenID is only available if $this->hasGenID = true; + * + * @param seqname name of sequence to use + * @param startID if sequence does not exist, start at this ID + * @return 0 if not supported, otherwise a sequence id + */ + function GenID($seqname='adodbseq',$startID=1) + { + if (!$this->hasGenID) { + return 0; // formerly returns false pre 1.60 + } + + $getnext = sprintf($this->_genIDSQL,$seqname); + + $holdtransOK = $this->_transOK; + + $save_handler = $this->raiseErrorFn; + $this->raiseErrorFn = ''; + @($rs = $this->Execute($getnext)); + $this->raiseErrorFn = $save_handler; + + if (!$rs) { + $this->_transOK = $holdtransOK; //if the status was ok before reset + $createseq = $this->Execute(sprintf($this->_genSeqSQL,$seqname,$startID)); + $rs = $this->Execute($getnext); + } + if ($rs && !$rs->EOF) $this->genID = reset($rs->fields); + else $this->genID = 0; // false + + if ($rs) $rs->Close(); + + return $this->genID; + } + + /** + * @param $table string name of the table, not needed by all databases (eg. mysql), default '' + * @param $column string name of the column, not needed by all databases (eg. mysql), default '' + * @return the last inserted ID. Not all databases support this. + */ + function Insert_ID($table='',$column='') + { + if ($this->_logsql && $this->lastInsID) return $this->lastInsID; + if ($this->hasInsertID) return $this->_insertid($table,$column); + if ($this->debug) { + ADOConnection::outp( '

Insert_ID error

'); + adodb_backtrace(); + } + return false; + } + + + /** + * Portable Insert ID. Pablo Roca + * + * @return the last inserted ID. All databases support this. But aware possible + * problems in multiuser environments. Heavy test this before deploying. + */ + function PO_Insert_ID($table="", $id="") + { + if ($this->hasInsertID){ + return $this->Insert_ID($table,$id); + } else { + return $this->GetOne("SELECT MAX($id) FROM $table"); + } + } + + /** + * @return # rows affected by UPDATE/DELETE + */ + function Affected_Rows() + { + if ($this->hasAffectedRows) { + if ($this->fnExecute === 'adodb_log_sql') { + if ($this->_logsql && $this->_affected !== false) return $this->_affected; + } + $val = $this->_affectedrows(); + return ($val < 0) ? false : $val; + } + + if ($this->debug) ADOConnection::outp( '

Affected_Rows error

',false); + return false; + } + + + /** + * @return the last error message + */ + function ErrorMsg() + { + if ($this->_errorMsg) return '!! '.strtoupper($this->dataProvider.' '.$this->databaseType).': '.$this->_errorMsg; + else return ''; + } + + + /** + * @return the last error number. Normally 0 means no error. + */ + function ErrorNo() + { + return ($this->_errorMsg) ? -1 : 0; + } + + function MetaError($err=false) + { + include_once(ADODB_DIR."/adodb-error.inc.php"); + if ($err === false) $err = $this->ErrorNo(); + return adodb_error($this->dataProvider,$this->databaseType,$err); + } + + function MetaErrorMsg($errno) + { + include_once(ADODB_DIR."/adodb-error.inc.php"); + return adodb_errormsg($errno); + } + + /** + * @returns an array with the primary key columns in it. + */ + function MetaPrimaryKeys($table, $owner=false) + { + // owner not used in base class - see oci8 + $p = array(); + $objs =& $this->MetaColumns($table); + if ($objs) { + foreach($objs as $v) { + if (!empty($v->primary_key)) + $p[] = $v->name; + } + } + if (sizeof($p)) return $p; + if (function_exists('ADODB_VIEW_PRIMARYKEYS')) + return ADODB_VIEW_PRIMARYKEYS($this->databaseType, $this->database, $table, $owner); + return false; + } + + /** + * @returns assoc array where keys are tables, and values are foreign keys + */ + function MetaForeignKeys($table, $owner=false, $upper=false) + { + return false; + } + /** + * Choose a database to connect to. Many databases do not support this. + * + * @param dbName is the name of the database to select + * @return true or false + */ + function SelectDB($dbName) + {return false;} + + + /** + * Will select, getting rows from $offset (1-based), for $nrows. + * This simulates the MySQL "select * from table limit $offset,$nrows" , and + * the PostgreSQL "select * from table limit $nrows offset $offset". Note that + * MySQL and PostgreSQL parameter ordering is the opposite of the other. + * eg. + * SelectLimit('select * from table',3); will return rows 1 to 3 (1-based) + * SelectLimit('select * from table',3,2); will return rows 3 to 5 (1-based) + * + * Uses SELECT TOP for Microsoft databases (when $this->hasTop is set) + * BUG: Currently SelectLimit fails with $sql with LIMIT or TOP clause already set + * + * @param sql + * @param [offset] is the row to start calculations from (1-based) + * @param [nrows] is the number of rows to get + * @param [inputarr] array of bind variables + * @param [secs2cache] is a private parameter only used by jlim + * @return the recordset ($rs->databaseType == 'array') + */ + function &SelectLimit($sql,$nrows=-1,$offset=-1, $inputarr=false,$secs2cache=0) + { + if ($this->hasTop && $nrows > 0) { + // suggested by Reinhard Balling. Access requires top after distinct + // Informix requires first before distinct - F Riosa + $ismssql = (strpos($this->databaseType,'mssql') !== false); + if ($ismssql) $isaccess = false; + else $isaccess = (strpos($this->databaseType,'access') !== false); + + if ($offset <= 0) { + + // access includes ties in result + if ($isaccess) { + $sql = preg_replace( + '/(^\s*select\s+(distinctrow|distinct)?)/i','\\1 '.$this->hasTop.' '.((integer)$nrows).' ',$sql); + + if ($secs2cache != 0) { + $ret =& $this->CacheExecute($secs2cache, $sql,$inputarr); + } else { + $ret =& $this->Execute($sql,$inputarr); + } + return $ret; // PHP5 fix + } else if ($ismssql){ + $sql = preg_replace( + '/(^\s*select\s+(distinctrow|distinct)?)/i','\\1 '.$this->hasTop.' '.((integer)$nrows).' ',$sql); + } else { + $sql = preg_replace( + '/(^\s*select\s)/i','\\1 '.$this->hasTop.' '.((integer)$nrows).' ',$sql); + } + } else { + $nn = $nrows + $offset; + if ($isaccess || $ismssql) { + $sql = preg_replace( + '/(^\s*select\s+(distinctrow|distinct)?)/i','\\1 '.$this->hasTop.' '.$nn.' ',$sql); + } else { + $sql = preg_replace( + '/(^\s*select\s)/i','\\1 '.$this->hasTop.' '.$nn.' ',$sql); + } + } + } + + // if $offset>0, we want to skip rows, and $ADODB_COUNTRECS is set, we buffer rows + // 0 to offset-1 which will be discarded anyway. So we disable $ADODB_COUNTRECS. + global $ADODB_COUNTRECS; + + $savec = $ADODB_COUNTRECS; + $ADODB_COUNTRECS = false; + + if ($offset>0){ + if ($secs2cache != 0) $rs = &$this->CacheExecute($secs2cache,$sql,$inputarr); + else $rs = &$this->Execute($sql,$inputarr); + } else { + if ($secs2cache != 0) $rs = &$this->CacheExecute($secs2cache,$sql,$inputarr); + else $rs = &$this->Execute($sql,$inputarr); + } + $ADODB_COUNTRECS = $savec; + if ($rs && !$rs->EOF) { + $rs =& $this->_rs2rs($rs,$nrows,$offset); + } + //print_r($rs); + return $rs; + } + + /** + * Create serializable recordset. Breaks rs link to connection. + * + * @param rs the recordset to serialize + */ + function &SerializableRS(&$rs) + { + $rs2 =& $this->_rs2rs($rs); + $ignore = false; + $rs2->connection =& $ignore; + + return $rs2; + } + + /** + * Convert database recordset to an array recordset + * input recordset's cursor should be at beginning, and + * old $rs will be closed. + * + * @param rs the recordset to copy + * @param [nrows] number of rows to retrieve (optional) + * @param [offset] offset by number of rows (optional) + * @return the new recordset + */ + function &_rs2rs(&$rs,$nrows=-1,$offset=-1,$close=true) + { + if (! $rs) { + $false = false; + return $false; + } + $dbtype = $rs->databaseType; + if (!$dbtype) { + $rs = &$rs; // required to prevent crashing in 4.2.1, but does not happen in 4.3.1 -- why ? + return $rs; + } + if (($dbtype == 'array' || $dbtype == 'csv') && $nrows == -1 && $offset == -1) { + $rs->MoveFirst(); + $rs = &$rs; // required to prevent crashing in 4.2.1, but does not happen in 4.3.1-- why ? + return $rs; + } + $flds = array(); + for ($i=0, $max=$rs->FieldCount(); $i < $max; $i++) { + $flds[] = $rs->FetchField($i); + } + + $arr =& $rs->GetArrayLimit($nrows,$offset); + //print_r($arr); + if ($close) $rs->Close(); + + $arrayClass = $this->arrayClass; + + $rs2 = new $arrayClass(); + $rs2->connection = &$this; + $rs2->sql = $rs->sql; + $rs2->dataProvider = $this->dataProvider; + $rs2->InitArrayFields($arr,$flds); + $rs2->fetchMode = isset($rs->adodbFetchMode) ? $rs->adodbFetchMode : $rs->fetchMode; + return $rs2; + } + + /* + * Return all rows. Compat with PEAR DB + */ + function &GetAll($sql, $inputarr=false) + { + $arr =& $this->GetArray($sql,$inputarr); + return $arr; + } + + function &GetAssoc($sql, $inputarr=false,$force_array = false, $first2cols = false) + { + $rs =& $this->Execute($sql, $inputarr); + if (!$rs) { + $false = false; + return $false; + } + $arr =& $rs->GetAssoc($force_array,$first2cols); + return $arr; + } + + function &CacheGetAssoc($secs2cache, $sql=false, $inputarr=false,$force_array = false, $first2cols = false) + { + if (!is_numeric($secs2cache)) { + $first2cols = $force_array; + $force_array = $inputarr; + } + $rs =& $this->CacheExecute($secs2cache, $sql, $inputarr); + if (!$rs) { + $false = false; + return $false; + } + $arr =& $rs->GetAssoc($force_array,$first2cols); + return $arr; + } + + /** + * Return first element of first row of sql statement. Recordset is disposed + * for you. + * + * @param sql SQL statement + * @param [inputarr] input bind array + */ + function GetOne($sql,$inputarr=false) + { + global $ADODB_COUNTRECS; + $crecs = $ADODB_COUNTRECS; + $ADODB_COUNTRECS = false; + + $ret = false; + $rs = &$this->Execute($sql,$inputarr); + if ($rs) { + if (!$rs->EOF) $ret = reset($rs->fields); + $rs->Close(); + } + $ADODB_COUNTRECS = $crecs; + return $ret; + } + + function CacheGetOne($secs2cache,$sql=false,$inputarr=false) + { + $ret = false; + $rs = &$this->CacheExecute($secs2cache,$sql,$inputarr); + if ($rs) { + if (!$rs->EOF) $ret = reset($rs->fields); + $rs->Close(); + } + + return $ret; + } + + function GetCol($sql, $inputarr = false, $trim = false) + { + $rv = false; + $rs = &$this->Execute($sql, $inputarr); + if ($rs) { + $rv = array(); + if ($trim) { + while (!$rs->EOF) { + $rv[] = trim(reset($rs->fields)); + $rs->MoveNext(); + } + } else { + while (!$rs->EOF) { + $rv[] = reset($rs->fields); + $rs->MoveNext(); + } + } + $rs->Close(); + } + return $rv; + } + + function CacheGetCol($secs, $sql = false, $inputarr = false,$trim=false) + { + $rv = false; + $rs = &$this->CacheExecute($secs, $sql, $inputarr); + if ($rs) { + if ($trim) { + while (!$rs->EOF) { + $rv[] = trim(reset($rs->fields)); + $rs->MoveNext(); + } + } else { + while (!$rs->EOF) { + $rv[] = reset($rs->fields); + $rs->MoveNext(); + } + } + $rs->Close(); + } + return $rv; + } + + function &Transpose(&$rs) + { + $rs2 =& $this->_rs2rs($rs); + $false = false; + if (!$rs2) return $false; + + $rs2->_transpose(); + return $rs2; + } + + /* + Calculate the offset of a date for a particular database and generate + appropriate SQL. Useful for calculating future/past dates and storing + in a database. + + If dayFraction=1.5 means 1.5 days from now, 1.0/24 for 1 hour. + */ + function OffsetDate($dayFraction,$date=false) + { + if (!$date) $date = $this->sysDate; + return '('.$date.'+'.$dayFraction.')'; + } + + + /** + * + * @param sql SQL statement + * @param [inputarr] input bind array + */ + function &GetArray($sql,$inputarr=false) + { + global $ADODB_COUNTRECS; + + $savec = $ADODB_COUNTRECS; + $ADODB_COUNTRECS = false; + $rs =& $this->Execute($sql,$inputarr); + $ADODB_COUNTRECS = $savec; + if (!$rs) + if (defined('ADODB_PEAR')) { + $cls = ADODB_PEAR_Error(); + return $cls; + } else { + $false = false; + return $false; + } + $arr =& $rs->GetArray(); + $rs->Close(); + return $arr; + } + + function &CacheGetAll($secs2cache,$sql=false,$inputarr=false) + { + $arr =& $this->CacheGetArray($secs2cache,$sql,$inputarr); + return $arr; + } + + function &CacheGetArray($secs2cache,$sql=false,$inputarr=false) + { + global $ADODB_COUNTRECS; + + $savec = $ADODB_COUNTRECS; + $ADODB_COUNTRECS = false; + $rs =& $this->CacheExecute($secs2cache,$sql,$inputarr); + $ADODB_COUNTRECS = $savec; + + if (!$rs) + if (defined('ADODB_PEAR')) { + $cls = ADODB_PEAR_Error(); + return $cls; + } else { + $false = false; + return $false; + } + $arr =& $rs->GetArray(); + $rs->Close(); + return $arr; + } + + + + /** + * Return one row of sql statement. Recordset is disposed for you. + * + * @param sql SQL statement + * @param [inputarr] input bind array + */ + function &GetRow($sql,$inputarr=false) + { + global $ADODB_COUNTRECS; + $crecs = $ADODB_COUNTRECS; + $ADODB_COUNTRECS = false; + + $rs =& $this->Execute($sql,$inputarr); + + $ADODB_COUNTRECS = $crecs; + if ($rs) { + if (!$rs->EOF) $arr = $rs->fields; + else $arr = array(); + $rs->Close(); + return $arr; + } + + $false = false; + return $false; + } + + function &CacheGetRow($secs2cache,$sql=false,$inputarr=false) + { + $rs =& $this->CacheExecute($secs2cache,$sql,$inputarr); + if ($rs) { + $arr = false; + if (!$rs->EOF) $arr = $rs->fields; + $rs->Close(); + return $arr; + } + $false = false; + return $false; + } + + /** + * Insert or replace a single record. Note: this is not the same as MySQL's replace. + * ADOdb's Replace() uses update-insert semantics, not insert-delete-duplicates of MySQL. + * Also note that no table locking is done currently, so it is possible that the + * record be inserted twice by two programs... + * + * $this->Replace('products', array('prodname' =>"'Nails'","price" => 3.99), 'prodname'); + * + * $table table name + * $fieldArray associative array of data (you must quote strings yourself). + * $keyCol the primary key field name or if compound key, array of field names + * autoQuote set to true to use a hueristic to quote strings. Works with nulls and numbers + * but does not work with dates nor SQL functions. + * has_autoinc the primary key is an auto-inc field, so skip in insert. + * + * Currently blob replace not supported + * + * returns 0 = fail, 1 = update, 2 = insert + */ + + function Replace($table, $fieldArray, $keyCol, $autoQuote=false, $has_autoinc=false) + { + global $ADODB_INCLUDED_LIB; + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + + return _adodb_replace($this, $table, $fieldArray, $keyCol, $autoQuote, $has_autoinc); + } + + + /** + * Will select, getting rows from $offset (1-based), for $nrows. + * This simulates the MySQL "select * from table limit $offset,$nrows" , and + * the PostgreSQL "select * from table limit $nrows offset $offset". Note that + * MySQL and PostgreSQL parameter ordering is the opposite of the other. + * eg. + * CacheSelectLimit(15,'select * from table',3); will return rows 1 to 3 (1-based) + * CacheSelectLimit(15,'select * from table',3,2); will return rows 3 to 5 (1-based) + * + * BUG: Currently CacheSelectLimit fails with $sql with LIMIT or TOP clause already set + * + * @param [secs2cache] seconds to cache data, set to 0 to force query. This is optional + * @param sql + * @param [offset] is the row to start calculations from (1-based) + * @param [nrows] is the number of rows to get + * @param [inputarr] array of bind variables + * @return the recordset ($rs->databaseType == 'array') + */ + function &CacheSelectLimit($secs2cache,$sql,$nrows=-1,$offset=-1,$inputarr=false) + { + if (!is_numeric($secs2cache)) { + if ($sql === false) $sql = -1; + if ($offset == -1) $offset = false; + // sql, nrows, offset,inputarr + $rs =& $this->SelectLimit($secs2cache,$sql,$nrows,$offset,$this->cacheSecs); + } else { + if ($sql === false) ADOConnection::outp( "Warning: \$sql missing from CacheSelectLimit()"); + $rs =& $this->SelectLimit($sql,$nrows,$offset,$inputarr,$secs2cache); + } + return $rs; + } + + + /** + * Flush cached recordsets that match a particular $sql statement. + * If $sql == false, then we purge all files in the cache. + */ + + /** + * Flush cached recordsets that match a particular $sql statement. + * If $sql == false, then we purge all files in the cache. + */ + function CacheFlush($sql=false,$inputarr=false) + { + global $ADODB_CACHE_DIR; + + if ($this->memCache) { + global $ADODB_INCLUDED_MEMCACHE; + + $key = false; + if (empty($ADODB_INCLUDED_MEMCACHE)) include(ADODB_DIR.'/adodb-memcache.lib.inc.php'); + if ($sql) $key = $this->_gencachename($sql.serialize($inputarr),false,true); + FlushMemCache($key, $this->memCacheHost, $this->memCachePort, $this->debug); + return; + } + + if (strlen($ADODB_CACHE_DIR) > 1 && !$sql) { + /*if (strncmp(PHP_OS,'WIN',3) === 0) + $dir = str_replace('/', '\\', $ADODB_CACHE_DIR); + else */ + $dir = $ADODB_CACHE_DIR; + + if ($this->debug) { + ADOConnection::outp( "CacheFlush: $dir
\n", $this->_dirFlush($dir),"
"); + } else { + $this->_dirFlush($dir); + } + return; + } + + global $ADODB_INCLUDED_CSV; + if (empty($ADODB_INCLUDED_CSV)) include(ADODB_DIR.'/adodb-csvlib.inc.php'); + + $f = $this->_gencachename($sql.serialize($inputarr),false); + adodb_write_file($f,''); // is adodb_write_file needed? + if (!@unlink($f)) { + if ($this->debug) ADOConnection::outp( "CacheFlush: failed for $f"); + } + } + + /** + * Private function to erase all of the files and subdirectories in a directory. + * + * Just specify the directory, and tell it if you want to delete the directory or just clear it out. + * Note: $kill_top_level is used internally in the function to flush subdirectories. + */ + function _dirFlush($dir, $kill_top_level = false) { + if(!$dh = @opendir($dir)) return; + + while (($obj = readdir($dh))) { + if($obj=='.' || $obj=='..') + continue; + + if (!@unlink($dir.'/'.$obj)) + $this->_dirFlush($dir.'/'.$obj, true); + } + if ($kill_top_level === true) + @rmdir($dir); + return true; + } + + + function xCacheFlush($sql=false,$inputarr=false) + { + global $ADODB_CACHE_DIR; + + if ($this->memCache) { + global $ADODB_INCLUDED_MEMCACHE; + $key = false; + if (empty($ADODB_INCLUDED_MEMCACHE)) include(ADODB_DIR.'/adodb-memcache.lib.inc.php'); + if ($sql) $key = $this->_gencachename($sql.serialize($inputarr),false,true); + flushmemCache($key, $this->memCacheHost, $this->memCachePort, $this->debug); + return; + } + + if (strlen($ADODB_CACHE_DIR) > 1 && !$sql) { + if (strncmp(PHP_OS,'WIN',3) === 0) { + $cmd = 'del /s '.str_replace('/','\\',$ADODB_CACHE_DIR).'\adodb_*.cache'; + } else { + //$cmd = 'find "'.$ADODB_CACHE_DIR.'" -type f -maxdepth 1 -print0 | xargs -0 rm -f'; + $cmd = 'rm -rf '.$ADODB_CACHE_DIR.'/[0-9a-f][0-9a-f]/'; + // old version 'rm -f `find '.$ADODB_CACHE_DIR.' -name adodb_*.cache`'; + } + if ($this->debug) { + ADOConnection::outp( "CacheFlush: $cmd
\n", system($cmd),"
"); + } else { + exec($cmd); + } + return; + } + + global $ADODB_INCLUDED_CSV; + if (empty($ADODB_INCLUDED_CSV)) include(ADODB_DIR.'/adodb-csvlib.inc.php'); + + $f = $this->_gencachename($sql.serialize($inputarr),false); + adodb_write_file($f,''); // is adodb_write_file needed? + if (!@unlink($f)) { + if ($this->debug) ADOConnection::outp( "CacheFlush: failed for $f"); + } + } + + /** + * Private function to generate filename for caching. + * Filename is generated based on: + * + * - sql statement + * - database type (oci8, ibase, ifx, etc) + * - database name + * - userid + * - setFetchMode (adodb 4.23) + * + * When not in safe mode, we create 256 sub-directories in the cache directory ($ADODB_CACHE_DIR). + * Assuming that we can have 50,000 files per directory with good performance, + * then we can scale to 12.8 million unique cached recordsets. Wow! + */ + function _gencachename($sql,$createdir,$memcache=false) + { + global $ADODB_CACHE_DIR; + static $notSafeMode; + + if ($this->fetchMode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } else { + $mode = $this->fetchMode; + } + $m = md5($sql.$this->databaseType.$this->database.$this->user.$mode); + if ($memcache) return $m; + + if (!isset($notSafeMode)) $notSafeMode = !ini_get('safe_mode'); + $dir = ($notSafeMode) ? $ADODB_CACHE_DIR.'/'.substr($m,0,2) : $ADODB_CACHE_DIR; + + if ($createdir && $notSafeMode && !file_exists($dir)) { + $oldu = umask(0); + if (!mkdir($dir,0771)) + if ($this->debug) ADOConnection::outp( "Unable to mkdir $dir for $sql"); + umask($oldu); + } + return $dir.'/adodb_'.$m.'.cache'; + } + + + /** + * Execute SQL, caching recordsets. + * + * @param [secs2cache] seconds to cache data, set to 0 to force query. + * This is an optional parameter. + * @param sql SQL statement to execute + * @param [inputarr] holds the input data to bind to + * @return RecordSet or false + */ + function &CacheExecute($secs2cache,$sql=false,$inputarr=false) + { + + + if (!is_numeric($secs2cache)) { + $inputarr = $sql; + $sql = $secs2cache; + $secs2cache = $this->cacheSecs; + } + + if (is_array($sql)) { + $sqlparam = $sql; + $sql = $sql[0]; + } else + $sqlparam = $sql; + + if ($this->memCache) { + global $ADODB_INCLUDED_MEMCACHE; + if (empty($ADODB_INCLUDED_MEMCACHE)) include(ADODB_DIR.'/adodb-memcache.lib.inc.php'); + $md5file = $this->_gencachename($sql.serialize($inputarr),false,true); + } else { + global $ADODB_INCLUDED_CSV; + if (empty($ADODB_INCLUDED_CSV)) include(ADODB_DIR.'/adodb-csvlib.inc.php'); + $md5file = $this->_gencachename($sql.serialize($inputarr),true); + } + + $err = ''; + + if ($secs2cache > 0){ + if ($this->memCache) + $rs = &getmemCache($md5file,$err,$secs2cache, $this->memCacheHost, $this->memCachePort); + else + $rs = &csv2rs($md5file,$err,$secs2cache,$this->arrayClass); + $this->numCacheHits += 1; + } else { + $err='Timeout 1'; + $rs = false; + $this->numCacheMisses += 1; + } + if (!$rs) { + // no cached rs found + if ($this->debug) { + if (get_magic_quotes_runtime() && !$this->memCache) { + ADOConnection::outp("Please disable magic_quotes_runtime - it corrupts cache files :("); + } + if ($this->debug !== -1) ADOConnection::outp( " $md5file cache failure: $err (see sql below)"); + } + + $rs = &$this->Execute($sqlparam,$inputarr); + + if ($rs && $this->memCache) { + $rs = &$this->_rs2rs($rs); // read entire recordset into memory immediately + if(!putmemCache($md5file, $rs, $this->memCacheHost, $this->memCachePort, $this->memCacheCompress, $this->debug)) { + if ($fn = $this->raiseErrorFn) + $fn($this->databaseType,'CacheExecute',-32000,"Cache write error",$md5file,$sql,$this); + if ($this->debug) ADOConnection::outp( " Cache write error"); + } + } else + if ($rs) { + $eof = $rs->EOF; + $rs = &$this->_rs2rs($rs); // read entire recordset into memory immediately + $txt = _rs2serialize($rs,false,$sql); // serialize + + if (!adodb_write_file($md5file,$txt,$this->debug)) { + if ($fn = $this->raiseErrorFn) { + $fn($this->databaseType,'CacheExecute',-32000,"Cache write error",$md5file,$sql,$this); + } + if ($this->debug) ADOConnection::outp( " Cache write error"); + } + if ($rs->EOF && !$eof) { + $rs->MoveFirst(); + //$rs = &csv2rs($md5file,$err); + $rs->connection = &$this; // Pablo suggestion + } + + } else + if (!$this->memCache) + @unlink($md5file); + } else { + $this->_errorMsg = ''; + $this->_errorCode = 0; + + if ($this->fnCacheExecute) { + $fn = $this->fnCacheExecute; + $fn($this, $secs2cache, $sql, $inputarr); + } + // ok, set cached object found + $rs->connection = &$this; // Pablo suggestion + if ($this->debug){ + + $inBrowser = isset($_SERVER['HTTP_USER_AGENT']); + $ttl = $rs->timeCreated + $secs2cache - time(); + $s = is_array($sql) ? $sql[0] : $sql; + if ($inBrowser) $s = ''.htmlspecialchars($s).''; + + ADOConnection::outp( " $md5file reloaded, ttl=$ttl [ $s ]"); + } + } + return $rs; + } + + + /* + Similar to PEAR DB's autoExecute(), except that + $mode can be 'INSERT' or 'UPDATE' or DB_AUTOQUERY_INSERT or DB_AUTOQUERY_UPDATE + If $mode == 'UPDATE', then $where is compulsory as a safety measure. + + $forceUpdate means that even if the data has not changed, perform update. + */ + function& AutoExecute($table, $fields_values, $mode = 'INSERT', $where = FALSE, $forceUpdate=true, $magicq=false) + { + $false = false; + $sql = 'SELECT * FROM '.$table; + if ($where!==FALSE) $sql .= ' WHERE '.$where; + else if ($mode == 'UPDATE' || $mode == 2 /* DB_AUTOQUERY_UPDATE */) { + ADOConnection::outp('AutoExecute: Illegal mode=UPDATE with empty WHERE clause'); + return $false; + } + + $rs =& $this->SelectLimit($sql,1); + if (!$rs) return $false; // table does not exist + $rs->tableName = $table; + + switch((string) $mode) { + case 'UPDATE': + case '2': + $sql = $this->GetUpdateSQL($rs, $fields_values, $forceUpdate, $magicq); + break; + case 'INSERT': + case '1': + $sql = $this->GetInsertSQL($rs, $fields_values, $magicq); + break; + default: + ADOConnection::outp("AutoExecute: Unknown mode=$mode"); + return $false; + } + $ret = false; + if ($sql) $ret = $this->Execute($sql); + if ($ret) $ret = true; + return $ret; + } + + + /** + * Generates an Update Query based on an existing recordset. + * $arrFields is an associative array of fields with the value + * that should be assigned. + * + * Note: This function should only be used on a recordset + * that is run against a single table and sql should only + * be a simple select stmt with no groupby/orderby/limit + * + * "Jonathan Younger" + */ + function GetUpdateSQL(&$rs, $arrFields,$forceUpdate=false,$magicq=false,$force=null) + { + global $ADODB_INCLUDED_LIB; + + //********************************************************// + //This is here to maintain compatibility + //with older adodb versions. Sets force type to force nulls if $forcenulls is set. + if (!isset($force)) { + global $ADODB_FORCE_TYPE; + $force = $ADODB_FORCE_TYPE; + } + //********************************************************// + + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + return _adodb_getupdatesql($this,$rs,$arrFields,$forceUpdate,$magicq,$force); + } + + /** + * Generates an Insert Query based on an existing recordset. + * $arrFields is an associative array of fields with the value + * that should be assigned. + * + * Note: This function should only be used on a recordset + * that is run against a single table. + */ + function GetInsertSQL(&$rs, $arrFields,$magicq=false,$force=null) + { + global $ADODB_INCLUDED_LIB; + if (!isset($force)) { + global $ADODB_FORCE_TYPE; + $force = $ADODB_FORCE_TYPE; + + } + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + return _adodb_getinsertsql($this,$rs,$arrFields,$magicq,$force); + } + + + /** + * Update a blob column, given a where clause. There are more sophisticated + * blob handling functions that we could have implemented, but all require + * a very complex API. Instead we have chosen something that is extremely + * simple to understand and use. + * + * Note: $blobtype supports 'BLOB' and 'CLOB', default is BLOB of course. + * + * Usage to update a $blobvalue which has a primary key blob_id=1 into a + * field blobtable.blobcolumn: + * + * UpdateBlob('blobtable', 'blobcolumn', $blobvalue, 'blob_id=1'); + * + * Insert example: + * + * $conn->Execute('INSERT INTO blobtable (id, blobcol) VALUES (1, null)'); + * $conn->UpdateBlob('blobtable','blobcol',$blob,'id=1'); + */ + + function UpdateBlob($table,$column,$val,$where,$blobtype='BLOB') + { + return $this->Execute("UPDATE $table SET $column=? WHERE $where",array($val)) != false; + } + + /** + * Usage: + * UpdateBlob('TABLE', 'COLUMN', '/path/to/file', 'ID=1'); + * + * $blobtype supports 'BLOB' and 'CLOB' + * + * $conn->Execute('INSERT INTO blobtable (id, blobcol) VALUES (1, null)'); + * $conn->UpdateBlob('blobtable','blobcol',$blobpath,'id=1'); + */ + function UpdateBlobFile($table,$column,$path,$where,$blobtype='BLOB') + { + $fd = fopen($path,'rb'); + if ($fd === false) return false; + $val = fread($fd,filesize($path)); + fclose($fd); + return $this->UpdateBlob($table,$column,$val,$where,$blobtype); + } + + function BlobDecode($blob) + { + return $blob; + } + + function BlobEncode($blob) + { + return $blob; + } + + function SetCharSet($charset) + { + return false; + } + + function IfNull( $field, $ifNull ) + { + return " CASE WHEN $field is null THEN $ifNull ELSE $field END "; + } + + function LogSQL($enable=true) + { + include_once(ADODB_DIR.'/adodb-perf.inc.php'); + + if ($enable) $this->fnExecute = 'adodb_log_sql'; + else $this->fnExecute = false; + + $old = $this->_logsql; + $this->_logsql = $enable; + if ($enable && !$old) $this->_affected = false; + return $old; + } + + function GetCharSet() + { + return false; + } + + /** + * Usage: + * UpdateClob('TABLE', 'COLUMN', $var, 'ID=1', 'CLOB'); + * + * $conn->Execute('INSERT INTO clobtable (id, clobcol) VALUES (1, null)'); + * $conn->UpdateClob('clobtable','clobcol',$clob,'id=1'); + */ + function UpdateClob($table,$column,$val,$where) + { + return $this->UpdateBlob($table,$column,$val,$where,'CLOB'); + } + + // not the fastest implementation - quick and dirty - jlim + // for best performance, use the actual $rs->MetaType(). + function MetaType($t,$len=-1,$fieldobj=false) + { + + if (empty($this->_metars)) { + $rsclass = $this->rsPrefix.$this->databaseType; + $this->_metars =& new $rsclass(false,$this->fetchMode); + $this->_metars->connection =& $this; + } + return $this->_metars->MetaType($t,$len,$fieldobj); + } + + + /** + * Change the SQL connection locale to a specified locale. + * This is used to get the date formats written depending on the client locale. + */ + function SetDateLocale($locale = 'En') + { + $this->locale = $locale; + switch (strtoupper($locale)) + { + case 'EN': + $this->fmtDate="'Y-m-d'"; + $this->fmtTimeStamp = "'Y-m-d H:i:s'"; + break; + + case 'US': + $this->fmtDate = "'m-d-Y'"; + $this->fmtTimeStamp = "'m-d-Y H:i:s'"; + break; + + case 'NL': + case 'FR': + case 'RO': + case 'IT': + $this->fmtDate="'d-m-Y'"; + $this->fmtTimeStamp = "'d-m-Y H:i:s'"; + break; + + case 'GE': + $this->fmtDate="'d.m.Y'"; + $this->fmtTimeStamp = "'d.m.Y H:i:s'"; + break; + + default: + $this->fmtDate="'Y-m-d'"; + $this->fmtTimeStamp = "'Y-m-d H:i:s'"; + break; + } + } + + function &GetActiveRecordsClass($class, $table,$whereOrderBy=false,$bindarr=false, $primkeyArr=false) + { + global $_ADODB_ACTIVE_DBS; + + $save = $this->SetFetchMode(ADODB_FETCH_NUM); + if (empty($whereOrderBy)) $whereOrderBy = '1=1'; + $rows = $this->GetAll("select * from ".$table.' WHERE '.$whereOrderBy,$bindarr); + $this->SetFetchMode($save); + + $false = false; + + if ($rows === false) { + return $false; + } + + + if (!isset($_ADODB_ACTIVE_DBS)) { + include(ADODB_DIR.'/adodb-active-record.inc.php'); + } + if (!class_exists($class)) { + ADOConnection::outp("Unknown class $class in GetActiveRcordsClass()"); + return $false; + } + $arr = array(); + foreach($rows as $row) { + + $obj =& new $class($table,$primkeyArr,$this); + if ($obj->ErrorMsg()){ + $this->_errorMsg = $obj->ErrorMsg(); + return $false; + } + $obj->Set($row); + $arr[] =& $obj; + } + return $arr; + } + + function &GetActiveRecords($table,$where=false,$bindarr=false,$primkeyArr=false) + { + $arr =& $this->GetActiveRecordsClass('ADODB_Active_Record', $table, $where, $bindarr, $primkeyArr); + return $arr; + } + + /** + * Close Connection + */ + function Close() + { + $rez = $this->_close(); + $this->_connectionID = false; + return $rez; + } + + /** + * Begin a Transaction. Must be followed by CommitTrans() or RollbackTrans(). + * + * @return true if succeeded or false if database does not support transactions + */ + function BeginTrans() {return false;} + + /* set transaction mode */ + function SetTransactionMode( $transaction_mode ) + { + $transaction_mode = $this->MetaTransaction($transaction_mode, $this->dataProvider); + $this->_transmode = $transaction_mode; + } +/* +http://msdn2.microsoft.com/en-US/ms173763.aspx +http://dev.mysql.com/doc/refman/5.0/en/innodb-transaction-isolation.html +http://www.postgresql.org/docs/8.1/interactive/sql-set-transaction.html +http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/statements_10005.htm +*/ + function MetaTransaction($mode,$db) + { + $mode = strtoupper($mode); + $mode = str_replace('ISOLATION LEVEL ','',$mode); + + switch($mode) { + + case 'READ UNCOMMITTED': + switch($db) { + case 'oci8': + case 'oracle': + return 'ISOLATION LEVEL READ COMMITTED'; + default: + return 'ISOLATION LEVEL READ UNCOMMITTED'; + } + break; + + case 'READ COMMITTED': + return 'ISOLATION LEVEL READ COMMITTED'; + break; + + case 'REPEATABLE READ': + switch($db) { + case 'oci8': + case 'oracle': + return 'ISOLATION LEVEL SERIALIZABLE'; + default: + return 'ISOLATION LEVEL REPEATABLE READ'; + } + break; + + case 'SERIALIZABLE': + return 'ISOLATION LEVEL SERIALIZABLE'; + break; + + default: + return $mode; + } + } + + /** + * If database does not support transactions, always return true as data always commited + * + * @param $ok set to false to rollback transaction, true to commit + * + * @return true/false. + */ + function CommitTrans($ok=true) + { return true;} + + + /** + * If database does not support transactions, rollbacks always fail, so return false + * + * @return true/false. + */ + function RollbackTrans() + { return false;} + + + /** + * return the databases that the driver can connect to. + * Some databases will return an empty array. + * + * @return an array of database names. + */ + function MetaDatabases() + { + global $ADODB_FETCH_MODE; + + if ($this->metaDatabasesSQL) { + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + + $arr = $this->GetCol($this->metaDatabasesSQL); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + return $arr; + } + + return false; + } + + + /** + * @param ttype can either be 'VIEW' or 'TABLE' or false. + * If false, both views and tables are returned. + * "VIEW" returns only views + * "TABLE" returns only tables + * @param showSchema returns the schema/user with the table name, eg. USER.TABLE + * @param mask is the input mask - only supported by oci8 and postgresql + * + * @return array of tables for current database. + */ + function &MetaTables($ttype=false,$showSchema=false,$mask=false) + { + global $ADODB_FETCH_MODE; + + + $false = false; + if ($mask) { + return $false; + } + if ($this->metaTablesSQL) { + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + + $rs = $this->Execute($this->metaTablesSQL); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if ($rs === false) return $false; + $arr =& $rs->GetArray(); + $arr2 = array(); + + if ($hast = ($ttype && isset($arr[0][1]))) { + $showt = strncmp($ttype,'T',1); + } + + for ($i=0; $i < sizeof($arr); $i++) { + if ($hast) { + if ($showt == 0) { + if (strncmp($arr[$i][1],'T',1) == 0) $arr2[] = trim($arr[$i][0]); + } else { + if (strncmp($arr[$i][1],'V',1) == 0) $arr2[] = trim($arr[$i][0]); + } + } else + $arr2[] = trim($arr[$i][0]); + } + $rs->Close(); + return $arr2; + } + return $false; + } + + + function _findschema(&$table,&$schema) + { + if (!$schema && ($at = strpos($table,'.')) !== false) { + $schema = substr($table,0,$at); + $table = substr($table,$at+1); + } + } + + /** + * List columns in a database as an array of ADOFieldObjects. + * See top of file for definition of object. + * + * @param $table table name to query + * @param $normalize makes table name case-insensitive (required by some databases) + * @schema is optional database schema to use - not supported by all databases. + * + * @return array of ADOFieldObjects for current table. + */ + function &MetaColumns($table,$normalize=true) + { + global $ADODB_FETCH_MODE; + + $false = false; + + if (!empty($this->metaColumnsSQL)) { + + $schema = false; + $this->_findschema($table,$schema); + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + $rs = $this->Execute(sprintf($this->metaColumnsSQL,($normalize)?strtoupper($table):$table)); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + if ($rs === false || $rs->EOF) return $false; + + $retarr = array(); + while (!$rs->EOF) { //print_r($rs->fields); + $fld = new ADOFieldObject(); + $fld->name = $rs->fields[0]; + $fld->type = $rs->fields[1]; + if (isset($rs->fields[3]) && $rs->fields[3]) { + if ($rs->fields[3]>0) $fld->max_length = $rs->fields[3]; + $fld->scale = $rs->fields[4]; + if ($fld->scale>0) $fld->max_length += 1; + } else + $fld->max_length = $rs->fields[2]; + + if ($ADODB_FETCH_MODE == ADODB_FETCH_NUM) $retarr[] = $fld; + else $retarr[strtoupper($fld->name)] = $fld; + $rs->MoveNext(); + } + $rs->Close(); + return $retarr; + } + return $false; + } + + /** + * List indexes on a table as an array. + * @param table table name to query + * @param primary true to only show primary keys. Not actually used for most databases + * + * @return array of indexes on current table. Each element represents an index, and is itself an associative array. + + Array ( + [name_of_index] => Array + ( + [unique] => true or false + [columns] => Array + ( + [0] => firstname + [1] => lastname + ) + ) + */ + function &MetaIndexes($table, $primary = false, $owner = false) + { + $false = false; + return $false; + } + + /** + * List columns names in a table as an array. + * @param table table name to query + * + * @return array of column names for current table. + */ + function &MetaColumnNames($table, $numIndexes=false,$useattnum=false /* only for postgres */) + { + $objarr =& $this->MetaColumns($table); + if (!is_array($objarr)) { + $false = false; + return $false; + } + $arr = array(); + if ($numIndexes) { + $i = 0; + if ($useattnum) { + foreach($objarr as $v) + $arr[$v->attnum] = $v->name; + + } else + foreach($objarr as $v) $arr[$i++] = $v->name; + } else + foreach($objarr as $v) $arr[strtoupper($v->name)] = $v->name; + + return $arr; + } + + /** + * Different SQL databases used different methods to combine strings together. + * This function provides a wrapper. + * + * param s variable number of string parameters + * + * Usage: $db->Concat($str1,$str2); + * + * @return concatenated string + */ + function Concat() + { + $arr = func_get_args(); + return implode($this->concat_operator, $arr); + } + + + /** + * Converts a date "d" to a string that the database can understand. + * + * @param d a date in Unix date time format. + * + * @return date string in database date format + */ + function DBDate($d) + { + if (empty($d) && $d !== 0) return 'null'; + + if (is_string($d) && !is_numeric($d)) { + if ($d === 'null' || strncmp($d,"'",1) === 0) return $d; + if ($this->isoDates) return "'$d'"; + $d = ADOConnection::UnixDate($d); + } + + return adodb_date($this->fmtDate,$d); + } + + function BindDate($d) + { + $d = $this->DBDate($d); + if (strncmp($d,"'",1)) return $d; + + return substr($d,1,strlen($d)-2); + } + + function BindTimeStamp($d) + { + $d = $this->DBTimeStamp($d); + if (strncmp($d,"'",1)) return $d; + + return substr($d,1,strlen($d)-2); + } + + + /** + * Converts a timestamp "ts" to a string that the database can understand. + * + * @param ts a timestamp in Unix date time format. + * + * @return timestamp string in database timestamp format + */ + function DBTimeStamp($ts) + { + if (empty($ts) && $ts !== 0) return 'null'; + + # strlen(14) allows YYYYMMDDHHMMSS format + if (!is_string($ts) || (is_numeric($ts) && strlen($ts)<14)) + return adodb_date($this->fmtTimeStamp,$ts); + + if ($ts === 'null') return $ts; + if ($this->isoDates && strlen($ts) !== 14) return "'$ts'"; + + $ts = ADOConnection::UnixTimeStamp($ts); + return adodb_date($this->fmtTimeStamp,$ts); + } + + /** + * Also in ADORecordSet. + * @param $v is a date string in YYYY-MM-DD format + * + * @return date in unix timestamp format, or 0 if before TIMESTAMP_FIRST_YEAR, or false if invalid date format + */ + function UnixDate($v) + { + if (is_object($v)) { + // odbtp support + //( [year] => 2004 [month] => 9 [day] => 4 [hour] => 12 [minute] => 44 [second] => 8 [fraction] => 0 ) + return adodb_mktime($v->hour,$v->minute,$v->second,$v->month,$v->day, $v->year); + } + + if (is_numeric($v) && strlen($v) !== 8) return $v; + if (!preg_match( "|^([0-9]{4})[-/\.]?([0-9]{1,2})[-/\.]?([0-9]{1,2})|", + ($v), $rr)) return false; + + if ($rr[1] <= TIMESTAMP_FIRST_YEAR) return 0; + // h-m-s-MM-DD-YY + return @adodb_mktime(0,0,0,$rr[2],$rr[3],$rr[1]); + } + + + /** + * Also in ADORecordSet. + * @param $v is a timestamp string in YYYY-MM-DD HH-NN-SS format + * + * @return date in unix timestamp format, or 0 if before TIMESTAMP_FIRST_YEAR, or false if invalid date format + */ + function UnixTimeStamp($v) + { + if (is_object($v)) { + // odbtp support + //( [year] => 2004 [month] => 9 [day] => 4 [hour] => 12 [minute] => 44 [second] => 8 [fraction] => 0 ) + return adodb_mktime($v->hour,$v->minute,$v->second,$v->month,$v->day, $v->year); + } + + if (!preg_match( + "|^([0-9]{4})[-/\.]?([0-9]{1,2})[-/\.]?([0-9]{1,2})[ ,-]*(([0-9]{1,2}):?([0-9]{1,2}):?([0-9\.]{1,4}))?|", + ($v), $rr)) return false; + + if ($rr[1] <= TIMESTAMP_FIRST_YEAR && $rr[2]<= 1) return 0; + + // h-m-s-MM-DD-YY + if (!isset($rr[5])) return adodb_mktime(0,0,0,$rr[2],$rr[3],$rr[1]); + return @adodb_mktime($rr[5],$rr[6],$rr[7],$rr[2],$rr[3],$rr[1]); + } + + /** + * Also in ADORecordSet. + * + * Format database date based on user defined format. + * + * @param v is the character date in YYYY-MM-DD format, returned by database + * @param fmt is the format to apply to it, using date() + * + * @return a date formated as user desires + */ + + function UserDate($v,$fmt='Y-m-d',$gmt=false) + { + $tt = $this->UnixDate($v); + + // $tt == -1 if pre TIMESTAMP_FIRST_YEAR + if (($tt === false || $tt == -1) && $v != false) return $v; + else if ($tt == 0) return $this->emptyDate; + else if ($tt == -1) { // pre-TIMESTAMP_FIRST_YEAR + } + + return ($gmt) ? adodb_gmdate($fmt,$tt) : adodb_date($fmt,$tt); + + } + + /** + * + * @param v is the character timestamp in YYYY-MM-DD hh:mm:ss format + * @param fmt is the format to apply to it, using date() + * + * @return a timestamp formated as user desires + */ + function UserTimeStamp($v,$fmt='Y-m-d H:i:s',$gmt=false) + { + if (!isset($v)) return $this->emptyTimeStamp; + # strlen(14) allows YYYYMMDDHHMMSS format + if (is_numeric($v) && strlen($v)<14) return ($gmt) ? adodb_gmdate($fmt,$v) : adodb_date($fmt,$v); + $tt = $this->UnixTimeStamp($v); + // $tt == -1 if pre TIMESTAMP_FIRST_YEAR + if (($tt === false || $tt == -1) && $v != false) return $v; + if ($tt == 0) return $this->emptyTimeStamp; + return ($gmt) ? adodb_gmdate($fmt,$tt) : adodb_date($fmt,$tt); + } + + function escape($s,$magic_quotes=false) + { + return $this->addq($s,$magic_quotes); + } + + /** + * Quotes a string, without prefixing nor appending quotes. + */ + function addq($s,$magic_quotes=false) + { + if (!$magic_quotes) { + + if ($this->replaceQuote[0] == '\\'){ + // only since php 4.0.5 + $s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\0"),$s); + //$s = str_replace("\0","\\\0", str_replace('\\','\\\\',$s)); + } + return str_replace("'",$this->replaceQuote,$s); + } + + // undo magic quotes for " + $s = str_replace('\\"','"',$s); + + if ($this->replaceQuote == "\\'") // ' already quoted, no need to change anything + return $s; + else {// change \' to '' for sybase/mssql + $s = str_replace('\\\\','\\',$s); + return str_replace("\\'",$this->replaceQuote,$s); + } + } + + /** + * Correctly quotes a string so that all strings are escaped. We prefix and append + * to the string single-quotes. + * An example is $db->qstr("Don't bother",magic_quotes_runtime()); + * + * @param s the string to quote + * @param [magic_quotes] if $s is GET/POST var, set to get_magic_quotes_gpc(). + * This undoes the stupidity of magic quotes for GPC. + * + * @return quoted string to be sent back to database + */ + function qstr($s,$magic_quotes=false) + { + if (!$magic_quotes) { + + if ($this->replaceQuote[0] == '\\'){ + // only since php 4.0.5 + $s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\0"),$s); + //$s = str_replace("\0","\\\0", str_replace('\\','\\\\',$s)); + } + return "'".str_replace("'",$this->replaceQuote,$s)."'"; + } + + // undo magic quotes for " + $s = str_replace('\\"','"',$s); + + if ($this->replaceQuote == "\\'") // ' already quoted, no need to change anything + return "'$s'"; + else {// change \' to '' for sybase/mssql + $s = str_replace('\\\\','\\',$s); + return "'".str_replace("\\'",$this->replaceQuote,$s)."'"; + } + } + + + /** + * Will select the supplied $page number from a recordset, given that it is paginated in pages of + * $nrows rows per page. It also saves two boolean values saying if the given page is the first + * and/or last one of the recordset. Added by Ivn Oliva to provide recordset pagination. + * + * See readme.htm#ex8 for an example of usage. + * + * @param sql + * @param nrows is the number of rows per page to get + * @param page is the page number to get (1-based) + * @param [inputarr] array of bind variables + * @param [secs2cache] is a private parameter only used by jlim + * @return the recordset ($rs->databaseType == 'array') + * + * NOTE: phpLens uses a different algorithm and does not use PageExecute(). + * + */ + function &PageExecute($sql, $nrows, $page, $inputarr=false, $secs2cache=0) + { + global $ADODB_INCLUDED_LIB; + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + if ($this->pageExecuteCountRows) $rs =& _adodb_pageexecute_all_rows($this, $sql, $nrows, $page, $inputarr, $secs2cache); + else $rs =& _adodb_pageexecute_no_last_page($this, $sql, $nrows, $page, $inputarr, $secs2cache); + return $rs; + } + + + /** + * Will select the supplied $page number from a recordset, given that it is paginated in pages of + * $nrows rows per page. It also saves two boolean values saying if the given page is the first + * and/or last one of the recordset. Added by Ivn Oliva to provide recordset pagination. + * + * @param secs2cache seconds to cache data, set to 0 to force query + * @param sql + * @param nrows is the number of rows per page to get + * @param page is the page number to get (1-based) + * @param [inputarr] array of bind variables + * @return the recordset ($rs->databaseType == 'array') + */ + function &CachePageExecute($secs2cache, $sql, $nrows, $page,$inputarr=false) + { + /*switch($this->dataProvider) { + case 'postgres': + case 'mysql': + break; + default: $secs2cache = 0; break; + }*/ + $rs =& $this->PageExecute($sql,$nrows,$page,$inputarr,$secs2cache); + return $rs; + } + +} // end class ADOConnection + + + + //============================================================================================== + // CLASS ADOFetchObj + //============================================================================================== + + /** + * Internal placeholder for record objects. Used by ADORecordSet->FetchObj(). + */ + class ADOFetchObj { + }; + + //============================================================================================== + // CLASS ADORecordSet_empty + //============================================================================================== + + /** + * Lightweight recordset when there are no records to be returned + */ + class ADORecordSet_empty + { + var $dataProvider = 'empty'; + var $databaseType = false; + var $EOF = true; + var $_numOfRows = 0; + var $fields = false; + var $connection = false; + function RowCount() {return 0;} + function RecordCount() {return 0;} + function PO_RecordCount(){return 0;} + function Close(){return true;} + function FetchRow() {return false;} + function FieldCount(){ return 0;} + function Init() {} + } + + //============================================================================================== + // DATE AND TIME FUNCTIONS + //============================================================================================== + if (!defined('ADODB_DATE_VERSION')) include(ADODB_DIR.'/adodb-time.inc.php'); + + //============================================================================================== + // CLASS ADORecordSet + //============================================================================================== + + if (PHP_VERSION < 5) include_once(ADODB_DIR.'/adodb-php4.inc.php'); + else include_once(ADODB_DIR.'/adodb-iterator.inc.php'); + /** + * RecordSet class that represents the dataset returned by the database. + * To keep memory overhead low, this class holds only the current row in memory. + * No prefetching of data is done, so the RecordCount() can return -1 ( which + * means recordcount not known). + */ + class ADORecordSet extends ADODB_BASE_RS { + /* + * public variables + */ + var $dataProvider = "native"; + var $fields = false; /// holds the current row data + var $blobSize = 100; /// any varchar/char field this size or greater is treated as a blob + /// in other words, we use a text area for editing. + var $canSeek = false; /// indicates that seek is supported + var $sql; /// sql text + var $EOF = false; /// Indicates that the current record position is after the last record in a Recordset object. + + var $emptyTimeStamp = ' '; /// what to display when $time==0 + var $emptyDate = ' '; /// what to display when $time==0 + var $debug = false; + var $timeCreated=0; /// datetime in Unix format rs created -- for cached recordsets + + var $bind = false; /// used by Fields() to hold array - should be private? + var $fetchMode; /// default fetch mode + var $connection = false; /// the parent connection + /* + * private variables + */ + var $_numOfRows = -1; /** number of rows, or -1 */ + var $_numOfFields = -1; /** number of fields in recordset */ + var $_queryID = -1; /** This variable keeps the result link identifier. */ + var $_currentRow = -1; /** This variable keeps the current row in the Recordset. */ + var $_closed = false; /** has recordset been closed */ + var $_inited = false; /** Init() should only be called once */ + var $_obj; /** Used by FetchObj */ + var $_names; /** Used by FetchObj */ + + var $_currentPage = -1; /** Added by Ivn Oliva to implement recordset pagination */ + var $_atFirstPage = false; /** Added by Ivn Oliva to implement recordset pagination */ + var $_atLastPage = false; /** Added by Ivn Oliva to implement recordset pagination */ + var $_lastPageNo = -1; + var $_maxRecordCount = 0; + var $datetime = false; + + /** + * Constructor + * + * @param queryID this is the queryID returned by ADOConnection->_query() + * + */ + function ADORecordSet($queryID) + { + $this->_queryID = $queryID; + } + + + + function Init() + { + if ($this->_inited) return; + $this->_inited = true; + if ($this->_queryID) @$this->_initrs(); + else { + $this->_numOfRows = 0; + $this->_numOfFields = 0; + } + if ($this->_numOfRows != 0 && $this->_numOfFields && $this->_currentRow == -1) { + + $this->_currentRow = 0; + if ($this->EOF = ($this->_fetch() === false)) { + $this->_numOfRows = 0; // _numOfRows could be -1 + } + } else { + $this->EOF = true; + } + } + + + /** + * Generate a SELECT tag string from a recordset, and return the string. + * If the recordset has 2 cols, we treat the 1st col as the containing + * the text to display to the user, and 2nd col as the return value. Default + * strings are compared with the FIRST column. + * + * @param name name of SELECT tag + * @param [defstr] the value to hilite. Use an array for multiple hilites for listbox. + * @param [blank1stItem] true to leave the 1st item in list empty + * @param [multiple] true for listbox, false for popup + * @param [size] #rows to show for listbox. not used by popup + * @param [selectAttr] additional attributes to defined for SELECT tag. + * useful for holding javascript onChange='...' handlers. + & @param [compareFields0] when we have 2 cols in recordset, we compare the defstr with + * column 0 (1st col) if this is true. This is not documented. + * + * @return HTML + * + * changes by glen.davies@cce.ac.nz to support multiple hilited items + */ + function GetMenu($name,$defstr='',$blank1stItem=true,$multiple=false, + $size=0, $selectAttr='',$compareFields0=true) + { + global $ADODB_INCLUDED_LIB; + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + return _adodb_getmenu($this, $name,$defstr,$blank1stItem,$multiple, + $size, $selectAttr,$compareFields0); + } + + + + /** + * Generate a SELECT tag string from a recordset, and return the string. + * If the recordset has 2 cols, we treat the 1st col as the containing + * the text to display to the user, and 2nd col as the return value. Default + * strings are compared with the SECOND column. + * + */ + function GetMenu2($name,$defstr='',$blank1stItem=true,$multiple=false,$size=0, $selectAttr='') + { + return $this->GetMenu($name,$defstr,$blank1stItem,$multiple, + $size, $selectAttr,false); + } + + /* + Grouped Menu + */ + function GetMenu3($name,$defstr='',$blank1stItem=true,$multiple=false, + $size=0, $selectAttr='') + { + global $ADODB_INCLUDED_LIB; + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + return _adodb_getmenu_gp($this, $name,$defstr,$blank1stItem,$multiple, + $size, $selectAttr,false); + } + + /** + * return recordset as a 2-dimensional array. + * + * @param [nRows] is the number of rows to return. -1 means every row. + * + * @return an array indexed by the rows (0-based) from the recordset + */ + function &GetArray($nRows = -1) + { + global $ADODB_EXTENSION; if ($ADODB_EXTENSION) { + $results = adodb_getall($this,$nRows); + return $results; + } + $results = array(); + $cnt = 0; + while (!$this->EOF && $nRows != $cnt) { + $results[] = $this->fields; + $this->MoveNext(); + $cnt++; + } + return $results; + } + + function &GetAll($nRows = -1) + { + $arr =& $this->GetArray($nRows); + return $arr; + } + + /* + * Some databases allow multiple recordsets to be returned. This function + * will return true if there is a next recordset, or false if no more. + */ + function NextRecordSet() + { + return false; + } + + /** + * return recordset as a 2-dimensional array. + * Helper function for ADOConnection->SelectLimit() + * + * @param offset is the row to start calculations from (1-based) + * @param [nrows] is the number of rows to return + * + * @return an array indexed by the rows (0-based) from the recordset + */ + function &GetArrayLimit($nrows,$offset=-1) + { + if ($offset <= 0) { + $arr =& $this->GetArray($nrows); + return $arr; + } + + $this->Move($offset); + + $results = array(); + $cnt = 0; + while (!$this->EOF && $nrows != $cnt) { + $results[$cnt++] = $this->fields; + $this->MoveNext(); + } + + return $results; + } + + + /** + * Synonym for GetArray() for compatibility with ADO. + * + * @param [nRows] is the number of rows to return. -1 means every row. + * + * @return an array indexed by the rows (0-based) from the recordset + */ + function &GetRows($nRows = -1) + { + $arr =& $this->GetArray($nRows); + return $arr; + } + + /** + * return whole recordset as a 2-dimensional associative array if there are more than 2 columns. + * The first column is treated as the key and is not included in the array. + * If there is only 2 columns, it will return a 1 dimensional array of key-value pairs unless + * $force_array == true. + * + * @param [force_array] has only meaning if we have 2 data columns. If false, a 1 dimensional + * array is returned, otherwise a 2 dimensional array is returned. If this sounds confusing, + * read the source. + * + * @param [first2cols] means if there are more than 2 cols, ignore the remaining cols and + * instead of returning array[col0] => array(remaining cols), return array[col0] => col1 + * + * @return an associative array indexed by the first column of the array, + * or false if the data has less than 2 cols. + */ + function &GetAssoc($force_array = false, $first2cols = false) + { + global $ADODB_EXTENSION; + + $cols = $this->_numOfFields; + if ($cols < 2) { + $false = false; + return $false; + } + $numIndex = isset($this->fields[0]); + $results = array(); + + if (!$first2cols && ($cols > 2 || $force_array)) { + if ($ADODB_EXTENSION) { + if ($numIndex) { + while (!$this->EOF) { + $results[trim($this->fields[0])] = array_slice($this->fields, 1); + adodb_movenext($this); + } + } else { + while (!$this->EOF) { + // Fix for array_slice re-numbering numeric associative keys + $keys = array_slice(array_keys($this->fields), 1); + $sliced_array = array(); + + foreach($keys as $key) { + $sliced_array[$key] = $this->fields[$key]; + } + + $results[trim(reset($this->fields))] = $sliced_array; + adodb_movenext($this); + } + } + } else { + if ($numIndex) { + while (!$this->EOF) { + $results[trim($this->fields[0])] = array_slice($this->fields, 1); + $this->MoveNext(); + } + } else { + while (!$this->EOF) { + // Fix for array_slice re-numbering numeric associative keys + $keys = array_slice(array_keys($this->fields), 1); + $sliced_array = array(); + + foreach($keys as $key) { + $sliced_array[$key] = $this->fields[$key]; + } + + $results[trim(reset($this->fields))] = $sliced_array; + $this->MoveNext(); + } + } + } + } else { + if ($ADODB_EXTENSION) { + // return scalar values + if ($numIndex) { + while (!$this->EOF) { + // some bug in mssql PHP 4.02 -- doesn't handle references properly so we FORCE creating a new string + $results[trim(($this->fields[0]))] = $this->fields[1]; + adodb_movenext($this); + } + } else { + while (!$this->EOF) { + // some bug in mssql PHP 4.02 -- doesn't handle references properly so we FORCE creating a new string + $v1 = trim(reset($this->fields)); + $v2 = ''.next($this->fields); + $results[$v1] = $v2; + adodb_movenext($this); + } + } + } else { + if ($numIndex) { + while (!$this->EOF) { + // some bug in mssql PHP 4.02 -- doesn't handle references properly so we FORCE creating a new string + $results[trim(($this->fields[0]))] = $this->fields[1]; + $this->MoveNext(); + } + } else { + while (!$this->EOF) { + // some bug in mssql PHP 4.02 -- doesn't handle references properly so we FORCE creating a new string + $v1 = trim(reset($this->fields)); + $v2 = ''.next($this->fields); + $results[$v1] = $v2; + $this->MoveNext(); + } + } + } + } + + $ref =& $results; # workaround accelerator incompat with PHP 4.4 :( + return $ref; + } + + + /** + * + * @param v is the character timestamp in YYYY-MM-DD hh:mm:ss format + * @param fmt is the format to apply to it, using date() + * + * @return a timestamp formated as user desires + */ + function UserTimeStamp($v,$fmt='Y-m-d H:i:s') + { + if (is_numeric($v) && strlen($v)<14) return adodb_date($fmt,$v); + $tt = $this->UnixTimeStamp($v); + // $tt == -1 if pre TIMESTAMP_FIRST_YEAR + if (($tt === false || $tt == -1) && $v != false) return $v; + if ($tt === 0) return $this->emptyTimeStamp; + return adodb_date($fmt,$tt); + } + + + /** + * @param v is the character date in YYYY-MM-DD format, returned by database + * @param fmt is the format to apply to it, using date() + * + * @return a date formated as user desires + */ + function UserDate($v,$fmt='Y-m-d') + { + $tt = $this->UnixDate($v); + // $tt == -1 if pre TIMESTAMP_FIRST_YEAR + if (($tt === false || $tt == -1) && $v != false) return $v; + else if ($tt == 0) return $this->emptyDate; + else if ($tt == -1) { // pre-TIMESTAMP_FIRST_YEAR + } + return adodb_date($fmt,$tt); + } + + + /** + * @param $v is a date string in YYYY-MM-DD format + * + * @return date in unix timestamp format, or 0 if before TIMESTAMP_FIRST_YEAR, or false if invalid date format + */ + function UnixDate($v) + { + return ADOConnection::UnixDate($v); + } + + + /** + * @param $v is a timestamp string in YYYY-MM-DD HH-NN-SS format + * + * @return date in unix timestamp format, or 0 if before TIMESTAMP_FIRST_YEAR, or false if invalid date format + */ + function UnixTimeStamp($v) + { + return ADOConnection::UnixTimeStamp($v); + } + + + /** + * PEAR DB Compat - do not use internally + */ + function Free() + { + return $this->Close(); + } + + + /** + * PEAR DB compat, number of rows + */ + function NumRows() + { + return $this->_numOfRows; + } + + + /** + * PEAR DB compat, number of cols + */ + function NumCols() + { + return $this->_numOfFields; + } + + /** + * Fetch a row, returning false if no more rows. + * This is PEAR DB compat mode. + * + * @return false or array containing the current record + */ + function &FetchRow() + { + if ($this->EOF) { + $false = false; + return $false; + } + $arr = $this->fields; + $this->_currentRow++; + if (!$this->_fetch()) $this->EOF = true; + return $arr; + } + + + /** + * Fetch a row, returning PEAR_Error if no more rows. + * This is PEAR DB compat mode. + * + * @return DB_OK or error object + */ + function FetchInto(&$arr) + { + if ($this->EOF) return (defined('PEAR_ERROR_RETURN')) ? new PEAR_Error('EOF',-1): false; + $arr = $this->fields; + $this->MoveNext(); + return 1; // DB_OK + } + + + /** + * Move to the first row in the recordset. Many databases do NOT support this. + * + * @return true or false + */ + function MoveFirst() + { + if ($this->_currentRow == 0) return true; + return $this->Move(0); + } + + + /** + * Move to the last row in the recordset. + * + * @return true or false + */ + function MoveLast() + { + if ($this->_numOfRows >= 0) return $this->Move($this->_numOfRows-1); + if ($this->EOF) return false; + while (!$this->EOF) { + $f = $this->fields; + $this->MoveNext(); + } + $this->fields = $f; + $this->EOF = false; + return true; + } + + + /** + * Move to next record in the recordset. + * + * @return true if there still rows available, or false if there are no more rows (EOF). + */ + function MoveNext() + { + if (!$this->EOF) { + $this->_currentRow++; + if ($this->_fetch()) return true; + } + $this->EOF = true; + /* -- tested error handling when scrolling cursor -- seems useless. + $conn = $this->connection; + if ($conn && $conn->raiseErrorFn && ($errno = $conn->ErrorNo())) { + $fn = $conn->raiseErrorFn; + $fn($conn->databaseType,'MOVENEXT',$errno,$conn->ErrorMsg().' ('.$this->sql.')',$conn->host,$conn->database); + } + */ + return false; + } + + + /** + * Random access to a specific row in the recordset. Some databases do not support + * access to previous rows in the databases (no scrolling backwards). + * + * @param rowNumber is the row to move to (0-based) + * + * @return true if there still rows available, or false if there are no more rows (EOF). + */ + function Move($rowNumber = 0) + { + $this->EOF = false; + if ($rowNumber == $this->_currentRow) return true; + if ($rowNumber >= $this->_numOfRows) + if ($this->_numOfRows != -1) $rowNumber = $this->_numOfRows-2; + + if ($this->canSeek) { + + if ($this->_seek($rowNumber)) { + $this->_currentRow = $rowNumber; + if ($this->_fetch()) { + return true; + } + } else { + $this->EOF = true; + return false; + } + } else { + if ($rowNumber < $this->_currentRow) return false; + global $ADODB_EXTENSION; + if ($ADODB_EXTENSION) { + while (!$this->EOF && $this->_currentRow < $rowNumber) { + adodb_movenext($this); + } + } else { + + while (! $this->EOF && $this->_currentRow < $rowNumber) { + $this->_currentRow++; + + if (!$this->_fetch()) $this->EOF = true; + } + } + return !($this->EOF); + } + + $this->fields = false; + $this->EOF = true; + return false; + } + + + /** + * Get the value of a field in the current row by column name. + * Will not work if ADODB_FETCH_MODE is set to ADODB_FETCH_NUM. + * + * @param colname is the field to access + * + * @return the value of $colname column + */ + function Fields($colname) + { + return $this->fields[$colname]; + } + + function GetAssocKeys($upper=true) + { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + if ($upper === 2) $this->bind[$o->name] = $i; + else $this->bind[($upper) ? strtoupper($o->name) : strtolower($o->name)] = $i; + } + } + + /** + * Use associative array to get fields array for databases that do not support + * associative arrays. Submitted by Paolo S. Asioli paolo.asioli#libero.it + * + * If you don't want uppercase cols, set $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC + * before you execute your SQL statement, and access $rs->fields['col'] directly. + * + * $upper 0 = lowercase, 1 = uppercase, 2 = whatever is returned by FetchField + */ + function &GetRowAssoc($upper=1) + { + $record = array(); + // if (!$this->fields) return $record; + + if (!$this->bind) { + $this->GetAssocKeys($upper); + } + + foreach($this->bind as $k => $v) { + $record[$k] = $this->fields[$v]; + } + + return $record; + } + + + /** + * Clean up recordset + * + * @return true or false + */ + function Close() + { + // free connection object - this seems to globally free the object + // and not merely the reference, so don't do this... + // $this->connection = false; + if (!$this->_closed) { + $this->_closed = true; + return $this->_close(); + } else + return true; + } + + /** + * synonyms RecordCount and RowCount + * + * @return the number of rows or -1 if this is not supported + */ + function RecordCount() {return $this->_numOfRows;} + + + /* + * If we are using PageExecute(), this will return the maximum possible rows + * that can be returned when paging a recordset. + */ + function MaxRecordCount() + { + return ($this->_maxRecordCount) ? $this->_maxRecordCount : $this->RecordCount(); + } + + /** + * synonyms RecordCount and RowCount + * + * @return the number of rows or -1 if this is not supported + */ + function RowCount() {return $this->_numOfRows;} + + + /** + * Portable RecordCount. Pablo Roca + * + * @return the number of records from a previous SELECT. All databases support this. + * + * But aware possible problems in multiuser environments. For better speed the table + * must be indexed by the condition. Heavy test this before deploying. + */ + function PO_RecordCount($table="", $condition="") { + + $lnumrows = $this->_numOfRows; + // the database doesn't support native recordcount, so we do a workaround + if ($lnumrows == -1 && $this->connection) { + IF ($table) { + if ($condition) $condition = " WHERE " . $condition; + $resultrows = &$this->connection->Execute("SELECT COUNT(*) FROM $table $condition"); + if ($resultrows) $lnumrows = reset($resultrows->fields); + } + } + return $lnumrows; + } + + + /** + * @return the current row in the recordset. If at EOF, will return the last row. 0-based. + */ + function CurrentRow() {return $this->_currentRow;} + + /** + * synonym for CurrentRow -- for ADO compat + * + * @return the current row in the recordset. If at EOF, will return the last row. 0-based. + */ + function AbsolutePosition() {return $this->_currentRow;} + + /** + * @return the number of columns in the recordset. Some databases will set this to 0 + * if no records are returned, others will return the number of columns in the query. + */ + function FieldCount() {return $this->_numOfFields;} + + + /** + * Get the ADOFieldObject of a specific column. + * + * @param fieldoffset is the column position to access(0-based). + * + * @return the ADOFieldObject for that column, or false. + */ + function &FetchField($fieldoffset) + { + // must be defined by child class + } + + /** + * Get the ADOFieldObjects of all columns in an array. + * + */ + function& FieldTypesArray() + { + $arr = array(); + for ($i=0, $max=$this->_numOfFields; $i < $max; $i++) + $arr[] = $this->FetchField($i); + return $arr; + } + + /** + * Return the fields array of the current row as an object for convenience. + * The default case is lowercase field names. + * + * @return the object with the properties set to the fields of the current row + */ + function &FetchObj() + { + $o =& $this->FetchObject(false); + return $o; + } + + /** + * Return the fields array of the current row as an object for convenience. + * The default case is uppercase. + * + * @param $isupper to set the object property names to uppercase + * + * @return the object with the properties set to the fields of the current row + */ + function &FetchObject($isupper=true) + { + if (empty($this->_obj)) { + $this->_obj = new ADOFetchObj(); + $this->_names = array(); + for ($i=0; $i <$this->_numOfFields; $i++) { + $f = $this->FetchField($i); + $this->_names[] = $f->name; + } + } + $i = 0; + if (PHP_VERSION >= 5) $o = clone($this->_obj); + else $o = $this->_obj; + + for ($i=0; $i <$this->_numOfFields; $i++) { + $name = $this->_names[$i]; + if ($isupper) $n = strtoupper($name); + else $n = $name; + + $o->$n = $this->Fields($name); + } + return $o; + } + + /** + * Return the fields array of the current row as an object for convenience. + * The default is lower-case field names. + * + * @return the object with the properties set to the fields of the current row, + * or false if EOF + * + * Fixed bug reported by tim@orotech.net + */ + function &FetchNextObj() + { + $o =& $this->FetchNextObject(false); + return $o; + } + + + /** + * Return the fields array of the current row as an object for convenience. + * The default is upper case field names. + * + * @param $isupper to set the object property names to uppercase + * + * @return the object with the properties set to the fields of the current row, + * or false if EOF + * + * Fixed bug reported by tim@orotech.net + */ + function &FetchNextObject($isupper=true) + { + $o = false; + if ($this->_numOfRows != 0 && !$this->EOF) { + $o = $this->FetchObject($isupper); + $this->_currentRow++; + if ($this->_fetch()) return $o; + } + $this->EOF = true; + return $o; + } + + /** + * Get the metatype of the column. This is used for formatting. This is because + * many databases use different names for the same type, so we transform the original + * type to our standardised version which uses 1 character codes: + * + * @param t is the type passed in. Normally is ADOFieldObject->type. + * @param len is the maximum length of that field. This is because we treat character + * fields bigger than a certain size as a 'B' (blob). + * @param fieldobj is the field object returned by the database driver. Can hold + * additional info (eg. primary_key for mysql). + * + * @return the general type of the data: + * C for character < 250 chars + * X for teXt (>= 250 chars) + * B for Binary + * N for numeric or floating point + * D for date + * T for timestamp + * L for logical/Boolean + * I for integer + * R for autoincrement counter/integer + * + * + */ + function MetaType($t,$len=-1,$fieldobj=false) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + // changed in 2.32 to hashing instead of switch stmt for speed... + static $typeMap = array( + 'VARCHAR' => 'C', + 'VARCHAR2' => 'C', + 'CHAR' => 'C', + 'C' => 'C', + 'STRING' => 'C', + 'NCHAR' => 'C', + 'NVARCHAR' => 'C', + 'VARYING' => 'C', + 'BPCHAR' => 'C', + 'CHARACTER' => 'C', + 'INTERVAL' => 'C', # Postgres + 'MACADDR' => 'C', # postgres + ## + 'LONGCHAR' => 'X', + 'TEXT' => 'X', + 'NTEXT' => 'X', + 'M' => 'X', + 'X' => 'X', + 'CLOB' => 'X', + 'NCLOB' => 'X', + 'LVARCHAR' => 'X', + ## + 'BLOB' => 'B', + 'IMAGE' => 'B', + 'BINARY' => 'B', + 'VARBINARY' => 'B', + 'LONGBINARY' => 'B', + 'B' => 'B', + ## + 'YEAR' => 'D', // mysql + 'DATE' => 'D', + 'D' => 'D', + ## + 'UNIQUEIDENTIFIER' => 'C', # MS SQL Server + ## + 'TIME' => 'T', + 'TIMESTAMP' => 'T', + 'DATETIME' => 'T', + 'TIMESTAMPTZ' => 'T', + 'T' => 'T', + 'TIMESTAMP WITHOUT TIME ZONE' => 'T', // postgresql + ## + 'BOOL' => 'L', + 'BOOLEAN' => 'L', + 'BIT' => 'L', + 'L' => 'L', + ## + 'COUNTER' => 'R', + 'R' => 'R', + 'SERIAL' => 'R', // ifx + 'INT IDENTITY' => 'R', + ## + 'INT' => 'I', + 'INT2' => 'I', + 'INT4' => 'I', + 'INT8' => 'I', + 'INTEGER' => 'I', + 'INTEGER UNSIGNED' => 'I', + 'SHORT' => 'I', + 'TINYINT' => 'I', + 'SMALLINT' => 'I', + 'I' => 'I', + ## + 'LONG' => 'N', // interbase is numeric, oci8 is blob + 'BIGINT' => 'N', // this is bigger than PHP 32-bit integers + 'DECIMAL' => 'N', + 'DEC' => 'N', + 'REAL' => 'N', + 'DOUBLE' => 'N', + 'DOUBLE PRECISION' => 'N', + 'SMALLFLOAT' => 'N', + 'FLOAT' => 'N', + 'NUMBER' => 'N', + 'NUM' => 'N', + 'NUMERIC' => 'N', + 'MONEY' => 'N', + + ## informix 9.2 + 'SQLINT' => 'I', + 'SQLSERIAL' => 'I', + 'SQLSMINT' => 'I', + 'SQLSMFLOAT' => 'N', + 'SQLFLOAT' => 'N', + 'SQLMONEY' => 'N', + 'SQLDECIMAL' => 'N', + 'SQLDATE' => 'D', + 'SQLVCHAR' => 'C', + 'SQLCHAR' => 'C', + 'SQLDTIME' => 'T', + 'SQLINTERVAL' => 'N', + 'SQLBYTES' => 'B', + 'SQLTEXT' => 'X', + ## informix 10 + "SQLINT8" => 'I8', + "SQLSERIAL8" => 'I8', + "SQLNCHAR" => 'C', + "SQLNVCHAR" => 'C', + "SQLLVARCHAR" => 'X', + "SQLBOOL" => 'L' + ); + + $tmap = false; + $t = strtoupper($t); + $tmap = (isset($typeMap[$t])) ? $typeMap[$t] : 'N'; + switch ($tmap) { + case 'C': + + // is the char field is too long, return as text field... + if ($this->blobSize >= 0) { + if ($len > $this->blobSize) return 'X'; + } else if ($len > 250) { + return 'X'; + } + return 'C'; + + case 'I': + if (!empty($fieldobj->primary_key)) return 'R'; + return 'I'; + + case false: + return 'N'; + + case 'B': + if (isset($fieldobj->binary)) + return ($fieldobj->binary) ? 'B' : 'X'; + return 'B'; + + case 'D': + if (!empty($this->connection) && !empty($this->connection->datetime)) return 'T'; + return 'D'; + + default: + if ($t == 'LONG' && $this->dataProvider == 'oci8') return 'B'; + return $tmap; + } + } + + + function _close() {} + + /** + * set/returns the current recordset page when paginating + */ + function AbsolutePage($page=-1) + { + if ($page != -1) $this->_currentPage = $page; + return $this->_currentPage; + } + + /** + * set/returns the status of the atFirstPage flag when paginating + */ + function AtFirstPage($status=false) + { + if ($status != false) $this->_atFirstPage = $status; + return $this->_atFirstPage; + } + + function LastPageNo($page = false) + { + if ($page != false) $this->_lastPageNo = $page; + return $this->_lastPageNo; + } + + /** + * set/returns the status of the atLastPage flag when paginating + */ + function AtLastPage($status=false) + { + if ($status != false) $this->_atLastPage = $status; + return $this->_atLastPage; + } + +} // end class ADORecordSet + + //============================================================================================== + // CLASS ADORecordSet_array + //============================================================================================== + + /** + * This class encapsulates the concept of a recordset created in memory + * as an array. This is useful for the creation of cached recordsets. + * + * Note that the constructor is different from the standard ADORecordSet + */ + + class ADORecordSet_array extends ADORecordSet + { + var $databaseType = 'array'; + + var $_array; // holds the 2-dimensional data array + var $_types; // the array of types of each column (C B I L M) + var $_colnames; // names of each column in array + var $_skiprow1; // skip 1st row because it holds column names + var $_fieldobjects; // holds array of field objects + var $canSeek = true; + var $affectedrows = false; + var $insertid = false; + var $sql = ''; + var $compat = false; + /** + * Constructor + * + */ + function ADORecordSet_array($fakeid=1) + { + global $ADODB_FETCH_MODE,$ADODB_COMPAT_FETCH; + + // fetch() on EOF does not delete $this->fields + $this->compat = !empty($ADODB_COMPAT_FETCH); + $this->ADORecordSet($fakeid); // fake queryID + $this->fetchMode = $ADODB_FETCH_MODE; + } + + function _transpose() + { + global $ADODB_INCLUDED_LIB; + + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + $hdr = true; + + adodb_transpose($this->_array, $newarr, $hdr); + //adodb_pr($newarr); + + $this->_skiprow1 = false; + $this->_array =& $newarr; + $this->_colnames = $hdr; + + adodb_probetypes($newarr,$this->_types); + + $this->_fieldobjects = array(); + + foreach($hdr as $k => $name) { + $f = new ADOFieldObject(); + $f->name = $name; + $f->type = $this->_types[$k]; + $f->max_length = -1; + $this->_fieldobjects[] = $f; + + } + $this->fields = reset($this->_array); + + $this->_initrs(); + + } + + /** + * Setup the array. + * + * @param array is a 2-dimensional array holding the data. + * The first row should hold the column names + * unless paramter $colnames is used. + * @param typearr holds an array of types. These are the same types + * used in MetaTypes (C,B,L,I,N). + * @param [colnames] array of column names. If set, then the first row of + * $array should not hold the column names. + */ + function InitArray($array,$typearr,$colnames=false) + { + $this->_array = $array; + $this->_types = $typearr; + if ($colnames) { + $this->_skiprow1 = false; + $this->_colnames = $colnames; + } else { + $this->_skiprow1 = true; + $this->_colnames = $array[0]; + } + $this->Init(); + } + /** + * Setup the Array and datatype file objects + * + * @param array is a 2-dimensional array holding the data. + * The first row should hold the column names + * unless paramter $colnames is used. + * @param fieldarr holds an array of ADOFieldObject's. + */ + function InitArrayFields(&$array,&$fieldarr) + { + $this->_array =& $array; + $this->_skiprow1= false; + if ($fieldarr) { + $this->_fieldobjects =& $fieldarr; + } + $this->Init(); + } + + function &GetArray($nRows=-1) + { + if ($nRows == -1 && $this->_currentRow <= 0 && !$this->_skiprow1) { + return $this->_array; + } else { + $arr =& ADORecordSet::GetArray($nRows); + return $arr; + } + } + + function _initrs() + { + $this->_numOfRows = sizeof($this->_array); + if ($this->_skiprow1) $this->_numOfRows -= 1; + + $this->_numOfFields =(isset($this->_fieldobjects)) ? + sizeof($this->_fieldobjects):sizeof($this->_types); + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + $mode = isset($this->adodbFetchMode) ? $this->adodbFetchMode : $this->fetchMode; + + if ($mode & ADODB_FETCH_ASSOC) { + if (!isset($this->fields[$colname])) $colname = strtolower($colname); + return $this->fields[$colname]; + } + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + function &FetchField($fieldOffset = -1) + { + if (isset($this->_fieldobjects)) { + return $this->_fieldobjects[$fieldOffset]; + } + $o = new ADOFieldObject(); + $o->name = $this->_colnames[$fieldOffset]; + $o->type = $this->_types[$fieldOffset]; + $o->max_length = -1; // length not known + + return $o; + } + + function _seek($row) + { + if (sizeof($this->_array) && 0 <= $row && $row < $this->_numOfRows) { + $this->_currentRow = $row; + if ($this->_skiprow1) $row += 1; + $this->fields = $this->_array[$row]; + return true; + } + return false; + } + + function MoveNext() + { + if (!$this->EOF) { + $this->_currentRow++; + + $pos = $this->_currentRow; + + if ($this->_numOfRows <= $pos) { + if (!$this->compat) $this->fields = false; + } else { + if ($this->_skiprow1) $pos += 1; + $this->fields = $this->_array[$pos]; + return true; + } + $this->EOF = true; + } + + return false; + } + + function _fetch() + { + $pos = $this->_currentRow; + + if ($this->_numOfRows <= $pos) { + if (!$this->compat) $this->fields = false; + return false; + } + if ($this->_skiprow1) $pos += 1; + $this->fields = $this->_array[$pos]; + return true; + } + + function _close() + { + return true; + } + + } // ADORecordSet_array + + //============================================================================================== + // HELPER FUNCTIONS + //============================================================================================== + + /** + * Synonym for ADOLoadCode. Private function. Do not use. + * + * @deprecated + */ + function ADOLoadDB($dbType) + { + return ADOLoadCode($dbType); + } + + /** + * Load the code for a specific database driver. Private function. Do not use. + */ + function ADOLoadCode($dbType) + { + global $ADODB_LASTDB; + + if (!$dbType) return false; + $db = strtolower($dbType); + switch ($db) { + case 'ado': + if (PHP_VERSION >= 5) $db = 'ado5'; + $class = 'ado'; + break; + case 'ifx': + case 'maxsql': $class = $db = 'mysqlt'; break; + case 'postgres': + case 'postgres8': + case 'pgsql': $class = $db = 'postgres7'; break; + default: + $class = $db; break; + } + + $file = ADODB_DIR."/drivers/adodb-".$db.".inc.php"; + @include_once($file); + $ADODB_LASTDB = $class; + if (class_exists("ADODB_" . $class)) return $class; + + //ADOConnection::outp(adodb_pr(get_declared_classes(),true)); + if (!file_exists($file)) ADOConnection::outp("Missing file: $file"); + else ADOConnection::outp("Syntax error in file: $file"); + return false; + } + + /** + * synonym for ADONewConnection for people like me who cannot remember the correct name + */ + function &NewADOConnection($db='') + { + $tmp =& ADONewConnection($db); + return $tmp; + } + + /** + * Instantiate a new Connection class for a specific database driver. + * + * @param [db] is the database Connection object to create. If undefined, + * use the last database driver that was loaded by ADOLoadCode(). + * + * @return the freshly created instance of the Connection class. + */ + function &ADONewConnection($db='') + { + GLOBAL $ADODB_NEWCONNECTION, $ADODB_LASTDB; + + if (!defined('ADODB_ASSOC_CASE')) define('ADODB_ASSOC_CASE',2); + $errorfn = (defined('ADODB_ERROR_HANDLER')) ? ADODB_ERROR_HANDLER : false; + $false = false; + if ($at = strpos($db,'://')) { + $origdsn = $db; + if (PHP_VERSION < 5) $dsna = @parse_url($db); + else { + $fakedsn = 'fake'.substr($db,$at); + $dsna = @parse_url($fakedsn); + $dsna['scheme'] = substr($db,0,$at); + + if (strncmp($db,'pdo',3) == 0) { + $sch = explode('_',$dsna['scheme']); + if (sizeof($sch)>1) { + $dsna['host'] = isset($dsna['host']) ? rawurldecode($dsna['host']) : ''; + $dsna['host'] = rawurlencode($sch[1].':host='.rawurldecode($dsna['host'])); + $dsna['scheme'] = 'pdo'; + } + } + } + + if (!$dsna) { + // special handling of oracle, which might not have host + $db = str_replace('@/','@adodb-fakehost/',$db); + $dsna = parse_url($db); + if (!$dsna) return $false; + $dsna['host'] = ''; + } + $db = @$dsna['scheme']; + if (!$db) return $false; + $dsna['host'] = isset($dsna['host']) ? rawurldecode($dsna['host']) : ''; + $dsna['user'] = isset($dsna['user']) ? rawurldecode($dsna['user']) : ''; + $dsna['pass'] = isset($dsna['pass']) ? rawurldecode($dsna['pass']) : ''; + $dsna['path'] = isset($dsna['path']) ? rawurldecode(substr($dsna['path'],1)) : ''; # strip off initial / + + if (isset($dsna['query'])) { + $opt1 = explode('&',$dsna['query']); + foreach($opt1 as $k => $v) { + $arr = explode('=',$v); + $opt[$arr[0]] = isset($arr[1]) ? rawurldecode($arr[1]) : 1; + } + } else $opt = array(); + } + /* + * phptype: Database backend used in PHP (mysql, odbc etc.) + * dbsyntax: Database used with regards to SQL syntax etc. + * protocol: Communication protocol to use (tcp, unix etc.) + * hostspec: Host specification (hostname[:port]) + * database: Database to use on the DBMS server + * username: User name for login + * password: Password for login + */ + if (!empty($ADODB_NEWCONNECTION)) { + $obj = $ADODB_NEWCONNECTION($db); + + } else { + + if (!isset($ADODB_LASTDB)) $ADODB_LASTDB = ''; + if (empty($db)) $db = $ADODB_LASTDB; + + if ($db != $ADODB_LASTDB) $db = ADOLoadCode($db); + + if (!$db) { + if (isset($origdsn)) $db = $origdsn; + if ($errorfn) { + // raise an error + $ignore = false; + $errorfn('ADONewConnection', 'ADONewConnection', -998, + "could not load the database driver for '$db'", + $db,false,$ignore); + } else + ADOConnection::outp( "

ADONewConnection: Unable to load database driver '$db'

",false); + + return $false; + } + + $cls = 'ADODB_'.$db; + if (!class_exists($cls)) { + adodb_backtrace(); + return $false; + } + + $obj = new $cls(); + } + + # constructor should not fail + if ($obj) { + if ($errorfn) $obj->raiseErrorFn = $errorfn; + if (isset($dsna)) { + if (isset($dsna['port'])) $obj->port = $dsna['port']; + foreach($opt as $k => $v) { + switch(strtolower($k)) { + case 'new': + $nconnect = true; $persist = true; break; + case 'persist': + case 'persistent': $persist = $v; break; + case 'debug': $obj->debug = (integer) $v; break; + #ibase + case 'role': $obj->role = $v; break; + case 'dialect': $obj->dialect = (integer) $v; break; + case 'charset': $obj->charset = $v; $obj->charSet=$v; break; + case 'buffers': $obj->buffers = $v; break; + case 'fetchmode': $obj->SetFetchMode($v); break; + #ado + case 'charpage': $obj->charPage = $v; break; + #mysql, mysqli + case 'clientflags': $obj->clientFlags = $v; break; + #mysql, mysqli, postgres + case 'port': $obj->port = $v; break; + #mysqli + case 'socket': $obj->socket = $v; break; + #oci8 + case 'nls_date_format': $obj->NLS_DATE_FORMAT = $v; break; + } + } + if (empty($persist)) + $ok = $obj->Connect($dsna['host'], $dsna['user'], $dsna['pass'], $dsna['path']); + else if (empty($nconnect)) + $ok = $obj->PConnect($dsna['host'], $dsna['user'], $dsna['pass'], $dsna['path']); + else + $ok = $obj->NConnect($dsna['host'], $dsna['user'], $dsna['pass'], $dsna['path']); + + if (!$ok) return $false; + } + } + return $obj; + } + + + + // $perf == true means called by NewPerfMonitor(), otherwise for data dictionary + function _adodb_getdriver($provider,$drivername,$perf=false) + { + switch ($provider) { + case 'odbtp': if (strncmp('odbtp_',$drivername,6)==0) return substr($drivername,6); + case 'odbc' : if (strncmp('odbc_',$drivername,5)==0) return substr($drivername,5); + case 'ado' : if (strncmp('ado_',$drivername,4)==0) return substr($drivername,4); + case 'native': break; + default: + return $provider; + } + + switch($drivername) { + case 'mysqlt': + case 'mysqli': + $drivername='mysql'; + break; + case 'postgres7': + case 'postgres8': + $drivername = 'postgres'; + break; + case 'firebird15': $drivername = 'firebird'; break; + case 'oracle': $drivername = 'oci8'; break; + case 'access': if ($perf) $drivername = ''; break; + case 'db2' : break; + case 'sapdb' : break; + default: + $drivername = 'generic'; + break; + } + return $drivername; + } + + function &NewPerfMonitor(&$conn) + { + $false = false; + $drivername = _adodb_getdriver($conn->dataProvider,$conn->databaseType,true); + if (!$drivername || $drivername == 'generic') return $false; + include_once(ADODB_DIR.'/adodb-perf.inc.php'); + @include_once(ADODB_DIR."/perf/perf-$drivername.inc.php"); + $class = "Perf_$drivername"; + if (!class_exists($class)) return $false; + $perf = new $class($conn); + + return $perf; + } + + function &NewDataDictionary(&$conn,$drivername=false) + { + $false = false; + if (!$drivername) $drivername = _adodb_getdriver($conn->dataProvider,$conn->databaseType); + + include_once(ADODB_DIR.'/adodb-lib.inc.php'); + include_once(ADODB_DIR.'/adodb-datadict.inc.php'); + $path = ADODB_DIR."/datadict/datadict-$drivername.inc.php"; + + if (!file_exists($path)) { + ADOConnection::outp("Dictionary driver '$path' not available"); + return $false; + } + include_once($path); + $class = "ADODB2_$drivername"; + $dict = new $class(); + $dict->dataProvider = $conn->dataProvider; + $dict->connection = &$conn; + $dict->upperName = strtoupper($drivername); + $dict->quote = $conn->nameQuote; + if (!empty($conn->_connectionID)) + $dict->serverInfo = $conn->ServerInfo(); + + return $dict; + } + + + + /* + Perform a print_r, with pre tags for better formatting. + */ + function adodb_pr($var,$as_string=false) + { + if ($as_string) ob_start(); + + if (isset($_SERVER['HTTP_USER_AGENT'])) { + echo "
\n";print_r($var);echo "
\n"; + } else + print_r($var); + + if ($as_string) { + $s = ob_get_contents(); + ob_end_clean(); + return $s; + } + } + + /* + Perform a stack-crawl and pretty print it. + + @param printOrArr Pass in a boolean to indicate print, or an $exception->trace array (assumes that print is true then). + @param levels Number of levels to display + */ + function adodb_backtrace($printOrArr=true,$levels=9999) + { + global $ADODB_INCLUDED_LIB; + if (empty($ADODB_INCLUDED_LIB)) include(ADODB_DIR.'/adodb-lib.inc.php'); + return _adodb_backtrace($printOrArr,$levels); + } + + +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-ado.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-ado.inc.php new file mode 100644 index 0000000..813bd50 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-ado.inc.php @@ -0,0 +1,634 @@ +_affectedRows = new VARIANT; + } + + function ServerInfo() + { + if (!empty($this->_connectionID)) $desc = $this->_connectionID->provider; + return array('description' => $desc, 'version' => ''); + } + + function _affectedrows() + { + if (PHP_VERSION >= 5) return $this->_affectedRows; + + return $this->_affectedRows->value; + } + + // you can also pass a connection string like this: + // + // $DB->Connect('USER ID=sa;PASSWORD=pwd;SERVER=mangrove;DATABASE=ai',false,false,'SQLOLEDB'); + function _connect($argHostname, $argUsername, $argPassword, $argProvider= 'MSDASQL') + { + $u = 'UID'; + $p = 'PWD'; + + if (!empty($this->charPage)) + $dbc = new COM('ADODB.Connection',null,$this->charPage); + else + $dbc = new COM('ADODB.Connection'); + + if (! $dbc) return false; + + /* special support if provider is mssql or access */ + if ($argProvider=='mssql') { + $u = 'User Id'; //User parameter name for OLEDB + $p = 'Password'; + $argProvider = "SQLOLEDB"; // SQL Server Provider + + // not yet + //if ($argDatabasename) $argHostname .= ";Initial Catalog=$argDatabasename"; + + //use trusted conection for SQL if username not specified + if (!$argUsername) $argHostname .= ";Trusted_Connection=Yes"; + } else if ($argProvider=='access') + $argProvider = "Microsoft.Jet.OLEDB.4.0"; // Microsoft Jet Provider + + if ($argProvider) $dbc->Provider = $argProvider; + + if ($argUsername) $argHostname .= ";$u=$argUsername"; + if ($argPassword)$argHostname .= ";$p=$argPassword"; + + if ($this->debug) ADOConnection::outp( "Host=".$argHostname."
\n version=$dbc->version"); + // @ added below for php 4.0.1 and earlier + @$dbc->Open((string) $argHostname); + + $this->_connectionID = $dbc; + + $dbc->CursorLocation = $this->_cursor_location; + return $dbc->State > 0; + } + + // returns true or false + function _pconnect($argHostname, $argUsername, $argPassword, $argProvider='MSDASQL') + { + return $this->_connect($argHostname,$argUsername,$argPassword,$argProvider); + } + +/* + adSchemaCatalogs = 1, + adSchemaCharacterSets = 2, + adSchemaCollations = 3, + adSchemaColumns = 4, + adSchemaCheckConstraints = 5, + adSchemaConstraintColumnUsage = 6, + adSchemaConstraintTableUsage = 7, + adSchemaKeyColumnUsage = 8, + adSchemaReferentialContraints = 9, + adSchemaTableConstraints = 10, + adSchemaColumnsDomainUsage = 11, + adSchemaIndexes = 12, + adSchemaColumnPrivileges = 13, + adSchemaTablePrivileges = 14, + adSchemaUsagePrivileges = 15, + adSchemaProcedures = 16, + adSchemaSchemata = 17, + adSchemaSQLLanguages = 18, + adSchemaStatistics = 19, + adSchemaTables = 20, + adSchemaTranslations = 21, + adSchemaProviderTypes = 22, + adSchemaViews = 23, + adSchemaViewColumnUsage = 24, + adSchemaViewTableUsage = 25, + adSchemaProcedureParameters = 26, + adSchemaForeignKeys = 27, + adSchemaPrimaryKeys = 28, + adSchemaProcedureColumns = 29, + adSchemaDBInfoKeywords = 30, + adSchemaDBInfoLiterals = 31, + adSchemaCubes = 32, + adSchemaDimensions = 33, + adSchemaHierarchies = 34, + adSchemaLevels = 35, + adSchemaMeasures = 36, + adSchemaProperties = 37, + adSchemaMembers = 38 + +*/ + + function &MetaTables() + { + $arr= array(); + $dbc = $this->_connectionID; + + $adors=@$dbc->OpenSchema(20);//tables + if ($adors){ + $f = $adors->Fields(2);//table/view name + $t = $adors->Fields(3);//table type + while (!$adors->EOF){ + $tt=substr($t->value,0,6); + if ($tt!='SYSTEM' && $tt !='ACCESS') + $arr[]=$f->value; + //print $f->value . ' ' . $t->value.'
'; + $adors->MoveNext(); + } + $adors->Close(); + } + + return $arr; + } + + function &MetaColumns($table) + { + $table = strtoupper($table); + $arr = array(); + $dbc = $this->_connectionID; + + $adors=@$dbc->OpenSchema(4);//tables + + if ($adors){ + $t = $adors->Fields(2);//table/view name + while (!$adors->EOF){ + + + if (strtoupper($t->Value) == $table) { + + $fld = new ADOFieldObject(); + $c = $adors->Fields(3); + $fld->name = $c->Value; + $fld->type = 'CHAR'; // cannot discover type in ADO! + $fld->max_length = -1; + $arr[strtoupper($fld->name)]=$fld; + } + + $adors->MoveNext(); + } + $adors->Close(); + } + $false = false; + return empty($arr) ? $false : $arr; + } + + + + + /* returns queryID or false */ + function &_query($sql,$inputarr=false) + { + + $dbc = $this->_connectionID; + $false = false; + + // return rs + if ($inputarr) { + + if (!empty($this->charPage)) + $oCmd = new COM('ADODB.Command',null,$this->charPage); + else + $oCmd = new COM('ADODB.Command'); + $oCmd->ActiveConnection = $dbc; + $oCmd->CommandText = $sql; + $oCmd->CommandType = 1; + + foreach($inputarr as $val) { + // name, type, direction 1 = input, len, + $this->adoParameterType = 130; + $p = $oCmd->CreateParameter('name',$this->adoParameterType,1,strlen($val),$val); + //print $p->Type.' '.$p->value; + $oCmd->Parameters->Append($p); + } + $p = false; + $rs = $oCmd->Execute(); + $e = $dbc->Errors; + if ($dbc->Errors->Count > 0) return $false; + return $rs; + } + + $rs = @$dbc->Execute($sql,$this->_affectedRows, $this->_execute_option); + + if ($dbc->Errors->Count > 0) return $false; + if (! $rs) return $false; + + if ($rs->State == 0) { + $true = true; + return $true; // 0 = adStateClosed means no records returned + } + return $rs; + } + + + function BeginTrans() + { + if ($this->transOff) return true; + + if (isset($this->_thisTransactions)) + if (!$this->_thisTransactions) return false; + else { + $o = $this->_connectionID->Properties("Transaction DDL"); + $this->_thisTransactions = $o ? true : false; + if (!$o) return false; + } + @$this->_connectionID->BeginTrans(); + $this->transCnt += 1; + return true; + } + + function CommitTrans($ok=true) + { + if (!$ok) return $this->RollbackTrans(); + if ($this->transOff) return true; + + @$this->_connectionID->CommitTrans(); + if ($this->transCnt) @$this->transCnt -= 1; + return true; + } + function RollbackTrans() { + if ($this->transOff) return true; + @$this->_connectionID->RollbackTrans(); + if ($this->transCnt) @$this->transCnt -= 1; + return true; + } + + /* Returns: the last error message from previous database operation */ + + function ErrorMsg() + { + if (!$this->_connectionID) return "No connection established"; + $errc = $this->_connectionID->Errors; + if (!$errc) return "No Errors object found"; + if ($errc->Count == 0) return ''; + $err = $errc->Item($errc->Count-1); + return $err->Description; + } + + function ErrorNo() + { + $errc = $this->_connectionID->Errors; + if ($errc->Count == 0) return 0; + $err = $errc->Item($errc->Count-1); + return $err->NativeError; + } + + // returns true or false + function _close() + { + if ($this->_connectionID) $this->_connectionID->Close(); + $this->_connectionID = false; + return true; + } + + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordSet_ado extends ADORecordSet { + + var $bind = false; + var $databaseType = "ado"; + var $dataProvider = "ado"; + var $_tarr = false; // caches the types + var $_flds; // and field objects + var $canSeek = true; + var $hideErrors = true; + + function ADORecordSet_ado($id,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + $this->fetchMode = $mode; + return $this->ADORecordSet($id,$mode); + } + + + // returns the field object + function &FetchField($fieldOffset = -1) { + $off=$fieldOffset+1; // offsets begin at 1 + + $o= new ADOFieldObject(); + $rs = $this->_queryID; + $f = $rs->Fields($fieldOffset); + $o->name = $f->Name; + $t = $f->Type; + $o->type = $this->MetaType($t); + $o->max_length = $f->DefinedSize; + $o->ado_type = $t; + + //print "off=$off name=$o->name type=$o->type len=$o->max_length
"; + return $o; + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + if ($this->fetchMode & ADODB_FETCH_ASSOC) return $this->fields[$colname]; + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + + function _initrs() + { + $rs = $this->_queryID; + $this->_numOfRows = $rs->RecordCount; + + $f = $rs->Fields; + $this->_numOfFields = $f->Count; + } + + + // should only be used to move forward as we normally use forward-only cursors + function _seek($row) + { + $rs = $this->_queryID; + // absoluteposition doesn't work -- my maths is wrong ? + // $rs->AbsolutePosition->$row-2; + // return true; + if ($this->_currentRow > $row) return false; + @$rs->Move((integer)$row - $this->_currentRow-1); //adBookmarkFirst + return true; + } + +/* + OLEDB types + + enum DBTYPEENUM + { DBTYPE_EMPTY = 0, + DBTYPE_NULL = 1, + DBTYPE_I2 = 2, + DBTYPE_I4 = 3, + DBTYPE_R4 = 4, + DBTYPE_R8 = 5, + DBTYPE_CY = 6, + DBTYPE_DATE = 7, + DBTYPE_BSTR = 8, + DBTYPE_IDISPATCH = 9, + DBTYPE_ERROR = 10, + DBTYPE_BOOL = 11, + DBTYPE_VARIANT = 12, + DBTYPE_IUNKNOWN = 13, + DBTYPE_DECIMAL = 14, + DBTYPE_UI1 = 17, + DBTYPE_ARRAY = 0x2000, + DBTYPE_BYREF = 0x4000, + DBTYPE_I1 = 16, + DBTYPE_UI2 = 18, + DBTYPE_UI4 = 19, + DBTYPE_I8 = 20, + DBTYPE_UI8 = 21, + DBTYPE_GUID = 72, + DBTYPE_VECTOR = 0x1000, + DBTYPE_RESERVED = 0x8000, + DBTYPE_BYTES = 128, + DBTYPE_STR = 129, + DBTYPE_WSTR = 130, + DBTYPE_NUMERIC = 131, + DBTYPE_UDT = 132, + DBTYPE_DBDATE = 133, + DBTYPE_DBTIME = 134, + DBTYPE_DBTIMESTAMP = 135 + + ADO Types + + adEmpty = 0, + adTinyInt = 16, + adSmallInt = 2, + adInteger = 3, + adBigInt = 20, + adUnsignedTinyInt = 17, + adUnsignedSmallInt = 18, + adUnsignedInt = 19, + adUnsignedBigInt = 21, + adSingle = 4, + adDouble = 5, + adCurrency = 6, + adDecimal = 14, + adNumeric = 131, + adBoolean = 11, + adError = 10, + adUserDefined = 132, + adVariant = 12, + adIDispatch = 9, + adIUnknown = 13, + adGUID = 72, + adDate = 7, + adDBDate = 133, + adDBTime = 134, + adDBTimeStamp = 135, + adBSTR = 8, + adChar = 129, + adVarChar = 200, + adLongVarChar = 201, + adWChar = 130, + adVarWChar = 202, + adLongVarWChar = 203, + adBinary = 128, + adVarBinary = 204, + adLongVarBinary = 205, + adChapter = 136, + adFileTime = 64, + adDBFileTime = 137, + adPropVariant = 138, + adVarNumeric = 139 +*/ + function MetaType($t,$len=-1,$fieldobj=false) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + + if (!is_numeric($t)) return $t; + + switch ($t) { + case 0: + case 12: // variant + case 8: // bstr + case 129: //char + case 130: //wc + case 200: // varc + case 202:// varWC + case 128: // bin + case 204: // varBin + case 72: // guid + if ($len <= $this->blobSize) return 'C'; + + case 201: + case 203: + return 'X'; + case 128: + case 204: + case 205: + return 'B'; + case 7: + case 133: return 'D'; + + case 134: + case 135: return 'T'; + + case 11: return 'L'; + + case 16:// adTinyInt = 16, + case 2://adSmallInt = 2, + case 3://adInteger = 3, + case 4://adBigInt = 20, + case 17://adUnsignedTinyInt = 17, + case 18://adUnsignedSmallInt = 18, + case 19://adUnsignedInt = 19, + case 20://adUnsignedBigInt = 21, + return 'I'; + default: return 'N'; + } + } + + // time stamp not supported yet + function _fetch() + { + $rs = $this->_queryID; + if (!$rs or $rs->EOF) { + $this->fields = false; + return false; + } + $this->fields = array(); + + if (!$this->_tarr) { + $tarr = array(); + $flds = array(); + for ($i=0,$max = $this->_numOfFields; $i < $max; $i++) { + $f = $rs->Fields($i); + $flds[] = $f; + $tarr[] = $f->Type; + } + // bind types and flds only once + $this->_tarr = $tarr; + $this->_flds = $flds; + } + $t = reset($this->_tarr); + $f = reset($this->_flds); + + if ($this->hideErrors) $olde = error_reporting(E_ERROR|E_CORE_ERROR);// sometimes $f->value be null + for ($i=0,$max = $this->_numOfFields; $i < $max; $i++) { + //echo "

",$t,' ';var_dump($f->value); echo '

'; + switch($t) { + case 135: // timestamp + if (!strlen((string)$f->value)) $this->fields[] = false; + else { + if (!is_numeric($f->value)) # $val = variant_date_to_timestamp($f->value); + // VT_DATE stores dates as (float) fractional days since 1899/12/30 00:00:00 + $val=(float) variant_cast($f->value,VT_R8)*3600*24-2209161600; + else + $val = $f->value; + $this->fields[] = adodb_date('Y-m-d H:i:s',$val); + } + break; + case 133:// A date value (yyyymmdd) + if ($val = $f->value) { + $this->fields[] = substr($val,0,4).'-'.substr($val,4,2).'-'.substr($val,6,2); + } else + $this->fields[] = false; + break; + case 7: // adDate + if (!strlen((string)$f->value)) $this->fields[] = false; + else { + if (!is_numeric($f->value)) $val = variant_date_to_timestamp($f->value); + else $val = $f->value; + + if (($val % 86400) == 0) $this->fields[] = adodb_date('Y-m-d',$val); + else $this->fields[] = adodb_date('Y-m-d H:i:s',$val); + } + break; + case 1: // null + $this->fields[] = false; + break; + case 6: // currency is not supported properly; + ADOConnection::outp( ''.$f->Name.': currency type not supported by PHP'); + $this->fields[] = (float) $f->value; + break; + default: + $this->fields[] = $f->value; + break; + } + //print " $f->value $t, "; + $f = next($this->_flds); + $t = next($this->_tarr); + } // for + if ($this->hideErrors) error_reporting($olde); + @$rs->MoveNext(); // @ needed for some versions of PHP! + + if ($this->fetchMode & ADODB_FETCH_ASSOC) { + $this->fields = &$this->GetRowAssoc(ADODB_ASSOC_CASE); + } + return true; + } + + function NextRecordSet() + { + $rs = $this->_queryID; + $this->_queryID = $rs->NextRecordSet(); + //$this->_queryID = $this->_QueryId->NextRecordSet(); + if ($this->_queryID == null) return false; + + $this->_currentRow = -1; + $this->_currentPage = -1; + $this->bind = false; + $this->fields = false; + $this->_flds = false; + $this->_tarr = false; + + $this->_inited = false; + $this->Init(); + return true; + } + + function _close() { + $this->_flds = false; + @$this->_queryID->Close();// by Pete Dishman (peterd@telephonetics.co.uk) + $this->_queryID = false; + } + +} + +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-ado5.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-ado5.inc.php new file mode 100644 index 0000000..09c0e57 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-ado5.inc.php @@ -0,0 +1,668 @@ +_affectedRows = new VARIANT; + } + + function ServerInfo() + { + if (!empty($this->_connectionID)) $desc = $this->_connectionID->provider; + return array('description' => $desc, 'version' => ''); + } + + function _affectedrows() + { + if (PHP_VERSION >= 5) return $this->_affectedRows; + + return $this->_affectedRows->value; + } + + // you can also pass a connection string like this: + // + // $DB->Connect('USER ID=sa;PASSWORD=pwd;SERVER=mangrove;DATABASE=ai',false,false,'SQLOLEDB'); + function _connect($argHostname, $argUsername, $argPassword,$argDBorProvider, $argProvider= '') + { + // two modes + // - if $argProvider is empty, we assume that $argDBorProvider holds provider -- this is for backward compat + // - if $argProvider is not empty, then $argDBorProvider holds db + + + if ($argProvider) { + $argDatabasename = $argDBorProvider; + } else { + $argDatabasename = ''; + if ($argDBorProvider) $argProvider = $argDBorProvider; + else $argProvider = 'MSDASQL'; + } + + + try { + $u = 'UID'; + $p = 'PWD'; + + if (!empty($this->charPage)) + $dbc = new COM('ADODB.Connection',null,$this->charPage); + else + $dbc = new COM('ADODB.Connection'); + + if (! $dbc) return false; + + /* special support if provider is mssql or access */ + if ($argProvider=='mssql') { + $u = 'User Id'; //User parameter name for OLEDB + $p = 'Password'; + $argProvider = "SQLOLEDB"; // SQL Server Provider + + // not yet + //if ($argDatabasename) $argHostname .= ";Initial Catalog=$argDatabasename"; + + //use trusted conection for SQL if username not specified + if (!$argUsername) $argHostname .= ";Trusted_Connection=Yes"; + } else if ($argProvider=='access') + $argProvider = "Microsoft.Jet.OLEDB.4.0"; // Microsoft Jet Provider + + if ($argProvider) $dbc->Provider = $argProvider; + + if ($argProvider) $argHostname = "PROVIDER=$argProvider;DRIVER={SQL Server};SERVER=$argHostname"; + + + if ($argDatabasename) $argHostname .= ";DATABASE=$argDatabasename"; + if ($argUsername) $argHostname .= ";$u=$argUsername"; + if ($argPassword)$argHostname .= ";$p=$argPassword"; + + if ($this->debug) ADOConnection::outp( "Host=".$argHostname."
\n version=$dbc->version"); + // @ added below for php 4.0.1 and earlier + @$dbc->Open((string) $argHostname); + + $this->_connectionID = $dbc; + + $dbc->CursorLocation = $this->_cursor_location; + return $dbc->State > 0; + } catch (exception $e) { + } + + return false; + } + + // returns true or false + function _pconnect($argHostname, $argUsername, $argPassword, $argProvider='MSDASQL') + { + return $this->_connect($argHostname,$argUsername,$argPassword,$argProvider); + } + +/* + adSchemaCatalogs = 1, + adSchemaCharacterSets = 2, + adSchemaCollations = 3, + adSchemaColumns = 4, + adSchemaCheckConstraints = 5, + adSchemaConstraintColumnUsage = 6, + adSchemaConstraintTableUsage = 7, + adSchemaKeyColumnUsage = 8, + adSchemaReferentialContraints = 9, + adSchemaTableConstraints = 10, + adSchemaColumnsDomainUsage = 11, + adSchemaIndexes = 12, + adSchemaColumnPrivileges = 13, + adSchemaTablePrivileges = 14, + adSchemaUsagePrivileges = 15, + adSchemaProcedures = 16, + adSchemaSchemata = 17, + adSchemaSQLLanguages = 18, + adSchemaStatistics = 19, + adSchemaTables = 20, + adSchemaTranslations = 21, + adSchemaProviderTypes = 22, + adSchemaViews = 23, + adSchemaViewColumnUsage = 24, + adSchemaViewTableUsage = 25, + adSchemaProcedureParameters = 26, + adSchemaForeignKeys = 27, + adSchemaPrimaryKeys = 28, + adSchemaProcedureColumns = 29, + adSchemaDBInfoKeywords = 30, + adSchemaDBInfoLiterals = 31, + adSchemaCubes = 32, + adSchemaDimensions = 33, + adSchemaHierarchies = 34, + adSchemaLevels = 35, + adSchemaMeasures = 36, + adSchemaProperties = 37, + adSchemaMembers = 38 + +*/ + + function &MetaTables() + { + $arr= array(); + $dbc = $this->_connectionID; + + $adors=@$dbc->OpenSchema(20);//tables + if ($adors){ + $f = $adors->Fields(2);//table/view name + $t = $adors->Fields(3);//table type + while (!$adors->EOF){ + $tt=substr($t->value,0,6); + if ($tt!='SYSTEM' && $tt !='ACCESS') + $arr[]=$f->value; + //print $f->value . ' ' . $t->value.'
'; + $adors->MoveNext(); + } + $adors->Close(); + } + + return $arr; + } + + function &MetaColumns($table) + { + $table = strtoupper($table); + $arr= array(); + $dbc = $this->_connectionID; + + $adors=@$dbc->OpenSchema(4);//tables + + if ($adors){ + $t = $adors->Fields(2);//table/view name + while (!$adors->EOF){ + + + if (strtoupper($t->Value) == $table) { + + $fld = new ADOFieldObject(); + $c = $adors->Fields(3); + $fld->name = $c->Value; + $fld->type = 'CHAR'; // cannot discover type in ADO! + $fld->max_length = -1; + $arr[strtoupper($fld->name)]=$fld; + } + + $adors->MoveNext(); + } + $adors->Close(); + } + + return $arr; + } + + /* returns queryID or false */ + function &_query($sql,$inputarr=false) + { + try { // In PHP5, all COM errors are exceptions, so to maintain old behaviour... + + $dbc = $this->_connectionID; + + // return rs + + $false = false; + + if ($inputarr) { + + if (!empty($this->charPage)) + $oCmd = new COM('ADODB.Command',null,$this->charPage); + else + $oCmd = new COM('ADODB.Command'); + $oCmd->ActiveConnection = $dbc; + $oCmd->CommandText = $sql; + $oCmd->CommandType = 1; + + foreach($inputarr as $val) { + // name, type, direction 1 = input, len, + $this->adoParameterType = 130; + $p = $oCmd->CreateParameter('name',$this->adoParameterType,1,strlen($val),$val); + //print $p->Type.' '.$p->value; + $oCmd->Parameters->Append($p); + } + $p = false; + $rs = $oCmd->Execute(); + $e = $dbc->Errors; + if ($dbc->Errors->Count > 0) return $false; + return $rs; + } + + $rs = @$dbc->Execute($sql,$this->_affectedRows, $this->_execute_option); + + if ($dbc->Errors->Count > 0) return $false; + if (! $rs) return $false; + + if ($rs->State == 0) { + $true = true; + return $true; // 0 = adStateClosed means no records returned + } + return $rs; + + } catch (exception $e) { + + } + return $false; + } + + + function BeginTrans() + { + if ($this->transOff) return true; + + if (isset($this->_thisTransactions)) + if (!$this->_thisTransactions) return false; + else { + $o = $this->_connectionID->Properties("Transaction DDL"); + $this->_thisTransactions = $o ? true : false; + if (!$o) return false; + } + @$this->_connectionID->BeginTrans(); + $this->transCnt += 1; + return true; + } + function CommitTrans($ok=true) + { + if (!$ok) return $this->RollbackTrans(); + if ($this->transOff) return true; + + @$this->_connectionID->CommitTrans(); + if ($this->transCnt) @$this->transCnt -= 1; + return true; + } + function RollbackTrans() { + if ($this->transOff) return true; + @$this->_connectionID->RollbackTrans(); + if ($this->transCnt) @$this->transCnt -= 1; + return true; + } + + /* Returns: the last error message from previous database operation */ + + function ErrorMsg() + { + if (!$this->_connectionID) return "No connection established"; + $errmsg = ''; + + try { + $errc = $this->_connectionID->Errors; + if (!$errc) return "No Errors object found"; + if ($errc->Count == 0) return ''; + $err = $errc->Item($errc->Count-1); + $errmsg = $err->Description; + }catch(exception $e) { + } + return $errmsg; + } + + function ErrorNo() + { + $errc = $this->_connectionID->Errors; + if ($errc->Count == 0) return 0; + $err = $errc->Item($errc->Count-1); + return $err->NativeError; + } + + // returns true or false + function _close() + { + if ($this->_connectionID) $this->_connectionID->Close(); + $this->_connectionID = false; + return true; + } + + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordSet_ado extends ADORecordSet { + + var $bind = false; + var $databaseType = "ado"; + var $dataProvider = "ado"; + var $_tarr = false; // caches the types + var $_flds; // and field objects + var $canSeek = true; + var $hideErrors = true; + + function ADORecordSet_ado($id,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + $this->fetchMode = $mode; + return $this->ADORecordSet($id,$mode); + } + + + // returns the field object + function &FetchField($fieldOffset = -1) { + $off=$fieldOffset+1; // offsets begin at 1 + + $o= new ADOFieldObject(); + $rs = $this->_queryID; + $f = $rs->Fields($fieldOffset); + $o->name = $f->Name; + $t = $f->Type; + $o->type = $this->MetaType($t); + $o->max_length = $f->DefinedSize; + $o->ado_type = $t; + + + //print "off=$off name=$o->name type=$o->type len=$o->max_length
"; + return $o; + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + if ($this->fetchMode & ADODB_FETCH_ASSOC) return $this->fields[$colname]; + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + + function _initrs() + { + $rs = $this->_queryID; + $this->_numOfRows = $rs->RecordCount; + + $f = $rs->Fields; + $this->_numOfFields = $f->Count; + } + + + // should only be used to move forward as we normally use forward-only cursors + function _seek($row) + { + $rs = $this->_queryID; + // absoluteposition doesn't work -- my maths is wrong ? + // $rs->AbsolutePosition->$row-2; + // return true; + if ($this->_currentRow > $row) return false; + @$rs->Move((integer)$row - $this->_currentRow-1); //adBookmarkFirst + return true; + } + +/* + OLEDB types + + enum DBTYPEENUM + { DBTYPE_EMPTY = 0, + DBTYPE_NULL = 1, + DBTYPE_I2 = 2, + DBTYPE_I4 = 3, + DBTYPE_R4 = 4, + DBTYPE_R8 = 5, + DBTYPE_CY = 6, + DBTYPE_DATE = 7, + DBTYPE_BSTR = 8, + DBTYPE_IDISPATCH = 9, + DBTYPE_ERROR = 10, + DBTYPE_BOOL = 11, + DBTYPE_VARIANT = 12, + DBTYPE_IUNKNOWN = 13, + DBTYPE_DECIMAL = 14, + DBTYPE_UI1 = 17, + DBTYPE_ARRAY = 0x2000, + DBTYPE_BYREF = 0x4000, + DBTYPE_I1 = 16, + DBTYPE_UI2 = 18, + DBTYPE_UI4 = 19, + DBTYPE_I8 = 20, + DBTYPE_UI8 = 21, + DBTYPE_GUID = 72, + DBTYPE_VECTOR = 0x1000, + DBTYPE_RESERVED = 0x8000, + DBTYPE_BYTES = 128, + DBTYPE_STR = 129, + DBTYPE_WSTR = 130, + DBTYPE_NUMERIC = 131, + DBTYPE_UDT = 132, + DBTYPE_DBDATE = 133, + DBTYPE_DBTIME = 134, + DBTYPE_DBTIMESTAMP = 135 + + ADO Types + + adEmpty = 0, + adTinyInt = 16, + adSmallInt = 2, + adInteger = 3, + adBigInt = 20, + adUnsignedTinyInt = 17, + adUnsignedSmallInt = 18, + adUnsignedInt = 19, + adUnsignedBigInt = 21, + adSingle = 4, + adDouble = 5, + adCurrency = 6, + adDecimal = 14, + adNumeric = 131, + adBoolean = 11, + adError = 10, + adUserDefined = 132, + adVariant = 12, + adIDispatch = 9, + adIUnknown = 13, + adGUID = 72, + adDate = 7, + adDBDate = 133, + adDBTime = 134, + adDBTimeStamp = 135, + adBSTR = 8, + adChar = 129, + adVarChar = 200, + adLongVarChar = 201, + adWChar = 130, + adVarWChar = 202, + adLongVarWChar = 203, + adBinary = 128, + adVarBinary = 204, + adLongVarBinary = 205, + adChapter = 136, + adFileTime = 64, + adDBFileTime = 137, + adPropVariant = 138, + adVarNumeric = 139 +*/ + function MetaType($t,$len=-1,$fieldobj=false) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + + if (!is_numeric($t)) return $t; + + switch ($t) { + case 0: + case 12: // variant + case 8: // bstr + case 129: //char + case 130: //wc + case 200: // varc + case 202:// varWC + case 128: // bin + case 204: // varBin + case 72: // guid + if ($len <= $this->blobSize) return 'C'; + + case 201: + case 203: + return 'X'; + case 128: + case 204: + case 205: + return 'B'; + case 7: + case 133: return 'D'; + + case 134: + case 135: return 'T'; + + case 11: return 'L'; + + case 16:// adTinyInt = 16, + case 2://adSmallInt = 2, + case 3://adInteger = 3, + case 4://adBigInt = 20, + case 17://adUnsignedTinyInt = 17, + case 18://adUnsignedSmallInt = 18, + case 19://adUnsignedInt = 19, + case 20://adUnsignedBigInt = 21, + return 'I'; + default: return 'N'; + } + } + + // time stamp not supported yet + function _fetch() + { + $rs = $this->_queryID; + if (!$rs or $rs->EOF) { + $this->fields = false; + return false; + } + $this->fields = array(); + + if (!$this->_tarr) { + $tarr = array(); + $flds = array(); + for ($i=0,$max = $this->_numOfFields; $i < $max; $i++) { + $f = $rs->Fields($i); + $flds[] = $f; + $tarr[] = $f->Type; + } + // bind types and flds only once + $this->_tarr = $tarr; + $this->_flds = $flds; + } + $t = reset($this->_tarr); + $f = reset($this->_flds); + + if ($this->hideErrors) $olde = error_reporting(E_ERROR|E_CORE_ERROR);// sometimes $f->value be null + for ($i=0,$max = $this->_numOfFields; $i < $max; $i++) { + //echo "

",$t,' ';var_dump($f->value); echo '

'; + switch($t) { + case 135: // timestamp + if (!strlen((string)$f->value)) $this->fields[] = false; + else { + if (!is_numeric($f->value)) # $val = variant_date_to_timestamp($f->value); + // VT_DATE stores dates as (float) fractional days since 1899/12/30 00:00:00 + $val= (float) variant_cast($f->value,VT_R8)*3600*24-2209161600; + else + $val = $f->value; + $this->fields[] = adodb_date('Y-m-d H:i:s',$val); + } + break; + case 133:// A date value (yyyymmdd) + if ($val = $f->value) { + $this->fields[] = substr($val,0,4).'-'.substr($val,4,2).'-'.substr($val,6,2); + } else + $this->fields[] = false; + break; + case 7: // adDate + if (!strlen((string)$f->value)) $this->fields[] = false; + else { + if (!is_numeric($f->value)) $val = variant_date_to_timestamp($f->value); + else $val = $f->value; + + if (($val % 86400) == 0) $this->fields[] = adodb_date('Y-m-d',$val); + else $this->fields[] = adodb_date('Y-m-d H:i:s',$val); + } + break; + case 1: // null + $this->fields[] = false; + break; + case 6: // currency is not supported properly; + ADOConnection::outp( ''.$f->Name.': currency type not supported by PHP'); + $this->fields[] = (float) $f->value; + break; + default: + $this->fields[] = $f->value; + break; + } + //print " $f->value $t, "; + $f = next($this->_flds); + $t = next($this->_tarr); + } // for + if ($this->hideErrors) error_reporting($olde); + @$rs->MoveNext(); // @ needed for some versions of PHP! + + if ($this->fetchMode & ADODB_FETCH_ASSOC) { + $this->fields = &$this->GetRowAssoc(ADODB_ASSOC_CASE); + } + return true; + } + + function NextRecordSet() + { + $rs = $this->_queryID; + $this->_queryID = $rs->NextRecordSet(); + //$this->_queryID = $this->_QueryId->NextRecordSet(); + if ($this->_queryID == null) return false; + + $this->_currentRow = -1; + $this->_currentPage = -1; + $this->bind = false; + $this->fields = false; + $this->_flds = false; + $this->_tarr = false; + + $this->_inited = false; + $this->Init(); + return true; + } + + function _close() { + $this->_flds = false; + @$this->_queryID->Close();// by Pete Dishman (peterd@telephonetics.co.uk) + $this->_queryID = false; + } + +} + +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-ado_mssql.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-ado_mssql.inc.php new file mode 100644 index 0000000..19132bc --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-ado_mssql.inc.php @@ -0,0 +1,155 @@ += 5) include(ADODB_DIR."/drivers/adodb-ado5.inc.php"); + else include(ADODB_DIR."/drivers/adodb-ado.inc.php"); +} + + +class ADODB_ado_mssql extends ADODB_ado { + var $databaseType = 'ado_mssql'; + var $hasTop = 'top'; + var $hasInsertID = true; + var $sysDate = 'convert(datetime,convert(char,GetDate(),102),102)'; + var $sysTimeStamp = 'GetDate()'; + var $leftOuter = '*='; + var $rightOuter = '=*'; + var $ansiOuter = true; // for mssql7 or later + var $substr = "substring"; + var $length = 'len'; + var $_dropSeqSQL = "drop table %s"; + + //var $_inTransaction = 1; // always open recordsets, so no transaction problems. + + function ADODB_ado_mssql() + { + $this->ADODB_ado(); + } + + function _insertid() + { + return $this->GetOne('select @@identity'); + } + + function _affectedrows() + { + return $this->GetOne('select @@rowcount'); + } + + function SetTransactionMode( $transaction_mode ) + { + $this->_transmode = $transaction_mode; + if (empty($transaction_mode)) { + $this->Execute('SET TRANSACTION ISOLATION LEVEL READ COMMITTED'); + return; + } + if (!stristr($transaction_mode,'isolation')) $transaction_mode = 'ISOLATION LEVEL '.$transaction_mode; + $this->Execute("SET TRANSACTION ".$transaction_mode); + } + + function MetaColumns($table) + { + $table = strtoupper($table); + $arr= array(); + $dbc = $this->_connectionID; + + $osoptions = array(); + $osoptions[0] = null; + $osoptions[1] = null; + $osoptions[2] = $table; + $osoptions[3] = null; + + $adors=@$dbc->OpenSchema(4, $osoptions);//tables + + if ($adors){ + while (!$adors->EOF){ + $fld = new ADOFieldObject(); + $c = $adors->Fields(3); + $fld->name = $c->Value; + $fld->type = 'CHAR'; // cannot discover type in ADO! + $fld->max_length = -1; + $arr[strtoupper($fld->name)]=$fld; + + $adors->MoveNext(); + } + $adors->Close(); + } + $false = false; + return empty($arr) ? $false : $arr; + } + + function CreateSequence($seq='adodbseq',$start=1) + { + + $this->Execute('BEGIN TRANSACTION adodbseq'); + $start -= 1; + $this->Execute("create table $seq (id float(53))"); + $ok = $this->Execute("insert into $seq with (tablock,holdlock) values($start)"); + if (!$ok) { + $this->Execute('ROLLBACK TRANSACTION adodbseq'); + return false; + } + $this->Execute('COMMIT TRANSACTION adodbseq'); + return true; + } + + function GenID($seq='adodbseq',$start=1) + { + //$this->debug=1; + $this->Execute('BEGIN TRANSACTION adodbseq'); + $ok = $this->Execute("update $seq with (tablock,holdlock) set id = id + 1"); + if (!$ok) { + $this->Execute("create table $seq (id float(53))"); + $ok = $this->Execute("insert into $seq with (tablock,holdlock) values($start)"); + if (!$ok) { + $this->Execute('ROLLBACK TRANSACTION adodbseq'); + return false; + } + $this->Execute('COMMIT TRANSACTION adodbseq'); + return $start; + } + $num = $this->GetOne("select id from $seq"); + $this->Execute('COMMIT TRANSACTION adodbseq'); + return $num; + + // in old implementation, pre 1.90, we returned GUID... + //return $this->GetOne("SELECT CONVERT(varchar(255), NEWID()) AS 'Char'"); + } + + function qstr($s,$magic_quotes=false) + { + $s = parent::qstr($s, $magic_quotes); + return str_replace("\0", "\\\\000", $s); + } + + + } // end class + + class ADORecordSet_ado_mssql extends ADORecordSet_ado { + + var $databaseType = 'ado_mssql'; + + function ADORecordSet_ado_mssql($id,$mode=false) + { + return $this->ADORecordSet_ado($id,$mode); + } +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-db2.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-db2.inc.php new file mode 100644 index 0000000..64d043e --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-db2.inc.php @@ -0,0 +1,799 @@ +_haserrorfunctions = ADODB_PHPVER >= 0x4050; + } + + // returns true or false + function _connect($argDSN, $argUsername, $argPassword, $argDatabasename) + { + global $php_errormsg; + + if (!function_exists('db2_connect')) { + ADOConnection::outp("Warning: The old ODBC based DB2 driver has been renamed 'odbc_db2'. This ADOdb driver calls PHP's native db2 extension."); + return null; + } + // This needs to be set before the connect(). + // Replaces the odbc_binmode() call that was in Execute() + ini_set('ibm_db2.binmode', $this->binmode); + + if ($argDatabasename) { + $this->_connectionID = db2_connect($argDatabasename,$argUsername,$argPassword); + } else { + $this->_connectionID = db2_connect($argDSN,$argUsername,$argPassword); + } + if (isset($php_errormsg)) $php_errormsg = ''; + + // For db2_connect(), there is an optional 4th arg. If present, it must be + // an array of valid options. So far, we don't use them. + + $this->_errorMsg = @db2_conn_errormsg(); + + if (isset($this->connectStmt)) $this->Execute($this->connectStmt); + + return $this->_connectionID != false; + } + + // returns true or false + function _pconnect($argDSN, $argUsername, $argPassword, $argDatabasename) + { + global $php_errormsg; + + if (!function_exists('db2_connect')) return null; + + // This needs to be set before the connect(). + // Replaces the odbc_binmode() call that was in Execute() + ini_set('ibm_db2.binmode', $this->binmode); + + if (isset($php_errormsg)) $php_errormsg = ''; + $this->_errorMsg = isset($php_errormsg) ? $php_errormsg : ''; + + if ($argDatabasename) { + $this->_connectionID = db2_pconnect($argDatabasename,$argUsername,$argPassword); + } else { + $this->_connectionID = db2_pconnect($argDSN,$argUsername,$argPassword); + } + if (isset($php_errormsg)) $php_errormsg = ''; + + $this->_errorMsg = @db2_conn_errormsg(); + if ($this->_connectionID && $this->autoRollback) @db2_rollback($this->_connectionID); + if (isset($this->connectStmt)) $this->Execute($this->connectStmt); + + return $this->_connectionID != false; + } + + // format and return date string in database timestamp format + function DBTimeStamp($ts) + { + if (empty($ts) && $ts !== 0) return 'null'; + if (is_string($ts)) $ts = ADORecordSet::UnixTimeStamp($ts); + return 'TO_DATE('.adodb_date($this->fmtTimeStamp,$ts).",'YYYY-MM-DD HH24:MI:SS')"; + } + + // Format date column in sql string given an input format that understands Y M D + function SQLDate($fmt, $col=false) + { + // use right() and replace() ? + if (!$col) $col = $this->sysDate; + + /* use TO_CHAR() if $fmt is TO_CHAR() allowed fmt */ + if ($fmt== 'Y-m-d H:i:s') + return 'TO_CHAR('.$col.", 'YYYY-MM-DD HH24:MI:SS')"; + + $s = ''; + + $len = strlen($fmt); + for ($i=0; $i < $len; $i++) { + if ($s) $s .= $this->concat_operator; + $ch = $fmt[$i]; + switch($ch) { + case 'Y': + case 'y': + if ($len==1) return "year($col)"; + $s .= "char(year($col))"; + break; + case 'M': + if ($len==1) return "monthname($col)"; + $s .= "substr(monthname($col),1,3)"; + break; + case 'm': + if ($len==1) return "month($col)"; + $s .= "right(digits(month($col)),2)"; + break; + case 'D': + case 'd': + if ($len==1) return "day($col)"; + $s .= "right(digits(day($col)),2)"; + break; + case 'H': + case 'h': + if ($len==1) return "hour($col)"; + if ($col != $this->sysDate) $s .= "right(digits(hour($col)),2)"; + else $s .= "''"; + break; + case 'i': + case 'I': + if ($len==1) return "minute($col)"; + if ($col != $this->sysDate) + $s .= "right(digits(minute($col)),2)"; + else $s .= "''"; + break; + case 'S': + case 's': + if ($len==1) return "second($col)"; + if ($col != $this->sysDate) + $s .= "right(digits(second($col)),2)"; + else $s .= "''"; + break; + default: + if ($ch == '\\') { + $i++; + $ch = substr($fmt,$i,1); + } + $s .= $this->qstr($ch); + } + } + return $s; + } + + + function ServerInfo() + { + + if (!empty($this->host) && ADODB_PHPVER >= 0x4300) { + $dsn = strtoupper($this->host); + $first = true; + $found = false; + + if (!function_exists('db2_data_source')) return false; + + while(true) { + + $rez = @db2_data_source($this->_connectionID, + $first ? SQL_FETCH_FIRST : SQL_FETCH_NEXT); + $first = false; + if (!is_array($rez)) break; + if (strtoupper($rez['server']) == $dsn) { + $found = true; + break; + } + } + if (!$found) return ADOConnection::ServerInfo(); + if (!isset($rez['version'])) $rez['version'] = ''; + return $rez; + } else { + return ADOConnection::ServerInfo(); + } + } + + function ErrorMsg() + { + if ($this->_haserrorfunctions) { + if ($this->_errorMsg !== false) return $this->_errorMsg; + if (empty($this->_connectionID)) return @db2_conn_errormsg(); + return @db2_conn_errormsg($this->_connectionID); + } else return ADOConnection::ErrorMsg(); + } + + function ErrorNo() + { + + if ($this->_haserrorfunctions) { + if ($this->_errorCode !== false) { + // bug in 4.0.6, error number can be corrupted string (should be 6 digits) + return (strlen($this->_errorCode)<=2) ? 0 : $this->_errorCode; + } + + if (empty($this->_connectionID)) $e = @db2_conn_error(); + else $e = @db2_conn_error($this->_connectionID); + + // bug in 4.0.6, error number can be corrupted string (should be 6 digits) + // so we check and patch + if (strlen($e)<=2) return 0; + return $e; + } else return ADOConnection::ErrorNo(); + } + + + + function BeginTrans() + { + if (!$this->hasTransactions) return false; + if ($this->transOff) return true; + $this->transCnt += 1; + $this->_autocommit = false; + return db2_autocommit($this->_connectionID,false); + } + + function CommitTrans($ok=true) + { + if ($this->transOff) return true; + if (!$ok) return $this->RollbackTrans(); + if ($this->transCnt) $this->transCnt -= 1; + $this->_autocommit = true; + $ret = db2_commit($this->_connectionID); + db2_autocommit($this->_connectionID,true); + return $ret; + } + + function RollbackTrans() + { + if ($this->transOff) return true; + if ($this->transCnt) $this->transCnt -= 1; + $this->_autocommit = true; + $ret = db2_rollback($this->_connectionID); + db2_autocommit($this->_connectionID,true); + return $ret; + } + + function MetaPrimaryKeys($table) + { + global $ADODB_FETCH_MODE; + + if ($this->uCaseTables) $table = strtoupper($table); + $schema = ''; + $this->_findschema($table,$schema); + + $savem = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + $qid = @db2_primarykeys($this->_connectionID,'',$schema,$table); + + if (!$qid) { + $ADODB_FETCH_MODE = $savem; + return false; + } + $rs = new ADORecordSet_db2($qid); + $ADODB_FETCH_MODE = $savem; + + if (!$rs) return false; + + $arr =& $rs->GetArray(); + $rs->Close(); + $arr2 = array(); + for ($i=0; $i < sizeof($arr); $i++) { + if ($arr[$i][3]) $arr2[] = $arr[$i][3]; + } + return $arr2; + } + + function MetaForeignKeys($table, $owner = FALSE, $upper = FALSE, $asociative = FALSE ) + { + global $ADODB_FETCH_MODE; + + if ($this->uCaseTables) $table = strtoupper($table); + $schema = ''; + $this->_findschema($table,$schema); + + $savem = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + $qid = @db2_foreign_keys($this->_connectionID,'',$schema,$table); + if (!$qid) { + $ADODB_FETCH_MODE = $savem; + return false; + } + $rs = new ADORecordSet_db2($qid); + + $ADODB_FETCH_MODE = $savem; + /* + $rs->fields indices + 0 PKTABLE_CAT + 1 PKTABLE_SCHEM + 2 PKTABLE_NAME + 3 PKCOLUMN_NAME + 4 FKTABLE_CAT + 5 FKTABLE_SCHEM + 6 FKTABLE_NAME + 7 FKCOLUMN_NAME + */ + if (!$rs) return false; + + $foreign_keys = array(); + while (!$rs->EOF) { + if (strtoupper(trim($rs->fields[2])) == $table && (!$schema || strtoupper($rs->fields[1]) == $schema)) { + if (!is_array($foreign_keys[$rs->fields[5].'.'.$rs->fields[6]])) + $foreign_keys[$rs->fields[5].'.'.$rs->fields[6]] = array(); + $foreign_keys[$rs->fields[5].'.'.$rs->fields[6]][$rs->fields[7]] = $rs->fields[3]; + } + $rs->MoveNext(); + } + + $rs->Close(); + return $foreign_key; + } + + + function &MetaTables($ttype=false,$schema=false) + { + global $ADODB_FETCH_MODE; + + $savem = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + $qid = db2_tables($this->_connectionID); + + $rs = new ADORecordSet_db2($qid); + + $ADODB_FETCH_MODE = $savem; + if (!$rs) { + $false = false; + return $false; + } + + $arr =& $rs->GetArray(); + + $rs->Close(); + $arr2 = array(); + + if ($ttype) { + $isview = strncmp($ttype,'V',1) === 0; + } + for ($i=0; $i < sizeof($arr); $i++) { + if (!$arr[$i][2]) continue; + $type = $arr[$i][3]; + $schemaval = ($schema) ? $arr[$i][1].'.' : ''; + if ($ttype) { + if ($isview) { + if (strncmp($type,'V',1) === 0) $arr2[] = $schemaval.$arr[$i][2]; + } else if (strncmp($type,'SYS',3) !== 0) $arr2[] = $schemaval.$arr[$i][2]; + } else if (strncmp($type,'SYS',3) !== 0) $arr2[] = $schemaval.$arr[$i][2]; + } + return $arr2; + } + +/* +See http://msdn.microsoft.com/library/default.asp?url=/library/en-us/db2/htm/db2datetime_data_type_changes.asp +/ SQL data type codes / +#define SQL_UNKNOWN_TYPE 0 +#define SQL_CHAR 1 +#define SQL_NUMERIC 2 +#define SQL_DECIMAL 3 +#define SQL_INTEGER 4 +#define SQL_SMALLINT 5 +#define SQL_FLOAT 6 +#define SQL_REAL 7 +#define SQL_DOUBLE 8 +#if (DB2VER >= 0x0300) +#define SQL_DATETIME 9 +#endif +#define SQL_VARCHAR 12 + + +/ One-parameter shortcuts for date/time data types / +#if (DB2VER >= 0x0300) +#define SQL_TYPE_DATE 91 +#define SQL_TYPE_TIME 92 +#define SQL_TYPE_TIMESTAMP 93 + +#define SQL_UNICODE (-95) +#define SQL_UNICODE_VARCHAR (-96) +#define SQL_UNICODE_LONGVARCHAR (-97) +*/ + function DB2Types($t) + { + switch ((integer)$t) { + case 1: + case 12: + case 0: + case -95: + case -96: + return 'C'; + case -97: + case -1: //text + return 'X'; + case -4: //image + return 'B'; + + case 9: + case 91: + return 'D'; + + case 10: + case 11: + case 92: + case 93: + return 'T'; + + case 4: + case 5: + case -6: + return 'I'; + + case -11: // uniqidentifier + return 'R'; + case -7: //bit + return 'L'; + + default: + return 'N'; + } + } + + function &MetaColumns($table) + { + global $ADODB_FETCH_MODE; + + $false = false; + if ($this->uCaseTables) $table = strtoupper($table); + $schema = ''; + $this->_findschema($table,$schema); + + $savem = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + + $colname = "%"; + $qid = db2_columns($this->_connectionID, "", $schema, $table, $colname); + if (empty($qid)) return $false; + + $rs =& new ADORecordSet_db2($qid); + $ADODB_FETCH_MODE = $savem; + + if (!$rs) return $false; + $rs->_fetch(); + + $retarr = array(); + + /* + $rs->fields indices + 0 TABLE_QUALIFIER + 1 TABLE_SCHEM + 2 TABLE_NAME + 3 COLUMN_NAME + 4 DATA_TYPE + 5 TYPE_NAME + 6 PRECISION + 7 LENGTH + 8 SCALE + 9 RADIX + 10 NULLABLE + 11 REMARKS + */ + while (!$rs->EOF) { + if (strtoupper(trim($rs->fields[2])) == $table && (!$schema || strtoupper($rs->fields[1]) == $schema)) { + $fld = new ADOFieldObject(); + $fld->name = $rs->fields[3]; + $fld->type = $this->DB2Types($rs->fields[4]); + + // ref: http://msdn.microsoft.com/library/default.asp?url=/archive/en-us/dnaraccgen/html/msdn_odk.asp + // access uses precision to store length for char/varchar + if ($fld->type == 'C' or $fld->type == 'X') { + if ($rs->fields[4] <= -95) // UNICODE + $fld->max_length = $rs->fields[7]/2; + else + $fld->max_length = $rs->fields[7]; + } else + $fld->max_length = $rs->fields[7]; + $fld->not_null = !empty($rs->fields[10]); + $fld->scale = $rs->fields[8]; + $fld->primary_key = false; + $retarr[strtoupper($fld->name)] = $fld; + } else if (sizeof($retarr)>0) + break; + $rs->MoveNext(); + } + $rs->Close(); + if (empty($retarr)) $retarr = false; + + $qid = db2_primary_keys($this->_connectionID, "", $schema, $table); + if (empty($qid)) return $false; + + $rs =& new ADORecordSet_db2($qid); + $ADODB_FETCH_MODE = $savem; + + if (!$rs) return $retarr; + $rs->_fetch(); + + /* + $rs->fields indices + 0 TABLE_CAT + 1 TABLE_SCHEM + 2 TABLE_NAME + 3 COLUMN_NAME + 4 KEY_SEQ + 5 PK_NAME + */ + while (!$rs->EOF) { + if (strtoupper(trim($rs->fields[2])) == $table && (!$schema || strtoupper($rs->fields[1]) == $schema)) { + $retarr[strtoupper($rs->fields[3])]->primary_key = true; + } else if (sizeof($retarr)>0) + break; + $rs->MoveNext(); + } + $rs->Close(); + + if (empty($retarr)) $retarr = false; + return $retarr; + } + + function Prepare($sql) + { + if (! $this->_bindInputArray) return $sql; // no binding + $stmt = db2_prepare($this->_connectionID,$sql); + if (!$stmt) { + // we don't know whether db2 driver is parsing prepared stmts, so just return sql + return $sql; + } + return array($sql,$stmt,false); + } + + /* returns queryID or false */ + function _query($sql,$inputarr=false) + { + GLOBAL $php_errormsg; + if (isset($php_errormsg)) $php_errormsg = ''; + $this->_error = ''; + + if ($inputarr) { + if (is_array($sql)) { + $stmtid = $sql[1]; + } else { + $stmtid = db2_prepare($this->_connectionID,$sql); + + if ($stmtid == false) { + $this->_errorMsg = isset($php_errormsg) ? $php_errormsg : ''; + return false; + } + } + + if (! db2_execute($stmtid,$inputarr)) { + if ($this->_haserrorfunctions) { + $this->_errorMsg = db2_stmt_errormsg(); + $this->_errorCode = db2_stmt_error(); + } + return false; + } + + } else if (is_array($sql)) { + $stmtid = $sql[1]; + if (!db2_execute($stmtid)) { + if ($this->_haserrorfunctions) { + $this->_errorMsg = db2_stmt_errormsg(); + $this->_errorCode = db2_stmt_error(); + } + return false; + } + } else + $stmtid = @db2_exec($this->_connectionID,$sql); + + $this->_lastAffectedRows = 0; + if ($stmtid) { + if (@db2_num_fields($stmtid) == 0) { + $this->_lastAffectedRows = db2_num_rows($stmtid); + $stmtid = true; + } else { + $this->_lastAffectedRows = 0; + } + + if ($this->_haserrorfunctions) { + $this->_errorMsg = ''; + $this->_errorCode = 0; + } else + $this->_errorMsg = isset($php_errormsg) ? $php_errormsg : ''; + } else { + if ($this->_haserrorfunctions) { + $this->_errorMsg = db2_stmt_errormsg(); + $this->_errorCode = db2_stmt_error(); + } else + $this->_errorMsg = isset($php_errormsg) ? $php_errormsg : ''; + + } + return $stmtid; + } + + /* + Insert a null into the blob field of the table first. + Then use UpdateBlob to store the blob. + + Usage: + + $conn->Execute('INSERT INTO blobtable (id, blobcol) VALUES (1, null)'); + $conn->UpdateBlob('blobtable','blobcol',$blob,'id=1'); + */ + function UpdateBlob($table,$column,$val,$where,$blobtype='BLOB') + { + return $this->Execute("UPDATE $table SET $column=? WHERE $where",array($val)) != false; + } + + // returns true or false + function _close() + { + $ret = @db2_close($this->_connectionID); + $this->_connectionID = false; + return $ret; + } + + function _affectedrows() + { + return $this->_lastAffectedRows; + } + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordSet_db2 extends ADORecordSet { + + var $bind = false; + var $databaseType = "db2"; + var $dataProvider = "db2"; + var $useFetchArray; + + function ADORecordSet_db2($id,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + $this->fetchMode = $mode; + + $this->_queryID = $id; + } + + + // returns the field object + function &FetchField($offset = -1) + { + $o= new ADOFieldObject(); + $o->name = @db2_field_name($this->_queryID,$offset); + $o->type = @db2_field_type($this->_queryID,$offset); + $o->max_length = db2_field_width($this->_queryID,$offset); + if (ADODB_ASSOC_CASE == 0) $o->name = strtolower($o->name); + else if (ADODB_ASSOC_CASE == 1) $o->name = strtoupper($o->name); + return $o; + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + if ($this->fetchMode & ADODB_FETCH_ASSOC) return $this->fields[$colname]; + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + + function _initrs() + { + global $ADODB_COUNTRECS; + $this->_numOfRows = ($ADODB_COUNTRECS) ? @db2_num_rows($this->_queryID) : -1; + $this->_numOfFields = @db2_num_fields($this->_queryID); + // some silly drivers such as db2 as/400 and intersystems cache return _numOfRows = 0 + if ($this->_numOfRows == 0) $this->_numOfRows = -1; + } + + function _seek($row) + { + return false; + } + + // speed up SelectLimit() by switching to ADODB_FETCH_NUM as ADODB_FETCH_ASSOC is emulated + function &GetArrayLimit($nrows,$offset=-1) + { + if ($offset <= 0) { + $rs =& $this->GetArray($nrows); + return $rs; + } + $savem = $this->fetchMode; + $this->fetchMode = ADODB_FETCH_NUM; + $this->Move($offset); + $this->fetchMode = $savem; + + if ($this->fetchMode & ADODB_FETCH_ASSOC) { + $this->fields =& $this->GetRowAssoc(ADODB_ASSOC_CASE); + } + + $results = array(); + $cnt = 0; + while (!$this->EOF && $nrows != $cnt) { + $results[$cnt++] = $this->fields; + $this->MoveNext(); + } + + return $results; + } + + + function MoveNext() + { + if ($this->_numOfRows != 0 && !$this->EOF) { + $this->_currentRow++; + + $this->fields = @db2_fetch_array($this->_queryID); + if ($this->fields) { + if ($this->fetchMode & ADODB_FETCH_ASSOC) { + $this->fields =& $this->GetRowAssoc(ADODB_ASSOC_CASE); + } + return true; + } + } + $this->fields = false; + $this->EOF = true; + return false; + } + + function _fetch() + { + + $this->fields = db2_fetch_array($this->_queryID); + if ($this->fields) { + if ($this->fetchMode & ADODB_FETCH_ASSOC) { + $this->fields =& $this->GetRowAssoc(ADODB_ASSOC_CASE); + } + return true; + } + $this->fields = false; + return false; + } + + function _close() + { + return @db2_free_result($this->_queryID); + } + +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-mysql.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-mysql.inc.php new file mode 100644 index 0000000..b43557a --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-mysql.inc.php @@ -0,0 +1,790 @@ +rsPrefix .= 'ext_'; + } + + function ServerInfo() + { + $arr['description'] = ADOConnection::GetOne("select version()"); + $arr['version'] = ADOConnection::_findvers($arr['description']); + return $arr; + } + + function IfNull( $field, $ifNull ) + { + return " IFNULL($field, $ifNull) "; // if MySQL + } + + + function &MetaTables($ttype=false,$showSchema=false,$mask=false) + { + $save = $this->metaTablesSQL; + if ($showSchema && is_string($showSchema)) { + $this->metaTablesSQL .= " from $showSchema"; + } + + if ($mask) { + $mask = $this->qstr($mask); + $this->metaTablesSQL .= " like $mask"; + } + $ret =& ADOConnection::MetaTables($ttype,$showSchema); + + $this->metaTablesSQL = $save; + return $ret; + } + + + function &MetaIndexes ($table, $primary = FALSE, $owner=false) + { + // save old fetch mode + global $ADODB_FETCH_MODE; + + $false = false; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== FALSE) { + $savem = $this->SetFetchMode(FALSE); + } + + // get index details + $rs = $this->Execute(sprintf('SHOW INDEX FROM %s',$table)); + + // restore fetchmode + if (isset($savem)) { + $this->SetFetchMode($savem); + } + $ADODB_FETCH_MODE = $save; + + if (!is_object($rs)) { + return $false; + } + + $indexes = array (); + + // parse index data into array + while ($row = $rs->FetchRow()) { + if ($primary == FALSE AND $row[2] == 'PRIMARY') { + continue; + } + + if (!isset($indexes[$row[2]])) { + $indexes[$row[2]] = array( + 'unique' => ($row[1] == 0), + 'columns' => array() + ); + } + + $indexes[$row[2]]['columns'][$row[3] - 1] = $row[4]; + } + + // sort columns by order in the index + foreach ( array_keys ($indexes) as $index ) + { + ksort ($indexes[$index]['columns']); + } + + return $indexes; + } + + + // if magic quotes disabled, use mysql_real_escape_string() + function qstr($s,$magic_quotes=false) + { + if (!$magic_quotes) { + + if (ADODB_PHPVER >= 0x4300) { + if (is_resource($this->_connectionID)) + return "'".mysql_real_escape_string($s,$this->_connectionID)."'"; + } + if ($this->replaceQuote[0] == '\\'){ + $s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\0"),$s); + } + return "'".str_replace("'",$this->replaceQuote,$s)."'"; + } + + // undo magic quotes for " + $s = str_replace('\\"','"',$s); + return "'$s'"; + } + + function _insertid() + { + return ADOConnection::GetOne('SELECT LAST_INSERT_ID()'); + //return mysql_insert_id($this->_connectionID); + } + + function GetOne($sql,$inputarr=false) + { + if ($this->compat323 == false && strncasecmp($sql,'sele',4) == 0) { + $rs =& $this->SelectLimit($sql,1,-1,$inputarr); + if ($rs) { + $rs->Close(); + if ($rs->EOF) return false; + return reset($rs->fields); + } + } else { + return ADOConnection::GetOne($sql,$inputarr); + } + return false; + } + + function BeginTrans() + { + if ($this->debug) ADOConnection::outp("Transactions not supported in 'mysql' driver. Use 'mysqlt' or 'mysqli' driver"); + } + + function _affectedrows() + { + return mysql_affected_rows($this->_connectionID); + } + + // See http://www.mysql.com/doc/M/i/Miscellaneous_functions.html + // Reference on Last_Insert_ID on the recommended way to simulate sequences + var $_genIDSQL = "update %s set id=LAST_INSERT_ID(id+1);"; + var $_genSeqSQL = "create table %s (id int not null)"; + var $_genSeqCountSQL = "select count(*) from %s"; + var $_genSeq2SQL = "insert into %s values (%s)"; + var $_dropSeqSQL = "drop table %s"; + + function CreateSequence($seqname='adodbseq',$startID=1) + { + if (empty($this->_genSeqSQL)) return false; + $u = strtoupper($seqname); + + $ok = $this->Execute(sprintf($this->_genSeqSQL,$seqname)); + if (!$ok) return false; + return $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1)); + } + + + function GenID($seqname='adodbseq',$startID=1) + { + // post-nuke sets hasGenID to false + if (!$this->hasGenID) return false; + + $savelog = $this->_logsql; + $this->_logsql = false; + $getnext = sprintf($this->_genIDSQL,$seqname); + $holdtransOK = $this->_transOK; // save the current status + $rs = @$this->Execute($getnext); + if (!$rs) { + if ($holdtransOK) $this->_transOK = true; //if the status was ok before reset + $u = strtoupper($seqname); + $this->Execute(sprintf($this->_genSeqSQL,$seqname)); + // Don't insert a new row if there is already one or if there's an error. + $cnt = $this->GetOne(sprintf($this->_genSeqCountSQL,$seqname)); + if ($cnt !== false && !$cnt) { + $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1)); + } + $rs = $this->Execute($getnext); + } + if ($rs) { + $this->genID = mysql_insert_id($this->_connectionID); + $rs->Close(); + } else { + $this->genID = 0; + } + + $this->_logsql = $savelog; + return $this->genID; + } + + function &MetaDatabases() + { + $qid = mysql_list_dbs($this->_connectionID); + $arr = array(); + $i = 0; + $max = mysql_num_rows($qid); + while ($i < $max) { + $db = mysql_tablename($qid,$i); + if ($db != 'mysql') $arr[] = $db; + $i += 1; + } + return $arr; + } + + + // Format date column in sql string given an input format that understands Y M D + function SQLDate($fmt, $col=false) + { + if (!$col) $col = $this->sysTimeStamp; + $s = 'DATE_FORMAT('.$col.",'"; + $concat = false; + $len = strlen($fmt); + for ($i=0; $i < $len; $i++) { + $ch = $fmt[$i]; + switch($ch) { + + default: + if ($ch == '\\') { + $i++; + $ch = substr($fmt,$i,1); + } + /** FALL THROUGH */ + case '-': + case '/': + $s .= $ch; + break; + + case 'Y': + case 'y': + $s .= '%Y'; + break; + case 'M': + $s .= '%b'; + break; + + case 'm': + $s .= '%m'; + break; + case 'D': + case 'd': + $s .= '%d'; + break; + + case 'Q': + case 'q': + $s .= "'),Quarter($col)"; + + if ($len > $i+1) $s .= ",DATE_FORMAT($col,'"; + else $s .= ",('"; + $concat = true; + break; + + case 'H': + $s .= '%H'; + break; + + case 'h': + $s .= '%I'; + break; + + case 'i': + $s .= '%i'; + break; + + case 's': + $s .= '%s'; + break; + + case 'a': + case 'A': + $s .= '%p'; + break; + + case 'w': + $s .= '%w'; + break; + + case 'W': + $s .= '%U'; + break; + + case 'l': + $s .= '%W'; + break; + } + } + $s.="')"; + if ($concat) $s = "CONCAT($s)"; + return $s; + } + + + // returns concatenated string + // much easier to run "mysqld --ansi" or "mysqld --sql-mode=PIPES_AS_CONCAT" and use || operator + function Concat() + { + $s = ""; + $arr = func_get_args(); + + // suggestion by andrew005@mnogo.ru + $s = implode(',',$arr); + if (strlen($s) > 0) return "CONCAT($s)"; + else return ''; + } + + function OffsetDate($dayFraction,$date=false) + { + if (!$date) $date = $this->sysDate; + + $fraction = $dayFraction * 24 * 3600; + return $date . ' + INTERVAL ' . $fraction.' SECOND'; + +// return "from_unixtime(unix_timestamp($date)+$fraction)"; + } + + // returns true or false + function _connect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + if (!empty($this->port)) $argHostname .= ":".$this->port; + + if (ADODB_PHPVER >= 0x4300) + $this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword, + $this->forceNewConnect,$this->clientFlags); + else if (ADODB_PHPVER >= 0x4200) + $this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword, + $this->forceNewConnect); + else + $this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword); + + if ($this->_connectionID === false) return false; + if ($argDatabasename) return $this->SelectDB($argDatabasename); + return true; + } + + // returns true or false + function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + if (!empty($this->port)) $argHostname .= ":".$this->port; + + if (ADODB_PHPVER >= 0x4300) + $this->_connectionID = mysql_pconnect($argHostname,$argUsername,$argPassword,$this->clientFlags); + else + $this->_connectionID = mysql_pconnect($argHostname,$argUsername,$argPassword); + if ($this->_connectionID === false) return false; + if ($this->autoRollback) $this->RollbackTrans(); + if ($argDatabasename) return $this->SelectDB($argDatabasename); + return true; + } + + function _nconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + $this->forceNewConnect = true; + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename); + } + + function &MetaColumns($table) + { + $this->_findschema($table,$schema); + if ($schema) { + $dbName = $this->database; + $this->SelectDB($schema); + } + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + $rs = $this->Execute(sprintf($this->metaColumnsSQL,$table)); + + if ($schema) { + $this->SelectDB($dbName); + } + + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + if (!is_object($rs)) { + $false = false; + return $false; + } + + $retarr = array(); + while (!$rs->EOF){ + $fld = new ADOFieldObject(); + $fld->name = $rs->fields[0]; + $type = $rs->fields[1]; + + // split type into type(length): + $fld->scale = null; + if (preg_match("/^(.+)\((\d+),(\d+)/", $type, $query_array)) { + $fld->type = $query_array[1]; + $fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1; + $fld->scale = is_numeric($query_array[3]) ? $query_array[3] : -1; + } elseif (preg_match("/^(.+)\((\d+)/", $type, $query_array)) { + $fld->type = $query_array[1]; + $fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1; + } elseif (preg_match("/^(enum)\((.*)\)$/i", $type, $query_array)) { + $fld->type = $query_array[1]; + $arr = explode(",",$query_array[2]); + $fld->enums = $arr; + $zlen = max(array_map("strlen",$arr)) - 2; // PHP >= 4.0.6 + $fld->max_length = ($zlen > 0) ? $zlen : 1; + } else { + $fld->type = $type; + $fld->max_length = -1; + } + $fld->not_null = ($rs->fields[2] != 'YES'); + $fld->primary_key = ($rs->fields[3] == 'PRI'); + $fld->auto_increment = (strpos($rs->fields[5], 'auto_increment') !== false); + $fld->binary = (strpos($type,'blob') !== false); + $fld->unsigned = (strpos($type,'unsigned') !== false); + + if (!$fld->binary) { + $d = $rs->fields[4]; + if ($d != '' && $d != 'NULL') { + $fld->has_default = true; + $fld->default_value = $d; + } else { + $fld->has_default = false; + } + } + + if ($save == ADODB_FETCH_NUM) { + $retarr[] = $fld; + } else { + $retarr[strtoupper($fld->name)] = $fld; + } + $rs->MoveNext(); + } + + $rs->Close(); + return $retarr; + } + + // returns true or false + function SelectDB($dbName) + { + $this->database = $dbName; + $this->databaseName = $dbName; # obsolete, retained for compat with older adodb versions + if ($this->_connectionID) { + return @mysql_select_db($dbName,$this->_connectionID); + } + else return false; + } + + // parameters use PostgreSQL convention, not MySQL + function &SelectLimit($sql,$nrows=-1,$offset=-1,$inputarr=false,$secs=0) + { + $offsetStr =($offset>=0) ? ((integer)$offset)."," : ''; + // jason judge, see http://phplens.com/lens/lensforum/msgs.php?id=9220 + if ($nrows < 0) $nrows = '18446744073709551615'; + + if ($secs) + $rs =& $this->CacheExecute($secs,$sql." LIMIT $offsetStr".((integer)$nrows),$inputarr); + else + $rs =& $this->Execute($sql." LIMIT $offsetStr".((integer)$nrows),$inputarr); + return $rs; + } + + // returns queryID or false + function _query($sql,$inputarr) + { + //global $ADODB_COUNTRECS; + //if($ADODB_COUNTRECS) + return mysql_query($sql,$this->_connectionID); + //else return @mysql_unbuffered_query($sql,$this->_connectionID); // requires PHP >= 4.0.6 + } + + /* Returns: the last error message from previous database operation */ + function ErrorMsg() + { + + if ($this->_logsql) return $this->_errorMsg; + if (empty($this->_connectionID)) $this->_errorMsg = @mysql_error(); + else $this->_errorMsg = @mysql_error($this->_connectionID); + return $this->_errorMsg; + } + + /* Returns: the last error number from previous database operation */ + function ErrorNo() + { + if ($this->_logsql) return $this->_errorCode; + if (empty($this->_connectionID)) return @mysql_errno(); + else return @mysql_errno($this->_connectionID); + } + + // returns true or false + function _close() + { + @mysql_close($this->_connectionID); + $this->_connectionID = false; + } + + + /* + * Maximum size of C field + */ + function CharMax() + { + return 255; + } + + /* + * Maximum size of X field + */ + function TextMax() + { + return 4294967295; + } + + // "Innox - Juan Carlos Gonzalez" + function MetaForeignKeys( $table, $owner = FALSE, $upper = FALSE, $associative = FALSE ) + { + global $ADODB_FETCH_MODE; + if ($ADODB_FETCH_MODE == ADODB_FETCH_ASSOC || $this->fetchMode == ADODB_FETCH_ASSOC) $associative = true; + + if ( !empty($owner) ) { + $table = "$owner.$table"; + } + $a_create_table = $this->getRow(sprintf('SHOW CREATE TABLE %s', $table)); + if ($associative) $create_sql = $a_create_table["Create Table"]; + else $create_sql = $a_create_table[1]; + + $matches = array(); + + if (!preg_match_all("/FOREIGN KEY \(`(.*?)`\) REFERENCES `(.*?)` \(`(.*?)`\)/", $create_sql, $matches)) return false; + $foreign_keys = array(); + $num_keys = count($matches[0]); + for ( $i = 0; $i < $num_keys; $i ++ ) { + $my_field = explode('`, `', $matches[1][$i]); + $ref_table = $matches[2][$i]; + $ref_field = explode('`, `', $matches[3][$i]); + + if ( $upper ) { + $ref_table = strtoupper($ref_table); + } + + $foreign_keys[$ref_table] = array(); + $num_fields = count($my_field); + for ( $j = 0; $j < $num_fields; $j ++ ) { + if ( $associative ) { + $foreign_keys[$ref_table][$ref_field[$j]] = $my_field[$j]; + } else { + $foreign_keys[$ref_table][] = "{$my_field[$j]}={$ref_field[$j]}"; + } + } + } + + return $foreign_keys; + } + + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + + +class ADORecordSet_mysql extends ADORecordSet{ + + var $databaseType = "mysql"; + var $canSeek = true; + + function ADORecordSet_mysql($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch ($mode) + { + case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break; + case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break; + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH: + default: + $this->fetchMode = MYSQL_BOTH; break; + } + $this->adodbFetchMode = $mode; + $this->ADORecordSet($queryID); + } + + function _initrs() + { + //GLOBAL $ADODB_COUNTRECS; + // $this->_numOfRows = ($ADODB_COUNTRECS) ? @mysql_num_rows($this->_queryID):-1; + $this->_numOfRows = @mysql_num_rows($this->_queryID); + $this->_numOfFields = @mysql_num_fields($this->_queryID); + } + + function &FetchField($fieldOffset = -1) + { + if ($fieldOffset != -1) { + $o = @mysql_fetch_field($this->_queryID, $fieldOffset); + $f = @mysql_field_flags($this->_queryID,$fieldOffset); + $o->max_length = @mysql_field_len($this->_queryID,$fieldOffset); // suggested by: Jim Nicholson (jnich@att.com) + //$o->max_length = -1; // mysql returns the max length less spaces -- so it is unrealiable + $o->binary = (strpos($f,'binary')!== false); + } + else if ($fieldOffset == -1) { /* The $fieldOffset argument is not provided thus its -1 */ + $o = @mysql_fetch_field($this->_queryID); + $o->max_length = @mysql_field_len($this->_queryID); // suggested by: Jim Nicholson (jnich@att.com) + //$o->max_length = -1; // mysql returns the max length less spaces -- so it is unrealiable + } + + return $o; + } + + function &GetRowAssoc($upper=true) + { + if ($this->fetchMode == MYSQL_ASSOC && !$upper) $row = $this->fields; + else $row =& ADORecordSet::GetRowAssoc($upper); + return $row; + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + // added @ by "Michael William Miller" + if ($this->fetchMode != MYSQL_NUM) return @$this->fields[$colname]; + + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + function _seek($row) + { + if ($this->_numOfRows == 0) return false; + return @mysql_data_seek($this->_queryID,$row); + } + + function MoveNext() + { + //return adodb_movenext($this); + //if (defined('ADODB_EXTENSION')) return adodb_movenext($this); + if (@$this->fields = mysql_fetch_array($this->_queryID,$this->fetchMode)) { + $this->_currentRow += 1; + return true; + } + if (!$this->EOF) { + $this->_currentRow += 1; + $this->EOF = true; + } + return false; + } + + function _fetch() + { + $this->fields = @mysql_fetch_array($this->_queryID,$this->fetchMode); + return is_array($this->fields); + } + + function _close() { + @mysql_free_result($this->_queryID); + $this->_queryID = false; + } + + function MetaType($t,$len=-1,$fieldobj=false) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + + $len = -1; // mysql max_length is not accurate + switch (strtoupper($t)) { + case 'STRING': + case 'CHAR': + case 'VARCHAR': + case 'TINYBLOB': + case 'TINYTEXT': + case 'ENUM': + case 'SET': + if ($len <= $this->blobSize) return 'C'; + + case 'TEXT': + case 'LONGTEXT': + case 'MEDIUMTEXT': + return 'X'; + + // php_mysql extension always returns 'blob' even if 'text' + // so we have to check whether binary... + case 'IMAGE': + case 'LONGBLOB': + case 'BLOB': + case 'MEDIUMBLOB': + return !empty($fieldobj->binary) ? 'B' : 'X'; + + case 'YEAR': + case 'DATE': return 'D'; + + case 'TIME': + case 'DATETIME': + case 'TIMESTAMP': return 'T'; + + case 'INT': + case 'INTEGER': + case 'BIGINT': + case 'TINYINT': + case 'MEDIUMINT': + case 'SMALLINT': + + if (!empty($fieldobj->primary_key)) return 'R'; + else return 'I'; + + default: return 'N'; + } + } + +} + +class ADORecordSet_ext_mysql extends ADORecordSet_mysql { + function ADORecordSet_ext_mysql($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch ($mode) + { + case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break; + case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break; + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH: + default: + $this->fetchMode = MYSQL_BOTH; break; + } + $this->adodbFetchMode = $mode; + $this->ADORecordSet($queryID); + } + + function MoveNext() + { + return @adodb_movenext($this); + } +} + + +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-mysqli.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-mysqli.inc.php new file mode 100644 index 0000000..85d5832 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-mysqli.inc.php @@ -0,0 +1,1011 @@ +_transmode = $transaction_mode; + if (empty($transaction_mode)) { + $this->Execute('SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ'); + return; + } + if (!stristr($transaction_mode,'isolation')) $transaction_mode = 'ISOLATION LEVEL '.$transaction_mode; + $this->Execute("SET SESSION TRANSACTION ".$transaction_mode); + } + + // returns true or false + // To add: parameter int $port, + // parameter string $socket + function _connect($argHostname = NULL, + $argUsername = NULL, + $argPassword = NULL, + $argDatabasename = NULL, $persist=false) + { + if(!extension_loaded("mysqli")) { + return null; + } + $this->_connectionID = @mysqli_init(); + + if (is_null($this->_connectionID)) { + // mysqli_init only fails if insufficient memory + if ($this->debug) + ADOConnection::outp("mysqli_init() failed : " . $this->ErrorMsg()); + return false; + } + /* + I suggest a simple fix which would enable adodb and mysqli driver to + read connection options from the standard mysql configuration file + /etc/my.cnf - "Bastien Duclaux" + */ + foreach($this->optionFlags as $arr) { + mysqli_options($this->_connectionID,$arr[0],$arr[1]); + } + + #if (!empty($this->port)) $argHostname .= ":".$this->port; + $ok = mysqli_real_connect($this->_connectionID, + $argHostname, + $argUsername, + $argPassword, + $argDatabasename, + $this->port, + $this->socket, + $this->clientFlags); + + if ($ok) { + if ($argDatabasename) return $this->SelectDB($argDatabasename); + return true; + } else { + if ($this->debug) + ADOConnection::outp("Could't connect : " . $this->ErrorMsg()); + return false; + } + } + + // returns true or false + // How to force a persistent connection + function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename, true); + + } + + // When is this used? Close old connection first? + // In _connect(), check $this->forceNewConnect? + function _nconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + $this->forceNewConnect = true; + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename); + } + + function IfNull( $field, $ifNull ) + { + return " IFNULL($field, $ifNull) "; // if MySQL + } + + function ServerInfo() + { + $arr['description'] = $this->GetOne("select version()"); + $arr['version'] = ADOConnection::_findvers($arr['description']); + return $arr; + } + + + function BeginTrans() + { + if ($this->transOff) return true; + $this->transCnt += 1; + $this->Execute('SET AUTOCOMMIT=0'); + $this->Execute('BEGIN'); + return true; + } + + function CommitTrans($ok=true) + { + if ($this->transOff) return true; + if (!$ok) return $this->RollbackTrans(); + + if ($this->transCnt) $this->transCnt -= 1; + $this->Execute('COMMIT'); + $this->Execute('SET AUTOCOMMIT=1'); + return true; + } + + function RollbackTrans() + { + if ($this->transOff) return true; + if ($this->transCnt) $this->transCnt -= 1; + $this->Execute('ROLLBACK'); + $this->Execute('SET AUTOCOMMIT=1'); + return true; + } + + function RowLock($tables,$where='',$flds='1 as adodb_ignore') + { + if ($this->transCnt==0) $this->BeginTrans(); + if ($where) $where = ' where '.$where; + $rs =& $this->Execute("select $flds from $tables $where for update"); + return !empty($rs); + } + + // if magic quotes disabled, use mysql_real_escape_string() + // From readme.htm: + // Quotes a string to be sent to the database. The $magic_quotes_enabled + // parameter may look funny, but the idea is if you are quoting a + // string extracted from a POST/GET variable, then + // pass get_magic_quotes_gpc() as the second parameter. This will + // ensure that the variable is not quoted twice, once by qstr and once + // by the magic_quotes_gpc. + // + //Eg. $s = $db->qstr(_GET['name'],get_magic_quotes_gpc()); + function qstr($s, $magic_quotes = false) + { + if (!$magic_quotes) { + if (PHP_VERSION >= 5) + return "'" . mysqli_real_escape_string($this->_connectionID, $s) . "'"; + + if ($this->replaceQuote[0] == '\\') + $s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\0"),$s); + return "'".str_replace("'",$this->replaceQuote,$s)."'"; + } + // undo magic quotes for " + $s = str_replace('\\"','"',$s); + return "'$s'"; + } + + function _insertid() + { + $result = @mysqli_insert_id($this->_connectionID); + if ($result == -1){ + if ($this->debug) ADOConnection::outp("mysqli_insert_id() failed : " . $this->ErrorMsg()); + } + return $result; + } + + // Only works for INSERT, UPDATE and DELETE query's + function _affectedrows() + { + $result = @mysqli_affected_rows($this->_connectionID); + if ($result == -1) { + if ($this->debug) ADOConnection::outp("mysqli_affected_rows() failed : " . $this->ErrorMsg()); + } + return $result; + } + + // See http://www.mysql.com/doc/M/i/Miscellaneous_functions.html + // Reference on Last_Insert_ID on the recommended way to simulate sequences + var $_genIDSQL = "update %s set id=LAST_INSERT_ID(id+1);"; + var $_genSeqSQL = "create table %s (id int not null)"; + var $_genSeqCountSQL = "select count(*) from %s"; + var $_genSeq2SQL = "insert into %s values (%s)"; + var $_dropSeqSQL = "drop table %s"; + + function CreateSequence($seqname='adodbseq',$startID=1) + { + if (empty($this->_genSeqSQL)) return false; + $u = strtoupper($seqname); + + $ok = $this->Execute(sprintf($this->_genSeqSQL,$seqname)); + if (!$ok) return false; + return $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1)); + } + + function GenID($seqname='adodbseq',$startID=1) + { + // post-nuke sets hasGenID to false + if (!$this->hasGenID) return false; + + $getnext = sprintf($this->_genIDSQL,$seqname); + $holdtransOK = $this->_transOK; // save the current status + $rs = @$this->Execute($getnext); + if (!$rs) { + if ($holdtransOK) $this->_transOK = true; //if the status was ok before reset + $u = strtoupper($seqname); + $this->Execute(sprintf($this->_genSeqSQL,$seqname)); + // Don't insert a new row if there is already one or if there's an error. + $cnt = $this->GetOne(sprintf($this->_genSeqCountSQL,$seqname)); + if ($cnt !== false && !$cnt) { + $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1)); + } + $rs = $this->Execute($getnext); + } + if ($rs) { + $this->genID = mysqli_insert_id($this->_connectionID); + $rs->Close(); + } else { + $this->genID = 0; + } + + return $this->genID; + } + + function &MetaDatabases() + { + $query = "SHOW DATABASES"; + $ret =& $this->Execute($query); + if ($ret && is_object($ret)){ + $arr = array(); + while (!$ret->EOF){ + $db = $ret->Fields('Database'); + if ($db != 'mysql') $arr[] = $db; + $ret->MoveNext(); + } + return $arr; + } + return $ret; + } + + + function &MetaIndexes ($table, $primary = FALSE) + { + // save old fetch mode + global $ADODB_FETCH_MODE; + + $false = false; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== FALSE) { + $savem = $this->SetFetchMode(FALSE); + } + + // get index details + $rs = $this->Execute(sprintf('SHOW INDEXES FROM %s',$table)); + + // restore fetchmode + if (isset($savem)) { + $this->SetFetchMode($savem); + } + $ADODB_FETCH_MODE = $save; + + if (!is_object($rs)) { + return $false; + } + + $indexes = array (); + + // parse index data into array + while ($row = $rs->FetchRow()) { + if ($primary == FALSE AND $row[2] == 'PRIMARY') { + continue; + } + + if (!isset($indexes[$row[2]])) { + $indexes[$row[2]] = array( + 'unique' => ($row[1] == 0), + 'columns' => array() + ); + } + + $indexes[$row[2]]['columns'][$row[3] - 1] = $row[4]; + } + + // sort columns by order in the index + foreach ( array_keys ($indexes) as $index ) + { + ksort ($indexes[$index]['columns']); + } + + return $indexes; + } + + + // Format date column in sql string given an input format that understands Y M D + function SQLDate($fmt, $col=false) + { + if (!$col) $col = $this->sysTimeStamp; + $s = 'DATE_FORMAT('.$col.",'"; + $concat = false; + $len = strlen($fmt); + for ($i=0; $i < $len; $i++) { + $ch = $fmt[$i]; + switch($ch) { + case 'Y': + case 'y': + $s .= '%Y'; + break; + case 'Q': + case 'q': + $s .= "'),Quarter($col)"; + + if ($len > $i+1) $s .= ",DATE_FORMAT($col,'"; + else $s .= ",('"; + $concat = true; + break; + case 'M': + $s .= '%b'; + break; + + case 'm': + $s .= '%m'; + break; + case 'D': + case 'd': + $s .= '%d'; + break; + + case 'H': + $s .= '%H'; + break; + + case 'h': + $s .= '%I'; + break; + + case 'i': + $s .= '%i'; + break; + + case 's': + $s .= '%s'; + break; + + case 'a': + case 'A': + $s .= '%p'; + break; + + case 'w': + $s .= '%w'; + break; + + case 'l': + $s .= '%W'; + break; + + default: + + if ($ch == '\\') { + $i++; + $ch = substr($fmt,$i,1); + } + $s .= $ch; + break; + } + } + $s.="')"; + if ($concat) $s = "CONCAT($s)"; + return $s; + } + + // returns concatenated string + // much easier to run "mysqld --ansi" or "mysqld --sql-mode=PIPES_AS_CONCAT" and use || operator + function Concat() + { + $s = ""; + $arr = func_get_args(); + + // suggestion by andrew005@mnogo.ru + $s = implode(',',$arr); + if (strlen($s) > 0) return "CONCAT($s)"; + else return ''; + } + + // dayFraction is a day in floating point + function OffsetDate($dayFraction,$date=false) + { + if (!$date) $date = $this->sysDate; + + $fraction = $dayFraction * 24 * 3600; + return $date . ' + INTERVAL ' . $fraction.' SECOND'; + +// return "from_unixtime(unix_timestamp($date)+$fraction)"; + } + + function &MetaTables($ttype=false,$showSchema=false,$mask=false) + { + $save = $this->metaTablesSQL; + if ($showSchema && is_string($showSchema)) { + $this->metaTablesSQL .= " from $showSchema"; + } + + if ($mask) { + $mask = $this->qstr($mask); + $this->metaTablesSQL .= " like $mask"; + } + $ret =& ADOConnection::MetaTables($ttype,$showSchema); + + $this->metaTablesSQL = $save; + return $ret; + } + + // "Innox - Juan Carlos Gonzalez" + function MetaForeignKeys( $table, $owner = FALSE, $upper = FALSE, $associative = FALSE ) + { + global $ADODB_FETCH_MODE; + + if ($ADODB_FETCH_MODE == ADODB_FETCH_ASSOC || $this->fetchMode == ADODB_FETCH_ASSOC) $associative = true; + + if ( !empty($owner) ) { + $table = "$owner.$table"; + } + $a_create_table = $this->getRow(sprintf('SHOW CREATE TABLE %s', $table)); + if ($associative) $create_sql = $a_create_table["Create Table"]; + else $create_sql = $a_create_table[1]; + + $matches = array(); + + if (!preg_match_all("/FOREIGN KEY \(`(.*?)`\) REFERENCES `(.*?)` \(`(.*?)`\)/", $create_sql, $matches)) return false; + $foreign_keys = array(); + $num_keys = count($matches[0]); + for ( $i = 0; $i < $num_keys; $i ++ ) { + $my_field = explode('`, `', $matches[1][$i]); + $ref_table = $matches[2][$i]; + $ref_field = explode('`, `', $matches[3][$i]); + + if ( $upper ) { + $ref_table = strtoupper($ref_table); + } + + $foreign_keys[$ref_table] = array(); + $num_fields = count($my_field); + for ( $j = 0; $j < $num_fields; $j ++ ) { + if ( $associative ) { + $foreign_keys[$ref_table][$ref_field[$j]] = $my_field[$j]; + } else { + $foreign_keys[$ref_table][] = "{$my_field[$j]}={$ref_field[$j]}"; + } + } + } + + return $foreign_keys; + } + + function &MetaColumns($table) + { + $false = false; + if (!$this->metaColumnsSQL) + return $false; + + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== false) + $savem = $this->SetFetchMode(false); + $rs = $this->Execute(sprintf($this->metaColumnsSQL,$table)); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + if (!is_object($rs)) + return $false; + + $retarr = array(); + while (!$rs->EOF) { + $fld = new ADOFieldObject(); + $fld->name = $rs->fields[0]; + $type = $rs->fields[1]; + + // split type into type(length): + $fld->scale = null; + if (preg_match("/^(.+)\((\d+),(\d+)/", $type, $query_array)) { + $fld->type = $query_array[1]; + $fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1; + $fld->scale = is_numeric($query_array[3]) ? $query_array[3] : -1; + } elseif (preg_match("/^(.+)\((\d+)/", $type, $query_array)) { + $fld->type = $query_array[1]; + $fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1; + } elseif (preg_match("/^(enum)\((.*)\)$/i", $type, $query_array)) { + $fld->type = $query_array[1]; + $fld->max_length = max(array_map("strlen",explode(",",$query_array[2]))) - 2; // PHP >= 4.0.6 + $fld->max_length = ($fld->max_length == 0 ? 1 : $fld->max_length); + } else { + $fld->type = $type; + $fld->max_length = -1; + } + $fld->not_null = ($rs->fields[2] != 'YES'); + $fld->primary_key = ($rs->fields[3] == 'PRI'); + $fld->auto_increment = (strpos($rs->fields[5], 'auto_increment') !== false); + $fld->binary = (strpos($type,'blob') !== false); + $fld->unsigned = (strpos($type,'unsigned') !== false); + + if (!$fld->binary) { + $d = $rs->fields[4]; + if ($d != '' && $d != 'NULL') { + $fld->has_default = true; + $fld->default_value = $d; + } else { + $fld->has_default = false; + } + } + + if ($save == ADODB_FETCH_NUM) { + $retarr[] = $fld; + } else { + $retarr[strtoupper($fld->name)] = $fld; + } + $rs->MoveNext(); + } + + $rs->Close(); + return $retarr; + } + + // returns true or false + function SelectDB($dbName) + { +// $this->_connectionID = $this->mysqli_resolve_link($this->_connectionID); + $this->database = $dbName; + $this->databaseName = $dbName; # obsolete, retained for compat with older adodb versions + + if ($this->_connectionID) { + $result = @mysqli_select_db($this->_connectionID, $dbName); + if (!$result) { + ADOConnection::outp("Select of database " . $dbName . " failed. " . $this->ErrorMsg()); + } + return $result; + } + return false; + } + + // parameters use PostgreSQL convention, not MySQL + function &SelectLimit($sql, + $nrows = -1, + $offset = -1, + $inputarr = false, + $arg3 = false, + $secs = 0) + { + $offsetStr = ($offset >= 0) ? "$offset," : ''; + if ($nrows < 0) $nrows = '18446744073709551615'; + + if ($secs) + $rs =& $this->CacheExecute($secs, $sql . " LIMIT $offsetStr$nrows" , $inputarr , $arg3); + else + $rs =& $this->Execute($sql . " LIMIT $offsetStr$nrows" , $inputarr , $arg3); + + return $rs; + } + + + function Prepare($sql) + { + return $sql; + + $stmt = $this->_connectionID->prepare($sql); + if (!$stmt) { + echo $this->ErrorMsg(); + return $sql; + } + return array($sql,$stmt); + } + + + // returns queryID or false + function _query($sql, $inputarr) + { + global $ADODB_COUNTRECS; + + if (is_array($sql)) { + $stmt = $sql[1]; + $a = ''; + foreach($inputarr as $k => $v) { + if (is_string($v)) $a .= 's'; + else if (is_integer($v)) $a .= 'i'; + else $a .= 'd'; + } + + $fnarr = array_merge( array($stmt,$a) , $inputarr); + $ret = call_user_func_array('mysqli_stmt_bind_param',$fnarr); + + $ret = mysqli_stmt_execute($stmt); + return $ret; + } + if (!$mysql_res = mysqli_query($this->_connectionID, $sql, ($ADODB_COUNTRECS) ? MYSQLI_STORE_RESULT : MYSQLI_USE_RESULT)) { + if ($this->debug) ADOConnection::outp("Query: " . $sql . " failed. " . $this->ErrorMsg()); + return false; + } + + return $mysql_res; + } + + /* Returns: the last error message from previous database operation */ + function ErrorMsg() + { + if (empty($this->_connectionID)) + $this->_errorMsg = @mysqli_connect_error(); + else + $this->_errorMsg = @mysqli_error($this->_connectionID); + return $this->_errorMsg; + } + + /* Returns: the last error number from previous database operation */ + function ErrorNo() + { + if (empty($this->_connectionID)) + return @mysqli_connect_errno(); + else + return @mysqli_errno($this->_connectionID); + } + + // returns true or false + function _close() + { + @mysqli_close($this->_connectionID); + $this->_connectionID = false; + } + + /* + * Maximum size of C field + */ + function CharMax() + { + return 255; + } + + /* + * Maximum size of X field + */ + function TextMax() + { + return 4294967295; + } + + + + // this is a set of functions for managing client encoding - very important if the encodings + // of your database and your output target (i.e. HTML) don't match + // for instance, you may have UTF8 database and server it on-site as latin1 etc. + // GetCharSet - get the name of the character set the client is using now + // Under Windows, the functions should work with MySQL 4.1.11 and above, the set of charsets supported + // depends on compile flags of mysql distribution + + function GetCharSet() + { + //we will use ADO's builtin property charSet + if (!method_exists($this->_connectionID,'character_set_name')) + return false; + + $this->charSet = @$this->_connectionID->character_set_name(); + if (!$this->charSet) { + return false; + } else { + return $this->charSet; + } + } + + // SetCharSet - switch the client encoding + function SetCharSet($charset_name) + { + if (!method_exists($this->_connectionID,'set_charset')) + return false; + + if ($this->charSet !== $charset_name) { + $if = @$this->_connectionID->set_charset($charset_name); + if ($if == "0" & $this->GetCharSet() == $charset_name) { + return true; + } else return false; + } else return true; + } + + + + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordSet_mysqli extends ADORecordSet{ + + var $databaseType = "mysqli"; + var $canSeek = true; + + function ADORecordSet_mysqli($queryID, $mode = false) + { + if ($mode === false) + { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + + switch ($mode) + { + case ADODB_FETCH_NUM: + $this->fetchMode = MYSQLI_NUM; + break; + case ADODB_FETCH_ASSOC: + $this->fetchMode = MYSQLI_ASSOC; + break; + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH: + default: + $this->fetchMode = MYSQLI_BOTH; + break; + } + $this->adodbFetchMode = $mode; + $this->ADORecordSet($queryID); + } + + function _initrs() + { + global $ADODB_COUNTRECS; + + $this->_numOfRows = $ADODB_COUNTRECS ? @mysqli_num_rows($this->_queryID) : -1; + $this->_numOfFields = @mysqli_num_fields($this->_queryID); + } + +/* +1 = MYSQLI_NOT_NULL_FLAG +2 = MYSQLI_PRI_KEY_FLAG +4 = MYSQLI_UNIQUE_KEY_FLAG +8 = MYSQLI_MULTIPLE_KEY_FLAG +16 = MYSQLI_BLOB_FLAG +32 = MYSQLI_UNSIGNED_FLAG +64 = MYSQLI_ZEROFILL_FLAG +128 = MYSQLI_BINARY_FLAG +256 = MYSQLI_ENUM_FLAG +512 = MYSQLI_AUTO_INCREMENT_FLAG +1024 = MYSQLI_TIMESTAMP_FLAG +2048 = MYSQLI_SET_FLAG +32768 = MYSQLI_NUM_FLAG +16384 = MYSQLI_PART_KEY_FLAG +32768 = MYSQLI_GROUP_FLAG +65536 = MYSQLI_UNIQUE_FLAG +131072 = MYSQLI_BINCMP_FLAG +*/ + + function &FetchField($fieldOffset = -1) + { + $fieldnr = $fieldOffset; + if ($fieldOffset != -1) { + $fieldOffset = mysqli_field_seek($this->_queryID, $fieldnr); + } + $o = mysqli_fetch_field($this->_queryID); + /* Properties of an ADOFieldObject as set by MetaColumns */ + $o->primary_key = $o->flags & MYSQLI_PRI_KEY_FLAG; + $o->not_null = $o->flags & MYSQLI_NOT_NULL_FLAG; + $o->auto_increment = $o->flags & MYSQLI_AUTO_INCREMENT_FLAG; + $o->binary = $o->flags & MYSQLI_BINARY_FLAG; + // $o->blob = $o->flags & MYSQLI_BLOB_FLAG; /* not returned by MetaColumns */ + $o->unsigned = $o->flags & MYSQLI_UNSIGNED_FLAG; + + return $o; + } + + function &GetRowAssoc($upper = true) + { + if ($this->fetchMode == MYSQLI_ASSOC && !$upper) + return $this->fields; + $row =& ADORecordSet::GetRowAssoc($upper); + return $row; + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + if ($this->fetchMode != MYSQLI_NUM) + return @$this->fields[$colname]; + + if (!$this->bind) { + $this->bind = array(); + for ($i = 0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + function _seek($row) + { + if ($this->_numOfRows == 0) + return false; + + if ($row < 0) + return false; + + mysqli_data_seek($this->_queryID, $row); + $this->EOF = false; + return true; + } + + // 10% speedup to move MoveNext to child class + // This is the only implementation that works now (23-10-2003). + // Other functions return no or the wrong results. + function MoveNext() + { + if ($this->EOF) return false; + $this->_currentRow++; + $this->fields = @mysqli_fetch_array($this->_queryID,$this->fetchMode); + + if (is_array($this->fields)) return true; + $this->EOF = true; + return false; + } + + function _fetch() + { + $this->fields = mysqli_fetch_array($this->_queryID,$this->fetchMode); + return is_array($this->fields); + } + + function _close() + { + mysqli_free_result($this->_queryID); + $this->_queryID = false; + } + +/* + +0 = MYSQLI_TYPE_DECIMAL +1 = MYSQLI_TYPE_CHAR +1 = MYSQLI_TYPE_TINY +2 = MYSQLI_TYPE_SHORT +3 = MYSQLI_TYPE_LONG +4 = MYSQLI_TYPE_FLOAT +5 = MYSQLI_TYPE_DOUBLE +6 = MYSQLI_TYPE_NULL +7 = MYSQLI_TYPE_TIMESTAMP +8 = MYSQLI_TYPE_LONGLONG +9 = MYSQLI_TYPE_INT24 +10 = MYSQLI_TYPE_DATE +11 = MYSQLI_TYPE_TIME +12 = MYSQLI_TYPE_DATETIME +13 = MYSQLI_TYPE_YEAR +14 = MYSQLI_TYPE_NEWDATE +247 = MYSQLI_TYPE_ENUM +248 = MYSQLI_TYPE_SET +249 = MYSQLI_TYPE_TINY_BLOB +250 = MYSQLI_TYPE_MEDIUM_BLOB +251 = MYSQLI_TYPE_LONG_BLOB +252 = MYSQLI_TYPE_BLOB +253 = MYSQLI_TYPE_VAR_STRING +254 = MYSQLI_TYPE_STRING +255 = MYSQLI_TYPE_GEOMETRY +*/ + + function MetaType($t, $len = -1, $fieldobj = false) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + + + $len = -1; // mysql max_length is not accurate + switch (strtoupper($t)) { + case 'STRING': + case 'CHAR': + case 'VARCHAR': + case 'TINYBLOB': + case 'TINYTEXT': + case 'ENUM': + case 'SET': + + case MYSQLI_TYPE_TINY_BLOB : + case MYSQLI_TYPE_CHAR : + case MYSQLI_TYPE_STRING : + case MYSQLI_TYPE_ENUM : + case MYSQLI_TYPE_SET : + case 253 : + if ($len <= $this->blobSize) return 'C'; + + case 'TEXT': + case 'LONGTEXT': + case 'MEDIUMTEXT': + return 'X'; + + + // php_mysql extension always returns 'blob' even if 'text' + // so we have to check whether binary... + case 'IMAGE': + case 'LONGBLOB': + case 'BLOB': + case 'MEDIUMBLOB': + + case MYSQLI_TYPE_BLOB : + case MYSQLI_TYPE_LONG_BLOB : + case MYSQLI_TYPE_MEDIUM_BLOB : + + return !empty($fieldobj->binary) ? 'B' : 'X'; + case 'YEAR': + case 'DATE': + case MYSQLI_TYPE_DATE : + case MYSQLI_TYPE_YEAR : + + return 'D'; + + case 'TIME': + case 'DATETIME': + case 'TIMESTAMP': + + case MYSQLI_TYPE_DATETIME : + case MYSQLI_TYPE_NEWDATE : + case MYSQLI_TYPE_TIME : + case MYSQLI_TYPE_TIMESTAMP : + + return 'T'; + + case 'INT': + case 'INTEGER': + case 'BIGINT': + case 'TINYINT': + case 'MEDIUMINT': + case 'SMALLINT': + + case MYSQLI_TYPE_INT24 : + case MYSQLI_TYPE_LONG : + case MYSQLI_TYPE_LONGLONG : + case MYSQLI_TYPE_SHORT : + case MYSQLI_TYPE_TINY : + + if (!empty($fieldobj->primary_key)) return 'R'; + + return 'I'; + + + // Added floating-point types + // Maybe not necessery. + case 'FLOAT': + case 'DOUBLE': + // case 'DOUBLE PRECISION': + case 'DECIMAL': + case 'DEC': + case 'FIXED': + default: + //if (!is_numeric($t)) echo "

--- Error in type matching $t -----

"; + return 'N'; + } + } // function + + +} // rs class + +} + +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-mysqlt.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-mysqlt.inc.php new file mode 100644 index 0000000..0cc122e --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-mysqlt.inc.php @@ -0,0 +1,155 @@ + + + Requires mysql client. Works on Windows and Unix. +*/ + +// security - hide paths +if (!defined('ADODB_DIR')) die(); + +include_once(ADODB_DIR."/drivers/adodb-mysql.inc.php"); + + +class ADODB_mysqlt extends ADODB_mysql { + var $databaseType = 'mysqlt'; + var $ansiOuter = true; // for Version 3.23.17 or later + var $hasTransactions = true; + var $autoRollback = true; // apparently mysql does not autorollback properly + + function ADODB_mysqlt() + { + global $ADODB_EXTENSION; if ($ADODB_EXTENSION) $this->rsPrefix .= 'ext_'; + } + + /* set transaction mode + + SET [GLOBAL | SESSION] TRANSACTION ISOLATION LEVEL +{ READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE } + + */ + function SetTransactionMode( $transaction_mode ) + { + $this->_transmode = $transaction_mode; + if (empty($transaction_mode)) { + $this->Execute('SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ'); + return; + } + if (!stristr($transaction_mode,'isolation')) $transaction_mode = 'ISOLATION LEVEL '.$transaction_mode; + $this->Execute("SET SESSION TRANSACTION ".$transaction_mode); + } + + function BeginTrans() + { + if ($this->transOff) return true; + $this->transCnt += 1; + $this->Execute('SET AUTOCOMMIT=0'); + $this->Execute('BEGIN'); + return true; + } + + function CommitTrans($ok=true) + { + if ($this->transOff) return true; + if (!$ok) return $this->RollbackTrans(); + + if ($this->transCnt) $this->transCnt -= 1; + $this->Execute('COMMIT'); + $this->Execute('SET AUTOCOMMIT=1'); + return true; + } + + function RollbackTrans() + { + if ($this->transOff) return true; + if ($this->transCnt) $this->transCnt -= 1; + $this->Execute('ROLLBACK'); + $this->Execute('SET AUTOCOMMIT=1'); + return true; + } + + function RowLock($tables,$where='',$flds='1 as adodb_ignore') + { + if ($this->transCnt==0) $this->BeginTrans(); + if ($where) $where = ' where '.$where; + $rs =& $this->Execute("select $flds from $tables $where for update"); + return !empty($rs); + } + +} + +class ADORecordSet_mysqlt extends ADORecordSet_mysql{ + var $databaseType = "mysqlt"; + + function ADORecordSet_mysqlt($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + + switch ($mode) + { + case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break; + case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break; + + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH: + default: $this->fetchMode = MYSQL_BOTH; break; + } + + $this->adodbFetchMode = $mode; + $this->ADORecordSet($queryID); + } + + function MoveNext() + { + if (@$this->fields = mysql_fetch_array($this->_queryID,$this->fetchMode)) { + $this->_currentRow += 1; + return true; + } + if (!$this->EOF) { + $this->_currentRow += 1; + $this->EOF = true; + } + return false; + } +} + +class ADORecordSet_ext_mysqlt extends ADORecordSet_mysqlt { + + function ADORecordSet_ext_mysqlt($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch ($mode) + { + case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break; + case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break; + + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH: + default: + $this->fetchMode = MYSQL_BOTH; break; + } + $this->adodbFetchMode = $mode; + $this->ADORecordSet($queryID); + } + + function MoveNext() + { + return adodb_movenext($this); + } +} + +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-oci8.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-oci8.inc.php new file mode 100644 index 0000000..6dae98c --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-oci8.inc.php @@ -0,0 +1,1502 @@ + + + 13 Nov 2000 jlim - removed all ora_* references. +*/ + +// security - hide paths +if (!defined('ADODB_DIR')) die(); + +/* +NLS_Date_Format +Allows you to use a date format other than the Oracle Lite default. When a literal +character string appears where a date value is expected, the Oracle Lite database +tests the string to see if it matches the formats of Oracle, SQL-92, or the value +specified for this parameter in the POLITE.INI file. Setting this parameter also +defines the default format used in the TO_CHAR or TO_DATE functions when no +other format string is supplied. + +For Oracle the default is dd-mon-yy or dd-mon-yyyy, and for SQL-92 the default is +yy-mm-dd or yyyy-mm-dd. + +Using 'RR' in the format forces two-digit years less than or equal to 49 to be +interpreted as years in the 21st century (20002049), and years over 50 as years in +the 20th century (19501999). Setting the RR format as the default for all two-digit +year entries allows you to become year-2000 compliant. For example: +NLS_DATE_FORMAT='RR-MM-DD' + +You can also modify the date format using the ALTER SESSION command. +*/ + +# define the LOB descriptor type for the given type +# returns false if no LOB descriptor +function oci_lob_desc($type) { + switch ($type) { + case OCI_B_BFILE: $result = OCI_D_FILE; break; + case OCI_B_CFILEE: $result = OCI_D_FILE; break; + case OCI_B_CLOB: $result = OCI_D_LOB; break; + case OCI_B_BLOB: $result = OCI_D_LOB; break; + case OCI_B_ROWID: $result = OCI_D_ROWID; break; + default: $result = false; break; + } + return $result; +} + +class ADODB_oci8 extends ADOConnection { + var $databaseType = 'oci8'; + var $dataProvider = 'oci8'; + var $replaceQuote = "''"; // string to use to replace quotes + var $concat_operator='||'; + var $sysDate = "TRUNC(SYSDATE)"; + var $sysTimeStamp = 'SYSDATE'; + var $metaDatabasesSQL = "SELECT USERNAME FROM ALL_USERS WHERE USERNAME NOT IN ('SYS','SYSTEM','DBSNMP','OUTLN') ORDER BY 1"; + var $_stmt; + var $_commit = OCI_COMMIT_ON_SUCCESS; + var $_initdate = true; // init date to YYYY-MM-DD + var $metaTablesSQL = "select table_name,table_type from cat where table_type in ('TABLE','VIEW') and table_name not like 'BIN\$%'"; // bin$ tables are recycle bin tables + var $metaColumnsSQL = "select cname,coltype,width, SCALE, PRECISION, NULLS, DEFAULTVAL from col where tname='%s' order by colno"; //changed by smondino@users.sourceforge. net + var $_bindInputArray = true; + var $hasGenID = true; + var $_genIDSQL = "SELECT (%s.nextval) FROM DUAL"; + var $_genSeqSQL = "CREATE SEQUENCE %s START WITH %s"; + var $_dropSeqSQL = "DROP SEQUENCE %s"; + var $hasAffectedRows = true; + var $random = "abs(mod(DBMS_RANDOM.RANDOM,10000001)/10000000)"; + var $noNullStrings = false; + var $connectSID = false; + var $_bind = false; + var $_nestedSQL = true; + var $_hasOCIFetchStatement = false; + var $_getarray = false; // currently not working + var $leftOuter = ''; // oracle wierdness, $col = $value (+) for LEFT OUTER, $col (+)= $value for RIGHT OUTER + var $session_sharing_force_blob = false; // alter session on updateblob if set to true + var $firstrows = true; // enable first rows optimization on SelectLimit() + var $selectOffsetAlg1 = 100; // when to use 1st algorithm of selectlimit. + var $NLS_DATE_FORMAT = 'YYYY-MM-DD'; // To include time, use 'RRRR-MM-DD HH24:MI:SS' + var $useDBDateFormatForTextInput=false; + var $datetime = false; // MetaType('DATE') returns 'D' (datetime==false) or 'T' (datetime == true) + var $_refLOBs = array(); + + // var $ansiOuter = true; // if oracle9 + + function ADODB_oci8() + { + $this->_hasOCIFetchStatement = ADODB_PHPVER >= 0x4200; + if (defined('ADODB_EXTENSION')) $this->rsPrefix .= 'ext_'; + } + + /* Function &MetaColumns($table) added by smondino@users.sourceforge.net*/ + function &MetaColumns($table) + { + global $ADODB_FETCH_MODE; + + $false = false; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + + $rs = $this->Execute(sprintf($this->metaColumnsSQL,strtoupper($table))); + + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + if (!$rs) { + return $false; + } + $retarr = array(); + while (!$rs->EOF) { //print_r($rs->fields); + $fld = new ADOFieldObject(); + $fld->name = $rs->fields[0]; + $fld->type = $rs->fields[1]; + $fld->max_length = $rs->fields[2]; + $fld->scale = $rs->fields[3]; + if ($rs->fields[1] == 'NUMBER') { + if ($rs->fields[3] == 0) $fld->type = 'INT'; + $fld->max_length = $rs->fields[4]; + } + $fld->not_null = (strncmp($rs->fields[5], 'NOT',3) === 0); + $fld->binary = (strpos($fld->type,'BLOB') !== false); + $fld->default_value = $rs->fields[6]; + + if ($ADODB_FETCH_MODE == ADODB_FETCH_NUM) $retarr[] = $fld; + else $retarr[strtoupper($fld->name)] = $fld; + $rs->MoveNext(); + } + $rs->Close(); + if (empty($retarr)) + return $false; + else + return $retarr; + } + + function Time() + { + $rs =& $this->Execute("select TO_CHAR($this->sysTimeStamp,'YYYY-MM-DD HH24:MI:SS') from dual"); + if ($rs && !$rs->EOF) return $this->UnixTimeStamp(reset($rs->fields)); + + return false; + } + +/* + + Multiple modes of connection are supported: + + a. Local Database + $conn->Connect(false,'scott','tiger'); + + b. From tnsnames.ora + $conn->Connect(false,'scott','tiger',$tnsname); + $conn->Connect($tnsname,'scott','tiger'); + + c. Server + service name + $conn->Connect($serveraddress,'scott,'tiger',$service_name); + + d. Server + SID + $conn->connectSID = true; + $conn->Connect($serveraddress,'scott,'tiger',$SID); + + +Example TNSName: +--------------- +NATSOFT.DOMAIN = + (DESCRIPTION = + (ADDRESS_LIST = + (ADDRESS = (PROTOCOL = TCP)(HOST = kermit)(PORT = 1523)) + ) + (CONNECT_DATA = + (SERVICE_NAME = natsoft.domain) + ) + ) + + There are 3 connection modes, 0 = non-persistent, 1 = persistent, 2 = force new connection + +*/ + function _connect($argHostname, $argUsername, $argPassword, $argDatabasename,$mode=0) + { + if (!function_exists('OCIPLogon')) return null; + + + $this->_errorMsg = false; + $this->_errorCode = false; + + if($argHostname) { // added by Jorma Tuomainen + if (empty($argDatabasename)) $argDatabasename = $argHostname; + else { + if(strpos($argHostname,":")) { + $argHostinfo=explode(":",$argHostname); + $argHostname=$argHostinfo[0]; + $argHostport=$argHostinfo[1]; + } else { + $argHostport = empty($this->port)? "1521" : $this->port; + } + + if ($this->connectSID) { + $argDatabasename="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=".$argHostname + .")(PORT=$argHostport))(CONNECT_DATA=(SID=$argDatabasename)))"; + } else + $argDatabasename="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=".$argHostname + .")(PORT=$argHostport))(CONNECT_DATA=(SERVICE_NAME=$argDatabasename)))"; + } + } + + //if ($argHostname) print "

Connect: 1st argument should be left blank for $this->databaseType

"; + if ($mode==1) { + $this->_connectionID = ($this->charSet) ? + OCIPLogon($argUsername,$argPassword, $argDatabasename) + : + OCIPLogon($argUsername,$argPassword, $argDatabasename, $this->charSet) + ; + if ($this->_connectionID && $this->autoRollback) OCIrollback($this->_connectionID); + } else if ($mode==2) { + $this->_connectionID = ($this->charSet) ? + OCINLogon($argUsername,$argPassword, $argDatabasename) + : + OCINLogon($argUsername,$argPassword, $argDatabasename, $this->charSet); + + } else { + $this->_connectionID = ($this->charSet) ? + OCILogon($argUsername,$argPassword, $argDatabasename) + : + OCILogon($argUsername,$argPassword, $argDatabasename,$this->charSet); + } + if (!$this->_connectionID) return false; + if ($this->_initdate) { + $this->Execute("ALTER SESSION SET NLS_DATE_FORMAT='".$this->NLS_DATE_FORMAT."'"); + } + + // looks like: + // Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production With the Partitioning option JServer Release 8.1.7.0.0 - Production + // $vers = OCIServerVersion($this->_connectionID); + // if (strpos($vers,'8i') !== false) $this->ansiOuter = true; + return true; + } + + function ServerInfo() + { + $arr['compat'] = $this->GetOne('select value from sys.database_compatible_level'); + $arr['description'] = @OCIServerVersion($this->_connectionID); + $arr['version'] = ADOConnection::_findvers($arr['description']); + return $arr; + } + // returns true or false + function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename,1); + } + + // returns true or false + function _nconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename,2); + } + + function _affectedrows() + { + if (is_resource($this->_stmt)) return @OCIRowCount($this->_stmt); + return 0; + } + + function IfNull( $field, $ifNull ) + { + return " NVL($field, $ifNull) "; // if Oracle + } + + // format and return date string in database date format + function DBDate($d) + { + if (empty($d) && $d !== 0) return 'null'; + + if (is_string($d)) $d = ADORecordSet::UnixDate($d); + return "TO_DATE(".adodb_date($this->fmtDate,$d).",'".$this->NLS_DATE_FORMAT."')"; + } + + function BindDate($d) + { + $d = ADOConnection::DBDate($d); + if (strncmp($d,"'",1)) return $d; + + return substr($d,1,strlen($d)-2); + } + + function BindTimeStamp($d) + { + $d = ADOConnection::DBTimeStamp($d); + if (strncmp($d,"'",1)) return $d; + + return substr($d,1,strlen($d)-2); + } + + // format and return date string in database timestamp format + function DBTimeStamp($ts) + { + if (empty($ts) && $ts !== 0) return 'null'; + if (is_string($ts)) $ts = ADORecordSet::UnixTimeStamp($ts); + return 'TO_DATE('.adodb_date($this->fmtTimeStamp,$ts).",'RRRR-MM-DD, HH:MI:SS AM')"; + } + + function RowLock($tables,$where,$flds='1 as ignore') + { + if ($this->autoCommit) $this->BeginTrans(); + return $this->GetOne("select $flds from $tables where $where for update"); + } + + function &MetaTables($ttype=false,$showSchema=false,$mask=false) + { + if ($mask) { + $save = $this->metaTablesSQL; + $mask = $this->qstr(strtoupper($mask)); + $this->metaTablesSQL .= " AND upper(table_name) like $mask"; + } + $ret =& ADOConnection::MetaTables($ttype,$showSchema); + + if ($mask) { + $this->metaTablesSQL = $save; + } + return $ret; + } + + // Mark Newnham + function &MetaIndexes ($table, $primary = FALSE, $owner=false) + { + // save old fetch mode + global $ADODB_FETCH_MODE; + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + + if ($this->fetchMode !== FALSE) { + $savem = $this->SetFetchMode(FALSE); + } + + // get index details + $table = strtoupper($table); + + // get Primary index + $primary_key = ''; + + $false = false; + $rs = $this->Execute(sprintf("SELECT * FROM ALL_CONSTRAINTS WHERE UPPER(TABLE_NAME)='%s' AND CONSTRAINT_TYPE='P'",$table)); + if ($row = $rs->FetchRow()) + $primary_key = $row[1]; //constraint_name + + if ($primary==TRUE && $primary_key=='') { + if (isset($savem)) + $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + return $false; //There is no primary key + } + + $rs = $this->Execute(sprintf("SELECT ALL_INDEXES.INDEX_NAME, ALL_INDEXES.UNIQUENESS, ALL_IND_COLUMNS.COLUMN_POSITION, ALL_IND_COLUMNS.COLUMN_NAME FROM ALL_INDEXES,ALL_IND_COLUMNS WHERE UPPER(ALL_INDEXES.TABLE_NAME)='%s' AND ALL_IND_COLUMNS.INDEX_NAME=ALL_INDEXES.INDEX_NAME",$table)); + + + if (!is_object($rs)) { + if (isset($savem)) + $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + return $false; + } + + $indexes = array (); + // parse index data into array + + while ($row = $rs->FetchRow()) { + if ($primary && $row[0] != $primary_key) continue; + if (!isset($indexes[$row[0]])) { + $indexes[$row[0]] = array( + 'unique' => ($row[1] == 'UNIQUE'), + 'columns' => array() + ); + } + $indexes[$row[0]]['columns'][$row[2] - 1] = $row[3]; + } + + // sort columns by order in the index + foreach ( array_keys ($indexes) as $index ) { + ksort ($indexes[$index]['columns']); + } + + if (isset($savem)) { + $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + } + return $indexes; + } + + function BeginTrans() + { + if ($this->transOff) return true; + $this->transCnt += 1; + $this->autoCommit = false; + $this->_commit = OCI_DEFAULT; + + if ($this->_transmode) $this->Execute("SET TRANSACTION ".$this->_transmode); + return true; + } + + function CommitTrans($ok=true) + { + if ($this->transOff) return true; + if (!$ok) return $this->RollbackTrans(); + + if ($this->transCnt) $this->transCnt -= 1; + $ret = OCIcommit($this->_connectionID); + $this->_commit = OCI_COMMIT_ON_SUCCESS; + $this->autoCommit = true; + return $ret; + } + + function RollbackTrans() + { + if ($this->transOff) return true; + if ($this->transCnt) $this->transCnt -= 1; + $ret = OCIrollback($this->_connectionID); + $this->_commit = OCI_COMMIT_ON_SUCCESS; + $this->autoCommit = true; + return $ret; + } + + + function SelectDB($dbName) + { + return false; + } + + function ErrorMsg() + { + if ($this->_errorMsg !== false) return $this->_errorMsg; + + if (is_resource($this->_stmt)) $arr = @OCIerror($this->_stmt); + if (empty($arr)) { + $arr = @OCIerror($this->_connectionID); + if ($arr === false) $arr = @OCIError(); + if ($arr === false) return ''; + } + $this->_errorMsg = $arr['message']; + $this->_errorCode = $arr['code']; + return $this->_errorMsg; + } + + function ErrorNo() + { + if ($this->_errorCode !== false) return $this->_errorCode; + + if (is_resource($this->_stmt)) $arr = @OCIError($this->_stmt); + if (empty($arr)) { + $arr = @OCIError($this->_connectionID); + if ($arr == false) $arr = @OCIError(); + if ($arr == false) return ''; + } + + $this->_errorMsg = $arr['message']; + $this->_errorCode = $arr['code']; + + return $arr['code']; + } + + // Format date column in sql string given an input format that understands Y M D + function SQLDate($fmt, $col=false) + { + if (!$col) $col = $this->sysTimeStamp; + $s = 'TO_CHAR('.$col.",'"; + + $len = strlen($fmt); + for ($i=0; $i < $len; $i++) { + $ch = $fmt[$i]; + switch($ch) { + case 'Y': + case 'y': + $s .= 'YYYY'; + break; + case 'Q': + case 'q': + $s .= 'Q'; + break; + + case 'M': + $s .= 'Mon'; + break; + + case 'm': + $s .= 'MM'; + break; + case 'D': + case 'd': + $s .= 'DD'; + break; + + case 'H': + $s.= 'HH24'; + break; + + case 'h': + $s .= 'HH'; + break; + + case 'i': + $s .= 'MI'; + break; + + case 's': + $s .= 'SS'; + break; + + case 'a': + case 'A': + $s .= 'AM'; + break; + + case 'w': + $s .= 'D'; + break; + + case 'l': + $s .= 'DAY'; + break; + + case 'W': + $s .= 'WW'; + break; + + default: + // handle escape characters... + if ($ch == '\\') { + $i++; + $ch = substr($fmt,$i,1); + } + if (strpos('-/.:;, ',$ch) !== false) $s .= $ch; + else $s .= '"'.$ch.'"'; + + } + } + return $s. "')"; + } + + + /* + This algorithm makes use of + + a. FIRST_ROWS hint + The FIRST_ROWS hint explicitly chooses the approach to optimize response time, + that is, minimum resource usage to return the first row. Results will be returned + as soon as they are identified. + + b. Uses rownum tricks to obtain only the required rows from a given offset. + As this uses complicated sql statements, we only use this if the $offset >= 100. + This idea by Tomas V V Cox. + + This implementation does not appear to work with oracle 8.0.5 or earlier. Comment + out this function then, and the slower SelectLimit() in the base class will be used. + */ + function &SelectLimit($sql,$nrows=-1,$offset=-1, $inputarr=false,$secs2cache=0) + { + // seems that oracle only supports 1 hint comment in 8i + if ($this->firstrows) { + if (strpos($sql,'/*+') !== false) + $sql = str_replace('/*+ ','/*+FIRST_ROWS ',$sql); + else + $sql = preg_replace('/^[ \t\n]*select/i','SELECT /*+FIRST_ROWS*/',$sql); + } + + if ($offset < $this->selectOffsetAlg1) { + if ($nrows > 0) { + if ($offset > 0) $nrows += $offset; + //$inputarr['adodb_rownum'] = $nrows; + if ($this->databaseType == 'oci8po') { + $sql = "select * from (".$sql.") where rownum <= ?"; + } else { + $sql = "select * from (".$sql.") where rownum <= :adodb_offset"; + } + $inputarr['adodb_offset'] = $nrows; + $nrows = -1; + } + // note that $nrows = 0 still has to work ==> no rows returned + + $rs =& ADOConnection::SelectLimit($sql,$nrows,$offset,$inputarr,$secs2cache); + return $rs; + + } else { + // Algorithm by Tomas V V Cox, from PEAR DB oci8.php + + // Let Oracle return the name of the columns + $q_fields = "SELECT * FROM (".$sql.") WHERE NULL = NULL"; + + $false = false; + if (! $stmt_arr = $this->Prepare($q_fields)) { + return $false; + } + $stmt = $stmt_arr[1]; + + if (is_array($inputarr)) { + foreach($inputarr as $k => $v) { + if (is_array($v)) { + if (sizeof($v) == 2) // suggested by g.giunta@libero. + OCIBindByName($stmt,":$k",$inputarr[$k][0],$v[1]); + else + OCIBindByName($stmt,":$k",$inputarr[$k][0],$v[1],$v[2]); + } else { + $len = -1; + if ($v === ' ') $len = 1; + if (isset($bindarr)) { // is prepared sql, so no need to ocibindbyname again + $bindarr[$k] = $v; + } else { // dynamic sql, so rebind every time + OCIBindByName($stmt,":$k",$inputarr[$k],$len); + } + } + } + } + + if (!OCIExecute($stmt, OCI_DEFAULT)) { + OCIFreeStatement($stmt); + return $false; + } + + $ncols = OCINumCols($stmt); + for ( $i = 1; $i <= $ncols; $i++ ) { + $cols[] = '"'.OCIColumnName($stmt, $i).'"'; + } + $result = false; + + OCIFreeStatement($stmt); + $fields = implode(',', $cols); + $nrows += $offset; + $offset += 1; // in Oracle rownum starts at 1 + + if ($this->databaseType == 'oci8po') { + $sql = "SELECT $fields FROM". + "(SELECT rownum as adodb_rownum, $fields FROM". + " ($sql) WHERE rownum <= ?". + ") WHERE adodb_rownum >= ?"; + } else { + $sql = "SELECT $fields FROM". + "(SELECT rownum as adodb_rownum, $fields FROM". + " ($sql) WHERE rownum <= :adodb_nrows". + ") WHERE adodb_rownum >= :adodb_offset"; + } + $inputarr['adodb_nrows'] = $nrows; + $inputarr['adodb_offset'] = $offset; + + if ($secs2cache>0) $rs =& $this->CacheExecute($secs2cache, $sql,$inputarr); + else $rs =& $this->Execute($sql,$inputarr); + return $rs; + } + + } + + /** + * Usage: + * Store BLOBs and CLOBs + * + * Example: to store $var in a blob + * + * $conn->Execute('insert into TABLE (id,ablob) values(12,empty_blob())'); + * $conn->UpdateBlob('TABLE', 'ablob', $varHoldingBlob, 'ID=12', 'BLOB'); + * + * $blobtype supports 'BLOB' and 'CLOB', but you need to change to 'empty_clob()'. + * + * to get length of LOB: + * select DBMS_LOB.GETLENGTH(ablob) from TABLE + * + * If you are using CURSOR_SHARING = force, it appears this will case a segfault + * under oracle 8.1.7.0. Run: + * $db->Execute('ALTER SESSION SET CURSOR_SHARING=EXACT'); + * before UpdateBlob() then... + */ + + function UpdateBlob($table,$column,$val,$where,$blobtype='BLOB') + { + + //if (strlen($val) < 4000) return $this->Execute("UPDATE $table SET $column=:blob WHERE $where",array('blob'=>$val)) != false; + + switch(strtoupper($blobtype)) { + default: ADOConnection::outp("UpdateBlob: Unknown blobtype=$blobtype"); return false; + case 'BLOB': $type = OCI_B_BLOB; break; + case 'CLOB': $type = OCI_B_CLOB; break; + } + + if ($this->databaseType == 'oci8po') + $sql = "UPDATE $table set $column=EMPTY_{$blobtype}() WHERE $where RETURNING $column INTO ?"; + else + $sql = "UPDATE $table set $column=EMPTY_{$blobtype}() WHERE $where RETURNING $column INTO :blob"; + + $desc = OCINewDescriptor($this->_connectionID, OCI_D_LOB); + $arr['blob'] = array($desc,-1,$type); + if ($this->session_sharing_force_blob) $this->Execute('ALTER SESSION SET CURSOR_SHARING=EXACT'); + $commit = $this->autoCommit; + if ($commit) $this->BeginTrans(); + $rs = $this->_Execute($sql,$arr); + if ($rez = !empty($rs)) $desc->save($val); + $desc->free(); + if ($commit) $this->CommitTrans(); + if ($this->session_sharing_force_blob) $this->Execute('ALTER SESSION SET CURSOR_SHARING=FORCE'); + + if ($rez) $rs->Close(); + return $rez; + } + + /** + * Usage: store file pointed to by $var in a blob + */ + function UpdateBlobFile($table,$column,$val,$where,$blobtype='BLOB') + { + switch(strtoupper($blobtype)) { + default: ADOConnection::outp( "UpdateBlob: Unknown blobtype=$blobtype"); return false; + case 'BLOB': $type = OCI_B_BLOB; break; + case 'CLOB': $type = OCI_B_CLOB; break; + } + + if ($this->databaseType == 'oci8po') + $sql = "UPDATE $table set $column=EMPTY_{$blobtype}() WHERE $where RETURNING $column INTO ?"; + else + $sql = "UPDATE $table set $column=EMPTY_{$blobtype}() WHERE $where RETURNING $column INTO :blob"; + + $desc = OCINewDescriptor($this->_connectionID, OCI_D_LOB); + $arr['blob'] = array($desc,-1,$type); + + $this->BeginTrans(); + $rs = ADODB_oci8::Execute($sql,$arr); + if ($rez = !empty($rs)) $desc->savefile($val); + $desc->free(); + $this->CommitTrans(); + + if ($rez) $rs->Close(); + return $rez; + } + + /** + * Execute SQL + * + * @param sql SQL statement to execute, or possibly an array holding prepared statement ($sql[0] will hold sql text) + * @param [inputarr] holds the input data to bind to. Null elements will be set to null. + * @return RecordSet or false + */ + function &Execute($sql,$inputarr=false) + { + if ($this->fnExecute) { + $fn = $this->fnExecute; + $ret =& $fn($this,$sql,$inputarr); + if (isset($ret)) return $ret; + } + if ($inputarr) { + #if (!is_array($inputarr)) $inputarr = array($inputarr); + + $element0 = reset($inputarr); + + # is_object check because oci8 descriptors can be passed in + if (is_array($element0) && !is_object(reset($element0))) { + if (is_string($sql)) + $stmt = $this->Prepare($sql); + else + $stmt = $sql; + + foreach($inputarr as $arr) { + $ret =& $this->_Execute($stmt,$arr); + if (!$ret) return $ret; + } + } else { + $ret =& $this->_Execute($sql,$inputarr); + } + + } else { + $ret =& $this->_Execute($sql,false); + } + + return $ret; + } + + /* + Example of usage: + + $stmt = $this->Prepare('insert into emp (empno, ename) values (:empno, :ename)'); + */ + function Prepare($sql,$cursor=false) + { + static $BINDNUM = 0; + + $stmt = OCIParse($this->_connectionID,$sql); + + if (!$stmt) return false; + + $BINDNUM += 1; + + $sttype = @OCIStatementType($stmt); + if ($sttype == 'BEGIN' || $sttype == 'DECLARE') { + return array($sql,$stmt,0,$BINDNUM, ($cursor) ? OCINewCursor($this->_connectionID) : false); + } + return array($sql,$stmt,0,$BINDNUM); + } + + /* + Call an oracle stored procedure and returns a cursor variable as a recordset. + Concept by Robert Tuttle robert@ud.com + + Example: + Note: we return a cursor variable in :RS2 + $rs = $db->ExecuteCursor("BEGIN adodb.open_tab(:RS2); END;",'RS2'); + + $rs = $db->ExecuteCursor( + "BEGIN :RS2 = adodb.getdata(:VAR1); END;", + 'RS2', + array('VAR1' => 'Mr Bean')); + + */ + function &ExecuteCursor($sql,$cursorName='rs',$params=false) + { + if (is_array($sql)) $stmt = $sql; + else $stmt = ADODB_oci8::Prepare($sql,true); # true to allocate OCINewCursor + + if (is_array($stmt) && sizeof($stmt) >= 5) { + $hasref = true; + $ignoreCur = false; + $this->Parameter($stmt, $ignoreCur, $cursorName, false, -1, OCI_B_CURSOR); + if ($params) { + foreach($params as $k => $v) { + $this->Parameter($stmt,$params[$k], $k); + } + } + } else + $hasref = false; + + $rs =& $this->Execute($stmt); + if ($rs) { + if ($rs->databaseType == 'array') OCIFreeCursor($stmt[4]); + else if ($hasref) $rs->_refcursor = $stmt[4]; + } + return $rs; + } + + /* + Bind a variable -- very, very fast for executing repeated statements in oracle. + Better than using + for ($i = 0; $i < $max; $i++) { + $p1 = ?; $p2 = ?; $p3 = ?; + $this->Execute("insert into table (col0, col1, col2) values (:0, :1, :2)", + array($p1,$p2,$p3)); + } + + Usage: + $stmt = $DB->Prepare("insert into table (col0, col1, col2) values (:0, :1, :2)"); + $DB->Bind($stmt, $p1); + $DB->Bind($stmt, $p2); + $DB->Bind($stmt, $p3); + for ($i = 0; $i < $max; $i++) { + $p1 = ?; $p2 = ?; $p3 = ?; + $DB->Execute($stmt); + } + + Some timings: + ** Test table has 3 cols, and 1 index. Test to insert 1000 records + Time 0.6081s (1644.60 inserts/sec) with direct OCIParse/OCIExecute + Time 0.6341s (1577.16 inserts/sec) with ADOdb Prepare/Bind/Execute + Time 1.5533s ( 643.77 inserts/sec) with pure SQL using Execute + + Now if PHP only had batch/bulk updating like Java or PL/SQL... + + Note that the order of parameters differs from OCIBindByName, + because we default the names to :0, :1, :2 + */ + function Bind(&$stmt,&$var,$size=4000,$type=false,$name=false,$isOutput=false) + { + + if (!is_array($stmt)) return false; + + if (($type == OCI_B_CURSOR) && sizeof($stmt) >= 5) { + return OCIBindByName($stmt[1],":".$name,$stmt[4],$size,$type); + } + + if ($name == false) { + if ($type !== false) $rez = OCIBindByName($stmt[1],":".$stmt[2],$var,$size,$type); + else $rez = OCIBindByName($stmt[1],":".$stmt[2],$var,$size); // +1 byte for null terminator + $stmt[2] += 1; + } else if (oci_lob_desc($type)) { + if ($this->debug) { + ADOConnection::outp("Bind: name = $name"); + } + //we have to create a new Descriptor here + $numlob = count($this->_refLOBs); + $this->_refLOBs[$numlob]['LOB'] = OCINewDescriptor($this->_connectionID, oci_lob_desc($type)); + $this->_refLOBs[$numlob]['TYPE'] = $isOutput; + + $tmp = &$this->_refLOBs[$numlob]['LOB']; + $rez = OCIBindByName($stmt[1], ":".$name, $tmp, -1, $type); + if ($this->debug) { + ADOConnection::outp("Bind: descriptor has been allocated, var (".$name.") binded"); + } + + // if type is input then write data to lob now + if ($isOutput == false) { + $var = $this->BlobEncode($var); + $tmp->WriteTemporary($var); + $this->_refLOBs[$numlob]['VAR'] = &$var; + if ($this->debug) { + ADOConnection::outp("Bind: LOB has been written to temp"); + } + } else { + $this->_refLOBs[$numlob]['VAR'] = &$var; + } + $rez = $tmp; + } else { + if ($this->debug) + ADOConnection::outp("Bind: name = $name"); + + if ($type !== false) $rez = OCIBindByName($stmt[1],":".$name,$var,$size,$type); + else $rez = OCIBindByName($stmt[1],":".$name,$var,$size); // +1 byte for null terminator + } + + return $rez; + } + + function Param($name,$type=false) + { + return ':'.$name; + } + + /* + Usage: + $stmt = $db->Prepare('select * from table where id =:myid and group=:group'); + $db->Parameter($stmt,$id,'myid'); + $db->Parameter($stmt,$group,'group'); + $db->Execute($stmt); + + @param $stmt Statement returned by Prepare() or PrepareSP(). + @param $var PHP variable to bind to + @param $name Name of stored procedure variable name to bind to. + @param [$isOutput] Indicates direction of parameter 0/false=IN 1=OUT 2= IN/OUT. This is ignored in oci8. + @param [$maxLen] Holds an maximum length of the variable. + @param [$type] The data type of $var. Legal values depend on driver. + + See OCIBindByName documentation at php.net. + */ + function Parameter(&$stmt,&$var,$name,$isOutput=false,$maxLen=4000,$type=false) + { + if ($this->debug) { + $prefix = ($isOutput) ? 'Out' : 'In'; + $ztype = (empty($type)) ? 'false' : $type; + ADOConnection::outp( "{$prefix}Parameter(\$stmt, \$php_var='$var', \$name='$name', \$maxLen=$maxLen, \$type=$ztype);"); + } + return $this->Bind($stmt,$var,$maxLen,$type,$name,$isOutput); + } + + /* + returns query ID if successful, otherwise false + this version supports: + + 1. $db->execute('select * from table'); + + 2. $db->prepare('insert into table (a,b,c) values (:0,:1,:2)'); + $db->execute($prepared_statement, array(1,2,3)); + + 3. $db->execute('insert into table (a,b,c) values (:a,:b,:c)',array('a'=>1,'b'=>2,'c'=>3)); + + 4. $db->prepare('insert into table (a,b,c) values (:0,:1,:2)'); + $db->bind($stmt,1); $db->bind($stmt,2); $db->bind($stmt,3); + $db->execute($stmt); + */ + function _query($sql,$inputarr) + { + if (is_array($sql)) { // is prepared sql + $stmt = $sql[1]; + + // we try to bind to permanent array, so that OCIBindByName is persistent + // and carried out once only - note that max array element size is 4000 chars + if (is_array($inputarr)) { + $bindpos = $sql[3]; + if (isset($this->_bind[$bindpos])) { + // all tied up already + $bindarr = &$this->_bind[$bindpos]; + } else { + // one statement to bind them all + $bindarr = array(); + foreach($inputarr as $k => $v) { + $bindarr[$k] = $v; + OCIBindByName($stmt,":$k",$bindarr[$k],is_string($v) && strlen($v)>4000 ? -1 : 4000); + } + $this->_bind[$bindpos] = &$bindarr; + } + } + } else { + $stmt=OCIParse($this->_connectionID,$sql); + } + + $this->_stmt = $stmt; + if (!$stmt) return false; + + if (defined('ADODB_PREFETCH_ROWS')) @OCISetPrefetch($stmt,ADODB_PREFETCH_ROWS); + + if (is_array($inputarr)) { + foreach($inputarr as $k => $v) { + if (is_array($v)) { + if (sizeof($v) == 2) // suggested by g.giunta@libero. + OCIBindByName($stmt,":$k",$inputarr[$k][0],$v[1]); + else + OCIBindByName($stmt,":$k",$inputarr[$k][0],$v[1],$v[2]); + + if ($this->debug==99) echo "name=:$k",' var='.$inputarr[$k][0],' len='.$v[1],' type='.$v[2],'
'; + } else { + $len = -1; + if ($v === ' ') $len = 1; + if (isset($bindarr)) { // is prepared sql, so no need to ocibindbyname again + $bindarr[$k] = $v; + } else { // dynamic sql, so rebind every time + OCIBindByName($stmt,":$k",$inputarr[$k],$len); + } + } + } + } + + $this->_errorMsg = false; + $this->_errorCode = false; + if (OCIExecute($stmt,$this->_commit)) { +//OCIInternalDebug(1); + if (count($this -> _refLOBs) > 0) { + + foreach ($this -> _refLOBs as $key => $value) { + if ($this -> _refLOBs[$key]['TYPE'] == true) { + $tmp = $this -> _refLOBs[$key]['LOB'] -> load(); + if ($this -> debug) { + ADOConnection::outp("OUT LOB: LOB has been loaded.
"); + } + //$_GLOBALS[$this -> _refLOBs[$key]['VAR']] = $tmp; + $this -> _refLOBs[$key]['VAR'] = $tmp; + } else { + $this->_refLOBs[$key]['LOB']->save($this->_refLOBs[$key]['VAR']); + $this -> _refLOBs[$key]['LOB']->free(); + unset($this -> _refLOBs[$key]); + if ($this->debug) { + ADOConnection::outp("IN LOB: LOB has been saved.
"); + } + } + } + } + + switch (@OCIStatementType($stmt)) { + case "SELECT": + return $stmt; + + case 'DECLARE': + case "BEGIN": + if (is_array($sql) && !empty($sql[4])) { + $cursor = $sql[4]; + if (is_resource($cursor)) { + $ok = OCIExecute($cursor); + return $cursor; + } + return $stmt; + } else { + if (is_resource($stmt)) { + OCIFreeStatement($stmt); + return true; + } + return $stmt; + } + break; + default : + // ociclose -- no because it could be used in a LOB? + return true; + } + } + return false; + } + + // returns true or false + function _close() + { + if (!$this->_connectionID) return; + + if (!$this->autoCommit) OCIRollback($this->_connectionID); + if (count($this->_refLOBs) > 0) { + foreach ($this ->_refLOBs as $key => $value) { + $this->_refLOBs[$key]['LOB']->free(); + unset($this->_refLOBs[$key]); + } + } + OCILogoff($this->_connectionID); + + $this->_stmt = false; + $this->_connectionID = false; + } + + function MetaPrimaryKeys($table, $owner=false,$internalKey=false) + { + if ($internalKey) return array('ROWID'); + + // tested with oracle 8.1.7 + $table = strtoupper($table); + if ($owner) { + $owner_clause = "AND ((a.OWNER = b.OWNER) AND (a.OWNER = UPPER('$owner')))"; + $ptab = 'ALL_'; + } else { + $owner_clause = ''; + $ptab = 'USER_'; + } + $sql = " +SELECT /*+ RULE */ distinct b.column_name + FROM {$ptab}CONSTRAINTS a + , {$ptab}CONS_COLUMNS b + WHERE ( UPPER(b.table_name) = ('$table')) + AND (UPPER(a.table_name) = ('$table') and a.constraint_type = 'P') + $owner_clause + AND (a.constraint_name = b.constraint_name)"; + + $rs = $this->Execute($sql); + if ($rs && !$rs->EOF) { + $arr =& $rs->GetArray(); + $a = array(); + foreach($arr as $v) { + $a[] = reset($v); + } + return $a; + } + else return false; + } + + // http://gis.mit.edu/classes/11.521/sqlnotes/referential_integrity.html + function MetaForeignKeys($table, $owner=false) + { + global $ADODB_FETCH_MODE; + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + $table = $this->qstr(strtoupper($table)); + if (!$owner) { + $owner = $this->user; + $tabp = 'user_'; + } else + $tabp = 'all_'; + + $owner = ' and owner='.$this->qstr(strtoupper($owner)); + + $sql = +"select constraint_name,r_owner,r_constraint_name + from {$tabp}constraints + where constraint_type = 'R' and table_name = $table $owner"; + + $constraints =& $this->GetArray($sql); + $arr = false; + foreach($constraints as $constr) { + $cons = $this->qstr($constr[0]); + $rowner = $this->qstr($constr[1]); + $rcons = $this->qstr($constr[2]); + $cols = $this->GetArray("select column_name from {$tabp}cons_columns where constraint_name=$cons $owner order by position"); + $tabcol = $this->GetArray("select table_name,column_name from {$tabp}cons_columns where owner=$rowner and constraint_name=$rcons order by position"); + + if ($cols && $tabcol) + for ($i=0, $max=sizeof($cols); $i < $max; $i++) { + $arr[$tabcol[$i][0]] = $cols[$i][0].'='.$tabcol[$i][1]; + } + } + $ADODB_FETCH_MODE = $save; + + return $arr; + } + + + function CharMax() + { + return 4000; + } + + function TextMax() + { + return 4000; + } + + /** + * Quotes a string. + * An example is $db->qstr("Don't bother",magic_quotes_runtime()); + * + * @param s the string to quote + * @param [magic_quotes] if $s is GET/POST var, set to get_magic_quotes_gpc(). + * This undoes the stupidity of magic quotes for GPC. + * + * @return quoted string to be sent back to database + */ + function qstr($s,$magic_quotes=false) + { + //$nofixquotes=false; + + if ($this->noNullStrings && strlen($s)==0)$s = ' '; + if (!$magic_quotes) { + if ($this->replaceQuote[0] == '\\'){ + $s = str_replace('\\','\\\\',$s); + } + return "'".str_replace("'",$this->replaceQuote,$s)."'"; + } + + // undo magic quotes for " + $s = str_replace('\\"','"',$s); + + $s = str_replace('\\\\','\\',$s); + return "'".str_replace("\\'",$this->replaceQuote,$s)."'"; + + } + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordset_oci8 extends ADORecordSet { + + var $databaseType = 'oci8'; + var $bind=false; + var $_fieldobjs; + + //var $_arr = false; + + function ADORecordset_oci8($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch ($mode) + { + case ADODB_FETCH_ASSOC:$this->fetchMode = OCI_ASSOC+OCI_RETURN_NULLS+OCI_RETURN_LOBS; break; + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH:$this->fetchMode = OCI_NUM+OCI_ASSOC+OCI_RETURN_NULLS+OCI_RETURN_LOBS; break; + case ADODB_FETCH_NUM: + default: + $this->fetchMode = OCI_NUM+OCI_RETURN_NULLS+OCI_RETURN_LOBS; break; + } + + $this->adodbFetchMode = $mode; + $this->_queryID = $queryID; + } + + + function Init() + { + if ($this->_inited) return; + + $this->_inited = true; + if ($this->_queryID) { + + $this->_currentRow = 0; + @$this->_initrs(); + $this->EOF = !$this->_fetch(); + + /* + // based on idea by Gaetano Giunta to detect unusual oracle errors + // see http://phplens.com/lens/lensforum/msgs.php?id=6771 + $err = OCIError($this->_queryID); + if ($err && $this->connection->debug) ADOConnection::outp($err); + */ + + if (!is_array($this->fields)) { + $this->_numOfRows = 0; + $this->fields = array(); + } + } else { + $this->fields = array(); + $this->_numOfRows = 0; + $this->_numOfFields = 0; + $this->EOF = true; + } + } + + function _initrs() + { + $this->_numOfRows = -1; + $this->_numOfFields = OCInumcols($this->_queryID); + if ($this->_numOfFields>0) { + $this->_fieldobjs = array(); + $max = $this->_numOfFields; + for ($i=0;$i<$max; $i++) $this->_fieldobjs[] = $this->_FetchField($i); + } + } + + /* Returns: an object containing field information. + Get column information in the Recordset object. fetchField() can be used in order to obtain information about + fields in a certain query result. If the field offset isn't specified, the next field that wasn't yet retrieved by + fetchField() is retrieved. */ + + function &_FetchField($fieldOffset = -1) + { + $fld = new ADOFieldObject; + $fieldOffset += 1; + $fld->name =OCIcolumnname($this->_queryID, $fieldOffset); + $fld->type = OCIcolumntype($this->_queryID, $fieldOffset); + $fld->max_length = OCIcolumnsize($this->_queryID, $fieldOffset); + if ($fld->type == 'NUMBER') { + $p = OCIColumnPrecision($this->_queryID, $fieldOffset); + $sc = OCIColumnScale($this->_queryID, $fieldOffset); + if ($p != 0 && $sc == 0) $fld->type = 'INT'; + //echo " $this->name ($p.$sc) "; + } + return $fld; + } + + /* For some reason, OCIcolumnname fails when called after _initrs() so we cache it */ + function &FetchField($fieldOffset = -1) + { + return $this->_fieldobjs[$fieldOffset]; + } + + + /* + // 10% speedup to move MoveNext to child class + function _MoveNext() + { + //global $ADODB_EXTENSION;if ($ADODB_EXTENSION) return @adodb_movenext($this); + + if ($this->EOF) return false; + + $this->_currentRow++; + if(@OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode)) + return true; + $this->EOF = true; + + return false; + } */ + + + function MoveNext() + { + if (@OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode)) { + $this->_currentRow += 1; + return true; + } + if (!$this->EOF) { + $this->_currentRow += 1; + $this->EOF = true; + } + return false; + } + + /* + # does not work as first record is retrieved in _initrs(), so is not included in GetArray() + function &GetArray($nRows = -1) + { + global $ADODB_OCI8_GETARRAY; + + if (true || !empty($ADODB_OCI8_GETARRAY)) { + # does not support $ADODB_ANSI_PADDING_OFF + + //OCI_RETURN_NULLS and OCI_RETURN_LOBS is set by OCIfetchstatement + switch($this->adodbFetchMode) { + case ADODB_FETCH_NUM: + + $ncols = @OCIfetchstatement($this->_queryID, $results, 0, $nRows, OCI_FETCHSTATEMENT_BY_ROW+OCI_NUM); + $results = array_merge(array($this->fields),$results); + return $results; + + case ADODB_FETCH_ASSOC: + if (ADODB_ASSOC_CASE != 2 || $this->databaseType != 'oci8') break; + + $ncols = @OCIfetchstatement($this->_queryID, $assoc, 0, $nRows, OCI_FETCHSTATEMENT_BY_ROW); + $results =& array_merge(array($this->fields),$assoc); + return $results; + + default: + break; + } + } + + $results =& ADORecordSet::GetArray($nRows); + return $results; + + } */ + + /* Optimize SelectLimit() by using OCIFetch() instead of OCIFetchInto() */ + function &GetArrayLimit($nrows,$offset=-1) + { + if ($offset <= 0) { + $arr =& $this->GetArray($nrows); + return $arr; + } + for ($i=1; $i < $offset; $i++) + if (!@OCIFetch($this->_queryID)) return array(); + + if (!@OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode)) return array(); + $results = array(); + $cnt = 0; + while (!$this->EOF && $nrows != $cnt) { + $results[$cnt++] = $this->fields; + $this->MoveNext(); + } + + return $results; + } + + + /* Use associative array to get fields array */ + function Fields($colname) + { + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + + + function _seek($row) + { + return false; + } + + function _fetch() + { + return @OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode); + } + + /* close() only needs to be called if you are worried about using too much memory while your script + is running. All associated result memory for the specified result identifier will automatically be freed. */ + + function _close() + { + if ($this->connection->_stmt === $this->_queryID) $this->connection->_stmt = false; + if (!empty($this->_refcursor)) { + OCIFreeCursor($this->_refcursor); + $this->_refcursor = false; + } + @OCIFreeStatement($this->_queryID); + $this->_queryID = false; + + } + + function MetaType($t,$len=-1) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + switch (strtoupper($t)) { + case 'VARCHAR': + case 'VARCHAR2': + case 'CHAR': + case 'VARBINARY': + case 'BINARY': + case 'NCHAR': + case 'NVARCHAR': + case 'NVARCHAR2': + if (isset($this) && $len <= $this->blobSize) return 'C'; + + case 'NCLOB': + case 'LONG': + case 'LONG VARCHAR': + case 'CLOB': + return 'X'; + + case 'LONG RAW': + case 'LONG VARBINARY': + case 'BLOB': + return 'B'; + + case 'DATE': + return ($this->connection->datetime) ? 'T' : 'D'; + + + case 'TIMESTAMP': return 'T'; + + case 'INT': + case 'SMALLINT': + case 'INTEGER': + return 'I'; + + default: return 'N'; + } + } +} + +class ADORecordSet_ext_oci8 extends ADORecordSet_oci8 { + function ADORecordSet_ext_oci8($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch ($mode) + { + case ADODB_FETCH_ASSOC:$this->fetchMode = OCI_ASSOC+OCI_RETURN_NULLS+OCI_RETURN_LOBS; break; + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH:$this->fetchMode = OCI_NUM+OCI_ASSOC+OCI_RETURN_NULLS+OCI_RETURN_LOBS; break; + case ADODB_FETCH_NUM: + default: $this->fetchMode = OCI_NUM+OCI_RETURN_NULLS+OCI_RETURN_LOBS; break; + } + $this->adodbFetchMode = $mode; + $this->_queryID = $queryID; + } + + function MoveNext() + { + return adodb_movenext($this); + } +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-oci805.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-oci805.inc.php new file mode 100644 index 0000000..09f9baf --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-oci805.inc.php @@ -0,0 +1,59 @@ +ADODB_oci8(); + } + + function &SelectLimit($sql,$nrows=-1,$offset=-1, $inputarr=false,$secs2cache=0) + { + // seems that oracle only supports 1 hint comment in 8i + if (strpos($sql,'/*+') !== false) + $sql = str_replace('/*+ ','/*+FIRST_ROWS ',$sql); + else + $sql = preg_replace('/^[ \t\n]*select/i','SELECT /*+FIRST_ROWS*/',$sql); + + /* + The following is only available from 8.1.5 because order by in inline views not + available before then... + http://www.jlcomp.demon.co.uk/faq/top_sql.html + if ($nrows > 0) { + if ($offset > 0) $nrows += $offset; + $sql = "select * from ($sql) where rownum <= $nrows"; + $nrows = -1; + } + */ + + return ADOConnection::SelectLimit($sql,$nrows,$offset,$inputarr,$secs2cache); + } +} + +class ADORecordset_oci805 extends ADORecordset_oci8 { + var $databaseType = "oci805"; + function ADORecordset_oci805($id,$mode=false) + { + $this->ADORecordset_oci8($id,$mode); + } +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-oci8po.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-oci8po.inc.php new file mode 100644 index 0000000..079f525 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-oci8po.inc.php @@ -0,0 +1,217 @@ + + + Should some emulation of RecordCount() be implemented? + +*/ + +// security - hide paths +if (!defined('ADODB_DIR')) die(); + +include_once(ADODB_DIR.'/drivers/adodb-oci8.inc.php'); + +class ADODB_oci8po extends ADODB_oci8 { + var $databaseType = 'oci8po'; + var $dataProvider = 'oci8'; + var $metaColumnsSQL = "select lower(cname),coltype,width, SCALE, PRECISION, NULLS, DEFAULTVAL from col where tname='%s' order by colno"; //changed by smondino@users.sourceforge. net + var $metaTablesSQL = "select lower(table_name),table_type from cat where table_type in ('TABLE','VIEW')"; + + function ADODB_oci8po() + { + $this->_hasOCIFetchStatement = ADODB_PHPVER >= 0x4200; + # oci8po does not support adodb extension: adodb_movenext() + } + + function Param($name) + { + return '?'; + } + + function Prepare($sql,$cursor=false) + { + $sqlarr = explode('?',$sql); + $sql = $sqlarr[0]; + for ($i = 1, $max = sizeof($sqlarr); $i < $max; $i++) { + $sql .= ':'.($i-1) . $sqlarr[$i]; + } + return ADODB_oci8::Prepare($sql,$cursor); + } + + // emulate handling of parameters ? ?, replacing with :bind0 :bind1 + function _query($sql,$inputarr) + { + if (is_array($inputarr)) { + $i = 0; + if (is_array($sql)) { + foreach($inputarr as $v) { + $arr['bind'.$i++] = $v; + } + } else { + $sqlarr = explode('?',$sql); + $sql = $sqlarr[0]; + foreach($inputarr as $k => $v) { + $sql .= ":$k" . $sqlarr[++$i]; + } + } + } + return ADODB_oci8::_query($sql,$inputarr); + } +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordset_oci8po extends ADORecordset_oci8 { + + var $databaseType = 'oci8po'; + + function ADORecordset_oci8po($queryID,$mode=false) + { + $this->ADORecordset_oci8($queryID,$mode); + } + + function Fields($colname) + { + if ($this->fetchMode & OCI_ASSOC) return $this->fields[$colname]; + + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + // lowercase field names... + function &_FetchField($fieldOffset = -1) + { + $fld = new ADOFieldObject; + $fieldOffset += 1; + $fld->name = strtolower(OCIcolumnname($this->_queryID, $fieldOffset)); + $fld->type = OCIcolumntype($this->_queryID, $fieldOffset); + $fld->max_length = OCIcolumnsize($this->_queryID, $fieldOffset); + if ($fld->type == 'NUMBER') { + //$p = OCIColumnPrecision($this->_queryID, $fieldOffset); + $sc = OCIColumnScale($this->_queryID, $fieldOffset); + if ($sc == 0) $fld->type = 'INT'; + } + return $fld; + } + /* + function MoveNext() + { + if (@OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode)) { + $this->_currentRow += 1; + return true; + } + if (!$this->EOF) { + $this->_currentRow += 1; + $this->EOF = true; + } + return false; + }*/ + + // 10% speedup to move MoveNext to child class + function MoveNext() + { + if(@OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode)) { + global $ADODB_ANSI_PADDING_OFF; + $this->_currentRow++; + + if ($this->fetchMode & OCI_ASSOC) $this->_updatefields(); + if (!empty($ADODB_ANSI_PADDING_OFF)) { + foreach($this->fields as $k => $v) { + if (is_string($v)) $this->fields[$k] = rtrim($v); + } + } + return true; + } + if (!$this->EOF) { + $this->EOF = true; + $this->_currentRow++; + } + return false; + } + + /* Optimize SelectLimit() by using OCIFetch() instead of OCIFetchInto() */ + function &GetArrayLimit($nrows,$offset=-1) + { + if ($offset <= 0) { + $arr = $this->GetArray($nrows); + return $arr; + } + for ($i=1; $i < $offset; $i++) + if (!@OCIFetch($this->_queryID)) { + $arr = array(); + return $arr; + } + if (!@OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode)) { + $arr = array(); + return $arr; + } + if ($this->fetchMode & OCI_ASSOC) $this->_updatefields(); + $results = array(); + $cnt = 0; + while (!$this->EOF && $nrows != $cnt) { + $results[$cnt++] = $this->fields; + $this->MoveNext(); + } + + return $results; + } + + // Create associative array + function _updatefields() + { + if (ADODB_ASSOC_CASE == 2) return; // native + + $arr = array(); + $lowercase = (ADODB_ASSOC_CASE == 0); + + foreach($this->fields as $k => $v) { + if (is_integer($k)) $arr[$k] = $v; + else { + if ($lowercase) + $arr[strtolower($k)] = $v; + else + $arr[strtoupper($k)] = $v; + } + } + $this->fields = $arr; + } + + function _fetch() + { + $ret = @OCIfetchinto($this->_queryID,$this->fields,$this->fetchMode); + if ($ret) { + global $ADODB_ANSI_PADDING_OFF; + + if ($this->fetchMode & OCI_ASSOC) $this->_updatefields(); + if (!empty($ADODB_ANSI_PADDING_OFF)) { + foreach($this->fields as $k => $v) { + if (is_string($v)) $this->fields[$k] = rtrim($v); + } + } + } + return $ret; + } + +} + + +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-oracle.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-oracle.inc.php new file mode 100644 index 0000000..03065ce --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-oracle.inc.php @@ -0,0 +1,338 @@ +fmtDate,$d).",'YYYY-MM-DD')"; + } + + // format and return date string in database timestamp format + function DBTimeStamp($ts) + { + + if (is_string($ts)) $d = ADORecordSet::UnixTimeStamp($ts); + return 'TO_DATE('.adodb_date($this->fmtTimeStamp,$ts).",'RRRR-MM-DD, HH:MI:SS AM')"; + } + + + function BindDate($d) + { + $d = ADOConnection::DBDate($d); + if (strncmp($d,"'",1)) return $d; + + return substr($d,1,strlen($d)-2); + } + + function BindTimeStamp($d) + { + $d = ADOConnection::DBTimeStamp($d); + if (strncmp($d,"'",1)) return $d; + + return substr($d,1,strlen($d)-2); + } + + + + function BeginTrans() + { + $this->autoCommit = false; + ora_commitoff($this->_connectionID); + return true; + } + + + function CommitTrans($ok=true) + { + if (!$ok) return $this->RollbackTrans(); + $ret = ora_commit($this->_connectionID); + ora_commiton($this->_connectionID); + return $ret; + } + + + function RollbackTrans() + { + $ret = ora_rollback($this->_connectionID); + ora_commiton($this->_connectionID); + return $ret; + } + + + /* there seems to be a bug in the oracle extension -- always returns ORA-00000 - no error */ + function ErrorMsg() + { + if ($this->_errorMsg !== false) return $this->_errorMsg; + + if (is_resource($this->_curs)) $this->_errorMsg = @ora_error($this->_curs); + if (empty($this->_errorMsg)) $this->_errorMsg = @ora_error($this->_connectionID); + return $this->_errorMsg; + } + + + function ErrorNo() + { + if ($this->_errorCode !== false) return $this->_errorCode; + + if (is_resource($this->_curs)) $this->_errorCode = @ora_errorcode($this->_curs); + if (empty($this->_errorCode)) $this->_errorCode = @ora_errorcode($this->_connectionID); + return $this->_errorCode; + } + + + + // returns true or false + function _connect($argHostname, $argUsername, $argPassword, $argDatabasename, $mode=0) + { + if (!function_exists('ora_plogon')) return null; + + // Reset error messages before connecting + $this->_errorMsg = false; + $this->_errorCode = false; + + // G. Giunta 2003/08/13 - This looks danegrously suspicious: why should we want to set + // the oracle home to the host name of remote DB? +// if ($argHostname) putenv("ORACLE_HOME=$argHostname"); + + if($argHostname) { // code copied from version submitted for oci8 by Jorma Tuomainen + if (empty($argDatabasename)) $argDatabasename = $argHostname; + else { + if(strpos($argHostname,":")) { + $argHostinfo=explode(":",$argHostname); + $argHostname=$argHostinfo[0]; + $argHostport=$argHostinfo[1]; + } else { + $argHostport="1521"; + } + + + if ($this->connectSID) { + $argDatabasename="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=".$argHostname + .")(PORT=$argHostport))(CONNECT_DATA=(SID=$argDatabasename)))"; + } else + $argDatabasename="(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=".$argHostname + .")(PORT=$argHostport))(CONNECT_DATA=(SERVICE_NAME=$argDatabasename)))"; + } + + } + + if ($argDatabasename) $argUsername .= "@$argDatabasename"; + + //if ($argHostname) print "

Connect: 1st argument should be left blank for $this->databaseType

"; + if ($mode = 1) + $this->_connectionID = ora_plogon($argUsername,$argPassword); + else + $this->_connectionID = ora_logon($argUsername,$argPassword); + if ($this->_connectionID === false) return false; + if ($this->autoCommit) ora_commiton($this->_connectionID); + if ($this->_initdate) { + $rs = $this->_query("ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD'"); + if ($rs) ora_close($rs); + } + + return true; + } + + + // returns true or false + function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename, 1); + } + + + // returns query ID if successful, otherwise false + function _query($sql,$inputarr=false) + { + // Reset error messages before executing + $this->_errorMsg = false; + $this->_errorCode = false; + + $curs = ora_open($this->_connectionID); + + if ($curs === false) return false; + $this->_curs = $curs; + if (!ora_parse($curs,$sql)) return false; + if (ora_exec($curs)) return $curs; + // before we close the cursor, we have to store the error message + // that we can obtain ONLY from the cursor (and not from the connection) + $this->_errorCode = @ora_errorcode($curs); + $this->_errorMsg = @ora_error($curs); + // + @ora_close($curs); + return false; + } + + + // returns true or false + function _close() + { + return @ora_logoff($this->_connectionID); + } + + + +} + + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordset_oracle extends ADORecordSet { + + var $databaseType = "oracle"; + var $bind = false; + + function ADORecordset_oracle($queryID,$mode=false) + { + + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + $this->fetchMode = $mode; + + $this->_queryID = $queryID; + + $this->_inited = true; + $this->fields = array(); + if ($queryID) { + $this->_currentRow = 0; + $this->EOF = !$this->_fetch(); + @$this->_initrs(); + } else { + $this->_numOfRows = 0; + $this->_numOfFields = 0; + $this->EOF = true; + } + + return $this->_queryID; + } + + + + /* Returns: an object containing field information. + Get column information in the Recordset object. fetchField() can be used in order to obtain information about + fields in a certain query result. If the field offset isn't specified, the next field that wasn't yet retrieved by + fetchField() is retrieved. */ + + function &FetchField($fieldOffset = -1) + { + $fld = new ADOFieldObject; + $fld->name = ora_columnname($this->_queryID, $fieldOffset); + $fld->type = ora_columntype($this->_queryID, $fieldOffset); + $fld->max_length = ora_columnsize($this->_queryID, $fieldOffset); + return $fld; + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + function _initrs() + { + $this->_numOfRows = -1; + $this->_numOfFields = @ora_numcols($this->_queryID); + } + + + function _seek($row) + { + return false; + } + + function _fetch($ignore_fields=false) { +// should remove call by reference, but ora_fetch_into requires it in 4.0.3pl1 + if ($this->fetchMode & ADODB_FETCH_ASSOC) + return @ora_fetch_into($this->_queryID,&$this->fields,ORA_FETCHINTO_NULLS|ORA_FETCHINTO_ASSOC); + else + return @ora_fetch_into($this->_queryID,&$this->fields,ORA_FETCHINTO_NULLS); + } + + /* close() only needs to be called if you are worried about using too much memory while your script + is running. All associated result memory for the specified result identifier will automatically be freed. */ + + function _close() +{ + return @ora_close($this->_queryID); + } + + function MetaType($t,$len=-1) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + + switch (strtoupper($t)) { + case 'VARCHAR': + case 'VARCHAR2': + case 'CHAR': + case 'VARBINARY': + case 'BINARY': + if ($len <= $this->blobSize) return 'C'; + case 'LONG': + case 'LONG VARCHAR': + case 'CLOB': + return 'X'; + case 'LONG RAW': + case 'LONG VARBINARY': + case 'BLOB': + return 'B'; + + case 'DATE': return 'D'; + + //case 'T': return 'T'; + + case 'BIT': return 'L'; + case 'INT': + case 'SMALLINT': + case 'INTEGER': return 'I'; + default: return 'N'; + } + } +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-postgres64.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-postgres64.inc.php new file mode 100644 index 0000000..f122368 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-postgres64.inc.php @@ -0,0 +1,1064 @@ + + jlim - changed concat operator to || and data types to MetaType to match documented pgsql types + see http://www.postgresql.org/devel-corner/docs/postgres/datatype.htm + 22 Nov 2000 jlim - added changes to FetchField() and MetaTables() contributed by "raser" + 27 Nov 2000 jlim - added changes to _connect/_pconnect from ideas by "Lennie" + 15 Dec 2000 jlim - added changes suggested by Additional code changes by "Eric G. Werk" egw@netguide.dk. + 31 Jan 2002 jlim - finally installed postgresql. testing + 01 Mar 2001 jlim - Freek Dijkstra changes, also support for text type + + See http://www.varlena.com/varlena/GeneralBits/47.php + + -- What indexes are on my table? + select * from pg_indexes where tablename = 'tablename'; + + -- What triggers are on my table? + select c.relname as "Table", t.tgname as "Trigger Name", + t.tgconstrname as "Constraint Name", t.tgenabled as "Enabled", + t.tgisconstraint as "Is Constraint", cc.relname as "Referenced Table", + p.proname as "Function Name" + from pg_trigger t, pg_class c, pg_class cc, pg_proc p + where t.tgfoid = p.oid and t.tgrelid = c.oid + and t.tgconstrrelid = cc.oid + and c.relname = 'tablename'; + + -- What constraints are on my table? + select r.relname as "Table", c.conname as "Constraint Name", + contype as "Constraint Type", conkey as "Key Columns", + confkey as "Foreign Columns", consrc as "Source" + from pg_class r, pg_constraint c + where r.oid = c.conrelid + and relname = 'tablename'; + +*/ + +// security - hide paths +if (!defined('ADODB_DIR')) die(); + +function adodb_addslashes($s) +{ + $len = strlen($s); + if ($len == 0) return "''"; + if (strncmp($s,"'",1) === 0 && substr($s,$len-1) == "'") return $s; // already quoted + + return "'".addslashes($s)."'"; +} + +class ADODB_postgres64 extends ADOConnection{ + var $databaseType = 'postgres64'; + var $dataProvider = 'postgres'; + var $hasInsertID = true; + var $_resultid = false; + var $concat_operator='||'; + var $metaDatabasesSQL = "select datname from pg_database where datname not in ('template0','template1') order by 1"; + var $metaTablesSQL = "select tablename,'T' from pg_tables where tablename not like 'pg\_%' + and tablename not in ('sql_features', 'sql_implementation_info', 'sql_languages', + 'sql_packages', 'sql_sizing', 'sql_sizing_profiles') + union + select viewname,'V' from pg_views where viewname not like 'pg\_%'"; + //"select tablename from pg_tables where tablename not like 'pg_%' order by 1"; + var $isoDates = true; // accepts dates in ISO format + var $sysDate = "CURRENT_DATE"; + var $sysTimeStamp = "CURRENT_TIMESTAMP"; + var $blobEncodeType = 'C'; + var $metaColumnsSQL = "SELECT a.attname,t.typname,a.attlen,a.atttypmod,a.attnotnull,a.atthasdef,a.attnum + FROM pg_class c, pg_attribute a,pg_type t + WHERE relkind in ('r','v') AND (c.relname='%s' or c.relname = lower('%s')) and a.attname not like '....%%' +AND a.attnum > 0 AND a.atttypid = t.oid AND a.attrelid = c.oid ORDER BY a.attnum"; + + // used when schema defined + var $metaColumnsSQL1 = "SELECT a.attname, t.typname, a.attlen, a.atttypmod, a.attnotnull, a.atthasdef, a.attnum +FROM pg_class c, pg_attribute a, pg_type t, pg_namespace n +WHERE relkind in ('r','v') AND (c.relname='%s' or c.relname = lower('%s')) + and c.relnamespace=n.oid and n.nspname='%s' + and a.attname not like '....%%' AND a.attnum > 0 + AND a.atttypid = t.oid AND a.attrelid = c.oid ORDER BY a.attnum"; + + // get primary key etc -- from Freek Dijkstra + var $metaKeySQL = "SELECT ic.relname AS index_name, a.attname AS column_name,i.indisunique AS unique_key, i.indisprimary AS primary_key + FROM pg_class bc, pg_class ic, pg_index i, pg_attribute a WHERE bc.oid = i.indrelid AND ic.oid = i.indexrelid AND (i.indkey[0] = a.attnum OR i.indkey[1] = a.attnum OR i.indkey[2] = a.attnum OR i.indkey[3] = a.attnum OR i.indkey[4] = a.attnum OR i.indkey[5] = a.attnum OR i.indkey[6] = a.attnum OR i.indkey[7] = a.attnum) AND a.attrelid = bc.oid AND bc.relname = '%s'"; + + var $hasAffectedRows = true; + var $hasLimit = false; // set to true for pgsql 7 only. support pgsql/mysql SELECT * FROM TABLE LIMIT 10 + // below suggested by Freek Dijkstra + var $true = 'TRUE'; // string that represents TRUE for a database + var $false = 'FALSE'; // string that represents FALSE for a database + var $fmtDate = "'Y-m-d'"; // used by DBDate() as the default date format used by the database + var $fmtTimeStamp = "'Y-m-d H:i:s'"; // used by DBTimeStamp as the default timestamp fmt. + var $hasMoveFirst = true; + var $hasGenID = true; + var $_genIDSQL = "SELECT NEXTVAL('%s')"; + var $_genSeqSQL = "CREATE SEQUENCE %s START %s"; + var $_dropSeqSQL = "DROP SEQUENCE %s"; + var $metaDefaultsSQL = "SELECT d.adnum as num, d.adsrc as def from pg_attrdef d, pg_class c where d.adrelid=c.oid and c.relname='%s' order by d.adnum"; + var $random = 'random()'; /// random function + var $autoRollback = true; // apparently pgsql does not autorollback properly before php 4.3.4 + // http://bugs.php.net/bug.php?id=25404 + + var $_bindInputArray = false; // requires postgresql 7.3+ and ability to modify database + var $disableBlobs = false; // set to true to disable blob checking, resulting in 2-5% improvement in performance. + + // The last (fmtTimeStamp is not entirely correct: + // PostgreSQL also has support for time zones, + // and writes these time in this format: "2001-03-01 18:59:26+02". + // There is no code for the "+02" time zone information, so I just left that out. + // I'm not familiar enough with both ADODB as well as Postgres + // to know what the concequences are. The other values are correct (wheren't in 0.94) + // -- Freek Dijkstra + + function ADODB_postgres64() + { + // changes the metaColumnsSQL, adds columns: attnum[6] + } + + function ServerInfo() + { + if (isset($this->version)) return $this->version; + + $arr['description'] = $this->GetOne("select version()"); + $arr['version'] = ADOConnection::_findvers($arr['description']); + $this->version = $arr; + return $arr; + } + + function IfNull( $field, $ifNull ) + { + return " coalesce($field, $ifNull) "; + } + + // get the last id - never tested + function pg_insert_id($tablename,$fieldname) + { + $result=pg_exec($this->_connectionID, "SELECT last_value FROM ${tablename}_${fieldname}_seq"); + if ($result) { + $arr = @pg_fetch_row($result,0); + pg_freeresult($result); + if (isset($arr[0])) return $arr[0]; + } + return false; + } + +/* Warning from http://www.php.net/manual/function.pg-getlastoid.php: +Using a OID as a unique identifier is not generally wise. +Unless you are very careful, you might end up with a tuple having +a different OID if a database must be reloaded. */ + function _insertid($table,$column) + { + if (!is_resource($this->_resultid) || get_resource_type($this->_resultid) !== 'pgsql result') return false; + $oid = pg_getlastoid($this->_resultid); + // to really return the id, we need the table and column-name, else we can only return the oid != id + return empty($table) || empty($column) ? $oid : $this->GetOne("SELECT $column FROM $table WHERE oid=".(int)$oid); + } + +// I get this error with PHP before 4.0.6 - jlim +// Warning: This compilation does not support pg_cmdtuples() in adodb-postgres.inc.php on line 44 + function _affectedrows() + { + if (!is_resource($this->_resultid) || get_resource_type($this->_resultid) !== 'pgsql result') return false; + return pg_cmdtuples($this->_resultid); + } + + + // returns true/false + function BeginTrans() + { + if ($this->transOff) return true; + $this->transCnt += 1; + return @pg_Exec($this->_connectionID, "begin ".$this->_transmode); + } + + function RowLock($tables,$where,$flds='1 as ignore') + { + if (!$this->transCnt) $this->BeginTrans(); + return $this->GetOne("select $flds from $tables where $where for update"); + } + + // returns true/false. + function CommitTrans($ok=true) + { + if ($this->transOff) return true; + if (!$ok) return $this->RollbackTrans(); + + $this->transCnt -= 1; + return @pg_Exec($this->_connectionID, "commit"); + } + + // returns true/false + function RollbackTrans() + { + if ($this->transOff) return true; + $this->transCnt -= 1; + return @pg_Exec($this->_connectionID, "rollback"); + } + + function &MetaTables($ttype=false,$showSchema=false,$mask=false) + { + $info = $this->ServerInfo(); + if ($info['version'] >= 7.3) { + $this->metaTablesSQL = "select tablename,'T' from pg_tables where tablename not like 'pg\_%' + and schemaname not in ( 'pg_catalog','information_schema') + union + select viewname,'V' from pg_views where viewname not like 'pg\_%' and schemaname not in ( 'pg_catalog','information_schema') "; + } + if ($mask) { + $save = $this->metaTablesSQL; + $mask = $this->qstr(strtolower($mask)); + if ($info['version']>=7.3) + $this->metaTablesSQL = " +select tablename,'T' from pg_tables where tablename like $mask and schemaname not in ( 'pg_catalog','information_schema') + union +select viewname,'V' from pg_views where viewname like $mask and schemaname not in ( 'pg_catalog','information_schema') "; + else + $this->metaTablesSQL = " +select tablename,'T' from pg_tables where tablename like $mask + union +select viewname,'V' from pg_views where viewname like $mask"; + } + $ret =& ADOConnection::MetaTables($ttype,$showSchema); + + if ($mask) { + $this->metaTablesSQL = $save; + } + return $ret; + } + + + // if magic quotes disabled, use pg_escape_string() + function qstr($s,$magic_quotes=false) + { + if (!$magic_quotes) { + if (ADODB_PHPVER >= 0x5200) { + return "'".pg_escape_string($this->_connectionID,$s)."'"; + } + if (ADODB_PHPVER >= 0x4200) { + return "'".pg_escape_string($s)."'"; + } + if ($this->replaceQuote[0] == '\\'){ + $s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\\000"),$s); + } + return "'".str_replace("'",$this->replaceQuote,$s)."'"; + } + + // undo magic quotes for " + $s = str_replace('\\"','"',$s); + return "'$s'"; + } + + + + // Format date column in sql string given an input format that understands Y M D + function SQLDate($fmt, $col=false) + { + if (!$col) $col = $this->sysTimeStamp; + $s = 'TO_CHAR('.$col.",'"; + + $len = strlen($fmt); + for ($i=0; $i < $len; $i++) { + $ch = $fmt[$i]; + switch($ch) { + case 'Y': + case 'y': + $s .= 'YYYY'; + break; + case 'Q': + case 'q': + $s .= 'Q'; + break; + + case 'M': + $s .= 'Mon'; + break; + + case 'm': + $s .= 'MM'; + break; + case 'D': + case 'd': + $s .= 'DD'; + break; + + case 'H': + $s.= 'HH24'; + break; + + case 'h': + $s .= 'HH'; + break; + + case 'i': + $s .= 'MI'; + break; + + case 's': + $s .= 'SS'; + break; + + case 'a': + case 'A': + $s .= 'AM'; + break; + + case 'w': + $s .= 'D'; + break; + + case 'l': + $s .= 'DAY'; + break; + + case 'W': + $s .= 'WW'; + break; + + default: + // handle escape characters... + if ($ch == '\\') { + $i++; + $ch = substr($fmt,$i,1); + } + if (strpos('-/.:;, ',$ch) !== false) $s .= $ch; + else $s .= '"'.$ch.'"'; + + } + } + return $s. "')"; + } + + + + /* + * Load a Large Object from a file + * - the procedure stores the object id in the table and imports the object using + * postgres proprietary blob handling routines + * + * contributed by Mattia Rossi mattia@technologist.com + * modified for safe mode by juraj chlebec + */ + function UpdateBlobFile($table,$column,$path,$where,$blobtype='BLOB') + { + pg_exec ($this->_connectionID, "begin"); + + $fd = fopen($path,'r'); + $contents = fread($fd,filesize($path)); + fclose($fd); + + $oid = pg_lo_create($this->_connectionID); + $handle = pg_lo_open($this->_connectionID, $oid, 'w'); + pg_lo_write($handle, $contents); + pg_lo_close($handle); + + // $oid = pg_lo_import ($path); + pg_exec($this->_connectionID, "commit"); + $rs = ADOConnection::UpdateBlob($table,$column,$oid,$where,$blobtype); + $rez = !empty($rs); + return $rez; + } + + /* + * Deletes/Unlinks a Blob from the database, otherwise it + * will be left behind + * + * Returns TRUE on success or FALSE on failure. + * + * contributed by Todd Rogers todd#windfox.net + */ + function BlobDelete( $blob ) + { + pg_exec ($this->_connectionID, "begin"); + $result = @pg_lo_unlink($blob); + pg_exec ($this->_connectionID, "commit"); + return( $result ); + } + + /* + Hueristic - not guaranteed to work. + */ + function GuessOID($oid) + { + if (strlen($oid)>16) return false; + return is_numeric($oid); + } + + /* + * If an OID is detected, then we use pg_lo_* to open the oid file and read the + * real blob from the db using the oid supplied as a parameter. If you are storing + * blobs using bytea, we autodetect and process it so this function is not needed. + * + * contributed by Mattia Rossi mattia@technologist.com + * + * see http://www.postgresql.org/idocs/index.php?largeobjects.html + * + * Since adodb 4.54, this returns the blob, instead of sending it to stdout. Also + * added maxsize parameter, which defaults to $db->maxblobsize if not defined. + */ + function BlobDecode($blob,$maxsize=false,$hastrans=true) + { + if (!$this->GuessOID($blob)) return $blob; + + if ($hastrans) @pg_exec($this->_connectionID,"begin"); + $fd = @pg_lo_open($this->_connectionID,$blob,"r"); + if ($fd === false) { + if ($hastrans) @pg_exec($this->_connectionID,"commit"); + return $blob; + } + if (!$maxsize) $maxsize = $this->maxblobsize; + $realblob = @pg_loread($fd,$maxsize); + @pg_loclose($fd); + if ($hastrans) @pg_exec($this->_connectionID,"commit"); + return $realblob; + } + + /* + See http://www.postgresql.org/idocs/index.php?datatype-binary.html + + NOTE: SQL string literals (input strings) must be preceded with two backslashes + due to the fact that they must pass through two parsers in the PostgreSQL + backend. + */ + function BlobEncode($blob) + { + if (ADODB_PHPVER >= 0x5200) return pg_escape_bytea($this->_connectionID, $blob); + if (ADODB_PHPVER >= 0x4200) return pg_escape_bytea($blob); + + /*92=backslash, 0=null, 39=single-quote*/ + $badch = array(chr(92),chr(0),chr(39)); # \ null ' + $fixch = array('\\\\134','\\\\000','\\\\047'); + return adodb_str_replace($badch,$fixch,$blob); + + // note that there is a pg_escape_bytea function only for php 4.2.0 or later + } + + // assumes bytea for blob, and varchar for clob + function UpdateBlob($table,$column,$val,$where,$blobtype='BLOB') + { + + if ($blobtype == 'CLOB') { + return $this->Execute("UPDATE $table SET $column=" . $this->qstr($val) . " WHERE $where"); + } + // do not use bind params which uses qstr(), as blobencode() already quotes data + return $this->Execute("UPDATE $table SET $column='".$this->BlobEncode($val)."'::bytea WHERE $where"); + } + + function OffsetDate($dayFraction,$date=false) + { + if (!$date) $date = $this->sysDate; + else if (strncmp($date,"'",1) == 0) { + $len = strlen($date); + if (10 <= $len && $len <= 12) $date = 'date '.$date; + else $date = 'timestamp '.$date; + } + return "($date+interval'$dayFraction days')"; + } + + + // for schema support, pass in the $table param "$schema.$tabname". + // converts field names to lowercase, $upper is ignored + // see http://phplens.com/lens/lensforum/msgs.php?id=14018 for more info + function &MetaColumns($table,$normalize=true) + { + global $ADODB_FETCH_MODE; + + $schema = false; + $false = false; + $this->_findschema($table,$schema); + + if ($normalize) $table = strtolower($table); + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + + if ($schema) $rs =& $this->Execute(sprintf($this->metaColumnsSQL1,$table,$table,$schema)); + else $rs =& $this->Execute(sprintf($this->metaColumnsSQL,$table,$table)); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if ($rs === false) { + return $false; + } + if (!empty($this->metaKeySQL)) { + // If we want the primary keys, we have to issue a separate query + // Of course, a modified version of the metaColumnsSQL query using a + // LEFT JOIN would have been much more elegant, but postgres does + // not support OUTER JOINS. So here is the clumsy way. + + $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; + + $rskey = $this->Execute(sprintf($this->metaKeySQL,($table))); + // fetch all result in once for performance. + $keys =& $rskey->GetArray(); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + $rskey->Close(); + unset($rskey); + } + + $rsdefa = array(); + if (!empty($this->metaDefaultsSQL)) { + $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; + $sql = sprintf($this->metaDefaultsSQL, ($table)); + $rsdef = $this->Execute($sql); + if (isset($savem)) $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if ($rsdef) { + while (!$rsdef->EOF) { + $num = $rsdef->fields['num']; + $s = $rsdef->fields['def']; + if (strpos($s,'::')===false && substr($s, 0, 1) == "'") { /* quoted strings hack... for now... fixme */ + $s = substr($s, 1); + $s = substr($s, 0, strlen($s) - 1); + } + + $rsdefa[$num] = $s; + $rsdef->MoveNext(); + } + } else { + ADOConnection::outp( "==> SQL => " . $sql); + } + unset($rsdef); + } + + $retarr = array(); + while (!$rs->EOF) { + $fld = new ADOFieldObject(); + $fld->name = $rs->fields[0]; + $fld->type = $rs->fields[1]; + $fld->max_length = $rs->fields[2]; + $fld->attnum = $rs->fields[6]; + + if ($fld->max_length <= 0) $fld->max_length = $rs->fields[3]-4; + if ($fld->max_length <= 0) $fld->max_length = -1; + if ($fld->type == 'numeric') { + $fld->scale = $fld->max_length & 0xFFFF; + $fld->max_length >>= 16; + } + // dannym + // 5 hasdefault; 6 num-of-column + $fld->has_default = ($rs->fields[5] == 't'); + if ($fld->has_default) { + $fld->default_value = $rsdefa[$rs->fields[6]]; + } + + //Freek + $fld->not_null = $rs->fields[4] == 't'; + + + // Freek + if (is_array($keys)) { + foreach($keys as $key) { + if ($fld->name == $key['column_name'] AND $key['primary_key'] == 't') + $fld->primary_key = true; + if ($fld->name == $key['column_name'] AND $key['unique_key'] == 't') + $fld->unique = true; // What name is more compatible? + } + } + + if ($ADODB_FETCH_MODE == ADODB_FETCH_NUM) $retarr[] = $fld; + else $retarr[($normalize) ? strtoupper($fld->name) : $fld->name] = $fld; + + $rs->MoveNext(); + } + $rs->Close(); + if (empty($retarr)) + return $false; + else + return $retarr; + + } + + function &MetaIndexes ($table, $primary = FALSE) + { + global $ADODB_FETCH_MODE; + + $schema = false; + $this->_findschema($table,$schema); + + if ($schema) { // requires pgsql 7.3+ - pg_namespace used. + $sql = ' +SELECT c.relname as "Name", i.indisunique as "Unique", i.indkey as "Columns" +FROM pg_catalog.pg_class c +JOIN pg_catalog.pg_index i ON i.indexrelid=c.oid +JOIN pg_catalog.pg_class c2 ON c2.oid=i.indrelid + ,pg_namespace n +WHERE (c2.relname=\'%s\' or c2.relname=lower(\'%s\')) and c.relnamespace=c2.relnamespace and c.relnamespace=n.oid and n.nspname=\'%s\''; + } else { + $sql = ' +SELECT c.relname as "Name", i.indisunique as "Unique", i.indkey as "Columns" +FROM pg_catalog.pg_class c +JOIN pg_catalog.pg_index i ON i.indexrelid=c.oid +JOIN pg_catalog.pg_class c2 ON c2.oid=i.indrelid +WHERE (c2.relname=\'%s\' or c2.relname=lower(\'%s\'))'; + } + + if ($primary == FALSE) { + $sql .= ' AND i.indisprimary=false;'; + } + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== FALSE) { + $savem = $this->SetFetchMode(FALSE); + } + + $rs = $this->Execute(sprintf($sql,$table,$table,$schema)); + if (isset($savem)) { + $this->SetFetchMode($savem); + } + $ADODB_FETCH_MODE = $save; + + if (!is_object($rs)) { + $false = false; + return $false; + } + + $col_names = $this->MetaColumnNames($table,true,true); + //3rd param is use attnum, + // see http://sourceforge.net/tracker/index.php?func=detail&aid=1451245&group_id=42718&atid=433976 + $indexes = array(); + while ($row = $rs->FetchRow()) { + $columns = array(); + foreach (explode(' ', $row[2]) as $col) { + $columns[] = $col_names[$col]; + } + + $indexes[$row[0]] = array( + 'unique' => ($row[1] == 't'), + 'columns' => $columns + ); + } + return $indexes; + } + + // returns true or false + // + // examples: + // $db->Connect("host=host1 user=user1 password=secret port=4341"); + // $db->Connect('host1','user1','secret'); + function _connect($str,$user='',$pwd='',$db='',$ctype=0) + { + + if (!function_exists('pg_connect')) return null; + + $this->_errorMsg = false; + + if ($user || $pwd || $db) { + $user = adodb_addslashes($user); + $pwd = adodb_addslashes($pwd); + if (strlen($db) == 0) $db = 'template1'; + $db = adodb_addslashes($db); + if ($str) { + $host = split(":", $str); + if ($host[0]) $str = "host=".adodb_addslashes($host[0]); + else $str = ''; + if (isset($host[1])) $str .= " port=$host[1]"; + else if (!empty($this->port)) $str .= " port=".$this->port; + } + if ($user) $str .= " user=".$user; + if ($pwd) $str .= " password=".$pwd; + if ($db) $str .= " dbname=".$db; + } + + //if ($user) $linea = "user=$user host=$linea password=$pwd dbname=$db port=5432"; + + if ($ctype === 1) { // persistent + $this->_connectionID = pg_pconnect($str); + } else { + if ($ctype === -1) { // nconnect, we trick pgsql ext by changing the connection str + static $ncnt; + + if (empty($ncnt)) $ncnt = 1; + else $ncnt += 1; + + $str .= str_repeat(' ',$ncnt); + } + $this->_connectionID = pg_connect($str); + } + if ($this->_connectionID === false) return false; + $this->Execute("set datestyle='ISO'"); + + $info = $this->ServerInfo(); + $this->pgVersion = (float) substr($info['version'],0,3); + if ($this->pgVersion >= 7.1) { // good till version 999 + $this->_nestedSQL = true; + } + return true; + } + + function _nconnect($argHostname, $argUsername, $argPassword, $argDatabaseName) + { + return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabaseName,-1); + } + + // returns true or false + // + // examples: + // $db->PConnect("host=host1 user=user1 password=secret port=4341"); + // $db->PConnect('host1','user1','secret'); + function _pconnect($str,$user='',$pwd='',$db='') + { + return $this->_connect($str,$user,$pwd,$db,1); + } + + + // returns queryID or false + function _query($sql,$inputarr) + { + $this->_errorMsg = false; + if ($inputarr) { + /* + It appears that PREPARE/EXECUTE is slower for many queries. + + For query executed 1000 times: + "select id,firstname,lastname from adoxyz + where firstname not like ? and lastname not like ? and id = ?" + + with plan = 1.51861286163 secs + no plan = 1.26903700829 secs + + + + */ + $plan = 'P'.md5($sql); + + $execp = ''; + foreach($inputarr as $v) { + if ($execp) $execp .= ','; + if (is_string($v)) { + if (strncmp($v,"'",1) !== 0) $execp .= $this->qstr($v); + } else { + $execp .= $v; + } + } + + if ($execp) $exsql = "EXECUTE $plan ($execp)"; + else $exsql = "EXECUTE $plan"; + + + $rez = @pg_exec($this->_connectionID,$exsql); + if (!$rez) { + # Perhaps plan does not exist? Prepare/compile plan. + $params = ''; + foreach($inputarr as $v) { + if ($params) $params .= ','; + if (is_string($v)) { + $params .= 'VARCHAR'; + } else if (is_integer($v)) { + $params .= 'INTEGER'; + } else { + $params .= "REAL"; + } + } + $sqlarr = explode('?',$sql); + //print_r($sqlarr); + $sql = ''; + $i = 1; + foreach($sqlarr as $v) { + $sql .= $v.' $'.$i; + $i++; + } + $s = "PREPARE $plan ($params) AS ".substr($sql,0,strlen($sql)-2); + //adodb_pr($s); + pg_exec($this->_connectionID,$s); + //echo $this->ErrorMsg(); + } + + $rez = pg_exec($this->_connectionID,$exsql); + } else { + //adodb_backtrace(); + $rez = pg_exec($this->_connectionID,$sql); + } + // check if no data returned, then no need to create real recordset + if ($rez && pg_numfields($rez) <= 0) { + if (is_resource($this->_resultid) && get_resource_type($this->_resultid) === 'pgsql result') { + pg_freeresult($this->_resultid); + } + $this->_resultid = $rez; + return true; + } + + return $rez; + } + + function _errconnect() + { + if (defined('DB_ERROR_CONNECT_FAILED')) return DB_ERROR_CONNECT_FAILED; + else return 'Database connection failed'; + } + + /* Returns: the last error message from previous database operation */ + function ErrorMsg() + { + if ($this->_errorMsg !== false) return $this->_errorMsg; + if (ADODB_PHPVER >= 0x4300) { + if (!empty($this->_resultid)) { + $this->_errorMsg = @pg_result_error($this->_resultid); + if ($this->_errorMsg) return $this->_errorMsg; + } + + if (!empty($this->_connectionID)) { + $this->_errorMsg = @pg_last_error($this->_connectionID); + } else $this->_errorMsg = $this->_errconnect(); + } else { + if (empty($this->_connectionID)) $this->_errconnect(); + else $this->_errorMsg = @pg_errormessage($this->_connectionID); + } + return $this->_errorMsg; + } + + function ErrorNo() + { + $e = $this->ErrorMsg(); + if (strlen($e)) { + return ADOConnection::MetaError($e); + } + return 0; + } + + // returns true or false + function _close() + { + if ($this->transCnt) $this->RollbackTrans(); + if ($this->_resultid) { + @pg_freeresult($this->_resultid); + $this->_resultid = false; + } + @pg_close($this->_connectionID); + $this->_connectionID = false; + return true; + } + + + /* + * Maximum size of C field + */ + function CharMax() + { + return 1000000000; // should be 1 Gb? + } + + /* + * Maximum size of X field + */ + function TextMax() + { + return 1000000000; // should be 1 Gb? + } + + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordSet_postgres64 extends ADORecordSet{ + var $_blobArr; + var $databaseType = "postgres64"; + var $canSeek = true; + function ADORecordSet_postgres64($queryID,$mode=false) + { + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch ($mode) + { + case ADODB_FETCH_NUM: $this->fetchMode = PGSQL_NUM; break; + case ADODB_FETCH_ASSOC:$this->fetchMode = PGSQL_ASSOC; break; + + case ADODB_FETCH_DEFAULT: + case ADODB_FETCH_BOTH: + default: $this->fetchMode = PGSQL_BOTH; break; + } + $this->adodbFetchMode = $mode; + $this->ADORecordSet($queryID); + } + + function &GetRowAssoc($upper=true) + { + if ($this->fetchMode == PGSQL_ASSOC && !$upper) return $this->fields; + $row =& ADORecordSet::GetRowAssoc($upper); + return $row; + } + + function _initrs() + { + global $ADODB_COUNTRECS; + $qid = $this->_queryID; + $this->_numOfRows = ($ADODB_COUNTRECS)? @pg_numrows($qid):-1; + $this->_numOfFields = @pg_numfields($qid); + + // cache types for blob decode check + // apparently pg_fieldtype actually performs an sql query on the database to get the type. + if (empty($this->connection->noBlobs)) + for ($i=0, $max = $this->_numOfFields; $i < $max; $i++) { + if (pg_fieldtype($qid,$i) == 'bytea') { + $this->_blobArr[$i] = pg_fieldname($qid,$i); + } + } + } + + /* Use associative array to get fields array */ + function Fields($colname) + { + if ($this->fetchMode != PGSQL_NUM) return @$this->fields[$colname]; + + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + function &FetchField($off = 0) + { + // offsets begin at 0 + + $o= new ADOFieldObject(); + $o->name = @pg_fieldname($this->_queryID,$off); + $o->type = @pg_fieldtype($this->_queryID,$off); + $o->max_length = @pg_fieldsize($this->_queryID,$off); + return $o; + } + + function _seek($row) + { + return @pg_fetch_row($this->_queryID,$row); + } + + function _decode($blob) + { + eval('$realblob="'.adodb_str_replace(array('"','$'),array('\"','\$'),$blob).'";'); + return $realblob; + } + + function _fixblobs() + { + if ($this->fetchMode == PGSQL_NUM || $this->fetchMode == PGSQL_BOTH) { + foreach($this->_blobArr as $k => $v) { + $this->fields[$k] = ADORecordSet_postgres64::_decode($this->fields[$k]); + } + } + if ($this->fetchMode == PGSQL_ASSOC || $this->fetchMode == PGSQL_BOTH) { + foreach($this->_blobArr as $k => $v) { + $this->fields[$v] = ADORecordSet_postgres64::_decode($this->fields[$v]); + } + } + } + + // 10% speedup to move MoveNext to child class + function MoveNext() + { + if (!$this->EOF) { + $this->_currentRow++; + if ($this->_numOfRows < 0 || $this->_numOfRows > $this->_currentRow) { + $this->fields = @pg_fetch_array($this->_queryID,$this->_currentRow,$this->fetchMode); + if (is_array($this->fields) && $this->fields) { + if (isset($this->_blobArr)) $this->_fixblobs(); + return true; + } + } + $this->fields = false; + $this->EOF = true; + } + return false; + } + + function _fetch() + { + + if ($this->_currentRow >= $this->_numOfRows && $this->_numOfRows >= 0) + return false; + + $this->fields = @pg_fetch_array($this->_queryID,$this->_currentRow,$this->fetchMode); + + if ($this->fields && isset($this->_blobArr)) $this->_fixblobs(); + + return (is_array($this->fields)); + } + + function _close() + { + return @pg_freeresult($this->_queryID); + } + + function MetaType($t,$len=-1,$fieldobj=false) + { + if (is_object($t)) { + $fieldobj = $t; + $t = $fieldobj->type; + $len = $fieldobj->max_length; + } + switch (strtoupper($t)) { + case 'MONEY': // stupid, postgres expects money to be a string + case 'INTERVAL': + case 'CHAR': + case 'CHARACTER': + case 'VARCHAR': + case 'NAME': + case 'BPCHAR': + case '_VARCHAR': + case 'INET': + case 'MACADDR': + if ($len <= $this->blobSize) return 'C'; + + case 'TEXT': + return 'X'; + + case 'IMAGE': // user defined type + case 'BLOB': // user defined type + case 'BIT': // This is a bit string, not a single bit, so don't return 'L' + case 'VARBIT': + case 'BYTEA': + return 'B'; + + case 'BOOL': + case 'BOOLEAN': + return 'L'; + + case 'DATE': + return 'D'; + + + case 'TIMESTAMP WITHOUT TIME ZONE': + case 'TIME': + case 'DATETIME': + case 'TIMESTAMP': + case 'TIMESTAMPTZ': + return 'T'; + + case 'SMALLINT': + case 'BIGINT': + case 'INTEGER': + case 'INT8': + case 'INT4': + case 'INT2': + if (isset($fieldobj) && + empty($fieldobj->primary_key) && empty($fieldobj->unique)) return 'I'; + + case 'OID': + case 'SERIAL': + return 'R'; + + default: + return 'N'; + } + } + +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-postgres7.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-postgres7.inc.php new file mode 100644 index 0000000..5a885cb --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-postgres7.inc.php @@ -0,0 +1,265 @@ +ADODB_postgres64(); + if (ADODB_ASSOC_CASE !== 2) { + $this->rsPrefix .= 'assoc_'; + } + //G2: Disable pg_query_params support due to http://bugs.php.net/36969 + $this->_bindInputArray = false; // PHP_VERSION >= 5.1; + } + + + // the following should be compat with postgresql 7.2, + // which makes obsolete the LIMIT limit,offset syntax + function &SelectLimit($sql,$nrows=-1,$offset=-1,$inputarr=false,$secs2cache=0) + { + $offsetStr = ($offset >= 0) ? " OFFSET ".((integer)$offset) : ''; + $limitStr = ($nrows >= 0) ? " LIMIT ".((integer)$nrows) : ''; + if ($secs2cache) + $rs =& $this->CacheExecute($secs2cache,$sql."$limitStr$offsetStr",$inputarr); + else + $rs =& $this->Execute($sql."$limitStr$offsetStr",$inputarr); + + return $rs; + } + /* + function Prepare($sql) + { + $info = $this->ServerInfo(); + if ($info['version']>=7.3) { + return array($sql,false); + } + return $sql; + } + */ + + + // from Edward Jaramilla, improved version - works on pg 7.4 + function MetaForeignKeys($table, $owner=false, $upper=false) + { + $sql = 'SELECT t.tgargs as args + FROM + pg_trigger t,pg_class c,pg_proc p + WHERE + t.tgenabled AND + t.tgrelid = c.oid AND + t.tgfoid = p.oid AND + p.proname = \'RI_FKey_check_ins\' AND + c.relname = \''.strtolower($table).'\' + ORDER BY + t.tgrelid'; + + $rs =& $this->Execute($sql); + + if (!$rs || $rs->EOF) return false; + + $arr =& $rs->GetArray(); + $a = array(); + foreach($arr as $v) { + $data = explode(chr(0), $v['args']); + $size = count($data)-1; //-1 because the last node is empty + for($i = 4; $i < $size; $i++) { + if ($upper) + $a[strtoupper($data[2])][] = strtoupper($data[$i].'='.$data[++$i]); + else + $a[$data[2]][] = $data[$i].'='.$data[++$i]; + } + } + return $a; + } + + function _query($sql,$inputarr) + { + if (! $this->_bindInputArray) { + // We don't have native support for parameterized queries, so let's emulate it at the parent + return ADODB_postgres64::_query($sql, $inputarr); + } + $this->_errorMsg = false; + // -- added Cristiano da Cunha Duarte + if ($inputarr) { + $sqlarr = explode('?',trim($sql)); + $sql = ''; + $i = 1; + $last = sizeof($sqlarr)-1; + foreach($sqlarr as $v) { + if ($last < $i) $sql .= $v; + else $sql .= $v.' $'.$i; + $i++; + } + + $rez = pg_query_params($this->_connectionID,$sql, $inputarr); + } else { + $rez = pg_query($this->_connectionID,$sql); + } + // check if no data returned, then no need to create real recordset + if ($rez && pg_numfields($rez) <= 0) { + if (is_resource($this->_resultid) && get_resource_type($this->_resultid) === 'pgsql result') { + pg_freeresult($this->_resultid); + } + $this->_resultid = $rez; + return true; + } + return $rez; + } + + // this is a set of functions for managing client encoding - very important if the encodings + // of your database and your output target (i.e. HTML) don't match + //for instance, you may have UNICODE database and server it on-site as WIN1251 etc. + // GetCharSet - get the name of the character set the client is using now + // the functions should work with Postgres 7.0 and above, the set of charsets supported + // depends on compile flags of postgres distribution - if no charsets were compiled into the server + // it will return 'SQL_ANSI' always + function GetCharSet() + { + //we will use ADO's builtin property charSet + $this->charSet = @pg_client_encoding($this->_connectionID); + if (!$this->charSet) { + return false; + } else { + return $this->charSet; + } + } + + // SetCharSet - switch the client encoding + function SetCharSet($charset_name) + { + $this->GetCharSet(); + if ($this->charSet !== $charset_name) { + $if = pg_set_client_encoding($this->_connectionID, $charset_name); + if ($if == "0" & $this->GetCharSet() == $charset_name) { + return true; + } else return false; + } else return true; + } + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordSet_postgres7 extends ADORecordSet_postgres64{ + + var $databaseType = "postgres7"; + + + function ADORecordSet_postgres7($queryID,$mode=false) + { + $this->ADORecordSet_postgres64($queryID,$mode); + } + + // 10% speedup to move MoveNext to child class + function MoveNext() + { + if (!$this->EOF) { + $this->_currentRow++; + if ($this->_numOfRows < 0 || $this->_numOfRows > $this->_currentRow) { + $this->fields = @pg_fetch_array($this->_queryID,$this->_currentRow,$this->fetchMode); + + if (is_array($this->fields)) { + if ($this->fields && isset($this->_blobArr)) $this->_fixblobs(); + return true; + } + } + $this->fields = false; + $this->EOF = true; + } + return false; + } + +} + +class ADORecordSet_assoc_postgres7 extends ADORecordSet_postgres64{ + + var $databaseType = "postgres7"; + + + function ADORecordSet_assoc_postgres7($queryID,$mode=false) + { + $this->ADORecordSet_postgres64($queryID,$mode); + } + + function _fetch() + { + if ($this->_currentRow >= $this->_numOfRows && $this->_numOfRows >= 0) + return false; + + $this->fields = @pg_fetch_array($this->_queryID,$this->_currentRow,$this->fetchMode); + + if ($this->fields) { + if (isset($this->_blobArr)) $this->_fixblobs(); + $this->_updatefields(); + } + + return (is_array($this->fields)); + } + + // Create associative array + function _updatefields() + { + if (ADODB_ASSOC_CASE == 2) return; // native + + $arr = array(); + $lowercase = (ADODB_ASSOC_CASE == 0); + + foreach($this->fields as $k => $v) { + if (is_integer($k)) $arr[$k] = $v; + else { + if ($lowercase) + $arr[strtolower($k)] = $v; + else + $arr[strtoupper($k)] = $v; + } + } + $this->fields = $arr; + } + + function MoveNext() + { + if (!$this->EOF) { + $this->_currentRow++; + if ($this->_numOfRows < 0 || $this->_numOfRows > $this->_currentRow) { + $this->fields = @pg_fetch_array($this->_queryID,$this->_currentRow,$this->fetchMode); + + if (is_array($this->fields)) { + if ($this->fields) { + if (isset($this->_blobArr)) $this->_fixblobs(); + + $this->_updatefields(); + } + return true; + } + } + + + $this->fields = false; + $this->EOF = true; + } + return false; + } +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-sqlite.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-sqlite.inc.php new file mode 100644 index 0000000..7c0df87 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-sqlite.inc.php @@ -0,0 +1,398 @@ +fmtDate)."'"; + case 'sysTimeStamp' : return "'".date($this->sysTimeStamp)."'"; + } + }*/ + + function ServerInfo() + { + $arr['version'] = sqlite_libversion(); + $arr['description'] = 'SQLite '; + $arr['encoding'] = sqlite_libencoding(); + return $arr; + } + + function BeginTrans() + { + if ($this->transOff) return true; + $ret = $this->Execute("BEGIN TRANSACTION"); + $this->transCnt += 1; + return true; + } + + function CommitTrans($ok=true) + { + if ($this->transOff) return true; + if (!$ok) return $this->RollbackTrans(); + $ret = $this->Execute("COMMIT"); + if ($this->transCnt>0)$this->transCnt -= 1; + return !empty($ret); + } + + function RollbackTrans() + { + if ($this->transOff) return true; + $ret = $this->Execute("ROLLBACK"); + if ($this->transCnt>0)$this->transCnt -= 1; + return !empty($ret); + } + + // mark newnham + function &MetaColumns($tab) + { + global $ADODB_FETCH_MODE; + $false = false; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; + if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); + $rs = $this->Execute("PRAGMA table_info('$tab')"); + if (isset($savem)) $this->SetFetchMode($savem); + if (!$rs) { + $ADODB_FETCH_MODE = $save; + return $false; + } + $arr = array(); + while ($r = $rs->FetchRow()) { + $type = explode('(',$r['type']); + $size = ''; + if (sizeof($type)==2) + $size = trim($type[1],')'); + $fn = strtoupper($r['name']); + $fld = new ADOFieldObject; + $fld->name = $r['name']; + $fld->type = $type[0]; + $fld->max_length = $size; + $fld->not_null = $r['notnull']; + $fld->default_value = $r['dflt_value']; + $fld->scale = 0; + if ($save == ADODB_FETCH_NUM) $arr[] = $fld; + else $arr[strtoupper($fld->name)] = $fld; + } + $rs->Close(); + $ADODB_FETCH_MODE = $save; + return $arr; + } + + function _init($parentDriver) + { + + $parentDriver->hasTransactions = false; + $parentDriver->hasInsertID = true; + } + + function _insertid() + { + return sqlite_last_insert_rowid($this->_connectionID); + } + + function _affectedrows() + { + return sqlite_changes($this->_connectionID); + } + + function ErrorMsg() + { + if ($this->_logsql) return $this->_errorMsg; + return ($this->_errorNo) ? sqlite_error_string($this->_errorNo) : ''; + } + + function ErrorNo() + { + return $this->_errorNo; + } + + function SQLDate($fmt, $col=false) + { + $fmt = $this->qstr($fmt); + return ($col) ? "adodb_date2($fmt,$col)" : "adodb_date($fmt)"; + } + + + function _createFunctions() + { + @sqlite_create_function($this->_connectionID, 'adodb_date', 'adodb_date', 1); + @sqlite_create_function($this->_connectionID, 'adodb_date2', 'adodb_date2', 2); + } + + + // returns true or false + function _connect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + if (!function_exists('sqlite_open')) return null; + if (empty($argHostname) && $argDatabasename) $argHostname = $argDatabasename; + + $this->_connectionID = sqlite_open($argHostname); + if ($this->_connectionID === false) return false; + $this->_createFunctions(); + return true; + } + + // returns true or false + function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename) + { + if (!function_exists('sqlite_open')) return null; + if (empty($argHostname) && $argDatabasename) $argHostname = $argDatabasename; + + $this->_connectionID = sqlite_popen($argHostname); + if ($this->_connectionID === false) return false; + $this->_createFunctions(); + return true; + } + + // returns query ID if successful, otherwise false + function _query($sql,$inputarr=false) + { + $rez = sqlite_query($sql,$this->_connectionID); + if (!$rez) { + $this->_errorNo = sqlite_last_error($this->_connectionID); + } + + return $rez; + } + + function &SelectLimit($sql,$nrows=-1,$offset=-1,$inputarr=false,$secs2cache=0) + { + $offsetStr = ($offset >= 0) ? " OFFSET $offset" : ''; + $limitStr = ($nrows >= 0) ? " LIMIT $nrows" : ($offset >= 0 ? ' LIMIT 999999999' : ''); + if ($secs2cache) + $rs =& $this->CacheExecute($secs2cache,$sql."$limitStr$offsetStr",$inputarr); + else + $rs =& $this->Execute($sql."$limitStr$offsetStr",$inputarr); + + return $rs; + } + + /* + This algorithm is not very efficient, but works even if table locking + is not available. + + Will return false if unable to generate an ID after $MAXLOOPS attempts. + */ + var $_genSeqSQL = "create table %s (id integer)"; + + function GenID($seq='adodbseq',$start=1) + { + // if you have to modify the parameter below, your database is overloaded, + // or you need to implement generation of id's yourself! + $MAXLOOPS = 100; + //$this->debug=1; + while (--$MAXLOOPS>=0) { + @($num = $this->GetOne("select id from $seq")); + if ($num === false) { + $this->Execute(sprintf($this->_genSeqSQL ,$seq)); + $start -= 1; + $num = '0'; + $ok = $this->Execute("insert into $seq values($start)"); + if (!$ok) return false; + } + $this->Execute("update $seq set id=id+1 where id=$num"); + + if ($this->affected_rows() > 0) { + $num += 1; + $this->genID = $num; + return $num; + } + } + if ($fn = $this->raiseErrorFn) { + $fn($this->databaseType,'GENID',-32000,"Unable to generate unique id after $MAXLOOPS attempts",$seq,$num); + } + return false; + } + + function CreateSequence($seqname='adodbseq',$start=1) + { + if (empty($this->_genSeqSQL)) return false; + $ok = $this->Execute(sprintf($this->_genSeqSQL,$seqname)); + if (!$ok) return false; + $start -= 1; + return $this->Execute("insert into $seqname values($start)"); + } + + var $_dropSeqSQL = 'drop table %s'; + function DropSequence($seqname) + { + if (empty($this->_dropSeqSQL)) return false; + return $this->Execute(sprintf($this->_dropSeqSQL,$seqname)); + } + + // returns true or false + function _close() + { + return @sqlite_close($this->_connectionID); + } + + function &MetaIndexes($table, $primary = FALSE, $owner=false) + { + $false = false; + // save old fetch mode + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->fetchMode !== FALSE) { + $savem = $this->SetFetchMode(FALSE); + } + $SQL=sprintf("SELECT name,sql FROM sqlite_master WHERE type='index' AND tbl_name='%s'", strtolower($table)); + $rs = $this->Execute($SQL); + if (!is_object($rs)) { + if (isset($savem)) + $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + return $false; + } + + $indexes = array (); + while ($row = $rs->FetchRow()) { + if ($primary && preg_match("/primary/i",$row[1]) == 0) continue; + if (!isset($indexes[$row[0]])) { + + $indexes[$row[0]] = array( + 'unique' => preg_match("/unique/i",$row[1]), + 'columns' => array()); + } + /** + * There must be a more elegant way of doing this, + * the index elements appear in the SQL statement + * in cols[1] between parentheses + * e.g CREATE UNIQUE INDEX ware_0 ON warehouse (org,warehouse) + */ + $cols = explode("(",$row[1]); + $cols = explode(")",$cols[1]); + array_pop($cols); + $indexes[$row[0]]['columns'] = $cols; + } + if (isset($savem)) { + $this->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + } + return $indexes; + } + +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordset_sqlite extends ADORecordSet { + + var $databaseType = "sqlite"; + var $bind = false; + + function ADORecordset_sqlite($queryID,$mode=false) + { + + if ($mode === false) { + global $ADODB_FETCH_MODE; + $mode = $ADODB_FETCH_MODE; + } + switch($mode) { + case ADODB_FETCH_NUM: $this->fetchMode = SQLITE_NUM; break; + case ADODB_FETCH_ASSOC: $this->fetchMode = SQLITE_ASSOC; break; + default: $this->fetchMode = SQLITE_BOTH; break; + } + $this->adodbFetchMode = $mode; + + $this->_queryID = $queryID; + + $this->_inited = true; + $this->fields = array(); + if ($queryID) { + $this->_currentRow = 0; + $this->EOF = !$this->_fetch(); + @$this->_initrs(); + } else { + $this->_numOfRows = 0; + $this->_numOfFields = 0; + $this->EOF = true; + } + + return $this->_queryID; + } + + + function &FetchField($fieldOffset = -1) + { + $fld = new ADOFieldObject; + $fld->name = sqlite_field_name($this->_queryID, $fieldOffset); + $fld->type = 'VARCHAR'; + $fld->max_length = -1; + return $fld; + } + + function _initrs() + { + $this->_numOfRows = @sqlite_num_rows($this->_queryID); + $this->_numOfFields = @sqlite_num_fields($this->_queryID); + } + + function Fields($colname) + { + if ($this->fetchMode != SQLITE_NUM) return $this->fields[$colname]; + if (!$this->bind) { + $this->bind = array(); + for ($i=0; $i < $this->_numOfFields; $i++) { + $o = $this->FetchField($i); + $this->bind[strtoupper($o->name)] = $i; + } + } + + return $this->fields[$this->bind[strtoupper($colname)]]; + } + + function _seek($row) + { + return sqlite_seek($this->_queryID, $row); + } + + function _fetch($ignore_fields=false) + { + $this->fields = @sqlite_fetch_array($this->_queryID,$this->fetchMode); + return !empty($this->fields); + } + + function _close() + { + } + +} +?> diff --git a/Source/gallery2/lib/adodb/drivers/adodb-sqlitepo.inc.php b/Source/gallery2/lib/adodb/drivers/adodb-sqlitepo.inc.php new file mode 100644 index 0000000..64aa687 --- /dev/null +++ b/Source/gallery2/lib/adodb/drivers/adodb-sqlitepo.inc.php @@ -0,0 +1,62 @@ +ADODB_sqlite(); + } +} + +/*-------------------------------------------------------------------------------------- + Class Name: Recordset +--------------------------------------------------------------------------------------*/ + +class ADORecordset_sqlitepo extends ADORecordset_sqlite { + + var $databaseType = 'sqlitepo'; + + function ADORecordset_sqlitepo($queryID,$mode=false) + { + $this->ADORecordset_sqlite($queryID,$mode); + } + + // Modified to strip table names from returned fields + function _fetch($ignore_fields=false) + { + $this->fields = array(); + $fields = @sqlite_fetch_array($this->_queryID,$this->fetchMode); + if(is_array($fields)) + foreach($fields as $n => $v) + { + if(($p = strpos($n, ".")) !== false) + $n = substr($n, $p+1); + $this->fields[$n] = $v; + } + + return !empty($this->fields); + } +} +?> diff --git a/Source/gallery2/lib/adodb/license.txt b/Source/gallery2/lib/adodb/license.txt new file mode 100644 index 0000000..c9f6d9e --- /dev/null +++ b/Source/gallery2/lib/adodb/license.txt @@ -0,0 +1,182 @@ +ADOdb is dual licensed using BSD and LGPL. + +In plain English, you do not need to distribute your application in source code form, nor do you need to distribute ADOdb source code, provided you follow the rest of terms of the BSD license. + +For more info about ADOdb, visit http://adodb.sourceforge.net/ + +BSD Style-License +================= + +Copyright (c) 2000, 2001, 2002, 2003, 2004 John Lim +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this list +of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this list +of conditions and the following disclaimer in the documentation and/or other materials +provided with the distribution. + +Neither the name of the John Lim nor the names of its contributors may be used to +endorse or promote products derived from this software without specific prior written +permission. + +DISCLAIMER: +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +JOHN LIM OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +========================================================== +GNU LESSER GENERAL PUBLIC LICENSE +Version 2.1, February 1999 + +Copyright (C) 1991, 1999 Free Software Foundation, Inc. +59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + +Preamble +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. + +This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. + +When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. + +To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. + +For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. + +We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. + +To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. + +Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. + +Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. + +When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. + +We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. + +For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. + +In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. + +Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. + +The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. + + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION +0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". + +A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. + +The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) + +"Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. + +Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. + +1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. + +You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: + + +a) The modified work must itself be a software library. +b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. +c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. +d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. +(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. + +3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. + +Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. + +This option is useful when you wish to copy part of the code of the Library into a program that is not a library. + +4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. + +If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. + +5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. + +However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. + +When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. + +If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) + +Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. + +6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. + +You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: + + +a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) +b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. +c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. +d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. +e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. +For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. + +It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. + +7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: + + +a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. +b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. +8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. + +9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. + +10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. + +11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. + +This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. + +12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. + +13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. + +14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. + +NO WARRANTY + +15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + + +END OF TERMS AND CONDITIONS diff --git a/Source/gallery2/lib/adodb/perf/perf-db2.inc.php b/Source/gallery2/lib/adodb/perf/perf-db2.inc.php new file mode 100644 index 0000000..941f2f9 --- /dev/null +++ b/Source/gallery2/lib/adodb/perf/perf-db2.inc.php @@ -0,0 +1,102 @@ + array('RATIO', + "SELECT + case when sum(POOL_DATA_L_READS+POOL_INDEX_L_READS)=0 then 0 + else 100*(1-sum(POOL_DATA_P_READS+POOL_INDEX_P_READS)/sum(POOL_DATA_L_READS+POOL_INDEX_L_READS)) end + FROM TABLE(SNAPSHOT_APPL('',-2)) as t", + '=WarnCacheRatio'), + + 'Data Cache', + 'data cache buffers' => array('DATAC', + 'select sum(npages) from SYSCAT.BUFFERPOOLS', + 'See tuning reference.' ), + 'cache blocksize' => array('DATAC', + 'select avg(pagesize) from SYSCAT.BUFFERPOOLS', + '' ), + 'data cache size' => array('DATAC', + 'select sum(npages*pagesize) from SYSCAT.BUFFERPOOLS', + '' ), + 'Connections', + 'current connections' => array('SESS', + "SELECT count(*) FROM TABLE(SNAPSHOT_APPL_INFO('',-2)) as t", + ''), + + false + ); + + + function perf_db2(&$conn) + { + $this->conn =& $conn; + } + + function Explain($sql,$partial=false) + { + $save = $this->conn->LogSQL(false); + if ($partial) { + $sqlq = $this->conn->qstr($sql.'%'); + $arr = $this->conn->GetArray("select distinct sql1 from adodb_logsql where sql1 like $sqlq"); + if ($arr) { + foreach($arr as $row) { + $sql = reset($row); + if (crc32($sql) == $partial) break; + } + } + } + $qno = rand(); + $ok = $this->conn->Execute("EXPLAIN PLAN SET QUERYNO=$qno FOR $sql"); + ob_start(); + if (!$ok) echo "

Have EXPLAIN tables been created?

"; + else { + $rs = $this->conn->Execute("select * from explain_statement where queryno=$qno"); + if ($rs) rs2html($rs); + } + $s = ob_get_contents(); + ob_end_clean(); + $this->conn->LogSQL($save); + + $s .= $this->Tracer($sql); + return $s; + } + + + function Tables() + { + $rs = $this->conn->Execute("select tabschema,tabname,card as rows, + npages pages_used,fpages pages_allocated, tbspace tablespace + from syscat.tables where tabschema not in ('SYSCAT','SYSIBM','SYSSTAT') order by 1,2"); + return rs2html($rs,false,false,false,false); + } +} +?> diff --git a/Source/gallery2/lib/adodb/perf/perf-mssql.inc.php b/Source/gallery2/lib/adodb/perf/perf-mssql.inc.php new file mode 100644 index 0000000..ff38fd6 --- /dev/null +++ b/Source/gallery2/lib/adodb/perf/perf-mssql.inc.php @@ -0,0 +1,164 @@ + array('RATIO', + "select round((a.cntr_value*100.0)/b.cntr_value,2) from master.dbo.sysperfinfo a, master.dbo.sysperfinfo b where a.counter_name = 'Buffer cache hit ratio' and b.counter_name='Buffer cache hit ratio base'", + '=WarnCacheRatio'), + 'prepared sql hit ratio' => array('RATIO', + array('dbcc cachestats','Prepared',1,100), + ''), + 'adhoc sql hit ratio' => array('RATIO', + array('dbcc cachestats','Adhoc',1,100), + ''), + 'IO', + 'data reads' => array('IO', + "select cntr_value from master.dbo.sysperfinfo where counter_name = 'Page reads/sec'"), + 'data writes' => array('IO', + "select cntr_value from master.dbo.sysperfinfo where counter_name = 'Page writes/sec'"), + + 'Data Cache', + 'data cache size' => array('DATAC', + "select cntr_value*8192 from master.dbo.sysperfinfo where counter_name = 'Total Pages' and object_name='SQLServer:Buffer Manager'", + '' ), + 'data cache blocksize' => array('DATAC', + "select 8192",'page size'), + 'Connections', + 'current connections' => array('SESS', + '=sp_who', + ''), + 'max connections' => array('SESS', + "SELECT @@MAX_CONNECTIONS", + ''), + + false + ); + + + function perf_mssql(&$conn) + { + if ($conn->dataProvider == 'odbc') { + $this->sql1 = 'sql1'; + //$this->explain = false; + } + $this->conn =& $conn; + } + + function Explain($sql,$partial=false) + { + + $save = $this->conn->LogSQL(false); + if ($partial) { + $sqlq = $this->conn->qstr($sql.'%'); + $arr = $this->conn->GetArray("select distinct sql1 from adodb_logsql where sql1 like $sqlq"); + if ($arr) { + foreach($arr as $row) { + $sql = reset($row); + if (crc32($sql) == $partial) break; + } + } + } + + $s = '

Explain: '.htmlspecialchars($sql).'

'; + $this->conn->Execute("SET SHOWPLAN_ALL ON;"); + $sql = str_replace('?',"''",$sql); + global $ADODB_FETCH_MODE; + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + $rs =& $this->conn->Execute($sql); + //adodb_printr($rs); + $ADODB_FETCH_MODE = $save; + if ($rs) { + $rs->MoveNext(); + $s .= ''; + while (!$rs->EOF) { + $s .= '\n"; ## NOTE CORRUPT tag is intentional!!!! + $rs->MoveNext(); + } + $s .= '
Rows IO CPU     Plan
'.round($rs->fields[8],1).''.round($rs->fields[9],3).''.round($rs->fields[10],3).'
'.htmlspecialchars($rs->fields[0])."
'; + + $rs->NextRecordSet(); + } + + $this->conn->Execute("SET SHOWPLAN_ALL OFF;"); + $this->conn->LogSQL($save); + $s .= $this->Tracer($sql); + return $s; + } + + function Tables() + { + global $ADODB_FETCH_MODE; + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + //$this->conn->debug=1; + $s = ''; + $rs1 = $this->conn->Execute("select distinct name from sysobjects where xtype='U'"); + if ($rs1) { + while (!$rs1->EOF) { + $tab = $rs1->fields[0]; + $tabq = $this->conn->qstr($tab); + $rs2 = $this->conn->Execute("sp_spaceused $tabq"); + if ($rs2) { + $s .= ''; + $rs2->Close(); + } + $rs1->MoveNext(); + } + $rs1->Close(); + } + $ADODB_FETCH_MODE = $save; + return $s.'
tablenamesize_in_kindex sizereserved size
'.$tab.''.$rs2->fields[3].''.$rs2->fields[4].''.$rs2->fields[2].'
'; + } + + function sp_who() + { + $arr = $this->conn->GetArray('sp_who'); + return sizeof($arr); + } + + function HealthCheck($cli=false) + { + + $this->conn->Execute('dbcc traceon(3604)'); + $html = adodb_perf::HealthCheck($cli); + $this->conn->Execute('dbcc traceoff(3604)'); + return $html; + } + + +} + +?> diff --git a/Source/gallery2/lib/adodb/perf/perf-mysql.inc.php b/Source/gallery2/lib/adodb/perf/perf-mysql.inc.php new file mode 100644 index 0000000..6f217cb --- /dev/null +++ b/Source/gallery2/lib/adodb/perf/perf-mysql.inc.php @@ -0,0 +1,315 @@ + array('RATIO', + '=GetKeyHitRatio', + '=WarnCacheRatio'), + 'InnoDB cache hit ratio' => array('RATIO', + '=GetInnoDBHitRatio', + '=WarnCacheRatio'), + 'data cache hit ratio' => array('HIDE', # only if called + '=FindDBHitRatio', + '=WarnCacheRatio'), + 'sql cache hit ratio' => array('RATIO', + '=GetQHitRatio', + ''), + 'IO', + 'data reads' => array('IO', + '=GetReads', + 'Number of selects (Key_reads is not accurate)'), + 'data writes' => array('IO', + '=GetWrites', + 'Number of inserts/updates/deletes * coef (Key_writes is not accurate)'), + + 'Data Cache', + 'MyISAM data cache size' => array('DATAC', + array("show variables", 'key_buffer_size'), + '' ), + 'BDB data cache size' => array('DATAC', + array("show variables", 'bdb_cache_size'), + '' ), + 'InnoDB data cache size' => array('DATAC', + array("show variables", 'innodb_buffer_pool_size'), + '' ), + 'Memory Usage', + 'read buffer size' => array('CACHE', + array("show variables", 'read_buffer_size'), + '(per session)'), + 'sort buffer size' => array('CACHE', + array("show variables", 'sort_buffer_size'), + 'Size of sort buffer (per session)' ), + 'table cache' => array('CACHE', + array("show variables", 'table_cache'), + 'Number of tables to keep open'), + 'Connections', + 'current connections' => array('SESS', + array('show status','Threads_connected'), + ''), + 'max connections' => array( 'SESS', + array("show variables",'max_connections'), + ''), + + false + ); + + function perf_mysql(&$conn) + { + $this->conn =& $conn; + } + + function Explain($sql,$partial=false) + { + + if (strtoupper(substr(trim($sql),0,6)) !== 'SELECT') return '

Unable to EXPLAIN non-select statement

'; + $save = $this->conn->LogSQL(false); + if ($partial) { + $sqlq = $this->conn->qstr($sql.'%'); + $arr = $this->conn->GetArray("select distinct sql1 from adodb_logsql where sql1 like $sqlq"); + if ($arr) { + foreach($arr as $row) { + $sql = reset($row); + if (crc32($sql) == $partial) break; + } + } + } + $sql = str_replace('?',"''",$sql); + + if ($partial) { + $sqlq = $this->conn->qstr($sql.'%'); + $sql = $this->conn->GetOne("select sql1 from adodb_logsql where sql1 like $sqlq"); + } + + $s = '

Explain: '.htmlspecialchars($sql).'

'; + $rs = $this->conn->Execute('EXPLAIN '.$sql); + $s .= rs2html($rs,false,false,false,false); + $this->conn->LogSQL($save); + $s .= $this->Tracer($sql); + return $s; + } + + function Tables() + { + if (!$this->tablesSQL) return false; + + $rs = $this->conn->Execute($this->tablesSQL); + if (!$rs) return false; + + $html = rs2html($rs,false,false,false,false); + return $html; + } + + function GetReads() + { + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $rs = $this->conn->Execute('show status'); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if (!$rs) return 0; + $val = 0; + while (!$rs->EOF) { + switch($rs->fields[0]) { + case 'Com_select': + $val = $rs->fields[1]; + $rs->Close(); + return $val; + } + $rs->MoveNext(); + } + + $rs->Close(); + + return $val; + } + + function GetWrites() + { + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $rs = $this->conn->Execute('show status'); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if (!$rs) return 0; + $val = 0.0; + while (!$rs->EOF) { + switch($rs->fields[0]) { + case 'Com_insert': + $val += $rs->fields[1]; break; + case 'Com_delete': + $val += $rs->fields[1]; break; + case 'Com_update': + $val += $rs->fields[1]/2; + $rs->Close(); + return $val; + } + $rs->MoveNext(); + } + + $rs->Close(); + + return $val; + } + + function FindDBHitRatio() + { + // first find out type of table + //$this->conn->debug=1; + + global $ADODB_FETCH_MODE; + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $rs = $this->conn->Execute('show table status'); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if (!$rs) return ''; + $type = strtoupper($rs->fields[1]); + $rs->Close(); + switch($type){ + case 'MYISAM': + case 'ISAM': + return $this->DBParameter('MyISAM cache hit ratio').' (MyISAM)'; + case 'INNODB': + return $this->DBParameter('InnoDB cache hit ratio').' (InnoDB)'; + default: + return $type.' not supported'; + } + + } + + function GetQHitRatio() + { + //Total number of queries = Qcache_inserts + Qcache_hits + Qcache_not_cached + $hits = $this->_DBParameter(array("show status","Qcache_hits")); + $total = $this->_DBParameter(array("show status","Qcache_inserts")); + $total += $this->_DBParameter(array("show status","Qcache_not_cached")); + + $total += $hits; + if ($total) return round(($hits*100)/$total,2); + return 0; + } + + /* + Use session variable to store Hit percentage, because MySQL + does not remember last value of SHOW INNODB STATUS hit ratio + + # 1st query to SHOW INNODB STATUS + 0.00 reads/s, 0.00 creates/s, 0.00 writes/s + Buffer pool hit rate 1000 / 1000 + + # 2nd query to SHOW INNODB STATUS + 0.00 reads/s, 0.00 creates/s, 0.00 writes/s + No buffer pool activity since the last printout + */ + function GetInnoDBHitRatio() + { + global $ADODB_FETCH_MODE; + + $save = $ADODB_FETCH_MODE; + $ADODB_FETCH_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $rs = $this->conn->Execute('show innodb status'); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_FETCH_MODE = $save; + + if (!$rs || $rs->EOF) return 0; + $stat = $rs->fields[0]; + $rs->Close(); + $at = strpos($stat,'Buffer pool hit rate'); + $stat = substr($stat,$at,200); + if (preg_match('!Buffer pool hit rate\s*([0-9]*) / ([0-9]*)!',$stat,$arr)) { + $val = 100*$arr[1]/$arr[2]; + $_SESSION['INNODB_HIT_PCT'] = $val; + return round($val,2); + } else { + if (isset($_SESSION['INNODB_HIT_PCT'])) return $_SESSION['INNODB_HIT_PCT']; + return 0; + } + return 0; + } + + function GetKeyHitRatio() + { + $hits = $this->_DBParameter(array("show status","Key_read_requests")); + $reqs = $this->_DBParameter(array("show status","Key_reads")); + if ($reqs == 0) return 0; + + return round(($hits/($reqs+$hits))*100,2); + } + + // start hack + var $optimizeTableLow = 'CHECK TABLE %s FAST QUICK'; + var $optimizeTableHigh = 'OPTIMIZE TABLE %s'; + + /** + * @see adodb_perf#optimizeTable + */ + function optimizeTable( $table, $mode = ADODB_OPT_LOW) + { + if ( !is_string( $table)) return false; + + $conn = $this->conn; + if ( !$conn) return false; + + $sql = ''; + switch( $mode) { + case ADODB_OPT_LOW : $sql = $this->optimizeTableLow; break; + case ADODB_OPT_HIGH : $sql = $this->optimizeTableHigh; break; + default : + { + // May dont use __FUNCTION__ constant for BC (__FUNCTION__ Added in PHP 4.3.0) + ADOConnection::outp( sprintf( "

%s: '%s' using of undefined mode '%s'

", __CLASS__, __FUNCTION__, $mode)); + return false; + } + } + $sql = sprintf( $sql, $table); + + return $conn->Execute( $sql) !== false; + } + // end hack +} +?> diff --git a/Source/gallery2/lib/adodb/perf/perf-oci8.inc.php b/Source/gallery2/lib/adodb/perf/perf-oci8.inc.php new file mode 100644 index 0000000..268f2ad --- /dev/null +++ b/Source/gallery2/lib/adodb/perf/perf-oci8.inc.php @@ -0,0 +1,509 @@ + array('RATIOH', + "select round((1-(phy.value / (cur.value + con.value)))*100,2) + from v\$sysstat cur, v\$sysstat con, v\$sysstat phy + where cur.name = 'db block gets' and + con.name = 'consistent gets' and + phy.name = 'physical reads'", + '=WarnCacheRatio'), + + 'sql cache hit ratio' => array( 'RATIOH', + 'select round(100*(sum(pins)-sum(reloads))/sum(pins),2) from v$librarycache', + 'increase shared_pool_size if too ratio low'), + + 'datadict cache hit ratio' => array('RATIOH', + "select + round((1 - (sum(getmisses) / (sum(gets) + + sum(getmisses))))*100,2) + from v\$rowcache", + 'increase shared_pool_size if too ratio low'), + + 'memory sort ratio' => array('RATIOH', + "SELECT ROUND((100 * b.VALUE) /DECODE ((a.VALUE + b.VALUE), + 0,1,(a.VALUE + b.VALUE)),2) +FROM v\$sysstat a, + v\$sysstat b +WHERE a.name = 'sorts (disk)' +AND b.name = 'sorts (memory)'", + "% of memory sorts compared to disk sorts - should be over 95%"), + + 'IO', + 'data reads' => array('IO', + "select value from v\$sysstat where name='physical reads'"), + + 'data writes' => array('IO', + "select value from v\$sysstat where name='physical writes'"), + + 'Data Cache', + 'data cache buffers' => array( 'DATAC', + "select a.value/b.value from v\$parameter a, v\$parameter b + where a.name = 'db_cache_size' and b.name= 'db_block_size'", + 'Number of cache buffers. Tune db_cache_size if the data cache hit ratio is too low.'), + 'data cache blocksize' => array('DATAC', + "select value from v\$parameter where name='db_block_size'", + '' ), + 'Memory Pools', + 'data cache size' => array('DATAC', + "select value from v\$parameter where name = 'db_cache_size'", + 'db_cache_size' ), + 'shared pool size' => array('DATAC', + "select value from v\$parameter where name = 'shared_pool_size'", + 'shared_pool_size, which holds shared sql, stored procedures, dict cache and similar shared structs' ), + 'java pool size' => array('DATAJ', + "select value from v\$parameter where name = 'java_pool_size'", + 'java_pool_size' ), + 'large pool buffer size' => array('CACHE', + "select value from v\$parameter where name='large_pool_size'", + 'this pool is for large mem allocations (not because it is larger than shared pool), for MTS sessions, parallel queries, io buffers (large_pool_size) ' ), + + 'pga buffer size' => array('CACHE', + "select value from v\$parameter where name='pga_aggregate_target'", + 'program global area is private memory for sorting, and hash and bitmap merges - since oracle 9i (pga_aggregate_target)' ), + + + 'Connections', + 'current connections' => array('SESS', + 'select count(*) from sys.v_$session where username is not null', + ''), + 'max connections' => array( 'SESS', + "select value from v\$parameter where name='sessions'", + ''), + + 'Memory Utilization', + 'data cache utilization ratio' => array('RATIOU', + "select round((1-bytes/sgasize)*100, 2) + from (select sum(bytes) sgasize from sys.v_\$sgastat) s, sys.v_\$sgastat f + where name = 'free memory' and pool = 'shared pool'", + 'Percentage of data cache actually in use - should be over 85%'), + + 'shared pool utilization ratio' => array('RATIOU', + 'select round((sga.bytes/p.value)*100,2) + from v$sgastat sga, v$parameter p + where sga.name = \'free memory\' and sga.pool = \'shared pool\' + and p.name = \'shared_pool_size\'', + 'Percentage of shared pool actually used - too low is bad, too high is worse'), + + 'large pool utilization ratio' => array('RATIOU', + "select round((1-bytes/sgasize)*100, 2) + from (select sum(bytes) sgasize from sys.v_\$sgastat) s, sys.v_\$sgastat f + where name = 'free memory' and pool = 'large pool'", + 'Percentage of large_pool actually in use - too low is bad, too high is worse'), + 'sort buffer size' => array('CACHE', + "select value from v\$parameter where name='sort_area_size'", + 'max in-mem sort_area_size (per query), uses memory in pga' ), + + 'pga usage at peak' => array('RATIOU', + '=PGA','Mb utilization at peak transactions (requires Oracle 9i+)'), + 'Transactions', + 'rollback segments' => array('ROLLBACK', + "select count(*) from sys.v_\$rollstat", + ''), + + 'peak transactions' => array('ROLLBACK', + "select max_utilization tx_hwm + from sys.v_\$resource_limit + where resource_name = 'transactions'", + 'Taken from high-water-mark'), + 'max transactions' => array('ROLLBACK', + "select value from v\$parameter where name = 'transactions'", + 'max transactions / rollback segments < 3.5 (or transactions_per_rollback_segment)'), + 'Parameters', + 'cursor sharing' => array('CURSOR', + "select value from v\$parameter where name = 'cursor_sharing'", + 'Cursor reuse strategy. Recommended is FORCE (8i+) or SIMILAR (9i+). See cursor_sharing.'), + /* + 'cursor reuse' => array('CURSOR', + "select count(*) from (select sql_text_wo_constants, count(*) + from t1 + group by sql_text_wo_constants +having count(*) > 100)",'These are sql statements that should be using bind variables'),*/ + 'index cache cost' => array('COST', + "select value from v\$parameter where name = 'optimizer_index_caching'", + '=WarnIndexCost'), + 'random page cost' => array('COST', + "select value from v\$parameter where name = 'optimizer_index_cost_adj'", + '=WarnPageCost'), + + false + + ); + + + function perf_oci8(&$conn) + { + $savelog = $conn->LogSQL(false); + $this->version = $conn->ServerInfo(); + $conn->LogSQL($savelog); + $this->conn =& $conn; + } + + function WarnPageCost($val) + { + if ($val == 100) $s = 'Too High. '; + else $s = ''; + + return $s.'Recommended is 20-50 for TP, and 50 for data warehouses. Default is 100. See optimizer_index_cost_adj. '; + } + + function WarnIndexCost($val) + { + if ($val == 0) $s = 'Too Low. '; + else $s = ''; + + return $s.'Percentage of indexed data blocks expected in the cache. + Recommended is 20 (fast disk array) to 50 (slower hard disks). Default is 0. + See optimizer_index_caching.'; + } + + function PGA() + { + if ($this->version['version'] < 9) return 'Oracle 9i or later required'; + + $rs = $this->conn->Execute("select a.mb,a.targ as pga_size_pct,a.pct from + (select round(pga_target_for_estimate/1024.0/1024.0,0) Mb, + pga_target_factor targ,estd_pga_cache_hit_percentage pct,rownum as r + from v\$pga_target_advice) a left join + (select round(pga_target_for_estimate/1024.0/1024.0,0) Mb, + pga_target_factor targ,estd_pga_cache_hit_percentage pct,rownum as r + from v\$pga_target_advice) b on + a.r = b.r+1 where + b.pct < 100"); + if (!$rs) return "Only in 9i or later"; + $rs->Close(); + if ($rs->EOF) return "PGA could be too big"; + + return reset($rs->fields); + } + + function Explain($sql,$partial=false) + { + $savelog = $this->conn->LogSQL(false); + $rs =& $this->conn->SelectLimit("select ID FROM PLAN_TABLE"); + if (!$rs) { + echo "

Missing PLAN_TABLE

+
+CREATE TABLE PLAN_TABLE (
+  STATEMENT_ID                    VARCHAR2(30),
+  TIMESTAMP                       DATE,
+  REMARKS                         VARCHAR2(80),
+  OPERATION                       VARCHAR2(30),
+  OPTIONS                         VARCHAR2(30),
+  OBJECT_NODE                     VARCHAR2(128),
+  OBJECT_OWNER                    VARCHAR2(30),
+  OBJECT_NAME                     VARCHAR2(30),
+  OBJECT_INSTANCE                 NUMBER(38),
+  OBJECT_TYPE                     VARCHAR2(30),
+  OPTIMIZER                       VARCHAR2(255),
+  SEARCH_COLUMNS                  NUMBER,
+  ID                              NUMBER(38),
+  PARENT_ID                       NUMBER(38),
+  POSITION                        NUMBER(38),
+  COST                            NUMBER(38),
+  CARDINALITY                     NUMBER(38),
+  BYTES                           NUMBER(38),
+  OTHER_TAG                       VARCHAR2(255),
+  PARTITION_START                 VARCHAR2(255),
+  PARTITION_STOP                  VARCHAR2(255),
+  PARTITION_ID                    NUMBER(38),
+  OTHER                           LONG,
+  DISTRIBUTION                    VARCHAR2(30)
+);
+
"; + return false; + } + + $rs->Close(); + // $this->conn->debug=1; + + if ($partial) { + $sqlq = $this->conn->qstr($sql.'%'); + $arr = $this->conn->GetArray("select distinct distinct sql1 from adodb_logsql where sql1 like $sqlq"); + if ($arr) { + foreach($arr as $row) { + $sql = reset($row); + if (crc32($sql) == $partial) break; + } + } + } + + $s = "

Explain: ".htmlspecialchars($sql)."

"; + + $this->conn->BeginTrans(); + $id = "ADODB ".microtime(); + + $rs =& $this->conn->Execute("EXPLAIN PLAN SET STATEMENT_ID='$id' FOR $sql"); + $m = $this->conn->ErrorMsg(); + if ($m) { + $this->conn->RollbackTrans(); + $this->conn->LogSQL($savelog); + $s .= "

$m

"; + return $s; + } + $rs =& $this->conn->Execute(" + select + '
'||lpad('--', (level-1)*2,'-') || trim(operation) || ' ' || trim(options)||'
' as Operation, + object_name,COST,CARDINALITY,bytes + FROM plan_table +START WITH id = 0 and STATEMENT_ID='$id' +CONNECT BY prior id=parent_id and statement_id='$id'"); + + $s .= rs2html($rs,false,false,false,false); + $this->conn->RollbackTrans(); + $this->conn->LogSQL($savelog); + $s .= $this->Tracer($sql,$partial); + return $s; + } + + + function CheckMemory() + { + if ($this->version['version'] < 9) return 'Oracle 9i or later required'; + + $rs =& $this->conn->Execute(" +select a.size_for_estimate as cache_mb_estimate, + case when a.size_factor=1 then + '<<= current' + when a.estd_physical_read_factor-b.estd_physical_read_factor > 0 and a.estd_physical_read_factor<1 then + '- BETTER - ' + else ' ' end as currsize, + a.estd_physical_read_factor-b.estd_physical_read_factor as best_when_0 + from (select size_for_estimate,size_factor,estd_physical_read_factor,rownum r from v\$db_cache_advice) a , + (select size_for_estimate,size_factor,estd_physical_read_factor,rownum r from v\$db_cache_advice) b where a.r = b.r-1"); + if (!$rs) return false; + + /* + The v$db_cache_advice utility show the marginal changes in physical data block reads for different sizes of db_cache_size + */ + $s = "

Data Cache Estimate

"; + if ($rs->EOF) { + $s .= "

Cache that is 50% of current size is still too big

"; + } else { + $s .= "Ideal size of Data Cache is when \"best_when_0\" changes from a positive number and becomes zero."; + $s .= rs2html($rs,false,false,false,false); + } + return $s; + } + + /* + Generate html for suspicious/expensive sql + */ + function tohtml(&$rs,$type) + { + $o1 = $rs->FetchField(0); + $o2 = $rs->FetchField(1); + $o3 = $rs->FetchField(2); + if ($rs->EOF) return '

None found

'; + $check = ''; + $sql = ''; + $s = "\n\n'; + while (!$rs->EOF) { + if ($check != $rs->fields[0].'::'.$rs->fields[1]) { + if ($check) { + $carr = explode('::',$check); + $prefix = "'; + $suffix = ''; + if (strlen($prefix)>2000) { + $prefix = ''; + $suffix = ''; + } + + $s .= "\n'; + } + $sql = $rs->fields[2]; + $check = $rs->fields[0].'::'.$rs->fields[1]; + } else + $sql .= $rs->fields[2]; + if (substr($sql,strlen($sql)-1) == "\0") $sql = substr($sql,0,strlen($sql)-1); + $rs->MoveNext(); + } + $rs->Close(); + + $carr = explode('::',$check); + $prefix = "'; + $suffix = ''; + if (strlen($prefix)>2000) { + $prefix = ''; + $suffix = ''; + } + $s .= "\n'; + + return $s."
".$o1->name.''.$o2->name.''.$o3->name.'
".$carr[0].''.$carr[1].''.$prefix.$sql.$suffix.'
".$carr[0].''.$carr[1].''.$prefix.$sql.$suffix.'
\n\n"; + } + + // code thanks to Ixora. + // http://www.ixora.com.au/scripts/query_opt.htm + // requires oracle 8.1.7 or later + function SuspiciousSQL($numsql=10) + { + $sql = " +select + substr(to_char(s.pct, '99.00'), 2) || '%' load, + s.executions executes, + p.sql_text +from + ( + select + address, + buffer_gets, + executions, + pct, + rank() over (order by buffer_gets desc) ranking + from + ( + select + address, + buffer_gets, + executions, + 100 * ratio_to_report(buffer_gets) over () pct + from + sys.v_\$sql + where + command_type != 47 and module != 'T.O.A.D.' + ) + where + buffer_gets > 50 * executions + ) s, + sys.v_\$sqltext p +where + s.ranking <= $numsql and + p.address = s.address +order by + 1 desc, s.address, p.piece"; + + global $ADODB_CACHE_MODE; + if (isset($_GET['expsixora']) && isset($_GET['sql'])) { + $partial = empty($_GET['part']); + echo "".$this->Explain($_GET['sql'],$partial)."\n"; + } + + if (isset($_GET['sql'])) return $this->_SuspiciousSQL($numsql); + + $s = ''; + $s .= $this->_SuspiciousSQL($numsql); + $s .= '

'; + + $save = $ADODB_CACHE_MODE; + $ADODB_CACHE_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $savelog = $this->conn->LogSQL(false); + $rs =& $this->conn->SelectLimit($sql); + $this->conn->LogSQL($savelog); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_CACHE_MODE = $save; + if ($rs) { + $s .= "\n

Ixora Suspicious SQL

"; + $s .= $this->tohtml($rs,'expsixora'); + } + + return $s; + } + + // code thanks to Ixora. + // http://www.ixora.com.au/scripts/query_opt.htm + // requires oracle 8.1.7 or later + function ExpensiveSQL($numsql = 10) + { + $sql = " +select + substr(to_char(s.pct, '99.00'), 2) || '%' load, + s.executions executes, + p.sql_text +from + ( + select + address, + disk_reads, + executions, + pct, + rank() over (order by disk_reads desc) ranking + from + ( + select + address, + disk_reads, + executions, + 100 * ratio_to_report(disk_reads) over () pct + from + sys.v_\$sql + where + command_type != 47 and module != 'T.O.A.D.' + ) + where + disk_reads > 50 * executions + ) s, + sys.v_\$sqltext p +where + s.ranking <= $numsql and + p.address = s.address +order by + 1 desc, s.address, p.piece +"; + global $ADODB_CACHE_MODE; + if (isset($_GET['expeixora']) && isset($_GET['sql'])) { + $partial = empty($_GET['part']); + echo "".$this->Explain($_GET['sql'],$partial)."\n"; + } + if (isset($_GET['sql'])) { + $var = $this->_ExpensiveSQL($numsql); + return $var; + } + + $s = ''; + $s .= $this->_ExpensiveSQL($numsql); + $s .= '

'; + $save = $ADODB_CACHE_MODE; + $ADODB_CACHE_MODE = ADODB_FETCH_NUM; + if ($this->conn->fetchMode !== false) $savem = $this->conn->SetFetchMode(false); + + $savelog = $this->conn->LogSQL(false); + $rs =& $this->conn->Execute($sql); + $this->conn->LogSQL($savelog); + + if (isset($savem)) $this->conn->SetFetchMode($savem); + $ADODB_CACHE_MODE = $save; + + if ($rs) { + $s .= "\n

Ixora Expensive SQL

"; + $s .= $this->tohtml($rs,'expeixora'); + } + + return $s; + } + +} +?> diff --git a/Source/gallery2/lib/adodb/perf/perf-postgres.inc.php b/Source/gallery2/lib/adodb/perf/perf-postgres.inc.php new file mode 100644 index 0000000..2c579be --- /dev/null +++ b/Source/gallery2/lib/adodb/perf/perf-postgres.inc.php @@ -0,0 +1,124 @@ + array('RATIO', + "select case when count(*)=3 then 'TRUE' else 'FALSE' end from pg_settings where (name='stats_block_level' or name='stats_row_level' or name='stats_start_collector') and setting='on' ", + 'Value must be TRUE to enable hit ratio statistics (stats_start_collector,stats_row_level and stats_block_level must be set to true in postgresql.conf)'), + 'data cache hit ratio' => array('RATIO', + "select case when blks_hit=0 then 0 else round( ((1-blks_read::float/blks_hit)*100)::numeric, 2) end from pg_stat_database where datname='\$DATABASE'", + '=WarnCacheRatio'), + 'IO', + 'data reads' => array('IO', + 'select sum(heap_blks_read+toast_blks_read) from pg_statio_user_tables', + ), + 'data writes' => array('IO', + 'select round((sum(n_tup_ins/4.0+n_tup_upd/8.0+n_tup_del/4.0)/16)::numeric,2) from pg_stat_user_tables', + 'Count of inserts/updates/deletes * coef'), + + 'Data Cache', + 'data cache buffers' => array('DATAC', + "select setting from pg_settings where name='shared_buffers'", + 'Number of cache buffers. Tuning'), + 'cache blocksize' => array('DATAC', + 'select 8192', + '(estimate)' ), + 'data cache size' => array( 'DATAC', + "select setting::integer*8192 from pg_settings where name='shared_buffers'", + '' ), + 'operating system cache size' => array( 'DATA', + "select setting::integer*8192 from pg_settings where name='effective_cache_size'", + '(effective cache size)' ), + 'Memory Usage', + # Postgres 7.5 changelog: Rename server parameters SortMem and VacuumMem to work_mem and maintenance_work_mem; + 'sort/work buffer size' => array('CACHE', + "select setting::integer*1024 from pg_settings where name='sort_mem' or name = 'work_mem' order by name", + 'Size of sort buffer (per query)' ), + 'Connections', + 'current connections' => array('SESS', + 'select count(*) from pg_stat_activity', + ''), + 'max connections' => array('SESS', + "select setting from pg_settings where name='max_connections'", + ''), + 'Parameters', + 'rollback buffers' => array('COST', + "select setting from pg_settings where name='wal_buffers'", + 'WAL buffers'), + 'random page cost' => array('COST', + "select setting from pg_settings where name='random_page_cost'", + 'Cost of doing a seek (default=4). See random_page_cost'), + false + ); + + function perf_postgres(&$conn) + { + $this->conn =& $conn; + } + + function Explain($sql,$partial=false) + { + $save = $this->conn->LogSQL(false); + + if ($partial) { + $sqlq = $this->conn->qstr($sql.'%'); + $arr = $this->conn->GetArray("select distinct distinct sql1 from adodb_logsql where sql1 like $sqlq"); + if ($arr) { + foreach($arr as $row) { + $sql = reset($row); + if (crc32($sql) == $partial) break; + } + } + } + $sql = str_replace('?',"''",$sql); + $s = '

Explain: '.htmlspecialchars($sql).'

'; + $rs = $this->conn->Execute('EXPLAIN '.$sql); + $this->conn->LogSQL($save); + $s .= '
';
+		if ($rs)
+			while (!$rs->EOF) {
+				$s .= reset($rs->fields)."\n";
+				$rs->MoveNext();
+			}
+		$s .= '
'; + $s .= $this->Tracer($sql,$partial); + return $s; + } +} +?> diff --git a/Source/gallery2/lib/adodb/readme.txt b/Source/gallery2/lib/adodb/readme.txt new file mode 100644 index 0000000..a1703b1 --- /dev/null +++ b/Source/gallery2/lib/adodb/readme.txt @@ -0,0 +1,62 @@ +>> ADODB Library for PHP4 + +(c) 2000-2004 John Lim (jlim@natsoft.com.my) + +Released under both BSD and GNU Lesser GPL library license. +This means you can use it in proprietary products. + + +>> Introduction + +PHP's database access functions are not standardised. This creates a +need for a database class library to hide the differences between the +different databases (encapsulate the differences) so we can easily +switch databases. + +We currently support MySQL, Interbase, Sybase, PostgreSQL, Oracle, +Microsoft SQL server, Foxpro ODBC, Access ODBC, Informix, DB2, +Sybase SQL Anywhere, generic ODBC and Microsoft's ADO. + +We hope more people will contribute drivers to support other databases. + + +>> Documentation and Examples + +Refer to the adodb/docs directory for full documentation and examples. +There is also a tutorial tute.htm that contrasts ADODB code with +mysql code. + + +>>> Files +Adodb.inc.php is the main file. You need to include only this file. + +Adodb-*.inc.php are the database specific driver code. + +Test.php contains a list of test commands to exercise the class library. + +Adodb-session.php is the PHP4 session handling code. + +Testdatabases.inc.php contains the list of databases to apply the tests on. + +Benchmark.php is a simple benchmark to test the throughput of a simple SELECT +statement for databases described in testdatabases.inc.php. The benchmark +tables are created in test.php. + +readme.htm is the main documentation. + +tute.htm is the tutorial. + + +>> More Info + +For more information, including installation see readme.htm +or visit + http://adodb.sourceforge.net/ + + +>> Feature Requests and Bug Reports + +Email to jlim@natsoft.com.my + + + diff --git a/Source/gallery2/lib/adodb/tohtml.inc.php b/Source/gallery2/lib/adodb/tohtml.inc.php new file mode 100644 index 0000000..0c48636 --- /dev/null +++ b/Source/gallery2/lib/adodb/tohtml.inc.php @@ -0,0 +1,195 @@ + +*/ + +// specific code for tohtml +GLOBAL $gSQLMaxRows,$gSQLBlockRows,$ADODB_ROUND; + +$ADODB_ROUND=4; // rounding +$gSQLMaxRows = 1000; // max no of rows to download +$gSQLBlockRows=20; // max no of rows per table block + +// RecordSet to HTML Table +//------------------------------------------------------------ +// Convert a recordset to a html table. Multiple tables are generated +// if the number of rows is > $gSQLBlockRows. This is because +// web browsers normally require the whole table to be downloaded +// before it can be rendered, so we break the output into several +// smaller faster rendering tables. +// +// $rs: the recordset +// $ztabhtml: the table tag attributes (optional) +// $zheaderarray: contains the replacement strings for the headers (optional) +// +// USAGE: +// include('adodb.inc.php'); +// $db = ADONewConnection('mysql'); +// $db->Connect('mysql','userid','password','database'); +// $rs = $db->Execute('select col1,col2,col3 from table'); +// rs2html($rs, 'BORDER=2', array('Title1', 'Title2', 'Title3')); +// $rs->Close(); +// +// RETURNS: number of rows displayed + + +function rs2html(&$rs,$ztabhtml=false,$zheaderarray=false,$htmlspecialchars=true,$echo = true) +{ +$s ='';$rows=0;$docnt = false; +GLOBAL $gSQLMaxRows,$gSQLBlockRows,$ADODB_ROUND; + + if (!$rs) { + printf(ADODB_BAD_RS,'rs2html'); + return false; + } + + if (! $ztabhtml) $ztabhtml = "BORDER='1' WIDTH='98%'"; + //else $docnt = true; + $typearr = array(); + $ncols = $rs->FieldCount(); + $hdr = "\n\n"; + for ($i=0; $i < $ncols; $i++) { + $field = $rs->FetchField($i); + if ($field) { + if ($zheaderarray) $fname = $zheaderarray[$i]; + else $fname = htmlspecialchars($field->name); + $typearr[$i] = $rs->MetaType($field->type,$field->max_length); + //print " $field->name $field->type $typearr[$i] "; + } else { + $fname = 'Field '.($i+1); + $typearr[$i] = 'C'; + } + if (strlen($fname)==0) $fname = ' '; + $hdr .= ""; + } + $hdr .= "\n"; + if ($echo) print $hdr."\n\n"; + else $html = $hdr; + + // smart algorithm - handles ADODB_FETCH_MODE's correctly by probing... + $numoffset = isset($rs->fields[0]) ||isset($rs->fields[1]) || isset($rs->fields[2]); + while (!$rs->EOF) { + + $s .= "\n"; + + for ($i=0; $i < $ncols; $i++) { + if ($i===0) $v=($numoffset) ? $rs->fields[0] : reset($rs->fields); + else $v = ($numoffset) ? $rs->fields[$i] : next($rs->fields); + + $type = $typearr[$i]; + switch($type) { + case 'D': + if (empty($v)) $s .= "\n"; + else if (!strpos($v,':')) { + $s .= " \n"; + } + break; + case 'T': + if (empty($v)) $s .= "\n"; + else $s .= " \n"; + break; + + case 'N': + if (abs(abs($v) - round($v,0)) < 0.00000001) + $v = round($v); + else + $v = round($v,$ADODB_ROUND); + case 'I': + $s .= " \n"; + + break; + /* + case 'B': + if (substr($v,8,2)=="BM" ) $v = substr($v,8); + $mtime = substr(str_replace(' ','_',microtime()),2); + $tmpname = "tmp/".uniqid($mtime).getmypid(); + $fd = @fopen($tmpname,'a'); + @ftruncate($fd,0); + @fwrite($fd,$v); + @fclose($fd); + if (!function_exists ("mime_content_type")) { + function mime_content_type ($file) { + return exec("file -bi ".escapeshellarg($file)); + } + } + $t = mime_content_type($tmpname); + $s .= (substr($t,0,5)=="image") ? " \\n" : " \\n"; + break; + */ + + default: + if ($htmlspecialchars) $v = htmlspecialchars(trim($v)); + $v = trim($v); + if (strlen($v) == 0) $v = ' '; + $s .= " \n"; + + } + } // for + $s .= "\n\n"; + + $rows += 1; + if ($rows >= $gSQLMaxRows) { + $rows = "

Truncated at $gSQLMaxRows

"; + break; + } // switch + + $rs->MoveNext(); + + // additional EOF check to prevent a widow header + if (!$rs->EOF && $rows % $gSQLBlockRows == 0) { + + //if (connection_aborted()) break;// not needed as PHP aborts script, unlike ASP + if ($echo) print $s . "
$fname
  ".$rs->UserDate($v,"D d, M Y") ."    ".$rs->UserTimeStamp($v,"D d, M Y, h:i:s") ." ".stripslashes((trim($v))) ." $t$t". str_replace("\n",'
',stripslashes($v)) ."
\n\n"; + else $html .= $s ."\n\n"; + $s = $hdr; + } + } // while + + if ($echo) print $s."\n\n"; + else $html .= $s."\n\n"; + + if ($docnt) if ($echo) print "

".$rows." Rows

"; + + return ($echo) ? $rows : $html; + } + +// pass in 2 dimensional array +function arr2html(&$arr,$ztabhtml='',$zheaderarray='') +{ + if (!$ztabhtml) $ztabhtml = 'BORDER=1'; + + $s = "";//';print_r($arr); + + if ($zheaderarray) { + $s .= ''; + for ($i=0; $i\n"; + } else $s .= " \n"; + $s .= "\n\n"; + } + $s .= '
 
'; + print $s; +} + +?> diff --git a/Source/gallery2/lib/bbcode/COPYING b/Source/gallery2/lib/bbcode/COPYING new file mode 100644 index 0000000..5b6e7c6 --- /dev/null +++ b/Source/gallery2/lib/bbcode/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/Source/gallery2/lib/bbcode/LICENSE b/Source/gallery2/lib/bbcode/LICENSE new file mode 100644 index 0000000..5edadc9 --- /dev/null +++ b/Source/gallery2/lib/bbcode/LICENSE @@ -0,0 +1,23 @@ +This program is free software; you can redistribute it and/or modify +it under the terms of either: + +a) the GNU General Public License as published by the Free +Software Foundation; either version 1, or (at your option) any +later version, or + +b) the Artistic License as published by Larry Wall, either version 2.0, + or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either +the GNU General Public License or the Artistic License for more details. + +You should have received a copy of the Artistic License with this Kit, +in the file named "Artistic.clarified". If not, I'll be glad to provide +one. + +You should also have received a copy of the GNU General Public License +along with this program in the file named "COPYING"; if not, write to +the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, +MA 02111-1307, USA. diff --git a/Source/gallery2/lib/bbcode/README b/Source/gallery2/lib/bbcode/README new file mode 100644 index 0000000..cb3b771 --- /dev/null +++ b/Source/gallery2/lib/bbcode/README @@ -0,0 +1,16 @@ +The BBCode library was written by Christian Seiler and can be found +here: + + http://www.christian-seiler.de/projekte/php/bbcode/ + +It is released under the artistic license. It has been modified very +slighly to fit into Gallery, and all modifications to the original +source can be found by browsing the CVS repository here: + +http://svn.sourceforge.net/viewvc/gallery/trunk/gallery2/lib/bbcode/bbcode.class + +The initial revision of this file in CVS is the original file from +Christian's website. + +The class name was changed from BBCode to GalleryBbcode to avoid +issues with other applications that include their own BBCode class. diff --git a/Source/gallery2/lib/bbcode/stringparser.class.php b/Source/gallery2/lib/bbcode/stringparser.class.php new file mode 100644 index 0000000..eb54c31 --- /dev/null +++ b/Source/gallery2/lib/bbcode/stringparser.class.php @@ -0,0 +1,1546 @@ + + * @copyright Christian Seiler 2006 + * @package stringparser + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of either: + * + * a) the GNU General Public License as published by the Free + * Software Foundation; either version 1, or (at your option) any + * later version, or + * + * b) the Artistic License as published by Larry Wall, either version 2.0, + * or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either + * the GNU General Public License or the Artistic License for more details. + * + * You should have received a copy of the Artistic License with this Kit, + * in the file named "Artistic.clarified". If not, I'll be glad to provide + * one. + * + * You should also have received a copy of the GNU General Public License + * along with this program in the file named "COPYING"; if not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307, USA. + */ + +/** + * String parser mode: Search for the next character + * @see StringParser::_parserMode + */ +define ('STRINGPARSER_MODE_SEARCH', 1); +/** + * String parser mode: Look at each character of the string + * @see StringParser::_parserMode + */ +define ('STRINGPARSER_MODE_LOOP', 2); +/** + * Filter type: Prefilter + * @see StringParser::addFilter, StringParser::_prefilters + */ +define ('STRINGPARSER_FILTER_PRE', 1); +/** + * Filter type: Postfilter + * @see StringParser::addFilter, StringParser::_postfilters + */ +define ('STRINGPARSER_FILTER_POST', 2); + +/** + * Generic string parser class + * + * This is an abstract class for any type of string parser. + * + * @package stringparser + */ +class StringParser { + /** + * String parser mode + * + * There are two possible modes: searchmode and loop mode. In loop mode + * every single character is looked at in a loop and it is then decided + * what action to take. This is the most straight-forward approach to + * string parsing but due to the nature of PHP as a scripting language, + * it can also cost performance. In search mode the class posseses a + * list of relevant characters for parsing and uses the + * {@link PHP_MANUAL#strpos strpos} function to search for the next + * relevant character. The search mode will be faster than the loop mode + * in most circumstances but it is also more difficult to implement. + * The subclass that does the string parsing itself will define which + * mode it will implement. + * + * @access protected + * @var int + * @see STRINGPARSER_MODE_SEARCH, STRINGPARSER_MODE_LOOP + */ + var $_parserMode = STRINGPARSER_MODE_SEARCH; + + /** + * Raw text + * @access protected + * @var string + */ + var $_text = ''; + + /** + * Parse stack + * @access protected + * @var array + */ + var $_stack = array (); + + /** + * Current position in raw text + * @access protected + * @var integer + */ + var $_cpos = -1; + + /** + * Root node + * @access protected + * @var mixed + */ + var $_root = null; + + /** + * Length of the text + * @access protected + * @var integer + */ + var $_length = -1; + + /** + * Flag if this object is already parsing a text + * + * This flag is to prevent recursive calls to the parse() function that + * would cause very nasty things. + * + * @access protected + * @var boolean + */ + var $_parsing = false; + + /** + * Strict mode + * + * Whether to stop parsing if a parse error occurs. + * + * @access public + * @var boolean + */ + var $strict = false; + + /** + * Characters or strings to look for + * @access protected + * @var array + */ + var $_charactersSearch = array (); + + /** + * Characters currently allowed + * + * Note that this will only be evaluated in loop mode; in search mode + * this would ruin every performance increase. Note that only single + * characters are permitted here, no strings. Please also note that in + * loop mode, {@link StringParser::_charactersSearch _charactersSearch} + * is evaluated before this variable. + * + * If in strict mode, parsing is stopped if a character that is not + * allowed is encountered. If not in strict mode, the character is + * simply ignored. + * + * @access protected + * @var array + */ + var $_charactersAllowed = array (); + + /** + * Current parser status + * @access protected + * @var int + */ + var $_status = 0; + + /** + * Prefilters + * @access protected + * @var array + */ + var $_prefilters = array (); + + /** + * Postfilters + * @access protected + * @var array + */ + var $_postfilters = array (); + + /** + * Recently reparsed? + * @access protected + * @var bool + */ + var $_recentlyReparsed = false; + + /** + * Constructor + * + * @access public + */ + function StringParser () { + } + + /** + * Add a filter + * + * @access public + * @param int $type The type of the filter + * @param mixed $callback The callback to call + * @return bool + * @see STRINGPARSER_FILTER_PRE, STRINGPARSER_FILTER_POST + */ + function addFilter ($type, $callback) { + // make sure the function is callable + if (!is_callable ($callback)) { + return false; + } + + switch ($type) { + case STRINGPARSER_FILTER_PRE: + $this->_prefilters[] = $callback; + break; + case STRINGPARSER_FILTER_POST: + $this->_postfilters[] = $callback; + break; + default: + return false; + } + + return true; + } + + /** + * Remove all filters + * + * @access public + * @param int $type The type of the filter or 0 for all + * @return bool + * @see STRINGPARSER_FILTER_PRE, STRINGPARSER_FILTER_POST + */ + function clearFilters ($type = 0) { + switch ($type) { + case 0: + $this->_prefilters = array (); + $this->_postfilters = array (); + break; + case STRINGPARSER_FILTER_PRE: + $this->_prefilters = array (); + break; + case STRINGPARSER_FILTER_POST: + $this->_postfilters = array (); + break; + default: + return false; + } + return true; + } + + /** + * This function parses the text + * + * @access public + * @param string $text The text to parse + * @return mixed Either the root object of the tree if no output method + * is defined, the tree reoutput to e.g. a string or false + * if an internal error occured, such as a parse error if + * in strict mode or the object is already parsing a text. + */ + function parse ($text) { + if ($this->_parsing) { + return false; + } + $this->_parsing = true; + $this->_text = $this->_applyPrefilters ($text); + $this->_output = null; + $this->_length = strlen ($this->_text); + $this->_cpos = 0; + unset ($this->_stack); + $this->_stack = array (); + if (is_object ($this->_root)) { + StringParser_Node::destroyNode ($this->_root); + } + unset ($this->_root); + $this->_root =& new StringParser_Node_Root (); + $this->_stack[0] =& $this->_root; + + $this->_parserInit (); + + $finished = false; + + while (!$finished) { + switch ($this->_parserMode) { + case STRINGPARSER_MODE_SEARCH: + $res = $this->_searchLoop (); + if (!$res) { + $this->_parsing = false; + return false; + } + break; + case STRINGPARSER_MODE_LOOP: + $res = $this->_loop (); + if (!$res) { + $this->_parsing = false; + return false; + } + break; + default: + $this->_parsing = false; + return false; + } + + $res = $this->_closeRemainingBlocks (); + if (!$res) { + if ($this->strict) { + $this->_parsing = false; + return false; + } else { + $res = $this->_reparseAfterCurrentBlock (); + if (!$res) { + $this->_parsing = false; + return false; + } + continue; + } + } + $finished = true; + } + + $res = $this->_modifyTree (); + + if (!$res) { + $this->_parsing = false; + return false; + } + + $res = $this->_outputTree (); + + if (!$res) { + $this->_parsing = false; + return false; + } + + if (is_null ($this->_output)) { + $root =& $this->_root; + unset ($this->_root); + $this->_root = null; + while (count ($this->_stack)) { + unset ($this->_stack[count($this->_stack)-1]); + } + $this->_stack = array (); + $this->_parsing = false; + return $root; + } + + $res = StringParser_Node::destroyNode ($this->_root); + if (!$res) { + $this->_parsing = false; + return false; + } + unset ($this->_root); + $this->_root = null; + while (count ($this->_stack)) { + unset ($this->_stack[count($this->_stack)-1]); + } + $this->_stack = array (); + + $this->_parsing = false; + return $this->_output; + } + + /** + * Apply prefilters + * + * It is possible to specify prefilters for the parser to do some + * manipulating of the string beforehand. + */ + function _applyPrefilters ($text) { + foreach ($this->_prefilters as $filter) { + if (is_callable ($filter)) { + $ntext = call_user_func ($filter, $text); + if (is_string ($ntext)) { + $text = $ntext; + } + } + } + return $text; + } + + /** + * Apply postfilters + * + * It is possible to specify postfilters for the parser to do some + * manipulating of the string afterwards. + */ + function _applyPostfilters ($text) { + foreach ($this->_postfilters as $filter) { + if (is_callable ($filter)) { + $ntext = call_user_func ($filter, $text); + if (is_string ($ntext)) { + $text = $ntext; + } + } + } + return $text; + } + + /** + * Abstract method: Manipulate the tree + * @access protected + * @return bool + */ + function _modifyTree () { + return true; + } + + /** + * Abstract method: Output tree + * @access protected + * @return bool + */ + function _outputTree () { + // this could e.g. call _applyPostfilters + return true; + } + + /** + * Restart parsing after current block + * + * To achieve this the current top stack object is removed from the + * tree. Then the current item + * + * @access protected + * @return bool + */ + function _reparseAfterCurrentBlock () { + // this should definitely not happen! + if (($stack_count = count ($this->_stack)) < 2) { + return false; + } + $topelem =& $this->_stack[$stack_count-1]; + + $node_parent =& $topelem->_parent; + // remove the child from the tree + $res = $node_parent->removeChild ($topelem, false); + if (!$res) { + return false; + } + $res = $this->_popNode (); + if (!$res) { + return false; + } + + // now try to get the position of the object + if ($topelem->occurredAt < 0) { + return false; + } + // HACK: could it be necessary to set a different status + // if yes, how should this be achieved? Another member of + // StringParser_Node? + $this->_setStatus (0); + $res = $this->_appendText ($this->_text{$topelem->occurredAt}); + if (!$res) { + return false; + } + + $this->_cpos = $topelem->occurredAt + 1; + $this->_recentlyReparsed = true; + + return true; + } + + /** + * Abstract method: Close remaining blocks + * @access protected + */ + function _closeRemainingBlocks () { + // everything closed + if (count ($this->_stack) == 1) { + return true; + } + // not everything closed + if ($this->strict) { + return false; + } + while (count ($this->_stack) > 1) { + $res = $this->_popNode (); + if (!$res) { + return false; + } + } + return true; + } + + /** + * Abstract method: Initialize the parser + * @access protected + */ + function _parserInit () { + $this->_setStatus (0); + } + + /** + * Abstract method: Set a specific status + * @access protected + */ + function _setStatus ($status) { + if ($status != 0) { + return false; + } + $this->_charactersSearch = array (); + $this->_charactersAllowed = array (); + $this->_status = $status; + return true; + } + + /** + * Abstract method: Handle status + * @access protected + * @param int $status The current status + * @param string $needle The needle that was found + * @return bool + */ + function _handleStatus ($status, $needle) { + $this->_appendText ($needle); + $this->_cpos += strlen ($needle); + return true; + } + + /** + * Search mode loop + * @access protected + * @return bool + */ + function _searchLoop () { + $i = 0; + while (1) { + // make sure this is false! + $this->_recentlyReparsed = false; + + list ($needle, $offset) = $this->_strpos ($this->_charactersSearch, $this->_cpos); + // parser ends here + if ($needle === false) { + // original status 0 => no problem + if (!$this->_status) { + break; + } + // not in original status? strict mode? + if ($this->strict) { + return false; + } + // break up parsing operation of current node + $res = $this->_reparseAfterCurrentBlock (); + if (!$res) { + return false; + } + continue; + } + // get subtext + $subtext = substr ($this->_text, $this->_cpos, $offset - $this->_cpos); + $res = $this->_appendText ($subtext); + if (!$res) { + return false; + } + $this->_cpos = $offset; + $res = $this->_handleStatus ($this->_status, $needle); + if (!$res && $this->strict) { + return false; + } + if (!$res) { + $res = $this->_appendText ($this->_text{$this->_cpos}); + if (!$res) { + return false; + } + $this->_cpos++; + continue; + } + if ($this->_recentlyReparsed) { + $this->_recentlyReparsed = false; + continue; + } + $this->_cpos += strlen ($needle); + } + + // get subtext + if ($this->_cpos < strlen ($this->_text)) { + $subtext = substr ($this->_text, $this->_cpos); + $res = $this->_appendText ($subtext); + if (!$res) { + return false; + } + } + + return true; + } + + /** + * Loop mode loop + * + * @access protected + * @return bool + */ + function _loop () { + // HACK: This method ist not yet implemented correctly, the code below + // DOES NOT WORK! Do not use! + + return false; + /* + while ($this->_cpos < $this->_length) { + $needle = $this->_strDetect ($this->_charactersSearch, $this->_cpos); + + if ($needle === false) { + // not found => see if character is allowed + if (!in_array ($this->_text{$this->_cpos}, $this->_charactersAllowed)) { + if ($strict) { + return false; + } + // ignore + continue; + } + // lot's of FIXMES + $res = $this->_appendText ($this->_text{$this->_cpos}); + if (!$res) { + return false; + } + } + + // get subtext + $subtext = substr ($this->_text, $offset, $offset - $this->_cpos); + $res = $this->_appendText ($subtext); + if (!$res) { + return false; + } + $this->_cpos = $subtext; + $res = $this->_handleStatus ($this->_status, $needle); + if (!$res && $strict) { + return false; + } + } + // original status 0 => no problem + if (!$this->_status) { + return true; + } + // not in original status? strict mode? + if ($this->strict) { + return false; + } + // break up parsing operation of current node + $res = $this->_reparseAfterCurrentBlock (); + if (!$res) { + return false; + } + // this will not cause an infinite loop because + // _reparseAfterCurrentBlock will increase _cpos by one! + return $this->_loop (); + */ + } + + /** + * Abstract method Append text depending on current status + * @access protected + * @param string $text The text to append + * @return bool On success, the function returns true, else false + */ + function _appendText ($text) { + if (!strlen ($text)) { + return true; + } + // default: call _appendToLastTextChild + return $this->_appendToLastTextChild ($text); + } + + /** + * Append text to last text child of current top parser stack node + * @access protected + * @param string $text The text to append + * @return bool On success, the function returns true, else false + */ + function _appendToLastTextChild ($text) { + $scount = count ($this->_stack); + if ($scount == 0) { + return false; + } + return $this->_stack[$scount-1]->appendToLastTextChild ($text); + } + + /** + * Searches {@link StringParser::_text _text} for every needle that is + * specified by using the {@link PHP_MANUAL#strpos strpos} function. It + * returns an associative array with the key 'needle' + * pointing at the string that was found first and the key + * 'offset' pointing at the offset at which the string was + * found first. If no needle was found, the 'needle' + * element is false and the 'offset' element + * is -1. + * + * @access protected + * @param array $needles + * @param int $offset + * @return array + * @see StringParser::_text + */ + function _strpos ($needles, $offset) { + $cur_needle = false; + $cur_offset = -1; + + if ($offset < strlen ($this->_text)) { + foreach ($needles as $needle) { + $n_offset = strpos ($this->_text, $needle, $offset); + if ($n_offset !== false && ($n_offset < $cur_offset || $cur_offset < 0)) { + $cur_needle = $needle; + $cur_offset = $n_offset; + } + } + } + + return array ($cur_needle, $cur_offset, 'needle' => $cur_needle, 'offset' => $cur_offset); + } + + /** + * Detects a string at the current position + * + * @access protected + * @param array $needles The strings that are to be detected + * @param int $offset The current offset + * @return mixed The string that was detected or the needle + */ + function _strDetect ($needles, $offset) { + foreach ($needles as $needle) { + $l = strlen ($needle); + if (substr ($this->_text, $offset, $l) == $needle) { + return $needle; + } + } + return false; + } + + + /** + * Adds a node to the current parse stack + * + * @access protected + * @param object $node The node that is to be added + * @return bool True on success, else false. + * @see StringParser_Node, StringParser::_stack + */ + function _pushNode (&$node) { + $stack_count = count ($this->_stack); + $max_node =& $this->_stack[$stack_count-1]; + if (!$max_node->appendChild ($node)) { + return false; + } + $this->_stack[$stack_count] =& $node; + return true; + } + + /** + * Removes a node from the current parse stack + * + * @access protected + * @return bool True on success, else false. + * @see StringParser_Node, StringParser::_stack + */ + function _popNode () { + $stack_count = count ($this->_stack); + unset ($this->_stack[$stack_count-1]); + return true; + } + + /** + * Execute a method on the top element + * + * @access protected + * @return mixed + */ + function _topNode () { + $args = func_get_args (); + if (!count ($args)) { + return; // oops? + } + $method = array_shift ($args); + $stack_count = count ($this->_stack); + $method = array (&$this->_stack[$stack_count-1], $method); + if (!is_callable ($method)) { + return; // oops? + } + return call_user_func_array ($method, $args); + } + + /** + * Get a variable of the top element + * + * @access protected + * @return mixed + */ + function _topNodeVar ($var) { + $stack_count = count ($this->_stack); + return $this->_stack[$stack_count-1]->$var; + } +} + +/** + * Node type: Unknown node + * @see StringParser_Node::_type + */ +define ('STRINGPARSER_NODE_UNKNOWN', 0); + +/** + * Node type: Root node + * @see StringParser_Node::_type + */ +define ('STRINGPARSER_NODE_ROOT', 1); + +/** + * Node type: Text node + * @see StringParser_Node::_type + */ +define ('STRINGPARSER_NODE_TEXT', 2); + +/** + * Global value that is a counter of string parser node ids. Compare it to a + * sequence in databases. + * @var int + */ +$GLOBALS['__STRINGPARSER_NODE_ID'] = 0; + +/** + * Generic string parser node class + * + * This is an abstract class for any type of node that is used within the + * string parser. General warning: This class contains code regarding references + * that is very tricky. Please do not touch this code unless you exactly know + * what you are doing. Incorrect handling of references may cause PHP to crash + * with a segmentation fault! You have been warned. + * + * @package stringparser + */ +class StringParser_Node { + /** + * The type of this node. + * + * There are three standard node types: root node, text node and unknown + * node. All node types are integer constants. Any node type of a + * subclass must be at least 32 to allow future developements. + * + * @access protected + * @var int + * @see STRINGPARSER_NODE_ROOT, STRINGPARSER_NODE_TEXT + * @see STRINGPARSER_NODE_UNKNOWN + */ + var $_type = STRINGPARSER_NODE_UNKNOWN; + + /** + * The node ID + * + * This ID uniquely identifies this node. This is needed when searching + * for a specific node in the children array. Please note that this is + * only an internal variable and should never be used - not even in + * subclasses and especially not in external data structures. This ID + * has nothing to do with any type of ID in HTML oder XML. + * + * @access protected + * @var int + * @see StringParser_Node::_children + */ + var $_id = -1; + + /** + * The parent of this node. + * + * It is either null (root node) or a reference to the parent object. + * + * @access protected + * @var mixed + * @see StringParser_Node::_children + */ + var $_parent = null; + + /** + * The children of this node. + * + * It contains an array of references to all the children nodes of this + * node. + * + * @access protected + * @var array + * @see StringParser_Node::_parent + */ + var $_children = array (); + + /** + * Occured at + * + * This defines the position in the parsed text where this node occurred + * at. If -1, this value was not possible to be determined. + * + * @access public + * @var int + */ + var $occurredAt = -1; + + /** + * Constructor + * + * Currently, the constructor only allocates a new ID for the node and + * assigns it. + * + * @access public + * @param int $occurredAt The position in the text where this node + * occurred at. If not determinable, it is -1. + * @global __STRINGPARSER_NODE_ID + */ + function StringParser_Node ($occurredAt = -1) { + $this->_id = $GLOBALS['__STRINGPARSER_NODE_ID']++; + $this->occurredAt = $occurredAt; + } + + /** + * Type of the node + * + * This function returns the type of the node + * + * @access public + * @return int + */ + function type () { + return $this->_type; + } + + /** + * Prepend a node + * + * @access public + * @param object $node The node to be prepended. + * @return bool On success, the function returns true, else false. + */ + function prependChild (&$node) { + if (!is_object ($node)) { + return false; + } + + // root nodes may not be children of other nodes! + if ($node->_type == STRINGPARSER_NODE_ROOT) { + return false; + } + + // if node already has a parent + if ($node->_parent !== false) { + // remove node from there + $parent =& $node->_parent; + if (!$parent->removeChild ($node, false)) { + return false; + } + unset ($parent); + } + + $index = count ($this->_children) - 1; + // move all nodes to a new index + while ($index >= 0) { + // save object + $object =& $this->_children[$index]; + // we have to unset it because else it will be + // overridden in in the loop + unset ($this->_children[$index]); + // put object to new position + $this->_children[$index+1] =& $object; + $index--; + } + $this->_children[0] =& $node; + return true; + } + + /** + * Append text to last text child + * @access public + * @param string $text The text to append + * @return bool On success, the function returns true, else false + */ + function appendToLastTextChild ($text) { + $ccount = count ($this->_children); + if ($ccount == 0 || $this->_children[$ccount-1]->_type != STRINGPARSER_NODE_TEXT) { + $ntextnode =& new StringParser_Node_Text ($text); + return $this->appendChild ($ntextnode); + } else { + $this->_children[$ccount-1]->appendText ($text); + return true; + } + } + + /** + * Append a node to the children + * + * This function appends a node to the children array(). It + * automatically sets the {@link StrinParser_Node::_parent _parent} + * property of the node that is to be appended. + * + * @access public + * @param object $node The node that is to be appended. + * @return bool On success, the function returns true, else false. + */ + function appendChild (&$node) { + if (!is_object ($node)) { + return false; + } + + // root nodes may not be children of other nodes! + if ($node->_type == STRINGPARSER_NODE_ROOT) { + return false; + } + + // if node already has a parent + if ($node->_parent !== null) { + // remove node from there + $parent =& $node->_parent; + if (!$parent->removeChild ($node, false)) { + return false; + } + unset ($parent); + } + + // append it to current node + $new_index = count ($this->_children); + $this->_children[$new_index] =& $node; + $node->_parent =& $this; + return true; + } + + /** + * Insert a node before another node + * + * @access public + * @param object $node The node to be inserted. + * @param object $reference The reference node where the new node is + * to be inserted before. + * @return bool On success, the function returns true, else false. + */ + function insertChildBefore (&$node, &$reference) { + if (!is_object ($node)) { + return false; + } + + // root nodes may not be children of other nodes! + if ($node->_type == STRINGPARSER_NODE_ROOT) { + return false; + } + + // is the reference node a child? + $child = $this->_findChild ($reference); + + if ($child === false) { + return false; + } + + // if node already has a parent + if ($node->_parent !== null) { + // remove node from there + $parent =& $node->_parent; + if (!$parent->removeChild ($node, false)) { + return false; + } + unset ($parent); + } + + $index = count ($this->_children) - 1; + // move all nodes to a new index + while ($index >= $child) { + // save object + $object =& $this->_children[$index]; + // we have to unset it because else it will be + // overridden in in the loop + unset ($this->_children[$index]); + // put object to new position + $this->_children[$index+1] =& $object; + $index--; + } + $this->_children[$child] =& $node; + return true; + } + + /** + * Insert a node after another node + * + * @access public + * @param object $node The node to be inserted. + * @param object $reference The reference node where the new node is + * to be inserted after. + * @return bool On success, the function returns true, else false. + */ + function insertChildAfter (&$node, &$reference) { + if (!is_object ($node)) { + return false; + } + + // root nodes may not be children of other nodes! + if ($node->_type == STRINGPARSER_NODE_ROOT) { + return false; + } + + // is the reference node a child? + $child = $this->_findChild ($reference); + + if ($child === false) { + return false; + } + + // if node already has a parent + if ($node->_parent !== false) { + // remove node from there + $parent =& $node->_parent; + if (!$parent->removeChild ($node, false)) { + return false; + } + unset ($parent); + } + + $index = count ($this->_children) - 1; + // move all nodes to a new index + while ($index >= $child + 1) { + // save object + $object =& $this->_children[$index]; + // we have to unset it because else it will be + // overridden in in the loop + unset ($this->_children[$index]); + // put object to new position + $this->_children[$index+1] =& $object; + $index--; + } + $this->_children[$child + 1] =& $node; + return true; + } + + /** + * Remove a child node + * + * This function removes a child from the children array. A parameter + * tells the function whether to destroy the child afterwards or not. + * If the specified node is not a child of this node, the function will + * return false. + * + * @access public + * @param mixed $child The child to destroy; either an integer + * specifying the index of the child or a reference + * to the child itself. + * @param bool $destroy Destroy the child afterwards. + * @return bool On success, the function returns true, else false. + */ + function removeChild (&$child, $destroy = false) { + if (is_object ($child)) { + // if object: get index + $object =& $child; + unset ($child); + $child = $this->_findChild ($object); + if ($child === false) { + return false; + } + } else { + // remove reference on $child + $save = $child; + unset($child); + $child = $save; + + // else: get object + if (!isset($this->_children[$child])) { + return false; + } + $object =& $this->_children[$child]; + } + + // store count for later use + $ccount = count ($this->_children); + + // index out of bounds + if (!is_int ($child) || $child < 0 || $child >= $ccount) { + return false; + } + + // inkonsistency + if ($this->_children[$child]->_parent === null || + $this->_children[$child]->_parent->_id != $this->_id) { + return false; + } + + // $object->_parent = null would equal to $this = null + // as $object->_parent is a reference to $this! + // because of this, we have to unset the variable to remove + // the reference and then redeclare the variable + unset ($object->_parent); $object->_parent = null; + + // we have to unset it because else it will be overridden in + // in the loop + unset ($this->_children[$child]); + + // move all remaining objects one index higher + while ($child < $ccount - 1) { + // save object + $obj =& $this->_children[$child+1]; + // we have to unset it because else it will be + // overridden in in the loop + unset ($this->_children[$child+1]); + // put object to new position + $this->_children[$child] =& $obj; + // UNSET THE OBJECT! + unset ($obj); + $child++; + } + + if ($destroy) { + return StringParser_Node::destroyNode ($object); + unset ($object); + } + return true; + } + + /** + * Get the first child of this node + * + * @access public + * @return mixed + */ + function &firstChild () { + $ret = null; + if (!count ($this->_children)) { + return $ret; + } + return $this->_children[0]; + } + + /** + * Get the last child of this node + * + * @access public + * @return mixed + */ + function &lastChild () { + $ret = null; + $c = count ($this->_children); + if (!$c) { + return $ret; + } + return $this->_children[$c-1]; + } + + /** + * Destroy a node + * + * @access public + * @static + * @param object $node The node to destroy + * @return bool True on success, else false. + */ + function destroyNode (&$node) { + if ($node === null) { + return false; + } + // if parent exists: remove node from tree! + if ($node->_parent !== null) { + $parent =& $node->_parent; + // directly return that result because the removeChild + // method will call destroyNode again + return $parent->removeChild ($node, true); + } + + // node has children + while (count ($node->_children)) { + $child = 0; + // remove first child until no more children remain + if (!$node->removeChild ($child, true)) { + return false; + } + unset($child); + } + + // now call the nodes destructor + if (!$node->_destroy ()) { + return false; + } + + // now just unset it and prey that there are no more references + // to this node + unset ($node); + + return true; + } + + /** + * Destroy this node + * + * + * @access protected + * @return bool True on success, else false. + */ + function _destroy () { + return true; + } + + /** + * Find a child node + * + * This function searches for a node in the own children and returns + * the index of the node or false if the node is not a child of this + * node. + * + * @access protected + * @param mixed $child The node to look for. + * @return mixed The index of the child node on success, else false. + */ + function _findChild (&$child) { + if (!is_object ($child)) { + return false; + } + + $ccount = count ($this->_children); + for ($i = 0; $i < $ccount; $i++) { + if ($this->_children[$i]->_id == $child->_id) { + return $i; + } + } + + return false; + } + + /** + * Checks equality of this node and another node + * + * @access public + * @param mixed $node The node to be compared with + * @return bool True if the other node equals to this node, else false. + */ + function equals (&$node) { + return ($this->_id == $node->_id); + } + + /** + * Determines whether a criterium matches this node + * + * @access public + * @param string $criterium The criterium that is to be checked + * @param mixed $value The value that is to be compared + * @return bool True if this node matches that criterium + */ + function matchesCriterium ($criterium, $value) { + return false; + } + + /** + * Search for nodes with a certain criterium + * + * This may be used to implement getElementsByTagName etc. + * + * @access public + * @param string $criterium The criterium that is to be checked + * @param mixed $value The value that is to be compared + * @return array All subnodes that match this criterium + */ + function &getNodesByCriterium ($criterium, $value) { + $nodes = array (); + $node_ctr = 0; + for ($i = 0; $i < count ($this->_children); $i++) { + if ($this->_children[$i]->matchesCriterium ($criterium, $value)) { + $nodes[$node_ctr++] =& $this->_children[$i]; + } + $subnodes = $this->_children[$i]->getNodesByCriterium ($criterium, $value); + if (count ($subnodes)) { + $subnodes_count = count ($subnodes); + for ($j = 0; $j < $subnodes_count; $j++) { + $nodes[$node_ctr++] =& $subnodes[$j]; + unset ($subnodes[$j]); + } + } + unset ($subnodes); + } + return $nodes; + } + + /** + * Search for nodes with a certain criterium and return the count + * + * Similar to getNodesByCriterium + * + * @access public + * @param string $criterium The criterium that is to be checked + * @param mixed $value The value that is to be compared + * @return int The number of subnodes that match this criterium + */ + function getNodeCountByCriterium ($criterium, $value) { + $node_ctr = 0; + for ($i = 0; $i < count ($this->_children); $i++) { + if ($this->_children[$i]->matchesCriterium ($criterium, $value)) { + $node_ctr++; + } + $subnodes = $this->_children[$i]->getNodeCountByCriterium ($criterium, $value); + $node_ctr += $subnodes; + } + return $node_ctr; + } + + /** + * Dump nodes + * + * This dumps a tree of nodes + * + * @access public + * @param string $prefix The prefix that is to be used for indentation + * @param string $linesep The line separator + * @param int $level The initial level of indentation + * @return string + */ + function dump ($prefix = " ", $linesep = "\n", $level = 0) { + $str = str_repeat ($prefix, $level) . $this->_id . ": " . $this->_dumpToString () . $linesep; + for ($i = 0; $i < count ($this->_children); $i++) { + $str .= $this->_children[$i]->dump ($prefix, $linesep, $level + 1); + } + return $str; + } + + /** + * Dump this node to a string + * + * @access protected + * @return string + */ + function _dumpToString () { + if ($this->_type == STRINGPARSER_NODE_ROOT) { + return "root"; + } + return (string)$this->_type; + } +} + +/** + * String parser root node class + * + * @package stringparser + */ +class StringParser_Node_Root extends StringParser_Node { + /** + * The type of this node. + * + * This node is a root node. + * + * @access protected + * @var int + * @see STRINGPARSER_NODE_ROOT + */ + var $_type = STRINGPARSER_NODE_ROOT; +} + +/** + * String parser text node class + * + * @package stringparser + */ +class StringParser_Node_Text extends StringParser_Node { + /** + * The type of this node. + * + * This node is a text node. + * + * @access protected + * @var int + * @see STRINGPARSER_NODE_TEXT + */ + var $_type = STRINGPARSER_NODE_TEXT; + + /** + * Node flags + * + * @access protected + * @var array + */ + var $_flags = array (); + + /** + * The content of this node + * @access public + * @var string + */ + var $content = ''; + + /** + * Constructor + * + * @access public + * @param string $content The initial content of this element + * @param int $occurredAt The position in the text where this node + * occurred at. If not determinable, it is -1. + * @see StringParser_Node_Text::content + */ + function StringParser_Node_Text ($content, $occurredAt = -1) { + parent::StringParser_Node ($occurredAt); + $this->content = $content; + } + + /** + * Append text to content + * + * @access public + * @param string $text The text to append + * @see StringParser_Node_Text::content + */ + function appendText ($text) { + $this->content .= $text; + } + + /** + * Set a flag + * + * @access public + * @param string $name The name of the flag + * @param mixed $value The value of the flag + */ + function setFlag ($name, $value) { + $this->_flags[$name] = $value; + return true; + } + + /** + * Get Flag + * + * @access public + * @param string $flag The requested flag + * @param string $type The requested type of the return value + * @param mixed $default The default return value + */ + function getFlag ($flag, $type = 'mixed', $default = null) { + if (!isset ($this->_flags[$flag])) { + return $default; + } + $return = $this->_flags[$flag]; + if ($type != 'mixed') { + settype ($return, $type); + } + return $return; + } + + /** + * Dump this node to a string + */ + function _dumpToString () { + return "text \"".substr (preg_replace ('/\s+/', ' ', $this->content), 0, 40)."\" [f:".preg_replace ('/\s+/', ' ', join(':', array_keys ($this->_flags)))."]"; + } +} + +?> \ No newline at end of file diff --git a/Source/gallery2/lib/bbcode/stringparser_bbcode.class.php b/Source/gallery2/lib/bbcode/stringparser_bbcode.class.php new file mode 100644 index 0000000..3cd6e04 --- /dev/null +++ b/Source/gallery2/lib/bbcode/stringparser_bbcode.class.php @@ -0,0 +1,1960 @@ + + * @copyright Christian Seiler 2006 + * @package stringparser + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of either: + * + * a) the GNU General Public License as published by the Free + * Software Foundation; either version 1, or (at your option) any + * later version, or + * + * b) the Artistic License as published by Larry Wall, either version 2.0, + * or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either + * the GNU General Public License or the Artistic License for more details. + * + * You should have received a copy of the Artistic License with this Kit, + * in the file named "Artistic.clarified". If not, I'll be glad to provide + * one. + * + * You should also have received a copy of the GNU General Public License + * along with this program in the file named "COPYING"; if not, write to + * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307, USA. + */ + +require_once dirname(__FILE__).'/stringparser.class.php'; + +define ('BBCODE_CLOSETAG_FORBIDDEN', -1); +define ('BBCODE_CLOSETAG_OPTIONAL', 0); +define ('BBCODE_CLOSETAG_IMPLICIT', 1); +define ('BBCODE_CLOSETAG_IMPLICIT_ON_CLOSE_ONLY', 2); +define ('BBCODE_CLOSETAG_MUSTEXIST', 3); + +define ('BBCODE_NEWLINE_PARSE', 0); +define ('BBCODE_NEWLINE_IGNORE', 1); +define ('BBCODE_NEWLINE_DROP', 2); + +define ('BBCODE_PARAGRAPH_ALLOW_BREAKUP', 0); +define ('BBCODE_PARAGRAPH_ALLOW_INSIDE', 1); +define ('BBCODE_PARAGRAPH_BLOCK_ELEMENT', 2); + +/** + * BB code string parser class + * + * @package stringparser + */ +class StringParser_BBCode extends StringParser { + /** + * String parser mode + * + * The BBCode string parser works in search mode + * + * @access protected + * @var int + * @see STRINGPARSER_MODE_SEARCH, STRINGPARSER_MODE_LOOP + */ + var $_parserMode = STRINGPARSER_MODE_SEARCH; + + /** + * Defined BB Codes + * + * The registered BB codes + * + * @access protected + * @var array + */ + var $_codes = array (); + + /** + * Registered parsers + * + * @access protected + * @var array + */ + var $_parsers = array (); + + /** + * Defined maximum occurrences + * + * @access protected + * @var array + */ + var $_maxOccurrences = array (); + + /** + * Root content type + * + * @access protected + * @var string + */ + var $_rootContentType = 'block'; + + /** + * Do not output but return the tree + * + * @access protected + * @var bool + */ + var $_noOutput = false; + + /** + * Global setting: case sensitive + * + * @access protected + * @var bool + */ + var $_caseSensitive = true; + + /** + * Root paragraph handling enabled + * + * @access protected + * @var bool + */ + var $_rootParagraphHandling = false; + + /** + * Paragraph handling parameters + * @access protected + * @var array + */ + var $_paragraphHandling = array ( + 'detect_string' => "\n\n", + 'start_tag' => '

', + 'end_tag' => "

\n" + ); + + /** + * Allow mixed attribute types (e.g. [code=bla attr=blub]) + * @access private + * @var bool + */ + var $_mixedAttributeTypes = false; + + /** + * Whether to call validation function again (with $action == 'validate_auto') when closetag comes + * @access protected + * @var bool + */ + var $_validateAgain = false; + + /** + * Add a code + * + * @access public + * @param string $name The name of the code + * @param string $callback_type See documentation + * @param string $callback_func The callback function to call + * @param array $callback_params The callback parameters + * @param string $content_type See documentation + * @param array $allowed_within See documentation + * @param array $not_allowed_within See documentation + * @return bool + */ + function addCode ($name, $callback_type, $callback_func, $callback_params, $content_type, $allowed_within, $not_allowed_within) { + if (isset ($this->_codes[$name])) { + return false; // already exists + } + if (!preg_match ('/^[a-zA-Z0-9*_!+-]+$/', $name)) { + return false; // invalid + } + $this->_codes[$name] = array ( + 'name' => $name, + 'callback_type' => $callback_type, + 'callback_func' => $callback_func, + 'callback_params' => $callback_params, + 'content_type' => $content_type, + 'allowed_within' => $allowed_within, + 'not_allowed_within' => $not_allowed_within, + 'flags' => array () + ); + return true; + } + + /** + * Remove a code + * + * @access public + * @param $name The code to remove + * @return bool + */ + function removeCode ($name) { + if (isset ($this->_codes[$name])) { + unset ($this->_codes[$name]); + return true; + } + return false; + } + + /** + * Remove all codes + * + * @access public + */ + function removeAllCodes () { + $this->_codes = array (); + } + + /** + * Set a code flag + * + * @access public + * @param string $name The name of the code + * @param string $flag The name of the flag to set + * @param mixed $value The value of the flag to set + * @return bool + */ + function setCodeFlag ($name, $flag, $value) { + if (!isset ($this->_codes[$name])) { + return false; + } + $this->_codes[$name]['flags'][$flag] = $value; + return true; + } + + /** + * Set occurrence type + * + * Example: + * $bbcode->setOccurrenceType ('url', 'link'); + * $bbcode->setMaxOccurrences ('link', 4); + * Would create the situation where a link may only occur four + * times in the hole text. + * + * @access public + * @param string $code The name of the code + * @param string $type The name of the occurrence type to set + * @return bool + */ + function setOccurrenceType ($code, $type) { + return $this->setCodeFlag ($code, 'occurrence_type', $type); + } + + /** + * Set maximum number of occurrences + * + * @access public + * @param string $type The name of the occurrence type + * @param int $count The maximum number of occurrences + * @return bool + */ + function setMaxOccurrences ($type, $count) { + settype ($count, 'integer'); + if ($count < 0) { // sorry, does not make any sense + return false; + } + $this->_maxOccurrences[$type] = $count; + return true; + } + + /** + * Add a parser + * + * @access public + * @param string $type The content type for which the parser is to add + * @param mixed $parser The function to call + * @return bool + */ + function addParser ($type, $parser) { + if (is_array ($type)) { + foreach ($type as $t) { + $this->addParser ($t, $parser); + } + return true; + } + if (!isset ($this->_parsers[$type])) { + $this->_parsers[$type] = array (); + } + $this->_parsers[$type][] = $parser; + return true; + } + + /** + * Set root content type + * + * @access public + * @param string $content_type The new root content type + */ + function setRootContentType ($content_type) { + $this->_rootContentType = $content_type; + } + + /** + * Set paragraph handling on root element + * + * @access public + * @param bool $enabled The new status of paragraph handling on root element + */ + function setRootParagraphHandling ($enabled) { + $this->_rootParagraphHandling = (bool)$enabled; + } + + /** + * Set paragraph handling parameters + * + * @access public + * @param string $detect_string The string to detect + * @param string $start_tag The replacement for the start tag (e.g.

) + * @param string $end_tag The replacement for the start tag (e.g.

) + */ + function setParagraphHandlingParameters ($detect_string, $start_tag, $end_tag) { + $this->_paragraphHandling = array ( + 'detect_string' => $detect_string, + 'start_tag' => $start_tag, + 'end_tag' => $end_tag + ); + } + + /** + * Set global case sensitive flag + * + * If this is set to true, the class normally is case sensitive, but + * the case_sensitive code flag may override this for a single code. + * + * If this is set to false, all codes are case insensitive. + * + * @access public + * @param bool $caseSensitive + */ + function setGlobalCaseSensitive ($caseSensitive) { + $this->_caseSensitive = (bool)$caseSensitive; + } + + /** + * Get global case sensitive flag + * + * @access public + * @return bool + */ + function globalCaseSensitive () { + return $this->_caseSensitive; + } + + /** + * Set mixed attribute types flag + * + * If set, [code=val1 attr=val2] will cause 2 attributes to be parsed: + * 'default' will have value 'val1', 'attr' will have value 'val2'. + * If not set, only one attribute 'default' will have the value + * 'val1 attr=val2' (the default and original behaviour) + * + * @access public + * @param bool $mixedAttributeTypes + */ + function setMixedAttributeTypes ($mixedAttributeTypes) { + $this->_mixedAttributeTypes = (bool)$mixedAttributeTypes; + } + + /** + * Get mixed attribute types flag + * + * @access public + * @return bool + */ + function mixedAttributeTypes () { + return $this->_mixedAttributeTypes; + } + + /** + * Set validate again flag + * + * If this is set to true, the class calls the validation function + * again with $action == 'validate_again' when closetag comes. + * + * @access public + * @param bool $validateAgain + */ + function setValidateAgain ($validateAgain) { + $this->_validateAgain = (bool)$validateAgain; + } + + /** + * Get validate again flag + * + * @access public + * @return bool + */ + function validateAgain () { + return $this->_validateAgain; + } + + /** + * Get a code flag + * + * @access public + * @param string $name The name of the code + * @param string $flag The name of the flag to get + * @param string $type The type of the return value + * @param mixed $default The default return value + * @return bool + */ + function getCodeFlag ($name, $flag, $type = 'mixed', $default = null) { + if (!isset ($this->_codes[$name])) { + return $default; + } + if (!array_key_exists ($flag, $this->_codes[$name]['flags'])) { + return $default; + } + $return = $this->_codes[$name]['flags'][$flag]; + if ($type != 'mixed') { + settype ($return, $type); + } + return $return; + } + + /** + * Set a specific status + * @access protected + */ + function _setStatus ($status) { + switch ($status) { + case 0: + $this->_charactersSearch = array ('[/', '['); + $this->_status = $status; + break; + case 1: + $this->_charactersSearch = array (']', ' = "', '="', ' = \'', '=\'', ' = ', '=', ': ', ':', ' '); + $this->_status = $status; + break; + case 2: + $this->_charactersSearch = array (']'); + $this->_status = $status; + $this->_savedName = ''; + break; + case 3: + if ($this->_quoting !== null) { + if ($this->_mixedAttributeTypes) { + $this->_charactersSearch = array ('\\\\', '\\'.$this->_quoting, $this->_quoting.' ', $this->_quoting.']', $this->_quoting); + } else { + $this->_charactersSearch = array ('\\\\', '\\'.$this->_quoting, $this->_quoting.']', $this->_quoting); + } + $this->_status = $status; + break; + } + if ($this->_mixedAttributeTypes) { + $this->_charactersSearch = array (' ', ']'); + } else { + $this->_charactersSearch = array (']'); + } + $this->_status = $status; + break; + case 4: + $this->_charactersSearch = array (' ', ']', '="', '=\'', '='); + $this->_status = $status; + $this->_savedName = ''; + $this->_savedValue = ''; + break; + case 5: + if ($this->_quoting !== null) { + $this->_charactersSearch = array ('\\\\', '\\'.$this->_quoting, $this->_quoting.' ', $this->_quoting.']', $this->_quoting); + } else { + $this->_charactersSearch = array (' ', ']'); + } + $this->_status = $status; + $this->_savedValue = ''; + break; + case 7: + $this->_charactersSearch = array ('[/'.$this->_topNode ('name').']'); + if (!$this->_topNode ('getFlag', 'case_sensitive', 'boolean', true) || !$this->_caseSensitive) { + $this->_charactersSearch[] = '[/'; + } + $this->_status = $status; + break; + default: + return false; + } + return true; + } + + /** + * Abstract method Append text depending on current status + * @access protected + * @param string $text The text to append + * @return bool On success, the function returns true, else false + */ + function _appendText ($text) { + if (!strlen ($text)) { + return true; + } + switch ($this->_status) { + case 0: + case 7: + return $this->_appendToLastTextChild ($text); + case 1: + return $this->_topNode ('appendToName', $text); + case 2: + case 4: + $this->_savedName .= $text; + return true; + case 3: + return $this->_topNode ('appendToAttribute', 'default', $text); + case 5: + $this->_savedValue .= $text; + return true; + default: + return false; + } + } + + /** + * Restart parsing after current block + * + * To achieve this the current top stack object is removed from the + * tree. Then the current item + * + * @access protected + * @return bool + */ + function _reparseAfterCurrentBlock () { + if ($this->_status == 2) { + // this status will *never* call _reparseAfterCurrentBlock itself + // so this is called if the loop ends + // therefore, just add the [/ to the text + + // _savedName should be empty but just in case + $this->_cpos -= strlen ($this->_savedName); + $this->_savedName = ''; + $this->_status = 0; + $this->_appendText ('[/'); + return true; + } else { + return parent::_reparseAfterCurrentBlock (); + } + } + + /** + * Apply parsers + */ + function _applyParsers ($type, $text) { + if (!isset ($this->_parsers[$type])) { + return $text; + } + foreach ($this->_parsers[$type] as $parser) { + if (is_callable ($parser)) { + $ntext = call_user_func ($parser, $text); + if (is_string ($ntext)) { + $text = $ntext; + } + } + } + return $text; + } + + /** + * Handle status + * @access protected + * @param int $status The current status + * @param string $needle The needle that was found + * @return bool + */ + function _handleStatus ($status, $needle) { + switch ($status) { + case 0: // NORMAL TEXT + if ($needle != '[' && $needle != '[/') { + $this->_appendText ($needle); + return true; + } + if ($needle == '[') { + $node =& new StringParser_BBCode_Node_Element ($this->_cpos); + $res = $this->_pushNode ($node); + if (!$res) { + return false; + } + $this->_setStatus (1); + } else if ($needle == '[/') { + if (count ($this->_stack) <= 1) { + $this->_appendText ($needle); + return true; + } + $this->_setStatus (2); + } + break; + case 1: // OPEN TAG + if ($needle == ']') { + return $this->_openElement (0); + } else if (trim ($needle) == ':' || trim ($needle) == '=') { + $this->_quoting = null; + $this->_setStatus (3); // default value parser + break; + } else if (trim ($needle) == '="' || trim ($needle) == '= "' || trim ($needle) == '=\'' || trim ($needle) == '= \'') { + $this->_quoting = substr (trim ($needle), -1); + $this->_setStatus (3); // default value parser with quotation + break; + } else if ($needle == ' ') { + $this->_setStatus (4); // attribute parser + break; + } else { + $this->_appendText ($needle); + return true; + } + // break not necessary because every if clause contains return + case 2: // CLOSE TAG + if ($needle != ']') { + $this->_appendText ($needle); + return true; + } + $closecount = 0; + if (!$this->_isCloseable ($this->_savedName, $closecount)) { + $this->_setStatus (0); + $this->_appendText ('[/'.$this->_savedName.$needle); + return true; + } + // this validates the code(s) to be closed after the content tree of + // that code(s) are built - if the second validation fails, we will have + // to reparse. note that as _reparseAfterCurrentBlock will not work correctly + // if we're in $status == 2, we will have to set our status to 0 manually + if (!$this->_validateCloseTags ($closecount)) { + $this->_setStatus (0); + return $this->_reparseAfterCurrentBlock (); + } + $this->_setStatus (0); + for ($i = 0; $i < $closecount; $i++) { + if ($i == $closecount - 1) { + $this->_topNode ('setHadCloseTag'); + } + if (!$this->_popNode ()) { + return false; + } + } + break; + case 3: // DEFAULT ATTRIBUTE + if ($this->_quoting !== null) { + if ($needle == '\\\\') { + $this->_appendText ('\\'); + return true; + } else if ($needle == '\\'.$this->_quoting) { + $this->_appendText ($this->_quoting); + return true; + } else if ($needle == $this->_quoting.' ') { + $this->_setStatus (4); + return true; + } else if ($needle == $this->_quoting.']') { + return $this->_openElement (2); + } else if ($needle == $this->_quoting) { + // can't be, only ']' and ' ' allowed after quoting char + return $this->_reparseAfterCurrentBlock (); + } else { + $this->_appendText ($needle); + return true; + } + } else { + if ($needle == ' ') { + $this->_setStatus (4); + return true; + } else if ($needle == ']') { + return $this->_openElement (2); + } else { + $this->_appendText ($needle); + return true; + } + } + // break not needed because every if clause contains return! + case 4: // ATTRIBUTE NAME + if ($needle == ' ') { + if (strlen ($this->_savedName)) { + $this->_topNode ('setAttribute', $this->_savedName, true); + } + // just ignore and continue in same mode + $this->_setStatus (4); // reset parameters + return true; + } else if ($needle == ']') { + if (strlen ($this->_savedName)) { + $this->_topNode ('setAttribute', $this->_savedName, true); + } + return $this->_openElement (2); + } else if ($needle == '=') { + $this->_quoting = null; + $this->_setStatus (5); + return true; + } else if ($needle == '="') { + $this->_quoting = '"'; + $this->_setStatus (5); + return true; + } else if ($needle == '=\'') { + $this->_quoting = '\''; + $this->_setStatus (5); + return true; + } else { + $this->_appendText ($needle); + return true; + } + // break not needed because every if clause contains return! + case 5: // ATTRIBUTE VALUE + if ($this->_quoting !== null) { + if ($needle == '\\\\') { + $this->_appendText ('\\'); + return true; + } else if ($needle == '\\'.$this->_quoting) { + $this->_appendText ($this->_quoting); + return true; + } else if ($needle == $this->_quoting.' ') { + $this->_topNode ('setAttribute', $this->_savedName, $this->_savedValue); + $this->_setStatus (4); + return true; + } else if ($needle == $this->_quoting.']') { + $this->_topNode ('setAttribute', $this->_savedName, $this->_savedValue); + return $this->_openElement (2); + } else if ($needle == $this->_quoting) { + // can't be, only ']' and ' ' allowed after quoting char + return $this->_reparseAfterCurrentBlock (); + } else { + $this->_appendText ($needle); + return true; + } + } else { + if ($needle == ' ') { + $this->_topNode ('setAttribute', $this->_savedName, $this->_savedValue); + $this->_setStatus (4); + return true; + } else if ($needle == ']') { + $this->_topNode ('setAttribute', $this->_savedName, $this->_savedValue); + return $this->_openElement (2); + } else { + $this->_appendText ($needle); + return true; + } + } + // break not needed because every if clause contains return! + case 7: + if ($needle == '[/') { + // this was case insensitive match + if (strtolower (substr ($this->_text, $this->_cpos + strlen ($needle), strlen ($this->_topNode ('name')) + 1)) == strtolower ($this->_topNode ('name').']')) { + // this matched + $this->_cpos += strlen ($this->_topNode ('name')) + 1; + } else { + // it didn't match + $this->_appendText ($needle); + return true; + } + } + $closecount = $this->_savedCloseCount; + if (!$this->_topNode ('validate')) { + return $this->_reparseAfterCurrentBlock (); + } + // do we have to close subnodes? + if ($closecount) { + // get top node + $mynode =& $this->_stack[count ($this->_stack)-1]; + // close necessary nodes + for ($i = 0; $i <= $closecount; $i++) { + if (!$this->_popNode ()) { + return false; + } + } + if (!$this->_pushNode ($mynode)) { + return false; + } + } + $this->_setStatus (0); + $this->_popNode (); + return true; + default: + return false; + } + return true; + } + + /** + * Open the next element + * + * @access protected + * @return bool + */ + function _openElement ($type = 0) { + $name = $this->_topNode ('name'); + if (!isset ($this->_codes[$name])) { + if (isset ($this->_codes[strtolower ($name)]) && (!$this->getCodeFlag (strtolower ($name), 'case_sensitive', 'boolean', true) || !$this->_caseSensitive)) { + $name = strtolower ($name); + } else { + return $this->_reparseAfterCurrentBlock (); + } + } + $occ_type = $this->getCodeFlag ($name, 'occurrence_type', 'string'); + if ($occ_type !== null && isset ($this->_maxOccurrences[$occ_type])) { + $max_occs = $this->_maxOccurrences[$occ_type]; + $occs = $this->_root->getNodeCountByCriterium ('flag:occurrence_type', $occ_type); + if ($occs >= $max_occs) { + return $this->_reparseAfterCurrentBlock (); + } + } + $closecount = 0; + $this->_topNode ('setCodeInfo', $this->_codes[$name]); + if (!$this->_isOpenable ($name, $closecount)) { + return $this->_reparseAfterCurrentBlock (); + } + $this->_setStatus (0); + switch ($type) { + case 0: + $cond = $this->_isUseContent ($this->_stack[count($this->_stack)-1], false); + break; + case 1: + $cond = $this->_isUseContent ($this->_stack[count($this->_stack)-1], true); + break; + case 2: + $cond = $this->_isUseContent ($this->_stack[count($this->_stack)-1], true); + break; + default: + $cond = false; + break; + } + if ($cond) { + $this->_savedCloseCount = $closecount; + $this->_setStatus (7); + return true; + } + if (!$this->_topNode ('validate')) { + return $this->_reparseAfterCurrentBlock (); + } + // do we have to close subnodes? + if ($closecount) { + // get top node + $mynode =& $this->_stack[count ($this->_stack)-1]; + // close necessary nodes + for ($i = 0; $i <= $closecount; $i++) { + if (!$this->_popNode ()) { + return false; + } + } + if (!$this->_pushNode ($mynode)) { + return false; + } + } + + if ($this->_codes[$name]['callback_type'] == 'simple_replace_single' || $this->_codes[$name]['callback_type'] == 'callback_replace_single') { + if (!$this->_popNode ()) { + return false; + } + } + + return true; + } + + /** + * Is a node closeable? + * + * @access protected + * @return bool + */ + function _isCloseable ($name, &$closecount) { + $node =& $this->_findNamedNode ($name, false); + if ($node === false) { + return false; + } + $scount = count ($this->_stack); + for ($i = $scount - 1; $i > 0; $i--) { + $closecount++; + if ($this->_stack[$i]->equals ($node)) { + return true; + } + if ($this->_stack[$i]->getFlag ('closetag', 'integer', BBCODE_CLOSETAG_IMPLICIT) == BBCODE_CLOSETAG_MUSTEXIST) { + return false; + } + } + return false; + } + + /** + * Revalidate codes when close tags appear + * + * @access protected + * @return bool + */ + function _validateCloseTags ($closecount) { + $scount = count ($this->_stack); + for ($i = $scount - 1; $i >= $scount - $closecount; $i--) { + if ($this->_validateAgain) { + if (!$this->_stack[$i]->validate ('validate_again')) { + return false; + } + } + } + return true; + } + + /** + * Is a node openable? + * + * @access protected + * @return bool + */ + function _isOpenable ($name, &$closecount) { + if (!isset ($this->_codes[$name])) { + return false; + } + + $closecount = 0; + + $allowed_within = $this->_codes[$name]['allowed_within']; + $not_allowed_within = $this->_codes[$name]['not_allowed_within']; + + $scount = count ($this->_stack); + if ($scount == 2) { // top level element + if (!in_array ($this->_rootContentType, $allowed_within)) { + return false; + } + } else { + if (!in_array ($this->_stack[$scount-2]->_codeInfo['content_type'], $allowed_within)) { + return $this->_isOpenableWithClose ($name, $closecount); + } + } + + for ($i = 1; $i < $scount - 1; $i++) { + if (in_array ($this->_stack[$i]->_codeInfo['content_type'], $not_allowed_within)) { + return $this->_isOpenableWithClose ($name, $closecount); + } + } + + return true; + } + + /** + * Is a node openable by closing other nodes? + * + * @access protected + * @return bool + */ + function _isOpenableWithClose ($name, &$closecount) { + $tnname = $this->_topNode ('name'); + if (isset ($this->_codes[strtolower($tnname)]) && (!$this->getCodeFlag (strtolower($tnname), 'case_sensitive', 'boolean', true) || !$this->_caseSensitive)) { + $tnname = strtolower($tnname); + } + if (!in_array ($this->getCodeFlag ($tnname, 'closetag', 'integer', BBCODE_CLOSETAG_IMPLICIT), array (BBCODE_CLOSETAG_FORBIDDEN, BBCODE_CLOSETAG_OPTIONAL))) { + return false; + } + $node =& $this->_findNamedNode ($name, true); + if ($node === false) { + return false; + } + $scount = count ($this->_stack); + if ($scount < 3) { + return false; + } + for ($i = $scount - 2; $i > 0; $i--) { + $closecount++; + if ($this->_stack[$i]->equals ($node)) { + return true; + } + if (in_array ($this->_stack[$i]->getFlag ('closetag', 'integer', BBCODE_CLOSETAG_IMPLICIT), array (BBCODE_CLOSETAG_IMPLICIT_ON_CLOSE_ONLY, BBCODE_CLOSETAG_MUSTEXIST))) { + return false; + } + if ($this->_validateAgain) { + if (!$this->_stack[$i]->validate ('validate_again')) { + return false; + } + } + } + + return false; + } + + /** + * Abstract method: Close remaining blocks + * @access protected + */ + function _closeRemainingBlocks () { + // everything closed + if (count ($this->_stack) == 1) { + return true; + } + // not everything close + if ($this->strict) { + return false; + } + while (count ($this->_stack) > 1) { + if ($this->_topNode ('getFlag', 'closetag', 'integer', BBCODE_CLOSETAG_IMPLICIT) == BBCODE_CLOSETAG_MUSTEXIST) { + return false; // sorry + } + $res = $this->_popNode (); + if (!$res) { + return false; + } + } + return true; + } + + /** + * Find a node with a specific name in stack + * + * @access protected + * @return mixed + */ + function &_findNamedNode ($name, $searchdeeper = false) { + $lname = strtolower ($name); + if (isset ($this->_codes[$lname]) && (!$this->getCodeFlag ($lname, 'case_sensitive', 'boolean', true) || !$this->_caseSensitive)) { + $name = $lname; + $case_sensitive = false; + } else { + $case_sensitive = true; + } + $scount = count ($this->_stack); + if ($searchdeeper) { + $scount--; + } + for ($i = $scount - 1; $i > 0; $i--) { + if (!$case_sensitive) { + $cmp_name = strtolower ($this->_stack[$i]->name ()); + } else { + $cmp_name = $this->_stack[$i]->name (); + } + if ($cmp_name == $name) { + return $this->_stack[$i]; + } + } + $result = false; + return $result; + } + + /** + * Abstract method: Output tree + * @access protected + * @return bool + */ + function _outputTree () { + if ($this->_noOutput) { + return true; + } + $output = $this->_outputNode ($this->_root); + if (is_string ($output)) { + $this->_output = $this->_applyPostfilters ($output); + unset ($output); + return true; + } + + return false; + } + + /** + * Output a node + * @access protected + * @return bool + */ + function _outputNode (&$node) { + $output = ''; + if ($node->_type == STRINGPARSER_BBCODE_NODE_PARAGRAPH || $node->_type == STRINGPARSER_BBCODE_NODE_ELEMENT || $node->_type == STRINGPARSER_NODE_ROOT) { + $ccount = count ($node->_children); + for ($i = 0; $i < $ccount; $i++) { + $suboutput = $this->_outputNode ($node->_children[$i]); + if (!is_string ($suboutput)) { + return false; + } + $output .= $suboutput; + } + if ($node->_type == STRINGPARSER_BBCODE_NODE_PARAGRAPH) { + return $this->_paragraphHandling['start_tag'].$output.$this->_paragraphHandling['end_tag']; + } + if ($node->_type == STRINGPARSER_BBCODE_NODE_ELEMENT) { + return $node->getReplacement ($output); + } + return $output; + } else if ($node->_type == STRINGPARSER_NODE_TEXT) { + $output = $node->content; + $before = ''; + $after = ''; + $ol = strlen ($output); + switch ($node->getFlag ('newlinemode.begin', 'integer', BBCODE_NEWLINE_PARSE)) { + case BBCODE_NEWLINE_IGNORE: + if ($ol && $output{0} == "\n") { + $before = "\n"; + } + // don't break! + case BBCODE_NEWLINE_DROP: + if ($ol && $output{0} == "\n") { + $output = substr ($output, 1); + $ol--; + } + break; + } + switch ($node->getFlag ('newlinemode.end', 'integer', BBCODE_NEWLINE_PARSE)) { + case BBCODE_NEWLINE_IGNORE: + if ($ol && $output{$ol-1} == "\n") { + $after = "\n"; + } + // don't break! + case BBCODE_NEWLINE_DROP: + if ($ol && $output{$ol-1} == "\n") { + $output = substr ($output, 0, -1); + $ol--; + } + break; + } + // can't do anything + if ($node->_parent === null) { + return $before.$output.$after; + } + if ($node->_parent->_type == STRINGPARSER_BBCODE_NODE_PARAGRAPH) { + $parent =& $node->_parent; + unset ($node); + $node =& $parent; + unset ($parent); + // if no parent for this paragraph + if ($node->_parent === null) { + return $before.$output.$after; + } + } + if ($node->_parent->_type == STRINGPARSER_NODE_ROOT) { + return $before.$this->_applyParsers ($this->_rootContentType, $output).$after; + } + if ($node->_parent->_type == STRINGPARSER_BBCODE_NODE_ELEMENT) { + return $before.$this->_applyParsers ($node->_parent->_codeInfo['content_type'], $output).$after; + } + return $before.$output.$after; + } + } + + /** + * Abstract method: Manipulate the tree + * @access protected + * @return bool + */ + function _modifyTree () { + // first pass: try to do newline handling + $nodes =& $this->_root->getNodesByCriterium ('needsTextNodeModification', true); + $nodes_count = count ($nodes); + for ($i = 0; $i < $nodes_count; $i++) { + $v = $nodes[$i]->getFlag ('opentag.before.newline', 'integer', BBCODE_NEWLINE_PARSE); + if ($v != BBCODE_NEWLINE_PARSE) { + $n =& $nodes[$i]->findPrevAdjentTextNode (); + if (!is_null ($n)) { + $n->setFlag ('newlinemode.end', $v); + } + unset ($n); + } + $v = $nodes[$i]->getFlag ('opentag.after.newline', 'integer', BBCODE_NEWLINE_PARSE); + if ($v != BBCODE_NEWLINE_PARSE) { + $n =& $nodes[$i]->firstChildIfText (); + if (!is_null ($n)) { + $n->setFlag ('newlinemode.begin', $v); + } + unset ($n); + } + $v = $nodes[$i]->getFlag ('closetag.before.newline', 'integer', BBCODE_NEWLINE_PARSE); + if ($v != BBCODE_NEWLINE_PARSE) { + $n =& $nodes[$i]->lastChildIfText (); + if (!is_null ($n)) { + $n->setFlag ('newlinemode.end', $v); + } + unset ($n); + } + $v = $nodes[$i]->getFlag ('closetag.after.newline', 'integer', BBCODE_NEWLINE_PARSE); + if ($v != BBCODE_NEWLINE_PARSE) { + $n =& $nodes[$i]->findNextAdjentTextNode (); + if (!is_null ($n)) { + $n->setFlag ('newlinemode.begin', $v); + } + unset ($n); + } + } + + // second pass a: do paragraph handling on root element + if ($this->_rootParagraphHandling) { + $res = $this->_handleParagraphs ($this->_root); + if (!$res) { + return false; + } + } + + // second pass b: do paragraph handling on other elements + unset ($nodes); + $nodes =& $this->_root->getNodesByCriterium ('flag:paragraphs', true); + $nodes_count = count ($nodes); + for ($i = 0; $i < $nodes_count; $i++) { + $res = $this->_handleParagraphs ($nodes[$i]); + if (!$res) { + return false; + } + } + + // second pass c: search for empty paragraph nodes and remove them + unset ($nodes); + $nodes =& $this->_root->getNodesByCriterium ('empty', true); + $nodes_count = count ($nodes); + if (isset ($parent)) { + unset ($parent); $parent = null; + } + for ($i = 0; $i < $nodes_count; $i++) { + if ($nodes[$i]->_type != STRINGPARSER_BBCODE_NODE_PARAGRAPH) { + continue; + } + unset ($parent); + $parent =& $nodes[$i]->_parent; + $parent->removeChild ($nodes[$i], true); + } + + return true; + } + + /** + * Handle paragraphs + * @access protected + * @param object $node The node to handle + * @return bool + */ + function _handleParagraphs (&$node) { + // if this node is already a subnode of a paragraph node, do NOT + // do paragraph handling on this node! + if ($this->_hasParagraphAncestor ($node)) { + return true; + } + $dest_nodes = array (); + $last_node_was_paragraph = false; + $prevtype = STRINGPARSER_NODE_TEXT; + $paragraph = null; + while (count ($node->_children)) { + $mynode =& $node->_children[0]; + $node->removeChild ($mynode); + $subprevtype = $prevtype; + $sub_nodes =& $this->_breakupNodeByParagraphs ($mynode); + for ($i = 0; $i < count ($sub_nodes); $i++) { + if (!$last_node_was_paragraph || ($prevtype == $sub_nodes[$i]->_type && ($i != 0 || $prevtype != STRINGPARSER_BBCODE_NODE_ELEMENT))) { + unset ($paragraph); + $paragraph =& new StringParser_BBCode_Node_Paragraph (); + } + $prevtype = $sub_nodes[$i]->_type; + if ($sub_nodes[$i]->_type != STRINGPARSER_BBCODE_NODE_ELEMENT || $sub_nodes[$i]->getFlag ('paragraph_type', 'integer', BBCODE_PARAGRAPH_ALLOW_BREAKUP) != BBCODE_PARAGRAPH_BLOCK_ELEMENT) { + $paragraph->appendChild ($sub_nodes[$i]); + $dest_nodes[] =& $paragraph; + $last_node_was_paragraph = true; + } else { + $dest_nodes[] =& $sub_nodes[$i]; + $last_onde_was_paragraph = false; + unset ($paragraph); + $paragraph =& new StringParser_BBCode_Node_Paragraph (); + } + } + } + $count = count ($dest_nodes); + for ($i = 0; $i < $count; $i++) { + $node->appendChild ($dest_nodes[$i]); + } + unset ($dest_nodes); + unset ($paragraph); + return true; + } + + /** + * Search for a paragraph node in tree in upward direction + * @access protected + * @param object $node The node to analyze + * @return bool + */ + function _hasParagraphAncestor (&$node) { + if ($node->_parent === null) { + return false; + } + $parent =& $node->_parent; + if ($parent->_type == STRINGPARSER_BBCODE_NODE_PARAGRAPH) { + return true; + } + return $this->_hasParagraphAncestor ($parent); + } + + /** + * Break up nodes + * @access protected + * @param object $node The node to break up + * @return array + */ + function &_breakupNodeByParagraphs (&$node) { + $detect_string = $this->_paragraphHandling['detect_string']; + $dest_nodes = array (); + // text node => no problem + if ($node->_type == STRINGPARSER_NODE_TEXT) { + $cpos = 0; + while (($npos = strpos ($node->content, $detect_string, $cpos)) !== false) { + $subnode =& new StringParser_Node_Text (substr ($node->content, $cpos, $npos - $cpos), $node->occurredAt + $cpos); + // copy flags + foreach ($node->_flags as $flag => $value) { + if ($flag == 'newlinemode.begin') { + if ($cpos == 0) { + $subnode->setFlag ($flag, $value); + } + } else if ($flag == 'newlinemode.end') { + // do nothing + } else { + $subnode->setFlag ($flag, $value); + } + } + $dest_nodes[] =& $subnode; + unset ($subnode); + $cpos = $npos + strlen ($detect_string); + } + $subnode =& new StringParser_Node_Text (substr ($node->content, $cpos), $node->occurredAt + $cpos); + if ($cpos == 0) { + $value = $node->getFlag ('newlinemode.begin', 'integer', null); + if ($value !== null) { + $subnode->setFlag ('newlinemode.begin', $value); + } + } + $value = $node->getFlag ('newlinemode.end', 'integer', null); + if ($value !== null) { + $subnode->setFlag ('newlinemode.end', $value); + } + $dest_nodes[] =& $subnode; + unset ($subnode); + return $dest_nodes; + } + // not a text node or an element node => no way + if ($node->_type != STRINGPARSER_BBCODE_NODE_ELEMENT) { + $dest_nodes[] =& $node; + return $dest_nodes; + } + if ($node->getFlag ('paragraph_type', 'integer', BBCODE_PARAGRAPH_ALLOW_BREAKUP) != BBCODE_PARAGRAPH_ALLOW_BREAKUP || !count ($node->_children)) { + $dest_nodes[] =& $node; + return $dest_nodes; + } + $dest_node =& $node->duplicate (); + $nodecount = count ($node->_children); + // now this node allows breakup - do it + for ($i = 0; $i < $nodecount; $i++) { + $firstnode =& $node->_children[0]; + $node->removeChild ($firstnode); + $sub_nodes =& $this->_breakupNodeByParagraphs ($firstnode); + for ($j = 0; $j < count ($sub_nodes); $j++) { + if ($j != 0) { + $dest_nodes[] =& $dest_node; + unset ($dest_node); + $dest_node =& $node->duplicate (); + } + $dest_node->appendChild ($sub_nodes[$j]); + } + unset ($sub_nodes); + } + $dest_nodes[] =& $dest_node; + return $dest_nodes; + } + + /** + * Is this node a usecontent node + * @access protected + * @param object $node The node to check + * @param bool $check_attrs Also check whether 'usecontent?'-attributes exist + * @return bool + */ + function _isUseContent (&$node, $check_attrs = false) { + $name = strtolower($node->name ()); + if ($this->_codes[$name]['callback_type'] == 'usecontent') { + return true; + } + $result = false; + if ($this->_codes[$name]['callback_type'] == 'callback_replace?') { + $result = true; + } else if ($this->_codes[$name]['callback_type'] != 'usecontent?') { + return false; + } + if ($check_attrs === false) { + return !$result; + } + $attributes = array_keys ($this->_topNodeVar ('_attributes')); + $p = @$this->_codes[$name]['callback_params']['usecontent_param']; + if (is_array ($p)) { + foreach ($p as $param) { + if (in_array ($param, $attributes)) { + return $result; + } + } + } else { + if (in_array ($p, $attributes)) { + return $result; + } + } + return !$result; + } +} + +/** + * Node type: BBCode Element node + * @see StringParser_BBCode_Node_Element::_type + */ +define ('STRINGPARSER_BBCODE_NODE_ELEMENT', 32); + +/** + * Node type: BBCode Paragraph node + * @see StringParser_BBCode_Node_Paragraph::_type + */ +define ('STRINGPARSER_BBCODE_NODE_PARAGRAPH', 33); + + +/** + * BBCode String parser paragraph node class + * + * @package stringparser + */ +class StringParser_BBCode_Node_Paragraph extends StringParser_Node { + /** + * The type of this node. + * + * This node is a bbcode paragraph node. + * + * @access protected + * @var int + * @see STRINGPARSER_BBCODE_NODE_PARAGRAPH + */ + var $_type = STRINGPARSER_BBCODE_NODE_PARAGRAPH; + + /** + * Determines whether a criterium matches this node + * + * @access public + * @param string $criterium The criterium that is to be checked + * @param mixed $value The value that is to be compared + * @return bool True if this node matches that criterium + */ + function matchesCriterium ($criterium, $value) { + if ($criterium == 'empty') { + if (!count ($this->_children)) { + return true; + } + if (count ($this->_children) > 1) { + return false; + } + if ($this->_children[0]->_type != STRINGPARSER_NODE_TEXT) { + return false; + } + if (!strlen ($this->_children[0]->content)) { + return true; + } + if (strlen ($this->_children[0]->content) > 2) { + return false; + } + $f_begin = $this->_children[0]->getFlag ('newlinemode.begin', 'integer', BBCODE_NEWLINE_PARSE); + $f_end = $this->_children[0]->getFlag ('newlinemode.end', 'integer', BBCODE_NEWLINE_PARSE); + $content = $this->_children[0]->content; + if ($f_begin != BBCODE_NEWLINE_PARSE && $content{0} == "\n") { + $content = substr ($content, 1); + } + if ($f_end != BBCODE_NEWLINE_PARSE && $content{strlen($content)-1} == "\n") { + $content = substr ($content, 0, -1); + } + if (!strlen ($content)) { + return true; + } + return false; + } + } +} + +/** + * BBCode String parser element node class + * + * @package stringparser + */ +class StringParser_BBCode_Node_Element extends StringParser_Node { + /** + * The type of this node. + * + * This node is a bbcode element node. + * + * @access protected + * @var int + * @see STRINGPARSER_BBCODE_NODE_ELEMENT + */ + var $_type = STRINGPARSER_BBCODE_NODE_ELEMENT; + + /** + * Element name + * + * @access protected + * @var string + * @see StringParser_BBCode_Node_Element::name + * @see StringParser_BBCode_Node_Element::setName + * @see StringParser_BBCode_Node_Element::appendToName + */ + var $_name = ''; + + /** + * Element flags + * + * @access protected + * @var array + */ + var $_flags = array (); + + /** + * Element attributes + * + * @access protected + * @var array + */ + var $_attributes = array (); + + /** + * Had a close tag + * + * @access protected + * @var bool + */ + var $_hadCloseTag = false; + + /** + * Was processed by paragraph handling + * + * @access protected + * @var bool + */ + var $_paragraphHandled = false; + + ////////////////////////////////////////////////// + + /** + * Duplicate this node (but without children / parents) + * + * @access public + * @return object + */ + function &duplicate () { + $newnode =& new StringParser_BBCode_Node_Element ($this->occurredAt); + $newnode->_name = $this->_name; + $newnode->_flags = $this->_flags; + $newnode->_attributes = $this->_attributes; + $newnode->_hadCloseTag = $this->_hadCloseTag; + $newnode->_paragraphHandled = $this->_paragraphHandled; + $newnode->_codeInfo = $this->_codeInfo; + return $newnode; + } + + /** + * Retreive name of this element + * + * @access public + * @return string + */ + function name () { + return $this->_name; + } + + /** + * Set name of this element + * + * @access public + * @param string $name The new name of the element + */ + function setName ($name) { + $this->_name = $name; + return true; + } + + /** + * Append to name of this element + * + * @access public + * @param string $chars The chars to append to the name of the element + */ + function appendToName ($chars) { + $this->_name .= $chars; + return true; + } + + /** + * Append to attribute of this element + * + * @access public + * @param string $name The name of the attribute + * @param string $chars The chars to append to the attribute of the element + */ + function appendToAttribute ($name, $chars) { + if (!isset ($this->_attributes[$name])) { + $this->_attributes[$name] = $chars; + return true; + } + $this->_attributes[$name] .= $chars; + return true; + } + + /** + * Set attribute + * + * @access public + * @param string $name The name of the attribute + * @param string $value The new value of the attribute + */ + function setAttribute ($name, $value) { + $this->_attributes[$name] = $value; + return true; + } + + /** + * Set code info + * + * @access public + * @param array $info The code info array + */ + function setCodeInfo ($info) { + $this->_codeInfo = $info; + $this->_flags = $info['flags']; + return true; + } + + /** + * Get attribute value + * + * @access public + * @param string $name The name of the attribute + */ + function attribute ($name) { + if (!isset ($this->_attributes[$name])) { + return null; + } + return $this->_attributes[$name]; + } + + /** + * Set flag that this element had a close tag + * + * @access public + */ + function setHadCloseTag () { + $this->_hadCloseTag = true; + } + + /** + * Set flag that this element was already processed by paragraph handling + * + * @access public + */ + function setParagraphHandled () { + $this->_paragraphHandled = true; + } + + /** + * Get flag if this element was already processed by paragraph handling + * + * @access public + * @return bool + */ + function paragraphHandled () { + return $this->_paragraphHandled; + } + + /** + * Get flag if this element had a close tag + * + * @access public + * @return bool + */ + function hadCloseTag () { + return $this->_hadCloseTag; + } + + /** + * Determines whether a criterium matches this node + * + * @access public + * @param string $criterium The criterium that is to be checked + * @param mixed $value The value that is to be compared + * @return bool True if this node matches that criterium + */ + function matchesCriterium ($criterium, $value) { + if ($criterium == 'tagName') { + return ($value == $this->_name); + } + if ($criterium == 'needsTextNodeModification') { + return (($this->getFlag ('opentag.before.newline', 'integer', BBCODE_NEWLINE_PARSE) != BBCODE_NEWLINE_PARSE || $this->getFlag ('opentag.after.newline', 'integer', BBCODE_NEWLINE_PARSE) != BBCODE_NEWLINE_PARSE || ($this->_hadCloseTag && ($this->getFlag ('closetag.before.newline', 'integer', BBCODE_NEWLINE_PARSE) != BBCODE_NEWLINE_PARSE || $this->getFlag ('closetag.after.newline', 'integer', BBCODE_NEWLINE_PARSE) != BBCODE_NEWLINE_PARSE))) == (bool)$value); + } + if (substr ($criterium, 0, 5) == 'flag:') { + $criterium = substr ($criterium, 5); + return ($this->getFlag ($criterium) == $value); + } + if (substr ($criterium, 0, 6) == '!flag:') { + $criterium = substr ($criterium, 6); + return ($this->getFlag ($criterium) != $value); + } + if (substr ($criterium, 0, 6) == 'flag=:') { + $criterium = substr ($criterium, 6); + return ($this->getFlag ($criterium) === $value); + } + if (substr ($criterium, 0, 7) == '!flag=:') { + $criterium = substr ($criterium, 7); + return ($this->getFlag ($criterium) !== $value); + } + return parent::matchesCriterium ($criterium, $value); + } + + /** + * Get first child if it is a text node + * + * @access public + * @return mixed + */ + function &firstChildIfText () { + $ret =& $this->firstChild (); + if (is_null ($ret)) { + return $ret; + } + if ($ret->_type != STRINGPARSER_NODE_TEXT) { + // DON'T DO $ret = null WITHOUT unset BEFORE! + // ELSE WE WILL ERASE THE NODE ITSELF! EVIL! + unset ($ret); + $ret = null; + } + return $ret; + } + + /** + * Get last child if it is a text node AND if this element had a close tag + * + * @access public + * @return mixed + */ + function &lastChildIfText () { + $ret =& $this->lastChild (); + if (is_null ($ret)) { + return $ret; + } + if ($ret->_type != STRINGPARSER_NODE_TEXT || !$this->_hadCloseTag) { + // DON'T DO $ret = null WITHOUT unset BEFORE! + // ELSE WE WILL ERASE THE NODE ITSELF! EVIL! + if ($ret->_type != STRINGPARSER_NODE_TEXT && !$ret->hadCloseTag ()) { + $ret2 =& $ret->_findPrevAdjentTextNodeHelper (); + unset ($ret); + $ret =& $ret2; + unset ($ret2); + } else { + unset ($ret); + $ret = null; + } + } + return $ret; + } + + /** + * Find next adjent text node after close tag + * + * returns the node or null if none exists + * + * @access public + * @return mixed + */ + function &findNextAdjentTextNode () { + $ret = null; + if (is_null ($this->_parent)) { + return $ret; + } + if (!$this->_hadCloseTag) { + return $ret; + } + $ccount = count ($this->_parent->_children); + $found = false; + for ($i = 0; $i < $ccount; $i++) { + if ($this->_parent->_children[$i]->equals ($this)) { + $found = $i; + break; + } + } + if ($found === false) { + return $ret; + } + if ($found < $ccount - 1) { + if ($this->_parent->_children[$found+1]->_type == STRINGPARSER_NODE_TEXT) { + return $this->_parent->_children[$found+1]; + } + return $ret; + } + if ($this->_parent->_type == STRINGPARSER_BBCODE_NODE_ELEMENT && !$this->_parent->hadCloseTag ()) { + $ret =& $this->_parent->findNextAdjentTextNode (); + return $ret; + } + return $ret; + } + + /** + * Find previous adjent text node before open tag + * + * returns the node or null if none exists + * + * @access public + * @return mixed + */ + function &findPrevAdjentTextNode () { + $ret = null; + if (is_null ($this->_parent)) { + return $ret; + } + $ccount = count ($this->_parent->_children); + $found = false; + for ($i = 0; $i < $ccount; $i++) { + if ($this->_parent->_children[$i]->equals ($this)) { + $found = $i; + break; + } + } + if ($found === false) { + return $ret; + } + if ($found > 0) { + if ($this->_parent->_children[$found-1]->_type == STRINGPARSER_NODE_TEXT) { + return $this->_parent->_children[$found-1]; + } + if (!$this->_parent->_children[$found-1]->hadCloseTag ()) { + $ret =& $this->_parent->_children[$found-1]->_findPrevAdjentTextNodeHelper (); + } + return $ret; + } + return $ret; + } + + /** + * Helper function for findPrevAdjentTextNode + * + * Looks at the last child node; if it's a text node, it returns it, + * if the element node did not have an open tag, it calls itself + * recursively. + */ + function &_findPrevAdjentTextNodeHelper () { + $lastnode =& $this->lastChild (); + if ($lastnode->_type == STRINGPARSER_NODE_TEXT) { + return $lastnode; + } + if (!$lastnode->hadCloseTag ()) { + $ret =& $lastnode->_findPrevAdjentTextNodeHelper (); + } else { + $ret = null; + } + return $ret; + } + + /** + * Get Flag + * + * @access public + * @param string $flag The requested flag + * @param string $type The requested type of the return value + * @param mixed $default The default return value + * @return mixed + */ + function getFlag ($flag, $type = 'mixed', $default = null) { + if (!isset ($this->_flags[$flag])) { + return $default; + } + $return = $this->_flags[$flag]; + if ($type != 'mixed') { + settype ($return, $type); + } + return $return; + } + + /** + * Set a flag + * + * @access public + * @param string $name The name of the flag + * @param mixed $value The value of the flag + */ + function setFlag ($name, $value) { + $this->_flags[$name] = $value; + return true; + } + + /** + * Validate code + * + * @access public + * @param string $action The action which is to be called ('validate' + * for first validation, 'validate_again' for + * second validation (optional)) + * @return bool + */ + function validate ($action = 'validate') { + if ($action != 'validate' && $action != 'validate_again') { + return false; + } + if ($this->_codeInfo['callback_type'] != 'simple_replace' && $this->_codeInfo['callback_type'] != 'simple_replace_single') { + if (!is_callable ($this->_codeInfo['callback_func'])) { + return false; + } + + if (($this->_codeInfo['callback_type'] == 'usecontent' || $this->_codeInfo['callback_type'] == 'usecontent?' || $this->_codeInfo['callback_type'] == 'callback_replace?') && count ($this->_children) == 1 && $this->_children[0]->_type == STRINGPARSER_NODE_TEXT) { + // we have to make sure the object gets passed on as a reference + // if we do call_user_func(..., &$this) this will clash with PHP5 + $callArray = array ($action, $this->_attributes, $this->_children[0]->content, $this->_codeInfo['callback_params']); + $callArray[] =& $this; + $res = call_user_func_array ($this->_codeInfo['callback_func'], $callArray); + if ($res) { + // ok, now, if we've got a usecontent type, set a flag that + // this may not be broken up by paragraph handling! + // but PLEASE do NOT change if already set to any other setting + // than BBCODE_PARAGRAPH_ALLOW_BREAKUP because we could + // override e.g. BBCODE_PARAGRAPH_BLOCK_ELEMENT! + $val = $this->getFlag ('paragraph_type', 'integer', BBCODE_PARAGRAPH_ALLOW_BREAKUP); + if ($val == BBCODE_PARAGRAPH_ALLOW_BREAKUP) { + $this->_flags['paragraph_type'] = BBCODE_PARAGRAPH_ALLOW_INSIDE; + } + } + return $res; + } + + // we have to make sure the object gets passed on as a reference + // if we do call_user_func(..., &$this) this will clash with PHP5 + $callArray = array ($action, $this->_attributes, null, $this->_codeInfo['callback_params']); + $callArray[] =& $this; + return call_user_func_array ($this->_codeInfo['callback_func'], $callArray); + } + return (bool)(!count ($this->_attributes)); + } + + /** + * Get replacement for this code + * + * @access public + * @param string $subcontent The content of all sub-nodes + * @return string + */ + function getReplacement ($subcontent) { + if ($this->_codeInfo['callback_type'] == 'simple_replace' || $this->_codeInfo['callback_type'] == 'simple_replace_single') { + if ($this->_codeInfo['callback_type'] == 'simple_replace_single') { + if (strlen ($subcontent)) { // can't be! + return false; + } + return $this->_codeInfo['callback_params']['start_tag']; + } + return $this->_codeInfo['callback_params']['start_tag'].$subcontent.$this->_codeInfo['callback_params']['end_tag']; + } + // else usecontent, usecontent? or callback_replace or callback_replace_single + // => call function (the function is callable, determined in validate()!) + + // we have to make sure the object gets passed on as a reference + // if we do call_user_func(..., &$this) this will clash with PHP5 + $callArray = array ('output', $this->_attributes, $subcontent, $this->_codeInfo['callback_params']); + $callArray[] =& $this; + return call_user_func_array ($this->_codeInfo['callback_func'], $callArray); + } + + /** + * Dump this node to a string + * + * @access protected + * @return string + */ + function _dumpToString () { + $str = "bbcode \"".substr (preg_replace ('/\s+/', ' ', $this->_name), 0, 40)."\""; + if (count ($this->_attributes)) { + $attribs = array_keys ($this->_attributes); + sort ($attribs); + $str .= ' ('; + $i = 0; + foreach ($attribs as $attrib) { + if ($i != 0) { + $str .= ', '; + } + $str .= $attrib.'="'; + $str .= substr (preg_replace ('/\s+/', ' ', $this->_attributes[$attrib]), 0, 10); + $str .= '"'; + $i++; + } + $str .= ')'; + } + return $str; + } +} + +?> \ No newline at end of file diff --git a/Source/gallery2/lib/javascript/AutoComplete.js b/Source/gallery2/lib/javascript/AutoComplete.js new file mode 100644 index 0000000..077968d --- /dev/null +++ b/Source/gallery2/lib/javascript/AutoComplete.js @@ -0,0 +1,71 @@ +/* + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2007 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ +function autoCompleteAttach(element, url) { + // YUI's autocomplete data source expects to receive the url in pieces + // so split it up accordingly. + var path_and_params = url.split('?'); + var path = path_and_params[0]; + var params = path_and_params[1].split('&'); + + var ds = new YAHOO.widget.DS_XHR(path, ["\n", "\t"]); + ds.queryMatchContains = true; + ds.responseType = ds.TYPE_FLAT; + + // Extract that param that has __VALUE__ in it and use that as + // the data source scriptQueryParam + new_params = []; + for (i = 0; i < params.length; i++) { + if (params[i].indexOf('__VALUE__') != -1) { + tmp = params[i].split('='); + ds.scriptQueryParam = tmp[0]; + } else { + new_params.push(params[i]); + } + } + ds.scriptQueryAppend = new_params.join('&'); + + var target = YAHOO.util.Dom.get(element); + var target_region = YAHOO.util.Dom.getRegion(target); + var target_width = target_region.right - target_region.left; + + var shadow = document.createElement('div'); + shadow.id = element + '_autoCompleteShadow'; + target.parentNode.appendChild(shadow, target); + YAHOO.util.Dom.addClass(shadow, 'autoCompleteShadow'); + + var container = document.createElement('div'); + container.id = element + '_autoCompleteContainer'; + shadow.appendChild(container); + YAHOO.util.Dom.addClass(container, 'autoCompleteContainer'); + + // These are here for backwards compatibility to the CSS that we used in 2.1. Unfortunately, + // it breaks drop shadows in the new version. Remove these when GalleryTheme API gets to 3.x + YAHOO.util.Dom.setStyle(shadow, 'position', 'absolute'); + YAHOO.util.Dom.setStyle(shadow, 'background', '#FFF'); + YAHOO.util.Dom.setStyle(container, 'position', 'relative'); + + // Adjust for relative positioning of the container inside the shadow + var pos = [target_region.left, target_region.bottom]; + pos[0] += Number(YAHOO.util.Dom.getStyle(container, "right").replace(/[^0-9]/g, "")); + pos[1] += Number(YAHOO.util.Dom.getStyle(container, "bottom").replace(/[^0-9]/g, "")); + + YAHOO.util.Dom.setXY(shadow, pos); + YAHOO.util.Dom.setStyle(shadow, "width", target_width + "px"); + oAutoComp = new YAHOO.widget.AutoComplete(element, element + '_autoCompleteContainer', ds); +} diff --git a/Source/gallery2/lib/javascript/BlockSelectWidget.js b/Source/gallery2/lib/javascript/BlockSelectWidget.js new file mode 100644 index 0000000..fdcfe96 --- /dev/null +++ b/Source/gallery2/lib/javascript/BlockSelectWidget.js @@ -0,0 +1,631 @@ +/* + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2007 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ +/* + * Author: Ariel Garza (primary development) + * Author: Bharat Mediratta (minor adjustments for namespacing, bugfixes) + * NOTE: If the blocks data format changes, bump the "version" number in URLs + * referencing this file to ensure old/cached code is not used. + */ +var bsw_WIDGET_BLOCKS = new Array(); +var bsw_FORM_TARGETS = new Array(); +var bsw_HEADER_TEXT = new Array(); +var bsw_UPDATE_LEVEL = 0; + +function bsw_Block(key, id, description) { + if (!bsw_WIDGET_BLOCKS[key]) { + bsw_WIDGET_BLOCKS[key] = new Array(); + } + bsw_WIDGET_BLOCKS[key][id] = this; + + this.key = key; + this.id = id; + this.description = description; + this.parameters = new Array(); + + this.addVariable = function(varName, varDefaultValue, varDescription, varType, varExtra) { + this.parameters[varName] = new Array(); + this.parameters[varName]['description'] = varDescription; + this.parameters[varName]['defaultValue'] = varDefaultValue; + this.parameters[varName]['type'] = varType; + this.parameters[varName]['extra'] = varExtra; + this.parameters[varName]['varOverrides'] = new Array(); + }; + + this.addVariableOverride = function(varName, varToOverride) { + this.parameters[varName]['varOverrides'][varToOverride] = 1; + } +} + +/** + * Add a definition for a block that is available for user selection. + * @param id The id of the block. + * @param description A short description of the block. + */ +function bsw_addAvailableBlock(key, id, description) { + var availableEl = document.getElementById("blocksAvailableList_" + key); + var block = new bsw_Block(key, id, description); + + var blockOptionEl = document.createElement("option"); + blockOptionEl.appendChild(document.createTextNode(block.description)); + blockOptionEl.value = block.id; + availableEl.appendChild(blockOptionEl); + + return block; +} + +var bsw_PREF_ID = 1; +var bsw_USER_BLOCKS = new Array(); +var bsw_USER_BLOCK_POSITIONS = new Array(); +function bsw_BlockPreference(key, blockId, values) { + this.id = bsw_PREF_ID++; + + if (!bsw_USER_BLOCKS[key]) { + bsw_USER_BLOCKS[key] = new Array(); + } + if (!bsw_USER_BLOCK_POSITIONS[key]) { + bsw_USER_BLOCK_POSITIONS[key] = new Array(); + } + bsw_USER_BLOCKS[key][this.id] = this; + bsw_USER_BLOCK_POSITIONS[key].push(this.id); + + this.blockKey = key; + this.blockId = blockId; + this.parameters = new Array(); + + this.setParameterValue = function(paramName, value) { + this.parameters[paramName] = value; + }; + + this.toString = function() { + var result = '["' + this.blockId + '",{'; + var count = 0; + for (var paramName in this.parameters) { + var paramValue = this.parameters[paramName]; + var defaultValue = + bsw_WIDGET_BLOCKS[key][blockId]['parameters'][paramName]['defaultValue']; + var paramType = bsw_WIDGET_BLOCKS[key][blockId]['parameters'][paramName]['type']; + if (paramValue != defaultValue) { + if (count++) { + result += ','; + } + + result += '"' + paramName + '":'; + if (paramType == 'text' || paramType == 'choice') { + result += '"' + paramValue.replace(/\"/g,'\\"') + '"'; + } else { + result += paramValue; + } + } + } + result += '}]'; + + return result; + }; + + /* Set the defaults */ + if (bsw_WIDGET_BLOCKS[key][blockId]) { + for (var value in bsw_WIDGET_BLOCKS[key][blockId]['parameters']) { + this.setParameterValue( + value, bsw_WIDGET_BLOCKS[key][blockId]['parameters'][value]['defaultValue']); + } + } else { + /* + * Unknown block. Uncomment this for debugging purposes. + * alert('undefined block type: ' + blockId); + */ + } + + /* Override whatever we're specifically changing */ + for (var value in values) { + this.setParameterValue(value, values[value]); + } +} + +/** + * Add a block to the list of blocks that are used by the album. + * @param blockId The id of the block. This must match a previously defined block id. + * @param values The values that are assigned for the block. + */ +function bsw_addUserBlockPreference(key, blockId, values) { + var usedEl = document.getElementById("blocksUsedList_" + key); + var blockPref = new bsw_BlockPreference(key, blockId, values); + + var block = bsw_WIDGET_BLOCKS[key][blockPref.blockId]; + + if (block != undefined) { + var blockOptionEl = document.createElement("option"); + blockOptionEl.appendChild(document.createTextNode(block.description)); + blockOptionEl.value = blockPref.id; + + usedEl.appendChild(blockOptionEl); + } else { + /* + * Uncomment this for debugging purposes. + * alert('undefined block type: ' + blockId); + */ + } +} + +function bsw_initAdminForm(key, parameterText, valueText) { + var availableEl = document.getElementById("blocksAvailableList_" + key); + var usedEl = document.getElementById("blocksUsedList_" + key); + + /* + * Undo the " -> " coercion that we had to do in order to embed the + * serialized value into a string value in HTML. + */ + var valueEl = document.getElementById("albumBlockValue_" + key); + valueEl.value = valueEl.value.replace('"', '"'); + var usedBlockString = valueEl.value; + + bsw_createBlockPrefsFromString(key, usedBlockString); + bsw_resizeBlocksUsedList(key); + bsw_selectNone(key); + + bsw_HEADER_TEXT[key] = new Array(); + bsw_HEADER_TEXT[key]['parameter'] = parameterText; + bsw_HEADER_TEXT[key]['value'] = valueText; +} + +function bsw_reInitAdminForm(key) { + /* + * Don't reinitialize if we're already inside an update. This can happen + * if the albumBlockValue element calls us in its onchange() handler + */ + if (bsw_UPDATE_LEVEL == 0) { + var usedBlockString = document.getElementById("albumBlockValue_" + key).value; + bsw_USER_BLOCK_POSITIONS[key] = new Array(); + bsw_createBlockPrefsFromString(key, unescape(usedBlockString)); + bsw_selectNone(key); + } +} + +/** + * Disable a button + */ +function bsw_disableButton(key, tag) { + document.getElementById("bsw_" + tag + "_" + key).className = "bsw_ButtonDisabled"; +} + +/** + * Enable a button + */ +function bsw_enableButton(key, tag) { + document.getElementById("bsw_" + tag + "_" + key).className = "bsw_ButtonEnabled"; +} + +/** + * Set all selected indexes to -1 and disable all buttons + */ +function bsw_selectNone(key) { + document.getElementById("blocksAvailableList_" + key).selectedIndex = 0; + document.getElementById("blocksUsedList_" + key).selectedIndex = -1; + + bsw_disableButton(key, "AddButton"); + bsw_disableButton(key, "RemoveButton"); + bsw_disableButton(key, "MoveUpButton"); + bsw_disableButton(key, "MoveDownButton"); +} + +/** + * Once a selection has been made in the list of available blocks, the button to + * add it to the list of used blocks should be enabled and all other buttons should + * be disabled. + */ +function bsw_selectToUse(key) { + if (document.getElementById("blocksAvailableList_" + key).selectedIndex <= 0) { + bsw_disableButton(key, "AddButton"); + return; + } + + bsw_enableButton(key, "AddButton"); + bsw_disableButton(key, "RemoveButton"); + bsw_disableButton(key, "MoveUpButton"); + bsw_disableButton(key, "MoveDownButton"); + + document.getElementById("blocksUsedList_" + key).selectedIndex = -1; +} + +/** + * Once a selection has been made in the list of used blocks, the applicable buttons should be + * enabled and all other buttons should be disabled. + */ +function bsw_selectToChange(key) { + bsw_disableButton(key, "AddButton"); + bsw_enableButton(key, "RemoveButton"); + + var usedEl = document.getElementById("blocksUsedList_" + key); + if (usedEl.selectedIndex > 0) { + bsw_enableButton(key, "MoveUpButton"); + } else { + bsw_disableButton(key, "MoveUpButton"); + } + + if (usedEl.selectedIndex < usedEl.options.length - 1) { + bsw_enableButton(key, "MoveDownButton"); + } else { + bsw_disableButton(key, "MoveDownButton"); + } + + document.getElementById("blocksAvailableList_" + key).selectedIndex = 0; + + bsw_showBlockOptions(key); +} + +/** + * Move a block from the available list to the used list. + */ +function bsw_addBlock(key) { + var availableEl = document.getElementById("blocksAvailableList_" + key); + var block = bsw_WIDGET_BLOCKS[key][availableEl.options[availableEl.selectedIndex].value]; + + bsw_addUserBlockPreference(key, block.id, new Array()); + bsw_updateAlbumBlockValue(key); + bsw_selectNone(key); + bsw_resizeBlocksUsedList(key); +} + +/** + * Move a block from the used list back to the availabe list. + */ +function bsw_removeBlock(key) { + var usedEl = document.getElementById("blocksUsedList_" + key); + var selectedIndex = usedEl.selectedIndex; + if (selectedIndex < 0) { + return; + } + var optionEl = usedEl.options[selectedIndex]; + + bsw_USER_BLOCKS[key][optionEl.value] == null; + bsw_USER_BLOCK_POSITIONS[key].splice(selectedIndex, 1); + usedEl.removeChild(optionEl); + + /* Select the next block */ + if (usedEl.length > 0) { + usedEl.selectedIndex = Math.max(selectedIndex - 1, 0); + } else { + usedEl.selectedIndex = -1; + bsw_selectNone(key); + } + + bsw_showBlockOptions(key); + bsw_updateAlbumBlockValue(key); + bsw_resizeBlocksUsedList(key); +} + +function bsw_resizeBlocksUsedList(key) { + var usedEl = document.getElementById("blocksUsedList_" + key); + if (bsw_USER_BLOCK_POSITIONS[key]) { + usedEl.size = Math.max(bsw_USER_BLOCK_POSITIONS[key].length, 4); + } else { + usedEl.size = 4; + } +} + +/** + * This function actually moves a block in the used list. + * @param isUp true if the block preference is being moved up. + */ +function bsw_moveBlock(key, isUp) { + var usedEl = document.getElementById("blocksUsedList_" + key); + var index = usedEl.selectedIndex; + + var amount = isUp ? -1 : 1; + + /* First swap the preference in our positions array */ + var tmpId = bsw_USER_BLOCK_POSITIONS[key][index + amount]; + bsw_USER_BLOCK_POSITIONS[key][index + amount] = bsw_USER_BLOCK_POSITIONS[key][index]; + bsw_USER_BLOCK_POSITIONS[key][index] = tmpId; + + /* Now swap the select options */ + var tmpVal = usedEl.options[index + amount].value; + var tmpDesc = usedEl.options[index + amount].innerHTML; + + usedEl.options[index + amount].value = usedEl.options[index].value; + usedEl.options[index + amount].innerHTML = usedEl.options[index].innerHTML; + + usedEl.options[index].value = tmpVal; + usedEl.options[index].innerHTML = tmpDesc; + + usedEl.selectedIndex += amount; + + bsw_updateAlbumBlockValue(key); + bsw_selectToChange(key); +} + +/** + * Move the selected block up. + */ +function bsw_moveUp(key) { + var usedEl = document.getElementById("blocksUsedList_" + key); + var index = usedEl.selectedIndex; + + if (index <= 0) { + return; + } + + bsw_moveBlock(key, true); +} + +/** + * Move the selected block down. + */ +function bsw_moveDown(key) { + var usedEl = document.getElementById("blocksUsedList_" + key); + var index = usedEl.selectedIndex; + + if (index < 0 || index >= usedEl.options.length - 1) { + return; + } + + bsw_moveBlock(key, false); +} + +/** + * Show the options for the currently selected block in the used list. + */ +function bsw_showBlockOptions(key) { + var usedEl = document.getElementById("blocksUsedList_" + key); + var blockOptionsEl = document.getElementById("bsw_BlockOptions_" + key); + + blockOptionsEl.innerHTML = ""; + if (usedEl.selectedIndex < 0) { + return; + } + + /* Get the block and block preference we are dealing with */ + var blockPref = bsw_USER_BLOCKS[key][usedEl.options[usedEl.selectedIndex].value]; + var block = bsw_WIDGET_BLOCKS[key][blockPref.blockId]; + + /* For some reason, "block.parameters.length == 0" doesn't work here. wtf? */ + var i = 0; + for (var paramName in block.parameters) { + i++; + } + if (i == 0) { + return; + } + + /* First create the table for the parameters */ + var optionTableEl = document.createElement("table"); + var optionTbodyEl = document.createElement("tbody"); + optionTableEl.id = "bsw_ParamTable_" + key; + optionTableEl.className = "bsw_ParamTable"; + + var headerRowEl = document.createElement("tr"); + headerRowEl.id = "bsw_ParamHeaderRow_" + key; + headerRowEl.className = "bsw_ParamHeaderRow"; + + var paramHeaderEl = document.createElement("td"); + paramHeaderEl.appendChild(document.createTextNode(bsw_HEADER_TEXT[key]['parameter'])); + + var paramValueHeaderEl = document.createElement("td"); + paramValueHeaderEl.appendChild(document.createTextNode(bsw_HEADER_TEXT[key]['value'])); + + optionTbodyEl.appendChild(headerRowEl); + headerRowEl.appendChild(paramHeaderEl); + headerRowEl.appendChild(paramValueHeaderEl); + + /* Now add the parameter value rows */ + callbacks = new Array(); + for (var paramName in block.parameters) { + var paramRowEl = document.createElement("tr"); + + var paramNameEl = document.createElement("td"); + paramNameEl.appendChild(document.createTextNode(block.parameters[paramName]['description'])); + paramRowEl.appendChild(paramNameEl); + + var paramValueEl = document.createElement("td"); + var result = bsw_getValueElement(paramName, blockPref, block); + paramValueEl.appendChild(result[0]); + paramRowEl.appendChild(paramValueEl); + + optionTbodyEl.appendChild(paramRowEl); + if (result[1]) { + callbacks.push(result[1]); + } + } + optionTableEl.appendChild(optionTbodyEl); + blockOptionsEl.appendChild(optionTableEl); + + /* + * If you set the state of a form widget before adding it to its outer container, IE + * drops the state. So run callbacks at the end to set the state. + */ + for (var i in callbacks) { + callbacks[i](); + } + + bsw_updateVarOverrides(key, blockPref); +} + +/** + * Get the form element that is used to represent a specific block parameter + * in the state that matches the album settings. + * @param paramName The name of the parameter. + * @param blockPref The block preference. + * @param block The block definition. + * @returns The form element for the parameter. + */ +function bsw_getValueElement(paramName, blockPref, block) { + var prefValue = blockPref.parameters[paramName]; + var useDefault = (prefValue == null); + var defaultValue = block.parameters[paramName]['defaultValue']; + var elementType = block.parameters[paramName]['type']; + var callback; + + var returnElement; + var id = block.key + "_prefValue_" + paramName; + if (elementType == 'boolean') { + returnElement = document.createElement("input"); + returnElement.type = 'checkbox'; + returnElement.checked = undefined; + + /* + * The value is 'true' if it came from the original string, or true if + * it's because the box was checked via the UI. + */ + if (prefValue == 'true' || prefValue == true) { + callback = new Function('document.getElementById("' + id + '").checked = "checked";'); + } + + returnElement.onchange = function() { bsw_updatePrefValue(block.key, elementType, this); }; + } else if (elementType == 'choice') { + returnElement = document.createElement("select"); + + var option; + i = 0; + for (var choice in block.parameters[paramName]['extra']) { + option = document.createElement("option"); + option.appendChild(document.createTextNode(choice)); + option.value = choice; + option.innerHTML = block.parameters[paramName]['extra'][choice]; + returnElement.appendChild(option); + + if (choice == prefValue) { + callback = new Function('document.getElementById("' + id + '").selectedIndex = ' + + i + ';'); + } + i++; + } + returnElement.selectedIndex = -1; + + returnElement.onchange = function() { bsw_updatePrefValue(block.key, elementType, this); }; + } else if (elementType == 'text') { + returnElement = document.createElement("input"); + returnElement.type = 'text'; + callback = new Function('document.getElementById("' + id + '").value = "' + + prefValue.replace(/\"/g, '\\"') + '";'); + returnElement.value = prefValue; + returnElement.onchange = function() { bsw_updatePrefValue(block.key, elementType, this); }; + } + + returnElement.id = id; + returnElement.blockPref = blockPref; + + return new Array(returnElement, callback); +} + +/** + * Update a value in a block preference to match what the user has done. + * @param element The element that was updated. + */ +function bsw_updatePrefValue(key, varType, element) { + var blockPref = element.blockPref; + var paramName = element.id; + + /* + * paramName is of the form _prefValue_ but we just want the part + * so skip the first two underscores. + */ + paramName = paramName.substr(paramName.indexOf('_') + 1); + paramName = paramName.substr(paramName.indexOf('_') + 1); + + var paramValue; + if (varType == 'boolean') { + paramValue = element.checked; + } else if (varType == 'choice') { + paramValue = element.options[element.selectedIndex].value; + } else { + /* text */ + paramValue = element.value; + } + + blockPref.setParameterValue(paramName, paramValue); + bsw_updateAlbumBlockValue(key); + bsw_updateVarOverrides(key, blockPref); +} + +/** + * Disable or enable any overridden parameters for a given blockpref. + */ +function bsw_updateVarOverrides(key, blockPref) { + var block = bsw_WIDGET_BLOCKS[key][blockPref.blockId]; + + for (var paramName in block.parameters) { + if (block.parameters[paramName]['type'] == 'boolean') { + var currentValue = document.getElementById(key + "_prefValue_" + paramName).checked; + for (var overrideName in block.parameters[paramName]['varOverrides']) { + document.getElementById(key + "_prefValue_" + overrideName).disabled = currentValue; + } + } + } +} + +/** + * Given a string value as stored in the gallery database, create block + * preference objects with the supplied values. + * @param stringValue The string representation of a block preference + */ +function bsw_createBlockPrefsFromString(key, stringValue) { + /* First we need to remove any options in used block list */ + var usedEl = document.getElementById("blocksUsedList_" + key); + for (var i = usedEl.options.length - 1; i >= 0 ; i--) { + usedEl.removeChild(usedEl.options[i]); + } + + /* Now clear out the block array */ + bsw_USER_BLOCKS[key] = new Array(); + eval('var blockData = ' + stringValue); + + for (var i = 0; i < blockData.length; i++) { + bsw_addUserBlockPreference(key, blockData[i][0], blockData[i][1]); + } +} + +/** + * Look at the user blocks that have been selected and update the form element that + * stores the string representation of them. + */ +function bsw_updateAlbumBlockValue(key) { + var albumValueEl = document.getElementById("albumBlockValue_" + key); + var newValue = '['; + + var count = 0; + for (var i = 0; i < bsw_USER_BLOCK_POSITIONS[key].length; i++) { + var blockPrefId = bsw_USER_BLOCK_POSITIONS[key][i]; + var blockPref = bsw_USER_BLOCKS[key][blockPrefId]; + + /* + * Write out blocks, but skip any that are undefined at this time. This can happen + * when the old block string contained blocks that are no longer in the master list. + */ + if (bsw_WIDGET_BLOCKS[key][blockPref.blockId]) { + if (count++) { + newValue += ','; + } + newValue += blockPref.toString(); + } + } + newValue += ']'; + + /* + * Don't change it unless we really need to, to avoid unnecessarily + * propagating onchange events which can lead to recursive calls back + * to bsw_updateAlbumBlockValue() + */ + if (albumValueEl.value != newValue) { + albumValueEl.value = newValue; + if (albumValueEl.onchange) { + bsw_UPDATE_LEVEL++; + albumValueEl.onchange(); + bsw_UPDATE_LEVEL--; + } + } +} diff --git a/Source/gallery2/lib/javascript/BlockToggle.js b/Source/gallery2/lib/javascript/BlockToggle.js new file mode 100644 index 0000000..d380a40 --- /dev/null +++ b/Source/gallery2/lib/javascript/BlockToggle.js @@ -0,0 +1,33 @@ +/* + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2007 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ +function BlockToggle(objId, togId, display) { + var o = document.getElementById(objId), t = document.getElementById(togId); + if (o.style.display == 'none') { + if (!display) display = 'block'; + if (display == 'table-row') { /* No table-row for IE */ + var agent = navigator.userAgent.toLowerCase(); + if (agent.indexOf('msie') >= 0 && agent.indexOf('opera') < 0) display = 'block'; + } + o.style.display = display; + if (t) t.innerHTML = '-'; + } else { + o.style.display = 'none'; + if (t) t.innerHTML = '+'; + } +} diff --git a/Source/gallery2/lib/javascript/ColorChooser.js b/Source/gallery2/lib/javascript/ColorChooser.js new file mode 100644 index 0000000..af33ea6 --- /dev/null +++ b/Source/gallery2/lib/javascript/ColorChooser.js @@ -0,0 +1,101 @@ +/* + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2007 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ + +var hue; +var picker; +var dd; + +function init() { + hue = YAHOO.widget.Slider.getVertSlider("Markup_hueBg", "Markup_hueThumb", 0, 180); + hue.onChange = function(newVal) { hueUpdate(newVal); }; + + picker = YAHOO.widget.Slider.getSliderRegion("Markup_pickerDiv", "Markup_selector", + 0, 180, 0, 180); + picker.onChange = function(newX, newY) { pickerUpdate(newX, newY); }; + hueUpdate(); + + dd = new YAHOO.util.DD("Markup_colorChooser"); + dd.setHandleElId("Markup_colorHandle"); + dd.endDrag = function(e) { }; + // yuck. correctly handle PNG transparency in Win IE + // also, the color it will be below SELECT elements (date pieces) + // see http://www.codetoad.com/forum/20_22736.asp + var isIE = !window.opera && navigator.userAgent.indexOf('MSIE') != -1; + if (isIE) { + var imgID = "Markup_pickerbg"; + var img = document.getElementById(imgID); + var imgName = img.src.toUpperCase(); + var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "; + var strNewHTML = ""; + img.outerHTML = strNewHTML; + } +} + +function pickerUpdate(newX, newY) { + swatchUpdate(); +} + +function hueUpdate(newVal) { + var h = (180 - hue.getValue()) / 180; + if (h == 1) { h = 0; } + var a = YAHOO.util.Color.hsv2rgb( h, 1, 1); + + document.getElementById("Markup_pickerDiv").style.backgroundColor = + "rgb(" + a[0] + ", " + a[1] + ", " + a[2] + ")"; + + swatchUpdate(); +} + +function swatchUpdate() { + var h = (180 - hue.getValue()); + if (h == 180) { h = 0; } + document.getElementById("Markup_hval").value = (h*2); + + h = h / 180; + + var s = picker.getXValue() / 180; + document.getElementById("Markup_sval").value = Math.round(s * 100); + + var v = (180 - picker.getYValue()) / 180; + document.getElementById("Markup_vval").value = Math.round(v * 100); + + var a = YAHOO.util.Color.hsv2rgb( h, s, v ); + + document.getElementById("Markup_swatch").style.backgroundColor = + "rgb(" + a[0] + ", " + a[1] + ", " + a[2] + ")"; + + document.getElementById("Markup_rval").value = a[0]; + document.getElementById("Markup_gval").value = a[1]; + document.getElementById("Markup_bval").value = a[2]; + document.getElementById("Markup_hexval").value = + YAHOO.util.Color.rgb2hex(a[0], a[1], a[2]); +} + +function userUpdate() { + var colorChooser = document.getElementById("Markup_colorChooser"); + var element = document.getElementById(colorChooser.g2ElementId); + var color = document.getElementById("Markup_hexval").value; + element.value = element.value + '[color=#' + color + ']'; + colorChooser.style.display = 'none'; + element.focus(); +} + diff --git a/Source/gallery2/lib/javascript/Cropper.js b/Source/gallery2/lib/javascript/Cropper.js new file mode 100644 index 0000000..91129b2 --- /dev/null +++ b/Source/gallery2/lib/javascript/Cropper.js @@ -0,0 +1,334 @@ +/* + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2007 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ +/** + * $Revision: 15513 $ + */ + +/** + * ================================================================================ + * CropHandle + * ================================================================================ + */ + +CropHandle = function(image_id, frame_id, handle_id) { + this.init(frame_id); + this.setHandleElId(handle_id); + + this.image_region = YAHOO.util.Dom.getRegion(image_id); + this.image_region.width = this.image_region.right - this.image_region.left; + this.image_region.height = this.image_region.bottom - this.image_region.top; + + this.handle_region = YAHOO.util.Dom.getRegion(handle_id); + this.handle_region.width = this.handle_region.right - this.handle_region.left; + this.handle_region.height = this.handle_region.bottom - this.handle_region.top; +} + +CropHandle.prototype = new YAHOO.util.DragDrop(); + +CropHandle.prototype.setFrame = function(frame) { + this.frame = frame; +} + +CropHandle.prototype.onMouseDown = function(e) { + var panel = this.getEl(); + this.startWidth = panel.offsetWidth; + this.startHeight = panel.offsetHeight; + this.startPos = [YAHOO.util.Event.getPageX(e), YAHOO.util.Event.getPageY(e)]; +} + +CropHandle.prototype.onDrag = function(e) { + var dragTo = [YAHOO.util.Event.getPageX(e), YAHOO.util.Event.getPageY(e)]; + var deltaX = dragTo[0] - this.startPos[0]; + var deltaY = dragTo[1] - this.startPos[1]; + + dims = this.frame.getDimensions(); + this.frame.reshapeTo(dims.top, + dims.left + this.startWidth + deltaX, + dims.top + this.startHeight + deltaY, + dims.left); + this.frame.constrainLocation(true); + this.frame.constrainShape(Math.abs(deltaX) > Math.abs(deltaY)); +}; + +/** + * ================================================================================ + * CropFrame + * ================================================================================ + */ + +CropFrame = function(image_id, frame_id) { + this.base = YAHOO.util.DD; + this.base(frame_id); + + // Don't make the browser scroll if we drag off of the image to avoid flicker. + this.scroll = false; + + this.frame_id = frame_id; + this.aspectRatio = []; + + border = 0; + raw_border = YAHOO.util.Dom.getStyle(frame_id, "border"); + if (raw_border) { + if (result = raw_border.match(/(\d+)/)) { + border = result[0]; + } + } + this.border = border; + YAHOO.util.Event.addListener(this.frame_id, "dblclick", this.maximize, this); +} + +CropFrame.prototype = new YAHOO.util.DD(); + +CropFrame.prototype.reshapeTo = function(top, right, bottom, left) { + YAHOO.util.Dom.setStyle(this.frame_id, "width", (right - left) + "px"); + YAHOO.util.Dom.setStyle(this.frame_id, "height", (bottom - top) + "px"); + YAHOO.util.Dom.setXY(this.frame_id, [left, top]); +} + +CropFrame.prototype.maximize = function(e, frame) { + var image = frame.image.getDimensions(); + var orig_dims = frame.getDimensions(); + + // Start by taking up the whole frame + frame.reshapeTo(image.top, image.right, image.bottom, image.left); + frame.constrainShape(true); + + // Try to stay close to the original location + var new_dims = frame.getDimensions(); + frame.reshapeTo(orig_dims.top, orig_dims.left + new_dims.width, + orig_dims.top + new_dims.height, orig_dims.left); + frame.constrainLocation(false); +} + +CropFrame.prototype.constrainLocation = function(adjustSize) { + var dims = this.getDimensions(); + var image = this.image.getDimensions(); + + if (dims.top < image.top) { + var delta = image.top - dims.top; + dims.top = dims.top + delta; + dims.bottom = dims.bottom + delta; + } + + if (dims.right > image.right) { + if (adjustSize) { + dims.right = image.right; + } else { + var delta = image.right - dims.right; + dims.left = dims.left + delta; + dims.right = dims.right + delta; + } + } + + if (dims.bottom > image.bottom) { + if (adjustSize) { + dims.bottom = image.bottom; + } else { + var delta = image.bottom - dims.bottom; + dims.top = dims.top + delta; + dims.bottom = dims.bottom + delta; + } + } + + if (dims.left < image.left) { + var delta = image.left - dims.left; + dims.left = dims.left + delta; + dims.right = dims.right + delta; + } + + this.reshapeTo(dims.top, dims.right, dims.bottom, dims.left); +} + +CropFrame.prototype.constrainShape = function(adjustHeight) { + var dims = this.getDimensions(); + var image = this.image.getDimensions(); + + var currentAspect = dims.width / top; + if (currentAspect != this.aspectRatio) { + if (adjustHeight) { + dims.bottom = dims.top + dims.width / this.aspectRatio; + } else { + dims.right = dims.left + dims.height * this.aspectRatio; + } + } + + if (dims.bottom + this.border * 2 > image.bottom) { + dims.bottom = image.bottom - this.border * 2; + dims.height = dims.bottom - dims.top; + dims.right = dims.left + dims.height * this.aspectRatio; + } + + if (dims.right + this.border * 2 > image.right) { + dims.right = image.right - this.border * 2; + dims.width = dims.right - dims.left; + dims.bottom = dims.top + dims.width / this.aspectRatio; + } + + this.reshapeTo(dims.top, dims.right, dims.bottom, dims.left); +} + +CropFrame.prototype.setAspectRatio = function(width, height) { + this.aspectWidth = width; + this.aspectHeight = height; + + this.aspectRatio = width / height; + this.constrainShape(true); + this.constrainLocation(true); + this.constrainShape(false); + this.constrainLocation(false); +} + +CropFrame.prototype.setOrientation = function(orientation) { + if (orientation != this.orientation) { + if (this.orientation) { + var dims = this.getDimensions(); + this.reshapeTo(dims.top, dims.left + dims.height, dims.top + dims.width, dims.left); + this.setAspectRatio(this.aspectHeight, this.aspectWidth); + } + this.orientation = orientation; + } +} + +CropFrame.prototype.setImage = function(image) { + this.image = image; +} + +CropFrame.prototype.getDimensions = function() { + var dims = YAHOO.util.Dom.getRegion(this.frame_id); + + /* Account for the border */ + dims.right = dims.right - this.border * 2; + dims.bottom = dims.bottom - this.border * 2; + + dims.width = dims.right - dims.left; + dims.height = dims.bottom - dims.top; + return dims; +} + +CropFrame.prototype.onDrag = function(e) { + this.constrainLocation(false); +} + +/** + * ================================================================================ + * CropImage + * ================================================================================ + */ + +CropImage = function(canvas_id, image_id, image_url, image_width, image_height) { + this.image_id = image_id; + + var canvas_dims = YAHOO.util.Dom.getRegion(canvas_id); + canvas_dims.width = canvas_dims.right - canvas_dims.left; + canvas_dims.height = canvas_dims.bottom - canvas_dims.top; + + var aspect = image_width / image_height; + var frame = {'width': image_width, 'height': image_height}; + if (image_width > image_height) { + if (image_width > canvas_dims.width) { + frame.width = canvas_dims.width; + frame.height = canvas_dims.width / aspect; + } + } else { + if (image_height > canvas_dims.height) { + frame.height = canvas_dims.height; + frame.width = canvas_dims.height * aspect; + } + } + frame.left = Math.round(canvas_dims.left + ((canvas_dims.width - frame.width) / 2)); + frame.top = Math.round(canvas_dims.top + ((canvas_dims.height - frame.height) / 2)); + + this.scale = frame.width / image_width; + + var image_el = document.getElementById(image_id); + YAHOO.util.Dom.setXY(image_id, [frame.left, frame.top]); + YAHOO.util.Dom.setStyle(image_id, "width", frame.width + "px"); + YAHOO.util.Dom.setStyle(image_id, "height", frame.height + "px"); + image_el.src = image_url; +} + +CropImage.prototype.getDimensions = function() { + var dims = YAHOO.util.Dom.getRegion(this.image_id); + dims.width = dims.right - dims.left; + dims.height = dims.bottom - dims.top; + return dims; +} + +CropImage.prototype.getScale = function() { + return this.scale; +} + +/** + * ================================================================================ + * Cropper + * ================================================================================ + */ + +Cropper = function(image, frame, handle) { + this.image = image; + this.frame = frame; + this.handle = handle; + + this.frame.setImage(image); + this.handle.setFrame(this.frame); + this.frame.addInvalidHandleId(this.handle.handleElId); +} + +Cropper.prototype.getFrameDimensions = function() { + var frame_dims = this.frame.getDimensions(); + var image_dims = this.image.getDimensions(); + var scale = this.image.getScale(); + + dims = { + 'top': Math.round((frame_dims.top - image_dims.top) / scale), + 'right': Math.round((frame_dims.right - image_dims.left) / scale), + 'bottom': Math.round((frame_dims.bottom - image_dims.top) / scale), + 'left': Math.round((frame_dims.left - image_dims.left) / scale), + 'width': Math.round(frame_dims.width / scale), + 'height': Math.round(frame_dims.height / scale) + }; + + return dims; +} + +Cropper.prototype.resetFrame = function() { + this.setFrameDimensions(this.origDimensions[0], this.origDimensions[1], + this.origDimensions[2], this.origDimensions[3]); +} + +Cropper.prototype.setFrameDimensions = function(top, right, bottom, left) { + this.origDimensions = [top, right, bottom, left]; + + var scale = this.image.getScale(); + var image_dims = this.image.getDimensions(); + var top = image_dims.top + top * scale; + var right = image_dims.left + right * scale; + var bottom = image_dims.top + bottom * scale; + var left = image_dims.left + left * scale; + this.frame.reshapeTo(top, right, bottom, left); + this.frame.setAspectRatio(right - left, bottom - top); +} + +Cropper.prototype.setAspectRatio = function(width, height) { + this.frame.setAspectRatio(width, height); +} + +Cropper.prototype.setOrientation = function(orientation) { + this.frame.setOrientation(orientation); +} diff --git a/Source/gallery2/lib/pear/HTMLSax3.php b/Source/gallery2/lib/pear/HTMLSax3.php new file mode 100644 index 0000000..1af5dbf --- /dev/null +++ b/Source/gallery2/lib/pear/HTMLSax3.php @@ -0,0 +1,1338 @@ + Original port from Python | +// | Authors: Harry Fuecks Port to PEAR + more | +// | Authors: Many @ Sitepointforums Advanced PHP Forums | +// +----------------------------------------------------------------------+ +// +// PEAR Id: HTMLSax3.php,v 1.1 2004/06/02 14:09:19 hfuecks +// G2 $Id: HTMLSax3.php 15342 2006-12-01 21:14:46Z andy_st $ +// +/** +* Main parser components +* @package XML_HTMLSax3 +* @version Id: HTMLSax3.php,v 1.1 2004/06/02 14:09:19 hfuecks +*/ +/** +* Required classes +*/ +//if (!defined('XML_HTMLSAX3')) { +// define('XML_HTMLSAX3', 'XML/'); +//} +//require_once(XML_HTMLSAX3 . 'HTMLSax3/States.php'); +//require_once(XML_HTMLSAX3 . 'HTMLSax3/Decorators.php'); + +/** +* Base State Parser +* @package XML_HTMLSax3 +* @access protected +* @abstract +*/ +class XML_HTMLSax3_StateParser { + /** + * Instance of user front end class to be passed to callbacks + * @var XML_HTMLSax3 + * @access private + */ + var $htmlsax; + /** + * User defined object for handling elements + * @var object + * @access private + */ + var $handler_object_element; + /** + * User defined open tag handler method + * @var string + * @access private + */ + var $handler_method_opening; + /** + * User defined close tag handler method + * @var string + * @access private + */ + var $handler_method_closing; + /** + * User defined object for handling data in elements + * @var object + * @access private + */ + var $handler_object_data; + /** + * User defined data handler method + * @var string + * @access private + */ + var $handler_method_data; + /** + * User defined object for handling processing instructions + * @var object + * @access private + */ + var $handler_object_pi; + /** + * User defined processing instruction handler method + * @var string + * @access private + */ + var $handler_method_pi; + /** + * User defined object for handling JSP/ASP tags + * @var object + * @access private + */ + var $handler_object_jasp; + /** + * User defined JSP/ASP handler method + * @var string + * @access private + */ + var $handler_method_jasp; + /** + * User defined object for handling XML escapes + * @var object + * @access private + */ + var $handler_object_escape; + /** + * User defined XML escape handler method + * @var string + * @access private + */ + var $handler_method_escape; + /** + * User defined handler object or NullHandler + * @var object + * @access private + */ + var $handler_default; + /** + * Parser options determining parsing behavior + * @var array + * @access private + */ + var $parser_options = array(); + /** + * XML document being parsed + * @var string + * @access private + */ + var $rawtext; + /** + * Position in XML document relative to start (0) + * @var int + * @access private + */ + var $position; + /** + * Length of the XML document in characters + * @var int + * @access private + */ + var $length; + /** + * Array of state objects + * @var array + * @access private + */ + var $State = array(); + + /** + * Constructs XML_HTMLSax3_StateParser setting up states + * @var XML_HTMLSax3 instance of user front end class + * @access protected + */ + function XML_HTMLSax3_StateParser (& $htmlsax) { + $this->htmlsax = & $htmlsax; + $this->State[XML_HTMLSAX3_STATE_START] =& new XML_HTMLSax3_StartingState(); + + $this->State[XML_HTMLSAX3_STATE_CLOSING_TAG] =& new XML_HTMLSax3_ClosingTagState(); + $this->State[XML_HTMLSAX3_STATE_TAG] =& new XML_HTMLSax3_TagState(); + $this->State[XML_HTMLSAX3_STATE_OPENING_TAG] =& new XML_HTMLSax3_OpeningTagState(); + + $this->State[XML_HTMLSAX3_STATE_PI] =& new XML_HTMLSax3_PiState(); + $this->State[XML_HTMLSAX3_STATE_JASP] =& new XML_HTMLSax3_JaspState(); + $this->State[XML_HTMLSAX3_STATE_ESCAPE] =& new XML_HTMLSax3_EscapeState(); + } + + /** + * Moves the position back one character + * @access protected + * @return void + */ + function unscanCharacter() { + $this->position -= 1; + } + + /** + * Moves the position forward one character + * @access protected + * @return void + */ + function ignoreCharacter() { + $this->position += 1; + } + + /** + * Returns the next character from the XML document or void if at end + * @access protected + * @return mixed + */ + function scanCharacter() { + if ($this->position < $this->length) { + return $this->rawtext{$this->position++}; + } + } + + /** + * Returns a string from the current position to the next occurance + * of the supplied string + * @param string string to search until + * @access protected + * @return string + */ + function scanUntilString($string) { + $start = $this->position; + $this->position = strpos($this->rawtext, $string, $start); + if ($this->position === FALSE) { + $this->position = $this->length; + } + return substr($this->rawtext, $start, $this->position - $start); + } + + /** + * Returns a string from the current position until the first instance of + * one of the characters in the supplied string argument + * @param string string to search until + * @access protected + * @return string + * @abstract + */ + function scanUntilCharacters($string) {} + + /** + * Moves the position forward past any whitespace characters + * @access protected + * @return void + * @abstract + */ + function ignoreWhitespace() {} + + /** + * Begins the parsing operation, setting up any decorators, depending on + * parse options invoking _parse() to execute parsing + * @param string XML document to parse + * @access protected + * @return void + */ + function parse($data) { + if ($this->parser_options['XML_OPTION_TRIM_DATA_NODES']==1) { + $decorator =& new XML_HTMLSax3_Trim( + $this->handler_object_data, + $this->handler_method_data); + $this->handler_object_data =& $decorator; + $this->handler_method_data = 'trimData'; + } + if ($this->parser_options['XML_OPTION_CASE_FOLDING']==1) { + $open_decor =& new XML_HTMLSax3_CaseFolding( + $this->handler_object_element, + $this->handler_method_opening, + $this->handler_method_closing); + $this->handler_object_element =& $open_decor; + $this->handler_method_opening ='foldOpen'; + $this->handler_method_closing ='foldClose'; + } + if ($this->parser_options['XML_OPTION_LINEFEED_BREAK']==1) { + $decorator =& new XML_HTMLSax3_Linefeed( + $this->handler_object_data, + $this->handler_method_data); + $this->handler_object_data =& $decorator; + $this->handler_method_data = 'breakData'; + } + if ($this->parser_options['XML_OPTION_TAB_BREAK']==1) { + $decorator =& new XML_HTMLSax3_Tab( + $this->handler_object_data, + $this->handler_method_data); + $this->handler_object_data =& $decorator; + $this->handler_method_data = 'breakData'; + } + if ($this->parser_options['XML_OPTION_ENTITIES_UNPARSED']==1) { + $decorator =& new XML_HTMLSax3_Entities_Unparsed( + $this->handler_object_data, + $this->handler_method_data); + $this->handler_object_data =& $decorator; + $this->handler_method_data = 'breakData'; + } + if ($this->parser_options['XML_OPTION_ENTITIES_PARSED']==1) { + $decorator =& new XML_HTMLSax3_Entities_Parsed( + $this->handler_object_data, + $this->handler_method_data); + $this->handler_object_data =& $decorator; + $this->handler_method_data = 'breakData'; + } + // Note switched on by default + if ($this->parser_options['XML_OPTION_STRIP_ESCAPES']==1) { + $decorator =& new XML_HTMLSax3_Escape_Stripper( + $this->handler_object_escape, + $this->handler_method_escape); + $this->handler_object_escape =& $decorator; + $this->handler_method_escape = 'strip'; + } + $this->rawtext = $data; + $this->length = strlen($data); + $this->position = 0; + $this->_parse(); + } + + /** + * Performs the parsing itself, delegating calls to a specific parser + * state + * @param constant state object to parse with + * @access protected + * @return void + */ + function _parse($state = XML_HTMLSAX3_STATE_START) { + do { + $state = $this->State[$state]->parse($this); + } while ($state != XML_HTMLSAX3_STATE_STOP && + $this->position < $this->length); + } +} + +/** +* Parser for PHP Versions below 4.3.0. Uses a slower parsing mechanism than +* the equivalent PHP 4.3.0+ subclass of StateParser +* @package XML_HTMLSax3 +* @access protected +* @see XML_HTMLSax3_StateParser_Gtet430 +*/ +class XML_HTMLSax3_StateParser_Lt430 extends XML_HTMLSax3_StateParser { + /** + * Constructs XML_HTMLSax3_StateParser_Lt430 defining available + * parser options + * @var XML_HTMLSax3 instance of user front end class + * @access protected + */ + function XML_HTMLSax3_StateParser_Lt430(& $htmlsax) { + parent::XML_HTMLSax3_StateParser($htmlsax); + $this->parser_options['XML_OPTION_TRIM_DATA_NODES'] = 0; + $this->parser_options['XML_OPTION_CASE_FOLDING'] = 0; + $this->parser_options['XML_OPTION_LINEFEED_BREAK'] = 0; + $this->parser_options['XML_OPTION_TAB_BREAK'] = 0; + $this->parser_options['XML_OPTION_ENTITIES_PARSED'] = 0; + $this->parser_options['XML_OPTION_ENTITIES_UNPARSED'] = 0; + $this->parser_options['XML_OPTION_STRIP_ESCAPES'] = 0; + } + + /** + * Returns a string from the current position until the first instance of + * one of the characters in the supplied string argument + * @param string string to search until + * @access protected + * @return string + */ + function scanUntilCharacters($string) { + $startpos = $this->position; + while ($this->position < $this->length && strpos($string, $this->rawtext{$this->position}) === FALSE) { + $this->position++; + } + return substr($this->rawtext, $startpos, $this->position - $startpos); + } + + /** + * Moves the position forward past any whitespace characters + * @access protected + * @return void + */ + function ignoreWhitespace() { + while ($this->position < $this->length && + strpos(" \n\r\t", $this->rawtext{$this->position}) !== FALSE) { + $this->position++; + } + } + + /** + * Begins the parsing operation, setting up the unparsed XML entities + * decorator if necessary then delegating further work to parent + * @param string XML document to parse + * @access protected + * @return void + */ + function parse($data) { + parent::parse($data); + } +} + +/** +* Parser for PHP Versions equal to or greater than 4.3.0. Uses a faster +* parsing mechanism than the equivalent PHP < 4.3.0 subclass of StateParser +* @package XML_HTMLSax3 +* @access protected +* @see XML_HTMLSax3_StateParser_Lt430 +*/ +class XML_HTMLSax3_StateParser_Gtet430 extends XML_HTMLSax3_StateParser { + /** + * Constructs XML_HTMLSax3_StateParser_Gtet430 defining available + * parser options + * @var XML_HTMLSax3 instance of user front end class + * @access protected + */ + function XML_HTMLSax3_StateParser_Gtet430(& $htmlsax) { + parent::XML_HTMLSax3_StateParser($htmlsax); + $this->parser_options['XML_OPTION_TRIM_DATA_NODES'] = 0; + $this->parser_options['XML_OPTION_CASE_FOLDING'] = 0; + $this->parser_options['XML_OPTION_LINEFEED_BREAK'] = 0; + $this->parser_options['XML_OPTION_TAB_BREAK'] = 0; + $this->parser_options['XML_OPTION_ENTITIES_PARSED'] = 0; + $this->parser_options['XML_OPTION_ENTITIES_UNPARSED'] = 0; + $this->parser_options['XML_OPTION_STRIP_ESCAPES'] = 0; + } + /** + * Returns a string from the current position until the first instance of + * one of the characters in the supplied string argument. + * @param string string to search until + * @access protected + * @return string + */ + function scanUntilCharacters($string) { + $startpos = $this->position; + $length = strcspn($this->rawtext, $string, $startpos); + $this->position += $length; + return substr($this->rawtext, $startpos, $length); + } + + /** + * Moves the position forward past any whitespace characters + * @access protected + * @return void + */ + function ignoreWhitespace() { + $this->position += strspn($this->rawtext, " \n\r\t", $this->position); + } + + /** + * Begins the parsing operation, setting up the parsed and unparsed + * XML entity decorators if necessary then delegating further work + * to parent + * @param string XML document to parse + * @access protected + * @return void + */ + function parse($data) { + parent::parse($data); + } +} + +/** +* Default NullHandler for methods which were not set by user +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_NullHandler { + /** + * Generic handler method which does nothing + * @access protected + * @return void + */ + function DoNothing() { + } +} + +/** +* User interface class. All user calls should only be made to this class +* @package XML_HTMLSax3 +* @access public +*/ +class XML_HTMLSax3 { + /** + * Instance of concrete subclass of XML_HTMLSax3_StateParser + * @var XML_HTMLSax3_StateParser + * @access private + */ + var $state_parser; + + /** + * Constructs XML_HTMLSax3 selecting concrete StateParser subclass + * depending on PHP version being used as well as setting the default + * NullHandler for all callbacks
+ * Example: + *
+    * $myHandler = & new MyHandler();
+    * $parser = new XML_HTMLSax3();
+    * $parser->set_object($myHandler);
+    * $parser->set_option('XML_OPTION_CASE_FOLDING');
+    * $parser->set_element_handler('myOpenHandler','myCloseHandler');
+    * $parser->set_data_handler('myDataHandler');
+    * $parser->parser($xml);
+    * 
+ * @access public + */ + function XML_HTMLSax3() { + if (version_compare(phpversion(), '4.3', 'ge')) { + $this->state_parser =& new XML_HTMLSax3_StateParser_Gtet430($this); + } else { + $this->state_parser =& new XML_HTMLSax3_StateParser_Lt430($this); + } + $nullhandler =& new XML_HTMLSax3_NullHandler(); + $this->set_object($nullhandler); + $this->set_element_handler('DoNothing', 'DoNothing'); + $this->set_data_handler('DoNothing'); + $this->set_pi_handler('DoNothing'); + $this->set_jasp_handler('DoNothing'); + $this->set_escape_handler('DoNothing'); + } + + /** + * Sets the user defined handler object. Returns a PEAR Error + * if supplied argument is not an object. + * @param object handler object containing SAX callback methods + * @access public + * @return mixed + */ + function set_object(&$object) { + if ( is_object($object) ) { + $this->state_parser->handler_default =& $object; + return true; + } else { + //require_once('PEAR.php'); + //PEAR::raiseError('XML_HTMLSax3::set_object requires '. + // 'an object instance'); + } + } + + /** + * Sets a parser option. By default all options are switched off. + * Returns a PEAR Error if option is invalid
+ * Available options: + *
    + *
  • XML_OPTION_TRIM_DATA_NODES: trim whitespace off the beginning + * and end of data passed to the data handler
  • + *
  • XML_OPTION_LINEFEED_BREAK: linefeeds result in additional data + * handler calls
  • + *
  • XML_OPTION_TAB_BREAK: tabs result in additional data handler + * calls
  • + *
  • XML_OPTION_ENTITIES_UNPARSED: XML entities are returned as + * seperate data handler calls in unparsed form
  • + *
  • XML_OPTION_ENTITIES_PARSED: (PHP 4.3.0+ only) XML entities are + * returned as seperate data handler calls and are parsed with + * PHP's html_entity_decode() function
  • + *
  • XML_OPTION_STRIP_ESCAPES: strips out the -- -- comment markers + * or CDATA markup inside an XML escape, if found.
  • + *
+ * To get HTMLSax to behave in the same way as the native PHP SAX parser, + * using it's default state, you need to switch on XML_OPTION_LINEFEED_BREAK, + * XML_OPTION_ENTITIES_PARSED and XML_OPTION_CASE_FOLDING + * @param string name of parser option + * @param int (optional) 1 to switch on, 0 for off + * @access public + * @return boolean + */ + function set_option($name, $value=1) { + if ( array_key_exists($name,$this->state_parser->parser_options) ) { + $this->state_parser->parser_options[$name] = $value; + return true; + } else { + //require_once('PEAR.php'); + //PEAR::raiseError('XML_HTMLSax3::set_option('.$name.') illegal'); + } + } + + /** + * Sets the data handler method which deals with the contents of XML + * elements.
+ * The handler method must accept two arguments, the first being an + * instance of XML_HTMLSax3 and the second being the contents of an + * XML element e.g. + *
+    * function myDataHander(& $parser,$data){}
+    * 
+ * @param string name of method + * @access public + * @return void + * @see set_object + */ + function set_data_handler($data_method) { + $this->state_parser->handler_object_data =& $this->state_parser->handler_default; + $this->state_parser->handler_method_data = $data_method; + } + + /** + * Sets the open and close tag handlers + *
The open handler method must accept three arguments; the parser, + * the tag name and an array of attributes e.g. + *
+    * function myOpenHander(& $parser,$tagname,$attrs=array()){}
+    * 
+ * The close handler method must accept two arguments; the parser and + * the tag name e.g. + *
+    * function myCloseHander(& $parser,$tagname){}
+    * 
+ * @param string name of open method + * @param string name of close method + * @access public + * @return void + * @see set_object + */ + function set_element_handler($opening_method, $closing_method) { + $this->state_parser->handler_object_element =& $this->state_parser->handler_default; + $this->state_parser->handler_method_opening = $opening_method; + $this->state_parser->handler_method_closing = $closing_method; + } + + /** + * Sets the processing instruction handler method e.g. for PHP open + * and close tags
+ * The handler method must accept three arguments; the parser, the + * PI target and data inside the PI + *
+    * function myPIHander(& $parser,$target, $data){}
+    * 
+ * @param string name of method + * @access public + * @return void + * @see set_object + */ + function set_pi_handler($pi_method) { + $this->state_parser->handler_object_pi =& $this->state_parser->handler_default; + $this->state_parser->handler_method_pi = $pi_method; + } + + /** + * Sets the XML escape handler method e.g. for comments and doctype + * declarations
+ * The handler method must accept two arguments; the parser and the + * contents of the escaped section + *
+    * function myEscapeHander(& $parser, $data){}
+    * 
+ * @param string name of method + * @access public + * @return void + * @see set_object + */ + function set_escape_handler($escape_method) { + $this->state_parser->handler_object_escape =& $this->state_parser->handler_default; + $this->state_parser->handler_method_escape = $escape_method; + } + + /** + * Sets the JSP/ASP markup handler
+ * The handler method must accept two arguments; the parser and + * body of the JASP tag + *
+    * function myJaspHander(& $parser, $data){}
+    * 
+ * @param string name of method + * @access public + * @return void + * @see set_object + */ + function set_jasp_handler ($jasp_method) { + $this->state_parser->handler_object_jasp =& $this->state_parser->handler_default; + $this->state_parser->handler_method_jasp = $jasp_method; + } + + /** + * Returns the current string position of the "cursor" inside the XML + * document + *
Intended for use from within a user defined handler called + * via the $parser reference e.g. + *
+    * function myDataHandler(& $parser,$data) {
+    *     echo( 'Current position: '.$parser->get_current_position() );
+    * }
+    * 
+ * @access public + * @return int + * @see get_length + */ + function get_current_position() { + return $this->state_parser->position; + } + + /** + * Returns the string length of the XML document being parsed + * @access public + * @return int + */ + function get_length() { + return $this->state_parser->length; + } + + /** + * Start parsing some XML + * @param string XML document + * @access public + * @return void + */ + function parse($data) { + $this->state_parser->parse($data); + } +} +?> + Original port from Python | +// | Authors: Harry Fuecks Port to PEAR + more | +// | Authors: Many @ Sitepointforums Advanced PHP Forums | +// +----------------------------------------------------------------------+ +// +// PEAR Id: States.php,v 1.2 2004/06/02 14:22:40 hfuecks +// +/** +* Parsing states. +* @package XML_HTMLSax3 +* @version Id: States.php,v 1.2 2004/06/02 14:22:40 hfuecks +*/ +/** +* Define parser states +*/ +define('XML_HTMLSAX3_STATE_STOP', 0); +define('XML_HTMLSAX3_STATE_START', 1); +define('XML_HTMLSAX3_STATE_TAG', 2); +define('XML_HTMLSAX3_STATE_OPENING_TAG', 3); +define('XML_HTMLSAX3_STATE_CLOSING_TAG', 4); +define('XML_HTMLSAX3_STATE_ESCAPE', 6); +define('XML_HTMLSAX3_STATE_JASP', 7); +define('XML_HTMLSAX3_STATE_PI', 8); +/** +* StartingState searches for the start of any XML tag +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_StartingState { + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant XML_HTMLSAX3_STATE_TAG + * @access protected + */ + function parse(&$context) { + $data = $context->scanUntilString('<'); + if ($data != '') { + $context->handler_object_data-> + {$context->handler_method_data}($context->htmlsax, $data); + } + $context->IgnoreCharacter(); + return XML_HTMLSAX3_STATE_TAG; + } +} +/** +* Decides which state to move one from after StartingState +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_TagState { + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant the next state to move into + * @access protected + */ + function parse(&$context) { + switch($context->ScanCharacter()) { + case '/': + return XML_HTMLSAX3_STATE_CLOSING_TAG; + break; + case '?': + return XML_HTMLSAX3_STATE_PI; + break; + case '%': + return XML_HTMLSAX3_STATE_JASP; + break; + case '!': + return XML_HTMLSAX3_STATE_ESCAPE; + break; + default: + $context->unscanCharacter(); + return XML_HTMLSAX3_STATE_OPENING_TAG; + } + } +} +/** +* Dealing with closing XML tags +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_ClosingTagState { + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant XML_HTMLSAX3_STATE_START + * @access protected + */ + function parse(&$context) { + $tag = $context->scanUntilCharacters('/>'); + if ($tag != '') { + $char = $context->scanCharacter(); + if ($char == '/') { + $char = $context->scanCharacter(); + if ($char != '>') { + $context->unscanCharacter(); + } + } + $context->handler_object_element-> + {$context->handler_method_closing}($context->htmlsax, $tag, FALSE); + } + return XML_HTMLSAX3_STATE_START; + } +} +/** +* Dealing with opening XML tags +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_OpeningTagState { + /** + * Handles attributes + * @param string attribute name + * @param string attribute value + * @return void + * @access protected + * @see XML_HTMLSax3_AttributeStartState + */ + function parseAttributes(&$context) { + $Attributes = array(); + + $context->ignoreWhitespace(); + $attributename = $context->scanUntilCharacters("=/> \n\r\t"); + while ($attributename != '') { + $attributevalue = NULL; + $context->ignoreWhitespace(); + $char = $context->scanCharacter(); + if ($char == '=') { + $context->ignoreWhitespace(); + $char = $context->ScanCharacter(); + if ($char == '"') { + $attributevalue= $context->scanUntilString('"'); + $context->IgnoreCharacter(); + } else if ($char == "'") { + $attributevalue = $context->scanUntilString("'"); + $context->IgnoreCharacter(); + } else { + $context->unscanCharacter(); + $attributevalue = + $context->scanUntilCharacters("> \n\r\t"); + } + } else if ($char !== NULL) { + $attributevalue = NULL; + $context->unscanCharacter(); + } + $Attributes[$attributename] = $attributevalue; + + $context->ignoreWhitespace(); + $attributename = $context->scanUntilCharacters("=/> \n\r\t"); + } + return $Attributes; + } + + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant XML_HTMLSAX3_STATE_START + * @access protected + */ + function parse(&$context) { + $tag = $context->scanUntilCharacters("/> \n\r\t"); + if ($tag != '') { + $this->attrs = array(); + $Attributes = $this->parseAttributes($context); + $char = $context->scanCharacter(); + if ($char == '/') { + $char = $context->scanCharacter(); + if ($char != '>') { + $context->unscanCharacter(); + } + $context->handler_object_element-> + {$context->handler_method_opening}($context->htmlsax, $tag, + $Attributes, TRUE); + $context->handler_object_element-> + {$context->handler_method_closing}($context->htmlsax, $tag, + TRUE); + } else { + $context->handler_object_element-> + {$context->handler_method_opening}($context->htmlsax, $tag, + $Attributes, FALSE); + } + } + return XML_HTMLSAX3_STATE_START; + } +} + +/** +* Deals with XML escapes handling comments and CDATA correctly +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_EscapeState { + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant XML_HTMLSAX3_STATE_START + * @access protected + */ + function parse(&$context) { + $char = $context->ScanCharacter(); + if ($char == '-') { + $char = $context->ScanCharacter(); + if ($char == '-') { + $context->unscanCharacter(); + $context->unscanCharacter(); + $text = $context->scanUntilString('-->'); + $text .= $context->scanCharacter(); + $text .= $context->scanCharacter(); + } else { + $context->unscanCharacter(); + $text = $context->scanUntilString('>'); + } + } else if ( $char == '[') { + $context->unscanCharacter(); + $text = $context->scanUntilString(']>'); + $text.= $context->scanCharacter(); + } else { + $context->unscanCharacter(); + $text = $context->scanUntilString('>'); + } + + $context->IgnoreCharacter(); + if ($text != '') { + $context->handler_object_escape-> + {$context->handler_method_escape}($context->htmlsax, $text); + } + return XML_HTMLSAX3_STATE_START; + } +} +/** +* Deals with JASP/ASP markup +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_JaspState { + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant XML_HTMLSAX3_STATE_START + * @access protected + */ + function parse(&$context) { + $text = $context->scanUntilString('%>'); + if ($text != '') { + $context->handler_object_jasp-> + {$context->handler_method_jasp}($context->htmlsax, $text); + } + $context->IgnoreCharacter(); + $context->IgnoreCharacter(); + return XML_HTMLSAX3_STATE_START; + } +} +/** +* Deals with XML processing instructions +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_PiState { + /** + * @param XML_HTMLSax3_StateParser subclass + * @return constant XML_HTMLSAX3_STATE_START + * @access protected + */ + function parse(&$context) { + $target = $context->scanUntilCharacters(" \n\r\t"); + $data = $context->scanUntilString('?>'); + if ($data != '') { + $context->handler_object_pi-> + {$context->handler_method_pi}($context->htmlsax, $target, $data); + } + $context->IgnoreCharacter(); + $context->IgnoreCharacter(); + return XML_HTMLSAX3_STATE_START; + } +} +?> + Original port from Python | +// | Authors: Harry Fuecks Port to PEAR + more | +// | Authors: Many @ Sitepointforums Advanced PHP Forums | +// +----------------------------------------------------------------------+ +// +// PEAR Id: Decorators.php,v 1.1 2004/06/02 14:09:19 hfuecks +// +/** +* Decorators for dealing with parser options +* @package XML_HTMLSax3 +* @version Id: Decorators.php,v 1.1 2004/06/02 14:09:19 hfuecks +* @see XML_HTMLSax3::set_option +*/ +/** +* Trims the contents of element data from whitespace at start and end +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_Trim { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original handler method + * @var string + * @access private + */ + var $orig_method; + /** + * Constructs XML_HTMLSax3_Trim + * @param object handler object being decorated + * @param string original handler method + * @access protected + */ + function XML_HTMLSax3_Trim(&$orig_obj, $orig_method) { + $this->orig_obj =& $orig_obj; + $this->orig_method = $orig_method; + } + /** + * Trims the data + * @param XML_HTMLSax3 + * @param string element data + * @access protected + */ + function trimData(&$parser, $data) { + $data = trim($data); + if ($data != '') { + $this->orig_obj->{$this->orig_method}($parser, $data); + } + } +} +/** +* Coverts tag names to upper case +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_CaseFolding { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original open handler method + * @var string + * @access private + */ + var $orig_open_method; + /** + * Original close handler method + * @var string + * @access private + */ + var $orig_close_method; + /** + * Constructs XML_HTMLSax3_CaseFolding + * @param object handler object being decorated + * @param string original open handler method + * @param string original close handler method + * @access protected + */ + function XML_HTMLSax3_CaseFolding(&$orig_obj, $orig_open_method, $orig_close_method) { + $this->orig_obj =& $orig_obj; + $this->orig_open_method = $orig_open_method; + $this->orig_close_method = $orig_close_method; + } + /** + * Folds up open tag callbacks + * @param XML_HTMLSax3 + * @param string tag name + * @param array tag attributes + * @access protected + */ + function foldOpen(&$parser, $tag, $attrs=array(), $empty = FALSE) { + $this->orig_obj->{$this->orig_open_method}($parser, strtoupper($tag), $attrs, $empty); + } + /** + * Folds up close tag callbacks + * @param XML_HTMLSax3 + * @param string tag name + * @access protected + */ + function foldClose(&$parser, $tag, $empty = FALSE) { + $this->orig_obj->{$this->orig_close_method}($parser, strtoupper($tag), $empty); + } +} +/** +* Breaks up data by linefeed characters, resulting in additional +* calls to the data handler +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_Linefeed { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original handler method + * @var string + * @access private + */ + var $orig_method; + /** + * Constructs XML_HTMLSax3_LineFeed + * @param object handler object being decorated + * @param string original handler method + * @access protected + */ + function XML_HTMLSax3_LineFeed(&$orig_obj, $orig_method) { + $this->orig_obj =& $orig_obj; + $this->orig_method = $orig_method; + } + /** + * Breaks the data up by linefeeds + * @param XML_HTMLSax3 + * @param string element data + * @access protected + */ + function breakData(&$parser, $data) { + $data = explode("\n",$data); + foreach ( $data as $chunk ) { + $this->orig_obj->{$this->orig_method}($parser, $chunk); + } + } +} +/** +* Breaks up data by tab characters, resulting in additional +* calls to the data handler +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_Tab { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original handler method + * @var string + * @access private + */ + var $orig_method; + /** + * Constructs XML_HTMLSax3_Tab + * @param object handler object being decorated + * @param string original handler method + * @access protected + */ + function XML_HTMLSax3_Tab(&$orig_obj, $orig_method) { + $this->orig_obj =& $orig_obj; + $this->orig_method = $orig_method; + } + /** + * Breaks the data up by linefeeds + * @param XML_HTMLSax3 + * @param string element data + * @access protected + */ + function breakData(&$parser, $data) { + $data = explode("\t",$data); + foreach ( $data as $chunk ) { + $this->orig_obj->{$this->orig_method}($this, $chunk); + } + } +} +/** +* Breaks up data by XML entities and parses them with html_entity_decode(), +* resulting in additional calls to the data handler
+* Requires PHP 4.3.0+ +* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_Entities_Parsed { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original handler method + * @var string + * @access private + */ + var $orig_method; + /** + * Constructs XML_HTMLSax3_Entities_Parsed + * @param object handler object being decorated + * @param string original handler method + * @access protected + */ + function XML_HTMLSax3_Entities_Parsed(&$orig_obj, $orig_method) { + $this->orig_obj =& $orig_obj; + $this->orig_method = $orig_method; + } + /** + * Breaks the data up by XML entities + * @param XML_HTMLSax3 + * @param string element data + * @access protected + */ + function breakData(&$parser, $data) { + $data = preg_split('/(&.+?;)/',$data,-1,PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); + foreach ( $data as $chunk ) { + $chunk = html_entity_decode($chunk,ENT_NOQUOTES); + $this->orig_obj->{$this->orig_method}($this, $chunk); + } + } +} +/** +* Compatibility with older PHP versions +*/ +if (version_compare(phpversion(), '4.3', '<') && !function_exists('html_entity_decode') ) { + function html_entity_decode($str, $style=ENT_NOQUOTES) { + return strtr($str, + array_flip(get_html_translation_table(HTML_ENTITIES,$style))); + } +} +/** +* Breaks up data by XML entities but leaves them unparsed, +* resulting in additional calls to the data handler
+* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_Entities_Unparsed { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original handler method + * @var string + * @access private + */ + var $orig_method; + /** + * Constructs XML_HTMLSax3_Entities_Unparsed + * @param object handler object being decorated + * @param string original handler method + * @access protected + */ + function XML_HTMLSax3_Entities_Unparsed(&$orig_obj, $orig_method) { + $this->orig_obj =& $orig_obj; + $this->orig_method = $orig_method; + } + /** + * Breaks the data up by XML entities + * @param XML_HTMLSax3 + * @param string element data + * @access protected + */ + function breakData(&$parser, $data) { + $data = preg_split('/(&.+?;)/',$data,-1,PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY); + foreach ( $data as $chunk ) { + $this->orig_obj->{$this->orig_method}($this, $chunk); + } + } +} + +/** +* Strips the HTML comment markers or CDATA sections from an escape. +* If XML_OPTIONS_FULL_ESCAPES is on, this decorator is not used.
+* @package XML_HTMLSax3 +* @access protected +*/ +class XML_HTMLSax3_Escape_Stripper { + /** + * Original handler object + * @var object + * @access private + */ + var $orig_obj; + /** + * Original handler method + * @var string + * @access private + */ + var $orig_method; + /** + * Constructs XML_HTMLSax3_Entities_Unparsed + * @param object handler object being decorated + * @param string original handler method + * @access protected + */ + function XML_HTMLSax3_Escape_Stripper(&$orig_obj, $orig_method) { + $this->orig_obj =& $orig_obj; + $this->orig_method = $orig_method; + } + /** + * Breaks the data up by XML entities + * @param XML_HTMLSax3 + * @param string element data + * @access protected + */ + function strip(&$parser, $data) { + // Check for HTML comments first + if ( substr($data,0,2) == '--' ) { + $patterns = array( + '/^\-\-/', // Opening comment: -- + '/\-\-$/', // Closing comment: -- + ); + $data = preg_replace($patterns,'',$data); + + // Check for XML CDATA sections (note: don't do both!) + } else if ( substr($data,0,1) == '[' ) { + $patterns = array( + '/^\[.*CDATA.*\[/s', // Opening CDATA + '/\].*\]$/s', // Closing CDATA + ); + $data = preg_replace($patterns,'',$data); + } + + $this->orig_obj->{$this->orig_method}($this, $data); + } +} +?> diff --git a/Source/gallery2/lib/pear/Safe.php b/Source/gallery2/lib/pear/Safe.php new file mode 100644 index 0000000..d255c6d --- /dev/null +++ b/Source/gallery2/lib/pear/Safe.php @@ -0,0 +1,674 @@ + + * @copyright 2004-2005 Roman Ivanov + * @license http://www.debian.org/misc/bsd.license BSD License (3 Clause) + * @version CVS: $Id: Safe.php 15342 2006-12-01 21:14:46Z andy_st $ + * @link http://pear.php.net/package/HTML_Safe + */ + + +/** + * This package requires HTMLSax3 package + * @G2 - skip if already defined elsewhere (when embedded) + */ +if (!class_exists('XML_HTMLSax3')) { +require_once(dirname(__FILE__) . '/HTMLSax3.php'); +} +if (class_exists('HTML_Safe')) { return; } /* @G2 - done if defined elsewhere (when embedded) */ + + +/** + * + * HTML_Safe Parser + * + * This parser strips down all potentially dangerous content within HTML: + *
    + *
  • opening tag without its closing tag
  • + *
  • closing tag without its opening tag
  • + *
  • any of these tags: "base", "basefont", "head", "html", "body", "applet", + * "object", "iframe", "frame", "frameset", "script", "layer", "ilayer", "embed", + * "bgsound", "link", "meta", "style", "title", "blink", "xml" etc.
  • + *
  • any of these attributes: on*, data*, dynsrc
  • + *
  • javascript:/vbscript:/about: etc. protocols
  • + *
  • expression/behavior etc. in styles
  • + *
  • any other active content
  • + *
+ * It also tries to convert code to XHTML valid, but htmltidy is far better + * solution for this task. + * + * Example: + *
+ * $parser =& new HTML_Safe();
+ * $result = $parser->parse($doc);
+ * 
+ * + * @category HTML + * @package HTML_Safe + * @author Roman Ivanov + * @copyright 1997-2005 Roman Ivanov + * @license http://www.debian.org/misc/bsd.license BSD License (3 Clause) + * @version Release: @package_version@ + * @link http://pear.php.net/package/HTML_Safe + */ +class HTML_Safe +{ + /** + * Storage for resulting HTML output + * + * @var string + * @access private + */ + var $_xhtml = ''; + + /** + * Array of counters for each tag + * + * @var array + * @access private + */ + var $_counter = array(); + + /** + * Stack of unclosed tags + * + * @var array + * @access private + */ + var $_stack = array(); + + /** + * Array of counters for tags that must be deleted with all content + * + * @var array + * @access private + */ + var $_dcCounter = array(); + + /** + * Stack of unclosed tags that must be deleted with all content + * + * @var array + * @access private + */ + var $_dcStack = array(); + + /** + * Stores level of list (ol/ul) nesting + * + * @var int + * @access private + */ + var $_listScope = 0; + + /** + * Stack of unclosed list tags + * + * @var array + * @access private + */ + var $_liStack = array(); + + /** + * Array of prepared regular expressions for protocols (schemas) matching + * + * @var array + * @access private + */ + var $_protoRegexps = array(); + + /** + * Array of prepared regular expressions for CSS matching + * + * @var array + * @access private + */ + var $_cssRegexps = array(); + + /** + * List of single tags ("") + * + * @var array + * @access public + */ + var $singleTags = array('area', 'br', 'img', 'input', 'hr', 'wbr', ); + + /** + * List of dangerous tags (such tags will be deleted) + * + * @var array + * @access public + */ + var $deleteTags = array( + 'applet', 'base', 'basefont', 'bgsound', 'blink', 'body', + 'embed', 'frame', 'frameset', 'head', 'html', 'ilayer', + 'iframe', 'layer', 'link', 'meta', 'object', 'style', + 'title', 'script', + ); + + /** + * List of dangerous tags (such tags will be deleted, and all content + * inside this tags will be also removed) + * + * @var array + * @access public + */ + var $deleteTagsContent = array('script', 'style', 'title', 'xml', ); + + /** + * Type of protocols filtering ('white' or 'black') + * + * @var string + * @access public + */ + var $protocolFiltering = 'white'; + + /** + * List of "dangerous" protocols (used for blacklist-filtering) + * + * @var array + * @access public + */ + var $blackProtocols = array( + 'about', 'chrome', 'data', 'disk', 'hcp', + 'help', 'javascript', 'livescript', 'lynxcgi', 'lynxexec', + 'ms-help', 'ms-its', 'mhtml', 'mocha', 'opera', + 'res', 'resource', 'shell', 'vbscript', 'view-source', + 'vnd.ms.radio', 'wysiwyg', + ); + + /** + * List of "safe" protocols (used for whitelist-filtering) + * + * @var array + * @access public + */ + var $whiteProtocols = array( + 'ed2k', 'file', 'ftp', 'gopher', 'http', 'https', + 'irc', 'mailto', 'news', 'nntp', 'telnet', 'webcal', + 'xmpp', 'callto', + ); + + /** + * List of attributes that can contain protocols + * + * @var array + * @access public + */ + var $protocolAttributes = array( + 'action', 'background', 'codebase', 'dynsrc', 'href', 'lowsrc', 'src', + ); + + /** + * List of dangerous CSS keywords + * + * Whole style="" attribute will be removed, if parser will find one of + * these keywords + * + * @var array + * @access public + */ + var $cssKeywords = array( + 'absolute', 'behavior', 'behaviour', 'content', 'expression', + 'fixed', 'include-source', 'moz-binding', + ); + + /** + * List of tags that can have no "closing tag" + * + * @var array + * @access public + * @deprecated XHTML does not allow such tags + */ + var $noClose = array(); + + /** + * List of block-level tags that terminates paragraph + * + * Paragraph will be closed when this tags opened + * + * @var array + * @access public + */ + var $closeParagraph = array( + 'address', 'blockquote', 'center', 'dd', 'dir', 'div', + 'dl', 'dt', 'h1', 'h2', 'h3', 'h4', + 'h5', 'h6', 'hr', 'isindex', 'listing', 'marquee', + 'menu', 'multicol', 'ol', 'p', 'plaintext', 'pre', + 'table', 'ul', 'xmp', + ); + + /** + * List of table tags, all table tags outside a table will be removed + * + * @var array + * @access public + */ + var $tableTags = array( + 'caption', 'col', 'colgroup', 'tbody', 'td', 'tfoot', 'th', + 'thead', 'tr', + ); + + /** + * List of list tags + * + * @var array + * @access public + */ + var $listTags = array('dir', 'menu', 'ol', 'ul', 'dl', ); + + /** + * List of dangerous attributes + * + * @var array + * @access public + */ + var $attributes = array('dynsrc', 'id', 'name', ); + + /** + * List of allowed "namespaced" attributes + * + * @var array + * @access public + */ + var $attributesNS = array('xml:lang', ); + + /** + * Constructs class + * + * @access public + */ + function HTML_Safe() + { + //making regular expressions based on Proto & CSS arrays + foreach ($this->blackProtocols as $proto) { + $preg = "/[\s\x01-\x1F]*"; + for ($i=0; $i_protoRegexps[] = $preg; + } + + foreach ($this->cssKeywords as $css) { + $this->_cssRegexps[] = '/' . $css . '/i'; + } + return true; + } + + /** + * Handles the writing of attributes - called from $this->_openHandler() + * + * @param array $attrs array of attributes $name => $value + * @return boolean + * @access private + */ + function _writeAttrs ($attrs) + { + if (is_array($attrs)) { + foreach ($attrs as $name => $value) { + + $name = strtolower($name); + + if (strpos($name, 'on') === 0) { + continue; + } + if (strpos($name, 'data') === 0) { + continue; + } + if (in_array($name, $this->attributes)) { + continue; + } + if (!preg_match("/^[a-z0-9]+$/i", $name)) { + if (!in_array($name, $this->attributesNS)) { + continue; + } + } + + if (($value === TRUE) || (is_null($value))) { + $value = $name; + } + + if ($name == 'style') { + + // removes insignificant backslahes + $value = str_replace("\\", '', $value); + + // removes CSS comments + while (1) + { + $_value = preg_replace("!/\*.*?\*/!s", '', $value); + if ($_value == $value) break; + $value = $_value; + } + + // replace all & to & + $value = str_replace('&', '&', $value); + $value = str_replace('&', '&', $value); + + foreach ($this->_cssRegexps as $css) { + if (preg_match($css, $value)) { + continue 2; + } + } + foreach ($this->_protoRegexps as $proto) { + if (preg_match($proto, $value)) { + continue 2; + } + } + } + + $tempval = preg_replace('/&#(\d+);?/me', "chr('\\1')", $value); //"' + $tempval = preg_replace('/&#x([0-9a-f]+);?/mei', "chr(hexdec('\\1'))", $tempval); + + if ((in_array($name, $this->protocolAttributes)) && + (strpos($tempval, ':') !== false)) + { + if ($this->protocolFiltering == 'black') { + foreach ($this->_protoRegexps as $proto) { + if (preg_match($proto, $tempval)) continue 2; + } + } else { + $_tempval = explode(':', $tempval); + $proto = $_tempval[0]; + if (!in_array($proto, $this->whiteProtocols)) { + continue; + } + } + } + + $value = str_replace("\"", """, $value); + $this->_xhtml .= ' ' . $name . '="' . $value . '"'; + } + } + return true; + } + + /** + * Opening tag handler - called from HTMLSax + * + * @param object $parser HTML Parser + * @param string $name tag name + * @param array $attrs tag attributes + * @return boolean + * @access private + */ + function _openHandler(&$parser, $name, $attrs) + { + $name = strtolower($name); + + if (in_array($name, $this->deleteTagsContent)) { + array_push($this->_dcStack, $name); + $this->_dcCounter[$name] = isset($this->_dcCounter[$name]) ? $this->_dcCounter[$name]+1 : 1; + } + if (count($this->_dcStack) != 0) { + return true; + } + + if (in_array($name, $this->deleteTags)) { + return true; + } + + if (!preg_match("/^[a-z0-9]+$/i", $name)) { + if (preg_match("!(?:\@|://)!i", $name)) { + $this->_xhtml .= '<' . $name . '>'; + } + return true; + } + + if (in_array($name, $this->singleTags)) { + $this->_xhtml .= '<' . $name; + $this->_writeAttrs($attrs); + $this->_xhtml .= ' />'; + return true; + } + + // TABLES: cannot open table elements when we are not inside table + if ((isset($this->_counter['table'])) && ($this->_counter['table'] <= 0) + && (in_array($name, $this->tableTags))) + { + return true; + } + + // PARAGRAPHS: close paragraph when closeParagraph tags opening + if ((in_array($name, $this->closeParagraph)) && (in_array('p', $this->_stack))) { + $this->_closeHandler($parser, 'p'); + } + + // LISTS: we should close
  • if
  • of the same level opening + if ($name == 'li' && count($this->_liStack) && + $this->_listScope == $this->_liStack[count($this->_liStack)-1]) + { + $this->_closeHandler($parser, 'li'); + } + + // LISTS: we want to know on what nesting level of lists we are + if (in_array($name, $this->listTags)) { + $this->_listScope++; + } + if ($name == 'li') { + array_push($this->_liStack, $this->_listScope); + } + + $this->_xhtml .= '<' . $name; + $this->_writeAttrs($attrs); + $this->_xhtml .= '>'; + array_push($this->_stack,$name); + $this->_counter[$name] = isset($this->_counter[$name]) ? $this->_counter[$name]+1 : 1; + return true; + } + + /** + * Closing tag handler - called from HTMLSax + * + * @param object $parsers HTML parser + * @param string $name tag name + * @return boolean + * @access private + */ + function _closeHandler(&$parser, $name) + { + + $name = strtolower($name); + + if (isset($this->_dcCounter[$name]) && ($this->_dcCounter[$name] > 0) && + (in_array($name, $this->deleteTagsContent))) + { + while ($name != ($tag = array_pop($this->_dcStack))) { + $this->_dcCounter[$tag]--; + } + + $this->_dcCounter[$name]--; + } + + if (count($this->_dcStack) != 0) { + return true; + } + + if ((isset($this->_counter[$name])) && ($this->_counter[$name] > 0)) { + while ($name != ($tag = array_pop($this->_stack))) { + $this->_closeTag($tag); + } + + $this->_closeTag($name); + } + return true; + } + + /** + * Closes tag + * + * @param string $tag tag name + * @return boolean + * @access private + */ + function _closeTag($tag) + { + if (!in_array($tag, $this->noClose)) { + $this->_xhtml .= ''; + } + + $this->_counter[$tag]--; + + if (in_array($tag, $this->listTags)) { + $this->_listScope--; + } + + if ($tag == 'li') { + array_pop($this->_liStack); + } + return true; + } + + /** + * Character data handler - called from HTMLSax + * + * @param object $parser HTML parser + * @param string $data textual data + * @return boolean + * @access private + */ + function _dataHandler(&$parser, $data) + { + if (count($this->_dcStack) == 0) { + $this->_xhtml .= $data; + } + return true; + } + + /** + * Escape handler - called from HTMLSax + * + * @param object $parser HTML parser + * @param string $data comments or other type of data + * @return boolean + * @access private + */ + function _escapeHandler(&$parser, $data) + { + return true; + } + + /** + * Returns the XHTML document + * + * @return string Processed (X)HTML document + * @access public + */ + function getXHTML () + { + while ($tag = array_pop($this->_stack)) { + $this->_closeTag($tag); + } + + return $this->_xhtml; + } + + /** + * Clears current document data + * + * @return boolean + * @access public + */ + function clear() + { + $this->_xhtml = ''; + return true; + } + + /** + * Main parsing fuction + * + * @param string $doc HTML document for processing + * @return string Processed (X)HTML document + * @access public + */ + function parse($doc) + { + + // Save all '<' symbols + $doc = preg_replace("/<(?=[^a-zA-Z\/\!\?\%])/", '<', $doc); + + // Web documents shouldn't contains \x00 symbol + $doc = str_replace("\x00", '', $doc); + + // Opera6 bug workaround + $doc = str_replace("\xC0\xBC", '<', $doc); + + // UTF-7 encoding ASCII decode + // @G2 - skip UTF-7 handling, causes a string like 'a+b-c' to become 'ac' + //$doc = $this->repackUTF7($doc); + + // Instantiate the parser + $parser=& new XML_HTMLSax3(); + + // Set up the parser + $parser->set_object($this); + + $parser->set_element_handler('_openHandler','_closeHandler'); + $parser->set_data_handler('_dataHandler'); + $parser->set_escape_handler('_escapeHandler'); + + $parser->parse($doc); + + return $this->getXHTML(); + + } + + + /** + * UTF-7 decoding fuction + * + * @param string $str HTML document for recode ASCII part of UTF-7 back to ASCII + * @return string Decoded document + * @access private + */ + function repackUTF7($str) + { + return preg_replace_callback('!\+([0-9a-zA-Z/]+)\-!', array($this, 'repackUTF7Callback'), $str); + } + + /** + * Additional UTF-7 decoding fuction + * + * @param string $str String for recode ASCII part of UTF-7 back to ASCII + * @return string Recoded string + * @access private + */ + function repackUTF7Callback($str) + { + $str = base64_decode($str[1]); + $str = preg_replace_callback('/^((?:\x00.)*)((?:[^\x00].)+)/', array($this, 'repackUTF7Back'), $str); + return preg_replace('/\x00(.)/', '$1', $str); + } + + /** + * Additional UTF-7 encoding fuction + * + * @param string $str String for recode ASCII part of UTF-7 back to ASCII + * @return string Recoded string + * @access private + */ + function repackUTF7Back($str) + { + return $str[1].'+'.rtrim(base64_encode($str[2]), '=').'-'; + } +} + +/* + * Local variables: + * tab-width: 4 + * c-basic-offset: 4 + * c-hanging-comment-ender-p: nil + * End: + */ + +?> diff --git a/Source/gallery2/lib/pear/mime.php b/Source/gallery2/lib/pear/mime.php new file mode 100644 index 0000000..b78f599 --- /dev/null +++ b/Source/gallery2/lib/pear/mime.php @@ -0,0 +1,915 @@ + | +// | Tomas V.V.Cox (port to PEAR) | +// +-----------------------------------------------------------------------+ +// +// $Id: mime.php,v 1.56 2006/05/18 23:05:14 cipri Exp $ + +//@G2 - skip PEAR.php/change error handling, skip classes already defined (if embedded) +//require_once('PEAR.php'); +if (!class_exists('Mail_mimePart')) { + require_once(dirname(__FILE__) . '/mimePart.php'); +} +if (class_exists('Mail_mime')) return; + +/** + * Mime mail composer class. Can handle: text and html bodies, embedded html + * images and attachments. + * Documentation and examples of this class are avaible here: + * http://pear.php.net/manual/ + * + * @notes This class is based on HTML Mime Mail class from + * Richard Heyes which was based also + * in the mime_mail.class by Tobias Ratschiller and + * Sascha Schumann + * + * @author Richard Heyes + * @author Tomas V.V.Cox + * @package Mail + * @access public + */ +class Mail_mime +{ + /** + * Contains the plain text part of the email + * @var string + */ + var $_txtbody; + /** + * Contains the html part of the email + * @var string + */ + var $_htmlbody; + /** + * contains the mime encoded text + * @var string + */ + var $_mime; + /** + * contains the multipart content + * @var string + */ + var $_multipart; + /** + * list of the attached images + * @var array + */ + var $_html_images = array(); + /** + * list of the attachements + * @var array + */ + var $_parts = array(); + /** + * Build parameters + * @var array + */ + var $_build_params = array(); + /** + * Headers for the mail + * @var array + */ + var $_headers = array(); + /** + * End Of Line sequence (for serialize) + * @var string + */ + var $_eol; + + + /** + * Constructor function + * + * @access public + */ + function Mail_mime($crlf = "\r\n") + { + $this->_setEOL($crlf); + $this->_build_params = array( + 'head_encoding' => 'quoted-printable', + 'text_encoding' => '7bit', + 'html_encoding' => 'quoted-printable', + '7bit_wrap' => 998, + 'html_charset' => 'ISO-8859-1', + 'text_charset' => 'ISO-8859-1', + 'head_charset' => 'ISO-8859-1' + ); + } + + /** + * Wakeup (unserialize) - re-sets EOL constant + * + * @access private + */ + function __wakeup() + { + $this->_setEOL($this->_eol); + } + + /** + * Accessor function to set the body text. Body text is used if + * it's not an html mail being sent or else is used to fill the + * text/plain part that emails clients who don't support + * html should show. + * + * @param string $data Either a string or + * the file name with the contents + * @param bool $isfile If true the first param should be treated + * as a file name, else as a string (default) + * @param bool $append If true the text or file is appended to + * the existing body, else the old body is + * overwritten + * @return mixed true on success or PEAR_Error object + * @access public + */ + function setTXTBody($data, $isfile = false, $append = false) + { + if (!$isfile) { + if (!$append) { + $this->_txtbody = $data; + } else { + $this->_txtbody .= $data; + } + } else { + $cont = $this->_file2str($data); + if (!isset($cont) /*PEAR::isError($cont)*/) { + return $cont; + } + if (!$append) { + $this->_txtbody = $cont; + } else { + $this->_txtbody .= $cont; + } + } + return true; + } + + /** + * Adds a html part to the mail + * + * @param string $data Either a string or the file name with the + * contents + * @param bool $isfile If true the first param should be treated + * as a file name, else as a string (default) + * @return mixed true on success or PEAR_Error object + * @access public + */ + function setHTMLBody($data, $isfile = false) + { + if (!$isfile) { + $this->_htmlbody = $data; + } else { + $cont = $this->_file2str($data); + if (!isset($cont) /*PEAR::isError($cont)*/) { + return $cont; + } + $this->_htmlbody = $cont; + } + + return true; + } + + /** + * Adds an image to the list of embedded images. + * + * @param string $file The image file name OR image data itself + * @param string $c_type The content type + * @param string $name The filename of the image. + * Only use if $file is the image data + * @param bool $isfilename Whether $file is a filename or not + * Defaults to true + * @return mixed true on success or PEAR_Error object + * @access public + */ + function addHTMLImage($file, $c_type='application/octet-stream', + $name = '', $isfilename = true) + { + $filedata = ($isfilename === true) ? $this->_file2str($file) + : $file; + if ($isfilename === true) { + $filename = ($name == '' ? $file : $name); + } else { + $filename = $name; + } + if (!isset($filedata) /*PEAR::isError($filedata)*/) { + return $filedata; + } + $this->_html_images[] = array( + 'body' => $filedata, + 'name' => $filename, + 'c_type' => $c_type, + 'cid' => md5(uniqid(time())) + ); + return true; + } + + /** + * Adds a file to the list of attachments. + * + * @param string $file The file name of the file to attach + * OR the file contents itself + * @param string $c_type The content type + * @param string $name The filename of the attachment + * Only use if $file is the contents + * @param bool $isFilename Whether $file is a filename or not + * Defaults to true + * @param string $encoding The type of encoding to use. + * Defaults to base64. + * Possible values: 7bit, 8bit, base64, + * or quoted-printable. + * @param string $disposition The content-disposition of this file + * Defaults to attachment. + * Possible values: attachment, inline. + * @param string $charset The character set used in the filename + * of this attachment. + * @return mixed true on success or PEAR_Error object + * @access public + */ + function addAttachment($file, $c_type = 'application/octet-stream', + $name = '', $isfilename = true, + $encoding = 'base64', + $disposition = 'attachment', $charset = '') + { + $filedata = ($isfilename === true) ? $this->_file2str($file) + : $file; + if ($isfilename === true) { + // Force the name the user supplied, otherwise use $file + $filename = (!empty($name)) ? $name : $file; + } else { + $filename = $name; + } + if (empty($filename)) { + $err = null; /*PEAR::raiseError( + "The supplied filename for the attachment can't be empty" + );*/ + return $err; + } + $filename = basename($filename); + if (!isset($filedata) /*PEAR::isError($filedata)*/) { + return $filedata; + } + + $this->_parts[] = array( + 'body' => $filedata, + 'name' => $filename, + 'c_type' => $c_type, + 'encoding' => $encoding, + 'charset' => $charset, + 'disposition' => $disposition + ); + return true; + } + + /** + * Get the contents of the given file name as string + * + * @param string $file_name path of file to process + * @return string contents of $file_name + * @access private + */ + function &_file2str($file_name) + { + if (!is_readable($file_name)) { + $err = null; //PEAR::raiseError('File is not readable ' . $file_name); + return $err; + } + if (!$fd = fopen($file_name, 'rb')) { + $err = null; //PEAR::raiseError('Could not open ' . $file_name); + return $err; + } + $filesize = filesize($file_name); + if ($filesize == 0){ + $cont = ""; + }else{ + if ($magic_quote_setting = get_magic_quotes_runtime()){ + set_magic_quotes_runtime(0); + } + $cont = fread($fd, $filesize); + if ($magic_quote_setting){ + set_magic_quotes_runtime($magic_quote_setting); + } + } + fclose($fd); + return $cont; + } + + /** + * Adds a text subpart to the mimePart object and + * returns it during the build process. + * + * @param mixed The object to add the part to, or + * null if a new object is to be created. + * @param string The text to add. + * @return object The text mimePart object + * @access private + */ + function &_addTextPart(&$obj, $text) + { + $params['content_type'] = 'text/plain'; + $params['encoding'] = $this->_build_params['text_encoding']; + $params['charset'] = $this->_build_params['text_charset']; + if (is_object($obj)) { + $ret = $obj->addSubpart($text, $params); + return $ret; + } else { + $ret = new Mail_mimePart($text, $params); + return $ret; + } + } + + /** + * Adds a html subpart to the mimePart object and + * returns it during the build process. + * + * @param mixed The object to add the part to, or + * null if a new object is to be created. + * @return object The html mimePart object + * @access private + */ + function &_addHtmlPart(&$obj) + { + $params['content_type'] = 'text/html'; + $params['encoding'] = $this->_build_params['html_encoding']; + $params['charset'] = $this->_build_params['html_charset']; + if (is_object($obj)) { + $ret = $obj->addSubpart($this->_htmlbody, $params); + return $ret; + } else { + $ret = new Mail_mimePart($this->_htmlbody, $params); + return $ret; + } + } + + /** + * Creates a new mimePart object, using multipart/mixed as + * the initial content-type and returns it during the + * build process. + * + * @return object The multipart/mixed mimePart object + * @access private + */ + function &_addMixedPart() + { + $params['content_type'] = 'multipart/mixed'; + $ret = new Mail_mimePart('', $params); + return $ret; + } + + /** + * Adds a multipart/alternative part to a mimePart + * object (or creates one), and returns it during + * the build process. + * + * @param mixed The object to add the part to, or + * null if a new object is to be created. + * @return object The multipart/mixed mimePart object + * @access private + */ + function &_addAlternativePart(&$obj) + { + $params['content_type'] = 'multipart/alternative'; + if (is_object($obj)) { + return $obj->addSubpart('', $params); + } else { + $ret = new Mail_mimePart('', $params); + return $ret; + } + } + + /** + * Adds a multipart/related part to a mimePart + * object (or creates one), and returns it during + * the build process. + * + * @param mixed The object to add the part to, or + * null if a new object is to be created + * @return object The multipart/mixed mimePart object + * @access private + */ + function &_addRelatedPart(&$obj) + { + $params['content_type'] = 'multipart/related'; + if (is_object($obj)) { + return $obj->addSubpart('', $params); + } else { + $ret = new Mail_mimePart('', $params); + return $ret; + } + } + + /** + * Adds an html image subpart to a mimePart object + * and returns it during the build process. + * + * @param object The mimePart to add the image to + * @param array The image information + * @return object The image mimePart object + * @access private + */ + function &_addHtmlImagePart(&$obj, $value) + { + $params['content_type'] = $value['c_type'] . '; ' . + 'name="' . $value['name'] . '"'; + $params['encoding'] = 'base64'; + $params['disposition'] = 'inline'; + $params['dfilename'] = $value['name']; + $params['cid'] = $value['cid']; + $ret = $obj->addSubpart($value['body'], $params); + return $ret; + + } + + /** + * Adds an attachment subpart to a mimePart object + * and returns it during the build process. + * + * @param object The mimePart to add the image to + * @param array The attachment information + * @return object The image mimePart object + * @access private + */ + function &_addAttachmentPart(&$obj, $value) + { + $params['dfilename'] = $value['name']; + $params['encoding'] = $value['encoding']; + if ($value['disposition'] != "inline") { + $fname = array("fname" => $value['name']); + $fname_enc = $this->_encodeHeaders($fname); + $params['dfilename'] = $fname_enc['fname']; + } + if ($value['charset']) { + $params['charset'] = $value['charset']; + } + $params['content_type'] = $value['c_type'] . '; ' . + 'name="' . $params['dfilename'] . '"'; + $params['disposition'] = isset($value['disposition']) ? + $value['disposition'] : 'attachment'; + $ret = $obj->addSubpart($value['body'], $params); + return $ret; + } + + /** + * Returns the complete e-mail, ready to send using an alternative + * mail delivery method. Note that only the mailpart that is made + * with Mail_Mime is created. This means that, + * YOU WILL HAVE NO TO: HEADERS UNLESS YOU SET IT YOURSELF + * using the $xtra_headers parameter! + * + * @param string $separation The separation etween these two parts. + * @param array $build_params The Build parameters passed to the + * &get() function. See &get for more info. + * @param array $xtra_headers The extra headers that should be passed + * to the &headers() function. + * See that function for more info. + * @param bool $overwrite Overwrite the existing headers with new. + * @return string The complete e-mail. + * @access public + */ + function getMessage($separation = null, $build_params = null, $xtra_headers = null, $overwrite = false) + { + if ($separation === null) + { + $separation = MAIL_MIME_CRLF; + } + $body = $this->get($build_params); + $head = $this->txtHeaders($xtra_headers, $overwrite); + $mail = $head . $separation . $body; + return $mail; + } + + + /** + * Builds the multipart message from the list ($this->_parts) and + * returns the mime content. + * + * @param array Build parameters that change the way the email + * is built. Should be associative. Can contain: + * head_encoding - What encoding to use for the headers. + * Options: quoted-printable or base64 + * Default is quoted-printable + * text_encoding - What encoding to use for plain text + * Options: 7bit, 8bit, base64, or quoted-printable + * Default is 7bit + * html_encoding - What encoding to use for html + * Options: 7bit, 8bit, base64, or quoted-printable + * Default is quoted-printable + * 7bit_wrap - Number of characters before text is + * wrapped in 7bit encoding + * Default is 998 + * html_charset - The character set to use for html. + * Default is iso-8859-1 + * text_charset - The character set to use for text. + * Default is iso-8859-1 + * head_charset - The character set to use for headers. + * Default is iso-8859-1 + * @return string The mime content + * @access public + */ + function &get($build_params = null) + { + if (isset($build_params)) { + while (list($key, $value) = each($build_params)) { + $this->_build_params[$key] = $value; + } + } + + if (!empty($this->_html_images) AND isset($this->_htmlbody)) { + foreach ($this->_html_images as $key => $value) { + $regex = array(); + $regex[] = '#(\s)((?i)src|background|href(?-i))\s*=\s*(["\']?)' . + preg_quote($value['name'], '#') . '\3#'; + $regex[] = '#(?i)url(?-i)\(\s*(["\']?)' . + preg_quote($value['name'], '#') . '\1\s*\)#'; + $rep = array(); + $rep[] = '\1\2=\3cid:' . $value['cid'] .'\3'; + $rep[] = 'url(\1cid:' . $value['cid'] . '\2)'; + $this->_htmlbody = preg_replace($regex, $rep, + $this->_htmlbody + ); + $this->_html_images[$key]['name'] = basename($this->_html_images[$key]['name']); + } + } + + $null = null; + $attachments = !empty($this->_parts) ? true : false; + $html_images = !empty($this->_html_images) ? true : false; + $html = !empty($this->_htmlbody) ? true : false; + $text = (!$html AND !empty($this->_txtbody)) ? true : false; + + switch (true) { + case $text AND !$attachments: + $message =& $this->_addTextPart($null, $this->_txtbody); + break; + + case !$text AND !$html AND $attachments: + $message =& $this->_addMixedPart(); + for ($i = 0; $i < count($this->_parts); $i++) { + $this->_addAttachmentPart($message, $this->_parts[$i]); + } + break; + + case $text AND $attachments: + $message =& $this->_addMixedPart(); + $this->_addTextPart($message, $this->_txtbody); + for ($i = 0; $i < count($this->_parts); $i++) { + $this->_addAttachmentPart($message, $this->_parts[$i]); + } + break; + + case $html AND !$attachments AND !$html_images: + if (isset($this->_txtbody)) { + $message =& $this->_addAlternativePart($null); + $this->_addTextPart($message, $this->_txtbody); + $this->_addHtmlPart($message); + } else { + $message =& $this->_addHtmlPart($null); + } + break; + + case $html AND !$attachments AND $html_images: + if (isset($this->_txtbody)) { + $message =& $this->_addAlternativePart($null); + $this->_addTextPart($message, $this->_txtbody); + $related =& $this->_addRelatedPart($message); + } else { + $message =& $this->_addRelatedPart($null); + $related =& $message; + } + $this->_addHtmlPart($related); + for ($i = 0; $i < count($this->_html_images); $i++) { + $this->_addHtmlImagePart($related, $this->_html_images[$i]); + } + break; + + case $html AND $attachments AND !$html_images: + $message =& $this->_addMixedPart(); + if (isset($this->_txtbody)) { + $alt =& $this->_addAlternativePart($message); + $this->_addTextPart($alt, $this->_txtbody); + $this->_addHtmlPart($alt); + } else { + $this->_addHtmlPart($message); + } + for ($i = 0; $i < count($this->_parts); $i++) { + $this->_addAttachmentPart($message, $this->_parts[$i]); + } + break; + + case $html AND $attachments AND $html_images: + $message =& $this->_addMixedPart(); + if (isset($this->_txtbody)) { + $alt =& $this->_addAlternativePart($message); + $this->_addTextPart($alt, $this->_txtbody); + $rel =& $this->_addRelatedPart($alt); + } else { + $rel =& $this->_addRelatedPart($message); + } + $this->_addHtmlPart($rel); + for ($i = 0; $i < count($this->_html_images); $i++) { + $this->_addHtmlImagePart($rel, $this->_html_images[$i]); + } + for ($i = 0; $i < count($this->_parts); $i++) { + $this->_addAttachmentPart($message, $this->_parts[$i]); + } + break; + + } + + if (isset($message)) { + $output = $message->encode(); + $this->_headers = array_merge($this->_headers, + $output['headers']); + $body = $output['body']; + return $body; + + } else { + $ret = false; + return $ret; + } + } + + /** + * Returns an array with the headers needed to prepend to the email + * (MIME-Version and Content-Type). Format of argument is: + * $array['header-name'] = 'header-value'; + * + * @param array $xtra_headers Assoc array with any extra headers. + * Optional. + * @param bool $overwrite Overwrite already existing headers. + * @return array Assoc array with the mime headers + * @access public + */ + function &headers($xtra_headers = null, $overwrite = false) + { + // Content-Type header should already be present, + // So just add mime version header + $headers['MIME-Version'] = '1.0'; + if (isset($xtra_headers)) { + $headers = array_merge($headers, $xtra_headers); + } + if ($overwrite){ + $this->_headers = array_merge($this->_headers, $headers); + }else{ + $this->_headers = array_merge($headers, $this->_headers); + } + + $encodedHeaders = $this->_encodeHeaders($this->_headers); + return $encodedHeaders; + } + + /** + * Get the text version of the headers + * (usefull if you want to use the PHP mail() function) + * + * @param array $xtra_headers Assoc array with any extra headers. + * Optional. + * @param bool $overwrite Overwrite the existing heaers with new. + * @return string Plain text headers + * @access public + */ + function txtHeaders($xtra_headers = null, $overwrite = false) + { + $headers = $this->headers($xtra_headers, $overwrite); + $ret = ''; + foreach ($headers as $key => $val) { + $ret .= "$key: $val" . MAIL_MIME_CRLF; + } + return $ret; + } + + /** + * Sets the Subject header + * + * @param string $subject String to set the subject to + * access public + */ + function setSubject($subject) + { + $this->_headers['Subject'] = $subject; + } + + /** + * Set an email to the From (the sender) header + * + * @param string $email The email direction to add + * @access public + */ + function setFrom($email) + { + $this->_headers['From'] = $email; + } + + /** + * Add an email to the Cc (carbon copy) header + * (multiple calls to this method are allowed) + * + * @param string $email The email direction to add + * @access public + */ + function addCc($email) + { + if (isset($this->_headers['Cc'])) { + $this->_headers['Cc'] .= ", $email"; + } else { + $this->_headers['Cc'] = $email; + } + } + + /** + * Add an email to the Bcc (blank carbon copy) header + * (multiple calls to this method are allowed) + * + * @param string $email The email direction to add + * @access public + */ + function addBcc($email) + { + if (isset($this->_headers['Bcc'])) { + $this->_headers['Bcc'] .= ", $email"; + } else { + $this->_headers['Bcc'] = $email; + } + } + + /** + * Since the PHP send function requires you to specifiy + * recipients (To: header) separately from the other + * headers, the To: header is not properly encoded. + * To fix this, you can use this public method to + * encode your recipients before sending to the send + * function + * + * @param string $recipients A comma-delimited list of recipients + * @return string Encoded data + * @access public + */ + function encodeRecipients($recipients) + { + $input = array("To" => $recipients); + $retval = $this->_encodeHeaders($input); + return $retval["To"] ; + } + + /** + * Encodes a header as per RFC2047 + * + * @param array $input The header data to encode + * @return array Encoded data + * @access private + */ + function _encodeHeaders($input) + { + foreach ($input as $hdr_name => $hdr_value) { + if (function_exists('iconv_mime_encode') && preg_match('#[\x80-\xFF]{1}#', $hdr_value)){ + $imePref = array(); + if ($this->_build_params['head_encoding'] == 'base64'){ + $imePrefs['scheme'] = 'B'; + }else{ + $imePrefs['scheme'] = 'Q'; + } + $imePrefs['input-charset'] = $this->_build_params['head_charset']; + $imePrefs['output-charset'] = $this->_build_params['head_charset']; + $hdr_value = iconv_mime_encode($hdr_name, $hdr_value, $imePrefs); + $hdr_value = preg_replace("#^{$hdr_name}\:\ #", "", $hdr_value); + }elseif (preg_match('#[\x80-\xFF]{1}#', $hdr_value)){ + //This header contains non ASCII chars and should be encoded. + switch ($this->_build_params['head_encoding']) { + case 'base64': + //Base64 encoding has been selected. + + //Generate the header using the specified params and dynamicly + //determine the maximum length of such strings. + //75 is the value specified in the RFC. The -2 is there so + //the later regexp doesn't break any of the translated chars. + $prefix = '=?' . $this->_build_params['head_charset'] . '?B?'; + $suffix = '?='; + $maxLength = 75 - strlen($prefix . $suffix) - 2; + $maxLength1stLine = $maxLength - strlen($hdr_name); + + //Base64 encode the entire string + $hdr_value = base64_encode($hdr_value); + + //This regexp will break base64-encoded text at every + //$maxLength but will not break any encoded letters. + $reg1st = "|.{0,$maxLength1stLine}[^\=][^\=]|"; + $reg2nd = "|.{0,$maxLength}[^\=][^\=]|"; + break; + case 'quoted-printable': + default: + //quoted-printable encoding has been selected + + //Generate the header using the specified params and dynamicly + //determine the maximum length of such strings. + //75 is the value specified in the RFC. The -2 is there so + //the later regexp doesn't break any of the translated chars. + $prefix = '=?' . $this->_build_params['head_charset'] . '?Q?'; + $suffix = '?='; + $maxLength = 75 - strlen($prefix . $suffix) - 2; + $maxLength1stLine = $maxLength - strlen($hdr_name); + + //Replace all special characters used by the encoder. + $search = array("=", "_", "?", " "); + $replace = array("=3D", "=5F", "=3F", "_"); + $hdr_value = str_replace($search, $replace, $hdr_value); + + //Replace all extended characters (\x80-xFF) with their + //ASCII values. + $hdr_value = preg_replace( + '#([\x80-\xFF])#e', + '"=" . strtoupper(dechex(ord("\1")))', + $hdr_value + ); + //This regexp will break QP-encoded text at every $maxLength + //but will not break any encoded letters. + $reg1st = "|(.{0,$maxLength})[^\=]|"; + $reg2nd = "|(.{0,$maxLength})[^\=]|"; + break; + } + //Begin with the regexp for the first line. + $reg = $reg1st; + $output = ""; + while ($hdr_value) { + //Split translated string at every $maxLength + //But make sure not to break any translated chars. + $found = preg_match($reg, $hdr_value, $matches); + + //After this first line, we need to use a different + //regexp for the first line. + $reg = $reg2nd; + + //Save the found part and encapsulate it in the + //prefix & suffix. Then remove the part from the + //$hdr_value variable. + if ($found){ + $part = $matches[0]; + $hdr_value = substr($hdr_value, strlen($matches[0])); + }else{ + $part = $hdr_value; + $hdr_value = ""; + } + + //RFC 2047 specifies that any split header should be seperated + //by a CRLF SPACE. + if ($output){ + $output .= "\r\n "; + } + $output .= $prefix . $part . $suffix; + } + $hdr_value = $output; + } + $input[$hdr_name] = $hdr_value; + } + + return $input; + } + + /** + * Set the object's end-of-line and define the constant if applicable + * + * @param string $eol End Of Line sequence + * @access private + */ + function _setEOL($eol) + { + $this->_eol = $eol; + if (!defined('MAIL_MIME_CRLF')) { + define('MAIL_MIME_CRLF', $this->_eol, true); + } + } + + + +} // End of class +?> diff --git a/Source/gallery2/lib/pear/mimePart.php b/Source/gallery2/lib/pear/mimePart.php new file mode 100644 index 0000000..c0050d4 --- /dev/null +++ b/Source/gallery2/lib/pear/mimePart.php @@ -0,0 +1,351 @@ + | +// +-----------------------------------------------------------------------+ + +/** +* +* Raw mime encoding class +* +* What is it? +* This class enables you to manipulate and build +* a mime email from the ground up. +* +* Why use this instead of mime.php? +* mime.php is a userfriendly api to this class for +* people who aren't interested in the internals of +* mime mail. This class however allows full control +* over the email. +* +* Eg. +* +* // Since multipart/mixed has no real body, (the body is +* // the subpart), we set the body argument to blank. +* +* $params['content_type'] = 'multipart/mixed'; +* $email = new Mail_mimePart('', $params); +* +* // Here we add a text part to the multipart we have +* // already. Assume $body contains plain text. +* +* $params['content_type'] = 'text/plain'; +* $params['encoding'] = '7bit'; +* $text = $email->addSubPart($body, $params); +* +* // Now add an attachment. Assume $attach is +* the contents of the attachment +* +* $params['content_type'] = 'application/zip'; +* $params['encoding'] = 'base64'; +* $params['disposition'] = 'attachment'; +* $params['dfilename'] = 'example.zip'; +* $attach =& $email->addSubPart($body, $params); +* +* // Now build the email. Note that the encode +* // function returns an associative array containing two +* // elements, body and headers. You will need to add extra +* // headers, (eg. Mime-Version) before sending. +* +* $email = $message->encode(); +* $email['headers'][] = 'Mime-Version: 1.0'; +* +* +* Further examples are available at http://www.phpguru.org +* +* TODO: +* - Set encode() to return the $obj->encoded if encode() +* has already been run. Unless a flag is passed to specifically +* re-build the message. +* +* @author Richard Heyes +* @version $Revision: 1.13 $ +* @package Mail +*/ + +class Mail_mimePart { + + /** + * The encoding type of this part + * @var string + */ + var $_encoding; + + /** + * An array of subparts + * @var array + */ + var $_subparts; + + /** + * The output of this part after being built + * @var string + */ + var $_encoded; + + /** + * Headers for this part + * @var array + */ + var $_headers; + + /** + * The body of this part (not encoded) + * @var string + */ + var $_body; + + /** + * Constructor. + * + * Sets up the object. + * + * @param $body - The body of the mime part if any. + * @param $params - An associative array of parameters: + * content_type - The content type for this part eg multipart/mixed + * encoding - The encoding to use, 7bit, 8bit, base64, or quoted-printable + * cid - Content ID to apply + * disposition - Content disposition, inline or attachment + * dfilename - Optional filename parameter for content disposition + * description - Content description + * charset - Character set to use + * @access public + */ + function Mail_mimePart($body = '', $params = array()) + { + if (!defined('MAIL_MIMEPART_CRLF')) { + define('MAIL_MIMEPART_CRLF', defined('MAIL_MIME_CRLF') ? MAIL_MIME_CRLF : "\r\n", TRUE); + } + + foreach ($params as $key => $value) { + switch ($key) { + case 'content_type': + $headers['Content-Type'] = $value . (isset($charset) ? '; charset="' . $charset . '"' : ''); + break; + + case 'encoding': + $this->_encoding = $value; + $headers['Content-Transfer-Encoding'] = $value; + break; + + case 'cid': + $headers['Content-ID'] = '<' . $value . '>'; + break; + + case 'disposition': + $headers['Content-Disposition'] = $value . (isset($dfilename) ? '; filename="' . $dfilename . '"' : ''); + break; + + case 'dfilename': + if (isset($headers['Content-Disposition'])) { + $headers['Content-Disposition'] .= '; filename="' . $value . '"'; + } else { + $dfilename = $value; + } + break; + + case 'description': + $headers['Content-Description'] = $value; + break; + + case 'charset': + if (isset($headers['Content-Type'])) { + $headers['Content-Type'] .= '; charset="' . $value . '"'; + } else { + $charset = $value; + } + break; + } + } + + // Default content-type + if (!isset($headers['Content-Type'])) { + $headers['Content-Type'] = 'text/plain'; + } + + //Default encoding + if (!isset($this->_encoding)) { + $this->_encoding = '7bit'; + } + + // Assign stuff to member variables + $this->_encoded = array(); + $this->_headers = $headers; + $this->_body = $body; + } + + /** + * encode() + * + * Encodes and returns the email. Also stores + * it in the encoded member variable + * + * @return An associative array containing two elements, + * body and headers. The headers element is itself + * an indexed array. + * @access public + */ + function encode() + { + $encoded =& $this->_encoded; + + if (!empty($this->_subparts)) { + srand((double)microtime()*1000000); + $boundary = '=_' . md5(rand() . microtime()); + $this->_headers['Content-Type'] .= ';' . MAIL_MIMEPART_CRLF . "\t" . 'boundary="' . $boundary . '"'; + + // Add body parts to $subparts + for ($i = 0; $i < count($this->_subparts); $i++) { + $headers = array(); + $tmp = $this->_subparts[$i]->encode(); + foreach ($tmp['headers'] as $key => $value) { + $headers[] = $key . ': ' . $value; + } + $subparts[] = implode(MAIL_MIMEPART_CRLF, $headers) . MAIL_MIMEPART_CRLF . MAIL_MIMEPART_CRLF . $tmp['body']; + } + + $encoded['body'] = '--' . $boundary . MAIL_MIMEPART_CRLF . + implode('--' . $boundary . MAIL_MIMEPART_CRLF, $subparts) . + '--' . $boundary.'--' . MAIL_MIMEPART_CRLF; + + } else { + $encoded['body'] = $this->_getEncodedData($this->_body, $this->_encoding) . MAIL_MIMEPART_CRLF; + } + + // Add headers to $encoded + $encoded['headers'] =& $this->_headers; + + return $encoded; + } + + /** + * &addSubPart() + * + * Adds a subpart to current mime part and returns + * a reference to it + * + * @param $body The body of the subpart, if any. + * @param $params The parameters for the subpart, same + * as the $params argument for constructor. + * @return A reference to the part you just added. It is + * crucial if using multipart/* in your subparts that + * you use =& in your script when calling this function, + * otherwise you will not be able to add further subparts. + * @access public + */ + function &addSubPart($body, $params) + { + $this->_subparts[] = new Mail_mimePart($body, $params); + return $this->_subparts[count($this->_subparts) - 1]; + } + + /** + * _getEncodedData() + * + * Returns encoded data based upon encoding passed to it + * + * @param $data The data to encode. + * @param $encoding The encoding type to use, 7bit, base64, + * or quoted-printable. + * @access private + */ + function _getEncodedData($data, $encoding) + { + switch ($encoding) { + case '8bit': + case '7bit': + return $data; + break; + + case 'quoted-printable': + return $this->_quotedPrintableEncode($data); + break; + + case 'base64': + return rtrim(chunk_split(base64_encode($data), 76, MAIL_MIMEPART_CRLF)); + break; + + default: + return $data; + } + } + + /** + * quoteadPrintableEncode() + * + * Encodes data to quoted-printable standard. + * + * @param $input The data to encode + * @param $line_max Optional max line length. Should + * not be more than 76 chars + * + * @access private + */ + function _quotedPrintableEncode($input , $line_max = 76) + { + $lines = preg_split("/\r?\n/", $input); + $eol = MAIL_MIMEPART_CRLF; + $escape = '='; + $output = ''; + + while(list(, $line) = each($lines)){ + + $linlen = strlen($line); + $newline = ''; + + for ($i = 0; $i < $linlen; $i++) { + $char = substr($line, $i, 1); + $dec = ord($char); + + if (($dec == 32) AND ($i == ($linlen - 1))){ // convert space at eol only + $char = '=20'; + + } elseif(($dec == 9) AND ($i == ($linlen - 1))) { // convert tab at eol only + $char = '=09'; + } elseif($dec == 9) { + ; // Do nothing if a tab. + } elseif(($dec == 61) OR ($dec < 32 ) OR ($dec > 126)) { + $char = $escape . strtoupper(sprintf('%02s', dechex($dec))); + } + + if ((strlen($newline) + strlen($char)) >= $line_max) { // MAIL_MIMEPART_CRLF is not counted + $output .= $newline . $escape . $eol; // soft line break; " =\r\n" is okay + $newline = ''; + } + $newline .= $char; + } // end of for + $output .= $newline . $eol; + } + $output = substr($output, 0, -1 * strlen($eol)); // Don't want last crlf + return $output; + } +} // End of class +?> diff --git a/Source/gallery2/lib/smarty/COPYING.lib b/Source/gallery2/lib/smarty/COPYING.lib new file mode 100644 index 0000000..3b20440 --- /dev/null +++ b/Source/gallery2/lib/smarty/COPYING.lib @@ -0,0 +1,458 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS diff --git a/Source/gallery2/lib/smarty/Config_File.class.php b/Source/gallery2/lib/smarty/Config_File.class.php new file mode 100644 index 0000000..d01b222 --- /dev/null +++ b/Source/gallery2/lib/smarty/Config_File.class.php @@ -0,0 +1,389 @@ + + * @access public + * @package Smarty + */ + +/* $Id: Config_File.class.php 15342 2006-12-01 21:14:46Z andy_st $ */ + +/** + * Config file reading class + * @package Smarty + */ +class Config_File { + /**#@+ + * Options + * @var boolean + */ + /** + * Controls whether variables with the same name overwrite each other. + */ + var $overwrite = true; + + /** + * Controls whether config values of on/true/yes and off/false/no get + * converted to boolean values automatically. + */ + var $booleanize = true; + + /** + * Controls whether hidden config sections/vars are read from the file. + */ + var $read_hidden = true; + + /** + * Controls whether or not to fix mac or dos formatted newlines. + * If set to true, \r or \r\n will be changed to \n. + */ + var $fix_newlines = true; + /**#@-*/ + + /** @access private */ + var $_config_path = ""; + var $_config_data = array(); + /**#@-*/ + + /** + * Constructs a new config file class. + * + * @param string $config_path (optional) path to the config files + */ + function Config_File($config_path = NULL) + { + if (isset($config_path)) + $this->set_path($config_path); + } + + + /** + * Set the path where configuration files can be found. + * + * @param string $config_path path to the config files + */ + function set_path($config_path) + { + if (!empty($config_path)) { + if (!is_string($config_path) || !file_exists($config_path) || !is_dir($config_path)) { + $this->_trigger_error_msg("Bad config file path '$config_path'"); + return; + } + if(substr($config_path, -1) != DIRECTORY_SEPARATOR) { + $config_path .= DIRECTORY_SEPARATOR; + } + + $this->_config_path = $config_path; + } + } + + + /** + * Retrieves config info based on the file, section, and variable name. + * + * @param string $file_name config file to get info for + * @param string $section_name (optional) section to get info for + * @param string $var_name (optional) variable to get info for + * @return string|array a value or array of values + */ + function get($file_name, $section_name = NULL, $var_name = NULL) + { + if (empty($file_name)) { + $this->_trigger_error_msg('Empty config file name'); + return; + } else { + $file_name = $this->_config_path . $file_name; + if (!isset($this->_config_data[$file_name])) + $this->load_file($file_name, false); + } + + if (!empty($var_name)) { + if (empty($section_name)) { + return $this->_config_data[$file_name]["vars"][$var_name]; + } else { + if(isset($this->_config_data[$file_name]["sections"][$section_name]["vars"][$var_name])) + return $this->_config_data[$file_name]["sections"][$section_name]["vars"][$var_name]; + else + return array(); + } + } else { + if (empty($section_name)) { + return (array)$this->_config_data[$file_name]["vars"]; + } else { + if(isset($this->_config_data[$file_name]["sections"][$section_name]["vars"])) + return (array)$this->_config_data[$file_name]["sections"][$section_name]["vars"]; + else + return array(); + } + } + } + + + /** + * Retrieves config info based on the key. + * + * @param $file_name string config key (filename/section/var) + * @return string|array same as get() + * @uses get() retrieves information from config file and returns it + */ + function &get_key($config_key) + { + list($file_name, $section_name, $var_name) = explode('/', $config_key, 3); + $result = &$this->get($file_name, $section_name, $var_name); + return $result; + } + + /** + * Get all loaded config file names. + * + * @return array an array of loaded config file names + */ + function get_file_names() + { + return array_keys($this->_config_data); + } + + + /** + * Get all section names from a loaded file. + * + * @param string $file_name config file to get section names from + * @return array an array of section names from the specified file + */ + function get_section_names($file_name) + { + $file_name = $this->_config_path . $file_name; + if (!isset($this->_config_data[$file_name])) { + $this->_trigger_error_msg("Unknown config file '$file_name'"); + return; + } + + return array_keys($this->_config_data[$file_name]["sections"]); + } + + + /** + * Get all global or section variable names. + * + * @param string $file_name config file to get info for + * @param string $section_name (optional) section to get info for + * @return array an array of variables names from the specified file/section + */ + function get_var_names($file_name, $section = NULL) + { + if (empty($file_name)) { + $this->_trigger_error_msg('Empty config file name'); + return; + } else if (!isset($this->_config_data[$file_name])) { + $this->_trigger_error_msg("Unknown config file '$file_name'"); + return; + } + + if (empty($section)) + return array_keys($this->_config_data[$file_name]["vars"]); + else + return array_keys($this->_config_data[$file_name]["sections"][$section]["vars"]); + } + + + /** + * Clear loaded config data for a certain file or all files. + * + * @param string $file_name file to clear config data for + */ + function clear($file_name = NULL) + { + if ($file_name === NULL) + $this->_config_data = array(); + else if (isset($this->_config_data[$file_name])) + $this->_config_data[$file_name] = array(); + } + + + /** + * Load a configuration file manually. + * + * @param string $file_name file name to load + * @param boolean $prepend_path whether current config path should be + * prepended to the filename + */ + function load_file($file_name, $prepend_path = true) + { + if ($prepend_path && $this->_config_path != "") + $config_file = $this->_config_path . $file_name; + else + $config_file = $file_name; + + ini_set('track_errors', true); + $fp = @fopen($config_file, "r"); + if (!is_resource($fp)) { + $this->_trigger_error_msg("Could not open config file '$config_file'"); + return false; + } + + $contents = ($size = filesize($config_file)) ? fread($fp, $size) : ''; + fclose($fp); + + $this->_config_data[$config_file] = $this->parse_contents($contents); + return true; + } + + /** + * Store the contents of a file manually. + * + * @param string $config_file file name of the related contents + * @param string $contents the file-contents to parse + */ + function set_file_contents($config_file, $contents) + { + $this->_config_data[$config_file] = $this->parse_contents($contents); + return true; + } + + /** + * parse the source of a configuration file manually. + * + * @param string $contents the file-contents to parse + */ + function parse_contents($contents) + { + if($this->fix_newlines) { + // fix mac/dos formatted newlines + $contents = preg_replace('!\r\n?!', "\n", $contents); + } + + $config_data = array(); + $config_data['sections'] = array(); + $config_data['vars'] = array(); + + /* reference to fill with data */ + $vars =& $config_data['vars']; + + /* parse file line by line */ + preg_match_all('!^.*\r?\n?!m', $contents, $match); + $lines = $match[0]; + for ($i=0, $count=count($lines); $i<$count; $i++) { + $line = $lines[$i]; + if (empty($line)) continue; + + if ( substr($line, 0, 1) == '[' && preg_match('!^\[(.*?)\]!', $line, $match) ) { + /* section found */ + if (substr($match[1], 0, 1) == '.') { + /* hidden section */ + if ($this->read_hidden) { + $section_name = substr($match[1], 1); + } else { + /* break reference to $vars to ignore hidden section */ + unset($vars); + $vars = array(); + continue; + } + } else { + $section_name = $match[1]; + } + if (!isset($config_data['sections'][$section_name])) + $config_data['sections'][$section_name] = array('vars' => array()); + $vars =& $config_data['sections'][$section_name]['vars']; + continue; + } + + if (preg_match('/^\s*(\.?\w+)\s*=\s*(.*)/s', $line, $match)) { + /* variable found */ + $var_name = rtrim($match[1]); + if (strpos($match[2], '"""') === 0) { + /* handle multiline-value */ + $lines[$i] = substr($match[2], 3); + $var_value = ''; + while ($i<$count) { + if (($pos = strpos($lines[$i], '"""')) === false) { + $var_value .= $lines[$i++]; + } else { + /* end of multiline-value */ + $var_value .= substr($lines[$i], 0, $pos); + break; + } + } + $booleanize = false; + + } else { + /* handle simple value */ + $var_value = preg_replace('/^([\'"])(.*)\1$/', '\2', rtrim($match[2])); + $booleanize = $this->booleanize; + + } + $this->_set_config_var($vars, $var_name, $var_value, $booleanize); + } + /* else unparsable line / means it is a comment / means ignore it */ + } + return $config_data; + } + + /**#@+ @access private */ + /** + * @param array &$container + * @param string $var_name + * @param mixed $var_value + * @param boolean $booleanize determines whether $var_value is converted to + * to true/false + */ + function _set_config_var(&$container, $var_name, $var_value, $booleanize) + { + if (substr($var_name, 0, 1) == '.') { + if (!$this->read_hidden) + return; + else + $var_name = substr($var_name, 1); + } + + if (!preg_match("/^[a-zA-Z_]\w*$/", $var_name)) { + $this->_trigger_error_msg("Bad variable name '$var_name'"); + return; + } + + if ($booleanize) { + if (preg_match("/^(on|true|yes)$/i", $var_value)) + $var_value = true; + else if (preg_match("/^(off|false|no)$/i", $var_value)) + $var_value = false; + } + + if (!isset($container[$var_name]) || $this->overwrite) + $container[$var_name] = $var_value; + else { + settype($container[$var_name], 'array'); + $container[$var_name][] = $var_value; + } + } + + /** + * @uses trigger_error() creates a PHP warning/error + * @param string $error_msg + * @param integer $error_type one of + */ + function _trigger_error_msg($error_msg, $error_type = E_USER_WARNING) + { + trigger_error("Config_File error: $error_msg", $error_type); + } + /**#@-*/ +} + +?> diff --git a/Source/gallery2/lib/smarty/README b/Source/gallery2/lib/smarty/README new file mode 100644 index 0000000..8287968 --- /dev/null +++ b/Source/gallery2/lib/smarty/README @@ -0,0 +1,80 @@ +NAME: + + Smarty - the PHP compiling template engine + +VERSION: 2.6.16 + +AUTHORS: + + Monte Ohrt + Andrei Zmievski + +MAILING LISTS: + + We have a few mailing lists. "general" for you to share your ideas or ask + questions, "dev" for those interested in the development efforts of Smarty, + and "cvs" for those that would like to track the updates made in the cvs + repository. + + send a blank e-mail message to: + smarty-general-subscribe@lists.php.net (subscribe to the general list) + smarty-general-unsubscribe@lists.php.net (unsubscribe from the general list) + smarty-general-digest-subscribe@lists.php.net (subscribe to digest) + smarty-general-digest-unsubscribe@lists.php.net (unsubscribe from digest) + smarty-dev-subscribe@lists.php.net (subscribe to the dev list) + smarty-dev-unsubscribe@lists.php.net (unsubscribe from the dev list) + smarty-cvs-subscribe@lists.php.net (subscribe to the cvs list) + smarty-cvs-unsubscribe@lists.php.net (unsubscribe from the cvs list) + You can also browse the mailing list archives at + http://marc.theaimsgroup.com/?l=smarty&r=1&w=2 + +SYNOPSIS: + + require("Smarty.class.php"); + + $smarty = new Smarty; + + $smarty->assign("Title","My Homepage"); + $smarty->assign("Names",array("John","Gary","Gregg","James")); + + $smarty->display("index.tpl"); + + +DESCRIPTION: + + What is Smarty? + + Smarty is a template engine for PHP. Many other template engines for PHP + provide basic variable substitution and dynamic block functionality. + Smarty takes a step further to be a "smart" template engine, adding + features such as configuration files, template functions, and variable + modifiers, and making all of this functionality as easy as possible to + use for both programmers and template designers. Smarty also converts + the templates into PHP scripts, eliminating the need to parse the + templates on every invocation. This makes Smarty extremely scalable and + manageable for large application needs. + + Some of Smarty's features: + + * it is extremely fast + * no template parsing overhead, only compiles once. + * it is smart about recompiling only the template files that have + changed. + * the template language is remarkably extensible via the plugin + architecture. + * configurable template delimiter tag syntax, so you can use + {}, {{}}, , or whatever you like. + * built-in caching of template output. + * arbitrary template sources (filesystem, databases, etc.) + * template if/elseif/else/endif constructs are passed to the PHP parser, + so the if syntax can be as simple or as complex as you like. + * unlimited nesting of sections, conditionals, etc. allowed + * it is possible to embed PHP code right in your template files, + although not recommended and doubtfully needed since the engine + is so customizable. + * and many more. + +COPYRIGHT: + Copyright (c) 2001-2005 New Digital Group, Inc. All rights reserved. + This software is released under the GNU Lesser General Public License. + Please read the disclaimer at the top of the Smarty.class.php file. diff --git a/Source/gallery2/lib/smarty/Smarty.class.php b/Source/gallery2/lib/smarty/Smarty.class.php new file mode 100644 index 0000000..1f73d7d --- /dev/null +++ b/Source/gallery2/lib/smarty/Smarty.class.php @@ -0,0 +1,1944 @@ + + * @author Andrei Zmievski + * @package Smarty + * @version 2.6.16 + */ + +/* $Id: Smarty.class.php 15342 2006-12-01 21:14:46Z andy_st $ */ + +/** + * DIR_SEP isn't used anymore, but third party apps might + */ +if(!defined('DIR_SEP')) { + define('DIR_SEP', DIRECTORY_SEPARATOR); +} + +/** + * set SMARTY_DIR to absolute path to Smarty library files. + * if not defined, include_path will be used. Sets SMARTY_DIR only if user + * application has not already defined it. + */ + +if (!defined('SMARTY_DIR')) { + define('SMARTY_DIR', dirname(__FILE__) . DIRECTORY_SEPARATOR); +} + +if (!defined('SMARTY_CORE_DIR')) { + define('SMARTY_CORE_DIR', SMARTY_DIR . 'internals' . DIRECTORY_SEPARATOR); +} + +define('SMARTY_PHP_PASSTHRU', 0); +define('SMARTY_PHP_QUOTE', 1); +define('SMARTY_PHP_REMOVE', 2); +define('SMARTY_PHP_ALLOW', 3); + +/** + * @package Smarty + */ +class Smarty +{ + /**#@+ + * Smarty Configuration Section + */ + + /** + * The name of the directory where templates are located. + * + * @var string + */ + var $template_dir = 'templates'; + + /** + * The directory where compiled templates are located. + * + * @var string + */ + var $compile_dir = 'templates_c'; + + /** + * The directory where config files are located. + * + * @var string + */ + var $config_dir = 'configs'; + + /** + * An array of directories searched for plugins. + * + * @var array + */ + var $plugins_dir = array('plugins'); + + /** + * If debugging is enabled, a debug console window will display + * when the page loads (make sure your browser allows unrequested + * popup windows) + * + * @var boolean + */ + var $debugging = false; + + /** + * When set, smarty does uses this value as error_reporting-level. + * + * @var boolean + */ + var $error_reporting = null; + + /** + * This is the path to the debug console template. If not set, + * the default one will be used. + * + * @var string + */ + var $debug_tpl = ''; + + /** + * This determines if debugging is enable-able from the browser. + *
      + *
    • NONE => no debugging control allowed
    • + *
    • URL => enable debugging when SMARTY_DEBUG is found in the URL.
    • + *
    + * @link http://www.foo.dom/index.php?SMARTY_DEBUG + * @var string + */ + var $debugging_ctrl = 'NONE'; + + /** + * This tells Smarty whether to check for recompiling or not. Recompiling + * does not need to happen unless a template or config file is changed. + * Typically you enable this during development, and disable for + * production. + * + * @var boolean + */ + var $compile_check = true; + + /** + * This forces templates to compile every time. Useful for development + * or debugging. + * + * @var boolean + */ + var $force_compile = false; + + /** + * This enables template caching. + *
      + *
    • 0 = no caching
    • + *
    • 1 = use class cache_lifetime value
    • + *
    • 2 = use cache_lifetime in cache file
    • + *
    + * @var integer + */ + var $caching = 0; + + /** + * The name of the directory for cache files. + * + * @var string + */ + var $cache_dir = 'cache'; + + /** + * This is the number of seconds cached content will persist. + *
      + *
    • 0 = always regenerate cache
    • + *
    • -1 = never expires
    • + *
    + * + * @var integer + */ + var $cache_lifetime = 3600; + + /** + * Only used when $caching is enabled. If true, then If-Modified-Since headers + * are respected with cached content, and appropriate HTTP headers are sent. + * This way repeated hits to a cached page do not send the entire page to the + * client every time. + * + * @var boolean + */ + var $cache_modified_check = false; + + /** + * This determines how Smarty handles "" tags in templates. + * possible values: + *
      + *
    • SMARTY_PHP_PASSTHRU -> print tags as plain text
    • + *
    • SMARTY_PHP_QUOTE -> escape tags as entities
    • + *
    • SMARTY_PHP_REMOVE -> remove php tags
    • + *
    • SMARTY_PHP_ALLOW -> execute php tags
    • + *
    + * + * @var integer + */ + var $php_handling = SMARTY_PHP_PASSTHRU; + + /** + * This enables template security. When enabled, many things are restricted + * in the templates that normally would go unchecked. This is useful when + * untrusted parties are editing templates and you want a reasonable level + * of security. (no direct execution of PHP in templates for example) + * + * @var boolean + */ + var $security = false; + + /** + * This is the list of template directories that are considered secure. This + * is used only if {@link $security} is enabled. One directory per array + * element. {@link $template_dir} is in this list implicitly. + * + * @var array + */ + var $secure_dir = array(); + + /** + * These are the security settings for Smarty. They are used only when + * {@link $security} is enabled. + * + * @var array + */ + var $security_settings = array( + 'PHP_HANDLING' => false, + 'IF_FUNCS' => array('array', 'list', + 'isset', 'empty', + 'count', 'sizeof', + 'in_array', 'is_array', + 'true', 'false', 'null'), + 'INCLUDE_ANY' => false, + 'PHP_TAGS' => false, + 'MODIFIER_FUNCS' => array('count'), + 'ALLOW_CONSTANTS' => false + ); + + /** + * This is an array of directories where trusted php scripts reside. + * {@link $security} is disabled during their inclusion/execution. + * + * @var array + */ + var $trusted_dir = array(); + + /** + * The left delimiter used for the template tags. + * + * @var string + */ + var $left_delimiter = '{'; + + /** + * The right delimiter used for the template tags. + * + * @var string + */ + var $right_delimiter = '}'; + + /** + * The order in which request variables are registered, similar to + * variables_order in php.ini E = Environment, G = GET, P = POST, + * C = Cookies, S = Server + * + * @var string + */ + var $request_vars_order = 'EGPCS'; + + /** + * Indicates wether $HTTP_*_VARS[] (request_use_auto_globals=false) + * are uses as request-vars or $_*[]-vars. note: if + * request_use_auto_globals is true, then $request_vars_order has + * no effect, but the php-ini-value "gpc_order" + * + * @var boolean + */ + var $request_use_auto_globals = true; + + /** + * Set this if you want different sets of compiled files for the same + * templates. This is useful for things like different languages. + * Instead of creating separate sets of templates per language, you + * set different compile_ids like 'en' and 'de'. + * + * @var string + */ + var $compile_id = null; + + /** + * This tells Smarty whether or not to use sub dirs in the cache/ and + * templates_c/ directories. sub directories better organized, but + * may not work well with PHP safe mode enabled. + * + * @var boolean + * + */ + var $use_sub_dirs = false; + + /** + * This is a list of the modifiers to apply to all template variables. + * Put each modifier in a separate array element in the order you want + * them applied. example: array('escape:"htmlall"'); + * + * @var array + */ + var $default_modifiers = array(); + + /** + * This is the resource type to be used when not specified + * at the beginning of the resource path. examples: + * $smarty->display('file:index.tpl'); + * $smarty->display('db:index.tpl'); + * $smarty->display('index.tpl'); // will use default resource type + * {include file="file:index.tpl"} + * {include file="db:index.tpl"} + * {include file="index.tpl"} {* will use default resource type *} + * + * @var array + */ + var $default_resource_type = 'file'; + + /** + * The function used for cache file handling. If not set, built-in caching is used. + * + * @var null|string function name + */ + var $cache_handler_func = null; + + /** + * This indicates which filters are automatically loaded into Smarty. + * + * @var array array of filter names + */ + var $autoload_filters = array(); + + /**#@+ + * @var boolean + */ + /** + * This tells if config file vars of the same name overwrite each other or not. + * if disabled, same name variables are accumulated in an array. + */ + var $config_overwrite = true; + + /** + * This tells whether or not to automatically booleanize config file variables. + * If enabled, then the strings "on", "true", and "yes" are treated as boolean + * true, and "off", "false" and "no" are treated as boolean false. + */ + var $config_booleanize = true; + + /** + * This tells whether hidden sections [.foobar] are readable from the + * tempalates or not. Normally you would never allow this since that is + * the point behind hidden sections: the application can access them, but + * the templates cannot. + */ + var $config_read_hidden = false; + + /** + * This tells whether or not automatically fix newlines in config files. + * It basically converts \r (mac) or \r\n (dos) to \n + */ + var $config_fix_newlines = true; + /**#@-*/ + + /** + * If a template cannot be found, this PHP function will be executed. + * Useful for creating templates on-the-fly or other special action. + * + * @var string function name + */ + var $default_template_handler_func = ''; + + /** + * The file that contains the compiler class. This can a full + * pathname, or relative to the php_include path. + * + * @var string + */ + var $compiler_file = 'Smarty_Compiler.class.php'; + + /** + * The class used for compiling templates. + * + * @var string + */ + var $compiler_class = 'Smarty_Compiler'; + + /** + * The class used to load config vars. + * + * @var string + */ + var $config_class = 'Config_File'; + +/**#@+ + * END Smarty Configuration Section + * There should be no need to touch anything below this line. + * @access private + */ + /** + * where assigned template vars are kept + * + * @var array + */ + var $_tpl_vars = array(); + + /** + * stores run-time $smarty.* vars + * + * @var null|array + */ + var $_smarty_vars = null; + + /** + * keeps track of sections + * + * @var array + */ + var $_sections = array(); + + /** + * keeps track of foreach blocks + * + * @var array + */ + var $_foreach = array(); + + /** + * keeps track of tag hierarchy + * + * @var array + */ + var $_tag_stack = array(); + + /** + * configuration object + * + * @var Config_file + */ + var $_conf_obj = null; + + /** + * loaded configuration settings + * + * @var array + */ + var $_config = array(array('vars' => array(), 'files' => array())); + + /** + * md5 checksum of the string 'Smarty' + * + * @var string + */ + var $_smarty_md5 = 'f8d698aea36fcbead2b9d5359ffca76f'; + + /** + * Smarty version number + * + * @var string + */ + var $_version = '2.6.16'; + + /** + * current template inclusion depth + * + * @var integer + */ + var $_inclusion_depth = 0; + + /** + * for different compiled templates + * + * @var string + */ + var $_compile_id = null; + + /** + * text in URL to enable debug mode + * + * @var string + */ + var $_smarty_debug_id = 'SMARTY_DEBUG'; + + /** + * debugging information for debug console + * + * @var array + */ + var $_smarty_debug_info = array(); + + /** + * info that makes up a cache file + * + * @var array + */ + var $_cache_info = array(); + + /** + * default file permissions + * + * @var integer + */ + var $_file_perms = 0644; + + /** + * default dir permissions + * + * @var integer + */ + var $_dir_perms = 0771; + + /** + * registered objects + * + * @var array + */ + var $_reg_objects = array(); + + /** + * table keeping track of plugins + * + * @var array + */ + var $_plugins = array( + 'modifier' => array(), + 'function' => array(), + 'block' => array(), + 'compiler' => array(), + 'prefilter' => array(), + 'postfilter' => array(), + 'outputfilter' => array(), + 'resource' => array(), + 'insert' => array()); + + + /** + * cache serials + * + * @var array + */ + var $_cache_serials = array(); + + /** + * name of optional cache include file + * + * @var string + */ + var $_cache_include = null; + + /** + * indicate if the current code is used in a compiled + * include + * + * @var string + */ + var $_cache_including = false; + + /**#@-*/ + /** + * The class constructor. + */ + function Smarty() + { + $this->assign('SCRIPT_NAME', isset($_SERVER['SCRIPT_NAME']) ? $_SERVER['SCRIPT_NAME'] + : @$GLOBALS['HTTP_SERVER_VARS']['SCRIPT_NAME']); + } + + /** + * assigns values to template variables + * + * @param array|string $tpl_var the template variable name(s) + * @param mixed $value the value to assign + */ + function assign($tpl_var, $value = null) + { + if (is_array($tpl_var)){ + foreach ($tpl_var as $key => $val) { + if ($key != '') { + $this->_tpl_vars[$key] = $val; + } + } + } else { + if ($tpl_var != '') + $this->_tpl_vars[$tpl_var] = $value; + } + } + + /** + * assigns values to template variables by reference + * + * @param string $tpl_var the template variable name + * @param mixed $value the referenced value to assign + */ + function assign_by_ref($tpl_var, &$value) + { + if ($tpl_var != '') + $this->_tpl_vars[$tpl_var] = &$value; + } + + /** + * appends values to template variables + * + * @param array|string $tpl_var the template variable name(s) + * @param mixed $value the value to append + */ + function append($tpl_var, $value=null, $merge=false) + { + if (is_array($tpl_var)) { + // $tpl_var is an array, ignore $value + foreach ($tpl_var as $_key => $_val) { + if ($_key != '') { + if(!@is_array($this->_tpl_vars[$_key])) { + settype($this->_tpl_vars[$_key],'array'); + } + if($merge && is_array($_val)) { + foreach($_val as $_mkey => $_mval) { + $this->_tpl_vars[$_key][$_mkey] = $_mval; + } + } else { + $this->_tpl_vars[$_key][] = $_val; + } + } + } + } else { + if ($tpl_var != '' && isset($value)) { + if(!@is_array($this->_tpl_vars[$tpl_var])) { + settype($this->_tpl_vars[$tpl_var],'array'); + } + if($merge && is_array($value)) { + foreach($value as $_mkey => $_mval) { + $this->_tpl_vars[$tpl_var][$_mkey] = $_mval; + } + } else { + $this->_tpl_vars[$tpl_var][] = $value; + } + } + } + } + + /** + * appends values to template variables by reference + * + * @param string $tpl_var the template variable name + * @param mixed $value the referenced value to append + */ + function append_by_ref($tpl_var, &$value, $merge=false) + { + if ($tpl_var != '' && isset($value)) { + if(!@is_array($this->_tpl_vars[$tpl_var])) { + settype($this->_tpl_vars[$tpl_var],'array'); + } + if ($merge && is_array($value)) { + foreach($value as $_key => $_val) { + $this->_tpl_vars[$tpl_var][$_key] = &$value[$_key]; + } + } else { + $this->_tpl_vars[$tpl_var][] = &$value; + } + } + } + + + /** + * clear the given assigned template variable. + * + * @param string $tpl_var the template variable to clear + */ + function clear_assign($tpl_var) + { + if (is_array($tpl_var)) + foreach ($tpl_var as $curr_var) + unset($this->_tpl_vars[$curr_var]); + else + unset($this->_tpl_vars[$tpl_var]); + } + + + /** + * Registers custom function to be used in templates + * + * @param string $function the name of the template function + * @param string $function_impl the name of the PHP function to register + */ + function register_function($function, $function_impl, $cacheable=true, $cache_attrs=null) + { + $this->_plugins['function'][$function] = + array($function_impl, null, null, false, $cacheable, $cache_attrs); + + } + + /** + * Unregisters custom function + * + * @param string $function name of template function + */ + function unregister_function($function) + { + unset($this->_plugins['function'][$function]); + } + + /** + * Registers object to be used in templates + * + * @param string $object name of template object + * @param object &$object_impl the referenced PHP object to register + * @param null|array $allowed list of allowed methods (empty = all) + * @param boolean $smarty_args smarty argument format, else traditional + * @param null|array $block_functs list of methods that are block format + */ + function register_object($object, &$object_impl, $allowed = array(), $smarty_args = true, $block_methods = array()) + { + settype($allowed, 'array'); + settype($smarty_args, 'boolean'); + $this->_reg_objects[$object] = + array(&$object_impl, $allowed, $smarty_args, $block_methods); + } + + /** + * Unregisters object + * + * @param string $object name of template object + */ + function unregister_object($object) + { + unset($this->_reg_objects[$object]); + } + + + /** + * Registers block function to be used in templates + * + * @param string $block name of template block + * @param string $block_impl PHP function to register + */ + function register_block($block, $block_impl, $cacheable=true, $cache_attrs=null) + { + $this->_plugins['block'][$block] = + array($block_impl, null, null, false, $cacheable, $cache_attrs); + } + + /** + * Unregisters block function + * + * @param string $block name of template function + */ + function unregister_block($block) + { + unset($this->_plugins['block'][$block]); + } + + /** + * Registers compiler function + * + * @param string $function name of template function + * @param string $function_impl name of PHP function to register + */ + function register_compiler_function($function, $function_impl, $cacheable=true) + { + $this->_plugins['compiler'][$function] = + array($function_impl, null, null, false, $cacheable); + } + + /** + * Unregisters compiler function + * + * @param string $function name of template function + */ + function unregister_compiler_function($function) + { + unset($this->_plugins['compiler'][$function]); + } + + /** + * Registers modifier to be used in templates + * + * @param string $modifier name of template modifier + * @param string $modifier_impl name of PHP function to register + */ + function register_modifier($modifier, $modifier_impl) + { + $this->_plugins['modifier'][$modifier] = + array($modifier_impl, null, null, false); + } + + /** + * Unregisters modifier + * + * @param string $modifier name of template modifier + */ + function unregister_modifier($modifier) + { + unset($this->_plugins['modifier'][$modifier]); + } + + /** + * Registers a resource to fetch a template + * + * @param string $type name of resource + * @param array $functions array of functions to handle resource + */ + function register_resource($type, $functions) + { + if (count($functions)==4) { + $this->_plugins['resource'][$type] = + array($functions, false); + + } elseif (count($functions)==5) { + $this->_plugins['resource'][$type] = + array(array(array(&$functions[0], $functions[1]) + ,array(&$functions[0], $functions[2]) + ,array(&$functions[0], $functions[3]) + ,array(&$functions[0], $functions[4])) + ,false); + + } else { + $this->trigger_error("malformed function-list for '$type' in register_resource"); + + } + } + + /** + * Unregisters a resource + * + * @param string $type name of resource + */ + function unregister_resource($type) + { + unset($this->_plugins['resource'][$type]); + } + + /** + * Registers a prefilter function to apply + * to a template before compiling + * + * @param string $function name of PHP function to register + */ + function register_prefilter($function) + { + $_name = (is_array($function)) ? $function[1] : $function; + $this->_plugins['prefilter'][$_name] + = array($function, null, null, false); + } + + /** + * Unregisters a prefilter function + * + * @param string $function name of PHP function + */ + function unregister_prefilter($function) + { + unset($this->_plugins['prefilter'][$function]); + } + + /** + * Registers a postfilter function to apply + * to a compiled template after compilation + * + * @param string $function name of PHP function to register + */ + function register_postfilter($function) + { + $_name = (is_array($function)) ? $function[1] : $function; + $this->_plugins['postfilter'][$_name] + = array($function, null, null, false); + } + + /** + * Unregisters a postfilter function + * + * @param string $function name of PHP function + */ + function unregister_postfilter($function) + { + unset($this->_plugins['postfilter'][$function]); + } + + /** + * Registers an output filter function to apply + * to a template output + * + * @param string $function name of PHP function + */ + function register_outputfilter($function) + { + $_name = (is_array($function)) ? $function[1] : $function; + $this->_plugins['outputfilter'][$_name] + = array($function, null, null, false); + } + + /** + * Unregisters an outputfilter function + * + * @param string $function name of PHP function + */ + function unregister_outputfilter($function) + { + unset($this->_plugins['outputfilter'][$function]); + } + + /** + * load a filter of specified type and name + * + * @param string $type filter type + * @param string $name filter name + */ + function load_filter($type, $name) + { + switch ($type) { + case 'output': + $_params = array('plugins' => array(array($type . 'filter', $name, null, null, false))); + require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); + smarty_core_load_plugins($_params, $this); + break; + + case 'pre': + case 'post': + if (!isset($this->_plugins[$type . 'filter'][$name])) + $this->_plugins[$type . 'filter'][$name] = false; + break; + } + } + + /** + * clear cached content for the given template and cache id + * + * @param string $tpl_file name of template file + * @param string $cache_id name of cache_id + * @param string $compile_id name of compile_id + * @param string $exp_time expiration time + * @return boolean + */ + function clear_cache($tpl_file = null, $cache_id = null, $compile_id = null, $exp_time = null) + { + + if (!isset($compile_id)) + $compile_id = $this->compile_id; + + if (!isset($tpl_file)) + $compile_id = null; + + $_auto_id = $this->_get_auto_id($cache_id, $compile_id); + + if (!empty($this->cache_handler_func)) { + return call_user_func_array($this->cache_handler_func, + array('clear', &$this, &$dummy, $tpl_file, $cache_id, $compile_id, $exp_time)); + } else { + $_params = array('auto_base' => $this->cache_dir, + 'auto_source' => $tpl_file, + 'auto_id' => $_auto_id, + 'exp_time' => $exp_time); + require_once(SMARTY_CORE_DIR . 'core.rm_auto.php'); + return smarty_core_rm_auto($_params, $this); + } + + } + + + /** + * clear the entire contents of cache (all templates) + * + * @param string $exp_time expire time + * @return boolean results of {@link smarty_core_rm_auto()} + */ + function clear_all_cache($exp_time = null) + { + return $this->clear_cache(null, null, null, $exp_time); + } + + + /** + * test to see if valid cache exists for this template + * + * @param string $tpl_file name of template file + * @param string $cache_id + * @param string $compile_id + * @return string|false results of {@link _read_cache_file()} + */ + function is_cached($tpl_file, $cache_id = null, $compile_id = null) + { + if (!$this->caching) + return false; + + if (!isset($compile_id)) + $compile_id = $this->compile_id; + + $_params = array( + 'tpl_file' => $tpl_file, + 'cache_id' => $cache_id, + 'compile_id' => $compile_id + ); + require_once(SMARTY_CORE_DIR . 'core.read_cache_file.php'); + return smarty_core_read_cache_file($_params, $this); + } + + + /** + * clear all the assigned template variables. + * + */ + function clear_all_assign() + { + $this->_tpl_vars = array(); + } + + /** + * clears compiled version of specified template resource, + * or all compiled template files if one is not specified. + * This function is for advanced use only, not normally needed. + * + * @param string $tpl_file + * @param string $compile_id + * @param string $exp_time + * @return boolean results of {@link smarty_core_rm_auto()} + */ + function clear_compiled_tpl($tpl_file = null, $compile_id = null, $exp_time = null) + { + if (!isset($compile_id)) { + $compile_id = $this->compile_id; + } + $_params = array('auto_base' => $this->compile_dir, + 'auto_source' => $tpl_file, + 'auto_id' => $compile_id, + 'exp_time' => $exp_time, + 'extensions' => array('.inc', '.php')); + require_once(SMARTY_CORE_DIR . 'core.rm_auto.php'); + return smarty_core_rm_auto($_params, $this); + } + + /** + * Checks whether requested template exists. + * + * @param string $tpl_file + * @return boolean + */ + function template_exists($tpl_file) + { + $_params = array('resource_name' => $tpl_file, 'quiet'=>true, 'get_source'=>false); + return $this->_fetch_resource_info($_params); + } + + /** + * Returns an array containing template variables + * + * @param string $name + * @param string $type + * @return array + */ + function &get_template_vars($name=null) + { + if(!isset($name)) { + return $this->_tpl_vars; + } elseif(isset($this->_tpl_vars[$name])) { + return $this->_tpl_vars[$name]; + } else { + // var non-existant, return valid reference + $_tmp = null; + return $_tmp; + } + } + + /** + * Returns an array containing config variables + * + * @param string $name + * @param string $type + * @return array + */ + function &get_config_vars($name=null) + { + if(!isset($name) && is_array($this->_config[0])) { + return $this->_config[0]['vars']; + } else if(isset($this->_config[0]['vars'][$name])) { + return $this->_config[0]['vars'][$name]; + } else { + // var non-existant, return valid reference + $_tmp = null; + return $_tmp; + } + } + + /** + * trigger Smarty error + * + * @param string $error_msg + * @param integer $error_type + */ + function trigger_error($error_msg, $error_type = E_USER_WARNING) + { + trigger_error("Smarty error: $error_msg", $error_type); + } + + + /** + * executes & displays the template results + * + * @param string $resource_name + * @param string $cache_id + * @param string $compile_id + */ + function display($resource_name, $cache_id = null, $compile_id = null) + { + $this->fetch($resource_name, $cache_id, $compile_id, true); + } + + /** + * executes & returns or displays the template results + * + * @param string $resource_name + * @param string $cache_id + * @param string $compile_id + * @param boolean $display + */ + function fetch($resource_name, $cache_id = null, $compile_id = null, $display = false) + { + static $_cache_info = array(); + + $_smarty_old_error_level = $this->debugging ? error_reporting() : error_reporting(isset($this->error_reporting) + ? $this->error_reporting : error_reporting() & ~E_NOTICE); + + if (!$this->debugging && $this->debugging_ctrl == 'URL') { + $_query_string = $this->request_use_auto_globals ? $_SERVER['QUERY_STRING'] : $GLOBALS['HTTP_SERVER_VARS']['QUERY_STRING']; + if (@strstr($_query_string, $this->_smarty_debug_id)) { + if (@strstr($_query_string, $this->_smarty_debug_id . '=on')) { + // enable debugging for this browser session + @setcookie('SMARTY_DEBUG', true); + $this->debugging = true; + } elseif (@strstr($_query_string, $this->_smarty_debug_id . '=off')) { + // disable debugging for this browser session + @setcookie('SMARTY_DEBUG', false); + $this->debugging = false; + } else { + // enable debugging for this page + $this->debugging = true; + } + } else { + $this->debugging = (bool)($this->request_use_auto_globals ? @$_COOKIE['SMARTY_DEBUG'] : @$GLOBALS['HTTP_COOKIE_VARS']['SMARTY_DEBUG']); + } + } + + if ($this->debugging) { + // capture time for debugging info + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $_debug_start_time = smarty_core_get_microtime($_params, $this); + $this->_smarty_debug_info[] = array('type' => 'template', + 'filename' => $resource_name, + 'depth' => 0); + $_included_tpls_idx = count($this->_smarty_debug_info) - 1; + } + + if (!isset($compile_id)) { + $compile_id = $this->compile_id; + } + + $this->_compile_id = $compile_id; + $this->_inclusion_depth = 0; + + if ($this->caching) { + // save old cache_info, initialize cache_info + array_push($_cache_info, $this->_cache_info); + $this->_cache_info = array(); + $_params = array( + 'tpl_file' => $resource_name, + 'cache_id' => $cache_id, + 'compile_id' => $compile_id, + 'results' => null + ); + require_once(SMARTY_CORE_DIR . 'core.read_cache_file.php'); + if (smarty_core_read_cache_file($_params, $this)) { + $_smarty_results = $_params['results']; + if (!empty($this->_cache_info['insert_tags'])) { + $_params = array('plugins' => $this->_cache_info['insert_tags']); + require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); + smarty_core_load_plugins($_params, $this); + $_params = array('results' => $_smarty_results); + require_once(SMARTY_CORE_DIR . 'core.process_cached_inserts.php'); + $_smarty_results = smarty_core_process_cached_inserts($_params, $this); + } + if (!empty($this->_cache_info['cache_serials'])) { + $_params = array('results' => $_smarty_results); + require_once(SMARTY_CORE_DIR . 'core.process_compiled_include.php'); + $_smarty_results = smarty_core_process_compiled_include($_params, $this); + } + + + if ($display) { + if ($this->debugging) + { + // capture time for debugging info + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $this->_smarty_debug_info[$_included_tpls_idx]['exec_time'] = smarty_core_get_microtime($_params, $this) - $_debug_start_time; + require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php'); + $_smarty_results .= smarty_core_display_debug_console($_params, $this); + } + if ($this->cache_modified_check) { + $_server_vars = ($this->request_use_auto_globals) ? $_SERVER : $GLOBALS['HTTP_SERVER_VARS']; + $_last_modified_date = @substr($_server_vars['HTTP_IF_MODIFIED_SINCE'], 0, strpos($_server_vars['HTTP_IF_MODIFIED_SINCE'], 'GMT') + 3); + $_gmt_mtime = gmdate('D, d M Y H:i:s', $this->_cache_info['timestamp']).' GMT'; + if (@count($this->_cache_info['insert_tags']) == 0 + && !$this->_cache_serials + && $_gmt_mtime == $_last_modified_date) { + if (php_sapi_name()=='cgi') + header('Status: 304 Not Modified'); + else + header('HTTP/1.1 304 Not Modified'); + + } else { + header('Last-Modified: '.$_gmt_mtime); + echo $_smarty_results; + } + } else { + echo $_smarty_results; + } + error_reporting($_smarty_old_error_level); + // restore initial cache_info + $this->_cache_info = array_pop($_cache_info); + return true; + } else { + error_reporting($_smarty_old_error_level); + // restore initial cache_info + $this->_cache_info = array_pop($_cache_info); + return $_smarty_results; + } + } else { + $this->_cache_info['template'][$resource_name] = true; + if ($this->cache_modified_check && $display) { + header('Last-Modified: '.gmdate('D, d M Y H:i:s', time()).' GMT'); + } + } + } + + // load filters that are marked as autoload + if (count($this->autoload_filters)) { + foreach ($this->autoload_filters as $_filter_type => $_filters) { + foreach ($_filters as $_filter) { + $this->load_filter($_filter_type, $_filter); + } + } + } + + $_smarty_compile_path = $this->_get_compile_path($resource_name); + + // if we just need to display the results, don't perform output + // buffering - for speed + $_cache_including = $this->_cache_including; + $this->_cache_including = false; + if ($display && !$this->caching && count($this->_plugins['outputfilter']) == 0) { + if ($this->_is_compiled($resource_name, $_smarty_compile_path) + || $this->_compile_resource($resource_name, $_smarty_compile_path)) + { + include($_smarty_compile_path); + } + } else { + ob_start(); + if ($this->_is_compiled($resource_name, $_smarty_compile_path) + || $this->_compile_resource($resource_name, $_smarty_compile_path)) + { + include($_smarty_compile_path); + } + $_smarty_results = ob_get_contents(); + ob_end_clean(); + + foreach ((array)$this->_plugins['outputfilter'] as $_output_filter) { + $_smarty_results = call_user_func_array($_output_filter[0], array($_smarty_results, &$this)); + } + } + + if ($this->caching) { + $_params = array('tpl_file' => $resource_name, + 'cache_id' => $cache_id, + 'compile_id' => $compile_id, + 'results' => $_smarty_results); + require_once(SMARTY_CORE_DIR . 'core.write_cache_file.php'); + smarty_core_write_cache_file($_params, $this); + require_once(SMARTY_CORE_DIR . 'core.process_cached_inserts.php'); + $_smarty_results = smarty_core_process_cached_inserts($_params, $this); + + if ($this->_cache_serials) { + // strip nocache-tags from output + $_smarty_results = preg_replace('!(\{/?nocache\:[0-9a-f]{32}#\d+\})!s' + ,'' + ,$_smarty_results); + } + // restore initial cache_info + $this->_cache_info = array_pop($_cache_info); + } + $this->_cache_including = $_cache_including; + + if ($display) { + if (isset($_smarty_results)) { echo $_smarty_results; } + if ($this->debugging) { + // capture time for debugging info + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $this->_smarty_debug_info[$_included_tpls_idx]['exec_time'] = (smarty_core_get_microtime($_params, $this) - $_debug_start_time); + require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php'); + echo smarty_core_display_debug_console($_params, $this); + } + error_reporting($_smarty_old_error_level); + return; + } else { + error_reporting($_smarty_old_error_level); + if (isset($_smarty_results)) { return $_smarty_results; } + } + } + + /** + * load configuration values + * + * @param string $file + * @param string $section + * @param string $scope + */ + function config_load($file, $section = null, $scope = 'global') + { + require_once($this->_get_plugin_filepath('function', 'config_load')); + smarty_function_config_load(array('file' => $file, 'section' => $section, 'scope' => $scope), $this); + } + + /** + * return a reference to a registered object + * + * @param string $name + * @return object + */ + function &get_registered_object($name) { + if (!isset($this->_reg_objects[$name])) + $this->_trigger_fatal_error("'$name' is not a registered object"); + + if (!is_object($this->_reg_objects[$name][0])) + $this->_trigger_fatal_error("registered '$name' is not an object"); + + return $this->_reg_objects[$name][0]; + } + + /** + * clear configuration values + * + * @param string $var + */ + function clear_config($var = null) + { + if(!isset($var)) { + // clear all values + $this->_config = array(array('vars' => array(), + 'files' => array())); + } else { + unset($this->_config[0]['vars'][$var]); + } + } + + /** + * get filepath of requested plugin + * + * @param string $type + * @param string $name + * @return string|false + */ + function _get_plugin_filepath($type, $name) + { + $_params = array('type' => $type, 'name' => $name); + require_once(SMARTY_CORE_DIR . 'core.assemble_plugin_filepath.php'); + return smarty_core_assemble_plugin_filepath($_params, $this); + } + + /** + * test if resource needs compiling + * + * @param string $resource_name + * @param string $compile_path + * @return boolean + */ + function _is_compiled($resource_name, $compile_path) + { + if (!$this->force_compile && file_exists($compile_path)) { + if (!$this->compile_check) { + // no need to check compiled file + return true; + } else { + // get file source and timestamp + $_params = array('resource_name' => $resource_name, 'get_source'=>false); + if (!$this->_fetch_resource_info($_params)) { + return false; + } + if ($_params['resource_timestamp'] <= filemtime($compile_path)) { + // template not expired, no recompile + return true; + } else { + // compile template + return false; + } + } + } else { + // compiled template does not exist, or forced compile + return false; + } + } + + /** + * compile the template + * + * @param string $resource_name + * @param string $compile_path + * @return boolean + */ + function _compile_resource($resource_name, $compile_path) + { + + $_params = array('resource_name' => $resource_name); + if (!$this->_fetch_resource_info($_params)) { + return false; + } + + $_source_content = $_params['source_content']; + $_cache_include = substr($compile_path, 0, -4).'.inc'; + + if ($this->_compile_source($resource_name, $_source_content, $_compiled_content, $_cache_include)) { + // if a _cache_serial was set, we also have to write an include-file: + if ($this->_cache_include_info) { + require_once(SMARTY_CORE_DIR . 'core.write_compiled_include.php'); + smarty_core_write_compiled_include(array_merge($this->_cache_include_info, array('compiled_content'=>$_compiled_content, 'resource_name'=>$resource_name)), $this); + } + + $_params = array('compile_path'=>$compile_path, 'compiled_content' => $_compiled_content); + require_once(SMARTY_CORE_DIR . 'core.write_compiled_resource.php'); + smarty_core_write_compiled_resource($_params, $this); + + return true; + } else { + return false; + } + + } + + /** + * compile the given source + * + * @param string $resource_name + * @param string $source_content + * @param string $compiled_content + * @return boolean + */ + function _compile_source($resource_name, &$source_content, &$compiled_content, $cache_include_path=null) + { + if (file_exists(SMARTY_DIR . $this->compiler_file)) { + require_once(SMARTY_DIR . $this->compiler_file); + } else { + // use include_path + require_once($this->compiler_file); + } + + + $smarty_compiler = new $this->compiler_class; + + $smarty_compiler->template_dir = $this->template_dir; + $smarty_compiler->compile_dir = $this->compile_dir; + $smarty_compiler->plugins_dir = $this->plugins_dir; + $smarty_compiler->config_dir = $this->config_dir; + $smarty_compiler->force_compile = $this->force_compile; + $smarty_compiler->caching = $this->caching; + $smarty_compiler->php_handling = $this->php_handling; + $smarty_compiler->left_delimiter = $this->left_delimiter; + $smarty_compiler->right_delimiter = $this->right_delimiter; + $smarty_compiler->_version = $this->_version; + $smarty_compiler->security = $this->security; + $smarty_compiler->secure_dir = $this->secure_dir; + $smarty_compiler->security_settings = $this->security_settings; + $smarty_compiler->trusted_dir = $this->trusted_dir; + $smarty_compiler->use_sub_dirs = $this->use_sub_dirs; + $smarty_compiler->_reg_objects = &$this->_reg_objects; + $smarty_compiler->_plugins = &$this->_plugins; + $smarty_compiler->_tpl_vars = &$this->_tpl_vars; + $smarty_compiler->default_modifiers = $this->default_modifiers; + $smarty_compiler->compile_id = $this->_compile_id; + $smarty_compiler->_config = $this->_config; + $smarty_compiler->request_use_auto_globals = $this->request_use_auto_globals; + + if (isset($cache_include_path) && isset($this->_cache_serials[$cache_include_path])) { + $smarty_compiler->_cache_serial = $this->_cache_serials[$cache_include_path]; + } + $smarty_compiler->_cache_include = $cache_include_path; + + + $_results = $smarty_compiler->_compile_file($resource_name, $source_content, $compiled_content); + + if ($smarty_compiler->_cache_serial) { + $this->_cache_include_info = array( + 'cache_serial'=>$smarty_compiler->_cache_serial + ,'plugins_code'=>$smarty_compiler->_plugins_code + ,'include_file_path' => $cache_include_path); + + } else { + $this->_cache_include_info = null; + + } + + return $_results; + } + + /** + * Get the compile path for this resource + * + * @param string $resource_name + * @return string results of {@link _get_auto_filename()} + */ + function _get_compile_path($resource_name) + { + return $this->_get_auto_filename($this->compile_dir, $resource_name, + $this->_compile_id) . '.php'; + } + + /** + * fetch the template info. Gets timestamp, and source + * if get_source is true + * + * sets $source_content to the source of the template, and + * $resource_timestamp to its time stamp + * @param string $resource_name + * @param string $source_content + * @param integer $resource_timestamp + * @param boolean $get_source + * @param boolean $quiet + * @return boolean + */ + + function _fetch_resource_info(&$params) + { + if(!isset($params['get_source'])) { $params['get_source'] = true; } + if(!isset($params['quiet'])) { $params['quiet'] = false; } + + $_return = false; + $_params = array('resource_name' => $params['resource_name']) ; + if (isset($params['resource_base_path'])) + $_params['resource_base_path'] = $params['resource_base_path']; + else + $_params['resource_base_path'] = $this->template_dir; + + if ($this->_parse_resource_name($_params)) { + $_resource_type = $_params['resource_type']; + $_resource_name = $_params['resource_name']; + switch ($_resource_type) { + case 'file': + if ($params['get_source']) { + $params['source_content'] = $this->_read_file($_resource_name); + } + $params['resource_timestamp'] = filemtime($_resource_name); + $_return = is_file($_resource_name); + break; + + default: + // call resource functions to fetch the template source and timestamp + if ($params['get_source']) { + $_source_return = isset($this->_plugins['resource'][$_resource_type]) && + call_user_func_array($this->_plugins['resource'][$_resource_type][0][0], + array($_resource_name, &$params['source_content'], &$this)); + } else { + $_source_return = true; + } + + $_timestamp_return = isset($this->_plugins['resource'][$_resource_type]) && + call_user_func_array($this->_plugins['resource'][$_resource_type][0][1], + array($_resource_name, &$params['resource_timestamp'], &$this)); + + $_return = $_source_return && $_timestamp_return; + break; + } + } + + if (!$_return) { + // see if we can get a template with the default template handler + if (!empty($this->default_template_handler_func)) { + if (!is_callable($this->default_template_handler_func)) { + $this->trigger_error("default template handler function \"$this->default_template_handler_func\" doesn't exist."); + } else { + $_return = call_user_func_array( + $this->default_template_handler_func, + array($_params['resource_type'], $_params['resource_name'], &$params['source_content'], &$params['resource_timestamp'], &$this)); + } + } + } + + if (!$_return) { + if (!$params['quiet']) { + $this->trigger_error('unable to read resource: "' . $params['resource_name'] . '"'); + } + } else if ($_return && $this->security) { + require_once(SMARTY_CORE_DIR . 'core.is_secure.php'); + if (!smarty_core_is_secure($_params, $this)) { + if (!$params['quiet']) + $this->trigger_error('(secure mode) accessing "' . $params['resource_name'] . '" is not allowed'); + $params['source_content'] = null; + $params['resource_timestamp'] = null; + return false; + } + } + return $_return; + } + + + /** + * parse out the type and name from the resource + * + * @param string $resource_base_path + * @param string $resource_name + * @param string $resource_type + * @param string $resource_name + * @return boolean + */ + + function _parse_resource_name(&$params) + { + + // split tpl_path by the first colon + $_resource_name_parts = explode(':', $params['resource_name'], 2); + + if (count($_resource_name_parts) == 1) { + // no resource type given + $params['resource_type'] = $this->default_resource_type; + $params['resource_name'] = $_resource_name_parts[0]; + } else { + if(strlen($_resource_name_parts[0]) == 1) { + // 1 char is not resource type, but part of filepath + $params['resource_type'] = $this->default_resource_type; + $params['resource_name'] = $params['resource_name']; + } else { + $params['resource_type'] = $_resource_name_parts[0]; + $params['resource_name'] = $_resource_name_parts[1]; + } + } + + if ($params['resource_type'] == 'file') { + if (!preg_match('/^([\/\\\\]|[a-zA-Z]:[\/\\\\])/', $params['resource_name'])) { + // relative pathname to $params['resource_base_path'] + // use the first directory where the file is found + foreach ((array)$params['resource_base_path'] as $_curr_path) { + $_fullpath = $_curr_path . DIRECTORY_SEPARATOR . $params['resource_name']; + if (file_exists($_fullpath) && is_file($_fullpath)) { + $params['resource_name'] = $_fullpath; + return true; + } + // didn't find the file, try include_path + $_params = array('file_path' => $_fullpath); + require_once(SMARTY_CORE_DIR . 'core.get_include_path.php'); + if(smarty_core_get_include_path($_params, $this)) { + $params['resource_name'] = $_params['new_file_path']; + return true; + } + } + return false; + } else { + /* absolute path */ + return file_exists($params['resource_name']); + } + } elseif (empty($this->_plugins['resource'][$params['resource_type']])) { + $_params = array('type' => $params['resource_type']); + require_once(SMARTY_CORE_DIR . 'core.load_resource_plugin.php'); + smarty_core_load_resource_plugin($_params, $this); + } + + return true; + } + + + /** + * Handle modifiers + * + * @param string|null $modifier_name + * @param array|null $map_array + * @return string result of modifiers + */ + function _run_mod_handler() + { + $_args = func_get_args(); + list($_modifier_name, $_map_array) = array_splice($_args, 0, 2); + list($_func_name, $_tpl_file, $_tpl_line) = + $this->_plugins['modifier'][$_modifier_name]; + + $_var = $_args[0]; + foreach ($_var as $_key => $_val) { + $_args[0] = $_val; + $_var[$_key] = call_user_func_array($_func_name, $_args); + } + return $_var; + } + + /** + * Remove starting and ending quotes from the string + * + * @param string $string + * @return string + */ + function _dequote($string) + { + if ((substr($string, 0, 1) == "'" || substr($string, 0, 1) == '"') && + substr($string, -1) == substr($string, 0, 1)) + return substr($string, 1, -1); + else + return $string; + } + + + /** + * read in a file + * + * @param string $filename + * @return string + */ + function _read_file($filename) + { + if ( file_exists($filename) && ($fd = @fopen($filename, 'rb')) ) { + $contents = ''; + while (!feof($fd)) { + $contents .= fread($fd, 8192); + } + fclose($fd); + return $contents; + } else { + return false; + } + } + + /** + * get a concrete filename for automagically created content + * + * @param string $auto_base + * @param string $auto_source + * @param string $auto_id + * @return string + * @staticvar string|null + * @staticvar string|null + */ + function _get_auto_filename($auto_base, $auto_source = null, $auto_id = null) + { + $_compile_dir_sep = $this->use_sub_dirs ? DIRECTORY_SEPARATOR : '^'; + $_return = $auto_base . DIRECTORY_SEPARATOR; + + if(isset($auto_id)) { + // make auto_id safe for directory names + $auto_id = str_replace('%7C',$_compile_dir_sep,(urlencode($auto_id))); + // split into separate directories + $_return .= $auto_id . $_compile_dir_sep; + } + + if(isset($auto_source)) { + // make source name safe for filename + $_filename = urlencode(basename($auto_source)); + $_crc32 = sprintf('%08X', crc32($auto_source)); + // prepend %% to avoid name conflicts with + // with $params['auto_id'] names + $_crc32 = substr($_crc32, 0, 2) . $_compile_dir_sep . + substr($_crc32, 0, 3) . $_compile_dir_sep . $_crc32; + $_return .= '%%' . $_crc32 . '%%' . $_filename; + } + + return $_return; + } + + /** + * unlink a file, possibly using expiration time + * + * @param string $resource + * @param integer $exp_time + */ + function _unlink($resource, $exp_time = null) + { + if(isset($exp_time)) { + if(time() - @filemtime($resource) >= $exp_time) { + return @unlink($resource); + } + } else { + return @unlink($resource); + } + } + + /** + * returns an auto_id for auto-file-functions + * + * @param string $cache_id + * @param string $compile_id + * @return string|null + */ + function _get_auto_id($cache_id=null, $compile_id=null) { + if (isset($cache_id)) + return (isset($compile_id)) ? $cache_id . '|' . $compile_id : $cache_id; + elseif(isset($compile_id)) + return $compile_id; + else + return null; + } + + /** + * trigger Smarty plugin error + * + * @param string $error_msg + * @param string $tpl_file + * @param integer $tpl_line + * @param string $file + * @param integer $line + * @param integer $error_type + */ + function _trigger_fatal_error($error_msg, $tpl_file = null, $tpl_line = null, + $file = null, $line = null, $error_type = E_USER_ERROR) + { + if(isset($file) && isset($line)) { + $info = ' ('.basename($file).", line $line)"; + } else { + $info = ''; + } + if (isset($tpl_line) && isset($tpl_file)) { + $this->trigger_error('[in ' . $tpl_file . ' line ' . $tpl_line . "]: $error_msg$info", $error_type); + } else { + $this->trigger_error($error_msg . $info, $error_type); + } + } + + + /** + * callback function for preg_replace, to call a non-cacheable block + * @return string + */ + function _process_compiled_include_callback($match) { + $_func = '_smarty_tplfunc_'.$match[2].'_'.$match[3]; + ob_start(); + $_func($this); + $_ret = ob_get_contents(); + ob_end_clean(); + return $_ret; + } + + + /** + * called for included templates + * + * @param string $_smarty_include_tpl_file + * @param string $_smarty_include_vars + */ + + // $_smarty_include_tpl_file, $_smarty_include_vars + + function _smarty_include($params) + { + if ($this->debugging) { + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $debug_start_time = smarty_core_get_microtime($_params, $this); + $this->_smarty_debug_info[] = array('type' => 'template', + 'filename' => $params['smarty_include_tpl_file'], + 'depth' => ++$this->_inclusion_depth); + $included_tpls_idx = count($this->_smarty_debug_info) - 1; + } + + $this->_tpl_vars = array_merge($this->_tpl_vars, $params['smarty_include_vars']); + + // config vars are treated as local, so push a copy of the + // current ones onto the front of the stack + array_unshift($this->_config, $this->_config[0]); + + $_smarty_compile_path = $this->_get_compile_path($params['smarty_include_tpl_file']); + + + if ($this->_is_compiled($params['smarty_include_tpl_file'], $_smarty_compile_path) + || $this->_compile_resource($params['smarty_include_tpl_file'], $_smarty_compile_path)) + { + include($_smarty_compile_path); + } + + // pop the local vars off the front of the stack + array_shift($this->_config); + + $this->_inclusion_depth--; + + if ($this->debugging) { + // capture time for debugging info + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $this->_smarty_debug_info[$included_tpls_idx]['exec_time'] = smarty_core_get_microtime($_params, $this) - $debug_start_time; + } + + if ($this->caching) { + $this->_cache_info['template'][$params['smarty_include_tpl_file']] = true; + } + } + + + /** + * get or set an array of cached attributes for function that is + * not cacheable + * @return array + */ + function &_smarty_cache_attrs($cache_serial, $count) { + $_cache_attrs =& $this->_cache_info['cache_attrs'][$cache_serial][$count]; + + if ($this->_cache_including) { + /* return next set of cache_attrs */ + $_return = current($_cache_attrs); + next($_cache_attrs); + return $_return; + + } else { + /* add a reference to a new set of cache_attrs */ + $_cache_attrs[] = array(); + return $_cache_attrs[count($_cache_attrs)-1]; + + } + + } + + + /** + * wrapper for include() retaining $this + * @return mixed + */ + function _include($filename, $once=false, $params=null) + { + if ($once) { + return include_once($filename); + } else { + return include($filename); + } + } + + + /** + * wrapper for eval() retaining $this + * @return mixed + */ + function _eval($code, $params=null) + { + return eval($code); + } + /**#@-*/ + +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/Smarty_Compiler.class.php b/Source/gallery2/lib/smarty/Smarty_Compiler.class.php new file mode 100644 index 0000000..47192c2 --- /dev/null +++ b/Source/gallery2/lib/smarty/Smarty_Compiler.class.php @@ -0,0 +1,2320 @@ + + * @author Andrei Zmievski + * @version 2.6.16 + * @copyright 2001-2005 New Digital Group, Inc. + * @package Smarty + */ + +/* $Id: Smarty_Compiler.class.php 15342 2006-12-01 21:14:46Z andy_st $ */ + +/** + * Template compiling class + * @package Smarty + */ +class Smarty_Compiler extends Smarty { + + // internal vars + /**#@+ + * @access private + */ + var $_folded_blocks = array(); // keeps folded template blocks + var $_current_file = null; // the current template being compiled + var $_current_line_no = 1; // line number for error messages + var $_capture_stack = array(); // keeps track of nested capture buffers + var $_plugin_info = array(); // keeps track of plugins to load + var $_init_smarty_vars = false; + var $_permitted_tokens = array('true','false','yes','no','on','off','null'); + var $_db_qstr_regexp = null; // regexps are setup in the constructor + var $_si_qstr_regexp = null; + var $_qstr_regexp = null; + var $_func_regexp = null; + var $_reg_obj_regexp = null; + var $_var_bracket_regexp = null; + var $_num_const_regexp = null; + var $_dvar_guts_regexp = null; + var $_dvar_regexp = null; + var $_cvar_regexp = null; + var $_svar_regexp = null; + var $_avar_regexp = null; + var $_mod_regexp = null; + var $_var_regexp = null; + var $_parenth_param_regexp = null; + var $_func_call_regexp = null; + var $_obj_ext_regexp = null; + var $_obj_start_regexp = null; + var $_obj_params_regexp = null; + var $_obj_call_regexp = null; + var $_cacheable_state = 0; + var $_cache_attrs_count = 0; + var $_nocache_count = 0; + var $_cache_serial = null; + var $_cache_include = null; + + var $_strip_depth = 0; + var $_additional_newline = "\n"; + + /**#@-*/ + /** + * The class constructor. + */ + function Smarty_Compiler() + { + // matches double quoted strings: + // "foobar" + // "foo\"bar" + $this->_db_qstr_regexp = '"[^"\\\\]*(?:\\\\.[^"\\\\]*)*"'; + + // matches single quoted strings: + // 'foobar' + // 'foo\'bar' + $this->_si_qstr_regexp = '\'[^\'\\\\]*(?:\\\\.[^\'\\\\]*)*\''; + + // matches single or double quoted strings + $this->_qstr_regexp = '(?:' . $this->_db_qstr_regexp . '|' . $this->_si_qstr_regexp . ')'; + + // matches bracket portion of vars + // [0] + // [foo] + // [$bar] + $this->_var_bracket_regexp = '\[\$?[\w\.]+\]'; + + // matches numerical constants + // 30 + // -12 + // 13.22 + $this->_num_const_regexp = '(?:\-?\d+(?:\.\d+)?)'; + + // matches $ vars (not objects): + // $foo + // $foo.bar + // $foo.bar.foobar + // $foo[0] + // $foo[$bar] + // $foo[5][blah] + // $foo[5].bar[$foobar][4] + $this->_dvar_math_regexp = '(?:[\+\*\/\%]|(?:-(?!>)))'; + $this->_dvar_math_var_regexp = '[\$\w\.\+\-\*\/\%\d\>\[\]]'; + $this->_dvar_guts_regexp = '\w+(?:' . $this->_var_bracket_regexp + . ')*(?:\.\$?\w+(?:' . $this->_var_bracket_regexp . ')*)*(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?'; + $this->_dvar_regexp = '\$' . $this->_dvar_guts_regexp; + + // matches config vars: + // #foo# + // #foobar123_foo# + $this->_cvar_regexp = '\#\w+\#'; + + // matches section vars: + // %foo.bar% + $this->_svar_regexp = '\%\w+\.\w+\%'; + + // matches all valid variables (no quotes, no modifiers) + $this->_avar_regexp = '(?:' . $this->_dvar_regexp . '|' + . $this->_cvar_regexp . '|' . $this->_svar_regexp . ')'; + + // matches valid variable syntax: + // $foo + // $foo + // #foo# + // #foo# + // "text" + // "text" + $this->_var_regexp = '(?:' . $this->_avar_regexp . '|' . $this->_qstr_regexp . ')'; + + // matches valid object call (one level of object nesting allowed in parameters): + // $foo->bar + // $foo->bar() + // $foo->bar("text") + // $foo->bar($foo, $bar, "text") + // $foo->bar($foo, "foo") + // $foo->bar->foo() + // $foo->bar->foo->bar() + // $foo->bar($foo->bar) + // $foo->bar($foo->bar()) + // $foo->bar($foo->bar($blah,$foo,44,"foo",$foo[0].bar)) + $this->_obj_ext_regexp = '\->(?:\$?' . $this->_dvar_guts_regexp . ')'; + $this->_obj_restricted_param_regexp = '(?:' + . '(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . ')(?:' . $this->_obj_ext_regexp . '(?:\((?:(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . ')' + . '(?:\s*,\s*(?:' . $this->_var_regexp . '|' . $this->_num_const_regexp . '))*)?\))?)*)'; + $this->_obj_single_param_regexp = '(?:\w+|' . $this->_obj_restricted_param_regexp . '(?:\s*,\s*(?:(?:\w+|' + . $this->_var_regexp . $this->_obj_restricted_param_regexp . ')))*)'; + $this->_obj_params_regexp = '\((?:' . $this->_obj_single_param_regexp + . '(?:\s*,\s*' . $this->_obj_single_param_regexp . ')*)?\)'; + $this->_obj_start_regexp = '(?:' . $this->_dvar_regexp . '(?:' . $this->_obj_ext_regexp . ')+)'; + $this->_obj_call_regexp = '(?:' . $this->_obj_start_regexp . '(?:' . $this->_obj_params_regexp . ')?(?:' . $this->_dvar_math_regexp . '(?:' . $this->_num_const_regexp . '|' . $this->_dvar_math_var_regexp . ')*)?)'; + + // matches valid modifier syntax: + // |foo + // |@foo + // |foo:"bar" + // |foo:$bar + // |foo:"bar":$foobar + // |foo|bar + // |foo:$foo->bar + $this->_mod_regexp = '(?:\|@?\w+(?::(?:\w+|' . $this->_num_const_regexp . '|' + . $this->_obj_call_regexp . '|' . $this->_avar_regexp . '|' . $this->_qstr_regexp .'))*)'; + + // matches valid function name: + // foo123 + // _foo_bar + $this->_func_regexp = '[a-zA-Z_]\w*'; + + // matches valid registered object: + // foo->bar + $this->_reg_obj_regexp = '[a-zA-Z_]\w*->[a-zA-Z_]\w*'; + + // matches valid parameter values: + // true + // $foo + // $foo|bar + // #foo# + // #foo#|bar + // "text" + // "text"|bar + // $foo->bar + $this->_param_regexp = '(?:\s*(?:' . $this->_obj_call_regexp . '|' + . $this->_var_regexp . '|' . $this->_num_const_regexp . '|\w+)(?>' . $this->_mod_regexp . '*)\s*)'; + + // matches valid parenthesised function parameters: + // + // "text" + // $foo, $bar, "text" + // $foo|bar, "foo"|bar, $foo->bar($foo)|bar + $this->_parenth_param_regexp = '(?:\((?:\w+|' + . $this->_param_regexp . '(?:\s*,\s*(?:(?:\w+|' + . $this->_param_regexp . ')))*)?\))'; + + // matches valid function call: + // foo() + // foo_bar($foo) + // _foo_bar($foo,"bar") + // foo123($foo,$foo->bar(),"foo") + $this->_func_call_regexp = '(?:' . $this->_func_regexp . '\s*(?:' + . $this->_parenth_param_regexp . '))'; + } + + /** + * compile a resource + * + * sets $compiled_content to the compiled source + * @param string $resource_name + * @param string $source_content + * @param string $compiled_content + * @return true + */ + function _compile_file($resource_name, $source_content, &$compiled_content) + { + + if ($this->security) { + // do not allow php syntax to be executed unless specified + if ($this->php_handling == SMARTY_PHP_ALLOW && + !$this->security_settings['PHP_HANDLING']) { + $this->php_handling = SMARTY_PHP_PASSTHRU; + } + } + + $this->_load_filters(); + + $this->_current_file = $resource_name; + $this->_current_line_no = 1; + $ldq = preg_quote($this->left_delimiter, '~'); + $rdq = preg_quote($this->right_delimiter, '~'); + + /* un-hide hidden xml open tags */ + $source_content = preg_replace("~<({$ldq}(.*?){$rdq})[?]~s", '< \\1', $source_content); + + // run template source through prefilter functions + if (count($this->_plugins['prefilter']) > 0) { + foreach ($this->_plugins['prefilter'] as $filter_name => $prefilter) { + if ($prefilter === false) continue; + if ($prefilter[3] || is_callable($prefilter[0])) { + $source_content = call_user_func_array($prefilter[0], + array($source_content, &$this)); + $this->_plugins['prefilter'][$filter_name][3] = true; + } else { + $this->_trigger_fatal_error("[plugin] prefilter '$filter_name' is not implemented"); + } + } + } + + /* fetch all special blocks */ + $search = "~{$ldq}\*(.*?)\*{$rdq}|{$ldq}\s*literal\s*{$rdq}(.*?){$ldq}\s*/literal\s*{$rdq}|{$ldq}\s*php\s*{$rdq}(.*?){$ldq}\s*/php\s*{$rdq}~s"; + + preg_match_all($search, $source_content, $match, PREG_SET_ORDER); + $this->_folded_blocks = $match; + reset($this->_folded_blocks); + + /* replace special blocks by "{php}" */ + $source_content = preg_replace($search.'e', "'" + . $this->_quote_replace($this->left_delimiter) . 'php' + . "' . str_repeat(\"\n\", substr_count('\\0', \"\n\")) .'" + . $this->_quote_replace($this->right_delimiter) + . "'" + , $source_content); + + /* Gather all template tags. */ + preg_match_all("~{$ldq}\s*(.*?)\s*{$rdq}~s", $source_content, $_match); + $template_tags = $_match[1]; + /* Split content by template tags to obtain non-template content. */ + $text_blocks = preg_split("~{$ldq}.*?{$rdq}~s", $source_content); + + /* loop through text blocks */ + for ($curr_tb = 0, $for_max = count($text_blocks); $curr_tb < $for_max; $curr_tb++) { + /* match anything resembling php tags */ + if (preg_match_all('~(<\?(?:\w+|=)?|\?>|language\s*=\s*[\"\']?php[\"\']?)~is', $text_blocks[$curr_tb], $sp_match)) { + /* replace tags with placeholders to prevent recursive replacements */ + $sp_match[1] = array_unique($sp_match[1]); + usort($sp_match[1], '_smarty_sort_length'); + for ($curr_sp = 0, $for_max2 = count($sp_match[1]); $curr_sp < $for_max2; $curr_sp++) { + $text_blocks[$curr_tb] = str_replace($sp_match[1][$curr_sp],'%%%SMARTYSP'.$curr_sp.'%%%',$text_blocks[$curr_tb]); + } + /* process each one */ + for ($curr_sp = 0, $for_max2 = count($sp_match[1]); $curr_sp < $for_max2; $curr_sp++) { + if ($this->php_handling == SMARTY_PHP_PASSTHRU) { + /* echo php contents */ + $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', ''."\n", $text_blocks[$curr_tb]); + } else if ($this->php_handling == SMARTY_PHP_QUOTE) { + /* quote php tags */ + $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', htmlspecialchars($sp_match[1][$curr_sp]), $text_blocks[$curr_tb]); + } else if ($this->php_handling == SMARTY_PHP_REMOVE) { + /* remove php tags */ + $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', '', $text_blocks[$curr_tb]); + } else { + /* SMARTY_PHP_ALLOW, but echo non php starting tags */ + $sp_match[1][$curr_sp] = preg_replace('~(<\?(?!php|=|$))~i', ''."\n", $sp_match[1][$curr_sp]); + $text_blocks[$curr_tb] = str_replace('%%%SMARTYSP'.$curr_sp.'%%%', $sp_match[1][$curr_sp], $text_blocks[$curr_tb]); + } + } + } + } + + /* Compile the template tags into PHP code. */ + $compiled_tags = array(); + for ($i = 0, $for_max = count($template_tags); $i < $for_max; $i++) { + $this->_current_line_no += substr_count($text_blocks[$i], "\n"); + $compiled_tags[] = $this->_compile_tag($template_tags[$i]); + $this->_current_line_no += substr_count($template_tags[$i], "\n"); + } + if (count($this->_tag_stack)>0) { + list($_open_tag, $_line_no) = end($this->_tag_stack); + $this->_syntax_error("unclosed tag \{$_open_tag} (opened line $_line_no).", E_USER_ERROR, __FILE__, __LINE__); + return; + } + + /* Reformat $text_blocks between 'strip' and '/strip' tags, + removing spaces, tabs and newlines. */ + $strip = false; + for ($i = 0, $for_max = count($compiled_tags); $i < $for_max; $i++) { + if ($compiled_tags[$i] == '{strip}') { + $compiled_tags[$i] = ''; + $strip = true; + /* remove leading whitespaces */ + $text_blocks[$i + 1] = ltrim($text_blocks[$i + 1]); + } + if ($strip) { + /* strip all $text_blocks before the next '/strip' */ + for ($j = $i + 1; $j < $for_max; $j++) { + /* remove leading and trailing whitespaces of each line */ + $text_blocks[$j] = preg_replace('![\t ]*[\r\n]+[\t ]*!', '', $text_blocks[$j]); + if ($compiled_tags[$j] == '{/strip}') { + /* remove trailing whitespaces from the last text_block */ + $text_blocks[$j] = rtrim($text_blocks[$j]); + } + $text_blocks[$j] = ""\'", "\\"=>"\\\\")) . "'; ?>"; + if ($compiled_tags[$j] == '{/strip}') { + $compiled_tags[$j] = "\n"; /* slurped by php, but necessary + if a newline is following the closing strip-tag */ + $strip = false; + $i = $j; + break; + } + } + } + } + $compiled_content = ''; + + /* Interleave the compiled contents and text blocks to get the final result. */ + for ($i = 0, $for_max = count($compiled_tags); $i < $for_max; $i++) { + if ($compiled_tags[$i] == '') { + // tag result empty, remove first newline from following text block + $text_blocks[$i+1] = preg_replace('~^(\r\n|\r|\n)~', '', $text_blocks[$i+1]); + } + $compiled_content .= $text_blocks[$i].$compiled_tags[$i]; + } + $compiled_content .= $text_blocks[$i]; + + // remove \n from the end of the file, if any + if (strlen($compiled_content) && (substr($compiled_content, -1) == "\n") ) { + $compiled_content = substr($compiled_content, 0, -1); + } + + if (!empty($this->_cache_serial)) { + $compiled_content = "_cache_serials['".$this->_cache_include."'] = '".$this->_cache_serial."'; ?>" . $compiled_content; + } + + // remove unnecessary close/open tags + $compiled_content = preg_replace('~\?>\n?<\?php~', '', $compiled_content); + + // run compiled template through postfilter functions + if (count($this->_plugins['postfilter']) > 0) { + foreach ($this->_plugins['postfilter'] as $filter_name => $postfilter) { + if ($postfilter === false) continue; + if ($postfilter[3] || is_callable($postfilter[0])) { + $compiled_content = call_user_func_array($postfilter[0], + array($compiled_content, &$this)); + $this->_plugins['postfilter'][$filter_name][3] = true; + } else { + $this->_trigger_fatal_error("Smarty plugin error: postfilter '$filter_name' is not implemented"); + } + } + } + + // put header at the top of the compiled template + $template_header = "_version.", created on ".strftime("%Y-%m-%d %H:%M:%S")."\n"; + $template_header .= " compiled from ".strtr(urlencode($resource_name), array('%2F'=>'/', '%3A'=>':'))." */ ?>\n"; + + /* Emit code to load needed plugins. */ + $this->_plugins_code = ''; + if (count($this->_plugin_info)) { + $_plugins_params = "array('plugins' => array("; + foreach ($this->_plugin_info as $plugin_type => $plugins) { + foreach ($plugins as $plugin_name => $plugin_info) { + $_plugins_params .= "array('$plugin_type', '$plugin_name', '" . strtr($plugin_info[0], array("'" => "\\'", "\\" => "\\\\")) . "', $plugin_info[1], "; + $_plugins_params .= $plugin_info[2] ? 'true),' : 'false),'; + } + } + $_plugins_params .= '))'; + $plugins_code = "\n"; + $template_header .= $plugins_code; + $this->_plugin_info = array(); + $this->_plugins_code = $plugins_code; + } + + if ($this->_init_smarty_vars) { + $template_header .= "\n"; + $this->_init_smarty_vars = false; + } + + $compiled_content = $template_header . $compiled_content; + return true; + } + + /** + * Compile a template tag + * + * @param string $template_tag + * @return string + */ + function _compile_tag($template_tag) + { + /* Matched comment. */ + if (substr($template_tag, 0, 1) == '*' && substr($template_tag, -1) == '*') + return ''; + + /* Split tag into two three parts: command, command modifiers and the arguments. */ + if(! preg_match('~^(?:(' . $this->_num_const_regexp . '|' . $this->_obj_call_regexp . '|' . $this->_var_regexp + . '|\/?' . $this->_reg_obj_regexp . '|\/?' . $this->_func_regexp . ')(' . $this->_mod_regexp . '*)) + (?:\s+(.*))?$ + ~xs', $template_tag, $match)) { + $this->_syntax_error("unrecognized tag: $template_tag", E_USER_ERROR, __FILE__, __LINE__); + } + + $tag_command = $match[1]; + $tag_modifier = isset($match[2]) ? $match[2] : null; + $tag_args = isset($match[3]) ? $match[3] : null; + + if (preg_match('~^' . $this->_num_const_regexp . '|' . $this->_obj_call_regexp . '|' . $this->_var_regexp . '$~', $tag_command)) { + /* tag name is a variable or object */ + $_return = $this->_parse_var_props($tag_command . $tag_modifier); + return "" . $this->_additional_newline; + } + + /* If the tag name is a registered object, we process it. */ + if (preg_match('~^\/?' . $this->_reg_obj_regexp . '$~', $tag_command)) { + return $this->_compile_registered_object_tag($tag_command, $this->_parse_attrs($tag_args), $tag_modifier); + } + + switch ($tag_command) { + case 'include': + return $this->_compile_include_tag($tag_args); + + case 'include_php': + return $this->_compile_include_php_tag($tag_args); + + case 'if': + $this->_push_tag('if'); + return $this->_compile_if_tag($tag_args); + + case 'else': + list($_open_tag) = end($this->_tag_stack); + if ($_open_tag != 'if' && $_open_tag != 'elseif') + $this->_syntax_error('unexpected {else}', E_USER_ERROR, __FILE__, __LINE__); + else + $this->_push_tag('else'); + return ''; + + case 'elseif': + list($_open_tag) = end($this->_tag_stack); + if ($_open_tag != 'if' && $_open_tag != 'elseif') + $this->_syntax_error('unexpected {elseif}', E_USER_ERROR, __FILE__, __LINE__); + if ($_open_tag == 'if') + $this->_push_tag('elseif'); + return $this->_compile_if_tag($tag_args, true); + + case '/if': + $this->_pop_tag('if'); + return ''; + + case 'capture': + return $this->_compile_capture_tag(true, $tag_args); + + case '/capture': + return $this->_compile_capture_tag(false); + + case 'ldelim': + return $this->left_delimiter; + + case 'rdelim': + return $this->right_delimiter; + + case 'section': + $this->_push_tag('section'); + return $this->_compile_section_start($tag_args); + + case 'sectionelse': + $this->_push_tag('sectionelse'); + return ""; + break; + + case '/section': + $_open_tag = $this->_pop_tag('section'); + if ($_open_tag == 'sectionelse') + return ""; + else + return ""; + + case 'foreach': + $this->_push_tag('foreach'); + return $this->_compile_foreach_start($tag_args); + break; + + case 'foreachelse': + $this->_push_tag('foreachelse'); + return ""; + + case '/foreach': + $_open_tag = $this->_pop_tag('foreach'); + if ($_open_tag == 'foreachelse') + return ""; + else + return ""; + break; + + case 'strip': + case '/strip': + if (substr($tag_command, 0, 1)=='/') { + $this->_pop_tag('strip'); + if (--$this->_strip_depth==0) { /* outermost closing {/strip} */ + $this->_additional_newline = "\n"; + return '{' . $tag_command . '}'; + } + } else { + $this->_push_tag('strip'); + if ($this->_strip_depth++==0) { /* outermost opening {strip} */ + $this->_additional_newline = ""; + return '{' . $tag_command . '}'; + } + } + return ''; + + case 'php': + /* handle folded tags replaced by {php} */ + list(, $block) = each($this->_folded_blocks); + $this->_current_line_no += substr_count($block[0], "\n"); + /* the number of matched elements in the regexp in _compile_file() + determins the type of folded tag that was found */ + switch (count($block)) { + case 2: /* comment */ + return ''; + + case 3: /* literal */ + return ""\'", "\\"=>"\\\\")) . "'; ?>" . $this->_additional_newline; + + case 4: /* php */ + if ($this->security && !$this->security_settings['PHP_TAGS']) { + $this->_syntax_error("(secure mode) php tags not permitted", E_USER_WARNING, __FILE__, __LINE__); + return; + } + return ''; + } + break; + + case 'insert': + return $this->_compile_insert_tag($tag_args); + + default: + if ($this->_compile_compiler_tag($tag_command, $tag_args, $output)) { + return $output; + } else if ($this->_compile_block_tag($tag_command, $tag_args, $tag_modifier, $output)) { + return $output; + } else if ($this->_compile_custom_tag($tag_command, $tag_args, $tag_modifier, $output)) { + return $output; + } else { + $this->_syntax_error("unrecognized tag '$tag_command'", E_USER_ERROR, __FILE__, __LINE__); + } + + } + } + + + /** + * compile the custom compiler tag + * + * sets $output to the compiled custom compiler tag + * @param string $tag_command + * @param string $tag_args + * @param string $output + * @return boolean + */ + function _compile_compiler_tag($tag_command, $tag_args, &$output) + { + $found = false; + $have_function = true; + + /* + * First we check if the compiler function has already been registered + * or loaded from a plugin file. + */ + if (isset($this->_plugins['compiler'][$tag_command])) { + $found = true; + $plugin_func = $this->_plugins['compiler'][$tag_command][0]; + if (!is_callable($plugin_func)) { + $message = "compiler function '$tag_command' is not implemented"; + $have_function = false; + } + } + /* + * Otherwise we need to load plugin file and look for the function + * inside it. + */ + else if ($plugin_file = $this->_get_plugin_filepath('compiler', $tag_command)) { + $found = true; + + include_once $plugin_file; + + $plugin_func = 'smarty_compiler_' . $tag_command; + if (!is_callable($plugin_func)) { + $message = "plugin function $plugin_func() not found in $plugin_file\n"; + $have_function = false; + } else { + $this->_plugins['compiler'][$tag_command] = array($plugin_func, null, null, null, true); + } + } + + /* + * True return value means that we either found a plugin or a + * dynamically registered function. False means that we didn't and the + * compiler should now emit code to load custom function plugin for this + * tag. + */ + if ($found) { + if ($have_function) { + $output = call_user_func_array($plugin_func, array($tag_args, &$this)); + if($output != '') { + $output = '_push_cacheable_state('compiler', $tag_command) + . $output + . $this->_pop_cacheable_state('compiler', $tag_command) . ' ?>'; + } + } else { + $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__); + } + return true; + } else { + return false; + } + } + + + /** + * compile block function tag + * + * sets $output to compiled block function tag + * @param string $tag_command + * @param string $tag_args + * @param string $tag_modifier + * @param string $output + * @return boolean + */ + function _compile_block_tag($tag_command, $tag_args, $tag_modifier, &$output) + { + if (substr($tag_command, 0, 1) == '/') { + $start_tag = false; + $tag_command = substr($tag_command, 1); + } else + $start_tag = true; + + $found = false; + $have_function = true; + + /* + * First we check if the block function has already been registered + * or loaded from a plugin file. + */ + if (isset($this->_plugins['block'][$tag_command])) { + $found = true; + $plugin_func = $this->_plugins['block'][$tag_command][0]; + if (!is_callable($plugin_func)) { + $message = "block function '$tag_command' is not implemented"; + $have_function = false; + } + } + /* + * Otherwise we need to load plugin file and look for the function + * inside it. + */ + else if ($plugin_file = $this->_get_plugin_filepath('block', $tag_command)) { + $found = true; + + include_once $plugin_file; + + $plugin_func = 'smarty_block_' . $tag_command; + if (!function_exists($plugin_func)) { + $message = "plugin function $plugin_func() not found in $plugin_file\n"; + $have_function = false; + } else { + $this->_plugins['block'][$tag_command] = array($plugin_func, null, null, null, true); + + } + } + + if (!$found) { + return false; + } else if (!$have_function) { + $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__); + return true; + } + + /* + * Even though we've located the plugin function, compilation + * happens only once, so the plugin will still need to be loaded + * at runtime for future requests. + */ + $this->_add_plugin('block', $tag_command); + + if ($start_tag) + $this->_push_tag($tag_command); + else + $this->_pop_tag($tag_command); + + if ($start_tag) { + $output = '_push_cacheable_state('block', $tag_command); + $attrs = $this->_parse_attrs($tag_args); + $_cache_attrs=''; + $arg_list = $this->_compile_arg_list('block', $tag_command, $attrs, $_cache_attrs); + $output .= "$_cache_attrs\$this->_tag_stack[] = array('$tag_command', array(".implode(',', $arg_list).')); '; + $output .= '$_block_repeat=true;' . $this->_compile_plugin_call('block', $tag_command).'($this->_tag_stack[count($this->_tag_stack)-1][1], null, $this, $_block_repeat);'; + $output .= 'while ($_block_repeat) { ob_start(); ?>'; + } else { + $output = '_compile_plugin_call('block', $tag_command).'($this->_tag_stack[count($this->_tag_stack)-1][1], $_block_content, $this, $_block_repeat)'; + if ($tag_modifier != '') { + $this->_parse_modifiers($_out_tag_text, $tag_modifier); + } + $output .= '$_block_repeat=false;echo ' . $_out_tag_text . '; } '; + $output .= " array_pop(\$this->_tag_stack); " . $this->_pop_cacheable_state('block', $tag_command) . '?>'; + } + + return true; + } + + + /** + * compile custom function tag + * + * @param string $tag_command + * @param string $tag_args + * @param string $tag_modifier + * @return string + */ + function _compile_custom_tag($tag_command, $tag_args, $tag_modifier, &$output) + { + $found = false; + $have_function = true; + + /* + * First we check if the custom function has already been registered + * or loaded from a plugin file. + */ + if (isset($this->_plugins['function'][$tag_command])) { + $found = true; + $plugin_func = $this->_plugins['function'][$tag_command][0]; + if (!is_callable($plugin_func)) { + $message = "custom function '$tag_command' is not implemented"; + $have_function = false; + } + } + /* + * Otherwise we need to load plugin file and look for the function + * inside it. + */ + else if ($plugin_file = $this->_get_plugin_filepath('function', $tag_command)) { + $found = true; + + include_once $plugin_file; + + $plugin_func = 'smarty_function_' . $tag_command; + if (!function_exists($plugin_func)) { + $message = "plugin function $plugin_func() not found in $plugin_file\n"; + $have_function = false; + } else { + $this->_plugins['function'][$tag_command] = array($plugin_func, null, null, null, true); + + } + } + + if (!$found) { + return false; + } else if (!$have_function) { + $this->_syntax_error($message, E_USER_WARNING, __FILE__, __LINE__); + return true; + } + + /* declare plugin to be loaded on display of the template that + we compile right now */ + $this->_add_plugin('function', $tag_command); + + $_cacheable_state = $this->_push_cacheable_state('function', $tag_command); + $attrs = $this->_parse_attrs($tag_args); + $_cache_attrs = ''; + $arg_list = $this->_compile_arg_list('function', $tag_command, $attrs, $_cache_attrs); + + $output = $this->_compile_plugin_call('function', $tag_command).'(array('.implode(',', $arg_list)."), \$this)"; + if($tag_modifier != '') { + $this->_parse_modifiers($output, $tag_modifier); + } + + if($output != '') { + $output = '_pop_cacheable_state('function', $tag_command) . "?>" . $this->_additional_newline; + } + + return true; + } + + /** + * compile a registered object tag + * + * @param string $tag_command + * @param array $attrs + * @param string $tag_modifier + * @return string + */ + function _compile_registered_object_tag($tag_command, $attrs, $tag_modifier) + { + if (substr($tag_command, 0, 1) == '/') { + $start_tag = false; + $tag_command = substr($tag_command, 1); + } else { + $start_tag = true; + } + + list($object, $obj_comp) = explode('->', $tag_command); + + $arg_list = array(); + if(count($attrs)) { + $_assign_var = false; + foreach ($attrs as $arg_name => $arg_value) { + if($arg_name == 'assign') { + $_assign_var = $arg_value; + unset($attrs['assign']); + continue; + } + if (is_bool($arg_value)) + $arg_value = $arg_value ? 'true' : 'false'; + $arg_list[] = "'$arg_name' => $arg_value"; + } + } + + if($this->_reg_objects[$object][2]) { + // smarty object argument format + $args = "array(".implode(',', (array)$arg_list)."), \$this"; + } else { + // traditional argument format + $args = implode(',', array_values($attrs)); + if (empty($args)) { + $args = 'null'; + } + } + + $prefix = ''; + $postfix = ''; + $newline = ''; + if(!is_object($this->_reg_objects[$object][0])) { + $this->_trigger_fatal_error("registered '$object' is not an object" , $this->_current_file, $this->_current_line_no, __FILE__, __LINE__); + } elseif(!empty($this->_reg_objects[$object][1]) && !in_array($obj_comp, $this->_reg_objects[$object][1])) { + $this->_trigger_fatal_error("'$obj_comp' is not a registered component of object '$object'", $this->_current_file, $this->_current_line_no, __FILE__, __LINE__); + } elseif(method_exists($this->_reg_objects[$object][0], $obj_comp)) { + // method + if(in_array($obj_comp, $this->_reg_objects[$object][3])) { + // block method + if ($start_tag) { + $prefix = "\$this->_tag_stack[] = array('$obj_comp', $args); "; + $prefix .= "\$_block_repeat=true; \$this->_reg_objects['$object'][0]->$obj_comp(\$this->_tag_stack[count(\$this->_tag_stack)-1][1], null, \$this, \$_block_repeat); "; + $prefix .= "while (\$_block_repeat) { ob_start();"; + $return = null; + $postfix = ''; + } else { + $prefix = "\$_obj_block_content = ob_get_contents(); ob_end_clean(); \$_block_repeat=false;"; + $return = "\$this->_reg_objects['$object'][0]->$obj_comp(\$this->_tag_stack[count(\$this->_tag_stack)-1][1], \$_obj_block_content, \$this, \$_block_repeat)"; + $postfix = "} array_pop(\$this->_tag_stack);"; + } + } else { + // non-block method + $return = "\$this->_reg_objects['$object'][0]->$obj_comp($args)"; + } + } else { + // property + $return = "\$this->_reg_objects['$object'][0]->$obj_comp"; + } + + if($return != null) { + if($tag_modifier != '') { + $this->_parse_modifiers($return, $tag_modifier); + } + + if(!empty($_assign_var)) { + $output = "\$this->assign('" . $this->_dequote($_assign_var) ."', $return);"; + } else { + $output = 'echo ' . $return . ';'; + $newline = $this->_additional_newline; + } + } else { + $output = ''; + } + + return '" . $newline; + } + + /** + * Compile {insert ...} tag + * + * @param string $tag_args + * @return string + */ + function _compile_insert_tag($tag_args) + { + $attrs = $this->_parse_attrs($tag_args); + $name = $this->_dequote($attrs['name']); + + if (empty($name)) { + return $this->_syntax_error("missing insert name", E_USER_ERROR, __FILE__, __LINE__); + } + + if (!preg_match('~^\w+$~', $name)) { + return $this->_syntax_error("'insert: 'name' must be an insert function name", E_USER_ERROR, __FILE__, __LINE__); + } + + if (!empty($attrs['script'])) { + $delayed_loading = true; + } else { + $delayed_loading = false; + } + + foreach ($attrs as $arg_name => $arg_value) { + if (is_bool($arg_value)) + $arg_value = $arg_value ? 'true' : 'false'; + $arg_list[] = "'$arg_name' => $arg_value"; + } + + $this->_add_plugin('insert', $name, $delayed_loading); + + $_params = "array('args' => array(".implode(', ', (array)$arg_list)."))"; + + return "" . $this->_additional_newline; + } + + /** + * Compile {include ...} tag + * + * @param string $tag_args + * @return string + */ + function _compile_include_tag($tag_args) + { + $attrs = $this->_parse_attrs($tag_args); + $arg_list = array(); + + if (empty($attrs['file'])) { + $this->_syntax_error("missing 'file' attribute in include tag", E_USER_ERROR, __FILE__, __LINE__); + } + + foreach ($attrs as $arg_name => $arg_value) { + if ($arg_name == 'file') { + $include_file = $arg_value; + continue; + } else if ($arg_name == 'assign') { + $assign_var = $arg_value; + continue; + } + if (is_bool($arg_value)) + $arg_value = $arg_value ? 'true' : 'false'; + $arg_list[] = "'$arg_name' => $arg_value"; + } + + $output = '_tpl_vars;\n"; + + + $_params = "array('smarty_include_tpl_file' => " . $include_file . ", 'smarty_include_vars' => array(".implode(',', (array)$arg_list)."))"; + $output .= "\$this->_smarty_include($_params);\n" . + "\$this->_tpl_vars = \$_smarty_tpl_vars;\n" . + "unset(\$_smarty_tpl_vars);\n"; + + if (isset($assign_var)) { + $output .= "\$this->assign(" . $assign_var . ", ob_get_contents()); ob_end_clean();\n"; + } + + $output .= ' ?>'; + + return $output; + + } + + /** + * Compile {include ...} tag + * + * @param string $tag_args + * @return string + */ + function _compile_include_php_tag($tag_args) + { + $attrs = $this->_parse_attrs($tag_args); + + if (empty($attrs['file'])) { + $this->_syntax_error("missing 'file' attribute in include_php tag", E_USER_ERROR, __FILE__, __LINE__); + } + + $assign_var = (empty($attrs['assign'])) ? '' : $this->_dequote($attrs['assign']); + $once_var = (empty($attrs['once']) || $attrs['once']=='false') ? 'false' : 'true'; + + $arg_list = array(); + foreach($attrs as $arg_name => $arg_value) { + if($arg_name != 'file' AND $arg_name != 'once' AND $arg_name != 'assign') { + if(is_bool($arg_value)) + $arg_value = $arg_value ? 'true' : 'false'; + $arg_list[] = "'$arg_name' => $arg_value"; + } + } + + $_params = "array('smarty_file' => " . $attrs['file'] . ", 'smarty_assign' => '$assign_var', 'smarty_once' => $once_var, 'smarty_include_vars' => array(".implode(',', $arg_list)."))"; + + return "" . $this->_additional_newline; + } + + + /** + * Compile {section ...} tag + * + * @param string $tag_args + * @return string + */ + function _compile_section_start($tag_args) + { + $attrs = $this->_parse_attrs($tag_args); + $arg_list = array(); + + $output = '_syntax_error("missing section name", E_USER_ERROR, __FILE__, __LINE__); + } + + $output .= "unset(\$this->_sections[$section_name]);\n"; + $section_props = "\$this->_sections[$section_name]"; + + foreach ($attrs as $attr_name => $attr_value) { + switch ($attr_name) { + case 'loop': + $output .= "{$section_props}['loop'] = is_array(\$_loop=$attr_value) ? count(\$_loop) : max(0, (int)\$_loop); unset(\$_loop);\n"; + break; + + case 'show': + if (is_bool($attr_value)) + $show_attr_value = $attr_value ? 'true' : 'false'; + else + $show_attr_value = "(bool)$attr_value"; + $output .= "{$section_props}['show'] = $show_attr_value;\n"; + break; + + case 'name': + $output .= "{$section_props}['$attr_name'] = $attr_value;\n"; + break; + + case 'max': + case 'start': + $output .= "{$section_props}['$attr_name'] = (int)$attr_value;\n"; + break; + + case 'step': + $output .= "{$section_props}['$attr_name'] = ((int)$attr_value) == 0 ? 1 : (int)$attr_value;\n"; + break; + + default: + $this->_syntax_error("unknown section attribute - '$attr_name'", E_USER_ERROR, __FILE__, __LINE__); + break; + } + } + + if (!isset($attrs['show'])) + $output .= "{$section_props}['show'] = true;\n"; + + if (!isset($attrs['loop'])) + $output .= "{$section_props}['loop'] = 1;\n"; + + if (!isset($attrs['max'])) + $output .= "{$section_props}['max'] = {$section_props}['loop'];\n"; + else + $output .= "if ({$section_props}['max'] < 0)\n" . + " {$section_props}['max'] = {$section_props}['loop'];\n"; + + if (!isset($attrs['step'])) + $output .= "{$section_props}['step'] = 1;\n"; + + if (!isset($attrs['start'])) + $output .= "{$section_props}['start'] = {$section_props}['step'] > 0 ? 0 : {$section_props}['loop']-1;\n"; + else { + $output .= "if ({$section_props}['start'] < 0)\n" . + " {$section_props}['start'] = max({$section_props}['step'] > 0 ? 0 : -1, {$section_props}['loop'] + {$section_props}['start']);\n" . + "else\n" . + " {$section_props}['start'] = min({$section_props}['start'], {$section_props}['step'] > 0 ? {$section_props}['loop'] : {$section_props}['loop']-1);\n"; + } + + $output .= "if ({$section_props}['show']) {\n"; + if (!isset($attrs['start']) && !isset($attrs['step']) && !isset($attrs['max'])) { + $output .= " {$section_props}['total'] = {$section_props}['loop'];\n"; + } else { + $output .= " {$section_props}['total'] = min(ceil(({$section_props}['step'] > 0 ? {$section_props}['loop'] - {$section_props}['start'] : {$section_props}['start']+1)/abs({$section_props}['step'])), {$section_props}['max']);\n"; + } + $output .= " if ({$section_props}['total'] == 0)\n" . + " {$section_props}['show'] = false;\n" . + "} else\n" . + " {$section_props}['total'] = 0;\n"; + + $output .= "if ({$section_props}['show']):\n"; + $output .= " + for ({$section_props}['index'] = {$section_props}['start'], {$section_props}['iteration'] = 1; + {$section_props}['iteration'] <= {$section_props}['total']; + {$section_props}['index'] += {$section_props}['step'], {$section_props}['iteration']++):\n"; + $output .= "{$section_props}['rownum'] = {$section_props}['iteration'];\n"; + $output .= "{$section_props}['index_prev'] = {$section_props}['index'] - {$section_props}['step'];\n"; + $output .= "{$section_props}['index_next'] = {$section_props}['index'] + {$section_props}['step'];\n"; + $output .= "{$section_props}['first'] = ({$section_props}['iteration'] == 1);\n"; + $output .= "{$section_props}['last'] = ({$section_props}['iteration'] == {$section_props}['total']);\n"; + + $output .= "?>"; + + return $output; + } + + + /** + * Compile {foreach ...} tag. + * + * @param string $tag_args + * @return string + */ + function _compile_foreach_start($tag_args) + { + $attrs = $this->_parse_attrs($tag_args); + $arg_list = array(); + + if (empty($attrs['from'])) { + return $this->_syntax_error("foreach: missing 'from' attribute", E_USER_ERROR, __FILE__, __LINE__); + } + $from = $attrs['from']; + + if (empty($attrs['item'])) { + return $this->_syntax_error("foreach: missing 'item' attribute", E_USER_ERROR, __FILE__, __LINE__); + } + $item = $this->_dequote($attrs['item']); + if (!preg_match('~^\w+$~', $item)) { + return $this->_syntax_error("'foreach: 'item' must be a variable name (literal string)", E_USER_ERROR, __FILE__, __LINE__); + } + + if (isset($attrs['key'])) { + $key = $this->_dequote($attrs['key']); + if (!preg_match('~^\w+$~', $key)) { + return $this->_syntax_error("foreach: 'key' must to be a variable name (literal string)", E_USER_ERROR, __FILE__, __LINE__); + } + $key_part = "\$this->_tpl_vars['$key'] => "; + } else { + $key = null; + $key_part = ''; + } + + if (isset($attrs['name'])) { + $name = $attrs['name']; + } else { + $name = null; + } + + $output = '_foreach[$name]"; + $output .= "{$foreach_props} = array('total' => count(\$_from), 'iteration' => 0);\n"; + $output .= "if ({$foreach_props}['total'] > 0):\n"; + $output .= " foreach (\$_from as $key_part\$this->_tpl_vars['$item']):\n"; + $output .= " {$foreach_props}['iteration']++;\n"; + } else { + $output .= "if (count(\$_from)):\n"; + $output .= " foreach (\$_from as $key_part\$this->_tpl_vars['$item']):\n"; + } + $output .= '?>'; + + return $output; + } + + + /** + * Compile {capture} .. {/capture} tags + * + * @param boolean $start true if this is the {capture} tag + * @param string $tag_args + * @return string + */ + + function _compile_capture_tag($start, $tag_args = '') + { + $attrs = $this->_parse_attrs($tag_args); + + if ($start) { + if (isset($attrs['name'])) + $buffer = $attrs['name']; + else + $buffer = "'default'"; + + if (isset($attrs['assign'])) + $assign = $attrs['assign']; + else + $assign = null; + $output = ""; + $this->_capture_stack[] = array($buffer, $assign); + } else { + list($buffer, $assign) = array_pop($this->_capture_stack); + $output = "_smarty_vars['capture'][$buffer] = ob_get_contents(); "; + if (isset($assign)) { + $output .= " \$this->assign($assign, ob_get_contents());"; + } + $output .= "ob_end_clean(); ?>"; + } + + return $output; + } + + /** + * Compile {if ...} tag + * + * @param string $tag_args + * @param boolean $elseif if true, uses elseif instead of if + * @return string + */ + function _compile_if_tag($tag_args, $elseif = false) + { + + /* Tokenize args for 'if' tag. */ + preg_match_all('~(?> + ' . $this->_obj_call_regexp . '(?:' . $this->_mod_regexp . '*)? | # valid object call + ' . $this->_var_regexp . '(?:' . $this->_mod_regexp . '*)? | # var or quoted string + \-?0[xX][0-9a-fA-F]+|\-?\d+(?:\.\d+)?|\.\d+|!==|===|==|!=|<>|<<|>>|<=|>=|\&\&|\|\||\(|\)|,|\!|\^|=|\&|\~|<|>|\||\%|\+|\-|\/|\*|\@ | # valid non-word token + \b\w+\b | # valid word token + \S+ # anything else + )~x', $tag_args, $match); + + $tokens = $match[0]; + + if(empty($tokens)) { + $_error_msg = $elseif ? "'elseif'" : "'if'"; + $_error_msg .= ' statement requires arguments'; + $this->_syntax_error($_error_msg, E_USER_ERROR, __FILE__, __LINE__); + } + + + // make sure we have balanced parenthesis + $token_count = array_count_values($tokens); + if(isset($token_count['(']) && $token_count['('] != $token_count[')']) { + $this->_syntax_error("unbalanced parenthesis in if statement", E_USER_ERROR, __FILE__, __LINE__); + } + + $is_arg_stack = array(); + + for ($i = 0; $i < count($tokens); $i++) { + + $token = &$tokens[$i]; + + switch (strtolower($token)) { + case '!': + case '%': + case '!==': + case '==': + case '===': + case '>': + case '<': + case '!=': + case '<>': + case '<<': + case '>>': + case '<=': + case '>=': + case '&&': + case '||': + case '|': + case '^': + case '&': + case '~': + case ')': + case ',': + case '+': + case '-': + case '*': + case '/': + case '@': + break; + + case 'eq': + $token = '=='; + break; + + case 'ne': + case 'neq': + $token = '!='; + break; + + case 'lt': + $token = '<'; + break; + + case 'le': + case 'lte': + $token = '<='; + break; + + case 'gt': + $token = '>'; + break; + + case 'ge': + case 'gte': + $token = '>='; + break; + + case 'and': + $token = '&&'; + break; + + case 'or': + $token = '||'; + break; + + case 'not': + $token = '!'; + break; + + case 'mod': + $token = '%'; + break; + + case '(': + array_push($is_arg_stack, $i); + break; + + case 'is': + /* If last token was a ')', we operate on the parenthesized + expression. The start of the expression is on the stack. + Otherwise, we operate on the last encountered token. */ + if ($tokens[$i-1] == ')') + $is_arg_start = array_pop($is_arg_stack); + else + $is_arg_start = $i-1; + /* Construct the argument for 'is' expression, so it knows + what to operate on. */ + $is_arg = implode(' ', array_slice($tokens, $is_arg_start, $i - $is_arg_start)); + + /* Pass all tokens from next one until the end to the + 'is' expression parsing function. The function will + return modified tokens, where the first one is the result + of the 'is' expression and the rest are the tokens it + didn't touch. */ + $new_tokens = $this->_parse_is_expr($is_arg, array_slice($tokens, $i+1)); + + /* Replace the old tokens with the new ones. */ + array_splice($tokens, $is_arg_start, count($tokens), $new_tokens); + + /* Adjust argument start so that it won't change from the + current position for the next iteration. */ + $i = $is_arg_start; + break; + + default: + if(preg_match('~^' . $this->_func_regexp . '$~', $token) ) { + // function call + if($this->security && + !in_array($token, $this->security_settings['IF_FUNCS'])) { + $this->_syntax_error("(secure mode) '$token' not allowed in if statement", E_USER_ERROR, __FILE__, __LINE__); + } + } elseif(preg_match('~^' . $this->_var_regexp . '$~', $token) && (strpos('+-*/^%&|', substr($token, -1)) === false) && isset($tokens[$i+1]) && $tokens[$i+1] == '(') { + // variable function call + $this->_syntax_error("variable function call '$token' not allowed in if statement", E_USER_ERROR, __FILE__, __LINE__); + } elseif(preg_match('~^' . $this->_obj_call_regexp . '|' . $this->_var_regexp . '(?:' . $this->_mod_regexp . '*)$~', $token)) { + // object or variable + $token = $this->_parse_var_props($token); + } elseif(is_numeric($token)) { + // number, skip it + } else { + $this->_syntax_error("unidentified token '$token'", E_USER_ERROR, __FILE__, __LINE__); + } + break; + } + } + + if ($elseif) + return ''; + else + return ''; + } + + + function _compile_arg_list($type, $name, $attrs, &$cache_code) { + $arg_list = array(); + + if (isset($type) && isset($name) + && isset($this->_plugins[$type]) + && isset($this->_plugins[$type][$name]) + && empty($this->_plugins[$type][$name][4]) + && is_array($this->_plugins[$type][$name][5]) + ) { + /* we have a list of parameters that should be cached */ + $_cache_attrs = $this->_plugins[$type][$name][5]; + $_count = $this->_cache_attrs_count++; + $cache_code = "\$_cache_attrs =& \$this->_smarty_cache_attrs('$this->_cache_serial','$_count');"; + + } else { + /* no parameters are cached */ + $_cache_attrs = null; + } + + foreach ($attrs as $arg_name => $arg_value) { + if (is_bool($arg_value)) + $arg_value = $arg_value ? 'true' : 'false'; + if (is_null($arg_value)) + $arg_value = 'null'; + if ($_cache_attrs && in_array($arg_name, $_cache_attrs)) { + $arg_list[] = "'$arg_name' => (\$this->_cache_including) ? \$_cache_attrs['$arg_name'] : (\$_cache_attrs['$arg_name']=$arg_value)"; + } else { + $arg_list[] = "'$arg_name' => $arg_value"; + } + } + return $arg_list; + } + + /** + * Parse is expression + * + * @param string $is_arg + * @param array $tokens + * @return array + */ + function _parse_is_expr($is_arg, $tokens) + { + $expr_end = 0; + $negate_expr = false; + + if (($first_token = array_shift($tokens)) == 'not') { + $negate_expr = true; + $expr_type = array_shift($tokens); + } else + $expr_type = $first_token; + + switch ($expr_type) { + case 'even': + if (isset($tokens[$expr_end]) && $tokens[$expr_end] == 'by') { + $expr_end++; + $expr_arg = $tokens[$expr_end++]; + $expr = "!(1 & ($is_arg / " . $this->_parse_var_props($expr_arg) . "))"; + } else + $expr = "!(1 & $is_arg)"; + break; + + case 'odd': + if (isset($tokens[$expr_end]) && $tokens[$expr_end] == 'by') { + $expr_end++; + $expr_arg = $tokens[$expr_end++]; + $expr = "(1 & ($is_arg / " . $this->_parse_var_props($expr_arg) . "))"; + } else + $expr = "(1 & $is_arg)"; + break; + + case 'div': + if (@$tokens[$expr_end] == 'by') { + $expr_end++; + $expr_arg = $tokens[$expr_end++]; + $expr = "!($is_arg % " . $this->_parse_var_props($expr_arg) . ")"; + } else { + $this->_syntax_error("expecting 'by' after 'div'", E_USER_ERROR, __FILE__, __LINE__); + } + break; + + default: + $this->_syntax_error("unknown 'is' expression - '$expr_type'", E_USER_ERROR, __FILE__, __LINE__); + break; + } + + if ($negate_expr) { + $expr = "!($expr)"; + } + + array_splice($tokens, 0, $expr_end, $expr); + + return $tokens; + } + + + /** + * Parse attribute string + * + * @param string $tag_args + * @return array + */ + function _parse_attrs($tag_args) + { + + /* Tokenize tag attributes. */ + preg_match_all('~(?:' . $this->_obj_call_regexp . '|' . $this->_qstr_regexp . ' | (?>[^"\'=\s]+) + )+ | + [=] + ~x', $tag_args, $match); + $tokens = $match[0]; + + $attrs = array(); + /* Parse state: + 0 - expecting attribute name + 1 - expecting '=' + 2 - expecting attribute value (not '=') */ + $state = 0; + + foreach ($tokens as $token) { + switch ($state) { + case 0: + /* If the token is a valid identifier, we set attribute name + and go to state 1. */ + if (preg_match('~^\w+$~', $token)) { + $attr_name = $token; + $state = 1; + } else + $this->_syntax_error("invalid attribute name: '$token'", E_USER_ERROR, __FILE__, __LINE__); + break; + + case 1: + /* If the token is '=', then we go to state 2. */ + if ($token == '=') { + $state = 2; + } else + $this->_syntax_error("expecting '=' after attribute name '$last_token'", E_USER_ERROR, __FILE__, __LINE__); + break; + + case 2: + /* If token is not '=', we set the attribute value and go to + state 0. */ + if ($token != '=') { + /* We booleanize the token if it's a non-quoted possible + boolean value. */ + if (preg_match('~^(on|yes|true)$~', $token)) { + $token = 'true'; + } else if (preg_match('~^(off|no|false)$~', $token)) { + $token = 'false'; + } else if ($token == 'null') { + $token = 'null'; + } else if (preg_match('~^' . $this->_num_const_regexp . '|0[xX][0-9a-fA-F]+$~', $token)) { + /* treat integer literally */ + } else if (!preg_match('~^' . $this->_obj_call_regexp . '|' . $this->_var_regexp . '(?:' . $this->_mod_regexp . ')*$~', $token)) { + /* treat as a string, double-quote it escaping quotes */ + $token = '"'.addslashes($token).'"'; + } + + $attrs[$attr_name] = $token; + $state = 0; + } else + $this->_syntax_error("'=' cannot be an attribute value", E_USER_ERROR, __FILE__, __LINE__); + break; + } + $last_token = $token; + } + + if($state != 0) { + if($state == 1) { + $this->_syntax_error("expecting '=' after attribute name '$last_token'", E_USER_ERROR, __FILE__, __LINE__); + } else { + $this->_syntax_error("missing attribute value", E_USER_ERROR, __FILE__, __LINE__); + } + } + + $this->_parse_vars_props($attrs); + + return $attrs; + } + + /** + * compile multiple variables and section properties tokens into + * PHP code + * + * @param array $tokens + */ + function _parse_vars_props(&$tokens) + { + foreach($tokens as $key => $val) { + $tokens[$key] = $this->_parse_var_props($val); + } + } + + /** + * compile single variable and section properties token into + * PHP code + * + * @param string $val + * @param string $tag_attrs + * @return string + */ + function _parse_var_props($val) + { + $val = trim($val); + + if(preg_match('~^(' . $this->_obj_call_regexp . '|' . $this->_dvar_regexp . ')(' . $this->_mod_regexp . '*)$~', $val, $match)) { + // $ variable or object + $return = $this->_parse_var($match[1]); + $modifiers = $match[2]; + if (!empty($this->default_modifiers) && !preg_match('~(^|\|)smarty:nodefaults($|\|)~',$modifiers)) { + $_default_mod_string = implode('|',(array)$this->default_modifiers); + $modifiers = empty($modifiers) ? $_default_mod_string : $_default_mod_string . '|' . $modifiers; + } + $this->_parse_modifiers($return, $modifiers); + return $return; + } elseif (preg_match('~^' . $this->_db_qstr_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { + // double quoted text + preg_match('~^(' . $this->_db_qstr_regexp . ')('. $this->_mod_regexp . '*)$~', $val, $match); + $return = $this->_expand_quoted_text($match[1]); + if($match[2] != '') { + $this->_parse_modifiers($return, $match[2]); + } + return $return; + } + elseif(preg_match('~^' . $this->_num_const_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { + // numerical constant + preg_match('~^(' . $this->_num_const_regexp . ')('. $this->_mod_regexp . '*)$~', $val, $match); + if($match[2] != '') { + $this->_parse_modifiers($match[1], $match[2]); + return $match[1]; + } + } + elseif(preg_match('~^' . $this->_si_qstr_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { + // single quoted text + preg_match('~^(' . $this->_si_qstr_regexp . ')('. $this->_mod_regexp . '*)$~', $val, $match); + if($match[2] != '') { + $this->_parse_modifiers($match[1], $match[2]); + return $match[1]; + } + } + elseif(preg_match('~^' . $this->_cvar_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { + // config var + return $this->_parse_conf_var($val); + } + elseif(preg_match('~^' . $this->_svar_regexp . '(?:' . $this->_mod_regexp . '*)$~', $val)) { + // section var + return $this->_parse_section_prop($val); + } + elseif(!in_array($val, $this->_permitted_tokens) && !is_numeric($val)) { + // literal string + return $this->_expand_quoted_text('"' . strtr($val, array('\\' => '\\\\', '"' => '\\"')) .'"'); + } + return $val; + } + + /** + * expand quoted text with embedded variables + * + * @param string $var_expr + * @return string + */ + function _expand_quoted_text($var_expr) + { + // if contains unescaped $, expand it + if(preg_match_all('~(?:\`(?_dvar_guts_regexp . '(?:' . $this->_obj_ext_regexp . ')*\`)|(?:(?_parse_var(str_replace('`','',$_var)) . ')."'; + } + $var_expr = strtr($var_expr, $_replace); + $_return = preg_replace('~\.""|(?_dvar_math_regexp.'|'.$this->_qstr_regexp.')~', $var_expr, -1, PREG_SPLIT_DELIM_CAPTURE); + + if(count($_math_vars) > 1) { + $_first_var = ""; + $_complete_var = ""; + $_output = ""; + // simple check if there is any math, to stop recursion (due to modifiers with "xx % yy" as parameter) + foreach($_math_vars as $_k => $_math_var) { + $_math_var = $_math_vars[$_k]; + + if(!empty($_math_var) || is_numeric($_math_var)) { + // hit a math operator, so process the stuff which came before it + if(preg_match('~^' . $this->_dvar_math_regexp . '$~', $_math_var)) { + $_has_math = true; + if(!empty($_complete_var) || is_numeric($_complete_var)) { + $_output .= $this->_parse_var($_complete_var); + } + + // just output the math operator to php + $_output .= $_math_var; + + if(empty($_first_var)) + $_first_var = $_complete_var; + + $_complete_var = ""; + } else { + $_complete_var .= $_math_var; + } + } + } + if($_has_math) { + if(!empty($_complete_var) || is_numeric($_complete_var)) + $_output .= $this->_parse_var($_complete_var); + + // get the modifiers working (only the last var from math + modifier is left) + $var_expr = $_complete_var; + } + } + + // prevent cutting of first digit in the number (we _definitly_ got a number if the first char is a digit) + if(is_numeric(substr($var_expr, 0, 1))) + $_var_ref = $var_expr; + else + $_var_ref = substr($var_expr, 1); + + if(!$_has_math) { + + // get [foo] and .foo and ->foo and (...) pieces + preg_match_all('~(?:^\w+)|' . $this->_obj_params_regexp . '|(?:' . $this->_var_bracket_regexp . ')|->\$?\w+|\.\$?\w+|\S+~', $_var_ref, $match); + + $_indexes = $match[0]; + $_var_name = array_shift($_indexes); + + /* Handle $smarty.* variable references as a special case. */ + if ($_var_name == 'smarty') { + /* + * If the reference could be compiled, use the compiled output; + * otherwise, fall back on the $smarty variable generated at + * run-time. + */ + if (($smarty_ref = $this->_compile_smarty_ref($_indexes)) !== null) { + $_output = $smarty_ref; + } else { + $_var_name = substr(array_shift($_indexes), 1); + $_output = "\$this->_smarty_vars['$_var_name']"; + } + } elseif(is_numeric($_var_name) && is_numeric(substr($var_expr, 0, 1))) { + // because . is the operator for accessing arrays thru inidizes we need to put it together again for floating point numbers + if(count($_indexes) > 0) + { + $_var_name .= implode("", $_indexes); + $_indexes = array(); + } + $_output = $_var_name; + } else { + $_output = "\$this->_tpl_vars['$_var_name']"; + } + + foreach ($_indexes as $_index) { + if (substr($_index, 0, 1) == '[') { + $_index = substr($_index, 1, -1); + if (is_numeric($_index)) { + $_output .= "[$_index]"; + } elseif (substr($_index, 0, 1) == '$') { + if (strpos($_index, '.') !== false) { + $_output .= '[' . $this->_parse_var($_index) . ']'; + } else { + $_output .= "[\$this->_tpl_vars['" . substr($_index, 1) . "']]"; + } + } else { + $_var_parts = explode('.', $_index); + $_var_section = $_var_parts[0]; + $_var_section_prop = isset($_var_parts[1]) ? $_var_parts[1] : 'index'; + $_output .= "[\$this->_sections['$_var_section']['$_var_section_prop']]"; + } + } else if (substr($_index, 0, 1) == '.') { + if (substr($_index, 1, 1) == '$') + $_output .= "[\$this->_tpl_vars['" . substr($_index, 2) . "']]"; + else + $_output .= "['" . substr($_index, 1) . "']"; + } else if (substr($_index,0,2) == '->') { + if(substr($_index,2,2) == '__') { + $this->_syntax_error('call to internal object members is not allowed', E_USER_ERROR, __FILE__, __LINE__); + } elseif($this->security && substr($_index, 2, 1) == '_') { + $this->_syntax_error('(secure) call to private object member is not allowed', E_USER_ERROR, __FILE__, __LINE__); + } elseif (substr($_index, 2, 1) == '$') { + if ($this->security) { + $this->_syntax_error('(secure) call to dynamic object member is not allowed', E_USER_ERROR, __FILE__, __LINE__); + } else { + $_output .= '->{(($_var=$this->_tpl_vars[\''.substr($_index,3).'\']) && substr($_var,0,2)!=\'__\') ? $_var : $this->trigger_error("cannot access property \\"$_var\\"")}'; + } + } else { + $_output .= $_index; + } + } elseif (substr($_index, 0, 1) == '(') { + $_index = $this->_parse_parenth_args($_index); + $_output .= $_index; + } else { + $_output .= $_index; + } + } + } + + return $_output; + } + + /** + * parse arguments in function call parenthesis + * + * @param string $parenth_args + * @return string + */ + function _parse_parenth_args($parenth_args) + { + preg_match_all('~' . $this->_param_regexp . '~',$parenth_args, $match); + $orig_vals = $match = $match[0]; + $this->_parse_vars_props($match); + $replace = array(); + for ($i = 0, $count = count($match); $i < $count; $i++) { + $replace[$orig_vals[$i]] = $match[$i]; + } + return strtr($parenth_args, $replace); + } + + /** + * parse configuration variable expression into PHP code + * + * @param string $conf_var_expr + */ + function _parse_conf_var($conf_var_expr) + { + $parts = explode('|', $conf_var_expr, 2); + $var_ref = $parts[0]; + $modifiers = isset($parts[1]) ? $parts[1] : ''; + + $var_name = substr($var_ref, 1, -1); + + $output = "\$this->_config[0]['vars']['$var_name']"; + + $this->_parse_modifiers($output, $modifiers); + + return $output; + } + + /** + * parse section property expression into PHP code + * + * @param string $section_prop_expr + * @return string + */ + function _parse_section_prop($section_prop_expr) + { + $parts = explode('|', $section_prop_expr, 2); + $var_ref = $parts[0]; + $modifiers = isset($parts[1]) ? $parts[1] : ''; + + preg_match('!%(\w+)\.(\w+)%!', $var_ref, $match); + $section_name = $match[1]; + $prop_name = $match[2]; + + $output = "\$this->_sections['$section_name']['$prop_name']"; + + $this->_parse_modifiers($output, $modifiers); + + return $output; + } + + + /** + * parse modifier chain into PHP code + * + * sets $output to parsed modified chain + * @param string $output + * @param string $modifier_string + */ + function _parse_modifiers(&$output, $modifier_string) + { + preg_match_all('~\|(@?\w+)((?>:(?:'. $this->_qstr_regexp . '|[^|]+))*)~', '|' . $modifier_string, $_match); + list(, $_modifiers, $modifier_arg_strings) = $_match; + + for ($_i = 0, $_for_max = count($_modifiers); $_i < $_for_max; $_i++) { + $_modifier_name = $_modifiers[$_i]; + + if($_modifier_name == 'smarty') { + // skip smarty modifier + continue; + } + + preg_match_all('~:(' . $this->_qstr_regexp . '|[^:]+)~', $modifier_arg_strings[$_i], $_match); + $_modifier_args = $_match[1]; + + if (substr($_modifier_name, 0, 1) == '@') { + $_map_array = false; + $_modifier_name = substr($_modifier_name, 1); + } else { + $_map_array = true; + } + + if (empty($this->_plugins['modifier'][$_modifier_name]) + && !$this->_get_plugin_filepath('modifier', $_modifier_name) + && function_exists($_modifier_name)) { + if ($this->security && !in_array($_modifier_name, $this->security_settings['MODIFIER_FUNCS'])) { + $this->_trigger_fatal_error("[plugin] (secure mode) modifier '$_modifier_name' is not allowed" , $this->_current_file, $this->_current_line_no, __FILE__, __LINE__); + } else { + $this->_plugins['modifier'][$_modifier_name] = array($_modifier_name, null, null, false); + } + } + $this->_add_plugin('modifier', $_modifier_name); + + $this->_parse_vars_props($_modifier_args); + + if($_modifier_name == 'default') { + // supress notifications of default modifier vars and args + if(substr($output, 0, 1) == '$') { + $output = '@' . $output; + } + if(isset($_modifier_args[0]) && substr($_modifier_args[0], 0, 1) == '$') { + $_modifier_args[0] = '@' . $_modifier_args[0]; + } + } + if (count($_modifier_args) > 0) + $_modifier_args = ', '.implode(', ', $_modifier_args); + else + $_modifier_args = ''; + + if ($_map_array) { + $output = "((is_array(\$_tmp=$output)) ? \$this->_run_mod_handler('$_modifier_name', true, \$_tmp$_modifier_args) : " . $this->_compile_plugin_call('modifier', $_modifier_name) . "(\$_tmp$_modifier_args))"; + + } else { + + $output = $this->_compile_plugin_call('modifier', $_modifier_name)."($output$_modifier_args)"; + + } + } + } + + + /** + * add plugin + * + * @param string $type + * @param string $name + * @param boolean? $delayed_loading + */ + function _add_plugin($type, $name, $delayed_loading = null) + { + if (!isset($this->_plugin_info[$type])) { + $this->_plugin_info[$type] = array(); + } + if (!isset($this->_plugin_info[$type][$name])) { + $this->_plugin_info[$type][$name] = array($this->_current_file, + $this->_current_line_no, + $delayed_loading); + } + } + + + /** + * Compiles references of type $smarty.foo + * + * @param string $indexes + * @return string + */ + function _compile_smarty_ref(&$indexes) + { + /* Extract the reference name. */ + $_ref = substr($indexes[0], 1); + foreach($indexes as $_index_no=>$_index) { + if (substr($_index, 0, 1) != '.' && $_index_no<2 || !preg_match('~^(\.|\[|->)~', $_index)) { + $this->_syntax_error('$smarty' . implode('', array_slice($indexes, 0, 2)) . ' is an invalid reference', E_USER_ERROR, __FILE__, __LINE__); + } + } + + switch ($_ref) { + case 'now': + $compiled_ref = 'time()'; + $_max_index = 1; + break; + + case 'foreach': + array_shift($indexes); + $_var = $this->_parse_var_props(substr($indexes[0], 1)); + $_propname = substr($indexes[1], 1); + $_max_index = 1; + switch ($_propname) { + case 'index': + array_shift($indexes); + $compiled_ref = "(\$this->_foreach[$_var]['iteration']-1)"; + break; + + case 'first': + array_shift($indexes); + $compiled_ref = "(\$this->_foreach[$_var]['iteration'] <= 1)"; + break; + + case 'last': + array_shift($indexes); + $compiled_ref = "(\$this->_foreach[$_var]['iteration'] == \$this->_foreach[$_var]['total'])"; + break; + + case 'show': + array_shift($indexes); + $compiled_ref = "(\$this->_foreach[$_var]['total'] > 0)"; + break; + + default: + unset($_max_index); + $compiled_ref = "\$this->_foreach[$_var]"; + } + break; + + case 'section': + array_shift($indexes); + $_var = $this->_parse_var_props(substr($indexes[0], 1)); + $compiled_ref = "\$this->_sections[$_var]"; + break; + + case 'get': + $compiled_ref = ($this->request_use_auto_globals) ? '$_GET' : "\$GLOBALS['HTTP_GET_VARS']"; + break; + + case 'post': + $compiled_ref = ($this->request_use_auto_globals) ? '$_POST' : "\$GLOBALS['HTTP_POST_VARS']"; + break; + + case 'cookies': + $compiled_ref = ($this->request_use_auto_globals) ? '$_COOKIE' : "\$GLOBALS['HTTP_COOKIE_VARS']"; + break; + + case 'env': + $compiled_ref = ($this->request_use_auto_globals) ? '$_ENV' : "\$GLOBALS['HTTP_ENV_VARS']"; + break; + + case 'server': + $compiled_ref = ($this->request_use_auto_globals) ? '$_SERVER' : "\$GLOBALS['HTTP_SERVER_VARS']"; + break; + + case 'session': + $compiled_ref = ($this->request_use_auto_globals) ? '$_SESSION' : "\$GLOBALS['HTTP_SESSION_VARS']"; + break; + + /* + * These cases are handled either at run-time or elsewhere in the + * compiler. + */ + case 'request': + if ($this->request_use_auto_globals) { + $compiled_ref = '$_REQUEST'; + break; + } else { + $this->_init_smarty_vars = true; + } + return null; + + case 'capture': + return null; + + case 'template': + $compiled_ref = "'$this->_current_file'"; + $_max_index = 1; + break; + + case 'version': + $compiled_ref = "'$this->_version'"; + $_max_index = 1; + break; + + case 'const': + if ($this->security && !$this->security_settings['ALLOW_CONSTANTS']) { + $this->_syntax_error("(secure mode) constants not permitted", + E_USER_WARNING, __FILE__, __LINE__); + return; + } + array_shift($indexes); + if (preg_match('!^\.\w+$!', $indexes[0])) { + $compiled_ref = '@' . substr($indexes[0], 1); + } else { + $_val = $this->_parse_var_props(substr($indexes[0], 1)); + $compiled_ref = '@constant(' . $_val . ')'; + } + $_max_index = 1; + break; + + case 'config': + $compiled_ref = "\$this->_config[0]['vars']"; + $_max_index = 3; + break; + + case 'ldelim': + $compiled_ref = "'$this->left_delimiter'"; + break; + + case 'rdelim': + $compiled_ref = "'$this->right_delimiter'"; + break; + + default: + $this->_syntax_error('$smarty.' . $_ref . ' is an unknown reference', E_USER_ERROR, __FILE__, __LINE__); + break; + } + + if (isset($_max_index) && count($indexes) > $_max_index) { + $this->_syntax_error('$smarty' . implode('', $indexes) .' is an invalid reference', E_USER_ERROR, __FILE__, __LINE__); + } + + array_shift($indexes); + return $compiled_ref; + } + + /** + * compiles call to plugin of type $type with name $name + * returns a string containing the function-name or method call + * without the paramter-list that would have follow to make the + * call valid php-syntax + * + * @param string $type + * @param string $name + * @return string + */ + function _compile_plugin_call($type, $name) { + if (isset($this->_plugins[$type][$name])) { + /* plugin loaded */ + if (is_array($this->_plugins[$type][$name][0])) { + return ((is_object($this->_plugins[$type][$name][0][0])) ? + "\$this->_plugins['$type']['$name'][0][0]->" /* method callback */ + : (string)($this->_plugins[$type][$name][0][0]).'::' /* class callback */ + ). $this->_plugins[$type][$name][0][1]; + + } else { + /* function callback */ + return $this->_plugins[$type][$name][0]; + + } + } else { + /* plugin not loaded -> auto-loadable-plugin */ + return 'smarty_'.$type.'_'.$name; + + } + } + + /** + * load pre- and post-filters + */ + function _load_filters() + { + if (count($this->_plugins['prefilter']) > 0) { + foreach ($this->_plugins['prefilter'] as $filter_name => $prefilter) { + if ($prefilter === false) { + unset($this->_plugins['prefilter'][$filter_name]); + $_params = array('plugins' => array(array('prefilter', $filter_name, null, null, false))); + require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); + smarty_core_load_plugins($_params, $this); + } + } + } + if (count($this->_plugins['postfilter']) > 0) { + foreach ($this->_plugins['postfilter'] as $filter_name => $postfilter) { + if ($postfilter === false) { + unset($this->_plugins['postfilter'][$filter_name]); + $_params = array('plugins' => array(array('postfilter', $filter_name, null, null, false))); + require_once(SMARTY_CORE_DIR . 'core.load_plugins.php'); + smarty_core_load_plugins($_params, $this); + } + } + } + } + + + /** + * Quote subpattern references + * + * @param string $string + * @return string + */ + function _quote_replace($string) + { + return strtr($string, array('\\' => '\\\\', '$' => '\\$')); + } + + /** + * display Smarty syntax error + * + * @param string $error_msg + * @param integer $error_type + * @param string $file + * @param integer $line + */ + function _syntax_error($error_msg, $error_type = E_USER_ERROR, $file=null, $line=null) + { + $this->_trigger_fatal_error("syntax error: $error_msg", $this->_current_file, $this->_current_line_no, $file, $line, $error_type); + } + + + /** + * check if the compilation changes from cacheable to + * non-cacheable state with the beginning of the current + * plugin. return php-code to reflect the transition. + * @return string + */ + function _push_cacheable_state($type, $name) { + $_cacheable = !isset($this->_plugins[$type][$name]) || $this->_plugins[$type][$name][4]; + if ($_cacheable + || 0<$this->_cacheable_state++) return ''; + if (!isset($this->_cache_serial)) $this->_cache_serial = md5(uniqid('Smarty')); + $_ret = 'if ($this->caching && !$this->_cache_including) { echo \'{nocache:' + . $this->_cache_serial . '#' . $this->_nocache_count + . '}\'; };'; + return $_ret; + } + + + /** + * check if the compilation changes from non-cacheable to + * cacheable state with the end of the current plugin return + * php-code to reflect the transition. + * @return string + */ + function _pop_cacheable_state($type, $name) { + $_cacheable = !isset($this->_plugins[$type][$name]) || $this->_plugins[$type][$name][4]; + if ($_cacheable + || --$this->_cacheable_state>0) return ''; + return 'if ($this->caching && !$this->_cache_including) { echo \'{/nocache:' + . $this->_cache_serial . '#' . ($this->_nocache_count++) + . '}\'; };'; + } + + + /** + * push opening tag-name, file-name and line-number on the tag-stack + * @param string the opening tag's name + */ + function _push_tag($open_tag) + { + array_push($this->_tag_stack, array($open_tag, $this->_current_line_no)); + } + + /** + * pop closing tag-name + * raise an error if this stack-top doesn't match with the closing tag + * @param string the closing tag's name + * @return string the opening tag's name + */ + function _pop_tag($close_tag) + { + $message = ''; + if (count($this->_tag_stack)>0) { + list($_open_tag, $_line_no) = array_pop($this->_tag_stack); + if ($close_tag == $_open_tag) { + return $_open_tag; + } + if ($close_tag == 'if' && ($_open_tag == 'else' || $_open_tag == 'elseif' )) { + return $this->_pop_tag($close_tag); + } + if ($close_tag == 'section' && $_open_tag == 'sectionelse') { + $this->_pop_tag($close_tag); + return $_open_tag; + } + if ($close_tag == 'foreach' && $_open_tag == 'foreachelse') { + $this->_pop_tag($close_tag); + return $_open_tag; + } + if ($_open_tag == 'else' || $_open_tag == 'elseif') { + $_open_tag = 'if'; + } elseif ($_open_tag == 'sectionelse') { + $_open_tag = 'section'; + } elseif ($_open_tag == 'foreachelse') { + $_open_tag = 'foreach'; + } + $message = " expected {/$_open_tag} (opened line $_line_no)."; + } + $this->_syntax_error("mismatched tag {/$close_tag}.$message", + E_USER_ERROR, __FILE__, __LINE__); + } + +} + +/** + * compare to values by their string length + * + * @access private + * @param string $a + * @param string $b + * @return 0|-1|1 + */ +function _smarty_sort_length($a, $b) +{ + if($a == $b) + return 0; + + if(strlen($a) == strlen($b)) + return ($a > $b) ? -1 : 1; + + return (strlen($a) > strlen($b)) ? -1 : 1; +} + + +/* vim: set et: */ + +?> diff --git a/Source/gallery2/lib/smarty/debug.tpl b/Source/gallery2/lib/smarty/debug.tpl new file mode 100644 index 0000000..c05ef5d --- /dev/null +++ b/Source/gallery2/lib/smarty/debug.tpl @@ -0,0 +1,157 @@ +{* Smarty *} +{* debug.tpl, last updated version 2.1.0 *} +{assign_debug_info} +{capture assign=debug_output} + + + + Smarty Debug Console +{literal} + +{/literal} + + + +

    Smarty Debug Console

    + +

    included templates & config files (load time in seconds)

    + +
    +{section name=templates loop=$_debug_tpls} + {section name=indent loop=$_debug_tpls[templates].depth}   {/section} + + {$_debug_tpls[templates].filename|escape:html} + {if isset($_debug_tpls[templates].exec_time)} + + ({$_debug_tpls[templates].exec_time|string_format:"%.5f"}) + {if %templates.index% eq 0}(total){/if} + + {/if} +
    +{sectionelse} +

    no templates included

    +{/section} +
    + +

    assigned template variables

    + + + {section name=vars loop=$_debug_keys} + + + + {sectionelse} + + {/section} +
    {ldelim}${$_debug_keys[vars]|escape:'html'}{rdelim}{$_debug_vals[vars]|@debug_print_var}

    no template variables assigned

    + +

    assigned config file variables (outer template scope)

    + + + {section name=config_vars loop=$_debug_config_keys} + + + + {sectionelse} + + {/section} +
    {ldelim}#{$_debug_config_keys[config_vars]|escape:'html'}#{rdelim}{$_debug_config_vals[config_vars]|@debug_print_var}

    no config vars assigned

    + + +{/capture} +{if isset($_smarty_debug_output) and $_smarty_debug_output eq "html"} + {$debug_output} +{else} + +{/if} \ No newline at end of file diff --git a/Source/gallery2/lib/smarty/internals/core.assemble_plugin_filepath.php b/Source/gallery2/lib/smarty/internals/core.assemble_plugin_filepath.php new file mode 100644 index 0000000..690d3dd --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.assemble_plugin_filepath.php @@ -0,0 +1,67 @@ +plugins_dir as $_plugin_dir) { + + $_plugin_filepath = $_plugin_dir . DIRECTORY_SEPARATOR . $_plugin_filename; + + // see if path is relative + if (!preg_match("/^([\/\\\\]|[a-zA-Z]:[\/\\\\])/", $_plugin_dir)) { + $_relative_paths[] = $_plugin_dir; + // relative path, see if it is in the SMARTY_DIR + if (@is_readable(SMARTY_DIR . $_plugin_filepath)) { + $_return = SMARTY_DIR . $_plugin_filepath; + break; + } + } + // try relative to cwd (or absolute) + if (@is_readable($_plugin_filepath)) { + $_return = $_plugin_filepath; + break; + } + } + + if($_return === false) { + // still not found, try PHP include_path + if(isset($_relative_paths)) { + foreach ((array)$_relative_paths as $_plugin_dir) { + + $_plugin_filepath = $_plugin_dir . DIRECTORY_SEPARATOR . $_plugin_filename; + + $_params = array('file_path' => $_plugin_filepath); + require_once(SMARTY_CORE_DIR . 'core.get_include_path.php'); + if(smarty_core_get_include_path($_params, $smarty)) { + $_return = $_params['new_file_path']; + break; + } + } + } + } + $_filepaths_cache[$_plugin_filename] = $_return; + return $_return; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.assign_smarty_interface.php b/Source/gallery2/lib/smarty/internals/core.assign_smarty_interface.php new file mode 100644 index 0000000..7e65a73 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.assign_smarty_interface.php @@ -0,0 +1,43 @@ + + * Name: assign_smarty_interface
    + * Purpose: assign the $smarty interface variable + * @param array Format: null + * @param Smarty + */ +function smarty_core_assign_smarty_interface($params, &$smarty) +{ + if (isset($smarty->_smarty_vars) && isset($smarty->_smarty_vars['request'])) { + return; + } + + $_globals_map = array('g' => 'HTTP_GET_VARS', + 'p' => 'HTTP_POST_VARS', + 'c' => 'HTTP_COOKIE_VARS', + 's' => 'HTTP_SERVER_VARS', + 'e' => 'HTTP_ENV_VARS'); + + $_smarty_vars_request = array(); + + foreach (preg_split('!!', strtolower($smarty->request_vars_order)) as $_c) { + if (isset($_globals_map[$_c])) { + $_smarty_vars_request = array_merge($_smarty_vars_request, $GLOBALS[$_globals_map[$_c]]); + } + } + $_smarty_vars_request = @array_merge($_smarty_vars_request, $GLOBALS['HTTP_SESSION_VARS']); + + $smarty->_smarty_vars['request'] = $_smarty_vars_request; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.create_dir_structure.php b/Source/gallery2/lib/smarty/internals/core.create_dir_structure.php new file mode 100644 index 0000000..3eecc49 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.create_dir_structure.php @@ -0,0 +1,79 @@ +_dir_perms) && !is_dir($_new_dir)) { + $smarty->trigger_error("problem creating directory '" . $_new_dir . "'"); + return false; + } + $_new_dir .= '/'; + } + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.display_debug_console.php b/Source/gallery2/lib/smarty/internals/core.display_debug_console.php new file mode 100644 index 0000000..1a80f39 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.display_debug_console.php @@ -0,0 +1,61 @@ + + * Name: display_debug_console
    + * Purpose: display the javascript debug console window + * @param array Format: null + * @param Smarty + */ +function smarty_core_display_debug_console($params, &$smarty) +{ + // we must force compile the debug template in case the environment + // changed between separate applications. + + if(empty($smarty->debug_tpl)) { + // set path to debug template from SMARTY_DIR + $smarty->debug_tpl = SMARTY_DIR . 'debug.tpl'; + if($smarty->security && is_file($smarty->debug_tpl)) { + $smarty->secure_dir[] = realpath($smarty->debug_tpl); + } + $smarty->debug_tpl = 'file:' . SMARTY_DIR . 'debug.tpl'; + } + + $_ldelim_orig = $smarty->left_delimiter; + $_rdelim_orig = $smarty->right_delimiter; + + $smarty->left_delimiter = '{'; + $smarty->right_delimiter = '}'; + + $_compile_id_orig = $smarty->_compile_id; + $smarty->_compile_id = null; + + $_compile_path = $smarty->_get_compile_path($smarty->debug_tpl); + if ($smarty->_compile_resource($smarty->debug_tpl, $_compile_path)) + { + ob_start(); + $smarty->_include($_compile_path); + $_results = ob_get_contents(); + ob_end_clean(); + } else { + $_results = ''; + } + + $smarty->_compile_id = $_compile_id_orig; + + $smarty->left_delimiter = $_ldelim_orig; + $smarty->right_delimiter = $_rdelim_orig; + + return $_results; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.get_include_path.php b/Source/gallery2/lib/smarty/internals/core.get_include_path.php new file mode 100644 index 0000000..4343241 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.get_include_path.php @@ -0,0 +1,44 @@ + diff --git a/Source/gallery2/lib/smarty/internals/core.get_microtime.php b/Source/gallery2/lib/smarty/internals/core.get_microtime.php new file mode 100644 index 0000000..f1a28e0 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.get_microtime.php @@ -0,0 +1,23 @@ + diff --git a/Source/gallery2/lib/smarty/internals/core.get_php_resource.php b/Source/gallery2/lib/smarty/internals/core.get_php_resource.php new file mode 100644 index 0000000..786d4e7 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.get_php_resource.php @@ -0,0 +1,80 @@ +trusted_dir; + $smarty->_parse_resource_name($params, $smarty); + + /* + * Find out if the resource exists. + */ + + if ($params['resource_type'] == 'file') { + $_readable = false; + if(file_exists($params['resource_name']) && is_readable($params['resource_name'])) { + $_readable = true; + } else { + // test for file in include_path + $_params = array('file_path' => $params['resource_name']); + require_once(SMARTY_CORE_DIR . 'core.get_include_path.php'); + if(smarty_core_get_include_path($_params, $smarty)) { + $_include_path = $_params['new_file_path']; + $_readable = true; + } + } + } else if ($params['resource_type'] != 'file') { + $_template_source = null; + $_readable = is_callable($smarty->_plugins['resource'][$params['resource_type']][0][0]) + && call_user_func_array($smarty->_plugins['resource'][$params['resource_type']][0][0], + array($params['resource_name'], &$_template_source, &$smarty)); + } + + /* + * Set the error function, depending on which class calls us. + */ + if (method_exists($smarty, '_syntax_error')) { + $_error_funcc = '_syntax_error'; + } else { + $_error_funcc = 'trigger_error'; + } + + if ($_readable) { + if ($smarty->security) { + require_once(SMARTY_CORE_DIR . 'core.is_trusted.php'); + if (!smarty_core_is_trusted($params, $smarty)) { + $smarty->$_error_funcc('(secure mode) ' . $params['resource_type'] . ':' . $params['resource_name'] . ' is not trusted'); + return false; + } + } + } else { + $smarty->$_error_funcc($params['resource_type'] . ':' . $params['resource_name'] . ' is not readable'); + return false; + } + + if ($params['resource_type'] == 'file') { + $params['php_resource'] = $params['resource_name']; + } else { + $params['php_resource'] = $_template_source; + } + return true; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.is_secure.php b/Source/gallery2/lib/smarty/internals/core.is_secure.php new file mode 100644 index 0000000..d54abd4 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.is_secure.php @@ -0,0 +1,59 @@ +security || $smarty->security_settings['INCLUDE_ANY']) { + return true; + } + + if ($params['resource_type'] == 'file') { + $_rp = realpath($params['resource_name']); + if (isset($params['resource_base_path'])) { + foreach ((array)$params['resource_base_path'] as $curr_dir) { + if ( ($_cd = realpath($curr_dir)) !== false && + strncmp($_rp, $_cd, strlen($_cd)) == 0 && + substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR ) { + return true; + } + } + } + if (!empty($smarty->secure_dir)) { + foreach ((array)$smarty->secure_dir as $curr_dir) { + if ( ($_cd = realpath($curr_dir)) !== false) { + if($_cd == $_rp) { + return true; + } elseif (strncmp($_rp, $_cd, strlen($_cd)) == 0 && + substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR) { + return true; + } + } + } + } + } else { + // resource is not on local file system + return call_user_func_array( + $smarty->_plugins['resource'][$params['resource_type']][0][2], + array($params['resource_name'], &$smarty)); + } + + return false; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.is_trusted.php b/Source/gallery2/lib/smarty/internals/core.is_trusted.php new file mode 100644 index 0000000..4299731 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.is_trusted.php @@ -0,0 +1,47 @@ +trusted_dir)) { + $_rp = realpath($params['resource_name']); + foreach ((array)$smarty->trusted_dir as $curr_dir) { + if (!empty($curr_dir) && is_readable ($curr_dir)) { + $_cd = realpath($curr_dir); + if (strncmp($_rp, $_cd, strlen($_cd)) == 0 + && substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR ) { + $_smarty_trusted = true; + break; + } + } + } + } + + } else { + // resource is not on local file system + $_smarty_trusted = call_user_func_array($smarty->_plugins['resource'][$params['resource_type']][0][3], + array($params['resource_name'], $smarty)); + } + + return $_smarty_trusted; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.load_plugins.php b/Source/gallery2/lib/smarty/internals/core.load_plugins.php new file mode 100644 index 0000000..6db1dc5 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.load_plugins.php @@ -0,0 +1,125 @@ +_plugins[$_type][$_name]; + + /* + * We do not load plugin more than once for each instance of Smarty. + * The following code checks for that. The plugin can also be + * registered dynamically at runtime, in which case template file + * and line number will be unknown, so we fill them in. + * + * The final element of the info array is a flag that indicates + * whether the dynamically registered plugin function has been + * checked for existence yet or not. + */ + if (isset($_plugin)) { + if (empty($_plugin[3])) { + if (!is_callable($_plugin[0])) { + $smarty->_trigger_fatal_error("[plugin] $_type '$_name' is not implemented", $_tpl_file, $_tpl_line, __FILE__, __LINE__); + } else { + $_plugin[1] = $_tpl_file; + $_plugin[2] = $_tpl_line; + $_plugin[3] = true; + if (!isset($_plugin[4])) $_plugin[4] = true; /* cacheable */ + } + } + continue; + } else if ($_type == 'insert') { + /* + * For backwards compatibility, we check for insert functions in + * the symbol table before trying to load them as a plugin. + */ + $_plugin_func = 'insert_' . $_name; + if (function_exists($_plugin_func)) { + $_plugin = array($_plugin_func, $_tpl_file, $_tpl_line, true, false); + continue; + } + } + + $_plugin_file = $smarty->_get_plugin_filepath($_type, $_name); + + if (! $_found = ($_plugin_file != false)) { + $_message = "could not load plugin file '$_type.$_name.php'\n"; + } + + /* + * If plugin file is found, it -must- provide the properly named + * plugin function. In case it doesn't, simply output the error and + * do not fall back on any other method. + */ + if ($_found) { + include_once $_plugin_file; + + $_plugin_func = 'smarty_' . $_type . '_' . $_name; + if (!function_exists($_plugin_func)) { + $smarty->_trigger_fatal_error("[plugin] function $_plugin_func() not found in $_plugin_file", $_tpl_file, $_tpl_line, __FILE__, __LINE__); + continue; + } + } + /* + * In case of insert plugins, their code may be loaded later via + * 'script' attribute. + */ + else if ($_type == 'insert' && $_delayed_loading) { + $_plugin_func = 'smarty_' . $_type . '_' . $_name; + $_found = true; + } + + /* + * Plugin specific processing and error checking. + */ + if (!$_found) { + if ($_type == 'modifier') { + /* + * In case modifier falls back on using PHP functions + * directly, we only allow those specified in the security + * context. + */ + if ($smarty->security && !in_array($_name, $smarty->security_settings['MODIFIER_FUNCS'])) { + $_message = "(secure mode) modifier '$_name' is not allowed"; + } else { + if (!function_exists($_name)) { + $_message = "modifier '$_name' is not implemented"; + } else { + $_plugin_func = $_name; + $_found = true; + } + } + } else if ($_type == 'function') { + /* + * This is a catch-all situation. + */ + $_message = "unknown tag - '$_name'"; + } + } + + if ($_found) { + $smarty->_plugins[$_type][$_name] = array($_plugin_func, $_tpl_file, $_tpl_line, true, true); + } else { + // output error + $smarty->_trigger_fatal_error('[plugin] ' . $_message, $_tpl_file, $_tpl_line, __FILE__, __LINE__); + } + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.load_resource_plugin.php b/Source/gallery2/lib/smarty/internals/core.load_resource_plugin.php new file mode 100644 index 0000000..a7d37d1 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.load_resource_plugin.php @@ -0,0 +1,74 @@ +_plugins['resource'][$params['type']]; + if (isset($_plugin)) { + if (!$_plugin[1] && count($_plugin[0])) { + $_plugin[1] = true; + foreach ($_plugin[0] as $_plugin_func) { + if (!is_callable($_plugin_func)) { + $_plugin[1] = false; + break; + } + } + } + + if (!$_plugin[1]) { + $smarty->_trigger_fatal_error("[plugin] resource '" . $params['type'] . "' is not implemented", null, null, __FILE__, __LINE__); + } + + return; + } + + $_plugin_file = $smarty->_get_plugin_filepath('resource', $params['type']); + $_found = ($_plugin_file != false); + + if ($_found) { /* + * If the plugin file is found, it -must- provide the properly named + * plugin functions. + */ + include_once($_plugin_file); + + /* + * Locate functions that we require the plugin to provide. + */ + $_resource_ops = array('source', 'timestamp', 'secure', 'trusted'); + $_resource_funcs = array(); + foreach ($_resource_ops as $_op) { + $_plugin_func = 'smarty_resource_' . $params['type'] . '_' . $_op; + if (!function_exists($_plugin_func)) { + $smarty->_trigger_fatal_error("[plugin] function $_plugin_func() not found in $_plugin_file", null, null, __FILE__, __LINE__); + return; + } else { + $_resource_funcs[] = $_plugin_func; + } + } + + $smarty->_plugins['resource'][$params['type']] = array($_resource_funcs, true); + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.process_cached_inserts.php b/Source/gallery2/lib/smarty/internals/core.process_cached_inserts.php new file mode 100644 index 0000000..1d78edd --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.process_cached_inserts.php @@ -0,0 +1,71 @@ +_smarty_md5.'{insert_cache (.*)}'.$smarty->_smarty_md5.'!Uis', + $params['results'], $match); + list($cached_inserts, $insert_args) = $match; + + for ($i = 0, $for_max = count($cached_inserts); $i < $for_max; $i++) { + if ($smarty->debugging) { + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $debug_start_time = smarty_core_get_microtime($_params, $smarty); + } + + $args = unserialize($insert_args[$i]); + $name = $args['name']; + + if (isset($args['script'])) { + $_params = array('resource_name' => $smarty->_dequote($args['script'])); + require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); + if(!smarty_core_get_php_resource($_params, $smarty)) { + return false; + } + $resource_type = $_params['resource_type']; + $php_resource = $_params['php_resource']; + + + if ($resource_type == 'file') { + $smarty->_include($php_resource, true); + } else { + $smarty->_eval($php_resource); + } + } + + $function_name = $smarty->_plugins['insert'][$name][0]; + if (empty($args['assign'])) { + $replace = $function_name($args, $smarty); + } else { + $smarty->assign($args['assign'], $function_name($args, $smarty)); + $replace = ''; + } + + $params['results'] = substr_replace($params['results'], $replace, strpos($params['results'], $cached_inserts[$i]), strlen($cached_inserts[$i])); + if ($smarty->debugging) { + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $smarty->_smarty_debug_info[] = array('type' => 'insert', + 'filename' => 'insert_'.$name, + 'depth' => $smarty->_inclusion_depth, + 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $debug_start_time); + } + } + + return $params['results']; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.process_compiled_include.php b/Source/gallery2/lib/smarty/internals/core.process_compiled_include.php new file mode 100644 index 0000000..d539423 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.process_compiled_include.php @@ -0,0 +1,37 @@ +_cache_including; + $smarty->_cache_including = true; + + $_return = $params['results']; + + foreach ($smarty->_cache_info['cache_serials'] as $_include_file_path=>$_cache_serial) { + $smarty->_include($_include_file_path, true); + } + + foreach ($smarty->_cache_serials as $_include_file_path=>$_cache_serial) { + $_return = preg_replace_callback('!(\{nocache\:('.$_cache_serial.')#(\d+)\})!s', + array(&$smarty, '_process_compiled_include_callback'), + $_return); + } + $smarty->_cache_including = $_cache_including; + return $_return; +} + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.read_cache_file.php b/Source/gallery2/lib/smarty/internals/core.read_cache_file.php new file mode 100644 index 0000000..c60e113 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.read_cache_file.php @@ -0,0 +1,101 @@ +force_compile) { + // force compile enabled, always regenerate + return false; + } + + if (isset($content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']])) { + list($params['results'], $smarty->_cache_info) = $content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']]; + return true; + } + + if (!empty($smarty->cache_handler_func)) { + // use cache_handler function + call_user_func_array($smarty->cache_handler_func, + array('read', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], null)); + } else { + // use local cache file + $_auto_id = $smarty->_get_auto_id($params['cache_id'], $params['compile_id']); + $_cache_file = $smarty->_get_auto_filename($smarty->cache_dir, $params['tpl_file'], $_auto_id); + $params['results'] = $smarty->_read_file($_cache_file); + } + + if (empty($params['results'])) { + // nothing to parse (error?), regenerate cache + return false; + } + + $_contents = $params['results']; + $_info_start = strpos($_contents, "\n") + 1; + $_info_len = (int)substr($_contents, 0, $_info_start - 1); + $_cache_info = unserialize(substr($_contents, $_info_start, $_info_len)); + $params['results'] = substr($_contents, $_info_start + $_info_len); + + if ($smarty->caching == 2 && isset ($_cache_info['expires'])){ + // caching by expiration time + if ($_cache_info['expires'] > -1 && (time() > $_cache_info['expires'])) { + // cache expired, regenerate + return false; + } + } else { + // caching by lifetime + if ($smarty->cache_lifetime > -1 && (time() - $_cache_info['timestamp'] > $smarty->cache_lifetime)) { + // cache expired, regenerate + return false; + } + } + + if ($smarty->compile_check) { + $_params = array('get_source' => false, 'quiet'=>true); + foreach (array_keys($_cache_info['template']) as $_template_dep) { + $_params['resource_name'] = $_template_dep; + if (!$smarty->_fetch_resource_info($_params) || $_cache_info['timestamp'] < $_params['resource_timestamp']) { + // template file has changed, regenerate cache + return false; + } + } + + if (isset($_cache_info['config'])) { + $_params = array('resource_base_path' => $smarty->config_dir, 'get_source' => false, 'quiet'=>true); + foreach (array_keys($_cache_info['config']) as $_config_dep) { + $_params['resource_name'] = $_config_dep; + if (!$smarty->_fetch_resource_info($_params) || $_cache_info['timestamp'] < $_params['resource_timestamp']) { + // config file has changed, regenerate cache + return false; + } + } + } + } + + $content_cache[$params['tpl_file'].','.$params['cache_id'].','.$params['compile_id']] = array($params['results'], $_cache_info); + + $smarty->_cache_info = $_cache_info; + return true; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.rm_auto.php b/Source/gallery2/lib/smarty/internals/core.rm_auto.php new file mode 100644 index 0000000..b251f64 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.rm_auto.php @@ -0,0 +1,71 @@ + $params['auto_base'], + 'level' => 0, + 'exp_time' => $params['exp_time'] + ); + require_once(SMARTY_CORE_DIR . 'core.rmdir.php'); + $_res = smarty_core_rmdir($_params, $smarty); + } else { + $_tname = $smarty->_get_auto_filename($params['auto_base'], $params['auto_source'], $params['auto_id']); + + if(isset($params['auto_source'])) { + if (isset($params['extensions'])) { + $_res = false; + foreach ((array)$params['extensions'] as $_extension) + $_res |= $smarty->_unlink($_tname.$_extension, $params['exp_time']); + } else { + $_res = $smarty->_unlink($_tname, $params['exp_time']); + } + } elseif ($smarty->use_sub_dirs) { + $_params = array( + 'dirname' => $_tname, + 'level' => 1, + 'exp_time' => $params['exp_time'] + ); + require_once(SMARTY_CORE_DIR . 'core.rmdir.php'); + $_res = smarty_core_rmdir($_params, $smarty); + } else { + // remove matching file names + $_handle = opendir($params['auto_base']); + $_res = true; + while (false !== ($_filename = readdir($_handle))) { + if($_filename == '.' || $_filename == '..') { + continue; + } elseif (substr($params['auto_base'] . DIRECTORY_SEPARATOR . $_filename, 0, strlen($_tname)) == $_tname) { + $_res &= (bool)$smarty->_unlink($params['auto_base'] . DIRECTORY_SEPARATOR . $_filename, $params['exp_time']); + } + } + } + } + + return $_res; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.rmdir.php b/Source/gallery2/lib/smarty/internals/core.rmdir.php new file mode 100644 index 0000000..2166c44 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.rmdir.php @@ -0,0 +1,54 @@ + keep root) + * WARNING: no tests, it will try to remove what you tell it! + * + * @param string $dirname + * @param integer $level + * @param integer $exp_time + * @return boolean + */ + +// $dirname, $level = 1, $exp_time = null + +function smarty_core_rmdir($params, &$smarty) +{ + if(!isset($params['level'])) { $params['level'] = 1; } + if(!isset($params['exp_time'])) { $params['exp_time'] = null; } + + if($_handle = @opendir($params['dirname'])) { + + while (false !== ($_entry = readdir($_handle))) { + if ($_entry != '.' && $_entry != '..') { + if (@is_dir($params['dirname'] . DIRECTORY_SEPARATOR . $_entry)) { + $_params = array( + 'dirname' => $params['dirname'] . DIRECTORY_SEPARATOR . $_entry, + 'level' => $params['level'] + 1, + 'exp_time' => $params['exp_time'] + ); + smarty_core_rmdir($_params, $smarty); + } + else { + $smarty->_unlink($params['dirname'] . DIRECTORY_SEPARATOR . $_entry, $params['exp_time']); + } + } + } + closedir($_handle); + } + + if ($params['level']) { + return @rmdir($params['dirname']); + } + return (bool)$_handle; + +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.run_insert_handler.php b/Source/gallery2/lib/smarty/internals/core.run_insert_handler.php new file mode 100644 index 0000000..71c3845 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.run_insert_handler.php @@ -0,0 +1,71 @@ +debugging) { + $_params = array(); + $_debug_start_time = smarty_core_get_microtime($_params, $smarty); + } + + if ($smarty->caching) { + $_arg_string = serialize($params['args']); + $_name = $params['args']['name']; + if (!isset($smarty->_cache_info['insert_tags'][$_name])) { + $smarty->_cache_info['insert_tags'][$_name] = array('insert', + $_name, + $smarty->_plugins['insert'][$_name][1], + $smarty->_plugins['insert'][$_name][2], + !empty($params['args']['script']) ? true : false); + } + return $smarty->_smarty_md5."{insert_cache $_arg_string}".$smarty->_smarty_md5; + } else { + if (isset($params['args']['script'])) { + $_params = array('resource_name' => $smarty->_dequote($params['args']['script'])); + require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); + if(!smarty_core_get_php_resource($_params, $smarty)) { + return false; + } + + if ($_params['resource_type'] == 'file') { + $smarty->_include($_params['php_resource'], true); + } else { + $smarty->_eval($_params['php_resource']); + } + unset($params['args']['script']); + } + + $_funcname = $smarty->_plugins['insert'][$params['args']['name']][0]; + $_content = $_funcname($params['args'], $smarty); + if ($smarty->debugging) { + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $smarty->_smarty_debug_info[] = array('type' => 'insert', + 'filename' => 'insert_'.$params['args']['name'], + 'depth' => $smarty->_inclusion_depth, + 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time); + } + + if (!empty($params['args']["assign"])) { + $smarty->assign($params['args']["assign"], $_content); + } else { + return $_content; + } + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.smarty_include_php.php b/Source/gallery2/lib/smarty/internals/core.smarty_include_php.php new file mode 100644 index 0000000..30c6e76 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.smarty_include_php.php @@ -0,0 +1,50 @@ + $params['smarty_file']); + require_once(SMARTY_CORE_DIR . 'core.get_php_resource.php'); + smarty_core_get_php_resource($_params, $smarty); + $_smarty_resource_type = $_params['resource_type']; + $_smarty_php_resource = $_params['php_resource']; + + if (!empty($params['smarty_assign'])) { + ob_start(); + if ($_smarty_resource_type == 'file') { + $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); + } else { + $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); + } + $smarty->assign($params['smarty_assign'], ob_get_contents()); + ob_end_clean(); + } else { + if ($_smarty_resource_type == 'file') { + $smarty->_include($_smarty_php_resource, $params['smarty_once'], $params['smarty_include_vars']); + } else { + $smarty->_eval($_smarty_php_resource, $params['smarty_include_vars']); + } + } +} + + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.write_cache_file.php b/Source/gallery2/lib/smarty/internals/core.write_cache_file.php new file mode 100644 index 0000000..72f785b --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.write_cache_file.php @@ -0,0 +1,96 @@ +_cache_info['timestamp'] = time(); + if ($smarty->cache_lifetime > -1){ + // expiration set + $smarty->_cache_info['expires'] = $smarty->_cache_info['timestamp'] + $smarty->cache_lifetime; + } else { + // cache will never expire + $smarty->_cache_info['expires'] = -1; + } + + // collapse nocache.../nocache-tags + if (preg_match_all('!\{(/?)nocache\:[0-9a-f]{32}#\d+\}!', $params['results'], $match, PREG_PATTERN_ORDER)) { + // remove everything between every pair of outermost noache.../nocache-tags + // and replace it by a single nocache-tag + // this new nocache-tag will be replaced by dynamic contents in + // smarty_core_process_compiled_includes() on a cache-read + + $match_count = count($match[0]); + $results = preg_split('!(\{/?nocache\:[0-9a-f]{32}#\d+\})!', $params['results'], -1, PREG_SPLIT_DELIM_CAPTURE); + + $level = 0; + $j = 0; + for ($i=0, $results_count = count($results); $i < $results_count && $j < $match_count; $i++) { + if ($results[$i] == $match[0][$j]) { + // nocache tag + if ($match[1][$j]) { // closing tag + $level--; + unset($results[$i]); + } else { // opening tag + if ($level++ > 0) unset($results[$i]); + } + $j++; + } elseif ($level > 0) { + unset($results[$i]); + } + } + $params['results'] = implode('', $results); + } + $smarty->_cache_info['cache_serials'] = $smarty->_cache_serials; + + // prepend the cache header info into cache file + $_cache_info = serialize($smarty->_cache_info); + $params['results'] = strlen($_cache_info) . "\n" . $_cache_info . $params['results']; + + if (!empty($smarty->cache_handler_func)) { + // use cache_handler function + call_user_func_array($smarty->cache_handler_func, + array('write', &$smarty, &$params['results'], $params['tpl_file'], $params['cache_id'], $params['compile_id'], null)); + } else { + // use local cache file + + if(!@is_writable($smarty->cache_dir)) { + // cache_dir not writable, see if it exists + if(!@is_dir($smarty->cache_dir)) { + $smarty->trigger_error('the $cache_dir \'' . $smarty->cache_dir . '\' does not exist, or is not a directory.', E_USER_ERROR); + return false; + } + $smarty->trigger_error('unable to write to $cache_dir \'' . realpath($smarty->cache_dir) . '\'. Be sure $cache_dir is writable by the web server user.', E_USER_ERROR); + return false; + } + + $_auto_id = $smarty->_get_auto_id($params['cache_id'], $params['compile_id']); + $_cache_file = $smarty->_get_auto_filename($smarty->cache_dir, $params['tpl_file'], $_auto_id); + $_params = array('filename' => $_cache_file, 'contents' => $params['results'], 'create_dirs' => true); + require_once(SMARTY_CORE_DIR . 'core.write_file.php'); + smarty_core_write_file($_params, $smarty); + return true; + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.write_compiled_include.php b/Source/gallery2/lib/smarty/internals/core.write_compiled_include.php new file mode 100644 index 0000000..3a78094 --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.write_compiled_include.php @@ -0,0 +1,91 @@ +caching && \!\$this->_cache_including\) \{ echo \'\{nocache\:('.$params['cache_serial'].')#(\d+)\}\'; \};'; + $_tag_end = 'if \(\$this->caching && \!\$this->_cache_including\) \{ echo \'\{/nocache\:(\\2)#(\\3)\}\'; \};'; + + preg_match_all('!('.$_tag_start.'(.*)'.$_tag_end.')!Us', + $params['compiled_content'], $_match_source, PREG_SET_ORDER); + + // no nocache-parts found: done + if (count($_match_source)==0) return; + + // convert the matched php-code to functions + $_include_compiled = "_version.", created on ".strftime("%Y-%m-%d %H:%M:%S")."\n"; + $_include_compiled .= " compiled from " . strtr(urlencode($params['resource_name']), array('%2F'=>'/', '%3A'=>':')) . " */\n\n"; + + $_compile_path = $params['include_file_path']; + + $smarty->_cache_serials[$_compile_path] = $params['cache_serial']; + $_include_compiled .= "\$this->_cache_serials['".$_compile_path."'] = '".$params['cache_serial']."';\n\n?>"; + + $_include_compiled .= $params['plugins_code']; + $_include_compiled .= "= 5.0) ? '_smarty' : 'this'; + for ($_i = 0, $_for_max = count($_match_source); $_i < $_for_max; $_i++) { + $_match =& $_match_source[$_i]; + $source = $_match[4]; + if ($this_varname == '_smarty') { + /* rename $this to $_smarty in the sourcecode */ + $tokens = token_get_all('\n"; + + $_params = array('filename' => $_compile_path, + 'contents' => $_include_compiled, 'create_dirs' => true); + + require_once(SMARTY_CORE_DIR . 'core.write_file.php'); + smarty_core_write_file($_params, $smarty); + return true; +} + + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.write_compiled_resource.php b/Source/gallery2/lib/smarty/internals/core.write_compiled_resource.php new file mode 100644 index 0000000..b902eff --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.write_compiled_resource.php @@ -0,0 +1,35 @@ +compile_dir)) { + // compile_dir not writable, see if it exists + if(!@is_dir($smarty->compile_dir)) { + $smarty->trigger_error('the $compile_dir \'' . $smarty->compile_dir . '\' does not exist, or is not a directory.', E_USER_ERROR); + return false; + } + $smarty->trigger_error('unable to write to $compile_dir \'' . realpath($smarty->compile_dir) . '\'. Be sure $compile_dir is writable by the web server user.', E_USER_ERROR); + return false; + } + + $_params = array('filename' => $params['compile_path'], 'contents' => $params['compiled_content'], 'create_dirs' => true); + require_once(SMARTY_CORE_DIR . 'core.write_file.php'); + smarty_core_write_file($_params, $smarty); + return true; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/internals/core.write_file.php b/Source/gallery2/lib/smarty/internals/core.write_file.php new file mode 100644 index 0000000..48a3b1a --- /dev/null +++ b/Source/gallery2/lib/smarty/internals/core.write_file.php @@ -0,0 +1,54 @@ + $_dirname); + require_once(SMARTY_CORE_DIR . 'core.create_dir_structure.php'); + smarty_core_create_dir_structure($_params, $smarty); + } + + // write to tmp file, then rename it to avoid file locking race condition + $_tmp_file = tempnam($_dirname, 'wrt'); + + if (!($fd = @fopen($_tmp_file, 'wb'))) { + $_tmp_file = $_dirname . DIRECTORY_SEPARATOR . uniqid('wrt'); + if (!($fd = @fopen($_tmp_file, 'wb'))) { + $smarty->trigger_error("problem writing temporary file '$_tmp_file'"); + return false; + } + } + + fwrite($fd, $params['contents']); + fclose($fd); + + if (PHP_OS == 'Windows' || !@rename($_tmp_file, $params['filename'])) { + // On platforms and filesystems that cannot overwrite with rename() + // delete the file before renaming it -- because windows always suffers + // this, it is short-circuited to avoid the initial rename() attempt + @unlink($params['filename']); + @rename($_tmp_file, $params['filename']); + } + @chmod($params['filename'], $smarty->_file_perms); + + return true; +} + +/* vim: set expandtab: */ + +?> \ No newline at end of file diff --git a/Source/gallery2/lib/smarty/plugins/block.textformat.php b/Source/gallery2/lib/smarty/plugins/block.textformat.php new file mode 100644 index 0000000..8cd010a --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/block.textformat.php @@ -0,0 +1,103 @@ + + * Name: textformat
    + * Purpose: format text a certain way with preset styles + * or custom wrap/indent settings
    + * @link http://smarty.php.net/manual/en/language.function.textformat.php {textformat} + * (Smarty online manual) + * @param array + *
    + * Params:   style: string (email)
    + *           indent: integer (0)
    + *           wrap: integer (80)
    + *           wrap_char string ("\n")
    + *           indent_char: string (" ")
    + *           wrap_boundary: boolean (true)
    + * 
    + * @author Monte Ohrt + * @param string contents of the block + * @param Smarty clever simulation of a method + * @return string string $content re-formatted + */ +function smarty_block_textformat($params, $content, &$smarty) +{ + if (is_null($content)) { + return; + } + + $style = null; + $indent = 0; + $indent_first = 0; + $indent_char = ' '; + $wrap = 80; + $wrap_char = "\n"; + $wrap_cut = false; + $assign = null; + + foreach ($params as $_key => $_val) { + switch ($_key) { + case 'style': + case 'indent_char': + case 'wrap_char': + case 'assign': + $$_key = (string)$_val; + break; + + case 'indent': + case 'indent_first': + case 'wrap': + $$_key = (int)$_val; + break; + + case 'wrap_cut': + $$_key = (bool)$_val; + break; + + default: + $smarty->trigger_error("textformat: unknown attribute '$_key'"); + } + } + + if ($style == 'email') { + $wrap = 72; + } + + // split into paragraphs + $_paragraphs = preg_split('![\r\n][\r\n]!',$content); + $_output = ''; + + for($_x = 0, $_y = count($_paragraphs); $_x < $_y; $_x++) { + if ($_paragraphs[$_x] == '') { + continue; + } + // convert mult. spaces & special chars to single space + $_paragraphs[$_x] = preg_replace(array('!\s+!','!(^\s+)|(\s+$)!'), array(' ',''), $_paragraphs[$_x]); + // indent first line + if($indent_first > 0) { + $_paragraphs[$_x] = str_repeat($indent_char, $indent_first) . $_paragraphs[$_x]; + } + // wordwrap sentences + $_paragraphs[$_x] = wordwrap($_paragraphs[$_x], $wrap - $indent, $wrap_char, $wrap_cut); + // indent lines + if($indent > 0) { + $_paragraphs[$_x] = preg_replace('!^!m', str_repeat($indent_char, $indent), $_paragraphs[$_x]); + } + } + $_output = implode($wrap_char . $wrap_char, $_paragraphs); + + return $assign ? $smarty->assign($assign, $_output) : $_output; + +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/compiler.assign.php b/Source/gallery2/lib/smarty/plugins/compiler.assign.php new file mode 100644 index 0000000..be17298 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/compiler.assign.php @@ -0,0 +1,40 @@ + + * Name: assign
    + * Purpose: assign a value to a template variable + * @link http://smarty.php.net/manual/en/language.custom.functions.php#LANGUAGE.FUNCTION.ASSIGN {assign} + * (Smarty online manual) + * @author Monte Ohrt (initial author) + * @auther messju mohr (conversion to compiler function) + * @param string containing var-attribute and value-attribute + * @param Smarty_Compiler + */ +function smarty_compiler_assign($tag_attrs, &$compiler) +{ + $_params = $compiler->_parse_attrs($tag_attrs); + + if (!isset($_params['var'])) { + $compiler->_syntax_error("assign: missing 'var' parameter", E_USER_WARNING); + return; + } + + if (!isset($_params['value'])) { + $compiler->_syntax_error("assign: missing 'value' parameter", E_USER_WARNING); + return; + } + + return "\$this->assign({$_params['var']}, {$_params['value']});"; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.assign_debug_info.php b/Source/gallery2/lib/smarty/plugins/function.assign_debug_info.php new file mode 100644 index 0000000..6540498 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.assign_debug_info.php @@ -0,0 +1,40 @@ + + * Name: assign_debug_info
    + * Purpose: assign debug info to the template
    + * @author Monte Ohrt + * @param array unused in this plugin, this plugin uses {@link Smarty::$_config}, + * {@link Smarty::$_tpl_vars} and {@link Smarty::$_smarty_debug_info} + * @param Smarty + */ +function smarty_function_assign_debug_info($params, &$smarty) +{ + $assigned_vars = $smarty->_tpl_vars; + ksort($assigned_vars); + if (@is_array($smarty->_config[0])) { + $config_vars = $smarty->_config[0]; + ksort($config_vars); + $smarty->assign("_debug_config_keys", array_keys($config_vars)); + $smarty->assign("_debug_config_vals", array_values($config_vars)); + } + + $included_templates = $smarty->_smarty_debug_info; + + $smarty->assign("_debug_keys", array_keys($assigned_vars)); + $smarty->assign("_debug_vals", array_values($assigned_vars)); + + $smarty->assign("_debug_tpls", $included_templates); +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.config_load.php b/Source/gallery2/lib/smarty/plugins/function.config_load.php new file mode 100644 index 0000000..db89f63 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.config_load.php @@ -0,0 +1,142 @@ + + * Name: config_load
    + * Purpose: load config file vars + * @link http://smarty.php.net/manual/en/language.function.config.load.php {config_load} + * (Smarty online manual) + * @author Monte Ohrt + * @author messju mohr (added use of resources) + * @param array Format: + *
    + * array('file' => required config file name,
    + *       'section' => optional config file section to load
    + *       'scope' => local/parent/global
    + *       'global' => overrides scope, setting to parent if true)
    + * 
    + * @param Smarty + */ +function smarty_function_config_load($params, &$smarty) +{ + if ($smarty->debugging) { + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $_debug_start_time = smarty_core_get_microtime($_params, $smarty); + } + + $_file = isset($params['file']) ? $smarty->_dequote($params['file']) : null; + $_section = isset($params['section']) ? $smarty->_dequote($params['section']) : null; + $_scope = isset($params['scope']) ? $smarty->_dequote($params['scope']) : 'global'; + $_global = isset($params['global']) ? $smarty->_dequote($params['global']) : false; + + if (!isset($_file) || strlen($_file) == 0) { + $smarty->trigger_error("missing 'file' attribute in config_load tag", E_USER_ERROR, __FILE__, __LINE__); + } + + if (isset($_scope)) { + if ($_scope != 'local' && + $_scope != 'parent' && + $_scope != 'global') { + $smarty->trigger_error("invalid 'scope' attribute value", E_USER_ERROR, __FILE__, __LINE__); + } + } else { + if ($_global) { + $_scope = 'parent'; + } else { + $_scope = 'local'; + } + } + + $_params = array('resource_name' => $_file, + 'resource_base_path' => $smarty->config_dir, + 'get_source' => false); + $smarty->_parse_resource_name($_params); + $_file_path = $_params['resource_type'] . ':' . $_params['resource_name']; + if (isset($_section)) + $_compile_file = $smarty->_get_compile_path($_file_path.'|'.$_section); + else + $_compile_file = $smarty->_get_compile_path($_file_path); + + if($smarty->force_compile || !file_exists($_compile_file)) { + $_compile = true; + } elseif ($smarty->compile_check) { + $_params = array('resource_name' => $_file, + 'resource_base_path' => $smarty->config_dir, + 'get_source' => false); + $_compile = $smarty->_fetch_resource_info($_params) && + $_params['resource_timestamp'] > filemtime($_compile_file); + } else { + $_compile = false; + } + + if($_compile) { + // compile config file + if(!is_object($smarty->_conf_obj)) { + require_once SMARTY_DIR . $smarty->config_class . '.class.php'; + $smarty->_conf_obj = new $smarty->config_class(); + $smarty->_conf_obj->overwrite = $smarty->config_overwrite; + $smarty->_conf_obj->booleanize = $smarty->config_booleanize; + $smarty->_conf_obj->read_hidden = $smarty->config_read_hidden; + $smarty->_conf_obj->fix_newlines = $smarty->config_fix_newlines; + } + + $_params = array('resource_name' => $_file, + 'resource_base_path' => $smarty->config_dir, + $_params['get_source'] = true); + if (!$smarty->_fetch_resource_info($_params)) { + return; + } + $smarty->_conf_obj->set_file_contents($_file, $_params['source_content']); + $_config_vars = array_merge($smarty->_conf_obj->get($_file), + $smarty->_conf_obj->get($_file, $_section)); + if(function_exists('var_export')) { + $_output = ''; + } else { + $_output = ''\\\'', '\\'=>'\\\\')) . '\'); ?>'; + } + $_params = (array('compile_path' => $_compile_file, 'compiled_content' => $_output, 'resource_timestamp' => $_params['resource_timestamp'])); + require_once(SMARTY_CORE_DIR . 'core.write_compiled_resource.php'); + smarty_core_write_compiled_resource($_params, $smarty); + } else { + include($_compile_file); + } + + if ($smarty->caching) { + $smarty->_cache_info['config'][$_file] = true; + } + + $smarty->_config[0]['vars'] = @array_merge($smarty->_config[0]['vars'], $_config_vars); + $smarty->_config[0]['files'][$_file] = true; + + if ($_scope == 'parent') { + $smarty->_config[1]['vars'] = @array_merge($smarty->_config[1]['vars'], $_config_vars); + $smarty->_config[1]['files'][$_file] = true; + } else if ($_scope == 'global') { + for ($i = 1, $for_max = count($smarty->_config); $i < $for_max; $i++) { + $smarty->_config[$i]['vars'] = @array_merge($smarty->_config[$i]['vars'], $_config_vars); + $smarty->_config[$i]['files'][$_file] = true; + } + } + + if ($smarty->debugging) { + $_params = array(); + require_once(SMARTY_CORE_DIR . 'core.get_microtime.php'); + $smarty->_smarty_debug_info[] = array('type' => 'config', + 'filename' => $_file.' ['.$_section.'] '.$_scope, + 'depth' => $smarty->_inclusion_depth, + 'exec_time' => smarty_core_get_microtime($_params, $smarty) - $_debug_start_time); + } + +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.counter.php b/Source/gallery2/lib/smarty/plugins/function.counter.php new file mode 100644 index 0000000..1f26db5 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.counter.php @@ -0,0 +1,80 @@ + + * Name: counter
    + * Purpose: print out a counter value + * @author Monte Ohrt + * @link http://smarty.php.net/manual/en/language.function.counter.php {counter} + * (Smarty online manual) + * @param array parameters + * @param Smarty + * @return string|null + */ +function smarty_function_counter($params, &$smarty) +{ + static $counters = array(); + + $name = (isset($params['name'])) ? $params['name'] : 'default'; + if (!isset($counters[$name])) { + $counters[$name] = array( + 'start'=>1, + 'skip'=>1, + 'direction'=>'up', + 'count'=>1 + ); + } + $counter =& $counters[$name]; + + if (isset($params['start'])) { + $counter['start'] = $counter['count'] = (int)$params['start']; + } + + if (!empty($params['assign'])) { + $counter['assign'] = $params['assign']; + } + + if (isset($counter['assign'])) { + $smarty->assign($counter['assign'], $counter['count']); + } + + if (isset($params['print'])) { + $print = (bool)$params['print']; + } else { + $print = empty($counter['assign']); + } + + if ($print) { + $retval = $counter['count']; + } else { + $retval = null; + } + + if (isset($params['skip'])) { + $counter['skip'] = $params['skip']; + } + + if (isset($params['direction'])) { + $counter['direction'] = $params['direction']; + } + + if ($counter['direction'] == "down") + $counter['count'] -= $counter['skip']; + else + $counter['count'] += $counter['skip']; + + return $retval; + +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.cycle.php b/Source/gallery2/lib/smarty/plugins/function.cycle.php new file mode 100644 index 0000000..fe78bb8 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.cycle.php @@ -0,0 +1,102 @@ + + * Name: cycle
    + * Date: May 3, 2002
    + * Purpose: cycle through given values
    + * Input: + * - name = name of cycle (optional) + * - values = comma separated list of values to cycle, + * or an array of values to cycle + * (this can be left out for subsequent calls) + * - reset = boolean - resets given var to true + * - print = boolean - print var or not. default is true + * - advance = boolean - whether or not to advance the cycle + * - delimiter = the value delimiter, default is "," + * - assign = boolean, assigns to template var instead of + * printed. + * + * Examples:
    + *
    + * {cycle values="#eeeeee,#d0d0d0d"}
    + * {cycle name=row values="one,two,three" reset=true}
    + * {cycle name=row}
    + * 
    + * @link http://smarty.php.net/manual/en/language.function.cycle.php {cycle} + * (Smarty online manual) + * @author Monte Ohrt + * @author credit to Mark Priatel + * @author credit to Gerard + * @author credit to Jason Sweat + * @version 1.3 + * @param array + * @param Smarty + * @return string|null + */ +function smarty_function_cycle($params, &$smarty) +{ + static $cycle_vars; + + $name = (empty($params['name'])) ? 'default' : $params['name']; + $print = (isset($params['print'])) ? (bool)$params['print'] : true; + $advance = (isset($params['advance'])) ? (bool)$params['advance'] : true; + $reset = (isset($params['reset'])) ? (bool)$params['reset'] : false; + + if (!in_array('values', array_keys($params))) { + if(!isset($cycle_vars[$name]['values'])) { + $smarty->trigger_error("cycle: missing 'values' parameter"); + return; + } + } else { + if(isset($cycle_vars[$name]['values']) + && $cycle_vars[$name]['values'] != $params['values'] ) { + $cycle_vars[$name]['index'] = 0; + } + $cycle_vars[$name]['values'] = $params['values']; + } + + $cycle_vars[$name]['delimiter'] = (isset($params['delimiter'])) ? $params['delimiter'] : ','; + + if(is_array($cycle_vars[$name]['values'])) { + $cycle_array = $cycle_vars[$name]['values']; + } else { + $cycle_array = explode($cycle_vars[$name]['delimiter'],$cycle_vars[$name]['values']); + } + + if(!isset($cycle_vars[$name]['index']) || $reset ) { + $cycle_vars[$name]['index'] = 0; + } + + if (isset($params['assign'])) { + $print = false; + $smarty->assign($params['assign'], $cycle_array[$cycle_vars[$name]['index']]); + } + + if($print) { + $retval = $cycle_array[$cycle_vars[$name]['index']]; + } else { + $retval = null; + } + + if($advance) { + if ( $cycle_vars[$name]['index'] >= count($cycle_array) -1 ) { + $cycle_vars[$name]['index'] = 0; + } else { + $cycle_vars[$name]['index']++; + } + } + + return $retval; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.debug.php b/Source/gallery2/lib/smarty/plugins/function.debug.php new file mode 100644 index 0000000..4345230 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.debug.php @@ -0,0 +1,35 @@ + + * Name: debug
    + * Date: July 1, 2002
    + * Purpose: popup debug window + * @link http://smarty.php.net/manual/en/language.function.debug.php {debug} + * (Smarty online manual) + * @author Monte Ohrt + * @version 1.0 + * @param array + * @param Smarty + * @return string output from {@link Smarty::_generate_debug_output()} + */ +function smarty_function_debug($params, &$smarty) +{ + if (isset($params['output'])) { + $smarty->assign('_smarty_debug_output', $params['output']); + } + require_once(SMARTY_CORE_DIR . 'core.display_debug_console.php'); + return smarty_core_display_debug_console(null, $smarty); +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.eval.php b/Source/gallery2/lib/smarty/plugins/function.eval.php new file mode 100644 index 0000000..ff0472d --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.eval.php @@ -0,0 +1,49 @@ + + * Name: eval
    + * Purpose: evaluate a template variable as a template
    + * @link http://smarty.php.net/manual/en/language.function.eval.php {eval} + * (Smarty online manual) + * @author Monte Ohrt + * @param array + * @param Smarty + */ +function smarty_function_eval($params, &$smarty) +{ + + if (!isset($params['var'])) { + $smarty->trigger_error("eval: missing 'var' parameter"); + return; + } + + if($params['var'] == '') { + return; + } + + $smarty->_compile_source('evaluated template', $params['var'], $_var_compiled); + + ob_start(); + $smarty->_eval('?>' . $_var_compiled); + $_contents = ob_get_contents(); + ob_end_clean(); + + if (!empty($params['assign'])) { + $smarty->assign($params['assign'], $_contents); + } else { + return $_contents; + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.fetch.php b/Source/gallery2/lib/smarty/plugins/function.fetch.php new file mode 100644 index 0000000..81b1bfc --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.fetch.php @@ -0,0 +1,221 @@ + + * Name: fetch
    + * Purpose: fetch file, web or ftp data and display results + * @link http://smarty.php.net/manual/en/language.function.fetch.php {fetch} + * (Smarty online manual) + * @author Monte Ohrt + * @param array + * @param Smarty + * @return string|null if the assign parameter is passed, Smarty assigns the + * result to a template variable + */ +function smarty_function_fetch($params, &$smarty) +{ + if (empty($params['file'])) { + $smarty->_trigger_fatal_error("[plugin] parameter 'file' cannot be empty"); + return; + } + + $content = ''; + if ($smarty->security && !preg_match('!^(http|ftp)://!i', $params['file'])) { + $_params = array('resource_type' => 'file', 'resource_name' => $params['file']); + require_once(SMARTY_CORE_DIR . 'core.is_secure.php'); + if(!smarty_core_is_secure($_params, $smarty)) { + $smarty->_trigger_fatal_error('[plugin] (secure mode) fetch \'' . $params['file'] . '\' is not allowed'); + return; + } + + // fetch the file + if($fp = @fopen($params['file'],'r')) { + while(!feof($fp)) { + $content .= fgets ($fp,4096); + } + fclose($fp); + } else { + $smarty->_trigger_fatal_error('[plugin] fetch cannot read file \'' . $params['file'] . '\''); + return; + } + } else { + // not a local file + if(preg_match('!^http://!i',$params['file'])) { + // http fetch + if($uri_parts = parse_url($params['file'])) { + // set defaults + $host = $server_name = $uri_parts['host']; + $timeout = 30; + $accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*"; + $agent = "Smarty Template Engine ".$smarty->_version; + $referer = ""; + $uri = !empty($uri_parts['path']) ? $uri_parts['path'] : '/'; + $uri .= !empty($uri_parts['query']) ? '?' . $uri_parts['query'] : ''; + $_is_proxy = false; + if(empty($uri_parts['port'])) { + $port = 80; + } else { + $port = $uri_parts['port']; + } + if(!empty($uri_parts['user'])) { + $user = $uri_parts['user']; + } + if(!empty($uri_parts['pass'])) { + $pass = $uri_parts['pass']; + } + // loop through parameters, setup headers + foreach($params as $param_key => $param_value) { + switch($param_key) { + case "file": + case "assign": + case "assign_headers": + break; + case "user": + if(!empty($param_value)) { + $user = $param_value; + } + break; + case "pass": + if(!empty($param_value)) { + $pass = $param_value; + } + break; + case "accept": + if(!empty($param_value)) { + $accept = $param_value; + } + break; + case "header": + if(!empty($param_value)) { + if(!preg_match('![\w\d-]+: .+!',$param_value)) { + $smarty->_trigger_fatal_error("[plugin] invalid header format '".$param_value."'"); + return; + } else { + $extra_headers[] = $param_value; + } + } + break; + case "proxy_host": + if(!empty($param_value)) { + $proxy_host = $param_value; + } + break; + case "proxy_port": + if(!preg_match('!\D!', $param_value)) { + $proxy_port = (int) $param_value; + } else { + $smarty->_trigger_fatal_error("[plugin] invalid value for attribute '".$param_key."'"); + return; + } + break; + case "agent": + if(!empty($param_value)) { + $agent = $param_value; + } + break; + case "referer": + if(!empty($param_value)) { + $referer = $param_value; + } + break; + case "timeout": + if(!preg_match('!\D!', $param_value)) { + $timeout = (int) $param_value; + } else { + $smarty->_trigger_fatal_error("[plugin] invalid value for attribute '".$param_key."'"); + return; + } + break; + default: + $smarty->_trigger_fatal_error("[plugin] unrecognized attribute '".$param_key."'"); + return; + } + } + if(!empty($proxy_host) && !empty($proxy_port)) { + $_is_proxy = true; + $fp = fsockopen($proxy_host,$proxy_port,$errno,$errstr,$timeout); + } else { + $fp = fsockopen($server_name,$port,$errno,$errstr,$timeout); + } + + if(!$fp) { + $smarty->_trigger_fatal_error("[plugin] unable to fetch: $errstr ($errno)"); + return; + } else { + if($_is_proxy) { + fputs($fp, 'GET ' . $params['file'] . " HTTP/1.0\r\n"); + } else { + fputs($fp, "GET $uri HTTP/1.0\r\n"); + } + if(!empty($host)) { + fputs($fp, "Host: $host\r\n"); + } + if(!empty($accept)) { + fputs($fp, "Accept: $accept\r\n"); + } + if(!empty($agent)) { + fputs($fp, "User-Agent: $agent\r\n"); + } + if(!empty($referer)) { + fputs($fp, "Referer: $referer\r\n"); + } + if(isset($extra_headers) && is_array($extra_headers)) { + foreach($extra_headers as $curr_header) { + fputs($fp, $curr_header."\r\n"); + } + } + if(!empty($user) && !empty($pass)) { + fputs($fp, "Authorization: BASIC ".base64_encode("$user:$pass")."\r\n"); + } + + fputs($fp, "\r\n"); + while(!feof($fp)) { + $content .= fgets($fp,4096); + } + fclose($fp); + $csplit = split("\r\n\r\n",$content,2); + + $content = $csplit[1]; + + if(!empty($params['assign_headers'])) { + $smarty->assign($params['assign_headers'],split("\r\n",$csplit[0])); + } + } + } else { + $smarty->_trigger_fatal_error("[plugin] unable to parse URL, check syntax"); + return; + } + } else { + // ftp fetch + if($fp = @fopen($params['file'],'r')) { + while(!feof($fp)) { + $content .= fgets ($fp,4096); + } + fclose($fp); + } else { + $smarty->_trigger_fatal_error('[plugin] fetch cannot read file \'' . $params['file'] .'\''); + return; + } + } + + } + + + if (!empty($params['assign'])) { + $smarty->assign($params['assign'],$content); + } else { + return $content; + } +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.html_checkboxes.php b/Source/gallery2/lib/smarty/plugins/function.html_checkboxes.php new file mode 100644 index 0000000..ed8ad7f --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.html_checkboxes.php @@ -0,0 +1,143 @@ + + * Type: function
    + * Name: html_checkboxes
    + * Date: 24.Feb.2003
    + * Purpose: Prints out a list of checkbox input types
    + * Input:
    + * - name (optional) - string default "checkbox" + * - values (required) - array + * - options (optional) - associative array + * - checked (optional) - array default not set + * - separator (optional) - ie
    or   + * - output (optional) - the output next to each checkbox + * - assign (optional) - assign the output as an array to this variable + * Examples: + *
    + * {html_checkboxes values=$ids output=$names}
    + * {html_checkboxes values=$ids name='box' separator='
    ' output=$names} + * {html_checkboxes values=$ids checked=$checked separator='
    ' output=$names} + *
    + * @link http://smarty.php.net/manual/en/language.function.html.checkboxes.php {html_checkboxes} + * (Smarty online manual) + * @author Christopher Kvarme + * @author credits to Monte Ohrt + * @version 1.0 + * @param array + * @param Smarty + * @return string + * @uses smarty_function_escape_special_chars() + */ +function smarty_function_html_checkboxes($params, &$smarty) +{ + require_once $smarty->_get_plugin_filepath('shared','escape_special_chars'); + + $name = 'checkbox'; + $values = null; + $options = null; + $selected = null; + $separator = ''; + $labels = true; + $output = null; + + $extra = ''; + + foreach($params as $_key => $_val) { + switch($_key) { + case 'name': + case 'separator': + $$_key = $_val; + break; + + case 'labels': + $$_key = (bool)$_val; + break; + + case 'options': + $$_key = (array)$_val; + break; + + case 'values': + case 'output': + $$_key = array_values((array)$_val); + break; + + case 'checked': + case 'selected': + $selected = array_map('strval', array_values((array)$_val)); + break; + + case 'checkboxes': + $smarty->trigger_error('html_checkboxes: the use of the "checkboxes" attribute is deprecated, use "options" instead', E_USER_WARNING); + $options = (array)$_val; + break; + + case 'assign': + break; + + default: + if(!is_array($_val)) { + $extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"'; + } else { + $smarty->trigger_error("html_checkboxes: extra attribute '$_key' cannot be an array", E_USER_NOTICE); + } + break; + } + } + + if (!isset($options) && !isset($values)) + return ''; /* raise error here? */ + + settype($selected, 'array'); + $_html_result = array(); + + if (isset($options)) { + + foreach ($options as $_key=>$_val) + $_html_result[] = smarty_function_html_checkboxes_output($name, $_key, $_val, $selected, $extra, $separator, $labels); + + + } else { + foreach ($values as $_i=>$_key) { + $_val = isset($output[$_i]) ? $output[$_i] : ''; + $_html_result[] = smarty_function_html_checkboxes_output($name, $_key, $_val, $selected, $extra, $separator, $labels); + } + + } + + if(!empty($params['assign'])) { + $smarty->assign($params['assign'], $_html_result); + } else { + return implode("\n",$_html_result); + } + +} + +function smarty_function_html_checkboxes_output($name, $value, $output, $selected, $extra, $separator, $labels) { + $_output = ''; + if ($labels) $_output .= ''; + $_output .= $separator; + + return $_output; +} + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.html_image.php b/Source/gallery2/lib/smarty/plugins/function.html_image.php new file mode 100644 index 0000000..9abae72 --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.html_image.php @@ -0,0 +1,142 @@ + + * Name: html_image
    + * Date: Feb 24, 2003
    + * Purpose: format HTML tags for the image
    + * Input:
    + * - file = file (and path) of image (required) + * - height = image height (optional, default actual height) + * - width = image width (optional, default actual width) + * - basedir = base directory for absolute paths, default + * is environment variable DOCUMENT_ROOT + * - path_prefix = prefix for path output (optional, default empty) + * + * Examples: {html_image file="/images/masthead.gif"} + * Output: + * @link http://smarty.php.net/manual/en/language.function.html.image.php {html_image} + * (Smarty online manual) + * @author Monte Ohrt + * @author credits to Duda - wrote first image function + * in repository, helped with lots of functionality + * @version 1.0 + * @param array + * @param Smarty + * @return string + * @uses smarty_function_escape_special_chars() + */ +function smarty_function_html_image($params, &$smarty) +{ + require_once $smarty->_get_plugin_filepath('shared','escape_special_chars'); + + $alt = ''; + $file = ''; + $height = ''; + $width = ''; + $extra = ''; + $prefix = ''; + $suffix = ''; + $path_prefix = ''; + $server_vars = ($smarty->request_use_auto_globals) ? $_SERVER : $GLOBALS['HTTP_SERVER_VARS']; + $basedir = isset($server_vars['DOCUMENT_ROOT']) ? $server_vars['DOCUMENT_ROOT'] : ''; + foreach($params as $_key => $_val) { + switch($_key) { + case 'file': + case 'height': + case 'width': + case 'dpi': + case 'path_prefix': + case 'basedir': + $$_key = $_val; + break; + + case 'alt': + if(!is_array($_val)) { + $$_key = smarty_function_escape_special_chars($_val); + } else { + $smarty->trigger_error("html_image: extra attribute '$_key' cannot be an array", E_USER_NOTICE); + } + break; + + case 'link': + case 'href': + $prefix = ''; + $suffix = ''; + break; + + default: + if(!is_array($_val)) { + $extra .= ' '.$_key.'="'.smarty_function_escape_special_chars($_val).'"'; + } else { + $smarty->trigger_error("html_image: extra attribute '$_key' cannot be an array", E_USER_NOTICE); + } + break; + } + } + + if (empty($file)) { + $smarty->trigger_error("html_image: missing 'file' parameter", E_USER_NOTICE); + return; + } + + if (substr($file,0,1) == '/') { + $_image_path = $basedir . $file; + } else { + $_image_path = $file; + } + + if(!isset($params['width']) || !isset($params['height'])) { + if(!$_image_data = @getimagesize($_image_path)) { + if(!file_exists($_image_path)) { + $smarty->trigger_error("html_image: unable to find '$_image_path'", E_USER_NOTICE); + return; + } else if(!is_readable($_image_path)) { + $smarty->trigger_error("html_image: unable to read '$_image_path'", E_USER_NOTICE); + return; + } else { + $smarty->trigger_error("html_image: '$_image_path' is not a valid image file", E_USER_NOTICE); + return; + } + } + if ($smarty->security && + ($_params = array('resource_type' => 'file', 'resource_name' => $_image_path)) && + (require_once(SMARTY_CORE_DIR . 'core.is_secure.php')) && + (!smarty_core_is_secure($_params, $smarty)) ) { + $smarty->trigger_error("html_image: (secure) '$_image_path' not in secure directory", E_USER_NOTICE); + } + + if(!isset($params['width'])) { + $width = $_image_data[0]; + } + if(!isset($params['height'])) { + $height = $_image_data[1]; + } + + } + + if(isset($params['dpi'])) { + if(strstr($server_vars['HTTP_USER_AGENT'], 'Mac')) { + $dpi_default = 72; + } else { + $dpi_default = 96; + } + $_resize = $dpi_default/$params['dpi']; + $width = round($width * $_resize); + $height = round($height * $_resize); + } + + return $prefix . ''.$alt.'' . $suffix; +} + +/* vim: set expandtab: */ + +?> diff --git a/Source/gallery2/lib/smarty/plugins/function.html_options.php b/Source/gallery2/lib/smarty/plugins/function.html_options.php new file mode 100644 index 0000000..cebadde --- /dev/null +++ b/Source/gallery2/lib/smarty/plugins/function.html_options.php @@ -0,0 +1,122 @@ + + * Name: html_options
    + * Input:
    + * - name (optional) - string default "select" + * - values (required if no options supplied) - array + * - options (required if no values supplied) - associative array + * - selected (optional) - string default not set + * - output (required if not options supplied) - array + * Purpose: Prints the list of
  • ', 'end_tag' => "
  • \n"), + 'listitem', array('list'), array()); + $this->_bbcode->setCodeFlag('*', 'closetag', BBCODE_CLOSETAG_OPTIONAL); + } + + function parse($text) { + return $this->_bbcode->parse($text); + } + + function url($action, $attributes, $content, $params, &$node_object) { + if ($action == 'validate') { + /* The code is like [url]http://.../[/url] */ + if (!isset ($attributes['default'])) { + return preg_match('#^(https?|ftp|mailto):|^/#', $content); + } else { + /* The code is like [url=http://.../]Text[/url] */ + return preg_match('#^(https?|ftp|mailto):|^/#', $attributes['default']); + } + } else { + /* Output of HTML. */ + /* The code is like [url]http://.../[/url] */ + if (!isset ($attributes['default'])) { + return '' . $content . ''; + } else { + /* The code is like [url=http://.../]Text[/url] */ + return '' . $content . ''; + } + } + } + + function image($action, $attrs, $content, $params, &$node_object) { + if ($action == 'validate') { + return preg_match('#^(https?|ftp|mailto):|^/#', $content); + } else { + /* Output of HTML. */ + $size = (isset($attrs['width']) ? ' width="' . (int)$attrs['width'] . '"' : '') + . (isset($attrs['height']) ? ' height="' . (int)$attrs['height'] . '"' : ''); + /* Input should have entities already, so no htmlspecialchars here */ + return sprintf('', $content, $size); + } + } + + function color($action, $attrs, $content, $params, &$node_object) { + if ($action == 'validate') { + return !empty($attrs['default']); + } else { + /* Output of HTML. */ + $color = empty($attrs) ? 'bummer' : $attrs['default']; + return sprintf('%s', $color, $content); + } + } + + function convertLineBreaks($text) { + return preg_replace("/\015\012|\015|\012/", "\n", $text); + } + + function stripContents($text) { + return preg_replace("/[^\n]/", '', $text); + } + + function stripLastLineBreak ($text) { + return preg_replace("/\n( +)?$/", '$1', $text); + } +} +?> diff --git a/Source/gallery2/lib/smarty_plugins/modifier.print_r.php b/Source/gallery2/lib/smarty_plugins/modifier.print_r.php new file mode 100644 index 0000000..92c9958 --- /dev/null +++ b/Source/gallery2/lib/smarty_plugins/modifier.print_r.php @@ -0,0 +1,34 @@ +"; + print_r($object); + print "
    "; +} +?> diff --git a/Source/gallery2/lib/smarty_plugins/modifier.repeat.php b/Source/gallery2/lib/smarty_plugins/modifier.repeat.php new file mode 100644 index 0000000..5d1c26f --- /dev/null +++ b/Source/gallery2/lib/smarty_plugins/modifier.repeat.php @@ -0,0 +1,32 @@ + diff --git a/Source/gallery2/lib/smarty_plugins/modifier.split.php b/Source/gallery2/lib/smarty_plugins/modifier.split.php new file mode 100644 index 0000000..a839221 --- /dev/null +++ b/Source/gallery2/lib/smarty_plugins/modifier.split.php @@ -0,0 +1,33 @@ + diff --git a/Source/gallery2/lib/smarty_plugins/modifier.utf8.php b/Source/gallery2/lib/smarty_plugins/modifier.utf8.php new file mode 100644 index 0000000..8bcb1e9 --- /dev/null +++ b/Source/gallery2/lib/smarty_plugins/modifier.utf8.php @@ -0,0 +1,33 @@ + diff --git a/Source/gallery2/lib/smtp/smtp.php b/Source/gallery2/lib/smtp/smtp.php new file mode 100644 index 0000000..787c517 --- /dev/null +++ b/Source/gallery2/lib/smtp/smtp.php @@ -0,0 +1,179 @@ +\r\n"); + $ret = server_parse($socket, "250"); + if ($ret) { + return $ret; + } + + // Add an additional bit of error checking to the To field. + $to = (trim($to) == '') ? 'Undisclosed-recipients:;' : trim($to); + if (preg_match('#[^ ]+\@[^ ]+#', $to)) { + fputs($socket, "RCPT TO: <$to>\r\n"); + $ret = server_parse($socket, "250"); + if ($ret) { + return $ret; + } + } + + // Ok now do the CC and BCC fields... + foreach (array_merge($cc, $bcc) as $address) { + $address = trim($address); + if (preg_match('#[^ ]+\@[^ ]+#', $address)) { + fputs($socket, "RCPT TO: <$address>\r\n"); + $ret = server_parse($socket, "250"); + if ($ret) { + return $ret; + } + } + } + + // Ok now we tell the server we are ready to start sending data + fputs($socket, "DATA\r\n"); + + // This is the last response code we look for until the end of the message. + $ret = server_parse($socket, "354"); + if ($ret) { + return $ret; + } + + // Send the Subject Line... + fputs($socket, "Subject: $subject\r\n"); + + // Now the To Header. + fputs($socket, "To: $to\r\n"); + + // Now any custom headers.... + if (isset($headers)) { + fputs($socket, "$headers\r\n"); + } + + // Ok now we are ready for the message... + fputs($socket, "\r\n$body\r\n"); + + // Ok the all the ingredients are mixed in let's cook this puppy... + fputs($socket, ".\r\n"); + $ret = server_parse($socket, "250"); + if ($ret) { + return $ret; + } + + // Now tell the server we are done and close the socket... + fputs($socket, "QUIT\r\n"); + fclose($socket); + + return null; +} +?> diff --git a/Source/gallery2/lib/support/GallerySetupUtilities.class b/Source/gallery2/lib/support/GallerySetupUtilities.class new file mode 100644 index 0000000..5ad85a2 --- /dev/null +++ b/Source/gallery2/lib/support/GallerySetupUtilities.class @@ -0,0 +1,436 @@ +config[$key] = $value; + } + + function getConfig($key) { + if (isset($this->config[$key])) { + return $this->config[$key]; + } + return null; + } + + function setDebug() { } + function setDebugLogFile() { } + function setProfile() { } +} + +class GallerySetupUtilities { + + /** + * Regenerate the session id to prevent session fixation attacks + * Must be called before starting to output any data since it tries to send a cookie + * + * @static + */ + function regenerateSession() { + /* 1. Generate a new session id */ + $newSessionId = md5(uniqid(substr(rand() . serialize($_REQUEST), 0, 114))); + $sessionData = array(); + if (!empty($_SESSION) && is_array($_SESSION)) { + foreach ($_SESSION as $key => $value) { + $sessionData[$key] = $value; + } + } + /* 2. Delete the old session */ + session_unset(); + session_destroy(); + /* Create the new session with the old data, send cookie */ + session_id($newSessionId); + $sessionName = session_name(); + /* Make sure we don't use invalid data at a later point */ + foreach (array($_GET, $_POST, $_REQUEST, $_COOKIE) as $superGlobal) { + unset($superGlobal[$sessionName]); + } + session_start(); + foreach ($sessionData as $key => $value) { + $_SESSION[$key] = $value; + } + } + + /** + * Are cookies supported by the current user-agent? + * + * @static + */ + function areCookiesSupported() { + static $areCookiesSupported; + + /* Remember the state since we might unset $_COOKIE */ + if (!isset($areCookiesSupported)) { + $areCookiesSupported = !empty($_COOKIE[session_name()]); + } + + return $areCookiesSupported; + } + + /** + * Return the number of failed attempts to log in to any of the support pages + * + * @return int the number of attempts or false if there was an error + * @static + */ + function getLoginAttempts() { + /* Init if needed (like from lib/support; upgrader already init'ed) */ + global $gallery; + if (!isset($gallery)) { + /* + * Don't include embed.php in the global scope because it will initiate actions before + * we are ready for them (eg: redirect us to the installer if we have no config.php) + */ + require_once(dirname(__FILE__) . '/../../embed.php'); + $ret = GalleryEmbed::init(array('fullInit' => false)); + if ($ret) { + return false; + } + } + + list ($ret, $attempts) = + GalleryCoreApi::getPluginParameter('module', 'core', 'setup.login.attempts'); + if ($ret) { + return false; + } + + if (!isset($gallery)) { + $ret = GalleryEmbed::done(); + if ($ret) { + return false; + } + } + + return $attempts; + } + + /** + * Set the number of failed attempts to log in to any of the support pages. + * + * @param int $attempts the number of attempts + * @return true on success, false on error + * @static + */ + function setLoginAttempts($attempts) { + /* Init if needed (like from lib/support; upgrader already init'ed) */ + global $gallery; + if (!isset($gallery)) { + /* + * Don't include embed.php in the global scope because it will initiate actions before + * we are ready for them (eg: redirect us to the installer if we have no config.php) + */ + require_once(dirname(__FILE__) . '/../../embed.php'); + $ret = GalleryEmbed::init(array('fullInit' => false)); + if ($ret) { + return false; + } + } + + $ret = GalleryCoreApi::setPluginParameter( + 'module', 'core', 'setup.login.attempts', $attempts); + if ($ret) { + return false; + } + + if (!isset($gallery)) { + $ret = GalleryEmbed::done(); + if ($ret) { + return false; + } + } else { + $storage =& $gallery->getStorage(); + $ret = $storage->checkPoint(); + if ($ret) { + return false; + } + } + + return true; + } + + /** + * Mark this session as authenticated. + * + * @param bool $updateDatabase true if you want to also reset the login attempts (default: true) + * @static + */ + function authenticateThisSession($resetLoginAttempts=true) { + $_SESSION['authenticated'] = true; + if ($resetLoginAttempts) { + GallerySetupUtilities::setLoginAttempts(0); + } + GallerySetupUtilities::regenerateSession(); + } + + /** + * Is this session authenticated? + * + * @return true if this session is authenticated + * @static + */ + function isSessionAuthenticated() { + return (!empty($_SESSION['authenticated'])); + } + + /** + * Emit a Location header to redirect the user back to the current page. + * + * @static + */ + function redirectBackToSelf() { + require_once(dirname(__FILE__) . '/../../modules/core/classes/GalleryUrlGenerator.class'); + $urlGenerator = new GalleryUrlGenerator(); + header('Location: ' . $urlGenerator->getCurrentUrl()); + } + + /** + * Return the path to the config dir for this install. This will return the correct value for + * multisite installs vs. the orginal. + * + * @return string the path to the config dir + * @static + */ + function getConfigDir() { + if (defined('GALLERY_CONFIG_DIR')) { + return GALLERY_CONFIG_DIR; + } + return dirname(dirname(dirname(__FILE__))); + } + + /** + * Return the config object from the Gallery class, read out of config.php. + * + * @return array the config values from config.php + * @static + */ + function getGalleryConfig() { + $gallery = new GallerySetupUtilitiesStub(); + + /* Load config.php */ + $dir = GallerySetupUtilities::getConfigDir(); + if (file_exists($dir . '/config.php')) { + include($dir . '/config.php'); + } else { + return null; + } + + return $gallery->config; + } + + /** + * Get the authentication key from the session + * @return string the authentication key + * @static + */ + function getAuthenticationKey() { + return isset($_SESSION['authKey']) ? $_SESSION['authKey'] : null; + } + + /** + * Store the authentication key in the session + * @param string $key the authentication key + * @static + */ + function setAuthenticationKey($key) { + $_SESSION['authKey'] = $key; + } + + /** + * Return a 32 character random value. + * @param string a random value + * @static + */ + function generateAuthenticationKey() { + for ($len = 64, $rand=''; + strlen($rand) < $len; + $rand .= chr(!mt_rand(0,2) ? mt_rand(48,57) : + (!mt_rand(0,1) ? mt_rand(65,90) : + mt_rand(97,122)))) ; + return md5($rand); + } + + /** + * Create a downloadable file that contains the contents of the login.txt + * file (the authentication key). Sets headers appropriately. + * + */ + function generateLoginTxtFile($key) { + header('Content-Type: text/plain'); + header('Content-Length: ' . strlen($key)); + header('Content-Description: Download login.txt to your computer.'); + header('Content-Disposition: attachment; filename=login.txt'); + print $key; + } + + /** + * Cleanly start up our session. + * + * - Specify a session name (which translates into the id in the cookie, or in query params) + * - Use an appropriate session handler + * - Sanitize the session id to make sure we're not getting tricked with some malicious value + * - Detect and thwart session fixation attacks + * + * @static + */ + function startSession() { + /* Set our own session name */ + if (@ini_get('session.auto_start')) { + session_unset(); + session_destroy(); + } + session_name(G2_SETUP_SESSION_NAME); + + $sessionName = session_name(); + $sessionId = GalleryUtilities::getRequestVariablesNoPrefix($sessionName); + if (empty($sessionId) || is_array($sessionId)) { + $sessionId = !empty($_COOKIE[$sessionName]) ? $_COOKIE[$sessionName] : ''; + } + + /* Remember whether cookies are supported */ + GallerySetupUtilities::areCookiesSupported(); + + /* Sanitize the sessionId */ + if (!empty($sessionId)) { + if (function_exists('preg_replace')) { + $sessionId = preg_replace('/[^a-zA-Z0-9]/', '', $sessionId); + } else { + $sessionId = ereg_replace('/[^a-zA-Z0-9]/', '', $sessionId); + } + /* Make sure we don't use invalid data at a later point */ + foreach (array($_GET, $_POST, $_REQUEST, $_COOKIE) as $superGlobal) { + unset($superGlobal[$sessionName]); + } + /* + * md5 has a 128 bit (32 * 4bit) string, but we want to allow for other possible + * hash functions too which possibly have hash strings of only 10 characters + */ + if (strlen($sessionId) >= 10) { + session_id($sessionId); + } + } + + if (@ini_get('session.save_handler') == 'user') { + /* + * Escape hatch to avoid conflicting with an application specific session handler, + * which can happen in the case where Gallery2 is installed in a subdir of some other + * app. + */ + @ini_set('session.save_handler', 'files'); + } + + session_start(); + + /* + * Detect the case where we have a session id, but the data that it's associated with is + * not a session that we've created. This can happen in the case of a session fixation + * attack. Either create a clean session, or if we detect that this session is clean, + * sign it in a way that we'll recognize. + */ + $remoteId = GallerySession::getRemoteIdentifier(); + $cutoff = time() - G2_SUPPORT_MAX_SESSION_LIFETIME; + $configDir = GallerySetupUtilities::getConfigDir(); + if ((!isset($_SESSION['_remoteId']) || + GallerySession::compareIdentifiers($_SESSION['_remoteId'], $remoteId) == 0) || + (!isset($_SESSION['_startTime']) || $_SESSION['_startTime'] < $cutoff) || + (!isset($_SESSION['_path']) || $_SESSION['_path'] != $configDir)) { + + /* + * Empty or invalid session (possibly a session fixation attack). Get a new session + * id, delete all data from this session and bless the new session. + */ + GallerySetupUtilities::regenerateSession(); + session_unset(); + $_SESSION['_path'] = $configDir; + $_SESSION['_remoteId'] = $remoteId; + $_SESSION['_startTime'] = time(); + } + } + + /** + * Notify the site administrator by email that there have been too many failed attempts + * to log in with a password. + * + * @return object GalleryStatus a status code + */ + function notifySiteAdministrator() { + global $gallery; + + /* + * Don't include embed.php in the global scope because it will initiate actions before we + * are ready for them (eg: it will redirect us to the installer if we have no config.php) + */ + require_once(dirname(__FILE__) . '/../../embed.php'); + + $ret = GalleryEmbed::init(array('fullInit' => false)); + if ($ret) { + return $ret; + } + + list ($ret, $adminGroupId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.adminGroup'); + if ($ret) { + return $ret; + } + list ($ret, $adminUserIds) = GalleryCoreApi::fetchUsersForGroup($adminGroupId); + if ($ret) { + return $ret; + } + list ($ret, $adminUsers) = GalleryCoreApi::loadEntitiesById(array_keys($adminUserIds)); + if ($ret) { + return $ret; + } + $toList = array(); + foreach ($adminUsers as $admin) { + $email = $admin->getEmail(); + if (!empty($email)) { + $toList[] = $email; + } + } + + /* Note: we don't have localization for lib support yet, so this is not internationalized */ + if (!empty($toList)) { + $ret = GalleryCoreApi::sendTemplatedEmail( + 'lib/support/templates/FailedPasswordEmail.tpl', + array(), '', implode(',', $toList), + 'Too many failed login attempts'); + if ($ret) { + return $ret; + } + } + + $ret = GalleryEmbed::done(); + if ($ret) { + return $ret; + } + + return null; + } +} +?> diff --git a/Source/gallery2/lib/support/cache.php b/Source/gallery2/lib/support/cache.php new file mode 100644 index 0000000..300c858 --- /dev/null +++ b/Source/gallery2/lib/support/cache.php @@ -0,0 +1,186 @@ + + array(true, 'clearPageCache', array(), 'Cached HTML pages'), + 'entity' => array(true, 'clearG2dataDir', array('cache/entity'), 'Albums and photo data'), + 'module' => array(true, 'clearG2dataDir', array('cache/module'), 'Module settings'), + 'theme' => array(true, 'clearG2dataDir', array('cache/theme'), 'Theme settings'), + 'template' => array(true, 'clearG2dataDir', array('smarty/templates_c'), + 'Smarty templates'), + 'tmp' => array(true, 'clearG2dataDir', array('tmp'), 'Temporary directory'), + 'repository' => array(true, 'clearG2dataDir', array('cache/repository'), + 'Downloadable Plugin Cache'), + 'log' => array(false, 'clearInstallUpgradeLogs', array(), 'Install/Upgrade log files'), + 'derivative' => array( + false, 'clearG2dataDir', array('cache/derivative'), + 'Thumbnails and resizes (expensive to rebuild)') + ); + return $dirs; +} + +function recursiveRmdir($dirname, &$status) { + $count = 0; + if (!file_exists($dirname)) { + return $count; + } + + if (!($fd = opendir($dirname))) { + return $count; + } + + while (($filename = readdir($fd)) !== false) { + if (!strcmp($filename, '.') || !strcmp($filename, '..')) { + continue; + } + $path = "$dirname/$filename"; + + if (is_dir($path)) { + $count += recursiveRmdir($path, $status); + } else { + if (!@unlink($path)) { + if (!@is_writeable($path)) { + $status[] = array('error', "Permission denied removing file $path"); + } else { + $status[] = array('error', "Error removing $path"); + } + } else { + $count++; + } + } + } + closedir($fd); + + if (!@rmdir($dirname)) { + $status[] = array('error', "Unable to remove directory $dirname"); + } else { + $count++; + } + + return $count; +} + +function clearPageCache() { + global $gallery; + $storage =& $gallery->getStorage(); + + $ret = GalleryCoreApi::removeAllMapEntries('GalleryCacheMap'); + if ($ret) { + $status = array(array('error', 'Error deleting page cache!')); + } else { + $status = array(array('info', 'Successfully deleted page cache')); + } + $ret = $storage->checkPoint(); + if ($ret) { + $status[] = array('error', 'Error committing transaction!'); + } + + return $status; +} + +function clearG2DataDir($dir) { + global $gallery; + $path = $gallery->getConfig('data.gallery.base') . $dir; + $status = array(array('info', "Deleting dir: $path")); + $count = recursiveRmdir($path, $status); + + /* Commented this out because it's a little noisy */ + /* $status[] = array('info', "Removed $count files and directories"); */ + + if (@mkdir($path)) { + $status[] = array('info', "Recreating dir: $path"); + } else { + $status[] = array('error', "Unable to recreate dir: $path"); + } + + return $status; +} + +function clearInstallUpgradeLogs() { + global $gallery; + $path = $gallery->getConfig('data.gallery.base'); + $status = array(); + $count = 0; + if ($fd = opendir($path)) { + while (($filename = readdir($fd)) !== false) { + if (preg_match('/^(install|upgrade)_[0-9a-f]+\.log$/', $filename) + && is_file($path . $filename)) { + if (@unlink($path . $filename)) { + $count++; + } else { + $status[] = array('error', "Error removing $path$filename"); + } + } + } + closedir($fd); + } + $status[] = array('info', "Removed $count install/upgrade log files"); + return $status; +} + +$status = array(); +if (isset($_REQUEST['clear']) && isset($_REQUEST['target'])) { + require_once(dirname(__FILE__) . '/../../embed.php'); + $ret = GalleryEmbed::init(array('fullInit' => false)); + if ($ret) { + /* Try to swallow the error, but define a session to make ::done() pass. */ + global $gallery; + $gallery->initEmptySession(); + } + $caches = getCaches(); + foreach ($_REQUEST['target'] as $key => $ignored) { + /* Make sure the dir is legit */ + if (!array_key_exists($key, $caches)) { + $status[] = array('error', "Ignoring illegal cache: $key"); + continue; + } + + $func = $caches[$key][1]; + $args = $caches[$key][2]; + $status = array_merge($status, call_user_func_array($func, $args)); + } + $ret = GalleryEmbed::done(); + if ($ret) { + $status[] = array('error', 'Error completing transaction!'); + } +} +?> + + + Gallery Support | Cache Maintenance + + + +
    +
    + Gallery » Support » Cache Maintenance +
    +

    + Gallery caches data on disk to increase performance. + Occasionally these caches get out of date and need to be deleted. + Anything in the cache can be deleted safely! Gallery will + rebuild anything it needs. +

    + + +
    + +
    + +
    + + +
    +

    + + $info): ?> + checked="checked" /> +
    + + +

    +
    +
    + + diff --git a/Source/gallery2/lib/support/chmod.php b/Source/gallery2/lib/support/chmod.php new file mode 100644 index 0000000..9ebfde2 --- /dev/null +++ b/Source/gallery2/lib/support/chmod.php @@ -0,0 +1,724 @@ +getAsString() . + $DEFAULT_FILE_PERMISSIONS->getAsString(); +} +if (strlen($permissions) != 6) { + $status['error'][] = + "Unknown permissions '$permissions'! Aborting action and resetting permissions."; +} +if (empty($status['error'])) { + $folderPermissions = PermissionBits::fromString(substr($permissions, 0, 3)); + $filePermissions = PermissionBits::fromString(substr($permissions, 3, 3)); + if (!$folderPermissions->isValid()) { + $status['error'][] = 'Invalid folder permissions! Aborting action and resetting permissions.'; + $folderPermissions = $DEFAULT_FOLDER_PERMISSIONS; + } + if (!$filePermissions->isValid()) { + $status['error'][] = 'Invalid file permissions! Aborting action and resetting permissions.'; + $filePermissions = $DEFAULT_FILE_PERMISSIONS; + } +} else { + $folderPermissions = $DEFAULT_FOLDER_PERMISSIONS; + $filePermissions = $DEFAULT_FILE_PERMISSIONS; +} + +/************************************************************ + * Main program section + ************************************************************/ + +printPageWithoutFooter($plugins, $path, $filePermissions, $folderPermissions, $permissionBitSets); + +if (empty($status['error'])) { + $command = trim(getRequestVariable('command')); + switch ($command) { + case CMD_ADVANCED: + /* Advanced Options, allow chmod of any folder / file */ + $ret = chmodRecursively($path, $folderPermissions->getAsInt(), + $filePermissions->getAsInt(), time() - 60); + if (!empty($ret)) { + $status['error'][] = "Failed to change the filesystem permissions " . + "of '$path'."; + } else { + $status['message'] = "Successfully changed the filesystem permissions " . + "of '$path'."; + } + break; + case CMD_CHMOD_MODULES_AND_THEMES_DIR: + /* Chmod the modules/ and themes/ dir writeable or read-only (not recursively) */ + $mode = getRequestVariable('mode'); + if (!in_array($mode, array('open', 'secure'))) { + $status['error'][] = "Unknown mode '$mode'. Please try again."; + } else { + $ret = chmodModulesAndThemesDir($mode == 'open'); + if (!empty($ret)) { + $status['error'][] = 'Failed to change the filesystem permissions ' . + 'of the modules/ and themes/ folder.'; + } else { + $status['message'] = 'Successfully changed the filesystem permissions ' . + 'of the modules/ and the themes/ folder.'; + } + } + break; + case CMD_CHMOD_PLUGIN_DIR: + /* Chmod a _specific_ plugin (theme or module) writeable or read-only (recursively) */ + $mode = getRequestVariable('mode'); + + /* Check the given plugin path against a white list */ + $pluginPath = getRequestVariable('pluginId'); + if (!isset($plugins[$pluginPath])) { + $status['error'][] = "Unknown plugin path '$pluginPath'."; + } else if (!in_array($mode, array('open', 'secure'))) { + $status['error'][] = "Unknown mode '$mode'. Please try again."; + } else { + $ret = chmodPluginDir($pluginPath, $mode == 'open'); + if (!empty($ret)) { + $status['error'][] = "Failed to change the filesystem permissions " . + "of the '$pluginPath' folder."; + } else { + $status['message'] = "Successfully changed the filesystem permissions " . + "of the '$pluginPath' folder."; + } + } + + break; + case CMD_CHMOD_GALLERY_DIR: + /* Chmod the whole gallery2 dir writeable or read-only */ + $mode = getRequestVariable('mode'); + if (!in_array($mode, array('open', 'secure'))) { + $status['error'][] = "Unknown mode '$mode'. Please try again."; + } else { + $ret = chmodGalleryDirRecursively($mode == 'open'); + if (!empty($ret)) { + $status['error'][] = 'Failed to change the filesystem permissions ' . + 'of the Gallery folder.'; + } else { + $status['message'] = 'Successfully changed the filesystem permissions ' . + 'of the Gallery folder.'; + } + } + break; + case CMD_CHMOD_STORAGE_DIR: + /* Chmod the entire storage dir writeable */ + $ret = chmodStorageDirRecursively(); + if (!empty($ret)) { + $status['error'][] = 'Failed to change the filesystem permissions ' . + 'of the storage folder.'; + } else { + $status['message'] = 'Successfully changed the filesystem permissions ' . + 'of the storage folder.'; + } + break; + default: + /* Just redisplay the page. */ + break; + } +} +printStatus($status); + +printFooter(); + +/************************************************************ + * Functions and Classes + ************************************************************/ + +/** + * Changes the filesystem permissions of a file or a folder recursively. Also prints out folder + * names online on success / error and prints out filenames on error as well. + * + * @param string $filename absolute path to folder/file that should be chmod'ed + * @param int $folderPermissions (octal) new permissions for folders + * @param int $filePermissions (octal) new permissions for files + * @param int $start unix timestamp of last webserver/php timeout counter-measure + * @return null on success, int <> 0 on error + */ +function chmodRecursively($filename, $folderPermissions, $filePermissions, $start) { + $filename = rtrim($filename, '\\/'); + $error = 0; + /* Try to prevent timeouts */ + if (time() - $start > 55) { + if (function_exists('apache_reset_timeout')) { + @apache_reset_timeout(); + } + @set_time_limit(600); + $start = time(); + } + /* + * Have to chmod first before the is_dir check because is_dir does a stat on the + * file / dir which fails if the permissions are too tight. + * Chmod to filepermissions since the majority of the chmod() calls will be for + * files anyway and then change the permissions for folders with a second call. + */ + if (!@chmod($filename, $filePermissions)) { + error("[ERROR]", $filename); + $error = 1; + } + if (is_dir($filename)) { + /* For folders, we change the permissions to the right ones with a second chmod call. */ + if (!$error) { + if (!@chmod($filename, $folderPermissions)) { + error("[ERROR]", $filename); + $error = 1; + } else { + status("[OK]", $filename); + } + } + /* + * Recurse into subdirectories: Open all files / sub-dirs and change the + * permissions recursively. + */ + if ($fd = opendir($filename)) { + while (($child = readdir($fd)) !== false) { + if ($child == '.' || $child == '..') { + continue; + } + $fullpath = "$filename/$child"; + $ret = chmodRecursively($fullpath, $folderPermissions, + $filePermissions, $start); + $error |= $ret; + } + closedir($fd); + } else { + error("Cannot open directory", $filename); + return 1; + } + } + + if ($error) { + return 1; + } + + return null; +} + +/** + * Returns the predefined / acceptable permission bit sets for folders and files + * as strings. Use as-is for HTML output, convert to integer (octdec) for chmod(). + * + * @return array(array(string folder permission) ) + */ +function getPermissionSets() { + $permissionSets = array(); + + $permissionSets[] = array(PermissionBits::fromString("777"), + PermissionBits::fromString("666")); + $permissionSets[] = array(PermissionBits::fromString("555"), + PermissionBits::fromString("444")); + $permissionSets[] = array(PermissionBits::fromString("755"), + PermissionBits::fromString("644")); + return $permissionSets; +} + +function getGalleryStoragePath() { + $config = GallerySetupUtilities::getGalleryConfig(); + return $config['data.gallery.base']; +} + +/** + * Class to represent a set of filesystem permission bits, eg. 0755 with a few convenience methods. + */ +class PermissionBits { + /** + * Bits in octal integer representation, e.g. 0755 + */ + var $_bits; + + /** + * Constructor + * @param int $bits permission bits in decimal integer representation, eg. octdec(0755) + */ + function PermissionBits($bits) { + $this->_bits = decoct($bits); + } + + /** + * Returns a new PermissionBits object + * @param string $bitsAsString permission set in string representation, e.g. "755" + * @return PermissionBits object + * @static + */ + function fromString($bitsAsString) { + $bitsAsString = (string)$bitsAsString; + if (strlen($bitsAsString) && $bitsAsString{0} != '0') { + $bitsAsString = '0' . $bitsAsString; + } + return new PermissionBits(octdec($bitsAsString)); + } + + function getAsString() { + return (string)$this->_bits; + } + + /** + * For use with chmod() + * @return int the permission set as decimal integer + */ + function getAsInt() { + return octdec($this->_bits); + } + + /** + * Returns a concise description of this permission set + * @XXX rethink the whole concept, maybe just show a owner/group/world vs. r+w+x matrix + */ + function getDescription() { + switch (intval($this->_bits, 8)) { + case 0777: + return 'Read + Write + Execute for Everyone'; + case 0555: + return 'Read + Execute for Everyone'; + case 0666: + return 'Read And Write for Everyone'; + case 0444: + return 'Read Only for Everyone, Including Owner'; + case 0755: + return 'Read + Execute for Everyone, Plus Write for Owner'; + case 0644: + return 'Read And Write for Owner, Read for Everyone Else'; + default: + /* No description available */ + return null; + } + } + + function getAsDescriptiveString() { + return $this->getAsString() . ' (' . $this->getDescription() . ' )'; + } + + function equals($permissionBits) { + return $this->getAsInt() == $permissionBits->getAsInt(); + } + + function isValid() { + $description = $this->getDescription(); + return !empty($description); + } +} + +/* Functions which control the HTML output of the page. */ +$errorBoxOpen = 0; +function status($msg, $obj) { + openErrorBox(); + printf("$msg %s
    ", wordwrap($obj, 85, "
       ", true)); +} + +function error($msg, $obj) { + openErrorBox(); + print ''; + printf("$msg %s
    ", wordwrap($obj, 85, "
       ", true)); + print '
    '; +} + +function isModulesOrThemesDirWriteable() { + return is_writeable(GallerySetupUtilities::getConfigDir() . '/modules/') && + is_writeable(GallerySetupUtilities::getConfigDir() . '/themes/'); +} + +/** + * Make the themes/ and modules/ dir writeable or read-only + * @param boolean $makeItWriteable true to make the dirs writeable, false to make them read-only + * @return null on success, non 0 integer on error + */ +function chmodModulesAndThemesDir($makeItWriteable) { + $mode = $makeItWriteable ? 0777 : 0555; + $ret = null; + foreach (array('/modules/', '/themes/') as $dir) { + if (file_exists(GallerySetupUtilities::getConfigDir() . $dir)) { + /* Try to chmod all dirs, even if one fails */ + if (!@chmod(GallerySetupUtilities::getConfigDir() . $dir, $mode)) { + error("[ERROR]", GallerySetupUtilities::getConfigDir() . $dir); + $ret = 1; + } + } + } + return $ret; +} + +function isGalleryDirWriteable() { + return is_writeable(GallerySetupUtilities::getConfigDir()); +} + +/** + * Chmod the whole gallery dir recursively either read-only or writeable + * @param boolean $makeItWriteable true to make the dirs writeable, false to make them read-only + * @return null on success, non 0 integer on error + */ +function chmodGalleryDirRecursively($makeItWriteable) { + /* This is just a wrapper function for the general chmod recursively function */ + $folderMode = $makeItWriteable ? 0777 : 0555; + $fileMode = $makeItWriteable ? 0666 : 0444; + return chmodRecursively(GallerySetupUtilities::getConfigDir(), $folderMode, $fileMode, + time() - 60); +} + +/* Chmod a specific plugin dir recursively */ +function chmodPluginDir($pluginPath, $makeItWriteable) { + /* This is just a wrapper function for the general chmod recursively function */ + $folderMode = $makeItWriteable ? 0777 : 0555; + $fileMode = $makeItWriteable ? 0666 : 0444; + return chmodRecursively(GallerySetupUtilities::getConfigDir() . $pluginPath, $folderMode, + $fileMode, time() - 60); +} + +function chmodStorageDirRecursively() { + /* This is just a wrapper function for the general chmod recursively function */ + return chmodRecursively(getGalleryStoragePath(), 0777, 0666, time() - 60); +} + +/** + * @return array (pluginId => boolean writeable, .. ) + */ +function getPluginList() { + /* + * We don't want to depend on the G2 API here, so just list the folders in + * modules/, themes/ and in plugins/modules/, plugins/themes/. + * We prefer being indepdent of the state of G2 over flexibility (e.g. if the + * user hacked init.inc to set a different plugins dir name). + */ + $plugins = array(); + foreach (array('/modules/', '/themes/') as $base) { + if (!file_exists(GallerySetupUtilities::getConfigDir() . $base)) { + continue; + } + $fh = opendir(GallerySetupUtilities::getConfigDir() . $base); + if (empty($fh)) { + continue; + } + + /* For each folder in the plugin dir, check if it's writeable */ + while (($folderName = readdir($fh)) !== false) { + if ($folderName == '.' || $folderName == '..' || $folderName == '.svn') { + continue; + } + $pluginId = $base . trim($folderName); + if ((int)is_dir(GallerySetupUtilities::getConfigDir() . $base . $folderName)) { + $plugins[$pluginId] = (int)is_writeable( + GallerySetupUtilities::getConfigDir() . $base . $folderName); + } + } + closedir($fh); + } + ksort($plugins); + return $plugins; +} + +function getRequestVariable($varName) { + foreach (array($_POST, $_GET) as $requestVars) { + if (isset($requestVars[$varName])) { + return $requestVars[$varName]; + } + } + + return null; +} + +/* + * Uses JavaScript to print the status / error message at the top of the page + * even if the page has already been printed. + */ +function printStatus($status) { + if (!empty($status['error'])) { + printf('', + str_replace(array("\\", "'"), array("\\\\", "\\'"), + implode('
    ', $status['error']))); + } + if (!empty($status['message'])) { + printf('', + str_replace(array("\\", "'"), array("\\\\", "\\'"), $status['message'])); + } +} + +/************************************************************ + * HTML - The Page layout / GUI + ************************************************************/ + +/** + * Prints the whole page including form but without the footer. + * Call this function, then call chmodRecursively() which will output some HTML, + * and finally call printFooter(); + */ +function printPageWithoutFooter($plugins, $path, $filePermissions, $folderPermissions, $permissionBitSets) { + global $baseUrl; +?> + + + Gallery Support - Change Filesystem Permissions + + + + + + +
    +
    + Gallery » Support » Change Filesystem Permissions +
    +

    + This tool lets you change the filesystem permissions of files and folders owned + by the webserver. +

    +

    + All files and folders in your Gallery storage folder are owned by the + webserver. If you installed Gallery2 by unpacking a .zip or .tar.gz file, then the + gallery2 folder is probably owned by you which means that you can edit the files + directly. However, if you used the preinstaller then your gallery2 directory is + also owned by the webserver. For more information, see the Gallery Security + Guide. +

    + + + + + + +
    + + +

    + Make modules & themes directories writeable +

    +

    + Useful when adding a new module or theme. This makes your modules and + themes folders writeable. It only works if you have installed Gallery with the + pre-installer. Usually you can change the filesystem permissions with your FTP + program or command line shell. +

    + +

    + Make modules & themes directories read-only +

    +

    + Useful when you're not going to be making changes by hand. This makes your + modules and themes folders writeable. Only works if you have installed Gallery + with the pre-installer. Usually you can change the filesystem permissions with + your FTP program or command line shell. +

    + + +
    + +
    +

    + Make a specific theme or module editable +

    +

    + If you want to edit a page template file of a specific module or theme and your + Gallery was originally installed with the pre-installer, you might have to make + the corresponding plugin folder writeable first. +

    +

    + +    + + | + +

    +
    + +
    + +

    Make the data folder read/write

    +

    + For some reason, your Gallery data folder might no longer be writeable by Gallery itself + and if that happens, Gallery will usually show a ERROR_PLATFORM_FAILURE. In that case the + problem might be solved by the above action. If the problem persists, you will have to talk + to your webhost to get data folder writeable again. +

    + +
    + + +

    Make everything read/write

    +

    + If your Gallery has been installed with the pre-installer, you might have to make the + whole Gallery directory structure read/write before you can upgrade or delete your + installation. +

    + +

    Make everything read-only

    +

    + If your Gallery has been installed with the pre-installer you may want to change + all your files back to read-only for a small amount of additional security. +

    + + +
    + +

    Advanced: Choose the path and the permissions manually

    +
    +

    + Path to change: + +
    + + Gallery folder:
    + Gallery data folder:
    +
    +
    + New permissions: + equals($filePermissions)) ? 'checked' : ''; + $value = $permissionBitSet[0]->getAsString() . $permissionBitSet[1]->getAsString(); + ?> +
    + > + + + +

    + + +

    +
    + + +
    +

    Details:

    + +
    + +
    + + + diff --git a/Source/gallery2/lib/support/gd.php b/Source/gallery2/lib/support/gd.php new file mode 100644 index 0000000..13b1ae6 --- /dev/null +++ b/Source/gallery2/lib/support/gd.php @@ -0,0 +1,219 @@ + + */ +if (!defined('G2_SUPPORT')) return; + +/* + * Gets a lot of information about our GD installation and return it as a + * giant string, which can be eval'ed to an array. + */ +function getGdLibraryInfo() { + if (! extension_loaded('gd')) { + return ''; + } + + /* Get GD version from phpinfo or gd_info */ + if (function_exists('gd_info')) { + $gdInfo = gd_info(); + $matchString = $gdInfo['GD Version']; + $matcherVersion = '/([\d\.]+)(\s+or\s+higher)?/i'; + $matcherBundled = '/bundled/i'; + } else { + ob_start(); + phpinfo(8); + $matchString = ob_get_contents(); + $matcherVersion = '/\bgd\s+version\b[^\d\n\r]+?([\d\.]+)(\s+or\s+higher)?/i'; + $matcherBundled = '/\bgd\s+version\b[^\d\n\r]+?bundled/i'; + ob_end_clean(); + } + if (preg_match($matcherVersion, $matchString, $matches)) { + $gdVersion = $matches[1]; + } else { + $gdVersion = 0; + } + if (isset($matches[2])) { + $gdVersion = sprintf('>%s', $gdVersion); + } + $isGdBundled = 0; + if (preg_match($matcherBundled, $matchString)) { + $isGdBundled = 1; + } + + /* Find out supported mime types */ + $mimeChecks = array( + array( + 'mimeType' => 'image/gif', + 'value' => defined('IMG_GIF') ? IMG_GIF : '', + 'functions' => array('imageCreateFromGif', 'imageGif') + ), + array( + 'mimeType' => 'image/jpeg', + 'value' => defined('IMG_JPEG') ? IMG_JPEG : '', + 'functions' => array('imageCreateFromJpeg', 'imageJpeg') + ), + array( + 'mimeType' => 'image/png', + 'value' => defined('IMG_PNG') ? IMG_PNG : '', + 'functions' => array('imageCreateFromPng', 'imagePng') + ), + array( + 'mimeType' => 'image/vnd.wap.wbmp', + 'value' => defined('IMG_WBMP') ? IMG_WBMP : '', + 'functions' => array('imageCreateFromWbmp', 'imageWbmp') + ), + array( + 'mimeType' => 'image/x-xpixmap', + 'value' => defined('IMG_XPM') ? IMG_XPM : '', + 'functions' => array('imageCreateFromXpm', 'imageXpm') + ), + array( + 'mimeType' => 'image/x-xbitmap', + 'value' => defined('IMG_XBM') ? IMG_XBM : '', + 'functions' => array('imageCreateFromXbm', 'imageXbm') + ), + ); + $mimeTypes = array(); + foreach ($mimeChecks as $check) { + $ok = true; + foreach ($check['functions'] as $fct) { + if (! function_exists($fct)) { + $ok = false; + } + } + if ($ok && ! ($check['value'] & imageTypes())) { + $ok = false; + } + if ($ok) { + $mimeTypes[] = $check['mimeType']; + } + } + + $out = ''; + $out .= '$gdEnvironments[] = array(' . "\n"; + $name = sprintf('%s|%s%s|%s', + phpversion(), + $gdVersion, + ($isGdBundled ? '-bundled' : '-external'), + PHP_OS + ); + + $out .= "\t" . sprintf('\'name\' => \'%s\',', $name) . "\n"; + $out .= "\t" . sprintf('\'phpVersion\' => \'%s\',', phpversion()) . "\n"; + $out .= "\t" . sprintf('\'gdVersion\' => \'%s\',', $gdVersion) . "\n"; + $out .= "\t" . sprintf('\'gdBundled\' => %s,', $isGdBundled) . "\n"; + + $imageTypes = 0; + if (function_exists('imageTypes')) { + $imageTypes = imageTypes(); + } + $out .= "\t" . sprintf('\'imageTypes\' => %s,', $imageTypes) . "\n"; + + if (function_exists('gd_info')) { + $gdInfo = gd_info(); + $out .= "\t" . '\'gd_info\' => array(' . "\n"; + foreach ($gdInfo as $field => $value) { + $out .= "\t\t" . sprintf('\'%s\' => \'%s\',', $field, $value) . "\n"; + } + $out .= "\t" . '),' . "\n"; + } + + /* Check which constants are defined */ + $constants = get_defined_constants(); + $out .= "\t" . '\'constants\' => array(' . "\n"; + foreach ($constants as $constant => $value) { + if (! preg_match('/^(IMAGE|IMG|GD|PHP)/', $constant)) { continue; } + if (! is_int($value)) { + $value = sprintf('\'%s\'', $value); + } + $out .= "\t\t" . sprintf('\'%s\' => %s,', $constant, $value) . "\n"; + } + $out .= "\t" . '),' . "\n"; + + $out .= "\t" . '\'mimeTypes\' => array(' . "\n"; + foreach ($mimeTypes as $mimeType) { + $out .= "\t\t" . sprintf('\'%s\',', $mimeType) . "\n"; + } + $out .= "\t" . '),' . "\n"; + + ob_start(); + phpinfo(8); + $phpinfo = ob_get_contents(); + ob_end_clean(); + $phpinfo = htmlspecialchars($phpinfo); + $phpinfo = preg_replace('/\'/', '\\\'', $phpinfo); + $out .= "\t" . sprintf('\'phpinfo(8)\' => \'%s\',', $phpinfo) . "\n"; + + /* Functions defined in this GD module */ + $functions = get_extension_funcs('gd'); + $out .= "\t" . '\'functions\' => array(' . "\n"; + foreach ($functions as $fct) { + $out .= "\t\t" . sprintf('\'%s\' => true,', $fct) . "\n"; + } + + $otherFunctions = array( + 'getimagesize', + 'image_type_to_extension', + 'image_type_to_mime_type', + 'iptcembed', + 'iptcparse', + ); + foreach ($otherFunctions as $fct) { + if (! function_exists($fct)) { continue; } + $out .= "\t\t" . sprintf('\'%s\' => true,', $fct) . "\n"; + } + $out .= "\t" . '),' . "\n"; + $out .= ');' . "\n"; + return $out; +} + +$gdInfo = getGdLibraryInfo(); + +?> + + + Gallery Support | GD Library Info + + + +
    +
    + Gallery » Support » GD Library Info +
    + +

    No GD library found.

    + +

    This information might be useful for the GD module developers:

    +
    + +
    + + diff --git a/Source/gallery2/lib/support/index.php b/Source/gallery2/lib/support/index.php new file mode 100644 index 0000000..a0c9b44 --- /dev/null +++ b/Source/gallery2/lib/support/index.php @@ -0,0 +1,72 @@ + + + + + + Gallery Support + + + + +
    +
    + Gallery » Support +
    + +

    + This is a collection of scripts that you use to troubleshoot problems with + your Gallery installation. +

    + +

    + PHP Info +

    +

    + PHP configuration information +

    +
    + +

    + Cache Maintenance +

    +

    + Delete files from the Gallery data cache +

    +
    + +

    + Filesystem Permissions +

    +

    + Change the filesystem permissions of your Gallery and your storage folder. +

    +
    + +

    + GD +

    +

    + Information about your GD configuration +

    +
    + + diff --git a/Source/gallery2/lib/support/phpinfo.php b/Source/gallery2/lib/support/phpinfo.php new file mode 100644 index 0000000..7e238bd --- /dev/null +++ b/Source/gallery2/lib/support/phpinfo.php @@ -0,0 +1,71 @@ + +(.*)#ims', $phpinfo, $matches); +$phpinfo = $matches[1]; +$phpinfo = preg_replace_callback( + '#()(.*?)()#ims', + create_function('$matches', 'return $matches[1] . wordwrap($matches[2], 10, "", true) . $matches[3];'), + $phpinfo); + +?> + + + Gallery Support | PHP Info + + + + + +
    +
    + Gallery » Support » PHP Info +
    + +
    + + \ No newline at end of file diff --git a/Source/gallery2/lib/support/security.inc b/Source/gallery2/lib/support/security.inc new file mode 100644 index 0000000..64e0b2b --- /dev/null +++ b/Source/gallery2/lib/support/security.inc @@ -0,0 +1,237 @@ += G2_SUPPORT_MAX_LOGIN_ATTEMPTS) { + if (!file_exists($authFile)) { + $options['authFileErrors']['missing'] = 1; + } else if (!is_readable($authFile)) { + $options['authFileErrors']['unreadable'] = 1; + } else { + $authKeyFromFile = trim(join('', file($authFile))); + if ($authKeyFromFile == $options['key']) { + GallerySetupUtilities::authenticateThisSession(); + GallerySetupUtilities::redirectBackToSelf(); + exit; + } else { + $options['authFileErrors']['mismatch'] = 1; + } + } + render('loginTxtForm', $options); + } else if (!empty($_POST['password'])) { + if ($_POST['password'] == $config['setup.password']) { + GallerySetupUtilities::authenticateThisSession(); + GallerySetupUtilities::redirectBackToSelf(); + exit; + } else { + $options['attempts']++; + if (!GallerySetupUtilities::setLoginAttempts($options['attempts'])) { + $options['error'] = true; + } + + if ($options['error'] || $options['attempts'] >= G2_SUPPORT_MAX_LOGIN_ATTEMPTS) { + if ($options['attempts'] >= G2_SUPPORT_MAX_LOGIN_ATTEMPTS) { + $ret = GallerySetupUtilities::notifySiteAdministrator(); + /* swallow return code; we can't do anything with it */ + } + render('loginTxtForm', $options); + } else { + $options['wrongPassword'] = 1; + render('passwordForm', $options); + } + } + } else { + if (isset($_POST['password'])) { + $options['missingPassword'] = 1; + } + render('passwordForm', $options); + } +} + +if (GallerySetupUtilities::isSessionAuthenticated()) { + /* This is the only safe way out of this include. Everything else aborts now */ + return; +} + +/* Unless we're properly authenticated, this is the end of the line */ +exit; + +function render($renderType, $options=array()) { + global $baseUrl; +?> + + + + Security Check + + + +
    +
    + Security Check +
    + +

    + You are attempting to access a secure section of this Gallery installation. You can't + proceed until you pass the security check. +

    + + +
    + You must create a config.php file in the Gallery directory before + you can continue configuring the application. Use the + installer to create one. +
    + + + +
    + You must enter a setup password in your gallery2/config.php file in order + to be able to set up Gallery. If your config.php is empty, you should run + the installer to install your Gallery. +
    + + + +
    + +
    + Failed login attempts: out of a total of + . +
    + + +

    + In order to verify you, we require you to enter your Gallery setup password. This is + the password you entered when you installed Gallery. It can be found in your + gallery/config.php file like this: +

    +
    +           $gallery->setConfig('setup.password', 'your password here');
    +         
    +

    + Password: + + + +

    + +
    + Please enter a password! +
    + +
    + + + +
    +

    + + + There was a problem connecting to the database. + + You have exceeded the maximum attempts to login by entering a password. + + + + To prevent somebody from hacking your website, we now + require you to complete a stricter authentication + process. You must create a text file called + login.txt in the gallery2 directory on your + webserver (that's the same directory where main.php is + located) and put specific text in it. If you used the preinstaller + to install Gallery, then you may have to use it again to set your directory + permissions so that you can create the login.txt file. +

    +
    + Create this file: login.txt
    + Put this in the file: +
    + +
    + + The login.txt file does not exist. + + The login.txt file exists, but is not readable by the webserver. +
    Try: chmod 644 login.txt + + The password in your login.txt file does not match the key above! + +
    + +

    + + + +

    +
    + +
    + + + diff --git a/Source/gallery2/lib/support/support.css b/Source/gallery2/lib/support/support.css new file mode 100644 index 0000000..a35c7fc --- /dev/null +++ b/Source/gallery2/lib/support/support.css @@ -0,0 +1,154 @@ +html { + font-family: "Lucida Grande", Verdana, Arial, sans-serif; + font-size: 62.5%; + background-color: #eee; + text-align: center; +} + +a { + text-decoration: none; +} + +a:visited { + color: rgb(85, 26,139); +} + +body { + font-size: 1.2em; +} + +#content { + width: 760px; + background: #FFF; + margin: 0px auto; + text-align: left; + border-bottom: 1px solid #999; + border-left: 1px solid #999; + border-right: 1px solid #999; + padding-bottom: 15px; +} + +div#title { + background: #ccc; + margin: 0px; + border-top: 1px solid #999; + border-bottom: 1px solid #999; + margin-bottom: 10px; + padding: 5px 20px 5px 20px; + font-size: 1.5em; +} + +h1, h2, h3 { + font-family: "Gill Sans", Verdana, Arial, sans-serif; + color: #333; + padding: 0px 20px 0px 20px; +} + +h1 { + font-size: 1.5em; + border-bottom: 1px solid #ddd; +} + +h2 { + font-size: 1.3em; +} + +h3 { + font-size: 1.1em; +} + +p { + padding-left: 20px; + padding-right: 20px; +} + +p.description { + margin-top: -10px; + padding-left: 40px; +} + +span.subtext { + font-size: 0.9em; +} + +div.error { + border: 1px solid red; + background: #ffcccc; + padding: 10px; + margin: 20px; + font-size: 1.3em; +} + +div.warning { + border: 1px solid orange; + background: #ffffcc; + padding: 10px; + margin: 20px; + font-size: 1.3em; +} + +div.info { + border: 1px solid black; + background: #cccccc; + padding: 10px; + margin: 20px; + font-size: 1.3em; +} + +pre.error, span.error { + color: red; +} + +span.hasToolTip { + border-bottom: 1px dashed rgb(0, 0, 238); +} + +div.success { + border: 1px solid green; + background: #ccffcc; + padding: 10px; + margin: 20px; + font-size: 1.3em; +} + +div.results { + border: 1px solid #999; + background: #ccc; + padding: 10px; + margin: 20px; +} + +div.results h2 { + padding: 0px; + margin-bottom: 10px; + border-bottom: 1px solid #999; +} + +pre { + font-family: monospace; + font-size: 1.2em; + margin: 0px; +} + +.highlightedLink { + font-weight: bold; + color: blue; +} + +.disabledLink { + font-weight: lighter; + color: #888888; +} + +label { + cursor: pointer; +} + +hr.faint { + border-top: 1px solid #fffffe; +} + +tt { + font-family: monospace; + font-size: 1.1em; +} diff --git a/Source/gallery2/lib/support/templates/FailedPasswordEmail.tpl b/Source/gallery2/lib/support/templates/FailedPasswordEmail.tpl new file mode 100644 index 0000000..6a34bdf --- /dev/null +++ b/Source/gallery2/lib/support/templates/FailedPasswordEmail.tpl @@ -0,0 +1,14 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +{* Note: we don't have localization for lib/support yet so this file is not internationalized *} +Warning! There have been too many failed attempts to log in to the support/upgrade section of your Gallery2 installation using a password. Password access to those parts of your Gallery2 has been disabled. + +Your Gallery2 is still secure! But now if you want to log in, you'll have to pass a more advanced security check which is less convenient but much harder to hack. Once you've logged in once that way, we'll reinstate password access. + +If you are the one who entered the wrong passwords, then don't worry about this. Just follow the new instructions provided in the support or upgrade sections of your site. If it was NOT you, then it's possible that somebody is trying to hack your Gallery2 installation so you should consult your system administrator for help! + + diff --git a/Source/gallery2/lib/tools/po/.htaccess b/Source/gallery2/lib/tools/po/.htaccess new file mode 100644 index 0000000..a43452d --- /dev/null +++ b/Source/gallery2/lib/tools/po/.htaccess @@ -0,0 +1,3 @@ +Order deny,allow +Deny from all +Allow from none diff --git a/Source/gallery2/lib/tools/po/GNUmakefile.inc b/Source/gallery2/lib/tools/po/GNUmakefile.inc new file mode 100644 index 0000000..cc8cc71 --- /dev/null +++ b/Source/gallery2/lib/tools/po/GNUmakefile.inc @@ -0,0 +1,142 @@ +# +# Gallery .mo files makefile +# +# This makefile is based on the one provided with the Horde project +# http://www.horde.org/. As such, it inherits the license from the +# original version. You can find that license here: +# +# http://cvs.horde.org/co.php/horde/COPYING?r=2.1 +# +# I'm not exactly sure what the license restrictions are in this case, +# but I want to give full credit to the original authors: +# +# Copyright 2000-2002 Joris Braakman +# Copyright 2001-2002 Chuck Hagenbuch +# Copyright 2001-2002 Jan Schneider +# +# $Id: GNUmakefile.inc 16027 2007-03-16 18:55:07Z mindless $ +# +MODULE_DIR = $(shell dirname `pwd`) +TYPE_DIR = $(shell dirname $(MODULE_DIR)) +APPLICATION ?= $(shell basename $(TYPE_DIR))_$(shell basename $(MODULE_DIR)) + +ifdef QUIET + MSGFMT_FLAGS = +else + MSGFMT_FLAGS = -v +endif + +MSGFMT = msgfmt $(MSGFMT_FLAGS) -c -o +MSGFMTSOL = msgfmt $(MSGFMT_FLAGS) -o + +PO ?= * +LANGPO = $(shell echo $@ | perl -ne 'chomp; print if (s/^(..)_..\.po/$$1.po/ and -s)') +COMPENDIUM = $(shell echo $@ | perl -ne 'chomp; print "-C $$_" if (s/^(..)_..\.po/$$1.po/ and -s)') + +all: install + +all-remove-obsolete: update remove-obsolete install + +messages.po: alwaysbuild + @php -f $(TOOLDIR)/po/extract.php $(MODULE_DIR) > strings.raw.tmp + @# Don't extract right to strings.raw because extract.php tries to preserve + @# some old data from strings.raw and the > redirect blanks it out. + @mv strings.raw.tmp strings.raw + @xgettext --keyword=_ -C --no-location \ + --msgid-bugs-address=gallery-translations@lists.sourceforge.net strings.raw + @sed '1,4 d' < messages.po > messages.tmp + @cat $(TOOLDIR)/po/header.txt messages.tmp > messages.po + @$(RM) messages.tmp + +%.po: messages.po + @perl $(TOOLDIR)/po/premerge-messages.pl $@ messages.po > messages.tmp + @# ignore errors from msgmerge, we'll catch them on the msgfmt command: + @-if [ -s messages.tmp ]; then \ + msgmerge --quiet --width=95 $(COMPENDIUM) $@ messages.tmp > $@.tmp; \ + if [ -s $@.tmp ]; then mv $@.tmp $@; else $(RM) $@.tmp; fi; \ + perl -pi $(TOOLDIR)/po/header.pl $@; \ + elif [ -z "$(NOCREATE)" ]; then \ + if [ -n "$(LANGPO)" ]; then \ + perl $(TOOLDIR)/po/premerge-messages.pl -2 messages.po $(LANGPO) > $@; \ + else cp messages.po $@; fi; \ + perl -pi $(TOOLDIR)/po/header.pl $@; \ + fi + @$(RM) messages.tmp + +alwaysbuild: + +clean: + @$(RM) messages.po + +update: $(PO).po + +install: update + @if test "$(OSTYPE)" = "solaris"; then \ + echo "You'll probably get some warnings on Solaris. This is normal."; \ + fi; \ + FAIL=0; \ + echo "Updating $(PO)"; \ + for LOCALE in `ls $(PO).po | grep -v messages.po | sed 's/\.[^.]*$$//g'`; do \ + if test -z "$${QUIET}"; then echo $${LOCALE}; fi; \ + if $(TOOLDIR)/po/shtool mkdir -p ../locale/$${LOCALE}/LC_MESSAGES; then \ + php -f $(TOOLDIR)/po/trim-po.php `pwd`/$${LOCALE}.po > tmp.po; \ + if test "$(OSTYPE)" = "solaris"; then \ + if {MSGFMTSOL} ../locale/$${LOCALE}/LC_MESSAGES/$(APPLICATION).mo tmp.po; then \ + if test -n "$${QUIET}"; then \ + echo -n '.'; \ + fi \ + else \ + echo -n "Fail: $${LOCALE}"; \ + FAIL=1; \ + fi \ + else \ + if $(MSGFMT) ../locale/$${LOCALE}/LC_MESSAGES/$(APPLICATION).mo tmp.po; then \ + if test -n "$${QUIET}"; then \ + echo -n '.'; \ + fi \ + else \ + echo -n "Fail: $${LOCALE}"; \ + FAIL=1; \ + fi \ + fi; \ + $(RM) tmp.po; \ + else \ + echo "Could not create locale directory for $${LOCALE}."; \ + FAIL=1; \ + fi; \ + if test -z "$${QUIET}"; then echo; fi; \ + done; \ + if test $${FAIL} -gt 0; then exit 1; fi; + @echo ''; + +compendium: messages.po + @perl -pi -e 's|^("Content-Type: text/plain; charset)=CHARSET|$$1=UTF-8|' messages.po + @for POFILE in `ls $(PO).po | grep -v messages.po`; do \ + CORE=`perl -e '$$_="$(TOOLDIR)/../../modules/core/po/'$${POFILE}'"; \ + print "-C $$_" if -s'`; \ + MATRIX=`perl -e '$$_="$(TOOLDIR)/../../themes/matrix/po/'$${POFILE}'"; \ + print "-C $$_" if -s'`; \ + if [ -n "$${CORE}" -o -n "$${MATRIX}" ]; then \ + echo -n "$${POFILE} "; \ + msgmerge --width=95 -N $${CORE} $${MATRIX} \ + --suffix= --update $${POFILE} messages.po; \ + if [ `svn diff $${POFILE} | grep -c '^+msgstr'` -eq 0 ]; then \ + svn revert --quiet $${POFILE}; \ + fi; \ + else \ + echo "No compendium for $${POFILE}"; \ + fi; \ + done; + +create-from-core: + @for POFILE in `ls $(TOOLDIR)/../../modules/core/po/$(PO).po | grep -v messages.po`; do \ + PO=`basename $${POFILE}`; \ + if [ ! -f $${PO} ]; then \ + perl -p -e '$$x++ if /^msgid/; exit if $$x eq 2' $${POFILE} > $${PO}; \ + fi; \ + done; + +remove-obsolete: + @for LOCALE in `ls $(PO).po | grep -v messages.po | sed 's/\.[^.]*$$//g'`; do \ + msgattrib --no-obsolete --output-file=$${LOCALE}.po $${LOCALE}; \ + done; diff --git a/Source/gallery2/lib/tools/po/extract.php b/Source/gallery2/lib/tools/po/extract.php new file mode 100644 index 0000000..990b560 --- /dev/null +++ b/Source/gallery2/lib/tools/po/extract.php @@ -0,0 +1,252 @@ +#!/usr/bin/php -f + + * Copyright 2001-2002 Chuck Hagenbuch + * Copyright 2001-2002 Jan Schneider + * + * We've modified the script somewhat to make it work cleanly with the + * way that Gallery embeds internationalized text, so let's tack on our + * own copyrights. + * + * Copyright 2002-2007 Bharat Mediratta + * + * $Id: extract.php 15513 2006-12-20 00:24:57Z mindless $ + */ + +if (!empty($_SERVER['SERVER_NAME'])) { + print "You must run this from the command line\n"; + exit(1); +} + +$exts = '(class|php|inc|tpl|css|html)'; +/* These are in phpdoc and don't really need translations: */ +$skip = array('TEST to be displayed in different languages' => true, + 'TT ' => true); +$idEmitted = false; +$strings = array(); +array_shift($_SERVER['argv']); +foreach ($_SERVER['argv'] as $moduleDir) { + if (preg_match('#^/cygdrive/(\w+)/(.*)$#', trim($moduleDir), $matches)) { + /* Cygwin and Window PHP filesystem function don't play nice together. */ + $moduleDir = $matches[1] . ':\\' . str_replace('/', '\\', $matches[2]); + } + if (!is_dir($moduleDir)) { + continue; + } + chdir($moduleDir); + find('.'); + + $oldStringsRaw = "$moduleDir/po/strings.raw"; + if (file_exists($oldStringsRaw)) { + $lines = file($oldStringsRaw); + if (preg_match('/^#.*Id/', $lines[0])) { + print $lines[0]; + $idEmitted = true; + } + } +} + +if (!$idEmitted) { + print '# $' . 'Id$' . "\n"; +} +foreach ($strings as $string => $otherFiles) { + print $string; + if (!empty($otherFiles)) { + print ' /* also in: ' . implode(' ', $otherFiles) . ' */'; + } + print "\n"; +} + +/** + * Recursive go through subdirectories + */ +function find($dir) { + if ($dh = opendir($dir)) { + $listing = $subdirs = array(); + while (($file = readdir($dh)) !== false) { + if ($file == '.' || $file == '..') { + continue; + } + $listing[] = $file; + } + closedir($dh); + sort($listing); + global $exts; + $dir = ($dir == '.') ? '' : ($dir . '/'); + foreach ($listing as $file) { + $filename = $dir . $file; + if (is_dir($filename)) { + /* Don't parse unit tests */ + if ($file != 'test') { + $subdirs[] = $filename; + } + } else if (preg_match("/\." . $exts . "$/", $file)) { + extractStrings($filename); + } + } + foreach ($subdirs as $dir) { + find($dir); + } + } +} + +/** + * Grab all translatable strings in a file into $strings array + */ +function extractStrings($filename) { + global $strings, $skip; + $strings["\n/* $filename */"] = array(); + $startSize = count($strings); + $localStrings = array(); + $data = file_get_contents($filename); + + /* + * grab phrases for translate( or i18n( or _( calls; capture string parameter enclosed + * in single or double quotes including concatenated strings like 'one' . "two" + */ + if (preg_match_all("/(translate|i18n|_)\(\s*((?:(?:\s*\.\s*)?(?:'(?:(?:\\')?[^']*?)*[^\\\\]'|\"(?:(?:\")?[^\"]*?)*[^\\\\]\"))+)\s*(?:,\s*(true|false)\s*)?\)/s", + $data, $matches, PREG_SET_ORDER)) { + foreach ($matches as $match) { + $text = eval('return ' . $match[2] . ';'); + $text = str_replace('"', '\\"', $text); /* escape double-quotes */ + if (isset($skip[$text])) { + continue; + } + if (!empty($match[3])) { + $hint = '/* xgettext:' . ($match[3] == 'false' ? 'no-' : '') . "c-format */\n"; + } else { + $hint = ''; + } + $string = $hint . sprintf('gettext("%s")', $text); + if (!isset($strings[$string])) { + $strings[$string] = array(); + } else if (!isset($localStrings[$string])) { + $strings[$string][] = $filename; + } + $localStrings[$string] = true; + } + } + + /* grab phrases of this format: translate(array('one' => '...', 'many' => '...')) */ + if (preg_match_all("/translate\(\s*array\(\s*'one'\s*=>\s*((?:(?:\s*\.\s*)?(?:'(?:(?:\\')?[^']*?)*[^\\\\]'|\"(?:(?:\")?[^\"]*?)*[^\\\\]\"))+).*?'many'\s*=>\s*((?:(?:\s*\.\s*)?(?:'(?:(?:\\')?[^']*?)*[^\\\\]'|\"(?:(?:\")?[^\"]*?)*[^\\\\]\"))+)\s*[,)]/s", + $data, $matches, PREG_SET_ORDER)) { + foreach ($matches as $match) { + $one = eval('return ' . $match[1] . ';'); + $many = eval('return ' . $match[2] . ';'); + $one = str_replace('"', '\\"', $one); /* escape double-quotes */ + $many = str_replace('"', '\\"', $many); /* escape double-quotes */ + $string = sprintf('ngettext("%s", "%s")', $one, $many); + if (!isset($strings[$string])) { + $strings[$string] = array(); + } else if (!isset($localStrings[$string])) { + $strings[$string][] = $filename; + } + $localStrings[$string] = true; + } + } + + /* grab phrases of this format: translate(array('text' => '...', ...)) */ + if (preg_match_all("/translate\(\s*array\(\s*'text'\s*=>\s*((?:(?:\s*\.\s*)?(?:'(?:(?:\\')?[^']*?)*[^\\\\]'|\"(?:(?:\")?[^\"]*?)*[^\\\\]\"))+)\s*[,)]/s", + $data, $matches, PREG_SET_ORDER)) { + foreach ($matches as $match) { + $text = eval('return ' . $match[1] . ';'); + $text = str_replace('"', '\\"', $text); /* escape double-quotes */ + $string = sprintf('gettext("%s")', $text); + if (!isset($strings[$string])) { + $strings[$string] = array(); + } else if (!isset($localStrings[$string])) { + $strings[$string][] = $filename; + } + $localStrings[$string] = true; + } + } + + /* grab phrases of this format: {g->text ..... } or {g->changeInDescendents ... } */ + if (preg_match_all("/(\{\s*g->(?:text|changeInDescendents)\s+.*?[^\\\]\})/s", + $data, $matches, PREG_SET_ORDER)) { + foreach ($matches as $match) { + $string = $match[1]; + $text = $one = $many = null; + + /* + * Ignore translations of the form: + * text=$foo + * as we expect those to be variables containing values that + * have been marked elsewhere with the i18n() function + */ + if (preg_match("/text=\\$/", $string)) { + continue; + } + + /* text=..... */ + if (preg_match("/text=\"(.*?[^\\\])\"/s", $string, $matches)) { + $text = $matches[1]; + } elseif (preg_match("/text='(.*?)'/s", $string, $matches)) { + $text = $matches[1]; + $text = str_replace('"', '\\"', $text); /* escape double-quotes */ + } + + /* one = ..... */ + if (preg_match("/\s+one=\"(.*?[^\\\])\"/s", $string, $matches)) { + $one = $matches[1]; + } elseif (preg_match("/\s+one='(.*?)'/s", $string, $matches)) { + $one = $matches[1]; + $one = str_replace('"', '\\"', $one); /* escape double-quotes */ + } + + /* many = ..... */ + if (preg_match("/\s+many=\"(.*?[^\\\])\"/s", $string, $matches)) { + $many = $matches[1]; + } elseif (preg_match("/\s+many='(.*?)'/s", $string, $matches)) { + $many = $matches[1]; + $many = str_replace('"', '\\"', $many); /* escape double-quotes */ + } + + /* c-format hint for xgettext */ + if (preg_match('/c[Ff]ormat=(true|false)/s', $string, $matches)) { + $hint = '/* xgettext:' . ($matches[1] == 'false' ? 'no-' : '') . "c-format */\n"; + } else { + $hint = ''; + } + + /* pick gettext() or ngettext() */ + if ($text != null) { + $string = $hint . sprintf('gettext("%s")', $text); + } else if ($one != null && $many != null) { + $string = $hint . sprintf('ngettext("%s", "%s")', $one, $many); + } else { + /* parse error */ + $stderr = fopen('php://stderr', 'w'); + $text = preg_replace("/\n/s", '\n>', $text); + fwrite($stderr, "extract.php parse error: $filename:\n"); + fwrite($stderr, "> $text\n"); + exit(1); + } + + $string = str_replace('\\}', '}', $string); /* unescape right-curly-braces */ + if (!isset($strings[$string])) { + $strings[$string] = array(); + } else if (!isset($localStrings[$string])) { + $strings[$string][] = $filename; + } + $localStrings[$string] = true; + } + } + if (count($strings) == $startSize) { + unset($strings["\n/* $filename */"]); + } +} +?> diff --git a/Source/gallery2/lib/tools/po/header.pl b/Source/gallery2/lib/tools/po/header.pl new file mode 100644 index 0000000..f132de1 --- /dev/null +++ b/Source/gallery2/lib/tools/po/header.pl @@ -0,0 +1,29 @@ +#!/usr/bin/perl +# Ensure correct header (Id tag, GPL header, Project-Id-Version) +# Usage: perl -pi{ext} header.pl {po_file} +# messages.po should exist in current dir + +if ($. == 1) { + $_ = "# \$Id\$\n" unless /^# \$Id/; +} elsif (not $x) { + $x = 1 if /^(?:([^#])|#.*USA)/; + undef $_ unless $1; + print `sed -n "2,/USA/ p" messages.po` if $x; +} elsif (s/^("Project-Id-Version:).*$/$1 Gallery: /) { + chomp; + if ($f = -f '../module.inc' ? '../module.inc' : (-f '../theme.inc' ? '../theme.inc' : '')) { + $m = `perl -naF\\' -e 'do { print \$F[1]; exit } if /setName/' $f`; + $m .= ' Theme' if ($f eq '../theme.inc'); + $v = `perl -naF\\' -e 'do { print \$F[1]; exit } if /setVersion/' $f`; + } else { + $m = (($m = `pwd`) =~ m|install.po|) ? 'Installer' : 'Upgrader'; + $f = '../../modules/core/module.inc'; + $v = `perl -naF\\' -e 'do { print \$F[1]; exit } if /setGalleryVersion/' $f`; + $v =~ s/-.*$//; + } + $_ .= "$m $v\\n\"\n"; +} else { + s/^("Language-Team:.*?<)LL\@li.org(.*)$/${1}gallery-translations\@lists.sourceforge.net$2/; + s/^("Content-Type:.*?=)CHARSET(.*)$/${1}UTF-8$2/; +} + diff --git a/Source/gallery2/lib/tools/po/header.txt b/Source/gallery2/lib/tools/po/header.txt new file mode 100644 index 0000000..31acb8a --- /dev/null +++ b/Source/gallery2/lib/tools/po/header.txt @@ -0,0 +1,18 @@ +# $Id: header.txt 15513 2006-12-20 00:24:57Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. diff --git a/Source/gallery2/lib/tools/po/premerge-messages.pl b/Source/gallery2/lib/tools/po/premerge-messages.pl new file mode 100644 index 0000000..8e7bd59 --- /dev/null +++ b/Source/gallery2/lib/tools/po/premerge-messages.pl @@ -0,0 +1,58 @@ +#!/usr/bin/perl +# +# Merge the creation date and charset from a def.po file with a ref.pot file +# so that msgmerge does not complain. +# +# This is a brutish hack. +# +use strict; + +my $start = '^"Project-Id-Version'; +my $end = '^\s*$'; +if ($ARGV[0] == '-2') { + shift; # Keep portion of xx.po header in newly created xx_YY.po + $start = '^"POT-Creation-Date'; + $end = '^"MIME-Version'; +} +my $def_po = shift; +my $ref_pot = shift; + +my @header; +my $saving = 0; +open(FD, "<$def_po") or exit; +while () { + chomp; + if (/$start/) { + $saving = 1; + } + + if (/$end/) { + $saving = 0; + } + + if ($saving) { + push(@header, "$_\n"); + } +} +close(FD); + +my @lines; +my $replacing = 0; +open(FD, "<$ref_pot") || die; +while () { + if (/$start/) { + push(@lines, @header); + $replacing = 1; + } + + if (/$end/) { + $replacing = 0; + } + + unless ($replacing) { + push(@lines, $_); + } +} +close(FD); + +print @lines; diff --git a/Source/gallery2/lib/tools/po/shtool b/Source/gallery2/lib/tools/po/shtool new file mode 100644 index 0000000..eae7765 --- /dev/null +++ b/Source/gallery2/lib/tools/po/shtool @@ -0,0 +1,716 @@ +#!/bin/sh +## +## GNU shtool -- The GNU Portable Shell Tool +## Copyright (c) 1994-2000 Ralf S. Engelschall +## +## See http://www.gnu.org/software/shtool/ for more information. +## See ftp://ftp.gnu.org/gnu/shtool/ for latest version. +## +## Version 1.4.9 (16-Apr-2000) +## Ingredients: 3/17 available modules +## + +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 2 of the License, or +## (at your option) any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +## General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, +## USA, or contact Ralf S. Engelschall . +## +## Notice: Given that you include this file verbatim into your own +## source tree, you are justified in saying that it remains separate +## from your package, and that this way you are simply just using GNU +## shtool. So, in this situation, there is no requirement that your +## package itself is licensed under the GNU General Public License in +## order to take advantage of GNU shtool. +## + +## +## Usage: shtool [] [ [] []] +## +## Available commands: +## echo Print string with optional construct expansion +## install Install a program, script or datafile +## mkdir Make one or more directories +## +## Not available commands (because module was not built-in): +## mdate Pretty-print modification time of a file or dir +## table Pretty-print a field-separated list as a table +## prop Display progress with a running propeller +## move Move files with simultaneous substitution +## mkln Make link with calculation of relative paths +## mkshadow Make a shadow tree through symbolic links +## fixperm Fix file permissions inside a source tree +## tarball Roll distribution tarballs +## guessos Simple operating system guesser +## arx Extended archive command +## slo Separate linker options by library class +## scpp Sharing C Pre-Processor +## version Generate and maintain a version information file +## path Deal with program paths +## + +if [ $# -eq 0 ]; then + echo "$0:Error: invalid command line" 1>&2 + echo "$0:Hint: run \`$0 -h' for usage" 1>&2 + exit 1 +fi +if [ ".$1" = ".-h" -o ".$1" = ".--help" ]; then + echo "This is GNU shtool, version 1.4.9 (16-Apr-2000)" + echo "Copyright (c) 1994-2000 Ralf S. Engelschall " + echo "Report bugs to " + echo '' + echo "Usage: shtool [] [ [] []]" + echo '' + echo 'Available global :' + echo ' -v, --version display shtool version information' + echo ' -h, --help display shtool usage help page (this one)' + echo ' -d, --debug display shell trace information' + echo '' + echo 'Available [] []:' + echo ' echo [-n] [-e] [ ...]' + echo ' install [-v] [-t] [-c] [-C] [-s] [-m] [-o] [-g]' + echo ' [-e] ' + echo ' mkdir [-t] [-f] [-p] [-m] [ ...]' + echo '' + echo 'Not available (because module was not built-in):' + echo ' mdate [-n] [-z] [-s] [-d] [-f] [-o] ' + echo ' table [-F] [-w] [-c] [-s] ...' + echo ' prop [-p]' + echo ' move [-v] [-t] [-e] [-p] ' + echo ' mkln [-t] [-f] [-s] [ ...] ' + echo ' mkshadow [-v] [-t] [-a] ' + echo ' fixperm [-v] [-t] [ ...]' + echo ' tarball [-t] [-v] [-o ] [-c ] [-d ] [-u' + echo ' ] [-g ] [-e ] [ ...]' + echo ' guessos ' + echo ' arx [-t] [-C] [ ...]' + echo ' slo [-p] -- -L -l [-L -l ...]' + echo ' scpp [-v] [-p] [-f] [-o] [-t] [-M]' + echo ' [-D] [-C] [ ...]' + echo ' version [-l] [-n] [-p] [-s] [-i]' + echo ' [-d] ' + echo ' path [-s] [-r] [-d] [-b] [-m] [-p] [ ...]' + echo '' + exit 0 +fi +if [ ".$1" = ".-v" -o ".$1" = ."--version" ]; then + echo "GNU shtool 1.4.9 (16-Apr-2000)" + exit 0 +fi +if [ ".$1" = ".-d" -o ".$1" = ."--debug" ]; then + shift + set -x +fi +name=`echo "$0" | sed -e 's;.*/\([^/]*\)$;\1;' -e 's;-sh$;;' -e 's;\.sh$;;'` +case "$name" in + echo|install|mkdir ) + # implicit tool command selection + tool="$name" + ;; + * ) + # explicit tool command selection + tool="$1" + shift + ;; +esac +arg_spec="" +opt_spec="" +gen_tmpfile=no + +## +## DISPATCH INTO SCRIPT PROLOG +## + +case $tool in + echo ) + str_tool="echo" + str_usage="[-n] [-e] [ ...]" + arg_spec="0+" + opt_spec="n.e." + opt_n=no + opt_e=no + ;; + install ) + str_tool="install" + str_usage="[-v] [-t] [-c] [-C] [-s] [-m] [-o] [-g] [-e] " + arg_spec="2=" + opt_spec="v.t.c.C.s.m:o:g:e:" + opt_v=no + opt_t=no + opt_c=no + opt_C=no + opt_s=no + opt_m="" + opt_o="" + opt_g="" + opt_e="" + ;; + mkdir ) + str_tool="mkdir" + str_usage="[-t] [-f] [-p] [-m] [ ...]" + arg_spec="1+" + opt_spec="t.f.p.m:" + opt_t=no + opt_f=no + opt_p=no + opt_m="" + ;; + -* ) + echo "$0:Error: unknown option \`$tool'" 2>&1 + echo "$0:Hint: run \`$0 -h' for usage" 2>&1 + exit 1 + ;; + * ) + echo "$0:Error: unknown command \`$tool'" 2>&1 + echo "$0:Hint: run \`$0 -h' for usage" 2>&1 + exit 1 + ;; +esac + +## +## COMMON UTILITY CODE +## + +# determine name of tool +if [ ".$tool" != . ]; then + # used inside shtool script + toolcmd="$0 $tool" + toolcmdhelp="shtool $tool" + msgprefix="shtool:$tool" +else + # used as standalone script + toolcmd="$0" + toolcmdhelp="sh $0" + msgprefix="$str_tool" +fi + +# parse argument specification string +eval `echo $arg_spec |\ + sed -e 's/^\([0-9]*\)\([+=]\)/arg_NUMS=\1; arg_MODE=\2/'` + +# parse option specification string +eval `echo h.$opt_spec |\ + sed -e 's/\([a-zA-Z0-9]\)\([.:+]\)/opt_MODE_\1=\2;/g'` + +# interate over argument line +opt_PREV='' +while [ $# -gt 0 ]; do + # special option stops processing + if [ ".$1" = ".--" ]; then + shift + break + fi + + # determine option and argument + opt_ARG_OK=no + if [ ".$opt_PREV" != . ]; then + # merge previous seen option with argument + opt_OPT="$opt_PREV" + opt_ARG="$1" + opt_ARG_OK=yes + opt_PREV='' + else + # split argument into option and argument + case "$1" in + -[a-zA-Z0-9]*) + eval `echo "x$1" |\ + sed -e 's/^x-\([a-zA-Z0-9]\)/opt_OPT="\1";/' \ + -e 's/";\(.*\)$/"; opt_ARG="\1"/'` + ;; + -[a-zA-Z0-9]) + opt_OPT=`echo "x$1" | cut -c3-` + opt_ARG='' + ;; + *) + break + ;; + esac + fi + + # eat up option + shift + + # determine whether option needs an argument + eval "opt_MODE=\$opt_MODE_${opt_OPT}" + if [ ".$opt_ARG" = . -a ".$opt_ARG_OK" != .yes ]; then + if [ ".$opt_MODE" = ".:" -o ".$opt_MODE" = ".+" ]; then + opt_PREV="$opt_OPT" + continue + fi + fi + + # process option + case $opt_MODE in + '.' ) + # boolean option + eval "opt_${opt_OPT}=yes" + ;; + ':' ) + # option with argument (multiple occurances override) + eval "opt_${opt_OPT}=\"\$opt_ARG\"" + ;; + '+' ) + # option with argument (multiple occurances append) + eval "opt_${opt_OPT}=\"\$opt_${opt_OPT} \$opt_ARG\"" + ;; + * ) + echo "$msgprefix:Error: unknown option: \`-$opt_OPT'" 1>&2 + echo "$msgprefix:Hint: run \`$toolcmdhelp -h' or \`man shtool' for details" 1>&2 + exit 1 + ;; + esac +done +if [ ".$opt_PREV" != . ]; then + echo "$msgprefix:Error: missing argument to option \`-$opt_PREV'" 1>&2 + echo "$msgprefix:Hint: run \`$toolcmdhelp -h' or \`man shtool' for details" 1>&2 + exit 1 +fi + +# process help option +if [ ".$opt_h" = .yes ]; then + echo "Usage: $toolcmdhelp $str_usage" + exit 0 +fi + +# complain about incorrect number of arguments +case $arg_MODE in + '=' ) + if [ $# -ne $arg_NUMS ]; then + echo "$msgprefix:Error: invalid number of arguments (exactly $arg_NUMS expected)" 1>&2 + echo "$msgprefix:Hint: run \`$toolcmd -h' or \`man shtool' for details" 1>&2 + exit 1 + fi + ;; + '+' ) + if [ $# -lt $arg_NUMS ]; then + echo "$msgprefix:Error: invalid number of arguments (at least $arg_NUMS expected)" 1>&2 + echo "$msgprefix:Hint: run \`$toolcmd -h' or \`man shtool' for details" 1>&2 + exit 1 + fi + ;; +esac + +# establish a temporary file on request +if [ ".$gen_tmpfile" = .yes ]; then + if [ ".$TMPDIR" != . ]; then + tmpdir="$TMPDIR" + elif [ ".$TEMPDIR" != . ]; then + tmpdir="$TEMPDIR" + else + tmpdir="/tmp" + fi + tmpfile="$tmpdir/.shtool.$$" + rm -f $tmpfile >/dev/null 2>&1 + touch $tmpfile +fi + +## +## DISPATCH INTO SCRIPT BODY +## + +case $tool in + +echo ) + ## + ## echo -- Print string with optional construct expansion + ## Copyright (c) 1998-2000 Ralf S. Engelschall + ## Originally written for WML as buildinfo + ## + + text="$*" + + # check for broken escape sequence expansion + seo='' + bytes=`echo '\1' | wc -c | awk '{ printf("%s", $1); }'` + if [ ".$bytes" != .3 ]; then + bytes=`echo -E '\1' | wc -c | awk '{ printf("%s", $1); }'` + if [ ".$bytes" = .3 ]; then + seo='-E' + fi + fi + + # check for existing -n option (to suppress newline) + minusn='' + bytes=`echo -n 123 2>/dev/null | wc -c | awk '{ printf("%s", $1); }'` + if [ ".$bytes" = .3 ]; then + minusn='-n' + fi + + # determine terminal bold sequence + term_bold='' + term_norm='' + if [ ".$opt_e" = .yes -a ".`echo $text | egrep '%[Bb]'`" != . ]; then + case $TERM in + # for the most important terminal types we directly know the sequences + xterm|xterm*|vt220|vt220*) + term_bold=`awk 'BEGIN { printf("%c%c%c%c", 27, 91, 49, 109); }' /dev/null` + term_norm=`awk 'BEGIN { printf("%c%c%c", 27, 91, 109); }' /dev/null` + ;; + vt100|vt100*) + term_bold=`awk 'BEGIN { printf("%c%c%c%c%c%c", 27, 91, 49, 109, 0, 0); }' /dev/null` + term_norm=`awk 'BEGIN { printf("%c%c%c%c%c", 27, 91, 109, 0, 0); }' /dev/null` + ;; + # for all others, we try to use a possibly existing `tput' or `tcout' utility + * ) + paths=`echo $PATH | sed -e 's/:/ /g'` + for tool in tput tcout; do + for dir in $paths; do + if [ -r "$dir/$tool" ]; then + for seq in bold md smso; do # 'smso' is last + bold="`$dir/$tool $seq 2>/dev/null`" + if [ ".$bold" != . ]; then + term_bold="$bold" + break + fi + done + if [ ".$term_bold" != . ]; then + for seq in sgr0 me rmso reset; do # 'reset' is last + norm="`$dir/$tool $seq 2>/dev/null`" + if [ ".$norm" != . ]; then + term_norm="$norm" + break + fi + done + fi + break + fi + done + if [ ".$term_bold" != . -a ".$term_norm" != . ]; then + break; + fi + done + ;; + esac + if [ ".$term_bold" = . -o ".$term_norm" = . ]; then + echo "$msgprefix:Warning: unable to determine terminal sequence for bold mode" 1>&2 + fi + fi + + # determine user name + username='' + if [ ".$opt_e" = .yes -a ".`echo $text | egrep '%[uU]'`" != . ]; then + username="$LOGNAME" + if [ ".$username" = . ]; then + username="$USER" + if [ ".$username" = . ]; then + username="`(whoami) 2>/dev/null |\ + awk '{ printf("%s", $1); }'`" + if [ ".$username" = . ]; then + username="`(who am i) 2>/dev/null |\ + awk '{ printf("%s", $1); }'`" + if [ ".$username" = . ]; then + username='unknown' + fi + fi + fi + fi + fi + + # determine user id + userid='' + if [ ".$opt_e" = .yes -a ".`echo $text | egrep '%U'`" != . ]; then + userid="`(id -u) 2>/dev/null`" + if [ ".$userid" = . ]; then + str="`(id) 2>/dev/null`" + if [ ".`echo $str | grep '^uid[ ]*=[ ]*[0-9]*('`" != . ]; then + userid=`echo $str | sed -e 's/^uid[ ]*=[ ]*//' -e 's/(.*//'` + fi + if [ ".$userid" = . ]; then + userid=`egrep "^${username}:" /etc/passwd 2>/dev/null | \ + sed -e 's/[^:]*:[^:]*://' -e 's/:.*$//'` + if [ ".$userid" = . ]; then + userid=`(ypcat passwd) 2>/dev/null | + egrep "^${username}:" | \ + sed -e 's/[^:]*:[^:]*://' -e 's/:.*$//'` + if [ ".$userid" = . ]; then + userid='?' + fi + fi + fi + fi + fi + + # determine host name + hostname='' + if [ ".$opt_e" = .yes -a ".`echo $text | egrep '%h'`" != . ]; then + hostname="`(uname -n) 2>/dev/null |\ + awk '{ printf("%s", $1); }'`" + if [ ".$hostname" = . ]; then + hostname="`(hostname) 2>/dev/null |\ + awk '{ printf("%s", $1); }'`" + if [ ".$hostname" = . ]; then + hostname='unknown' + fi + fi + case $hostname in + *.* ) + domainname=".`echo $hostname | cut -d. -f2-`" + hostname="`echo $hostname | cut -d. -f1`" + ;; + esac + fi + + # determine domain name + domainname='' + if [ ".$opt_e" = .yes -a ".`echo $text | egrep '%d'`" != . ]; then + if [ ".$domainname" = . ]; then + if [ -f /etc/resolv.conf ]; then + domainname="`egrep '^[ ]*domain' /etc/resolv.conf | head -1 |\ + sed -e 's/.*domain//' \ + -e 's/^[ ]*//' -e 's/^ *//' -e 's/^ *//' \ + -e 's/^\.//' -e 's/^/./' |\ + awk '{ printf("%s", $1); }'`" + if [ ".$domainname" = . ]; then + domainname="`egrep '^[ ]*search' /etc/resolv.conf | head -1 |\ + sed -e 's/.*search//' \ + -e 's/^[ ]*//' -e 's/^ *//' -e 's/^ *//' \ + -e 's/ .*//' -e 's/ .*//' \ + -e 's/^\.//' -e 's/^/./' |\ + awk '{ printf("%s", $1); }'`" + fi + fi + fi + fi + + # determine current time + time_day='' + time_month='' + time_year='' + time_monthname='' + if [ ".$opt_e" = .yes -a ".`echo $text | egrep '%[DMYm]'`" != . ]; then + time_day=`date '+%d'` + time_month=`date '+%m'` + time_year=`date '+%Y' 2>/dev/null` + if [ ".$time_year" = . ]; then + time_year=`date '+%y'` + case $time_year in + [5-9][0-9]) time_year="19$time_year" ;; + [0-4][0-9]) time_year="20$time_year" ;; + esac + fi + case $time_month in + 1|01) time_monthname='Jan' ;; + 2|02) time_monthname='Feb' ;; + 3|03) time_monthname='Mar' ;; + 4|04) time_monthname='Apr' ;; + 5|05) time_monthname='May' ;; + 6|06) time_monthname='Jun' ;; + 7|07) time_monthname='Jul' ;; + 8|08) time_monthname='Aug' ;; + 9|09) time_monthname='Sep' ;; + 10) time_monthname='Oct' ;; + 11) time_monthname='Nov' ;; + 12) time_monthname='Dec' ;; + esac + fi + + # expand special ``%x'' constructs + if [ ".$opt_e" = .yes ]; then + text=`echo $seo "$text" |\ + sed -e "s/%B/${term_bold}/g" \ + -e "s/%b/${term_norm}/g" \ + -e "s/%u/${username}/g" \ + -e "s/%U/${userid}/g" \ + -e "s/%h/${hostname}/g" \ + -e "s/%d/${domainname}/g" \ + -e "s/%D/${time_day}/g" \ + -e "s/%M/${time_month}/g" \ + -e "s/%Y/${time_year}/g" \ + -e "s/%m/${time_monthname}/g" 2>/dev/null` + fi + + # create output + if [ .$opt_n = .no ]; then + echo $seo "$text" + else + # the harder part: echo -n is best, because + # awk may complain about some \xx sequences. + if [ ".$minusn" != . ]; then + echo $seo $minusn "$text" + else + echo dummy | awk '{ printf("%s", TEXT); }' TEXT="$text" + fi + fi + ;; + +install ) + ## + ## install -- Install a program, script or datafile + ## Copyright (c) 1997-2000 Ralf S. Engelschall + ## Originally written for shtool + ## + + src="$1" + dst="$2" + + # If destination is a directory, append the input filename + if [ -d $dst ]; then + dst=`echo "$dst" | sed -e 's:/$::'` + dstfile=`echo "$src" | sed -e 's;.*/\([^/]*\)$;\1;'` + dst="$dst/$dstfile" + fi + + # Add a possible extension to src and dst + if [ ".$opt_e" != . ]; then + src="$src$opt_e" + dst="$dst$opt_e" + fi + + # Check for correct arguments + if [ ".$src" = ".$dst" ]; then + echo "$msgprefix:Error: source and destination are the same" 1>&2 + exit 1 + fi + + # Make a temp file name in the destination directory + dstdir=`echo $dst | sed -e 's;[^/]*$;;' -e 's;\(.\)/$;\1;' -e 's;^$;.;'` + dsttmp="$dstdir/#INST@$$#" + + # Verbosity + if [ ".$opt_v" = .yes ]; then + echo "$src -> $dst" 1>&2 + fi + + # Copy or move the file name to the temp name + # (because we might be not allowed to change the source) + if [ ".$opt_C" = .yes ]; then + opt_c=yes + fi + if [ ".$opt_c" = .yes ]; then + if [ ".$opt_t" = .yes ]; then + echo "cp $src $dsttmp" 1>&2 + fi + cp $src $dsttmp || exit $? + else + if [ ".$opt_t" = .yes ]; then + echo "mv $src $dsttmp" 1>&2 + fi + mv $src $dsttmp || exit $? + fi + + # Adjust the target file + # (we do chmod last to preserve setuid bits) + if [ ".$opt_s" = .yes ]; then + if [ ".$opt_t" = .yes ]; then + echo "strip $dsttmp" 1>&2 + fi + strip $dsttmp || exit $? + fi + if [ ".$opt_o" != . ]; then + if [ ".$opt_t" = .yes ]; then + echo "chown $opt_o $dsttmp" 1>&2 + fi + chown $opt_o $dsttmp || exit $? + fi + if [ ".$opt_g" != . ]; then + if [ ".$opt_t" = .yes ]; then + echo "chgrp $opt_g $dsttmp" 1>&2 + fi + chgrp $opt_g $dsttmp || exit $? + fi + if [ ".$opt_m" != . ]; then + if [ ".$opt_t" = .yes ]; then + echo "chmod $opt_m $dsttmp" 1>&2 + fi + chmod $opt_m $dsttmp || exit $? + fi + + # Determine whether to do a quick install + # (has to be done _after_ the strip was already done) + quick=no + if [ ".$opt_C" = .yes ]; then + if [ -r $dst ]; then + if cmp -s $src $dst; then + quick=yes + fi + fi + fi + + # Finally install the file to the real destination + if [ $quick = yes ]; then + if [ ".$opt_t" = .yes ]; then + echo "rm -f $dsttmp" 1>&2 + fi + rm -f $dsttmp + else + if [ ".$opt_t" = .yes ]; then + echo "rm -f $dst && mv $dsttmp $dst" 1>&2 + fi + rm -f $dst && mv $dsttmp $dst + fi + ;; + +mkdir ) + ## + ## mkdir -- Make one or more directories + ## Copyright (c) 1996-2000 Ralf S. Engelschall + ## Originally written for public domain by Noah Friedman + ## Cleaned up and enhanced for shtool + ## + + errstatus=0 + for p in ${1+"$@"}; do + # if the directory already exists... + if [ -d "$p" ]; then + if [ ".$opt_f" = .no ] && [ ".$opt_p" = .no ]; then + echo "$msgprefix:Error: directory already exists: $p" 1>&2 + errstatus=1 + break + else + continue + fi + fi + # if the directory has to be created... + if [ ".$opt_p" = .no ]; then + if [ ".$opt_t" = .yes ]; then + echo "mkdir $p" 1>&2 + fi + mkdir $p || errstatus=$? + else + # the smart situation + set fnord `echo ":$p" |\ + sed -e 's/^:\//%/' \ + -e 's/^://' \ + -e 's/\// /g' \ + -e 's/^%/\//'` + shift + pathcomp='' + for d in ${1+"$@"}; do + pathcomp="$pathcomp$d" + case "$pathcomp" in + -* ) pathcomp="./$pathcomp" ;; + esac + if [ ! -d "$pathcomp" ]; then + if [ ".$opt_t" = .yes ]; then + echo "mkdir $pathcomp" 1>&2 + fi + mkdir $pathcomp || errstatus=$? + if [ ".$opt_m" != . ]; then + if [ ".$opt_t" = .yes ]; then + echo "chmod $opt_m $pathcomp" 1>&2 + fi + chmod $opt_m $pathcomp || errstatus=$? + fi + fi + pathcomp="$pathcomp/" + done + fi + done + exit $errstatus + ;; + +esac + +exit 0 + +##EOF## diff --git a/Source/gallery2/lib/tools/po/trim-po.php b/Source/gallery2/lib/tools/po/trim-po.php new file mode 100644 index 0000000..52a7620 --- /dev/null +++ b/Source/gallery2/lib/tools/po/trim-po.php @@ -0,0 +1,96 @@ + $data) { + checkHint($id, $data['msgstr'], $path); + if (substr($id, 5) != substr($data['msgstr'], 6)) { + print $data['before'] . $id . $data['msgstr'] . "\n"; + } + } + exit; +} + +list ($po, $header) = readPo($path); +list ($langpo) = readPo($langpath); + +print $header; +foreach ($po as $id => $data) { + checkHint($id, $data['msgstr'], $path); + if (!isset($langpo[$id]) || $langpo[$id]['msgstr'] != $data['msgstr']) { + print $data['before'] . $id . $data['msgstr'] . "\n"; + } +} + +function checkHint($msgid, $msgstr, $path) { + if (strpos($msgid, ' + + date + + + + + date + + + diff --git a/Source/gallery2/modules/comment/classes/GalleryStorage/xml-src/A_GalleryComment_1.1.xml b/Source/gallery2/modules/comment/classes/GalleryStorage/xml-src/A_GalleryComment_1.1.xml new file mode 100644 index 0000000..b15f72d --- /dev/null +++ b/Source/gallery2/modules/comment/classes/GalleryStorage/xml-src/A_GalleryComment_1.1.xml @@ -0,0 +1,22 @@ + + + + + Comment + + 1 + 1 + + + 1 + 2 + + + + author + STRING + MEDIUM + + + diff --git a/Source/gallery2/modules/comment/comment.css b/Source/gallery2/modules/comment/comment.css new file mode 100644 index 0000000..0b30d88 --- /dev/null +++ b/Source/gallery2/modules/comment/comment.css @@ -0,0 +1,12 @@ + +.commentNavigator { + display: block; + margin: 1em; +} +.commentNavigator div { + display: inline; +} +.commentNavigator a { + padding: 0 0.5em; +} + diff --git a/Source/gallery2/modules/comment/locale/af/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/af/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..dcefb06 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/af/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ar/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ar/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..f244665 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ar/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/bg/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/bg/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..7a151aa Binary files /dev/null and b/Source/gallery2/modules/comment/locale/bg/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ca/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ca/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..e5a1343 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ca/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/cs/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/cs/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..4aa386f Binary files /dev/null and b/Source/gallery2/modules/comment/locale/cs/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/da/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/da/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..6b7120b Binary files /dev/null and b/Source/gallery2/modules/comment/locale/da/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/de/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/de/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..4b9b394 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/de/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/el/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/el/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..e7c9653 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/el/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/en_GB/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/en_GB/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..610f9dc Binary files /dev/null and b/Source/gallery2/modules/comment/locale/en_GB/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/es/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/es/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..cf1d477 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/es/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/es_AR/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/es_AR/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..22e7426 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/es_AR/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/es_MX/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/es_MX/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..c1f972b Binary files /dev/null and b/Source/gallery2/modules/comment/locale/es_MX/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/et/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/et/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..633a684 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/et/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/eu/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/eu/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..2293278 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/eu/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/fa/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/fa/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..06d02c5 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/fa/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/fi/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/fi/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..173dd72 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/fi/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/fr/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/fr/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..0d46866 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/fr/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ga/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ga/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..ea861c5 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ga/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/he/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/he/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..e078280 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/he/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/hu/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/hu/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..9161277 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/hu/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/is/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/is/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..9cac0ba Binary files /dev/null and b/Source/gallery2/modules/comment/locale/is/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/it/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/it/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..9e999ed Binary files /dev/null and b/Source/gallery2/modules/comment/locale/it/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ja/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ja/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..1c83f9c Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ja/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ko/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ko/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..d88d472 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ko/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/lt/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/lt/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..8d49ec6 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/lt/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/lv/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/lv/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..00a25c5 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/lv/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/nl/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/nl/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..ea4112d Binary files /dev/null and b/Source/gallery2/modules/comment/locale/nl/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/no/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/no/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..ecc58cf Binary files /dev/null and b/Source/gallery2/modules/comment/locale/no/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/pl/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/pl/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..44b99f8 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/pl/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/pt/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/pt/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..c0bf145 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/pt/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/pt_BR/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/pt_BR/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..46c6ef9 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/pt_BR/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ro/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ro/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..124e6d1 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ro/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/ru/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/ru/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..fd4e622 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/ru/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/sk/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/sk/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..7cf83f6 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/sk/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/sr/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/sr/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..6b6f721 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/sr/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/sv/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/sv/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..e998c6c Binary files /dev/null and b/Source/gallery2/modules/comment/locale/sv/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/tr/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/tr/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..35c5df7 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/tr/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/uk/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/uk/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..1699baa Binary files /dev/null and b/Source/gallery2/modules/comment/locale/uk/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/vi/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/vi/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..23bc667 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/vi/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/zh_CN/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/zh_CN/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..f64acc6 Binary files /dev/null and b/Source/gallery2/modules/comment/locale/zh_CN/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/locale/zh_TW/LC_MESSAGES/modules_comment.mo b/Source/gallery2/modules/comment/locale/zh_TW/LC_MESSAGES/modules_comment.mo new file mode 100644 index 0000000..d65ba0f Binary files /dev/null and b/Source/gallery2/modules/comment/locale/zh_TW/LC_MESSAGES/modules_comment.mo differ diff --git a/Source/gallery2/modules/comment/module.inc b/Source/gallery2/modules/comment/module.inc new file mode 100644 index 0000000..18a82fe --- /dev/null +++ b/Source/gallery2/modules/comment/module.inc @@ -0,0 +1,326 @@ + + * @version $Revision: 16474 $ + */ +class CommentModule extends GalleryModule { + + function CommentModule() { + global $gallery; + + $this->setId('comment'); + $this->setName($gallery->i18n('Comments')); + $this->setDescription($gallery->i18n('User commenting system')); + $this->setVersion('1.1.3.1'); /* Update upgrade() function below too */ + $this->setGroup('data', $gallery->i18n('Extra Data')); + $this->setCallbacks('registerEventListeners|getItemLinks|getItemSummaries|' . + 'getSiteAdminViews|getItemAdminViews'); + $this->setRequiredCoreApi(array(7, 5)); + $this->setRequiredModuleApi(array(3, 0)); + } + + /** + * @see GalleryModule::upgrade + */ + function upgrade($currentVersion) { + global $gallery; + + if (!isset($currentVersion)) { + $currentVersion = '0'; + } else if (version_compare($currentVersion, '0.9.6', '<=') + || substr($currentVersion, 0, 4) == '0.81') { + /* Instead of enumerating all previous versions... */ + $currentVersion = '0.9.6'; + } + + switch ($currentVersion) { + case '0': + /* Initial install. Register our permissions */ + $permissions[] = array('add', $gallery->i18n('[comment] Add comments'), 0, array()); + $permissions[] = array('edit', $gallery->i18n('[comment] Edit comments'), 0, array()); + $permissions[] = array('delete', $gallery->i18n('[comment] Delete comments'), + 0, array()); + $permissions[] = array('view', $gallery->i18n('[comment] View comments'), 0, array()); + $permissions[] = array('all', $gallery->i18n('[comment] All access'), + GALLERY_PERMISSION_COMPOSITE, + array('comment.add', 'comment.edit', 'comment.delete', 'comment.view')); + foreach ($permissions as $p) { + $ret = GalleryCoreApi::registerPermission($this->getId(), + 'comment.' . $p[0], + $p[1], $p[2], $p[3]); + if ($ret) { + return $ret; + } + } + + foreach (array('comments.show' => 10, 'comments.latest' => 1, + 'validation.level' => 'HIGH') + as $key => $value) { + $ret = $this->setParameter($key, $value); + if ($ret) { + return $ret; + } + } + break; + + case '0.9.6': + /* + * Remove comment.search permission included in older module versions. + * As this is a composite permission we can simply remove its entry in the + * PermissionSet table and not touch any item permissions. + */ + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryPermissionSetMap', + array('module' => 'comment', 'permission' => 'comment.search')); + if ($ret) { + return $ret; + } + + case '0.9.7': + case '1.0.0': + $storage =& $gallery->getStorage(); + $ret = $storage->configureStore($this->getId(), array('GalleryComment:1.0')); + if ($ret) { + return $ret; + } + + case '1.0.1': + case '1.0.2': + case '1.0.3': + case '1.0.4': + case '1.0.5': + foreach (array('comments.show' => 10, 'comments.captcha' => 0, 'comments.latest' => 1) + as $key => $value) { + $ret = $this->setParameter($key, $value); + if ($ret) { + return $ret; + } + } + + case '1.0.6': + case '1.0.7': + list ($ret, $level) = $this->getParameter('comments.captcha'); + if ($ret) { + return $ret; + } + $ret = $this->setParameter('validation.level', $level ? 'HIGH' : 'OFF'); + if ($ret) { + return $ret; + } + $ret = $this->removeParameter('comments.captcha'); + if ($ret) { + return $ret; + } + + case '1.0.8': + case '1.0.9': + case '1.1.0': + case '1.1.1': + $storage =& $gallery->getStorage(); + $ret = $storage->configureStore($this->getId(), array('GalleryComment:1.1')); + if ($ret) { + return $ret; + } + + case '1.1.2': + case '1.1.3': + + case 'end of upgrade path': + /* + * Leave this bogus case at the end of the legitimate case statements so that we + * always properly terminate our upgrade path with a break. + */ + break; + + default: + return GalleryCoreApi::error(ERROR_BAD_PLUGIN, __FILE__, __LINE__, + sprintf('Unknown module version %s', $currentVersion)); + } + + return null; + } + + /** + * @see GalleryModule::registerEventListeners + */ + function registerEventListeners() { + GalleryCoreApi::requireOnce('modules/comment/classes/GalleryCommentHelper.class'); + $listener = new GalleryCommentHelper(); + GalleryCoreApi::registerEventListener('GalleryEntity::delete', $listener, true); + } + + /** + * @see GalleryModule::performFactoryRegistrations + */ + function performFactoryRegistrations() { + $ret = GalleryCoreApi::registerFactoryImplementation( + 'GalleryEntity', 'GalleryComment', 'GalleryComment', + 'modules/comment/classes/GalleryComment.class', 'comment', null); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::registerFactoryImplementation( + 'GallerySearchInterface_1_0', 'GalleryCommentSearch', 'comment', + 'modules/comment/classes/GalleryCommentSearch.class', 'comment', null); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::registerFactoryImplementation( + 'CaptchaAdminOption', 'CommentCaptchaAdminOption', 'CommentCaptchaAdminOption', + 'modules/comment/classes/CommentCaptchaAdminOption.class', 'comment', null); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryModule::getModuleEntityTypes + */ + function getModuleEntityTypes() { + return array('GalleryComment'); + } + + /** + * @see GalleryModule::getItemLinks + */ + function getItemLinks($items, $wantsDetailedLinks, $permissions) { + list ($ret, $showAll) = $this->getParameter('comments.latest'); + if ($ret) { + return array($ret, null); + } + $links = array(); + foreach ($items as $item) { + $itemId = $item->getId(); + if (isset($wantsDetailedLinks[$itemId])) { + if (isset($permissions[$itemId]['comment.add'])) { + $links[$itemId][] = array( + 'text' => $this->translate('Add Comment'), + 'params' => array('view' => 'comment.AddComment', + 'itemId' => $itemId, 'return' => 1)); + } + + if ($showAll && isset($permissions[$itemId]['comment.view'])) { + $links[$itemId][] = array( + 'text' => $this->translate('View Latest Comments'), + 'params' => array('view' => 'comment.ShowAllComments', + 'itemId' => $itemId, 'return' => 1)); + } + } + } + + return array(null, $links); + } + + /** + * @see GalleryModule::getItemSummaries + */ + function getItemSummaries($items, $permissions, &$template) { + $ids = array(); + foreach ($items as $item) { + $ids[] = $item->getId(); + } + + GalleryCoreApi::requireOnce('modules/comment/classes/GalleryCommentHelper.class'); + list ($ret, $commentCounts) = GalleryCommentHelper::fetchCommentCounts($ids); + if ($ret) { + return array($ret, null); + } + + $summaries = array(); + foreach ($items as $item) { + $message = array(); + + if (isset($permissions[$item->getId()]['comment.view'])) { + if (!empty($commentCounts[$item->getId()])) { + $summaries[$item->getId()] = + $this->translate(array('text' => 'Comments: %d', + 'arg1' => $commentCounts[$item->getId()])); + } + } + } + + return array(null, $summaries); + } + + /** + * @see GalleryModule::getItemAdminViews + */ + function getItemAdminViews($item) { + $views = array(); + list ($ret, $permissions) = GalleryCoreApi::getPermissions($item->getId()); + if ($ret) { + return array($ret, null); + } + + if (isset($permissions['comment.edit']) || + isset($permissions['comment.delete']) || + isset($permissions['comment.view'])) { + $views[] = array('name' => $this->translate('View Comments'), + 'view' => 'comment.ShowComments'); + + + + } + + return array(null, $views); + } + + /** + * @see GalleryModule::getSiteAdminViews + */ + function getSiteAdminViews() { + return array(null, + array(array('name' => $this->translate('Comments'), + 'view' => 'comment.CommentSiteAdmin'))); + } + + /** + * @see GalleryModule::getRewriteRules + */ + function getRewriteRules() { + $rules = array(); + + $rule = array(); + $rule['match'] = array('view' => 'comment.AddComment'); + $rule['pattern'] = 'c/add/%itemId%.html'; + $rule['comment'] = $this->translate('Add Comment'); + $rules[] = $rule; + + $rule = array(); + $rule['match'] = array('view' => 'comment.ShowAllComments'); + $rule['pattern'] = 'c/view/%itemId%.html'; + $rule['comment'] = $this->translate('View Comments'); + $rules[] = $rule; + + return $rules; + } +} +?> diff --git a/Source/gallery2/modules/comment/po/GNUmakefile b/Source/gallery2/modules/comment/po/GNUmakefile new file mode 100644 index 0000000..39d27c6 --- /dev/null +++ b/Source/gallery2/modules/comment/po/GNUmakefile @@ -0,0 +1,5 @@ +GALLERYDIR ?= ../../.. +TOOLDIR ?= $(GALLERYDIR)/lib/tools + +include $(TOOLDIR)/po/GNUmakefile.inc + diff --git a/Source/gallery2/modules/comment/po/af.po b/Source/gallery2/modules/comment/po/af.po new file mode 100644 index 0000000..7feb249 --- /dev/null +++ b/Source/gallery2/modules/comment/po/af.po @@ -0,0 +1,296 @@ +# $Id: af.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-03-16 09:59+0200\n" +"Last-Translator: Renier \n" +"Language-Team: Afrikaans \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Afrikaans\n" +"X-Poedit-Country: SOUTH AFRICA\n" + +msgid "Add Comment" +msgstr "Lewer Kommentaar" + +msgid "add comment" +msgstr "lewer kommentaar" + +msgid "show comments" +msgstr "wys kommentaar" + +msgid "Comments" +msgstr "Kommentaar" + +msgid "User commenting system" +msgstr "Gebruiker kommentaarstelsel" + +msgid "Extra Data" +msgstr "Ekstra Data" + +msgid "[comment] Add comments" +msgstr "[kommentaar] Lewer kommentaar" + +msgid "[comment] Edit comments" +msgstr "[kommentaar] Wysig kommentaar" + +msgid "[comment] Delete comments" +msgstr "[kommentaar] Verwyder kommentaar" + +msgid "[comment] View comments" +msgstr "[kommentaar] Wys kommentaar" + +msgid "[comment] All access" +msgstr "[kommentaar] Volle toegang" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Wys Kommentaar" + +msgid "View Comments" +msgstr "Wys Kommentaar" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentare: %d" + +#, fuzzy +msgid "Guest Comments" +msgstr "Wys Kommentaar" + +msgid "Comment Module" +msgstr "Kommentaar Module" + +msgid "Search comments" +msgstr "Soek Kommentaar" + +msgid "Subject" +msgstr "Onderwerp" + +msgid "Comment" +msgstr "Kommentaar" + +msgid "Commenter" +msgstr "Bydraer" + +#, fuzzy +msgid "guest" +msgstr "Herstel" + +msgid "Comment Preview" +msgstr "Kommentaar Voorskou" + +msgid "Name" +msgstr "Naam" + +msgid "Posted by" +msgstr "Geplaas deur" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(verpligtend)" + +msgid "You must enter a comment!" +msgstr "U moet kommentaar insleutel!" + +msgid "Preview" +msgstr "Voorskou" + +msgid "Save" +msgstr "Stoor" + +msgid "Cancel" +msgstr "Kanselleer" + +msgid "edit" +msgstr "wysig" + +msgid "delete" +msgstr "verwyder" + +msgid "show full" +msgstr "Volledig vertoon" + +msgid "show summary" +msgstr "Vertoon samevatting" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Geplaas deur %s op %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Geplaas deur %s op %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Geplaas deur %s op %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Geplaas deur %s op %s" + +msgid "Comment change confirmation" +msgstr "Bevestiging van kommentaar wysiging" + +msgid "Comment added successfully" +msgstr "Kommentaar suksesvol bygesit" + +msgid "Comment deleted successfully" +msgstr "Kommentaar suksesvol verwyder" + +msgid "Comment modified successfully" +msgstr "Kommentaar suksesvol gewysig" + +#, c-format +msgid "Back to %s" +msgstr "Terug na %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Kommentaar" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Kommentaar suksesvol bygesit" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "Herstel" + +msgid "Delete this comment?" +msgstr "Verwyder hierdie kommentaar?" + +msgid "Are you sure?" +msgstr "Is u seker?" + +msgid "Delete this comment? There is no undo!" +msgstr "Verwyder hierdie kommentaar? U kan dit nie ongedaan maak!" + +msgid "Delete" +msgstr "Verwyder" + +msgid "Edit comment" +msgstr "Wysig kommentaar" + +msgid "You must enter a username." +msgstr "U moet 'n gebruikersnaam insleutel." + +msgid "The username you entered is invalid." +msgstr "Die gebruikersnaam wat u ingesleutel het is ongeldig." + +msgid "Host" +msgstr "Gasheer" + +msgid "You must enter a comment" +msgstr "U moet kommentaar insleutel" + +#, fuzzy +msgid "Latest Comments" +msgstr "Wys Kommentaar" + +msgid "Comment changed successfully" +msgstr "Kommentaar suksesvol verander" + +msgid "There are no comments for this item" +msgstr "Daar is geen kommentaar op die item" + +msgid "Recent comments" +msgstr "Onlangse kommentaar" + +#, c-format +msgid "(view all %d comments)" +msgstr "(wys alle kommentaar [totaal %d])" + +msgid "Show comments" +msgstr "Wys kommentaar" + +msgid "Number of comments" +msgstr "Aantal reaksies" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Datum" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Die datum wat u ingesleutel het is ongeldig." + +#~ msgid "You must enter a date" +#~ msgstr "U moet 'n datum insleutel" + +#~ msgid "You must enter a subject!" +#~ msgstr "U moet 'n onderwerp verskaf!" + +#~ msgid "You must enter a subject" +#~ msgstr "U moet 'n onderwerp insleutel" + +#~ msgid "[comment] Search comments" +#~ msgstr "[reactie] Reacties zoeken" diff --git a/Source/gallery2/modules/comment/po/ar.po b/Source/gallery2/modules/comment/po/ar.po new file mode 100644 index 0000000..7c8c187 --- /dev/null +++ b/Source/gallery2/modules/comment/po/ar.po @@ -0,0 +1,290 @@ +# $Id: ar.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2005-08-14 14:03+0300\n" +"Last-Translator: Mohammad Saleh \n" +"Language-Team: Icelandic \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "إضافة تعليق" + +msgid "add comment" +msgstr "إضافة تعليق" + +msgid "show comments" +msgstr "عرض التعليقات" + +msgid "Comments" +msgstr "تعليقات" + +msgid "User commenting system" +msgstr "نظام كتابة التعليقات للمستخدم" + +msgid "Extra Data" +msgstr "معلومات إضافية" + +msgid "[comment] Add comments" +msgstr "[تعليقات] إضافة تعليقات" + +msgid "[comment] Edit comments" +msgstr "[تعليقات] تعديل التعليقات" + +msgid "[comment] Delete comments" +msgstr "[تعليقات] حذف التعليقات" + +msgid "[comment] View comments" +msgstr "[تعليقات] عرض التعليقات" + +msgid "[comment] All access" +msgstr "[تعليقات] جميع الصلاحيات" + +#, fuzzy +msgid "View Latest Comments" +msgstr "عرض التعليقات" + +msgid "View Comments" +msgstr "عرض التعليقات" + +#, c-format +msgid "Comments: %d" +msgstr "التعليقات : %d" + +#, fuzzy +msgid "Guest Comments" +msgstr "عرض التعليقات" + +msgid "Comment Module" +msgstr "موديول التعليقات" + +msgid "Search comments" +msgstr "البحث في التعليقات" + +msgid "Subject" +msgstr "الموضوع" + +msgid "Comment" +msgstr "التعليق" + +msgid "Commenter" +msgstr "كاتب التعليق" + +#, fuzzy +msgid "guest" +msgstr "إعادة التعيين" + +msgid "Comment Preview" +msgstr "إستعراض التعليق" + +msgid "Name" +msgstr "الاسم" + +msgid "Posted by" +msgstr "الكاتب هو" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(مطلوب)" + +msgid "You must enter a comment!" +msgstr "يجب أن تكتب التعليق !" + +msgid "Preview" +msgstr "إستعراض" + +msgid "Save" +msgstr "حفظ" + +msgid "Cancel" +msgstr "إلغاء" + +msgid "edit" +msgstr "تعديل" + +msgid "delete" +msgstr "حذف" + +msgid "show full" +msgstr "" + +msgid "show summary" +msgstr "" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "الكاتب هو %s على %s ( %s )" + +#, c-format +msgid "Posted by %s on %s" +msgstr "الكاتب هو %s على %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "الكاتب هو %s على %s ( %s )" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "الكاتب هو %s على %s" + +msgid "Comment change confirmation" +msgstr "التأكد من تغيير التعليق" + +msgid "Comment added successfully" +msgstr "تمت إضافة التعليق بنجاح" + +msgid "Comment deleted successfully" +msgstr "تم حذف التعليق بنجاح" + +msgid "Comment modified successfully" +msgstr "تم تعديل التعليق بنجاح" + +#, c-format +msgid "Back to %s" +msgstr "العودة إلى %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "تعليقات" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "تمت إضافة التعليق بنجاح" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "إعادة التعيين" + +msgid "Delete this comment?" +msgstr "حذف هذا التعليق؟" + +msgid "Are you sure?" +msgstr "هل أنت متأكد?" + +msgid "Delete this comment? There is no undo!" +msgstr "هل أنت متأكد من حذف هذا التعليق؟ لا يوجد تراجع!" + +msgid "Delete" +msgstr "حذف" + +msgid "Edit comment" +msgstr "تعديل التعليق" + +msgid "You must enter a username." +msgstr "يجب كتابة إسم المستخدم." + +msgid "The username you entered is invalid." +msgstr "إسم المستخدم الذي أدخلته غير صحيح." + +msgid "Host" +msgstr "المضيف" + +msgid "You must enter a comment" +msgstr "يجب أن تكتب التعليق" + +#, fuzzy +msgid "Latest Comments" +msgstr "عرض التعليقات" + +msgid "Comment changed successfully" +msgstr "تم تغيير التعليق بنجاح" + +msgid "There are no comments for this item" +msgstr "لا يوجد أي تعليق لهذه المادة" + +msgid "Recent comments" +msgstr "أحدث التعليقات" + +#, c-format +msgid "(view all %d comments)" +msgstr "(عرض كل ال %d تعليق)" + +msgid "Show comments" +msgstr "عرض التعليقات" + +msgid "Number of comments" +msgstr "" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "التاريخ" + +#~ msgid "The date you entered is invalid." +#~ msgstr "التاريخ الذي أدخلته غير صحيح." + +#~ msgid "You must enter a date" +#~ msgstr "يجب أن تكتب التاريخ" + +#~ msgid "You must enter a subject!" +#~ msgstr "يجب أن تكتب الموضوع!" + +#~ msgid "You must enter a subject" +#~ msgstr "يجب أن تكتب الموضوع" diff --git a/Source/gallery2/modules/comment/po/bg.po b/Source/gallery2/modules/comment/po/bg.po new file mode 100644 index 0000000..3334958 --- /dev/null +++ b/Source/gallery2/modules/comment/po/bg.po @@ -0,0 +1,300 @@ +# $Id: bg.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# +# # Bisser Dobrev , 2003-2005 +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2005-08-01 08:04-0500\n" +"Last-Translator: Bisser Dobrev \n" +"Language-Team: Bisser Dobrev \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Bulgarian\n" +"X-Poedit-Country: BULGARIA\n" + +msgid "Add Comment" +msgstr "Добавете Коментар" + +msgid "add comment" +msgstr "добавете коментар" + +msgid "show comments" +msgstr "покажете коментарите" + +msgid "Comments" +msgstr "Коментари" + +msgid "User commenting system" +msgstr "Система за потребителски коментари" + +msgid "Extra Data" +msgstr "Допълнителни Данни" + +msgid "[comment] Add comments" +msgstr "[коментар] Добаване на коментари" + +msgid "[comment] Edit comments" +msgstr "[коментар] Редактиране на коментарите" + +msgid "[comment] Delete comments" +msgstr "[коментар] Изтриване коментарите" + +msgid "[comment] View comments" +msgstr "[коментар] Преглед на коментарите" + +msgid "[comment] All access" +msgstr "[коментар] Достъп до всичко" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Прегледайте Коментарите" + +msgid "View Comments" +msgstr "Прегледайте Коментарите" + +#, c-format +msgid "Comments: %d" +msgstr "%d коментара" + +#, fuzzy +msgid "Guest Comments" +msgstr "Прегледайте Коментарите" + +msgid "Comment Module" +msgstr "Модул за Коментари" + +msgid "Search comments" +msgstr "Търсете в коментарите" + +msgid "Subject" +msgstr "Тема" + +msgid "Comment" +msgstr "Коментар" + +msgid "Commenter" +msgstr "Коментирал" + +#, fuzzy +msgid "guest" +msgstr "Анулирайте" + +msgid "Comment Preview" +msgstr "Преглед на Коментара" + +msgid "Name" +msgstr "Име" + +msgid "Posted by" +msgstr "Изпратено от:" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(необходимо)" + +msgid "You must enter a comment!" +msgstr "Трябва да въведете коментар!" + +msgid "Preview" +msgstr "Преглед" + +msgid "Save" +msgstr "Записване" + +msgid "Cancel" +msgstr "Отказ" + +msgid "edit" +msgstr "редактиране" + +msgid "delete" +msgstr "изтриване" + +msgid "show full" +msgstr "пълно показване" + +msgid "show summary" +msgstr "съкратено показване" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Изпратено от %s на %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Изпратено от %s на %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Изпратено от %s на %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Изпратено от %s на %s" + +msgid "Comment change confirmation" +msgstr "Потвърждение за промяна на коментара" + +msgid "Comment added successfully" +msgstr "Коментара е успешно добавен" + +msgid "Comment deleted successfully" +msgstr "Коментара е успешно изтрит" + +msgid "Comment modified successfully" +msgstr "Коментара е успешно редактиран" + +#, c-format +msgid "Back to %s" +msgstr "Назад към %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Коментари" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Коментара е успешно добавен" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "Анулирайте" + +msgid "Delete this comment?" +msgstr "Искате ли да изтриете този коментар?" + +msgid "Are you sure?" +msgstr "Сигурни ли сте?" + +msgid "Delete this comment? There is no undo!" +msgstr "Искате ли да изтриете този коментар? Няма връщане назад!" + +msgid "Delete" +msgstr "Изтриване" + +msgid "Edit comment" +msgstr "Редактирайте коментара" + +msgid "You must enter a username." +msgstr "Трябва да въведете потребител." + +msgid "The username you entered is invalid." +msgstr "Въведеното потребител е невалидно." + +msgid "Host" +msgstr "Адрес" + +msgid "You must enter a comment" +msgstr "Трябва да въведете коментар" + +#, fuzzy +msgid "Latest Comments" +msgstr "Прегледайте Коментарите" + +msgid "Comment changed successfully" +msgstr "Коментара е успешно редактиран" + +msgid "There are no comments for this item" +msgstr "Няма коментари за този елемент" + +msgid "Recent comments" +msgstr "Последни коментари" + +#, c-format +msgid "(view all %d comments)" +msgstr "(вижте всички %d коментара)" + +msgid "Show comments" +msgstr "Покажете коментарите" + +msgid "Number of comments" +msgstr "Брой коментари" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Дата" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Въведената дата е навалидна." + +#~ msgid "You must enter a date" +#~ msgstr "Трябва да въведете дата" + +#~ msgid "You must enter a subject!" +#~ msgstr "Трябва да въведете тема!" + +#~ msgid "You must enter a subject" +#~ msgstr "Трябва да въведете тема" + +#~ msgid "[comment] Search comments" +#~ msgstr "[коментар] Търсене в коментарите" diff --git a/Source/gallery2/modules/comment/po/ca.po b/Source/gallery2/modules/comment/po/ca.po new file mode 100644 index 0000000..e2495de --- /dev/null +++ b/Source/gallery2/modules/comment/po/ca.po @@ -0,0 +1,288 @@ +# $Id: ca.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Oscar Garcia Amor +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-03-16 11:10-0700\n" +"PO-Revision-Date: 2006-12-14 20:57+0100\n" +"Last-Translator: Roger Cervantes \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "Afegir Comentari" + +msgid "add comment" +msgstr "Afegir Comentari" + +msgid "show comments" +msgstr "mostrar Comentaris" + +msgid "Comments" +msgstr "Comentaris" + +msgid "User commenting system" +msgstr "Sistema de comentaris dels usuaris" + +msgid "Extra Data" +msgstr "Informació Extra" + +msgid "[comment] Add comments" +msgstr "[comment] Agregar comentaris" + +msgid "[comment] Edit comments" +msgstr "[comment] Editar comentaris" + +msgid "[comment] Delete comments" +msgstr "[comment] Borrar comentaris" + +msgid "[comment] View comments" +msgstr "[comment] Veure comentaris" + +msgid "[comment] All access" +msgstr "[comment] Accès Total" + +msgid "View Latest Comments" +msgstr "Veure Comentaris" + +msgid "View Comments" +msgstr "Veure Comentaris" + +#, c-format +msgid "Comments: %d" +msgstr "Comentaris: %d" + +msgid "Guest Comments" +msgstr "Veure Comentaris" + +msgid "Comment Module" +msgstr "Mòdul de Comentaris" + +msgid "Search comments" +msgstr "Buscar en els comentaris" + +msgid "Subject" +msgstr "Assumpte" + +msgid "Comment" +msgstr "Comentari" + +msgid "Commenter" +msgstr "Autor" + +#, fuzzy +msgid "guest" +msgstr "Reinicialitza" + +msgid "Comment Preview" +msgstr "Previsualitzar Comentari" + +msgid "Name" +msgstr "Nom" + +msgid "Posted by" +msgstr "Enviat per" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(requerit)" + +msgid "You must enter a comment!" +msgstr "¡Has d'escriure un comentari!" + +msgid "Preview" +msgstr "Previsualitzar" + +msgid "Save" +msgstr "Guardar" + +msgid "Cancel" +msgstr "Cancel·lar" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "eliminar" + +msgid "show full" +msgstr "mostrar complert" + +msgid "show summary" +msgstr "mostrar resum" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Enviat per %s el %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Enviat per %s el %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Enviat per %s el %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Enviat per %s el %s" + +msgid "Comment change confirmation" +msgstr "Confirmació de canvi de comentari" + +msgid "Comment added successfully" +msgstr "Comentari agregat amb èxit" + +msgid "Comment deleted successfully" +msgstr "Comentari borrat amb èxit" + +msgid "Comment modified successfully" +msgstr "Comentari modificat amb èxit" + +#, c-format +msgid "Back to %s" +msgstr "Tornar a %s" + +msgid "Comments Settings" +msgstr "Comentaris" + +msgid "Settings saved successfully" +msgstr "Comentaris agregat amb èxit" + +msgid "Show link for Latest Comments:" +msgstr "Mostra un enllaç per als Últims Comentaris:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Número de comentaris en la pàgina d' Últims Comentaris:" + +msgid "Invalid value" +msgstr "El valor no és vàlid" + +msgid "Reset" +msgstr "Reinicialitza" + +msgid "Delete this comment?" +msgstr "¿Borrar aquest comentari?" + +msgid "Are you sure?" +msgstr "¿Estàs segur?" + +msgid "Delete this comment? There is no undo!" +msgstr "¿Borrar aquest comentari? ¡No es pot desfer!" + +msgid "Delete" +msgstr "Borrar" + +msgid "Edit comment" +msgstr "Editar comentari" + +msgid "You must enter a username." +msgstr "Has d'introduïr un nom d'usuari." + +msgid "The username you entered is invalid." +msgstr "El nom d'usuari introduït no és vàlid." + +msgid "Host" +msgstr "Màquina" + +msgid "You must enter a comment" +msgstr "Has d'escriure un comentari" + +msgid "Latest Comments" +msgstr "Veure Comentaris" + +msgid "Comment changed successfully" +msgstr "Comentari canviat amb èxit" + +msgid "There are no comments for this item" +msgstr "No hi ha comentaris per aquest element." + +msgid "Recent comments" +msgstr "Comentaris recents" + +#, c-format +msgid "(view all %d comments)" +msgstr "(veure tots els %d comentaris)" + +msgid "Show comments" +msgstr "Mostar comentaris" + +msgid "Number of comments" +msgstr "Número de comentaris" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "You must enter a subject!" +#~ msgstr "¡Has d'escriure un assumpte!" + +#~ msgid "Date" +#~ msgstr "Data" + +#~ msgid "The date you entered is invalid." +#~ msgstr "La Data introduïda no és vàlida." + +#~ msgid "You must enter a date" +#~ msgstr "Has d'introducïr una data" + +#~ msgid "You must enter a subject" +#~ msgstr "Has d'escriure un assumpte" diff --git a/Source/gallery2/modules/comment/po/cs.po b/Source/gallery2/modules/comment/po/cs.po new file mode 100644 index 0000000..18e3192 --- /dev/null +++ b/Source/gallery2/modules/comment/po/cs.po @@ -0,0 +1,292 @@ +# $Id: cs.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-12-06 13:59+0100\n" +"Last-Translator: Martin Štěpán \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +msgid "Add Comment" +msgstr "Přidat komentář" + +msgid "add comment" +msgstr "přidat komentář" + +msgid "show comments" +msgstr "zobrazit komentáře" + +msgid "Comments" +msgstr "Komentáře" + +msgid "User commenting system" +msgstr "Systém pro uživatelské komentáře" + +msgid "Extra Data" +msgstr "Další data" + +msgid "[comment] Add comments" +msgstr "[komentář] Přidání komentáře" + +msgid "[comment] Edit comments" +msgstr "[komentář] Úprava komentáře" + +msgid "[comment] Delete comments" +msgstr "[komentář] Smazání komentáře" + +msgid "[comment] View comments" +msgstr "[komentář] Zobrazení komentářů" + +msgid "[comment] All access" +msgstr "[komentář] Všechna oprávnění" + +msgid "View Latest Comments" +msgstr "Zobrazit nejnovější komentáře" + +msgid "View Comments" +msgstr "Zobrazit komentáře" + +#, c-format +msgid "Comments: %d" +msgstr "Komentáře: %d" + +msgid "Guest Comments" +msgstr "Komentáře návštěvníků" + +msgid "Comment Module" +msgstr "Modul komentáře" + +msgid "Search comments" +msgstr "Hledat v komentářích" + +msgid "Subject" +msgstr "Předmět" + +msgid "Comment" +msgstr "Komentář" + +msgid "Commenter" +msgstr "Komentoval" + +msgid "guest" +msgstr "Návštěvník" + +msgid "Comment Preview" +msgstr "Náhled komentáře" + +msgid "Name" +msgstr "Jméno" + +msgid "Posted by" +msgstr "Přidal" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(vyžadováno)" + +msgid "You must enter a comment!" +msgstr "Musíte zadat komentář!" + +msgid "Preview" +msgstr "Náhled" + +msgid "Save" +msgstr "Uložit" + +msgid "Cancel" +msgstr "Zrušit" + +msgid "edit" +msgstr "upravit" + +msgid "delete" +msgstr "smazat" + +msgid "show full" +msgstr "zobrazit vše" + +msgid "show summary" +msgstr "zobrazit souhrn" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Přidal %s v %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Přidal %s v %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Přidal %s na %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Přidal %s na %s" + +msgid "Comment change confirmation" +msgstr "Informace o změně komentáře" + +msgid "Comment added successfully" +msgstr "Komentář úspěšně přidán" + +msgid "Comment deleted successfully" +msgstr "Komentář úspěšně smazán" + +msgid "Comment modified successfully" +msgstr "Komentář úspěšně změněn" + +#, c-format +msgid "Back to %s" +msgstr "Zpět na %s" + +msgid "Comments Settings" +msgstr "Nastavení komentářů" + +msgid "Settings saved successfully" +msgstr "Nastavení úspěšně uloženo" + +msgid "Show link for Latest Comments:" +msgstr "Zobrazit odkaz na nejnovější komentáře:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Počet komentářů na stránce nejnovějších komentářů:" + +msgid "Invalid value" +msgstr "Neplatná hodnota" + +msgid "Reset" +msgstr "Výchozí hodnoty" + +msgid "Delete this comment?" +msgstr "Smazat tento komentář?" + +msgid "Are you sure?" +msgstr "Jste si jisti?" + +msgid "Delete this comment? There is no undo!" +msgstr "Smazat tento komentář? Není cesty zpět!" + +msgid "Delete" +msgstr "Smazat" + +msgid "Edit comment" +msgstr "Upravit komentář" + +msgid "You must enter a username." +msgstr "Musíte zadat uživatelské jméno." + +msgid "The username you entered is invalid." +msgstr "Uživatelské jméno, které jste zadali, je neplatné." + +msgid "Host" +msgstr "Počítač" + +msgid "You must enter a comment" +msgstr "Musíte zadat komentář" + +msgid "Latest Comments" +msgstr "Nejnovější komentáře" + +msgid "Comment changed successfully" +msgstr "Komentář úspěšně změněn" + +msgid "There are no comments for this item" +msgstr "Pro tuto položku nejsou žádné komentáře" + +msgid "Recent comments" +msgstr "Poslední komentáře" + +#, c-format +msgid "(view all %d comments)" +msgstr "(zobrazit komentáře (%d))" + +msgid "Show comments" +msgstr "Zobrazení komentářů" + +msgid "Number of comments" +msgstr "Počet komentářů" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Zobrazit textové políčko, které se rozšíří na formulář s úplnou velikostí" + +#~ msgid "Date" +#~ msgstr "Datum" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Datum, který jste zadali, je neplatný." + +#~ msgid "You must enter a date" +#~ msgstr "Musíte zadat datum" + +#~ msgid "You must enter a subject!" +#~ msgstr "Musíte zadat předmět!" + +#~ msgid "You must enter a subject" +#~ msgstr "Musíte zadat předmět" + +#~ msgid "Use Captcha for guest comments:" +#~ msgstr "Pro návštěvnické komentáře použít Captcha ověření:" + +#~ msgid "Activate Captcha module to enable this feature" +#~ msgstr "Pro zapnutí této funkce aktivujte Captcha modul" diff --git a/Source/gallery2/modules/comment/po/da.po b/Source/gallery2/modules/comment/po/da.po new file mode 100644 index 0000000..bbbc0c3 --- /dev/null +++ b/Source/gallery2/modules/comment/po/da.po @@ -0,0 +1,272 @@ +# $Id: da.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# - Bjorn Graabek , 2007. +# +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-03-14 10:10+0000\n" +"Last-Translator: Bjørn Graabek \n" +"Language-Team: Danish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add Comment" +msgstr "Tilføj Kommentar" + +msgid "add comment" +msgstr "tilføj kommentar" + +msgid "show comments" +msgstr "vis kommentarer" + +msgid "Comments" +msgstr "Kommentarer" + +msgid "User commenting system" +msgstr "Bruger kommenteringssystem" + +msgid "Extra Data" +msgstr "Ekstra Data" + +msgid "[comment] Add comments" +msgstr "[kommentar] Tilføj kommentarer" + +msgid "[comment] Edit comments" +msgstr "[kommentar] Rediger kommentarer" + +msgid "[comment] Delete comments" +msgstr "[kommentar] Slet kommentarer" + +msgid "[comment] View comments" +msgstr "[kommentar] Vis kommentarer" + +msgid "[comment] All access" +msgstr "[kommentar] Fuld adgang" + +msgid "View Latest Comments" +msgstr "Vis Nyeste Kommentarer" + +msgid "View Comments" +msgstr "Vis kommentarer" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentarer: %d" + +msgid "Guest Comments" +msgstr "Kommentarer fra gæster" + +msgid "Comment Module" +msgstr "Kommentar modul" + +msgid "Search comments" +msgstr "Søg i kommentarer" + +msgid "Subject" +msgstr "Emne" + +msgid "Comment" +msgstr "Kommenter" + +msgid "Commenter" +msgstr "Kommentator" + +msgid "guest" +msgstr "gæst" + +msgid "Comment Preview" +msgstr "Kommentar Prøve" + +msgid "Name" +msgstr "Navn" + +msgid "Posted by" +msgstr "Skrevet af" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(påkrævet)" + +msgid "You must enter a comment!" +msgstr "Du skal indtaste en kommentar!" + +msgid "Preview" +msgstr "Prøve" + +msgid "Save" +msgstr "Gem" + +msgid "Cancel" +msgstr "Annuller" + +msgid "edit" +msgstr "rediger" + +msgid "delete" +msgstr "slet" + +msgid "show full" +msgstr "vis fuld" + +msgid "show summary" +msgstr "vis sammenfatning" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Skrevet af %s d. %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Skrevet af %s d. %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Skrevet af %s (gæst) den %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Skrevet af %s (gæst) den %s" + +msgid "Comment change confirmation" +msgstr "Kommentar ændringsbekræftelse" + +msgid "Comment added successfully" +msgstr "Kommentar blev tilføjet" + +msgid "Comment deleted successfully" +msgstr "Kommentar blev slettet" + +msgid "Comment modified successfully" +msgstr "Kommentar blev ændret" + +#, c-format +msgid "Back to %s" +msgstr "Tilbage til %s" + +msgid "Comments Settings" +msgstr "Kommentar indstillinger" + +msgid "Settings saved successfully" +msgstr "Indstillingerne er blevet gemt" + +msgid "Show link for Latest Comments:" +msgstr "Vis link for de nyeste kommentarer:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Antal kommentarer på siden med de nyeste kommentarer:" + +msgid "Invalid value" +msgstr "Ulovlig værdi" + +msgid "Reset" +msgstr "Nulstil" + +msgid "Delete this comment?" +msgstr "Slet denne kommentar?" + +msgid "Are you sure?" +msgstr "Er du sikker?" + +msgid "Delete this comment? There is no undo!" +msgstr "Slet denne kommentar? Det er ikke muligt at fortryde!" + +msgid "Delete" +msgstr "Slet" + +msgid "Edit comment" +msgstr "Rediger kommentar" + +msgid "You must enter a username." +msgstr "Du skal indtaste et brugernavn." + +msgid "The username you entered is invalid." +msgstr "Det indtastede brugernavn er ugyldig." + +msgid "Host" +msgstr "Vært" + +msgid "You must enter a comment" +msgstr "Du skal indtaste en kommentar" + +msgid "Latest Comments" +msgstr "Nyeste kommentarer" + +msgid "Comment changed successfully" +msgstr "Kommentar blev ændret" + +msgid "There are no comments for this item" +msgstr "Der er ingen kommentarer til dette element" + +msgid "Recent comments" +msgstr "Seneste kommentarer" + +#, c-format +msgid "(view all %d comments)" +msgstr "(vis alle %d kommentarer)" + +msgid "Show comments" +msgstr "Vis kommentarer" + +msgid "Number of comments" +msgstr "Antal kommentarer" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Vis en tekst boks der udvider sig til hele formularen" diff --git a/Source/gallery2/modules/comment/po/de.po b/Source/gallery2/modules/comment/po/de.po new file mode 100644 index 0000000..19bb107 --- /dev/null +++ b/Source/gallery2/modules/comment/po/de.po @@ -0,0 +1,292 @@ +# $Id: de.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Ernesto Baschny +# - Jens Tkotz +# - Frederik Kunz +# - Georg Rehfeld +# - Moritz Stoltenburg +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-11-29 00:29+0100\n" +"Last-Translator: Jens A. Tkotz\n" +"Language-Team: German \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.10.1\n" + +msgid "Add Comment" +msgstr "Kommentar hinzufügen" + +msgid "add comment" +msgstr "Kommentar hinzufügen" + +msgid "show comments" +msgstr "Kommentare anzeigen" + +msgid "Comments" +msgstr "Kommentare" + +msgid "User commenting system" +msgstr "System für Benutzer-Kommentare" + +msgid "Extra Data" +msgstr "Zusatzdaten" + +msgid "[comment] Add comments" +msgstr "[Kommentar] Kommentare hinzufügen" + +msgid "[comment] Edit comments" +msgstr "[Kommentar] Kommentare ändern" + +msgid "[comment] Delete comments" +msgstr "[Kommentar] Kommentare löschen" + +msgid "[comment] View comments" +msgstr "[Kommentar] Kommentare ansehen" + +msgid "[comment] All access" +msgstr "[Kommentar] Vollzugriff" + +msgid "View Latest Comments" +msgstr "Neuste Kommentare ansehen" + +msgid "View Comments" +msgstr "Kommentare betrachten" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentare: %d" + +msgid "Guest Comments" +msgstr "Gastkommentare" + +msgid "Comment Module" +msgstr "Kommentar-Modul" + +msgid "Search comments" +msgstr "Suche in Kommentaren" + +msgid "Subject" +msgstr "Betreff" + +msgid "Comment" +msgstr "Kommentar" + +msgid "Commenter" +msgstr "Verfasser" + +msgid "guest" +msgstr "Gast" + +msgid "Comment Preview" +msgstr "Kommentar-Vorschau" + +msgid "Name" +msgstr "Name" + +msgid "Posted by" +msgstr "Geschrieben von" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(erforderlich)" + +msgid "You must enter a comment!" +msgstr "Sie müssen einen Kommentar eingeben!" + +msgid "Preview" +msgstr "Vorschau" + +msgid "Save" +msgstr "Speichern" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "edit" +msgstr "ändern" + +msgid "delete" +msgstr "löschen" + +msgid "show full" +msgstr "Vollansicht zeigen" + +msgid "show summary" +msgstr "Zusammenfassung zeigen" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Geschrieben von %s am %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Geschrieben von %s am %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Geschrieben von %s (Gast) am %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Geschrieben von %s (Gast) am %s" + +msgid "Comment change confirmation" +msgstr "Kommentar-Änderungsbestätigung" + +msgid "Comment added successfully" +msgstr "Kommentar erfolgreich hinzugefügt" + +msgid "Comment deleted successfully" +msgstr "Kommentar erfolgreich gelöscht" + +msgid "Comment modified successfully" +msgstr "Kommentar erfolgreich geändert" + +#, c-format +msgid "Back to %s" +msgstr "Zurück zu: %s" + +msgid "Comments Settings" +msgstr "Einstellungen für Kommentare" + +msgid "Settings saved successfully" +msgstr "Die Einstellungen wurden erfolgreich gespeichert" + +msgid "Show link for Latest Comments:" +msgstr "Link für neuste Kommentare anzeigen:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Anzahl der angezeigten neusten Kommentare:" + +msgid "Invalid value" +msgstr "Dieser Wert ist ungültig" + +msgid "Reset" +msgstr "Zurücksetzen" + +msgid "Delete this comment?" +msgstr "Diesen Kommentar löschen?" + +msgid "Are you sure?" +msgstr "Sind Sie sicher?" + +msgid "Delete this comment? There is no undo!" +msgstr "Diesen Kommentar löschen? Dieser Vorgang kann nicht rückgängig gemacht werden!" + +msgid "Delete" +msgstr "Löschen" + +msgid "Edit comment" +msgstr "Kommentar bearbeiten" + +msgid "You must enter a username." +msgstr "Sie müssen einen Benutzername eingeben." + +msgid "The username you entered is invalid." +msgstr "Der eingegebene Benutzername ist ungültig." + +msgid "Host" +msgstr "Host" + +msgid "You must enter a comment" +msgstr "Sie müssen einen Kommentar eingeben" + +msgid "Latest Comments" +msgstr "Neuste Kommentare" + +msgid "Comment changed successfully" +msgstr "Kommentar erfolgreich geändert" + +msgid "There are no comments for this item" +msgstr "Es gibt keine Kommentare für dieses Element" + +msgid "Recent comments" +msgstr "Letzte Kommentare" + +#, c-format +msgid "(view all %d comments)" +msgstr "(alle %d Kommentare sehen)" + +msgid "Show comments" +msgstr "Kommentare anzeigen" + +msgid "Number of comments" +msgstr "Kommentaranzahl" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50 " + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Eine Textbox zeigen, die expandiert werden kann." + +#~ msgid "Date" +#~ msgstr "Datum" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Das eingegebene Datum ist ungültig." + +#~ msgid "You must enter a date" +#~ msgstr "Sie müssen ein Datum eingeben" + +#~ msgid "You must enter a subject!" +#~ msgstr "Sie müssen einen Betreff eingeben!" + +#~ msgid "You must enter a subject" +#~ msgstr "Sie müssen einen Betreff eingeben" diff --git a/Source/gallery2/modules/comment/po/el.po b/Source/gallery2/modules/comment/po/el.po new file mode 100644 index 0000000..424f381 --- /dev/null +++ b/Source/gallery2/modules/comment/po/el.po @@ -0,0 +1,315 @@ +# $Id: el.po 16475 2007-05-31 17:44:01Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-05-31 10:31-0700\n" +"PO-Revision-Date: 2003-03-06 16:30+0200\n" +"Last-Translator: Nikos Batsis \n" +"Language-Team: Greek \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#, fuzzy +msgid "Add Comment" +msgstr "Προσθέστε σχόλιο" + +msgid "add comment" +msgstr "Προσθέστε Σχόλιο" + +#, fuzzy +msgid "show comments" +msgstr "Σχόλια" + +msgid "Comments" +msgstr "Σχόλια" + +#, fuzzy +msgid "User commenting system" +msgstr "Σχόλια" + +msgid "Extra Data" +msgstr "Επιπρόσθετα Στοιχεία" + +msgid "[comment] Add comments" +msgstr "[comment] Προσθέστε σχόλια" + +msgid "[comment] Edit comments" +msgstr "[comment] Edit comments" + +msgid "[comment] Delete comments" +msgstr "[comment] Διαγραφή σχολίων" + +#, fuzzy +msgid "[comment] View comments" +msgstr "[comment] Edit comments" + +msgid "[comment] All access" +msgstr "[comment] All access" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Σχόλια" + +#, fuzzy +msgid "View Comments" +msgstr "Σχόλια" + +#, fuzzy, c-format +msgid "Comments: %d" +msgstr "Σχόλιο: " + +#, fuzzy +msgid "Guest Comments" +msgstr "Σχόλια" + +#, fuzzy +msgid "Comment Module" +msgstr "Σχόλιο: " + +#, fuzzy +msgid "Search comments" +msgstr "[comment] Προσθέστε σχόλια" + +msgid "Subject" +msgstr "Θέμα" + +#, fuzzy +msgid "Comment" +msgstr "Σχόλιο:" + +#, fuzzy +msgid "Commenter" +msgstr "Σχολιαστής:" + +msgid "guest" +msgstr "επισκέπτης" + +#, fuzzy +msgid "Comment Preview" +msgstr "Σχόλιο: " + +#, fuzzy +msgid "Name" +msgstr "Πλήρες Όνομα" + +msgid "Posted by" +msgstr "Καταχωρήθηκε από" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(απαιτείται)" + +#, fuzzy +msgid "You must enter a comment!" +msgstr "Πρέπει να βάλετε μια ημερομηνία" + +#, fuzzy +msgid "Preview" +msgstr "Σχόλιο: " + +msgid "Save" +msgstr "Αποθήκευση" + +msgid "Cancel" +msgstr "Ακυρο" + +msgid "edit" +msgstr "Επεξεργασία" + +msgid "delete" +msgstr "Διαγραφή" + +msgid "show full" +msgstr "Πλήρης προβολή" + +msgid "show summary" +msgstr "Περιληπτική προβολή" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Καταχωρήθηκε από %s στις %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Καταχωρήθηκε από %s στις %s " + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Καταχωρήθηκε από %s (επισκέπτη) στις %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Καταχωρήθηκε από %s (επισκέπτη) στις %s" + +msgid "Comment change confirmation" +msgstr "Επιβεβαίωση αλλαγής σχόλιου" + +msgid "Comment added successfully" +msgstr "Το σχόλιο προστέθηκε με επιτυχία" + +#, fuzzy +msgid "Comment deleted successfully" +msgstr "[comment] Διαγραφή σχολίων" + +msgid "Comment modified successfully" +msgstr "Το σχόλιο επεξεργάστηκε με επιτυχία" + +#, c-format +msgid "Back to %s" +msgstr "Πίσω στο %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Σχόλια" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "[comment] Διαγραφή σχολίων" + +msgid "Show link for Latest Comments:" +msgstr "Προβολή σύνδεσης για Τελευταία Σχόλια:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Αριθμός σχολιων στην σελίδα Τελευταίων Σχολίων:" + +msgid "Invalid value" +msgstr "Άκυρο περιεχόμενο" + +msgid "Reset" +msgstr "Επαναφορά" + +msgid "Delete this comment?" +msgstr "Διαγραφή αυτού του σχολίου;" + +msgid "Are you sure?" +msgstr "Είστε σίγουροι;" + +#, fuzzy +msgid "Delete this comment? There is no undo!" +msgstr "Διαγραφή αυτού του σχολίου;" + +msgid "Delete" +msgstr "Διαγραφή" + +msgid "Edit comment" +msgstr "Επεξεργασία σχολίου" + +msgid "You must enter a username." +msgstr "Πρέπει να βάλετε όνομα χρήστη." + +msgid "The username you entered is invalid." +msgstr "Το όνομα χρήστη που βάλατε είναι άκυρο." + +#, fuzzy +msgid "Host" +msgstr "Host: " + +#, fuzzy +msgid "You must enter a comment" +msgstr "Πρέπει να βάλετε μια ημερομηνία" + +#, fuzzy +msgid "Latest Comments" +msgstr "Σχόλια" + +msgid "Comment changed successfully" +msgstr "Το σχόλιο τροποποιήθηκε με επιτυχία" + +msgid "There are no comments for this item" +msgstr "Δεν υπάρχουν σχόλια για τη φωτογραφία" + +msgid "Recent comments" +msgstr "Πρόσφατα Σχόλια" + +#, c-format +msgid "(view all %d comments)" +msgstr "Δείτε και τα %d σχόλια" + +#, fuzzy +msgid "Show comments" +msgstr "Σχόλια" + +#, fuzzy +msgid "Number of comments" +msgstr "[comment] Προσθέστε σχόλια" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Εμφάνιση κουτιού κειμένου το οποίο επεκτείνεται σε πλήρη φόρμα" + +#, fuzzy +#~ msgid "Date" +#~ msgstr "Ημερομηνία:" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Η υπερομηνία που βάλατε είναι άκυρη." + +#~ msgid "You must enter a date" +#~ msgstr "Πρέπει να βάλετε μια ημερομηνία" + +#, fuzzy +#~ msgid "You must enter a subject!" +#~ msgstr "Πρέπει να βάλετε μια ημερομηνία" + +#, fuzzy +#~ msgid "You must enter a subject" +#~ msgstr "Πρέπει να βάλετε μια ημερομηνία" + +#, fuzzy +#~ msgid "[comment] Search comments" +#~ msgstr "[comment] Προσθέστε σχόλια" diff --git a/Source/gallery2/modules/comment/po/en_GB.po b/Source/gallery2/modules/comment/po/en_GB.po new file mode 100644 index 0000000..4867ed4 --- /dev/null +++ b/Source/gallery2/modules/comment/po/en_GB.po @@ -0,0 +1,269 @@ +# $Id: en_GB.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-03-06 18:51+0100\n" +"Last-Translator: Stephen Ryan \n" +"Language-Team: British \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add Comment" +msgstr "Add Comment" + +msgid "add comment" +msgstr "add comment" + +msgid "show comments" +msgstr "show comments" + +msgid "Comments" +msgstr "Comments" + +msgid "User commenting system" +msgstr "User commenting system" + +msgid "Extra Data" +msgstr "Extra Data" + +msgid "[comment] Add comments" +msgstr "[comment] Add comments" + +msgid "[comment] Edit comments" +msgstr "[comment] Edit comments" + +msgid "[comment] Delete comments" +msgstr "[comment] Delete comments" + +msgid "[comment] View comments" +msgstr "[comment] View comments" + +msgid "[comment] All access" +msgstr "[comment] All access" + +msgid "View Latest Comments" +msgstr "View Latest Comments" + +msgid "View Comments" +msgstr "View Comments" + +#, c-format +msgid "Comments: %d" +msgstr "Comments: %d" + +msgid "Guest Comments" +msgstr "Guest Comments" + +msgid "Comment Module" +msgstr "Comment Module" + +msgid "Search comments" +msgstr "Search comments" + +msgid "Subject" +msgstr "Subject" + +msgid "Comment" +msgstr "Comment" + +msgid "Commenter" +msgstr "Commenter" + +msgid "guest" +msgstr "guest" + +msgid "Comment Preview" +msgstr "Comment Preview" + +msgid "Name" +msgstr "Name" + +msgid "Posted by" +msgstr "Posted by" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(required)" + +msgid "You must enter a comment!" +msgstr "You must enter a comment!" + +msgid "Preview" +msgstr "Preview" + +msgid "Save" +msgstr "Save" + +msgid "Cancel" +msgstr "Cancel" + +msgid "edit" +msgstr "edit" + +msgid "delete" +msgstr "delete" + +msgid "show full" +msgstr "show full" + +msgid "show summary" +msgstr "show summary" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Posted by %s on %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Posted by %s on %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Posted by %s (guest) on %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Posted by %s (guest) on %s" + +msgid "Comment change confirmation" +msgstr "Comment change confirmation" + +msgid "Comment added successfully" +msgstr "Comment added successfully" + +msgid "Comment deleted successfully" +msgstr "Comment deleted successfully" + +msgid "Comment modified successfully" +msgstr "Comment modified successfully" + +#, c-format +msgid "Back to %s" +msgstr "Back to %s" + +msgid "Comments Settings" +msgstr "Comments Settings" + +msgid "Settings saved successfully" +msgstr "Settings saved successfully" + +msgid "Show link for Latest Comments:" +msgstr "Show link for Latest Comments:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Number of comments on Latest Comments page:" + +msgid "Invalid value" +msgstr "Invalid value" + +msgid "Reset" +msgstr "Reset" + +msgid "Delete this comment?" +msgstr "Delete this comment?" + +msgid "Are you sure?" +msgstr "Are you sure?" + +msgid "Delete this comment? There is no undo!" +msgstr "Delete this comment? There is no undo!" + +msgid "Delete" +msgstr "Delete" + +msgid "Edit comment" +msgstr "Edit comment" + +msgid "You must enter a username." +msgstr "You must enter a username." + +msgid "The username you entered is invalid." +msgstr "The username you entered is invalid." + +msgid "Host" +msgstr "Host" + +msgid "You must enter a comment" +msgstr "You must enter a comment" + +msgid "Latest Comments" +msgstr "Latest Comments" + +msgid "Comment changed successfully" +msgstr "Comment changed successfully" + +msgid "There are no comments for this item" +msgstr "There are no comments for this item" + +msgid "Recent comments" +msgstr "Recent comments" + +#, c-format +msgid "(view all %d comments)" +msgstr "(view all %d comments)" + +msgid "Show comments" +msgstr "Show comments" + +msgid "Number of comments" +msgstr "Number of comments" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Show a text box that expands into the full form" diff --git a/Source/gallery2/modules/comment/po/es.po b/Source/gallery2/modules/comment/po/es.po new file mode 100644 index 0000000..bd91ccf --- /dev/null +++ b/Source/gallery2/modules/comment/po/es.po @@ -0,0 +1,272 @@ +# $Id: es.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Oscar Garcia Amor +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-11-07 16:40+0100\n" +"Last-Translator: Oscar Garcia Amor \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "Agregar Comentario" + +msgid "add comment" +msgstr "agregar comentario" + +msgid "show comments" +msgstr "mostrar comentarios" + +msgid "Comments" +msgstr "Comentarios" + +msgid "User commenting system" +msgstr "Sistema de comentarios de los usuarios" + +msgid "Extra Data" +msgstr "Información Extra" + +msgid "[comment] Add comments" +msgstr "[comment] Agregar comentarios" + +msgid "[comment] Edit comments" +msgstr "[comment] Editar comentarios" + +msgid "[comment] Delete comments" +msgstr "[comment] Borrar comentarios" + +msgid "[comment] View comments" +msgstr "[comment] Ver comentarios" + +msgid "[comment] All access" +msgstr "[comment] Acceso Total" + +msgid "View Latest Comments" +msgstr "Ver Últimos Comentarios" + +msgid "View Comments" +msgstr "Ver Comentarios" + +#, c-format +msgid "Comments: %d" +msgstr "Cometarios: %d" + +msgid "Guest Comments" +msgstr "Comentarios Anónimos" + +msgid "Comment Module" +msgstr "Módulo de Comentarios" + +msgid "Search comments" +msgstr "Buscar en los comentarios" + +msgid "Subject" +msgstr "Asunto" + +msgid "Comment" +msgstr "Comentario" + +msgid "Commenter" +msgstr "Autor" + +msgid "guest" +msgstr "anónimo" + +msgid "Comment Preview" +msgstr "Previsualizar Comentario" + +msgid "Name" +msgstr "Nombre" + +msgid "Posted by" +msgstr "Enviado por" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(requerido)" + +msgid "You must enter a comment!" +msgstr "¡Debes escribir un comentario!" + +msgid "Preview" +msgstr "Previsualizar" + +msgid "Save" +msgstr "Guardar" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "eliminar" + +msgid "show full" +msgstr "mostrar completo" + +msgid "show summary" +msgstr "mostrar resumen" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Enviado por %s el %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Enviado por %s el %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Enviado por %s (anónimo) el %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Enviado por %s (anónimo) el %s" + +msgid "Comment change confirmation" +msgstr "Confirmación de cambio de comentario" + +msgid "Comment added successfully" +msgstr "Comentario agregado con éxito" + +msgid "Comment deleted successfully" +msgstr "Comentario borrado con éxito" + +msgid "Comment modified successfully" +msgstr "Comentario modificado con éxito" + +#, c-format +msgid "Back to %s" +msgstr "Volver a %s" + +msgid "Comments Settings" +msgstr "Configuración de los Comentarios" + +msgid "Settings saved successfully" +msgstr "Comentario agregado con éxito" + +msgid "Show link for Latest Comments:" +msgstr "Mostrar enlace a los Últimos Comentarios:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Número de comentarios en la página de Últimos Comentarios:" + +msgid "Invalid value" +msgstr "Valor no válido" + +msgid "Reset" +msgstr "Reiniciar" + +msgid "Delete this comment?" +msgstr "¿Borrar este comentario?" + +msgid "Are you sure?" +msgstr "¿Estas seguro?" + +msgid "Delete this comment? There is no undo!" +msgstr "¿Borrar este comentario? ¡No se puede deshacer!" + +msgid "Delete" +msgstr "Borrar" + +msgid "Edit comment" +msgstr "Editar comentario" + +msgid "You must enter a username." +msgstr "Debes introducir un nombre de usuario." + +msgid "The username you entered is invalid." +msgstr "El nombre de usuario introducido no es válido." + +msgid "Host" +msgstr "Máquina" + +msgid "You must enter a comment" +msgstr "Debes escribir un comentario" + +msgid "Latest Comments" +msgstr "Últimos Comentarios" + +msgid "Comment changed successfully" +msgstr "Comentario cambiado con éxito" + +msgid "There are no comments for this item" +msgstr "No hay comentarios para este elemento" + +msgid "Recent comments" +msgstr "Comentarios recientes" + +#, c-format +msgid "(view all %d comments)" +msgstr "(ver todos los %d comentarios)" + +msgid "Show comments" +msgstr "Mostar comentarios" + +msgid "Number of comments" +msgstr "Numero de comentarios" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Mostrar una caja de texto ampliable" diff --git a/Source/gallery2/modules/comment/po/es_AR.po b/Source/gallery2/modules/comment/po/es_AR.po new file mode 100644 index 0000000..f1d643f --- /dev/null +++ b/Source/gallery2/modules/comment/po/es_AR.po @@ -0,0 +1,318 @@ +# $Id: es_AR.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2003-06-05 17:20-0300\n" +"Last-Translator: Alvaro Cortizo \n" +"Language-Team: Argentine Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#, fuzzy +msgid "Add Comment" +msgstr "Agregar un comentario" + +msgid "add comment" +msgstr "agregar comentario" + +#, fuzzy +msgid "show comments" +msgstr "Comentarios" + +msgid "Comments" +msgstr "Comentarios" + +#, fuzzy +msgid "User commenting system" +msgstr "Comentarios" + +msgid "Extra Data" +msgstr "Información Extra" + +msgid "[comment] Add comments" +msgstr "[comment] Agregar comentarios" + +msgid "[comment] Edit comments" +msgstr "[comment] Editar comentarios" + +msgid "[comment] Delete comments" +msgstr "[comment] Borrar comentarios" + +#, fuzzy +msgid "[comment] View comments" +msgstr "[comment] Editar comentarios" + +msgid "[comment] All access" +msgstr "[comment] Acceso total" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Comentarios" + +#, fuzzy +msgid "View Comments" +msgstr "Comentarios" + +#, fuzzy, c-format +msgid "Comments: %d" +msgstr "Comentario: " + +#, fuzzy +msgid "Guest Comments" +msgstr "Comentarios" + +#, fuzzy +msgid "Comment Module" +msgstr "Comentario: " + +#, fuzzy +msgid "Search comments" +msgstr "[comment] Agregar comentarios" + +msgid "Subject" +msgstr "Asunto" + +#, fuzzy +msgid "Comment" +msgstr "Comentario:" + +#, fuzzy +msgid "Commenter" +msgstr "De:" + +#, fuzzy +msgid "guest" +msgstr "Reiniciar" + +#, fuzzy +msgid "Comment Preview" +msgstr "Comentario: " + +msgid "Name" +msgstr "Nombre" + +msgid "Posted by" +msgstr "Enviado por" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +#, fuzzy +msgid "(required)" +msgstr "[required]" + +#, fuzzy +msgid "You must enter a comment!" +msgstr "Tiene que ingresar una fecha" + +#, fuzzy +msgid "Preview" +msgstr "Comentario: " + +msgid "Save" +msgstr "Guardar" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "borrar" + +msgid "show full" +msgstr "mostrar completo" + +msgid "show summary" +msgstr "mostrar resumen" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Enviado por %s el %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Enviado por %s el %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Enviado por %s el %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Enviado por %s el %s" + +msgid "Comment change confirmation" +msgstr "Confirmación de cambio de comentario" + +msgid "Comment added successfully" +msgstr "Comentario agregado con éxito" + +#, fuzzy +msgid "Comment deleted successfully" +msgstr "[comment] Borrar comentarios" + +msgid "Comment modified successfully" +msgstr "Comentario modificado con éxito" + +#, c-format +msgid "Back to %s" +msgstr "Volver a %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Comentarios" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "[comment] Borrar comentarios" + +msgid "Show link for Latest Comments:" +msgstr "Mostrar enlace a los Últimos Comentarios:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Número de comentarios en la página de Últimos Comentarios:" + +msgid "Invalid value" +msgstr "Valor no válido" + +#, fuzzy +msgid "Reset" +msgstr "Resetear" + +msgid "Delete this comment?" +msgstr "Borrar este comentario?" + +msgid "Are you sure?" +msgstr "¿Estas seguro?" + +#, fuzzy +msgid "Delete this comment? There is no undo!" +msgstr "Borrar este comentario?" + +msgid "Delete" +msgstr "Borrar" + +msgid "Edit comment" +msgstr "Editar comentario" + +msgid "You must enter a username." +msgstr "Tiene que ingresar un nombre de usuario" + +msgid "The username you entered is invalid." +msgstr "El nombre de usuario que ingresó es inválido" + +#, fuzzy +msgid "Host" +msgstr "Host: " + +#, fuzzy +msgid "You must enter a comment" +msgstr "Tiene que ingresar una fecha" + +#, fuzzy +msgid "Latest Comments" +msgstr "Comentarios" + +msgid "Comment changed successfully" +msgstr "Comentario cambiado con éxito" + +msgid "There are no comments for this item" +msgstr "No hay comentarios para este ím" + +msgid "Recent comments" +msgstr "Comentarios recientes" + +#, c-format +msgid "(view all %d comments)" +msgstr "(ver los %d comentarios" + +#, fuzzy +msgid "Show comments" +msgstr "Comentarios" + +#, fuzzy +msgid "Number of comments" +msgstr "[comment] Agregar comentarios" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Mostrar una caja de texto ampliable" + +#, fuzzy +#~ msgid "Date" +#~ msgstr "Fecha:" + +#~ msgid "The date you entered is invalid." +#~ msgstr "La fecha que ingresó es inválida" + +#~ msgid "You must enter a date" +#~ msgstr "Tiene que ingresar una fecha" + +#, fuzzy +#~ msgid "You must enter a subject!" +#~ msgstr "Tiene que ingresar una fecha" + +#, fuzzy +#~ msgid "You must enter a subject" +#~ msgstr "Tiene que ingresar una fecha" + +#, fuzzy +#~ msgid "[comment] Search comments" +#~ msgstr "[comment] Agregar comentarios" diff --git a/Source/gallery2/modules/comment/po/es_MX.po b/Source/gallery2/modules/comment/po/es_MX.po new file mode 100644 index 0000000..c2ecf00 --- /dev/null +++ b/Source/gallery2/modules/comment/po/es_MX.po @@ -0,0 +1,321 @@ +# $Id: es_MX.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2005-01-01 17:00-0600\n" +"Last-Translator: Wieland E. Kublun , www.kublun.com\n" +"Language-Team: Mexican Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Mexican Spanish\n" +"X-Poedit-Country: MEXICO\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#, fuzzy +msgid "Add Comment" +msgstr "Agregar un comentario" + +msgid "add comment" +msgstr "agregar comentario" + +#, fuzzy +msgid "show comments" +msgstr "ver comentarios" + +msgid "Comments" +msgstr "Comentarios" + +#, fuzzy +msgid "User commenting system" +msgstr "Sistema de comentarios" + +msgid "Extra Data" +msgstr "Datos extra" + +msgid "[comment] Add comments" +msgstr "[comment] Agregar comentarios" + +msgid "[comment] Edit comments" +msgstr "[comment] Editar comentarios" + +msgid "[comment] Delete comments" +msgstr "[comment] Borrar comentarios" + +#, fuzzy +msgid "[comment] View comments" +msgstr "[comment] Ver comentarios" + +msgid "[comment] All access" +msgstr "[comment] Acceso total" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Ver Comentarios" + +#, fuzzy +msgid "View Comments" +msgstr "Ver Comentarios" + +#, fuzzy, c-format +msgid "Comments: %d" +msgstr "Comentarios: %d" + +#, fuzzy +msgid "Guest Comments" +msgstr "Ver Comentarios" + +#, fuzzy +msgid "Comment Module" +msgstr "Módulo de comentarios" + +#, fuzzy +msgid "Search comments" +msgstr "Buscar comentarios" + +msgid "Subject" +msgstr "Título" + +#, fuzzy +msgid "Comment" +msgstr "Comentario:" + +#, fuzzy +msgid "Commenter" +msgstr "De:" + +#, fuzzy +msgid "guest" +msgstr "Reiniciar" + +#, fuzzy +msgid "Comment Preview" +msgstr "Vista previa del comentario" + +msgid "Name" +msgstr "Nombre" + +msgid "Posted by" +msgstr "Escrito por" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +#, fuzzy +msgid "(required)" +msgstr "requerido" + +#, fuzzy +msgid "You must enter a comment!" +msgstr "Tiene que ingresar un comentario!" + +#, fuzzy +msgid "Preview" +msgstr "Vista Previa " + +msgid "Save" +msgstr "Guardar" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "borrar" + +#, fuzzy +msgid "show full" +msgstr "completo" + +msgid "show summary" +msgstr "mostrar resumen" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Escrito por %s el dia %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Escrito por %s en %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Escrito por %s el dia %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Escrito por %s en %s" + +msgid "Comment change confirmation" +msgstr "Confirmación del cambio en el comentario" + +msgid "Comment added successfully" +msgstr "Comentario agregado satisfactoriamente" + +#, fuzzy +msgid "Comment deleted successfully" +msgstr "Comentario borrado con éxito" + +msgid "Comment modified successfully" +msgstr "Comentario modificado con éxito" + +#, c-format +msgid "Back to %s" +msgstr "Regresar a %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Comentarios" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Comentario agregado satisfactoriamente" + +msgid "Show link for Latest Comments:" +msgstr "Mostrar enlace a los Últimos Comentarios:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Número de comentarios en la página de Últimos Comentarios:" + +msgid "Invalid value" +msgstr "Valor no válido" + +#, fuzzy +msgid "Reset" +msgstr "Resetear" + +msgid "Delete this comment?" +msgstr "Borrar este comentario?" + +msgid "Are you sure?" +msgstr "¿Está seguro?" + +#, fuzzy +msgid "Delete this comment? There is no undo!" +msgstr "Borrar este comentario? no hay marcha atrás" + +msgid "Delete" +msgstr "Borrar" + +msgid "Edit comment" +msgstr "Editar comentario" + +msgid "You must enter a username." +msgstr "Tiene que ingresar un nombre de usuario" + +msgid "The username you entered is invalid." +msgstr "El nombre de usuario que ingresó es inválido" + +#, fuzzy +msgid "Host" +msgstr "Host: " + +#, fuzzy +msgid "You must enter a comment" +msgstr "Tiene que ingresar un comentario!" + +#, fuzzy +msgid "Latest Comments" +msgstr "Ver Comentarios" + +msgid "Comment changed successfully" +msgstr "Comentario cambiado con éxito" + +msgid "There are no comments for this item" +msgstr "No hay comentarios para este ím" + +msgid "Recent comments" +msgstr "Comentarios recientes" + +#, c-format +msgid "(view all %d comments)" +msgstr "(ver todos los %d comentarios)" + +#, fuzzy +msgid "Show comments" +msgstr "ver comentarios" + +#, fuzzy +msgid "Number of comments" +msgstr "Buscar comentarios" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Mostrar una caja de texto ampliable" + +#, fuzzy +#~ msgid "Date" +#~ msgstr "Fecha: " + +#~ msgid "The date you entered is invalid." +#~ msgstr "La fecha que ingresó es inválida" + +#~ msgid "You must enter a date" +#~ msgstr "Tiene que ingresar una fecha!" + +#, fuzzy +#~ msgid "You must enter a subject!" +#~ msgstr "Tiene que ingresar un título!" + +#, fuzzy +#~ msgid "You must enter a subject" +#~ msgstr "Tiene que ingresar un título!" + +#, fuzzy +#~ msgid "[comment] Search comments" +#~ msgstr "[comment] Buscar comentarios" diff --git a/Source/gallery2/modules/comment/po/et.po b/Source/gallery2/modules/comment/po/et.po new file mode 100644 index 0000000..e07b64e --- /dev/null +++ b/Source/gallery2/modules/comment/po/et.po @@ -0,0 +1,279 @@ +# $Id: et.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-08-03 08:26+0200\n" +"Last-Translator: poromaan \n" +"Language-Team: Eesti \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "Lisa Kommentaar" + +msgid "add comment" +msgstr "lisa kommentaar" + +msgid "show comments" +msgstr "näita kommentaare" + +msgid "Comments" +msgstr "Kommentaarid" + +msgid "User commenting system" +msgstr "Kasutajate kommenteerimise süsteem" + +msgid "Extra Data" +msgstr "Ekstra-andmed" + +msgid "[comment] Add comments" +msgstr "[kommenteerimine] Lisa kommentaare" + +msgid "[comment] Edit comments" +msgstr "[kommenteerimine] Muuda kommentaare" + +msgid "[comment] Delete comments" +msgstr "[kommenteerimine] Kustuta kommentaare" + +msgid "[comment] View comments" +msgstr "[kommenteerimine] Vaata kommentaare" + +msgid "[comment] All access" +msgstr "[kommenteerimine] Kõik õigused" + +msgid "View Latest Comments" +msgstr "Vaata Viimaseid Kommentaare" + +msgid "View Comments" +msgstr "Vaata Kommentaare" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentaarid: %d" + +msgid "Guest Comments" +msgstr "Külaliste Kommentaarid" + +msgid "Comment Module" +msgstr "Kommenteerimise Moodul" + +msgid "Search comments" +msgstr "Otsi kommentaare" + +msgid "Subject" +msgstr "Teema" + +msgid "Comment" +msgstr "Kommentaar" + +msgid "Commenter" +msgstr "Kommenteerija" + +#, fuzzy +msgid "guest" +msgstr "Sea Uuesti" + +msgid "Comment Preview" +msgstr "Kommentaari Eelvaade" + +msgid "Name" +msgstr "Nimi" + +msgid "Posted by" +msgstr "Postitas" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(kohustuslik)" + +msgid "You must enter a comment!" +msgstr "Sa pead kommentaari sisestama!" + +msgid "Preview" +msgstr "Eelvaade" + +msgid "Save" +msgstr "Salvesta" + +msgid "Cancel" +msgstr "Tühista" + +msgid "edit" +msgstr "muuda" + +msgid "delete" +msgstr "kustuta" + +msgid "show full" +msgstr "näita tervet" + +msgid "show summary" +msgstr "näita kokkuvõtet" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Postitas %s %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Postitas %s %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Postitas %s %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Postitas %s %s" + +msgid "Comment change confirmation" +msgstr "Kommentaari muudatuse kinnitus" + +msgid "Comment added successfully" +msgstr "Kommentaar edukalt lisatud" + +msgid "Comment deleted successfully" +msgstr "Kommentaar edukalt kustutatud" + +msgid "Comment modified successfully" +msgstr "Kommentaar edukalt muudetud" + +#, c-format +msgid "Back to %s" +msgstr "Tagasi %s juurde" + +msgid "Comments Settings" +msgstr "Kommenteerimise Seaded" + +msgid "Settings saved successfully" +msgstr "Seaded edukalt salvestatud" + +msgid "Show link for Latest Comments:" +msgstr "Näita Viimaste Kommentaaride linki:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Kommentaaride arv Viimaste Kommentaaride lehel:" + +msgid "Invalid value" +msgstr "Ebakorrektne väärtus" + +msgid "Reset" +msgstr "Sea Uuesti" + +msgid "Delete this comment?" +msgstr "Kustuta see kommentaar?" + +msgid "Are you sure?" +msgstr "Oled sa kindel?" + +msgid "Delete this comment? There is no undo!" +msgstr "Kustuta see kommentaar? See kaob jäädavalt!" + +msgid "Delete" +msgstr "Kustuta" + +msgid "Edit comment" +msgstr "Muuda kommentaar" + +msgid "You must enter a username." +msgstr "Sa pead sisestama kasutajanime." + +msgid "The username you entered is invalid." +msgstr "Sisestatud kasutajanimi ei ole korrektne." + +msgid "Host" +msgstr "IP-Aadress" + +msgid "You must enter a comment" +msgstr "Sa pead kommentaari sisestama" + +msgid "Latest Comments" +msgstr "Viimased Kommentaarid" + +msgid "Comment changed successfully" +msgstr "Kommentaar edukalt muudetud" + +msgid "There are no comments for this item" +msgstr "Sellel pildil puuduvad kommentaarid" + +msgid "Recent comments" +msgstr "Viimased kommentaarid" + +#, c-format +msgid "(view all %d comments)" +msgstr "(vaata kõiki %d kommentaare)" + +msgid "Show comments" +msgstr "Näita kommentaare" + +msgid "Number of comments" +msgstr "Kommentaaride arv" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Kuupäev" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Sisestatud kuupäev ei ole korrektne." + +#~ msgid "You must enter a date" +#~ msgstr "Sa pead sisestama kuupäeva" diff --git a/Source/gallery2/modules/comment/po/eu.po b/Source/gallery2/modules/comment/po/eu.po new file mode 100644 index 0000000..936b2b1 --- /dev/null +++ b/Source/gallery2/modules/comment/po/eu.po @@ -0,0 +1,288 @@ +# $Id: eu.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Piarres Beobide , 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-05-23 12:10+0200\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.2\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add Comment" +msgstr "Iruzkina Gehitu" + +msgid "add comment" +msgstr "iruzkina gehitu" + +msgid "show comments" +msgstr "iruzkinak ikusi" + +msgid "Comments" +msgstr "Iruzkinak" + +msgid "User commenting system" +msgstr "Erabiltzaile iruzkin sistema" + +msgid "Extra Data" +msgstr "Datu gehigarriak" + +msgid "[comment] Add comments" +msgstr "[iruzkina] Iruzkinak gehitu" + +msgid "[comment] Edit comments" +msgstr "[iruzkina] Iruzkinak editatu" + +msgid "[comment] Delete comments" +msgstr "[iruzkina] Iruzkinak ezabatu" + +msgid "[comment] View comments" +msgstr "[iruzkina] Iruzkinak ikusi" + +msgid "[comment] All access" +msgstr "[iruzkina] Sarrera guztiak" + +msgid "View Latest Comments" +msgstr "Azken Iruzkinak Ikusi" + +msgid "View Comments" +msgstr "Iruzkinak Ikusi" + +#, c-format +msgid "Comments: %d" +msgstr "Iruzkinak: %d" + +msgid "Guest Comments" +msgstr "Gonbidatu Iruzkinak" + +msgid "Comment Module" +msgstr "Iruzkin Modulua" + +msgid "Search comments" +msgstr "Iruzkinak bilatu" + +msgid "Subject" +msgstr "Gaia" + +msgid "Comment" +msgstr "Iruzkina" + +msgid "Commenter" +msgstr "Iruzkin idazlea" + +#, fuzzy +msgid "guest" +msgstr "Berezarri" + +msgid "Comment Preview" +msgstr "Iruzkin Aurrebista" + +msgid "Name" +msgstr "Izena" + +msgid "Posted by" +msgstr "Bidaltzailea" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(beharrezkoa)" + +msgid "You must enter a comment!" +msgstr "Iruzkin bat idatzi behar duzu!" + +msgid "Preview" +msgstr "Aurrebista" + +msgid "Save" +msgstr "Gorde" + +msgid "Cancel" +msgstr "Utzi" + +msgid "edit" +msgstr "editatu" + +msgid "delete" +msgstr "ezabatu" + +msgid "show full" +msgstr "osoa ikusi" + +msgid "show summary" +msgstr "laburpena ikusi" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "%s-ek bidalia %s (%s)-ean" + +#, c-format +msgid "Posted by %s on %s" +msgstr "%s-ek bidalia %s-ean" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "%s-ek bidalia %s (%s)-ean" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "%s-ek bidalia %s-ean" + +msgid "Comment change confirmation" +msgstr "Iruzkin aldaketa berrespena" + +msgid "Comment added successfully" +msgstr "Iruzkina behar bezala gehitu da" + +msgid "Comment deleted successfully" +msgstr "Iruzkina behar bezala ezabatu da" + +msgid "Comment modified successfully" +msgstr "Iruzkina behar bezala eraldatu da" + +#, c-format +msgid "Back to %s" +msgstr "%s-(e)ra Atzera" + +msgid "Comments Settings" +msgstr "Iruzkin Ezarpenak" + +msgid "Settings saved successfully" +msgstr "Iruzkina behar bezala gorde da" + +msgid "Show link for Latest Comments:" +msgstr "Ikusi Azken Iruzkinetara Lotura:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Azken Iruzkin Orrialdeko iruzkin kopurua:" + +msgid "Invalid value" +msgstr "Balio baliogabea" + +msgid "Reset" +msgstr "Berezarri" + +msgid "Delete this comment?" +msgstr "Iruzkin hau ezabatu?" + +msgid "Are you sure?" +msgstr "Ziur al zaude?" + +msgid "Delete this comment? There is no undo!" +msgstr "Iruzkin hau ezabatu? Hau ezin da desegin!" + +msgid "Delete" +msgstr "Ezabatu" + +msgid "Edit comment" +msgstr "Iruzkina editatu" + +msgid "You must enter a username." +msgstr "Erabiltzaile izena idatzi behar duzu." + +msgid "The username you entered is invalid." +msgstr "Idatzitako erabiltzaile izena ez da baliozkoa." + +msgid "Host" +msgstr "Ostalaria" + +msgid "You must enter a comment" +msgstr "Iruzkina idatzi behar duzu" + +msgid "Latest Comments" +msgstr "Azken Iruzkinak" + +msgid "Comment changed successfully" +msgstr "Iruzkina behar bezala aldatu da" + +msgid "There are no comments for this item" +msgstr "Ez dago iruzkinik elementu honentzat" + +msgid "Recent comments" +msgstr "Azken iruzkinak" + +#, c-format +msgid "(view all %d comments)" +msgstr "(%d iruzkin guztiak ikusi)" + +msgid "Show comments" +msgstr "Iruzkinak erakutsi" + +msgid "Number of comments" +msgstr "Iruzkin kopurua" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Data" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Idatzitako data ez da zuzena." + +#~ msgid "You must enter a date" +#~ msgstr "Data idatzi behar duzu" + +#~ msgid "You must enter a subject!" +#~ msgstr "Gai bat idatzi behar duzu!" + +#~ msgid "You must enter a subject" +#~ msgstr "Gaia idatzi behar duzu" diff --git a/Source/gallery2/modules/comment/po/fa.po b/Source/gallery2/modules/comment/po/fa.po new file mode 100644 index 0000000..cdc9a79 --- /dev/null +++ b/Source/gallery2/modules/comment/po/fa.po @@ -0,0 +1,292 @@ +# $Id: fa.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# --- This is the First Release of Farsi/Persian Translation. +# +# +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"POT-Creation-Date: 2006-11-13 03:09-0800\n" +"PO-Revision-Date: 2006-11-03 22:49+0330\n" +"Last-Translator: Jalal Kheradmand \n" +"Language-Team: www.comet.ir \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.10.1\n" +"X-Poedit-Language: Farsi\n" +"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n" + +msgid "Add Comment" +msgstr "نظر جدید" + +msgid "add comment" +msgstr "نظر جدید" + +msgid "show comments" +msgstr "نمایش نظرات" + +msgid "Comments" +msgstr "نظرات" + +msgid "User commenting system" +msgstr "سیستم نظرات کاربران" + +msgid "Extra Data" +msgstr "داده های تکمیلی" + +msgid "[comment] Add comments" +msgstr "[comment] Add comments" + +msgid "[comment] Edit comments" +msgstr "[comment] Edit comments" + +msgid "[comment] Delete comments" +msgstr "[comment] Delete comments" + +msgid "[comment] View comments" +msgstr "[comment] View comments" + +msgid "[comment] All access" +msgstr "[comment] All access" + +msgid "View Latest Comments" +msgstr "مشاهده آخرین نظرات" + +msgid "View Comments" +msgstr "مشاهده نظرات" + +#, c-format +msgid "Comments: %d" +msgstr "نظرات: %d" + +msgid "Guest Comments" +msgstr "نظرات کاربر مهمان" + +msgid "Comment Module" +msgstr "ماجول نظرات" + +msgid "Search comments" +msgstr "جستجو در نظرات" + +msgid "Subject" +msgstr "موضوع" + +msgid "Comment" +msgstr "نظر" + +msgid "Commenter" +msgstr "نظر دهنده" + +#, fuzzy +msgid "guest" +msgstr "ریست کردن" + +msgid "Comment Preview" +msgstr "مشاهده پیش نویس" + +msgid "Name" +msgstr "" + +msgid "Posted by" +msgstr "منتشر شده بوسیله" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(مورد نیاز)" + +msgid "You must enter a comment!" +msgstr "باید نظر را وارد کنید" + +msgid "Preview" +msgstr "مشاهده" + +msgid "Save" +msgstr "ذخیره" + +msgid "Cancel" +msgstr "لغو" + +msgid "edit" +msgstr "تغییر" + +msgid "delete" +msgstr "حذف" + +msgid "show full" +msgstr "نمایش کامل" + +msgid "show summary" +msgstr "نمایش خلاصه" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "پست شده توسط %s در %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "پست شده توسط %s در %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "پست شده توسط %s در %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "پست شده توسط %s در %s" + +msgid "Comment change confirmation" +msgstr "تغییر نظر قبول شد" + +msgid "Comment added successfully" +msgstr "نظر اضافه شد" + +msgid "Comment deleted successfully" +msgstr "نظر حذف شد" + +msgid "Comment modified successfully" +msgstr "نظر تغییر داده شد" + +#, c-format +msgid "Back to %s" +msgstr "" + +msgid "Comments Settings" +msgstr "تنظیمات نظرات" + +msgid "Settings saved successfully" +msgstr "تنظیمات ثبت شد" + +msgid "Show link for Latest Comments:" +msgstr "نمایش لینک برای آخرین نظرات:" + +msgid "Number of comments on Latest Comments page:" +msgstr "تعداد نظرات در صفحه آخرین نظرات:" + +msgid "Invalid value" +msgstr "مقدار غیر قابل قبول" + +msgid "Reset" +msgstr "ریست کردن" + +msgid "Delete this comment?" +msgstr "این نظر پاک شود؟" + +msgid "Are you sure?" +msgstr "آیا اطمینان دارید؟" + +msgid "Delete this comment? There is no undo!" +msgstr "این نظر پاک شود؟ هیچ برگشتی وجود ندارد" + +msgid "Delete" +msgstr "حذف" + +msgid "Edit comment" +msgstr "تغییر نظر" + +msgid "You must enter a username." +msgstr "باید کلمه کاربری را وارد کنید" + +msgid "The username you entered is invalid." +msgstr "کلمه کاربری وارد شده قابل قبول نیست" + +msgid "Host" +msgstr "هاست" + +msgid "You must enter a comment" +msgstr "شما باید نظر را وارد کنید" + +msgid "Latest Comments" +msgstr "آخرین نظرات" + +msgid "Comment changed successfully" +msgstr "نظر تغییر کرد" + +msgid "There are no comments for this item" +msgstr "هیچ نظری برای این آیتم وجود ندارد" + +msgid "Recent comments" +msgstr "نظرات اخیر" + +#, c-format +msgid "(view all %d comments)" +msgstr "(نمایش تمام %d نظر)" + +msgid "Show comments" +msgstr "نمایش نظرات" + +msgid "Number of comments" +msgstr "تعداد نظرات" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50 " + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "You must enter a subject!" +#~ msgstr "شما باید عنوان را وارد کنید" + +#~ msgid "Date" +#~ msgstr "تاریخ" + +#~ msgid "The date you entered is invalid." +#~ msgstr "تاریخ وارد شده اشتباه است" + +#~ msgid "You must enter a date" +#~ msgstr "باید تاریخ را وارد کنید" + +#~ msgid "You must enter a subject" +#~ msgstr "باید عنوان را وارد کنید" diff --git a/Source/gallery2/modules/comment/po/fi.po b/Source/gallery2/modules/comment/po/fi.po new file mode 100644 index 0000000..0f1b727 --- /dev/null +++ b/Source/gallery2/modules/comment/po/fi.po @@ -0,0 +1,292 @@ +# $Id: fi.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators: +# - 2003 Jussi Karppanen +# - 2005 Marko Kohtala +# - 2007 Jyrki Heinonen +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-03-10 10:02+0200\n" +"Last-Translator: Jyrki Heinonen \n" +"Language-Team: Finnish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "Lisää Kommentti" + +msgid "add comment" +msgstr "lisää kommentti" + +msgid "show comments" +msgstr "näytä kommentit" + +msgid "Comments" +msgstr "Kommentit" + +msgid "User commenting system" +msgstr "Käyttäjäkommenttien järjestelmä" + +msgid "Extra Data" +msgstr "Lisätiedot" + +msgid "[comment] Add comments" +msgstr "[kommentti] Lisää kommentteja" + +msgid "[comment] Edit comments" +msgstr "[kommentti] Muokkaa kommentteja" + +msgid "[comment] Delete comments" +msgstr "[kommentti] Poista kommentteja" + +msgid "[comment] View comments" +msgstr "[kommentti] Näytä kommenttit" + +msgid "[comment] All access" +msgstr "[kommentti] Täydet oikeudet" + +msgid "View Latest Comments" +msgstr "Näytä uusimmat Kommentit" + +msgid "View Comments" +msgstr "Näytä Kommentit" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentteja: %d" + +msgid "Guest Comments" +msgstr "Vieraitten kommentit" + +msgid "Comment Module" +msgstr "Kommenttimoduuli" + +msgid "Search comments" +msgstr "Etsi kommentteja" + +msgid "Subject" +msgstr "Aihe" + +msgid "Comment" +msgstr "Kommentti" + +msgid "Commenter" +msgstr "Kommentoija" + +msgid "guest" +msgstr "vieras" + +msgid "Comment Preview" +msgstr "Kommentin Esikatselu" + +msgid "Name" +msgstr "Nimi" + +msgid "Posted by" +msgstr "Lähettäjä" + +#, c-format +msgid "%s (%s)" +msgstr "%s / %s" + +msgid "(required)" +msgstr "(vaadittu)" + +msgid "You must enter a comment!" +msgstr "Unohdit kommentin!" + +msgid "Preview" +msgstr "Esikatsele" + +msgid "Save" +msgstr "Tallenna" + +msgid "Cancel" +msgstr "Peruuta" + +msgid "edit" +msgstr "muokkaa" + +msgid "delete" +msgstr "poista" + +msgid "show full" +msgstr "näytä kokonaan" + +msgid "show summary" +msgstr "näytä yhteenveto" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Lähettäjä %s (%s, %s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Lähettäjä %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Lähettäjä %s (vieras) %s(%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Lähettäjä %s (vieras) (%s)" + +msgid "Comment change confirmation" +msgstr "Kommentin vaihdon vahvistus" + +msgid "Comment added successfully" +msgstr "Kommentti lisätty" + +msgid "Comment deleted successfully" +msgstr "Kommentti poistettu" + +msgid "Comment modified successfully" +msgstr "Kommentti päivitetty" + +#, c-format +msgid "Back to %s" +msgstr "Takaisin %s sivulle" + +msgid "Comments Settings" +msgstr "Kommenttien asetukset" + +msgid "Settings saved successfully" +msgstr "Asetukset tallennettu onnistuneesti" + +msgid "Show link for Latest Comments:" +msgstr "Näytä linkki uusimmille kommenteille" + +msgid "Number of comments on Latest Comments page:" +msgstr "Kommenttien lukumäärä uusimpien kommenttien sivulla:" + +msgid "Invalid value" +msgstr "Väärä arvo" + +msgid "Reset" +msgstr "Tyhjennä" + +msgid "Delete this comment?" +msgstr "Poista kommentti?" + +msgid "Are you sure?" +msgstr "Oletko varma?" + +msgid "Delete this comment? There is no undo!" +msgstr "Poista kommentti peruuttamattomasti?" + +msgid "Delete" +msgstr "Poista" + +msgid "Edit comment" +msgstr "Muokkaa kommenttia" + +msgid "You must enter a username." +msgstr "Sinun täytyy antaa käyttäjänimi." + +msgid "The username you entered is invalid." +msgstr "Syöttämäsi käyttäjänimi on viallinen." + +msgid "Host" +msgstr "Osoite" + +msgid "You must enter a comment" +msgstr "Sinun täytyy antaa kommentti" + +msgid "Latest Comments" +msgstr "Uusimmat kommentit" + +msgid "Comment changed successfully" +msgstr "Kommentti vaihdettu" + +msgid "There are no comments for this item" +msgstr "Ei kommentteja tälle kuvalle" + +msgid "Recent comments" +msgstr "Uusimmat kommentit" + +#, c-format +msgid "(view all %d comments)" +msgstr "(näytä kaikki %d kommenttia)" + +msgid "Show comments" +msgstr "Näytä kommentit" + +msgid "Number of comments" +msgstr "Kommenttien lukumäärä" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Näytä tekstikenttä, joka laajentuu täydelle lomakkeelle" + +#~ msgid "Date" +#~ msgstr "Päiväys" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Syöttämäsi päiväys on viallinen." + +#~ msgid "You must enter a date" +#~ msgstr "Syötä päiväys" + +#~ msgid "You must enter a subject!" +#~ msgstr "Sinun täytyy antaa aihe!" + +#~ msgid "You must enter a subject" +#~ msgstr "Sinun täytyy antaa aihe" + +#~ msgid "[comment] Search comments" +#~ msgstr "[kommentti] Etsi kommentteja" diff --git a/Source/gallery2/modules/comment/po/fr.po b/Source/gallery2/modules/comment/po/fr.po new file mode 100644 index 0000000..5a33da1 --- /dev/null +++ b/Source/gallery2/modules/comment/po/fr.po @@ -0,0 +1,270 @@ +# $Id: fr.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-09-30 00:00+0100\n" +"Last-Translator: Arnaud MOURONVAL \n" +"Language-Team: French \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Add Comment" +msgstr "Ajouter un commentaire" + +msgid "add comment" +msgstr "ajouter un commentaire" + +msgid "show comments" +msgstr "afficher les commentaires" + +msgid "Comments" +msgstr "Commentaires" + +msgid "User commenting system" +msgstr "Système de commentaire des utilisateurs" + +msgid "Extra Data" +msgstr "Extraire les données" + +msgid "[comment] Add comments" +msgstr "[commentaires] Ajouter des commentaires" + +msgid "[comment] Edit comments" +msgstr "[commentaires] Éditer les commentaires" + +msgid "[comment] Delete comments" +msgstr "[commentaires] Supprimer des commentaires" + +msgid "[comment] View comments" +msgstr "[commentaires] Consulter les commentaires" + +msgid "[comment] All access" +msgstr "[commentaires] Tous les accès" + +msgid "View Latest Comments" +msgstr "Consulter les derniers commentaires" + +msgid "View Comments" +msgstr "Consulter les commentaires" + +#, c-format +msgid "Comments: %d" +msgstr "Commentaires : %d" + +msgid "Guest Comments" +msgstr "Commentaires des invités" + +msgid "Comment Module" +msgstr "Module Commentaire" + +msgid "Search comments" +msgstr "Rechercher les commentaires" + +msgid "Subject" +msgstr "Sujet" + +msgid "Comment" +msgstr "Commentaire" + +msgid "Commenter" +msgstr "Commentateur" + +msgid "guest" +msgstr "invité" + +msgid "Comment Preview" +msgstr "Prévisualisation du commentaire" + +msgid "Name" +msgstr "Nom" + +msgid "Posted by" +msgstr "Soumis par" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(requis)" + +msgid "You must enter a comment!" +msgstr "Vous devez saisir un commentaire !" + +msgid "Preview" +msgstr "Prévisualisation" + +msgid "Save" +msgstr "Sauver" + +msgid "Cancel" +msgstr "Annuler" + +msgid "edit" +msgstr "éditer" + +msgid "delete" +msgstr "supprimer" + +msgid "show full" +msgstr "afficher les commentaires complets" + +msgid "show summary" +msgstr "afficher les commentaires résumés" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Soumis par %s le %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Soumis par %s le %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Soumis par %s (invité) le %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Soumis par %s (invité) le %s" + +msgid "Comment change confirmation" +msgstr "Confirmation de modification du commentaire" + +msgid "Comment added successfully" +msgstr "Commentaire ajouté avec succès" + +msgid "Comment deleted successfully" +msgstr "Commentaire supprimé avec succès" + +msgid "Comment modified successfully" +msgstr "Commentaire modifié avec succès" + +#, c-format +msgid "Back to %s" +msgstr "Retour vers %s" + +msgid "Comments Settings" +msgstr "Paramètres des commentaires" + +msgid "Settings saved successfully" +msgstr "Paramètres sauvegardés avec succès" + +msgid "Show link for Latest Comments:" +msgstr "Afficher un lien pour les derniers commentaires :" + +msgid "Number of comments on Latest Comments page:" +msgstr "Nombre de commentaires sur la page des derniers commentaires :" + +msgid "Invalid value" +msgstr "Valeur invalide" + +msgid "Reset" +msgstr "Réinitialiser" + +msgid "Delete this comment?" +msgstr "Supprimer ce commentaire ?" + +msgid "Are you sure?" +msgstr "Etes-vous sûrs ?" + +msgid "Delete this comment? There is no undo!" +msgstr "Supprimer ce commentaire ? Il n'y a pas d'annulation possible !" + +msgid "Delete" +msgstr "Supprimer" + +msgid "Edit comment" +msgstr "Editer le commentaire" + +msgid "You must enter a username." +msgstr "Vous devez saisir un nom d'utilisateur." + +msgid "The username you entered is invalid." +msgstr "Le nom d'utilisateur que vous avez saisi est invalide." + +msgid "Host" +msgstr "Machine" + +msgid "You must enter a comment" +msgstr "Vous devez saisir un commentaire" + +msgid "Latest Comments" +msgstr "Derniers commentaires" + +msgid "Comment changed successfully" +msgstr "Commentaire modifié avec succès" + +msgid "There are no comments for this item" +msgstr "Il n'y a aucun commentaire pour cet élément" + +msgid "Recent comments" +msgstr "Commentaires récents" + +#, c-format +msgid "(view all %d comments)" +msgstr "(voir les %d commentaires)" + +msgid "Show comments" +msgstr "Afficher les commentaires" + +msgid "Number of comments" +msgstr "Nombre de commentaires" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Afficher un champ texte qui s'étend sur tout le formulaire" diff --git a/Source/gallery2/modules/comment/po/ga.po b/Source/gallery2/modules/comment/po/ga.po new file mode 100644 index 0000000..a7f4c5d --- /dev/null +++ b/Source/gallery2/modules/comment/po/ga.po @@ -0,0 +1,318 @@ +# $Id: ga.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# IRISH PLURAL FORMS (20s system, ordinal non-measurement common nouns) +# +# Group Numbers Example +# +# msgstr[0] 0 Níl aon pheictiúr +# msgstr[1] 1 Tá peictiúr amháin +# msgstr[2] 20,21,40,41, Tá 20 peictiúr +# 60,61,... +# msgstr[3] 7, 8, 9,10, Tá 9 bpeictiúr (eclipsis) +# 17,18,19, +# 27,28,29,30, +# 37,38,... +# msgstr[4] 2, 3, 4, 5, 6 Tá 5 pheictiúr (lenition) +# 11,12,13,14,15,16 +# 22,23,24,25,26 +# 31,32,33,34,... +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2005-04-06 23:57-0500\n" +"Last-Translator: Beckett Madden-Woods \n" +"Language-Team: Irish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=5; plural=n==0 ? 0 : ( n==1 ? 1 : ( n%20<2 ? 2 : ( (n-1)%10>5 ? 3 : " +"4 )));\n" +"X-Poedit-Language: Irish\n" +"X-Poedit-Country: IRELAND\n" + +msgid "Add Comment" +msgstr "Cuir Teachtaireacht ann" + +msgid "add comment" +msgstr "cuir teachtaireacht" + +msgid "show comments" +msgstr "táispeáin teachtaireachtaí" + +msgid "Comments" +msgstr "Teachtaireachtaí" + +msgid "User commenting system" +msgstr "Córas teachtaireachta" + +msgid "Extra Data" +msgstr "Sonraí eile" + +msgid "[comment] Add comments" +msgstr "[teachtaireachtaí] Cuir teachtaireachtaí" + +msgid "[comment] Edit comments" +msgstr "[teachtaireachtaí] Athraigh teachtaireachtaí" + +msgid "[comment] Delete comments" +msgstr "[teachtaireachtaí] Scrios teachtaireachtaí" + +msgid "[comment] View comments" +msgstr "[teachtaireachtaí] Táispeáin teachtaireachtaí" + +msgid "[comment] All access" +msgstr "[teachtaireachtaí] Smacht iomlán" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Táispeáin teachtaireachtaí" + +msgid "View Comments" +msgstr "Táispeáin teachtaireachtaí" + +#, c-format +msgid "Comments: %d" +msgstr "Teachtaireachtaí: %d" + +#, fuzzy +msgid "Guest Comments" +msgstr "Táispeáin teachtaireachtaí" + +msgid "Comment Module" +msgstr "Modúl Theachtaireacht" + +msgid "Search comments" +msgstr "Cuardaigh teachtaireachtaí" + +msgid "Subject" +msgstr "Ábhar" + +msgid "Comment" +msgstr "Teachtaireacht" + +msgid "Commenter" +msgstr "Teachtaire" + +#, fuzzy +msgid "guest" +msgstr "athshocraigh" + +msgid "Comment Preview" +msgstr "Réamhthaispeántas an teachtaireachta: " + +msgid "Name" +msgstr "Ainm" + +msgid "Posted by" +msgstr "Scríofa le" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(teastáilte)" + +msgid "You must enter a comment!" +msgstr "Caithfidh tú teachtaireacht a iontráil!" + +msgid "Preview" +msgstr "Réamhthaispeáin" + +msgid "Save" +msgstr "Sábháil" + +msgid "Cancel" +msgstr "Cealaigh" + +msgid "edit" +msgstr "athraigh" + +msgid "delete" +msgstr "scrios" + +#, fuzzy +msgid "show full" +msgstr "iomlán" + +msgid "show summary" +msgstr "" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Scríofa le %s ar %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Scríofa le %s ar %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Scríofa le %s ar %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Scríofa le %s ar %s" + +msgid "Comment change confirmation" +msgstr "Cinntiú athraigh an teachtaireachta" + +msgid "Comment added successfully" +msgstr "Teachtaireacht curtha go rathúil" + +msgid "Comment deleted successfully" +msgstr "Teachtaireacht scriosta go rathúil" + +msgid "Comment modified successfully" +msgstr "Teachtaireacht athraithe go rathúil" + +#, c-format +msgid "Back to %s" +msgstr "" + +#, fuzzy +msgid "Comments Settings" +msgstr "Teachtaireachtaí" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Teachtaireacht curtha go rathúil" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +#, fuzzy +msgid "Reset" +msgstr "athshocraigh" + +msgid "Delete this comment?" +msgstr "Scrios an teachtaireacht seo?" + +msgid "Are you sure?" +msgstr "An bhfuil tú cinnte?" + +msgid "Delete this comment? There is no undo!" +msgstr "Scrios an teachtaireacht seo? Níl \"ceallaigh\" ann!" + +msgid "Delete" +msgstr "Scrios" + +msgid "Edit comment" +msgstr "Athraigh teachtaireacht" + +msgid "You must enter a username." +msgstr "Caithfidh tú do logainm a iontráil." + +msgid "The username you entered is invalid." +msgstr "Níl do logainm seo bailí." + +msgid "Host" +msgstr "Seoladh IP" + +msgid "You must enter a comment" +msgstr "Caithfidh tú teachtaireacht a iontráil" + +#, fuzzy +msgid "Latest Comments" +msgstr "Táispeáin teachtaireachtaí" + +msgid "Comment changed successfully" +msgstr "Teachtaireacht athraithe go rathúil" + +msgid "There are no comments for this item" +msgstr "Níl aon theachtaireacht faoin míre seo" + +msgid "Recent comments" +msgstr "Teachtaireachtaí deireanacha" + +#, c-format +msgid "(view all %d comments)" +msgstr "(táispeáin uile %d teachtaireachtaí)" + +#, fuzzy +msgid "Show comments" +msgstr "táispeáin teachtaireachtaí" + +#, fuzzy +msgid "Number of comments" +msgstr "Cuardaigh teachtaireachtaí" + +msgid "1" +msgstr "" + +msgid "2" +msgstr "" + +msgid "3" +msgstr "" + +msgid "4" +msgstr "" + +msgid "5" +msgstr "" + +msgid "10" +msgstr "" + +msgid "20" +msgstr "" + +msgid "30" +msgstr "" + +msgid "50" +msgstr "" + +msgid "100" +msgstr "" + +msgid "999" +msgstr "" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Dáta" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Níl an dáta seo bailí." + +#~ msgid "You must enter a date" +#~ msgstr "Caithfidh tú dáta a iontráil" + +#~ msgid "You must enter a subject!" +#~ msgstr "Caithfidh tú ábhar a iontráil!" + +#~ msgid "You must enter a subject" +#~ msgstr "Caithfidh tú ábhar a iontráil" + +#~ msgid "[comment] Search comments" +#~ msgstr "[teachtaireachtaí] Cuardaigh teachtaireachtaí" diff --git a/Source/gallery2/modules/comment/po/he.po b/Source/gallery2/modules/comment/po/he.po new file mode 100644 index 0000000..abb58ec --- /dev/null +++ b/Source/gallery2/modules/comment/po/he.po @@ -0,0 +1,287 @@ +# $Id: he.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-04-02 16:21+0300\n" +"Last-Translator: Guy Sheffer\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.2\n" + +msgid "Add Comment" +msgstr "הוסף תגובה" + +msgid "add comment" +msgstr "הוסף תגובה" + +msgid "show comments" +msgstr "הצג תגובות" + +msgid "Comments" +msgstr "תגובות" + +msgid "User commenting system" +msgstr "מערכת תגובות המשתמשים" + +msgid "Extra Data" +msgstr "נתונים נוספים" + +msgid "[comment] Add comments" +msgstr "[תגובה] הוסף תגובה" + +msgid "[comment] Edit comments" +msgstr "[התגובה] ערוך תגובות" + +msgid "[comment] Delete comments" +msgstr "[תגובה] מחק תגובה" + +msgid "[comment] View comments" +msgstr "[תגובה] הצג תגובות" + +msgid "[comment] All access" +msgstr "[תגובה] גישה מלאה" + +msgid "View Latest Comments" +msgstr "הצג תגובות אחרונות" + +msgid "View Comments" +msgstr "התג תגובות" + +#, c-format +msgid "Comments: %d" +msgstr "תגובות: %d" + +msgid "Guest Comments" +msgstr "תגובות אורחים" + +msgid "Comment Module" +msgstr "מודול תגובות משתמשים" + +msgid "Search comments" +msgstr "חפש בתגובות" + +msgid "Subject" +msgstr "נושא" + +msgid "Comment" +msgstr "תגובה" + +msgid "Commenter" +msgstr "מגיב" + +#, fuzzy +msgid "guest" +msgstr "אתחל" + +msgid "Comment Preview" +msgstr "תצוגה מקדימה" + +msgid "Name" +msgstr "שם" + +msgid "Posted by" +msgstr "פורסם על-ידי" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(דרוש)" + +msgid "You must enter a comment!" +msgstr "עליך למלא את שדה התגובה!" + +msgid "Preview" +msgstr "תצוגה מקדימה" + +msgid "Save" +msgstr "שמור" + +msgid "Cancel" +msgstr "ביטול" + +msgid "edit" +msgstr "ערוך" + +msgid "delete" +msgstr "מחק" + +msgid "show full" +msgstr "הצג מלא" + +msgid "show summary" +msgstr "הצג סיכום" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "פורסם על-ידי %s בתאריך %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "פורסם על-ידי %s בתאריך %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "פורסם על-ידי %s בתאריך %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "פורסם על-ידי %s בתאריך %s" + +msgid "Comment change confirmation" +msgstr "אישור לשינוי תגובה" + +msgid "Comment added successfully" +msgstr "התגובה נוספה בהצלחה" + +msgid "Comment deleted successfully" +msgstr "התגובה נמחקה בהצלחה" + +msgid "Comment modified successfully" +msgstr "התגובה שונתה בהצלחה" + +#, c-format +msgid "Back to %s" +msgstr "חזרה ל %s" + +msgid "Comments Settings" +msgstr "הגדרת תגובות" + +msgid "Settings saved successfully" +msgstr "הגדרות נשמרו בהצלחה" + +msgid "Show link for Latest Comments:" +msgstr "הצג לינק לתגובות האחרונות:" + +msgid "Number of comments on Latest Comments page:" +msgstr "מספר התגובות בדף התגובות האחרונות:" + +msgid "Invalid value" +msgstr "ערך לא חוקי" + +msgid "Reset" +msgstr "אתחל" + +msgid "Delete this comment?" +msgstr "למחוק תגובה זו?" + +msgid "Are you sure?" +msgstr "האם את/ה בטוח?" + +msgid "Delete this comment? There is no undo!" +msgstr "למחוק תגובה זו? הפעולה לא ניתנת לביטול!" + +msgid "Delete" +msgstr "מחק" + +msgid "Edit comment" +msgstr "ערוך תגובה" + +msgid "You must enter a username." +msgstr "עליך להקליד את שם המשתמש." + +msgid "The username you entered is invalid." +msgstr "שם המשתמש שהוכנס אינו חוקי." + +msgid "Host" +msgstr "ספק: " + +msgid "You must enter a comment" +msgstr "לא הקלדת תגובה" + +msgid "Latest Comments" +msgstr "הצג תגובות" + +msgid "Comment changed successfully" +msgstr "התגובה שונתה בהצלחה" + +msgid "There are no comments for this item" +msgstr "אין תגובות לפריט זה" + +msgid "Recent comments" +msgstr "תגובות אחרונות" + +#, c-format +msgid "(view all %d comments)" +msgstr "(הצג את כל %d התגובות המשתמשים)" + +msgid "Show comments" +msgstr "הצג תגובות" + +msgid "Number of comments" +msgstr "חפש בתגובות" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "תאריך: " + +#~ msgid "The date you entered is invalid." +#~ msgstr "התאריך שהוכנס אינו חוקי." + +#~ msgid "You must enter a date" +#~ msgstr "עליך להכניס תאריך" + +#~ msgid "You must enter a subject!" +#~ msgstr "עליך למלא את שדה הנושא!" + +#~ msgid "You must enter a subject" +#~ msgstr "עליך לקליד נושא" diff --git a/Source/gallery2/modules/comment/po/hu.po b/Source/gallery2/modules/comment/po/hu.po new file mode 100644 index 0000000..a3f44c4 --- /dev/null +++ b/Source/gallery2/modules/comment/po/hu.po @@ -0,0 +1,275 @@ +# $Id: hu.po 16475 2007-05-31 17:44:01Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Gergely Dömsödi +# - Jozsef R.Nagy +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-05-31 10:31-0700\n" +"PO-Revision-Date: 2007-03-04 14:12+0100\n" +"Last-Translator: Sandor Dibuz \n" +"Language-Team: magyar \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "Add Comment" +msgstr "Megjegyzés hozzáfűzése" + +msgid "add comment" +msgstr "megjegyzés hozzáfűzése" + +msgid "show comments" +msgstr "megjegyzések megtekintése" + +msgid "Comments" +msgstr "Megjegyzések" + +msgid "User commenting system" +msgstr "Felhasználói megjegyzéshozzáfűző rendszer" + +msgid "Extra Data" +msgstr "Extra adatok" + +msgid "[comment] Add comments" +msgstr "[megjegyzés] Megjegyzések hozzáfűzése" + +msgid "[comment] Edit comments" +msgstr "[megjegyzés] Megjegyzések szerkesztése" + +msgid "[comment] Delete comments" +msgstr "[megjegyzés] Megjegyzések törlése" + +msgid "[comment] View comments" +msgstr "[megjegyzés] Megjegyzések megtekintése" + +msgid "[comment] All access" +msgstr "[megjegyzés] Teljes hozzáférés" + +msgid "View Latest Comments" +msgstr "Legújabb megjegyzések" + +msgid "View Comments" +msgstr "Megjegyzések megtekintése" + +#, c-format +msgid "Comments: %d" +msgstr "Megjegyzések: %d" + +msgid "Guest Comments" +msgstr "Vendég megjegyzések" + +msgid "Comment Module" +msgstr "Megjegyzés modul" + +msgid "Search comments" +msgstr "Keresés a megjegyzések között" + +msgid "Subject" +msgstr "Tárgy" + +msgid "Comment" +msgstr "Megjegyzés" + +msgid "Commenter" +msgstr "Megjegyzés írója" + +msgid "guest" +msgstr "vendég" + +msgid "Comment Preview" +msgstr "Megjegyzés előnézete" + +msgid "Name" +msgstr "Név" + +msgid "Posted by" +msgstr "Hozzászóló" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(megadása kötelező)" + +msgid "You must enter a comment!" +msgstr "Írd be a megjegyzésedet!" + +msgid "Preview" +msgstr "Előnézet" + +msgid "Save" +msgstr "Mentés" + +msgid "Cancel" +msgstr "Mégsem" + +msgid "edit" +msgstr "szerkesztés" + +msgid "delete" +msgstr "törlés" + +msgid "show full" +msgstr "bővebben" + +msgid "show summary" +msgstr "rövidítve" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Beküldte %s %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Beküldte %s %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Beküldte %s (vendég) %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Beküldte %s (vendég) %s" + +msgid "Comment change confirmation" +msgstr "Megjegyzés megváltoztatásának megerősítése" + +msgid "Comment added successfully" +msgstr "Megjegyzés sikeresen hozzáfűzve" + +msgid "Comment deleted successfully" +msgstr "Megjegyzés sikeresen törölve" + +msgid "Comment modified successfully" +msgstr "Megjegyzés sikeresen módosítva" + +#, c-format +msgid "Back to %s" +msgstr "Vissza ide: %s" + +msgid "Comments Settings" +msgstr "Megjegyzések beállításai" + +msgid "Settings saved successfully" +msgstr "Beállítások sikeresen elmentve" + +msgid "Show link for Latest Comments:" +msgstr "Link megjelenítése a legújabb megjegyzésekhez:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Megjegyzések száma a legújabb megjegyzések oldalán:" + +msgid "Invalid value" +msgstr "Érvénytelen érték" + +msgid "Reset" +msgstr "Visszaállítás" + +msgid "Delete this comment?" +msgstr "Töröljem ezt a megjegyzést?" + +msgid "Are you sure?" +msgstr "Biztos vagy benne?" + +msgid "Delete this comment? There is no undo!" +msgstr "Töröljem ezt a megjegyzést? Nincs visszaállítási lehetőség!" + +msgid "Delete" +msgstr "Törlés" + +msgid "Edit comment" +msgstr "Megjegyzés szerkesztése" + +msgid "You must enter a username." +msgstr "Írj be egy felhasználónevet" + +msgid "The username you entered is invalid." +msgstr "A beírt felhasználónév érvénytelen." + +msgid "Host" +msgstr "Hoszt" + +msgid "You must enter a comment" +msgstr "Írj be egy megjegyzést" + +msgid "Latest Comments" +msgstr "Legújabb megjegyzések" + +msgid "Comment changed successfully" +msgstr "Megjegyzés sikeresen megváltoztatva" + +msgid "There are no comments for this item" +msgstr "Ehhez az elemhez még nincs megjegyzés" + +msgid "Recent comments" +msgstr "Új megjegyzések" + +#, c-format +msgid "(view all %d comments)" +msgstr "(mind a %d megjegyzés megtekintése)" + +msgid "Show comments" +msgstr "Megjegyzések megjelenítése" + +msgid "Number of comments" +msgstr "Megjegyzések száma" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Egy szövegdoboz elhelyezése amely a teljes űrlappá nyílik szét" diff --git a/Source/gallery2/modules/comment/po/is.po b/Source/gallery2/modules/comment/po/is.po new file mode 100644 index 0000000..ee25b8c --- /dev/null +++ b/Source/gallery2/modules/comment/po/is.po @@ -0,0 +1,269 @@ +# $Id: is.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2005-04-01 17:00+0200\n" +"Last-Translator: Johann S Jonsson \n" +"Language-Team: Icelandic \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "" + +msgid "add comment" +msgstr "" + +msgid "show comments" +msgstr "" + +msgid "Comments" +msgstr "" + +msgid "User commenting system" +msgstr "" + +msgid "Extra Data" +msgstr "" + +msgid "[comment] Add comments" +msgstr "" + +msgid "[comment] Edit comments" +msgstr "" + +msgid "[comment] Delete comments" +msgstr "" + +msgid "[comment] View comments" +msgstr "" + +msgid "[comment] All access" +msgstr "" + +msgid "View Latest Comments" +msgstr "" + +msgid "View Comments" +msgstr "" + +#, c-format +msgid "Comments: %d" +msgstr "" + +msgid "Guest Comments" +msgstr "" + +msgid "Comment Module" +msgstr "" + +msgid "Search comments" +msgstr "" + +msgid "Subject" +msgstr "" + +msgid "Comment" +msgstr "" + +msgid "Commenter" +msgstr "" + +msgid "guest" +msgstr "" + +msgid "Comment Preview" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "Posted by" +msgstr "" + +#, c-format +msgid "%s (%s)" +msgstr "" + +msgid "(required)" +msgstr "" + +msgid "You must enter a comment!" +msgstr "" + +msgid "Preview" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "edit" +msgstr "" + +msgid "delete" +msgstr "" + +msgid "show full" +msgstr "" + +msgid "show summary" +msgstr "" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "" + +#, c-format +msgid "Posted by %s on %s" +msgstr "" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "" + +msgid "Comment change confirmation" +msgstr "" + +msgid "Comment added successfully" +msgstr "" + +msgid "Comment deleted successfully" +msgstr "" + +msgid "Comment modified successfully" +msgstr "" + +#, c-format +msgid "Back to %s" +msgstr "" + +msgid "Comments Settings" +msgstr "" + +msgid "Settings saved successfully" +msgstr "" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Delete this comment?" +msgstr "" + +msgid "Are you sure?" +msgstr "" + +msgid "Delete this comment? There is no undo!" +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Edit comment" +msgstr "" + +msgid "You must enter a username." +msgstr "" + +msgid "The username you entered is invalid." +msgstr "" + +msgid "Host" +msgstr "" + +msgid "You must enter a comment" +msgstr "" + +msgid "Latest Comments" +msgstr "" + +msgid "Comment changed successfully" +msgstr "" + +msgid "There are no comments for this item" +msgstr "" + +msgid "Recent comments" +msgstr "" + +#, c-format +msgid "(view all %d comments)" +msgstr "" + +msgid "Show comments" +msgstr "" + +msgid "Number of comments" +msgstr "" + +msgid "1" +msgstr "" + +msgid "2" +msgstr "" + +msgid "3" +msgstr "" + +msgid "4" +msgstr "" + +msgid "5" +msgstr "" + +msgid "10" +msgstr "" + +msgid "20" +msgstr "" + +msgid "30" +msgstr "" + +msgid "50" +msgstr "" + +msgid "100" +msgstr "" + +msgid "999" +msgstr "" + +msgid "Show a text box that expands into the full form" +msgstr "" diff --git a/Source/gallery2/modules/comment/po/it.po b/Source/gallery2/modules/comment/po/it.po new file mode 100644 index 0000000..10e6eb1 --- /dev/null +++ b/Source/gallery2/modules/comment/po/it.po @@ -0,0 +1,270 @@ +# $Id: it.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-01-08 15:51+0100\n" +"Last-Translator: Ermanno Baschiera \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.3\n" + +msgid "Add Comment" +msgstr "Aggiungi Commento" + +msgid "add comment" +msgstr "aggiungi commento" + +msgid "show comments" +msgstr "visualizza commenti" + +msgid "Comments" +msgstr "Commenti" + +msgid "User commenting system" +msgstr "Sistema per inserire commenti da parte degli utenti" + +msgid "Extra Data" +msgstr "Dati extra" + +msgid "[comment] Add comments" +msgstr "[commento] Aggiungi commenti" + +msgid "[comment] Edit comments" +msgstr "[commento] Modifica commenti" + +msgid "[comment] Delete comments" +msgstr "[commento] Elimina commenti" + +msgid "[comment] View comments" +msgstr "[commento] Visualizza commenti" + +msgid "[comment] All access" +msgstr "[commento] Nessuna restrizione" + +msgid "View Latest Comments" +msgstr "Visualizza Commenti Recenti" + +msgid "View Comments" +msgstr "Visualizza Commenti" + +#, c-format +msgid "Comments: %d" +msgstr "Commenti: %d" + +msgid "Guest Comments" +msgstr "Commenti dei Visitatori" + +msgid "Comment Module" +msgstr "Modulo Commenti" + +msgid "Search comments" +msgstr "Trova commenti" + +msgid "Subject" +msgstr "Oggetto" + +msgid "Comment" +msgstr "Commento" + +msgid "Commenter" +msgstr "Autore" + +msgid "guest" +msgstr "visitatore" + +msgid "Comment Preview" +msgstr "Anteprima Commento" + +msgid "Name" +msgstr "Nome" + +msgid "Posted by" +msgstr "Inserito da" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(obbligatorio)" + +msgid "You must enter a comment!" +msgstr "Devi inserire un commento!" + +msgid "Preview" +msgstr "Anteprima" + +msgid "Save" +msgstr "Salva" + +msgid "Cancel" +msgstr "Annulla" + +msgid "edit" +msgstr "modifica" + +msgid "delete" +msgstr "elimina" + +msgid "show full" +msgstr "visualizza tutto" + +msgid "show summary" +msgstr "visualizza riepilogo" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Inserito da %s %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Inserito da %s %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Inserito da %s (visitatore) %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Inserito da %s (visitatore) %s" + +msgid "Comment change confirmation" +msgstr "Conferma modifica commento" + +msgid "Comment added successfully" +msgstr "Commento aggiunto con successo" + +msgid "Comment deleted successfully" +msgstr "Commento eliminato con successo" + +msgid "Comment modified successfully" +msgstr "Commento modificato con successo" + +#, c-format +msgid "Back to %s" +msgstr "Torna a %s" + +msgid "Comments Settings" +msgstr "Configurazione Commenti" + +msgid "Settings saved successfully" +msgstr "Configurazione salvata con successo" + +msgid "Show link for Latest Comments:" +msgstr "Mostra link ai Commenti Recenti:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Numero di commenti nella pagina Commenti Recenti:" + +msgid "Invalid value" +msgstr "Valore non valido" + +msgid "Reset" +msgstr "Reset" + +msgid "Delete this comment?" +msgstr "Eliminare questo commento?" + +msgid "Are you sure?" +msgstr "Sei sicuro?" + +msgid "Delete this comment? There is no undo!" +msgstr "Eliminare questo commento? Non sarà possibile recuperarlo!" + +msgid "Delete" +msgstr "Elimina" + +msgid "Edit comment" +msgstr "Modifica commento" + +msgid "You must enter a username." +msgstr "Devi inserire un nome utente." + +msgid "The username you entered is invalid." +msgstr "Il nome utente che hai inserito non è valido." + +msgid "Host" +msgstr "Indirizzo" + +msgid "You must enter a comment" +msgstr "Devi inserire un commento" + +msgid "Latest Comments" +msgstr "Commenti Recenti" + +msgid "Comment changed successfully" +msgstr "Commento modificato con successo" + +msgid "There are no comments for this item" +msgstr "Non ci sono commenti per questo elemento" + +msgid "Recent comments" +msgstr "Ultimi commenti" + +#, c-format +msgid "(view all %d comments)" +msgstr "(visualizza tutti %d i commenti)" + +msgid "Show comments" +msgstr "Visualizza commenti" + +msgid "Number of comments" +msgstr "Numero di commenti" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Visualizza una casella di testo che si espande nel form completo" diff --git a/Source/gallery2/modules/comment/po/ja.po b/Source/gallery2/modules/comment/po/ja.po new file mode 100644 index 0000000..9aaf868 --- /dev/null +++ b/Source/gallery2/modules/comment/po/ja.po @@ -0,0 +1,270 @@ +# $Id: ja.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-03-11 10:58+0900\n" +"Last-Translator: Kennichi Uehara \n" +"Language-Team: Japanese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "Add Comment" +msgstr "コメントする" + +msgid "add comment" +msgstr "コメント追加" + +msgid "show comments" +msgstr "コメントを表示する" + +msgid "Comments" +msgstr "コメント" + +msgid "User commenting system" +msgstr "ユーザコメントシステム" + +msgid "Extra Data" +msgstr "追加データ" + +msgid "[comment] Add comments" +msgstr "[コメント] コメント追加" + +msgid "[comment] Edit comments" +msgstr "[コメント] コメント編集" + +msgid "[comment] Delete comments" +msgstr "[コメント] コメント削除" + +msgid "[comment] View comments" +msgstr "[コメント] コメント閲覧" + +msgid "[comment] All access" +msgstr "[コメント] 全てのアクセス" + +msgid "View Latest Comments" +msgstr "最近のコメントを見る" + +msgid "View Comments" +msgstr "コメントを見る" + +#, c-format +msgid "Comments: %d" +msgstr "コメント: %d" + +msgid "Guest Comments" +msgstr "ゲストコメント" + +msgid "Comment Module" +msgstr "コメントモジュール" + +msgid "Search comments" +msgstr "コメントの検索" + +msgid "Subject" +msgstr "件名" + +msgid "Comment" +msgstr "コメント" + +msgid "Commenter" +msgstr "コメント者" + +msgid "guest" +msgstr "ゲスト" + +msgid "Comment Preview" +msgstr "コメントのプレビュー" + +msgid "Name" +msgstr "名前" + +msgid "Posted by" +msgstr "投稿者は" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(必須)" + +msgid "You must enter a comment!" +msgstr "コメントを入力しなくてはなりません" + +msgid "Preview" +msgstr "プレビュー" + +msgid "Save" +msgstr "保存" + +msgid "Cancel" +msgstr "キャンセル" + +msgid "edit" +msgstr "編集" + +msgid "delete" +msgstr "削除" + +msgid "show full" +msgstr "全部を表示" + +msgid "show summary" +msgstr "概要を表示" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "%s が %s に投稿しました (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "%s が %s に投稿しました" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "%s (ゲスト) が %s に投稿しました (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "%s (ゲスト)が %s に投稿しました" + +msgid "Comment change confirmation" +msgstr "コメント変更の確認" + +msgid "Comment added successfully" +msgstr "コメントの追加に成功しました" + +msgid "Comment deleted successfully" +msgstr "コメントの削除に成功しました" + +msgid "Comment modified successfully" +msgstr "コメントの変更に成功しました" + +#, c-format +msgid "Back to %s" +msgstr "%s に戻る" + +msgid "Comments Settings" +msgstr "コメント設定" + +msgid "Settings saved successfully" +msgstr "設定の保存に成功しました" + +msgid "Show link for Latest Comments:" +msgstr "最新のコメントへのリンクを表示する:" + +msgid "Number of comments on Latest Comments page:" +msgstr "最新のコメントページでのコメントの数" + +msgid "Invalid value" +msgstr "不正な値" + +msgid "Reset" +msgstr "リセット" + +msgid "Delete this comment?" +msgstr "このコメントを削除しますか?" + +msgid "Are you sure?" +msgstr "よろしいですか?" + +msgid "Delete this comment? There is no undo!" +msgstr "このコメントを削除しますか? やり直しはできません!" + +msgid "Delete" +msgstr "削除" + +msgid "Edit comment" +msgstr "コメントを編集" + +msgid "You must enter a username." +msgstr "ユーザーネームを入力しなくてはなりません。" + +msgid "The username you entered is invalid." +msgstr "入力したユーザーネームは無効です。" + +msgid "Host" +msgstr "ホスト" + +msgid "You must enter a comment" +msgstr "コメントを入力しなくてはなりません" + +msgid "Latest Comments" +msgstr "最新コメント" + +msgid "Comment changed successfully" +msgstr "コメントの変更に成功しました" + +msgid "There are no comments for this item" +msgstr "このアイテムに対するコメントはありません" + +msgid "Recent comments" +msgstr "最近のコメント" + +#, c-format +msgid "(view all %d comments)" +msgstr "(%d コメント 全てを読む)" + +msgid "Show comments" +msgstr "コメントを表示する" + +msgid "Number of comments" +msgstr "コメント数" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +#, fuzzy +msgid "Show a text box that expands into the full form" +msgstr "完全なかたちに拡張するテキストボックスを表示する" diff --git a/Source/gallery2/modules/comment/po/ko.po b/Source/gallery2/modules/comment/po/ko.po new file mode 100644 index 0000000..00391b3 --- /dev/null +++ b/Source/gallery2/modules/comment/po/ko.po @@ -0,0 +1,289 @@ +# $Id: ko.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-05-14 11:11+0900\n" +"Last-Translator: juice \n" +"Language-Team: Korean \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Poedit-Language: Korean\n" +"X-Poedit-Country: KOREA, REPUBLIC OF\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Add Comment" +msgstr "댓글 달기" + +msgid "add comment" +msgstr "댓글 달기" + +msgid "show comments" +msgstr "댓글 보이기" + +msgid "Comments" +msgstr "댓글" + +msgid "User commenting system" +msgstr "사용자가 댓글을 달수 있도록 합니다." + +msgid "Extra Data" +msgstr "" + +msgid "[comment] Add comments" +msgstr "[댓글] 댓글 달기" + +msgid "[comment] Edit comments" +msgstr "[댓글] 댓글 편집하기" + +msgid "[comment] Delete comments" +msgstr "[댓글] 댓글 지우기" + +msgid "[comment] View comments" +msgstr "[댓글] 댓글 보기" + +msgid "[comment] All access" +msgstr "[댓글] 모든 권한" + +msgid "View Latest Comments" +msgstr "최근 댓글 보기" + +msgid "View Comments" +msgstr "댓글 보기" + +#, c-format +msgid "Comments: %d" +msgstr "댓글 : %d개" + +msgid "Guest Comments" +msgstr "손님 댓글" + +msgid "Comment Module" +msgstr "댓글 모듈" + +msgid "Search comments" +msgstr "댓글 검색" + +msgid "Subject" +msgstr "제목" + +msgid "Comment" +msgstr "댓글" + +msgid "Commenter" +msgstr "댓글 붙인 사람" + +#, fuzzy +msgid "guest" +msgstr "다시" + +msgid "Comment Preview" +msgstr "댓글 미리보기" + +msgid "Name" +msgstr "이름" + +msgid "Posted by" +msgstr "글쓴이 :" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(필수)" + +msgid "You must enter a comment!" +msgstr "댓글을 다십시요" + +msgid "Preview" +msgstr "미리보기" + +msgid "Save" +msgstr "저장" + +msgid "Cancel" +msgstr "취소" + +msgid "edit" +msgstr "편집" + +msgid "delete" +msgstr "지우기" + +msgid "show full" +msgstr "전체 보이기" + +msgid "show summary" +msgstr "간략한 설명 보이기" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "글쓴이 : %s, 글쓴 시간: %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "글쓴이 : %s, 글쓴 시간: %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "글쓴이 : %s, 글쓴 시간: %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "글쓴이 : %s, 글쓴 시간: %s" + +msgid "Comment change confirmation" +msgstr "댓글 수정 확인" + +msgid "Comment added successfully" +msgstr "댓글을 달았습니다." + +msgid "Comment deleted successfully" +msgstr "댓글을 지웠습니다." + +msgid "Comment modified successfully" +msgstr "댓글을 수정했습니다." + +#, c-format +msgid "Back to %s" +msgstr "%s으(로) 돌아가기" + +msgid "Comments Settings" +msgstr "댓글 설정" + +msgid "Settings saved successfully" +msgstr "설정값이 저장되었습니다." + +msgid "Show link for Latest Comments:" +msgstr "최근 댓글을 위한 연결 보이기" + +msgid "Number of comments on Latest Comments page:" +msgstr "마지막 댓글 페이지에서의 댓글수:" + +msgid "Invalid value" +msgstr "설정값 오류" + +msgid "Reset" +msgstr "다시" + +msgid "Delete this comment?" +msgstr "정말 지우시겠습니까?" + +msgid "Are you sure?" +msgstr "정말입니까?" + +msgid "Delete this comment? There is no undo!" +msgstr "이 댓글을 지우시겠습니까? 되돌릴수 없습니다." + +msgid "Delete" +msgstr "지우기" + +msgid "Edit comment" +msgstr "댓글 편집" + +msgid "You must enter a username." +msgstr "사용자 이름을 입력하십시요" + +msgid "The username you entered is invalid." +msgstr "입력한 사용자 이름이 잘못되었습니다." + +msgid "Host" +msgstr "호스트" + +msgid "You must enter a comment" +msgstr "댓글을 입력하십시오." + +msgid "Latest Comments" +msgstr "최근 댓글" + +msgid "Comment changed successfully" +msgstr "댓글이 수정되었습니다." + +msgid "There are no comments for this item" +msgstr "이 아이템에는 댓글이 없습니다." + +msgid "Recent comments" +msgstr "최근 댓글" + +#, c-format +msgid "(view all %d comments)" +msgstr "%d개의 댓글 모두 보기" + +msgid "Show comments" +msgstr "댓글 보여주기" + +msgid "Number of comments" +msgstr "댓글 수" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "You must enter a subject!" +#~ msgstr "제목을 입력하십시요" + +#~ msgid "Date" +#~ msgstr "날짜" + +#~ msgid "The date you entered is invalid." +#~ msgstr "입력한 날짜가 잘못되었습니다." + +#~ msgid "You must enter a date" +#~ msgstr "날짜를 입력하십시오." + +#~ msgid "You must enter a subject" +#~ msgstr "제목을 입력하십시오." diff --git a/Source/gallery2/modules/comment/po/lt.po b/Source/gallery2/modules/comment/po/lt.po new file mode 100644 index 0000000..ce2abf0 --- /dev/null +++ b/Source/gallery2/modules/comment/po/lt.po @@ -0,0 +1,275 @@ +# $Id: lt.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Darius Žitkevičius , 2006. +# Darius Zitkevicius , 2007. +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-03-08 23:57+0200\n" +"Last-Translator: Darius Zitkevicius \n" +"Language-Team: Lithuanian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%" +"100>=20) ? 1 : 2);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Add Comment" +msgstr "Rašyti komentarą" + +msgid "add comment" +msgstr "rašyti komentarą" + +msgid "show comments" +msgstr "rodyti komentarus" + +msgid "Comments" +msgstr "Kometarai" + +msgid "User commenting system" +msgstr "Vartotojo komentavimo sistema" + +msgid "Extra Data" +msgstr "Papildomi duomenys" + +msgid "[comment] Add comments" +msgstr "[comment] Rašyti komentarus" + +msgid "[comment] Edit comments" +msgstr "[comment] Taisyti komentarus" + +msgid "[comment] Delete comments" +msgstr "[comment] Trinti komentarus" + +msgid "[comment] View comments" +msgstr "[comment] Žiūrėti komentarus" + +msgid "[comment] All access" +msgstr "[comment] Visos teisės" + +msgid "View Latest Comments" +msgstr "Žiūrėti naujausius komentarus" + +msgid "View Comments" +msgstr "Žiūrėti komentarus" + +#, c-format +msgid "Comments: %d" +msgstr "Komentarų: %d" + +msgid "Guest Comments" +msgstr "Svečių komentarai" + +msgid "Comment Module" +msgstr "Komentarų modulis" + +msgid "Search comments" +msgstr "Ieškoti komentarų" + +msgid "Subject" +msgstr "Antraštė" + +msgid "Comment" +msgstr "Komentaras" + +msgid "Commenter" +msgstr "Komentavo" + +msgid "guest" +msgstr "svečias" + +msgid "Comment Preview" +msgstr "Komentaro peržiūra" + +msgid "Name" +msgstr "Vardas" + +msgid "Posted by" +msgstr "Įrašė" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(būtina)" + +msgid "You must enter a comment!" +msgstr "Reikia įvesti komentarą!" + +msgid "Preview" +msgstr "Peržiūra" + +msgid "Save" +msgstr "Išsaugoti" + +msgid "Cancel" +msgstr "Atšaukti" + +msgid "edit" +msgstr "taisyti" + +msgid "delete" +msgstr "trinti" + +msgid "show full" +msgstr "rodyti visą" + +msgid "show summary" +msgstr "rodyti santrauką" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Komentavo %s %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Komentavo %s %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Komentavo %s (svečias) iš %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Komentavo %s (svečias) iš %s" + +msgid "Comment change confirmation" +msgstr "Komentaro taisymo patvirtinimas" + +msgid "Comment added successfully" +msgstr "Komentaras pridėtas sėkmingai" + +msgid "Comment deleted successfully" +msgstr "Komentaras ištrintas sėkmingai" + +msgid "Comment modified successfully" +msgstr "Komentaras pataisytas sėkmingai" + +#, c-format +msgid "Back to %s" +msgstr "Atgal į %s" + +msgid "Comments Settings" +msgstr "Komentarų nustatymai" + +msgid "Settings saved successfully" +msgstr "Nustatymai išsaugoti sėkmingai" + +msgid "Show link for Latest Comments:" +msgstr "Rodyti nuorodą į naujausius komentarus:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Komentarų skaičius naujausių komentarų puslapyje:" + +msgid "Invalid value" +msgstr "Netinkama reikšmė" + +msgid "Reset" +msgstr "Anuliuoti" + +msgid "Delete this comment?" +msgstr "Trinti šį komentarą?" + +msgid "Are you sure?" +msgstr "Ar jūs įsitikinęs?" + +msgid "Delete this comment? There is no undo!" +msgstr "Ištrinti šį komentarą? Galimybės atšaukti nebus!" + +msgid "Delete" +msgstr "Trinti" + +msgid "Edit comment" +msgstr "Taisyti komentarą" + +msgid "You must enter a username." +msgstr "Reikia įvesti vartotojo vardą." + +msgid "The username you entered is invalid." +msgstr "Įvestas vartotojo vardas neteisingas." + +msgid "Host" +msgstr "Mazgas" + +msgid "You must enter a comment" +msgstr "Reikia įvesti komentarą" + +msgid "Latest Comments" +msgstr "Naujausi komentarai" + +msgid "Comment changed successfully" +msgstr "Komentaras pataisytas sėkmingai" + +msgid "There are no comments for this item" +msgstr "Šiam objektui komentarų nėra" + +msgid "Recent comments" +msgstr "Paskutiniai komentarai" + +#, c-format +msgid "(view all %d comments)" +msgstr "(žiūrėti visus %d komentarus)" + +msgid "Show comments" +msgstr "Rodyti komentarus" + +msgid "Number of comments" +msgstr "Komentarų skaičius" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Rodyti teksto įvedimo lauką, kuris išsiplečia iki visos formos" diff --git a/Source/gallery2/modules/comment/po/lv.po b/Source/gallery2/modules/comment/po/lv.po new file mode 100644 index 0000000..28acc42 --- /dev/null +++ b/Source/gallery2/modules/comment/po/lv.po @@ -0,0 +1,272 @@ +# $Id: lv.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-10-01 18:56+0200\n" +"Last-Translator: Jānis Baiža \n" +"Language-Team: Latvian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Latvian\n" +"X-Poedit-Country: LATVIA\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Add Comment" +msgstr "Pievienot komentāru" + +msgid "add comment" +msgstr "pievienot komentāru" + +msgid "show comments" +msgstr "rādīt komentārus" + +msgid "Comments" +msgstr "Komentāri" + +msgid "User commenting system" +msgstr "Lietotāju komentāru sistēma" + +msgid "Extra Data" +msgstr "Ekstra dati" + +msgid "[comment] Add comments" +msgstr "[komentāri] Pievienot komentārus" + +msgid "[comment] Edit comments" +msgstr "[komentāri] Labot komentārus" + +msgid "[comment] Delete comments" +msgstr "[komentāri] Dzēst komentārus" + +msgid "[comment] View comments" +msgstr "[komentāri] Skatīt komentārus" + +msgid "[comment] All access" +msgstr "[komentāri] Visa pieeja" + +msgid "View Latest Comments" +msgstr "Apskatīt pēdējos komentārus" + +msgid "View Comments" +msgstr "Apskatīt komentārus" + +#, c-format +msgid "Comments: %d" +msgstr "Komentāri: %d" + +msgid "Guest Comments" +msgstr "Viesu komentāri" + +msgid "Comment Module" +msgstr "Komentāru modulis" + +msgid "Search comments" +msgstr "Meklēt komentārus" + +msgid "Subject" +msgstr "Temats" + +msgid "Comment" +msgstr "Komentārs" + +msgid "Commenter" +msgstr "Komentētājs" + +msgid "guest" +msgstr "viesis" + +msgid "Comment Preview" +msgstr "Priekšskatīt komentāru" + +msgid "Name" +msgstr "Nosaukums" + +msgid "Posted by" +msgstr "Ievietojis" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(obligāts)" + +msgid "You must enter a comment!" +msgstr "Jums ir jāievada komentārs!" + +msgid "Preview" +msgstr "Priekšskatīt" + +msgid "Save" +msgstr "Saglabāt" + +msgid "Cancel" +msgstr "Atsaukt" + +msgid "edit" +msgstr "labot" + +msgid "delete" +msgstr "dzēst" + +msgid "show full" +msgstr "apskatīt pilnu" + +msgid "show summary" +msgstr "apsktatīt kopsavilkumu" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Ievietojis %s %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Ievietojis %s %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Ievietojis %s (viesis) %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Ievietojis %s (viesis) %s" + +msgid "Comment change confirmation" +msgstr "Komentāra izmaiņu apstiprināšana" + +msgid "Comment added successfully" +msgstr "Komentārs pievienots veiksmīgi" + +msgid "Comment deleted successfully" +msgstr "Komentārs izdzēsts veiksmīgi" + +msgid "Comment modified successfully" +msgstr "Komentārs labots veiksmīgi" + +#, c-format +msgid "Back to %s" +msgstr "Atpakaļ uz %s" + +msgid "Comments Settings" +msgstr "Komentāru iestatījumi" + +msgid "Settings saved successfully" +msgstr "Iestatījumi saglabāti veiksmīgi" + +msgid "Show link for Latest Comments:" +msgstr "Rādīt pēdējo komentāru saiti:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Komentāru skaits pēdējo komentāru lapā" + +msgid "Invalid value" +msgstr "Nekorekta vērtība" + +msgid "Reset" +msgstr "Atiestatīt" + +msgid "Delete this comment?" +msgstr "Dzēst šo komentāru?" + +msgid "Are you sure?" +msgstr "Vai Jūs esat pārliecināts?" + +msgid "Delete this comment? There is no undo!" +msgstr "Dzēst šo komentāru? Nav atsaukšanas iespējas" + +msgid "Delete" +msgstr "Dzēst" + +msgid "Edit comment" +msgstr "Labot komentāru" + +msgid "You must enter a username." +msgstr "Jums ir jāievada lietotājsvārds." + +msgid "The username you entered is invalid." +msgstr "Jūsu ievadītais lietotājvārds nav korekts." + +msgid "Host" +msgstr "Saimnieks" + +msgid "You must enter a comment" +msgstr "Jums ir jāvieda komentārs" + +msgid "Latest Comments" +msgstr "Pēdējie komentāri" + +msgid "Comment changed successfully" +msgstr "Komentārs izmainīts veiksmīgi" + +msgid "There are no comments for this item" +msgstr "Šim vienumam nav komentāru" + +msgid "Recent comments" +msgstr "Nesenie komentāri" + +#, c-format +msgid "(view all %d comments)" +msgstr "(skatīt visus %d komentārus)" + +msgid "Show comments" +msgstr "Rādīt komentārus" + +msgid "Number of comments" +msgstr "Komentāru skaits" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Rādīt teksta lauku, kurš paplašināts pilnā formā" diff --git a/Source/gallery2/modules/comment/po/nl.po b/Source/gallery2/modules/comment/po/nl.po new file mode 100644 index 0000000..ca80fbc --- /dev/null +++ b/Source/gallery2/modules/comment/po/nl.po @@ -0,0 +1,289 @@ +# $Id: nl.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators: +# Gidie , 2005 +# Buut , Feb 2006 +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-02-25 21:11+0100\n" +"Last-Translator: Buut, Eindhoven\n" +"Language-Team: Dutch \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add Comment" +msgstr "Reactie Toevoegen" + +msgid "add comment" +msgstr "reactie toevoegen" + +msgid "show comments" +msgstr "toon reacties" + +msgid "Comments" +msgstr "Reacties" + +msgid "User commenting system" +msgstr "Bezoekers reactie systeem" + +msgid "Extra Data" +msgstr "Extra Data" + +msgid "[comment] Add comments" +msgstr "[reactie] Reactie toevoegen" + +msgid "[comment] Edit comments" +msgstr "[reactie] Reactie bewerken" + +msgid "[comment] Delete comments" +msgstr "[reactie] Verwijder reacties" + +msgid "[comment] View comments" +msgstr "[reactie] Reacties weergeven" + +msgid "[comment] All access" +msgstr "[reactie] Volledige toegang" + +msgid "View Latest Comments" +msgstr "Laatste Reacties Weergeven" + +msgid "View Comments" +msgstr "Reacties Weergeven" + +#, c-format +msgid "Comments: %d" +msgstr "Reacties: %d" + +msgid "Guest Comments" +msgstr "Bezoekers Reacties" + +msgid "Comment Module" +msgstr "Reactie Module" + +msgid "Search comments" +msgstr "Reacties zoeken" + +msgid "Subject" +msgstr "Onderwerp" + +msgid "Comment" +msgstr "Reactie" + +msgid "Commenter" +msgstr "Poster" + +#, fuzzy +msgid "guest" +msgstr "Reset" + +msgid "Comment Preview" +msgstr "Reactie vooruitblik" + +msgid "Name" +msgstr "Naam" + +msgid "Posted by" +msgstr "Geplaatst door" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(verplicht)" + +msgid "You must enter a comment!" +msgstr "U moet een reactie ingeven!" + +msgid "Preview" +msgstr "Vooruitblik" + +msgid "Save" +msgstr "Opslaan" + +msgid "Cancel" +msgstr "Annuleren" + +msgid "edit" +msgstr "bewerken" + +msgid "delete" +msgstr "verwijderen" + +msgid "show full" +msgstr "volledig weergeven" + +msgid "show summary" +msgstr "samenvatting weergeven" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Geplaatst door %s op %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Geplaatst door %s op %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Geplaatst door %s op %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Geplaatst door %s op %s" + +msgid "Comment change confirmation" +msgstr "Bevestiging reactie verandering" + +msgid "Comment added successfully" +msgstr "Reactie succesvol toegevoegd" + +msgid "Comment deleted successfully" +msgstr "Reactie succesvol verwijderd" + +msgid "Comment modified successfully" +msgstr "Reactie succesvol aangepast" + +#, c-format +msgid "Back to %s" +msgstr "Terug naar %s" + +msgid "Comments Settings" +msgstr "Instellingen Reacties" + +msgid "Settings saved successfully" +msgstr "Instellingen succesvol opgeslagen" + +msgid "Show link for Latest Comments:" +msgstr "Link voor Laatste Reacties weergeven:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Aantal reacties op Laatste Reacties pagina:" + +msgid "Invalid value" +msgstr "Ongeldige waarde" + +msgid "Reset" +msgstr "Reset" + +msgid "Delete this comment?" +msgstr "Verwijder deze reactie?" + +msgid "Are you sure?" +msgstr "Weet u het zeker?" + +msgid "Delete this comment? There is no undo!" +msgstr "Verwijder deze reactie? U kunt dit niet annuleren!" + +msgid "Delete" +msgstr "Verwijderen" + +msgid "Edit comment" +msgstr "Bewerk reactie" + +msgid "You must enter a username." +msgstr "U moet een gebruikersnaam ingeven." + +msgid "The username you entered is invalid." +msgstr "De gebruikersnaam die u ingegeven heeft is ongeldig." + +msgid "Host" +msgstr "Host" + +msgid "You must enter a comment" +msgstr "U moet een reactie ingeven" + +msgid "Latest Comments" +msgstr "Laatste Reacties" + +msgid "Comment changed successfully" +msgstr "Reactie succesvol veranderd" + +msgid "There are no comments for this item" +msgstr "Er is geen reactie voor dit item" + +msgid "Recent comments" +msgstr "Recent commentaar" + +#, c-format +msgid "(view all %d comments)" +msgstr "(bekijk commentaar [totaal %d])" + +msgid "Show comments" +msgstr "Reacties weergeven" + +msgid "Number of comments" +msgstr "Aantal reacties" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Datum" + +#~ msgid "The date you entered is invalid." +#~ msgstr "De datum die u ingegeven heeft is ongeldig." + +#~ msgid "You must enter a date" +#~ msgstr "U moet een datum ingeven" + +#~ msgid "You must enter a subject!" +#~ msgstr "U moet een onderwerp ingeven!" + +#~ msgid "You must enter a subject" +#~ msgstr "U moet een onderwerp ingeven" diff --git a/Source/gallery2/modules/comment/po/no.po b/Source/gallery2/modules/comment/po/no.po new file mode 100644 index 0000000..17a721f --- /dev/null +++ b/Source/gallery2/modules/comment/po/no.po @@ -0,0 +1,272 @@ +# $Id: no.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Sverre M. Vikan +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-10-17 11:02+0100\n" +"Last-Translator: Sverre M. Vikan \n" +"Language-Team: Norwegian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add Comment" +msgstr "Ny kommentar" + +msgid "add comment" +msgstr "ny kommentar" + +msgid "show comments" +msgstr "vis kommentarer" + +msgid "Comments" +msgstr "Kommentarer" + +msgid "User commenting system" +msgstr "Kommentarsystem for brukere" + +msgid "Extra Data" +msgstr "Ekstra data" + +msgid "[comment] Add comments" +msgstr "[kommentar] Legg til kommentarer" + +msgid "[comment] Edit comments" +msgstr "[kommentar] Rediger kommentarer" + +msgid "[comment] Delete comments" +msgstr "[kommentar] Slett kommentarer" + +msgid "[comment] View comments" +msgstr "[kommentar] Vis kommentarer" + +msgid "[comment] All access" +msgstr "[kommentar] Alle tilganger" + +msgid "View Latest Comments" +msgstr "Vis siste kommentarer" + +msgid "View Comments" +msgstr "Vis kommentarer" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentarer: %d" + +msgid "Guest Comments" +msgstr "Gjestekommentarer" + +msgid "Comment Module" +msgstr "Kommentarmodul" + +msgid "Search comments" +msgstr "Søk kommentarer" + +msgid "Subject" +msgstr "Emne" + +msgid "Comment" +msgstr "Kommentar" + +msgid "Commenter" +msgstr "Forfatter" + +msgid "guest" +msgstr "gjest" + +msgid "Comment Preview" +msgstr "Forhåndsvisning av kommentar" + +msgid "Name" +msgstr "Navn" + +msgid "Posted by" +msgstr "Lagt inn av" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(påkrevd)" + +msgid "You must enter a comment!" +msgstr "Du må skrive inn en kommentar!" + +msgid "Preview" +msgstr "Forhåndsvis" + +msgid "Save" +msgstr "Lagre" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "edit" +msgstr "rediger" + +msgid "delete" +msgstr "slett" + +msgid "show full" +msgstr "vis hele" + +msgid "show summary" +msgstr "vis sammendrag" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Lagt inn av %s den %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Lagt inn av %s den %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Lagt inn av %s (gjest) den %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Lagt inn av %s (gjest) den %s" + +msgid "Comment change confirmation" +msgstr "Bekreftelse av endring av kommentar" + +msgid "Comment added successfully" +msgstr "Vellykket lagring av kommentar" + +msgid "Comment deleted successfully" +msgstr "Vellykket sletting av kommentar" + +msgid "Comment modified successfully" +msgstr "Vellykket endring av kommentar" + +#, c-format +msgid "Back to %s" +msgstr "Tilbake til %s" + +msgid "Comments Settings" +msgstr "Innstillinger for Kommentarer" + +msgid "Settings saved successfully" +msgstr "Vellykket lagring av innstillinger" + +msgid "Show link for Latest Comments:" +msgstr "Vis lenke for siste kommentarer:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Antall kommentarer på siden for siste kommentarer:" + +msgid "Invalid value" +msgstr "Ugyldig verdi" + +msgid "Reset" +msgstr "Nullstill" + +msgid "Delete this comment?" +msgstr "Slette denne kommentaren?" + +msgid "Are you sure?" +msgstr "Er du sikker?" + +msgid "Delete this comment? There is no undo!" +msgstr "Slette denne kommentaren? Du kan ikke angre!" + +msgid "Delete" +msgstr "Slett" + +msgid "Edit comment" +msgstr "Rediger kommentar" + +msgid "You must enter a username." +msgstr "Du må skrive inn et brukernavn." + +msgid "The username you entered is invalid." +msgstr "Brukernavnet du skrev inn er ugyldig." + +msgid "Host" +msgstr "Vert" + +msgid "You must enter a comment" +msgstr "Du må skrive inn en kommentar" + +msgid "Latest Comments" +msgstr "Siste kommentarer" + +msgid "Comment changed successfully" +msgstr "Vellykket endring av kommentar" + +msgid "There are no comments for this item" +msgstr "Det er ingen kommentarer for dette objektet" + +msgid "Recent comments" +msgstr "Siste kommentarer" + +#, c-format +msgid "(view all %d comments)" +msgstr "(vis alle %d kommentarer)" + +msgid "Show comments" +msgstr "Vis kommentarer" + +msgid "Number of comments" +msgstr "Antall kommentarer" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Vis en tekstboks som utvides til et fullt skjema" diff --git a/Source/gallery2/modules/comment/po/pl.po b/Source/gallery2/modules/comment/po/pl.po new file mode 100644 index 0000000..4ddc3db --- /dev/null +++ b/Source/gallery2/modules/comment/po/pl.po @@ -0,0 +1,272 @@ +# $Id: pl.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-12-27 16:34+0100\n" +"Last-Translator: Kappana \n" +"Language-Team: Polish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? " +"1 : 2);\n" +"X-Poedit-Language: Polish\n" +"X-Poedit-Country: POLAND\n" + +msgid "Add Comment" +msgstr "Dodaj komentarz" + +msgid "add comment" +msgstr "dodaj komentarz" + +msgid "show comments" +msgstr "obejrzyj komentarze" + +msgid "Comments" +msgstr "Komentarze" + +msgid "User commenting system" +msgstr "Komentarze użytkownika" + +msgid "Extra Data" +msgstr "Dodatkowe dane" + +msgid "[comment] Add comments" +msgstr "[komentarz] Dodaj komentarze" + +msgid "[comment] Edit comments" +msgstr "[komentarz] Edytuj komentarze" + +msgid "[comment] Delete comments" +msgstr "[komentarz] Kasuj komentarze" + +msgid "[comment] View comments" +msgstr "[komentarz] Obejrzyj komentarze" + +msgid "[comment] All access" +msgstr "[komentarz] Pełny dostęp" + +msgid "View Latest Comments" +msgstr "Obejrzyj komentarze" + +msgid "View Comments" +msgstr "Obejrzyj komentarze" + +#, c-format +msgid "Comments: %d" +msgstr "Komentarze: %d" + +msgid "Guest Comments" +msgstr "Komentarze gości" + +msgid "Comment Module" +msgstr "Moduł komentarzy" + +msgid "Search comments" +msgstr "Przeszukaj komentarze" + +msgid "Subject" +msgstr "Temat" + +msgid "Comment" +msgstr "Komentarz" + +msgid "Commenter" +msgstr "Komentator" + +msgid "guest" +msgstr "gość" + +msgid "Comment Preview" +msgstr "Podgląd komentarza" + +msgid "Name" +msgstr "Imię i nazwisko" + +msgid "Posted by" +msgstr "Przesłany przez" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(wymagany)" + +msgid "You must enter a comment!" +msgstr "Proszę wprowadzić komentarz!" + +msgid "Preview" +msgstr "Podgląd" + +msgid "Save" +msgstr "Zachowaj" + +msgid "Cancel" +msgstr "Anuluj" + +msgid "edit" +msgstr "edytuj" + +msgid "delete" +msgstr "kasuj" + +msgid "show full" +msgstr "pokaż wszystko" + +msgid "show summary" +msgstr "pokaż podsumowanie" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Przesłany przez %s na %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Przesłany przez %s w %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Przesłany przez %s (gość) na %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Przesłany przez %s (gość) w %s" + +msgid "Comment change confirmation" +msgstr "Potwierdzenie zmiany komentarza" + +msgid "Comment added successfully" +msgstr "Kometarz został dodany" + +msgid "Comment deleted successfully" +msgstr "Komentarz został skasowany" + +msgid "Comment modified successfully" +msgstr "Komentarz został zmodyfikowany." + +#, c-format +msgid "Back to %s" +msgstr "Powrót do %s" + +msgid "Comments Settings" +msgstr "Ustawienia komentarzy" + +msgid "Settings saved successfully" +msgstr "Ustawienia zapisane" + +msgid "Show link for Latest Comments:" +msgstr "Pokaż link do strony z komentarzami:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Ilość komentarzy na stronie:" + +msgid "Invalid value" +msgstr "Nieprawidłowa wartość" + +msgid "Reset" +msgstr "Przywróć ustawienia domyślne" + +msgid "Delete this comment?" +msgstr "Skasować ten komentarz?" + +msgid "Are you sure?" +msgstr "Czy jesteś pewien?" + +msgid "Delete this comment? There is no undo!" +msgstr "Skasować ten komentarz? Operacja jest nieodwracalna!" + +msgid "Delete" +msgstr "Kasuj" + +msgid "Edit comment" +msgstr "Edytuj komentarz" + +msgid "You must enter a username." +msgstr "Proszę wprowadzić nazwę użytkownika." + +msgid "The username you entered is invalid." +msgstr "Wprowadzona nazwa użytkownika jest nieprawidłowa." + +msgid "Host" +msgstr "Host" + +msgid "You must enter a comment" +msgstr "Proszę wprowadzić komentarz" + +msgid "Latest Comments" +msgstr "Ostatnie komentarze" + +msgid "Comment changed successfully" +msgstr "Komentarz został zmieniony" + +msgid "There are no comments for this item" +msgstr "Nie ma komentarzy do tej pozycji" + +msgid "Recent comments" +msgstr "Ostatnie komentarze" + +#, c-format +msgid "(view all %d comments)" +msgstr "(zobacz wszystkie komentarze %d)" + +msgid "Show comments" +msgstr "Obejrzyj komentarze" + +msgid "Number of comments" +msgstr "Ilość komentarzy" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Pokaż pole tekstowe, które rozwija się do pelnego formularza" diff --git a/Source/gallery2/modules/comment/po/pt.po b/Source/gallery2/modules/comment/po/pt.po new file mode 100644 index 0000000..ce0606d --- /dev/null +++ b/Source/gallery2/modules/comment/po/pt.po @@ -0,0 +1,305 @@ +# $Id: pt.po 16475 2007-05-31 17:44:01Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-05-31 10:31-0700\n" +"PO-Revision-Date: 2003-10-01 15:46+0900\n" +"Last-Translator: Hugo Cruz \n" +"Language-Team: Portuguese Portugal\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1 || n == 0);\n" + +msgid "Add Comment" +msgstr "Adicionar Comentário" + +msgid "add comment" +msgstr "adicionar comentário" + +#, fuzzy +msgid "show comments" +msgstr "Ver Comentários" + +msgid "Comments" +msgstr "Comentários" + +#, fuzzy +msgid "User commenting system" +msgstr "Ver Comentários" + +msgid "Extra Data" +msgstr "" + +msgid "[comment] Add comments" +msgstr "[comment] Adicionar comentários" + +msgid "[comment] Edit comments" +msgstr "[comment] Editar comentários" + +msgid "[comment] Delete comments" +msgstr "[comment] Apagar comentários" + +msgid "[comment] View comments" +msgstr "[comment] Ver comentários" + +msgid "[comment] All access" +msgstr "[comment] Acesso a todos" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Ver Comentários" + +msgid "View Comments" +msgstr "Ver Comentários" + +#, fuzzy, c-format +msgid "Comments: %d" +msgstr "Comentário: " + +#, fuzzy +msgid "Guest Comments" +msgstr "Ver Comentários" + +msgid "Comment Module" +msgstr "Módulo Commentário" + +msgid "Search comments" +msgstr "Pesquisar comentários" + +msgid "Subject" +msgstr "Tema" + +msgid "Comment" +msgstr "Comantário" + +msgid "Commenter" +msgstr "Comentador" + +msgid "guest" +msgstr "convidado" + +msgid "Comment Preview" +msgstr "Previsão do Comentário" + +msgid "Name" +msgstr "Nome" + +msgid "Posted by" +msgstr "Escrito por" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +#, fuzzy +msgid "(required)" +msgstr "obrigatório" + +msgid "You must enter a comment!" +msgstr "Deve introduzir um comentário!" + +#, fuzzy +msgid "Preview" +msgstr "pré-visualizar" + +msgid "Save" +msgstr "Gravar" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "apagar" + +msgid "show full" +msgstr "" + +msgid "show summary" +msgstr "" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Escrito por %s em %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Escrito por %s em %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Escrito por %s em %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Escrito por %s em %s" + +msgid "Comment change confirmation" +msgstr "Confirmação da alteração do Comentário" + +#, fuzzy +msgid "Comment added successfully" +msgstr "Comentário adicionado com sucesso" + +#, fuzzy +msgid "Comment deleted successfully" +msgstr "Comentário apagado com sucesso" + +#, fuzzy +msgid "Comment modified successfully" +msgstr "Comentário modificado com sucesso" + +#, c-format +msgid "Back to %s" +msgstr "Voltar para %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Comentários" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Comentário adicionado com sucesso" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +#, fuzzy +msgid "Reset" +msgstr "reset" + +msgid "Delete this comment?" +msgstr "Apagar este comentário?" + +msgid "Are you sure?" +msgstr "Tem a certeza?" + +msgid "Delete this comment? There is no undo!" +msgstr "Apagar este comentário? Não é possível reverter!" + +msgid "Delete" +msgstr "Apagar" + +msgid "Edit comment" +msgstr "Editar comentário" + +msgid "You must enter a username." +msgstr "Deve introduzir o nome de utilizador." + +msgid "The username you entered is invalid." +msgstr "O nome de utilizador introduzido é inválido" + +#, fuzzy +msgid "Host" +msgstr "Servidor: " + +msgid "You must enter a comment" +msgstr "Deve introduzir um comentário" + +#, fuzzy +msgid "Latest Comments" +msgstr "Ver Comentários" + +msgid "Comment changed successfully" +msgstr "Comentário alterado com sucesso" + +msgid "There are no comments for this item" +msgstr "Não existem comentários para este item" + +msgid "Recent comments" +msgstr "Comentários recentes" + +#, c-format +msgid "(view all %d comments)" +msgstr "(ver todos os %d comentários)" + +#, fuzzy +msgid "Show comments" +msgstr "Ver Comentários" + +#, fuzzy +msgid "Number of comments" +msgstr "Pesquisar comentários" + +msgid "1" +msgstr "" + +msgid "2" +msgstr "" + +msgid "3" +msgstr "" + +msgid "4" +msgstr "" + +msgid "5" +msgstr "" + +msgid "10" +msgstr "" + +msgid "20" +msgstr "" + +msgid "30" +msgstr "" + +msgid "50" +msgstr "" + +msgid "100" +msgstr "" + +msgid "999" +msgstr "" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#, fuzzy +#~ msgid "Date" +#~ msgstr "Data: " + +#~ msgid "The date you entered is invalid." +#~ msgstr "A data introduzida é inválida." + +#~ msgid "You must enter a date" +#~ msgstr "Deve introduzir a data" + +#~ msgid "You must enter a subject!" +#~ msgstr "Deve introduzir o tema!" + +#~ msgid "You must enter a subject" +#~ msgstr "Deve introduzir o tema" + +#~ msgid "[comment] Search comments" +#~ msgstr "[comment] Pesquisar comentários" diff --git a/Source/gallery2/modules/comment/po/pt_BR.po b/Source/gallery2/modules/comment/po/pt_BR.po new file mode 100644 index 0000000..f8806e2 --- /dev/null +++ b/Source/gallery2/modules/comment/po/pt_BR.po @@ -0,0 +1,294 @@ +# $Id: pt_BR.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2004-08-16 15:25+0100\n" +"Last-Translator: José Ricardo\n" +"Language-Team: Brazilian Portuguese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Add Comment" +msgstr "Adicionar um comentário" + +msgid "add comment" +msgstr "adicionar comentário" + +msgid "show comments" +msgstr "ver comentário" + +msgid "Comments" +msgstr "Comentários" + +msgid "User commenting system" +msgstr "Sistema de comentário de usuários" + +msgid "Extra Data" +msgstr "Dados Adicionais" + +msgid "[comment] Add comments" +msgstr "[comment] Adicionar comentá�rio" + +msgid "[comment] Edit comments" +msgstr "[comment] Editar comentários" + +msgid "[comment] Delete comments" +msgstr "[comment] Apagar comentários" + +msgid "[comment] View comments" +msgstr "[comment] Ver comentários" + +msgid "[comment] All access" +msgstr "[comment] Acesso total" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Ver Comentários" + +msgid "View Comments" +msgstr "Ver Comentários" + +#, c-format +msgid "Comments: %d" +msgstr "Comentários: %d" + +#, fuzzy +msgid "Guest Comments" +msgstr "Ver Comentários" + +msgid "Comment Module" +msgstr "Módulo de comentário" + +msgid "Search comments" +msgstr "Procurar comentários" + +msgid "Subject" +msgstr "Assunto" + +msgid "Comment" +msgstr "Comentário" + +msgid "Commenter" +msgstr "Comentado por" + +#, fuzzy +msgid "guest" +msgstr "Reiniciar" + +msgid "Comment Preview" +msgstr "Prévia do Comentário" + +msgid "Name" +msgstr "Nome" + +msgid "Posted by" +msgstr "Enviado por" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "obrigatório" + +msgid "You must enter a comment!" +msgstr "Você deve entrar um comentário!" + +msgid "Preview" +msgstr "Prévia" + +msgid "Save" +msgstr "Salvar" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "apagar" + +msgid "show full" +msgstr "mostrar tudo" + +msgid "show summary" +msgstr "mostrar resumo" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Enviado por %s em %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Enviado por %s em %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Enviado por %s em %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Enviado por %s em %s" + +msgid "Comment change confirmation" +msgstr "Confirmação de modificação no comentário" + +msgid "Comment added successfully" +msgstr "Comentário adicionado com sucesso" + +msgid "Comment deleted successfully" +msgstr "Comentários apagados com sucesso" + +msgid "Comment modified successfully" +msgstr "Comentário modificado com sucesso" + +#, c-format +msgid "Back to %s" +msgstr "Voltar para %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Comentários" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Comentário adicionado com sucesso" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "Reiniciar" + +msgid "Delete this comment?" +msgstr "Apagar este comentário?" + +msgid "Are you sure?" +msgstr "Você tem certeza?" + +msgid "Delete this comment? There is no undo!" +msgstr "Apagar este comentário? Não há como desfazer esta ação!" + +msgid "Delete" +msgstr "Apagar" + +msgid "Edit comment" +msgstr "Editar coment´rio" + +msgid "You must enter a username." +msgstr "Você deve especificar um nome de usuário." + +msgid "The username you entered is invalid." +msgstr "O nome de usuário não é válido." + +msgid "Host" +msgstr "Host: " + +msgid "You must enter a comment" +msgstr "Você deve fazer um comentário" + +#, fuzzy +msgid "Latest Comments" +msgstr "Ver Comentários" + +msgid "Comment changed successfully" +msgstr "Comentário alterado com sucesso" + +msgid "There are no comments for this item" +msgstr "Não existem comentários para este item" + +msgid "Recent comments" +msgstr "Últimos comentários" + +#, c-format +msgid "(view all %d comments)" +msgstr "(ver todos os %d comentários)" + +msgid "Show comments" +msgstr "Ver comentários" + +msgid "Number of comments" +msgstr "NÚmero de comentários" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "" + +msgid "50" +msgstr "" + +msgid "100" +msgstr "" + +msgid "999" +msgstr "" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Data" + +#~ msgid "The date you entered is invalid." +#~ msgstr "A data digitada nao é válida." + +#~ msgid "You must enter a date" +#~ msgstr "Você deve digitar uma data" + +#~ msgid "You must enter a subject!" +#~ msgstr "Você deve especificar um assunto!" + +#~ msgid "You must enter a subject" +#~ msgstr "Você deve especificar um assunto" + +#~ msgid "[comment] Search comments" +#~ msgstr "[comment] Procura coment�rios" diff --git a/Source/gallery2/modules/comment/po/ro.po b/Source/gallery2/modules/comment/po/ro.po new file mode 100644 index 0000000..ac73963 --- /dev/null +++ b/Source/gallery2/modules/comment/po/ro.po @@ -0,0 +1,270 @@ +# $Id: ro.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-03-15 16:49+0100\n" +"Last-Translator: Serban Constantinescu \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.3\n" + +msgid "Add Comment" +msgstr "Adauga comentariu" + +msgid "add comment" +msgstr "adauga comentariu" + +msgid "show comments" +msgstr "vizualizeaza comentarii" + +msgid "Comments" +msgstr "Comentarii" + +msgid "User commenting system" +msgstr "Sistem de introducere comentarii utilizator" + +msgid "Extra Data" +msgstr "Extra date" + +msgid "[comment] Add comments" +msgstr "[comentarii] Adauga comentarii" + +msgid "[comment] Edit comments" +msgstr "[comentarii] Modifica comentarii" + +msgid "[comment] Delete comments" +msgstr "[comentarii] Sterge comentarii" + +msgid "[comment] View comments" +msgstr "[comentarii] Vizualizeaza comentarii" + +msgid "[comment] All access" +msgstr "[comentarii] Toate drepturile" + +msgid "View Latest Comments" +msgstr "Afiseaza ultimele comentarii" + +msgid "View Comments" +msgstr "Afiseaza comentarii" + +#, c-format +msgid "Comments: %d" +msgstr "Comentarii: %d" + +msgid "Guest Comments" +msgstr "Comentarii ale vizitatorilor" + +msgid "Comment Module" +msgstr "Modul de comentarii" + +msgid "Search comments" +msgstr "Cauta in comentarii" + +msgid "Subject" +msgstr "Subiect" + +msgid "Comment" +msgstr "Comentariu" + +msgid "Commenter" +msgstr "Autor" + +msgid "guest" +msgstr "Vizitator" + +msgid "Comment Preview" +msgstr "Pre-vizualizare comentariu" + +msgid "Name" +msgstr "Nume" + +msgid "Posted by" +msgstr "Inserat de" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(obligatoriu)" + +msgid "You must enter a comment!" +msgstr "Trebuie sa introduci un comentariu!" + +msgid "Preview" +msgstr "pre-vizualizare" + +msgid "Save" +msgstr "Salveaza" + +msgid "Cancel" +msgstr "Anuleaza" + +msgid "edit" +msgstr "modifica" + +msgid "delete" +msgstr "sterge" + +msgid "show full" +msgstr "afiseaza tot" + +msgid "show summary" +msgstr "afiseaza sumar" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Introdus de %s la %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Introdus de %s la %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Introdus de %s (vizitator)la %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Introdus de %s (vizitator) la %s" + +msgid "Comment change confirmation" +msgstr "Confirma schimbarea comentariului" + +msgid "Comment added successfully" +msgstr "Comentariul a fost adaugat" + +msgid "Comment deleted successfully" +msgstr "Comentariul a fost sters" + +msgid "Comment modified successfully" +msgstr "Comentariul a fost modificat" + +#, c-format +msgid "Back to %s" +msgstr "Inapoi la %s" + +msgid "Comments Settings" +msgstr "Configurare comentarii" + +msgid "Settings saved successfully" +msgstr "Configurarile au fost salvate" + +msgid "Show link for Latest Comments:" +msgstr "Afiseaza link-ul catre ultimele comentarii:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Numerul de comentarii pe pagina de ultimele comentarii:" + +msgid "Invalid value" +msgstr "Valoare invalida" + +msgid "Reset" +msgstr "Reset" + +msgid "Delete this comment?" +msgstr "Sterg acest comentariu?" + +msgid "Are you sure?" +msgstr "Esti sigur?" + +msgid "Delete this comment? There is no undo!" +msgstr "Sterg acest comentariu? Nu exista undo!" + +msgid "Delete" +msgstr "Sterge" + +msgid "Edit comment" +msgstr "Modifica comentariu" + +msgid "You must enter a username." +msgstr "Trebuie sa introduci un nume de utilizator." + +msgid "The username you entered is invalid." +msgstr "Acest utilizator nu este recunoscut." + +msgid "Host" +msgstr "Gazda" + +msgid "You must enter a comment" +msgstr "Trebuie sa introduci un comentariu" + +msgid "Latest Comments" +msgstr "Ultimele comentarii" + +msgid "Comment changed successfully" +msgstr "Comentariul a fost modificat" + +msgid "There are no comments for this item" +msgstr "Nu exista comentarii pentru acest obiect" + +msgid "Recent comments" +msgstr "Ultimele comentarii" + +#, c-format +msgid "(view all %d comments)" +msgstr "(afisez toate cele %d comentarii)" + +msgid "Show comments" +msgstr "Afiseaza comentarii" + +msgid "Number of comments" +msgstr "Numar de comentarii" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Arata o casuta text ce se extinde la forma plina" diff --git a/Source/gallery2/modules/comment/po/ru.po b/Source/gallery2/modules/comment/po/ru.po new file mode 100644 index 0000000..21696af --- /dev/null +++ b/Source/gallery2/modules/comment/po/ru.po @@ -0,0 +1,301 @@ +# $Id: ru.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Konstantin Ivanov +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-03-17 17:41+0300\n" +"Last-Translator: Konstantin Ivanov \n" +"Language-Team: Russian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" +"X-Poedit-Language: Russian\n" +"X-Poedit-Country: RUSSIAN FEDERATION\n" + +msgid "Add Comment" +msgstr "Добавить Комментарий" + +msgid "add comment" +msgstr "добавить комментарий" + +msgid "show comments" +msgstr "показать комментарии" + +msgid "Comments" +msgstr "Комментарии" + +msgid "User commenting system" +msgstr "Добавление комментариев пользователями" + +msgid "Extra Data" +msgstr "Дополнительные данные" + +msgid "[comment] Add comments" +msgstr "[комментирование] Добавлять комментарии" + +msgid "[comment] Edit comments" +msgstr "[комментирование] Редактировать комментарии" + +msgid "[comment] Delete comments" +msgstr "[комментирование] Стирать комментарии" + +msgid "[comment] View comments" +msgstr "[комментирование] Просматривать комментарии" + +msgid "[comment] All access" +msgstr "[комментирование] Полный доступ" + +msgid "View Latest Comments" +msgstr "Последние Комментарии" + +msgid "View Comments" +msgstr "Смотреть Комментарии" + +#, c-format +msgid "Comments: %d" +msgstr "Комментарии: %d" + +msgid "Guest Comments" +msgstr "Комментарии незарегистрированных пользователей" + +msgid "Comment Module" +msgstr "Модуль Комментарии" + +msgid "Search comments" +msgstr "Искать в комментариях" + +msgid "Subject" +msgstr "Заголовок" + +msgid "Comment" +msgstr "Комментарий" + +msgid "Commenter" +msgstr "Автор" + +#, fuzzy +msgid "guest" +msgstr "Сбросить" + +msgid "Comment Preview" +msgstr "Предварительный просмотр комментария" + +msgid "Name" +msgstr "Название" + +msgid "Posted by" +msgstr "Отправитель" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(обязательно)" + +msgid "You must enter a comment!" +msgstr "Вам необходимо заполнить поле Комментарий!" + +msgid "Preview" +msgstr "Предварительный просмотр" + +msgid "Save" +msgstr "Сохранить" + +msgid "Cancel" +msgstr "Отменить" + +msgid "edit" +msgstr "редактировать" + +msgid "delete" +msgstr "удалить" + +msgid "show full" +msgstr "показать целиком" + +msgid "show summary" +msgstr "показать только начало" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Отправитель: %s в %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Отправитель: %s в %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Отправитель: %s в %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Отправитель: %s в %s" + +msgid "Comment change confirmation" +msgstr "Подтвердите изменение комментария" + +msgid "Comment added successfully" +msgstr "Комментарий успешно добавлен" + +msgid "Comment deleted successfully" +msgstr "Комментарий успешно удален" + +msgid "Comment modified successfully" +msgstr "Комментарий успешно изменен" + +#, c-format +msgid "Back to %s" +msgstr "Назад в %s" + +msgid "Comments Settings" +msgstr "Настройки Комментариев" + +msgid "Settings saved successfully" +msgstr "Настройки успешно сохранены" + +msgid "Show link for Latest Comments:" +msgstr "Показывать ссылку для Последних Комментариев" + +msgid "Number of comments on Latest Comments page:" +msgstr "Число комментариев на странице Последние Комментарии:" + +msgid "Invalid value" +msgstr "Неверное значение" + +msgid "Reset" +msgstr "Сбросить" + +msgid "Delete this comment?" +msgstr "Хотите удалить комментарий?" + +msgid "Are you sure?" +msgstr "Вы уверены?" + +msgid "Delete this comment? There is no undo!" +msgstr "Хотите удалить комментарий? Возврат будет невозможен!" + +msgid "Delete" +msgstr "Удалить" + +msgid "Edit comment" +msgstr "Редактировать комментарий" + +msgid "You must enter a username." +msgstr "Вы должны ввести имя пользователя." + +msgid "The username you entered is invalid." +msgstr "Введенное Вами имя пользователя неверно." + +msgid "Host" +msgstr "IP-адрес" + +msgid "You must enter a comment" +msgstr "Вы должны ввести комментарий" + +msgid "Latest Comments" +msgstr "Последние Комментарии" + +msgid "Comment changed successfully" +msgstr "Комментарий успешно изменен" + +msgid "There are no comments for this item" +msgstr "Комментарии отсутствуют для данного элемента" + +msgid "Recent comments" +msgstr "Последние комментарии" + +#, c-format +msgid "(view all %d comments)" +msgstr "(просмотреть все %d комментарии)" + +msgid "Show comments" +msgstr "Показать комментарии" + +msgid "Number of comments" +msgstr "Кол-во комментариев" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Дата" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Введенная Вами дата неверна." + +#~ msgid "You must enter a date" +#~ msgstr "Вы должны ввести дату" + +#~ msgid "You must enter a subject!" +#~ msgstr "Вам необходимо заполнить поле Заголовок!" + +#~ msgid "You must enter a subject" +#~ msgstr "Вы должны ввести заголовок" + +#~ msgid "Use Captcha for guest comments:" +#~ msgstr "Использовать Тест Тьюринга (Captcha) для гостевых комментариев" + +#~ msgid "Activate Captcha module to enable this feature" +#~ msgstr "Активируйте модуль Тест Тьюринга (Captcha) чтобы сделать доступной данную функцию" + +#~ msgid "[comment] Search comments" +#~ msgstr "[коммент] Поиск комментариев" diff --git a/Source/gallery2/modules/comment/po/sk.po b/Source/gallery2/modules/comment/po/sk.po new file mode 100644 index 0000000..e27f9cf --- /dev/null +++ b/Source/gallery2/modules/comment/po/sk.po @@ -0,0 +1,280 @@ +# $Id: sk.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Branislav Hanacek , 2006. +# Branislav Hanacek , 2006. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-09-10 21:10+0200\n" +"Last-Translator: Branislav Hanacek \n" +"Language-Team: Slovak \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: KBabel 1.11.4\n" +"X-Poedit-Language: Slovak\n" +"X-Poedit-Country: SLOVAKIA\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Add Comment" +msgstr "" + +msgid "add comment" +msgstr "" + +msgid "show comments" +msgstr "" + +msgid "Comments" +msgstr "" + +msgid "User commenting system" +msgstr "" + +msgid "Extra Data" +msgstr "" + +msgid "[comment] Add comments" +msgstr "" + +msgid "[comment] Edit comments" +msgstr "" + +msgid "[comment] Delete comments" +msgstr "" + +msgid "[comment] View comments" +msgstr "" + +msgid "[comment] All access" +msgstr "" + +msgid "View Latest Comments" +msgstr "" + +msgid "View Comments" +msgstr "" + +#, c-format +msgid "Comments: %d" +msgstr "" + +msgid "Guest Comments" +msgstr "" + +msgid "Comment Module" +msgstr "" + +msgid "Search comments" +msgstr "" + +msgid "Subject" +msgstr "" + +msgid "Comment" +msgstr "" + +msgid "Commenter" +msgstr "" + +#, fuzzy +msgid "guest" +msgstr "Východzie hodnoty" + +msgid "Comment Preview" +msgstr "" + +msgid "Name" +msgstr "Meno" + +msgid "Posted by" +msgstr "" + +#, c-format +msgid "%s (%s)" +msgstr "" + +msgid "(required)" +msgstr "(požadované)" + +msgid "You must enter a comment!" +msgstr "" + +msgid "Preview" +msgstr "" + +msgid "Save" +msgstr "Uložiť" + +msgid "Cancel" +msgstr "Zrušiť" + +msgid "edit" +msgstr "upraviť" + +msgid "delete" +msgstr "odstrániť" + +msgid "show full" +msgstr "" + +msgid "show summary" +msgstr "" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "" + +#, c-format +msgid "Posted by %s on %s" +msgstr "" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "" + +msgid "Comment change confirmation" +msgstr "" + +msgid "Comment added successfully" +msgstr "" + +msgid "Comment deleted successfully" +msgstr "" + +msgid "Comment modified successfully" +msgstr "" + +#, c-format +msgid "Back to %s" +msgstr "Naspäť na %s" + +msgid "Comments Settings" +msgstr "" + +msgid "Settings saved successfully" +msgstr "Nastavenia boli úspešne uložené" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "Východzie hodnoty" + +msgid "Delete this comment?" +msgstr "" + +msgid "Are you sure?" +msgstr "Skutočne?" + +msgid "Delete this comment? There is no undo!" +msgstr "" + +msgid "Delete" +msgstr "Odstrániť" + +msgid "Edit comment" +msgstr "" + +msgid "You must enter a username." +msgstr "Musíte zadať meno používateľa" + +msgid "The username you entered is invalid." +msgstr "" + +msgid "Host" +msgstr "" + +msgid "You must enter a comment" +msgstr "" + +msgid "Latest Comments" +msgstr "" + +msgid "Comment changed successfully" +msgstr "" + +msgid "There are no comments for this item" +msgstr "" + +msgid "Recent comments" +msgstr "" + +#, c-format +msgid "(view all %d comments)" +msgstr "" + +msgid "Show comments" +msgstr "" + +msgid "Number of comments" +msgstr "" + +msgid "1" +msgstr "" + +msgid "2" +msgstr "" + +msgid "3" +msgstr "" + +msgid "4" +msgstr "" + +msgid "5" +msgstr "" + +msgid "10" +msgstr "" + +msgid "20" +msgstr "" + +msgid "30" +msgstr "" + +msgid "50" +msgstr "" + +msgid "100" +msgstr "" + +msgid "999" +msgstr "" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Dátum" diff --git a/Source/gallery2/modules/comment/po/sr.po b/Source/gallery2/modules/comment/po/sr.po new file mode 100644 index 0000000..ec6ec60 --- /dev/null +++ b/Source/gallery2/modules/comment/po/sr.po @@ -0,0 +1,285 @@ +# $Id: sr.po 16501 2007-06-02 18:37:40Z jozefs $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3.1\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2007-04-15 23:04+0100\n" +"Last-Translator: Jozef Selesi \n" +"Language-Team: Srpski \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.10\n" + +msgid "Add Comment" +msgstr "Dodavanje komentara" + +msgid "add comment" +msgstr "dodaj komentar" + +msgid "show comments" +msgstr "prikaži komentare" + +msgid "Comments" +msgstr "Komentari" + +msgid "User commenting system" +msgstr "Sistem korisničkih komentara" + +msgid "Extra Data" +msgstr "Posebni podaci" + +msgid "[comment] Add comments" +msgstr "[komentar] Dodavanje komentara" + +msgid "[comment] Edit comments" +msgstr "[komentar] Ažuriranje komentara" + +msgid "[comment] Delete comments" +msgstr "[komentar] Brisanje komentara" + +msgid "[comment] View comments" +msgstr "[komentar] Pregled komentara" + +msgid "[comment] All access" +msgstr "[komentar] Sva prava" + +msgid "View Latest Comments" +msgstr "Pregled najnovijih komentara" + +msgid "View Comments" +msgstr "Pregled komentara" + +#, c-format +msgid "Comments: %d" +msgstr "Komantara: %d" + +msgid "Guest Comments" +msgstr "Komentari gostiju" + +msgid "Comment Module" +msgstr "Modul za komentare" + +msgid "Search comments" +msgstr "Pretraga komentara" + +msgid "Subject" +msgstr "Naslov" + +msgid "Comment" +msgstr "Komentar" + +msgid "Commenter" +msgstr "Komentator" + +msgid "guest" +msgstr "gost" + +msgid "Comment Preview" +msgstr "Pregled pre slanja" + +msgid "Name" +msgstr "Naziv" + +msgid "Posted by" +msgstr "Postavio" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(obavezno)" + +msgid "You must enter a comment!" +msgstr "Morate uneti komantar!" + +msgid "Preview" +msgstr "Prikaži pre slanja" + +msgid "Save" +msgstr "Sačuvaj" + +msgid "Cancel" +msgstr "Otkaži" + +msgid "edit" +msgstr "izmeni" + +msgid "delete" +msgstr "obriši" + +msgid "show full" +msgstr "prikaži u celini" + +msgid "show summary" +msgstr "prikaži sažetak" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Postavio %s u %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Postavio %s u %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Postavio %s (gost) u %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Postavio %s (gost) u %s" + +msgid "Comment change confirmation" +msgstr "Potvrda izmene komentara" + +msgid "Comment added successfully" +msgstr "Komentar uspešno dodat" + +msgid "Comment deleted successfully" +msgstr "Komentar uspešno obrisan" + +msgid "Comment modified successfully" +msgstr "Komentar uspešno izmenjen" + +#, c-format +msgid "Back to %s" +msgstr "Povratak na %s" + +msgid "Comments Settings" +msgstr "Parametri komentara" + +msgid "Settings saved successfully" +msgstr "Podešavanja uspešno sačuvana" + +msgid "Show link for Latest Comments:" +msgstr "Prikaži veze za Najnovije komentare:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Broj komentara na stranici Najnoviji komentari:" + +msgid "Invalid value" +msgstr "Neispravna vrednost" + +msgid "Reset" +msgstr "Poništi" + +msgid "Delete this comment?" +msgstr "Brisanje ovog komentara?" + +msgid "Are you sure?" +msgstr "Da li ste sigurni?" + +msgid "Delete this comment? There is no undo!" +msgstr "Brisanje ovog komentara? Ne može se poništiti!" + +msgid "Delete" +msgstr "Briši" + +msgid "Edit comment" +msgstr "Izmena komentara" + +msgid "You must enter a username." +msgstr "Morate uneti korisničko ime." + +msgid "The username you entered is invalid." +msgstr "Korisničko ime koje ste uneli je neispravno." + +msgid "Host" +msgstr "Računar" + +msgid "You must enter a comment" +msgstr "Morate uneti komentar" + +msgid "Latest Comments" +msgstr "Najnoviji komentari" + +msgid "Comment changed successfully" +msgstr "Komentar uspešno izmenjen" + +msgid "There are no comments for this item" +msgstr "Nema komentara u vezi sa ovim objektom" + +msgid "Recent comments" +msgstr "Nedavno postavljeni komentari" + +#, c-format +msgid "(view all %d comments)" +msgstr "(pregled svih %d komentara)" + +msgid "Show comments" +msgstr "Prikaži komentare" + +msgid "Number of comments" +msgstr "Broj komentara" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Prikaži tekstualno polje koje se proširuje u kompletan formular" + +#~ msgid "Date" +#~ msgstr "Datum" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Datum koji ste uneli je neispravan." + +#~ msgid "You must enter a date" +#~ msgstr "Morate uneti datum" + +#~ msgid "You must enter a subject!" +#~ msgstr "Morate uneti naslov!" + +#~ msgid "You must enter a subject" +#~ msgstr "Morate uneti naslov" diff --git a/Source/gallery2/modules/comment/po/strings.raw b/Source/gallery2/modules/comment/po/strings.raw new file mode 100644 index 0000000..be418fe --- /dev/null +++ b/Source/gallery2/modules/comment/po/strings.raw @@ -0,0 +1,106 @@ +# $Id: strings.raw 15508 2006-12-19 19:44:50Z mindless $ + +/* AddComment.inc */ +gettext("Add Comment") /* also in: module.inc templates/AddComment.tpl templates/blocks/AddComment.tpl templates/blocks/blocks.inc */ +gettext("add comment") + +/* ShowAllComments.inc */ +gettext("show comments") /* also in: ShowComments.inc */ + +/* module.inc */ +gettext("Comments") /* also in: classes/GalleryCommentSearch.class */ +gettext("User commenting system") +gettext("Extra Data") +gettext("[comment] Add comments") +gettext("[comment] Edit comments") +gettext("[comment] Delete comments") +gettext("[comment] View comments") +gettext("[comment] All access") +gettext("View Latest Comments") +gettext("View Comments") /* also in: templates/ShowComments.tpl */ +gettext("Comments: %d") + +/* classes/CommentCaptchaAdminOption.class */ +gettext("Guest Comments") + +/* classes/GalleryCommentSearch.class */ +gettext("Comment Module") +gettext("Search comments") +gettext("Subject") /* also in: templates/AddComment.tpl templates/EditComment.tpl */ +gettext("Comment") /* also in: templates/AddComment.tpl templates/EditComment.tpl */ +gettext("Commenter") /* also in: templates/EditComment.tpl */ +gettext("guest") + +/* templates/AddComment.tpl */ +gettext("Comment Preview") /* also in: templates/EditComment.tpl */ +gettext("Name") /* also in: templates/EditComment.tpl */ +gettext("Posted by") +gettext("%s (%s)") +gettext("(required)") /* also in: templates/EditComment.tpl */ +gettext("You must enter a comment!") +gettext("Preview") /* also in: templates/EditComment.tpl */ +gettext("Save") /* also in: templates/CommentSiteAdmin.tpl templates/EditComment.tpl */ +gettext("Cancel") /* also in: templates/DeleteComment.tpl templates/EditComment.tpl */ + +/* templates/Comment.tpl */ +gettext("edit") +gettext("delete") +gettext("show full") +gettext("show summary") +gettext("Posted by %s on %s (%s)") +gettext("Posted by %s on %s") +gettext("Posted by %s (guest) on %s (%s)") +gettext("Posted by %s (guest) on %s") + +/* templates/CommentChangeConfirmation.tpl */ +gettext("Comment change confirmation") +gettext("Comment added successfully") +gettext("Comment deleted successfully") +gettext("Comment modified successfully") +gettext("Back to %s") + +/* templates/CommentSiteAdmin.tpl */ +gettext("Comments Settings") +gettext("Settings saved successfully") +gettext("Show link for Latest Comments:") +gettext("Number of comments on Latest Comments page:") +gettext("Invalid value") +gettext("Reset") + +/* templates/DeleteComment.tpl */ +gettext("Delete this comment?") +gettext("Are you sure?") +gettext("Delete this comment? There is no undo!") +gettext("Delete") + +/* templates/EditComment.tpl */ +gettext("Edit comment") +gettext("You must enter a username.") +gettext("The username you entered is invalid.") +gettext("Host") +gettext("You must enter a comment") + +/* templates/ShowAllComments.tpl */ +gettext("Latest Comments") +gettext("Comment changed successfully") /* also in: templates/ShowComments.tpl */ +gettext("There are no comments for this item") /* also in: templates/ShowComments.tpl */ + +/* templates/blocks/ViewComments.tpl */ +gettext("Recent comments") +gettext("(view all %d comments)") + +/* templates/blocks/blocks.inc */ +gettext("Show comments") +gettext("Number of comments") +gettext("1") +gettext("2") +gettext("3") +gettext("4") +gettext("5") +gettext("10") +gettext("20") +gettext("30") +gettext("50") +gettext("100") +gettext("999") +gettext("Show a text box that expands into the full form") diff --git a/Source/gallery2/modules/comment/po/sv.po b/Source/gallery2/modules/comment/po/sv.po new file mode 100644 index 0000000..a08b0c0 --- /dev/null +++ b/Source/gallery2/modules/comment/po/sv.po @@ -0,0 +1,281 @@ +# $Id: sv.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Swedish translation +# Christian Wallin , 2002,2003,2004. +# Mikael Gustafsson , 2003,2004. +# Peter Liversten , 2003,2004. +# Hampus Nygren , 2005. +# +# Changed the translation from html to UTF-8 +# Anders Lindquist , 2005 +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-10-14 17:00+0200\n" +"Last-Translator: Anders Lindquist \n" +"Language-Team: Swedish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Swedish\n" +"X-Poedit-Country: SWEDEN\n" + +msgid "Add Comment" +msgstr "Lägg Till Kommentar" + +msgid "add comment" +msgstr "lägg till kommentar" + +msgid "show comments" +msgstr "visa kommentarer" + +msgid "Comments" +msgstr "Kommentarer" + +msgid "User commenting system" +msgstr "Användarkommentarssystem" + +msgid "Extra Data" +msgstr "Extra Information" + +msgid "[comment] Add comments" +msgstr "[Kommentar] Lägg till kommentarer" + +msgid "[comment] Edit comments" +msgstr "[Kommentar] Redigera kommentarer" + +msgid "[comment] Delete comments" +msgstr "[Kommentar] Ta bort kommentarer" + +msgid "[comment] View comments" +msgstr "[Kommentar] Visa kommentarer" + +msgid "[comment] All access" +msgstr "[Kommentar] Tillgänglig för alla" + +msgid "View Latest Comments" +msgstr "Visa Senaste Kommentarer" + +msgid "View Comments" +msgstr "Visa Kommentarer" + +#, c-format +msgid "Comments: %d" +msgstr "Kommentarer: %d" + +msgid "Guest Comments" +msgstr "Gäst Kommentarer" + +msgid "Comment Module" +msgstr "Kommentarsmodul" + +msgid "Search comments" +msgstr "Sök kommentarer" + +msgid "Subject" +msgstr "Ämne" + +msgid "Comment" +msgstr "Kommentar" + +msgid "Commenter" +msgstr "Kommentar av" + +msgid "guest" +msgstr "gäst" + +msgid "Comment Preview" +msgstr "Förhandsgranska Kommentar" + +msgid "Name" +msgstr "Namn" + +msgid "Posted by" +msgstr "Inlagd av" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(obligatorisk)" + +msgid "You must enter a comment!" +msgstr "Du måste skriva in en kommentar!" + +msgid "Preview" +msgstr "Förhandsgranska" + +msgid "Save" +msgstr "Spara" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "edit" +msgstr "redigera" + +msgid "delete" +msgstr "ta bort" + +msgid "show full" +msgstr "visa hela" + +msgid "show summary" +msgstr "visa summering" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Inlagd av %s den %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Inlagd av %s den %s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Inlagd av %s (gäst) den %s (%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Inlagd av %s (gäst) den %s" + +msgid "Comment change confirmation" +msgstr "Kommentatorändrings konfirmation" + +msgid "Comment added successfully" +msgstr "Kommentar inlagd framgångsrikt" + +msgid "Comment deleted successfully" +msgstr "Kommentar borttagen framgångsrikt" + +msgid "Comment modified successfully" +msgstr "Kommentar anpassad framgångsrikt" + +#, c-format +msgid "Back to %s" +msgstr "Tillbaka till %s" + +msgid "Comments Settings" +msgstr "Kommentars Inställningar" + +msgid "Settings saved successfully" +msgstr "Kommentar inlagd framgångsrikt" + +msgid "Show link for Latest Comments:" +msgstr "Visa länk till Senast inlagda Kommentar" + +msgid "Number of comments on Latest Comments page:" +msgstr "Antal kommentarer på senaste Kommentars sidan:" + +msgid "Invalid value" +msgstr "Ogilltigt värde" + +msgid "Reset" +msgstr "Återställ" + +msgid "Delete this comment?" +msgstr "Ta bort denna kommentar?" + +msgid "Are you sure?" +msgstr "Är du säker?" + +msgid "Delete this comment? There is no undo!" +msgstr "Ta bort denna kommentar? Det finns ingen återvändo!" + +msgid "Delete" +msgstr "Ta bort" + +msgid "Edit comment" +msgstr "Redigera kommentar" + +msgid "You must enter a username." +msgstr "Du måste skriva in ett användarnamn." + +msgid "The username you entered is invalid." +msgstr "Användarnamnet du skrev in är ogiltigt." + +msgid "Host" +msgstr "Värd" + +msgid "You must enter a comment" +msgstr "Du måste skriva in en kommentar" + +msgid "Latest Comments" +msgstr "Senast inlagda Kommentarer" + +msgid "Comment changed successfully" +msgstr "Kommentar ändrad framgångsrikt" + +msgid "There are no comments for this item" +msgstr "Det finns inga kommentarer till detta objekt" + +msgid "Recent comments" +msgstr "Senaste kommentarer" + +#, c-format +msgid "(view all %d comments)" +msgstr "(visa alla %d kommentarer)" + +msgid "Show comments" +msgstr "Visa kommentarer" + +msgid "Number of comments" +msgstr "Antal kommentarer" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Visa en textbox som expanderas till det fulla formuläret" diff --git a/Source/gallery2/modules/comment/po/tr.po b/Source/gallery2/modules/comment/po/tr.po new file mode 100644 index 0000000..9833755 --- /dev/null +++ b/Source/gallery2/modules/comment/po/tr.po @@ -0,0 +1,287 @@ +# $Id: tr.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-09-20 01:42+0200\n" +"Last-Translator: Ishak Goker ISIK \n" +"Language-Team: Turkish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Turkish\n" +"X-Poedit-Country: TURKEY\n" + +msgid "Add Comment" +msgstr "Yorum Ekle" + +msgid "add comment" +msgstr "yorum ekle" + +msgid "show comments" +msgstr "yorumları göster" + +msgid "Comments" +msgstr "Yorumlar" + +msgid "User commenting system" +msgstr "Kullanıcı yorum sistemi" + +msgid "Extra Data" +msgstr "Ekstra Veri" + +msgid "[comment] Add comments" +msgstr "[yorum] Yorumlar ekle" + +msgid "[comment] Edit comments" +msgstr "[yorum] Yorumları düzenle" + +msgid "[comment] Delete comments" +msgstr "[yorum] Yorumları sil" + +msgid "[comment] View comments" +msgstr "[yorum] Yorumları görüntüle" + +msgid "[comment] All access" +msgstr "[yorum] " + +msgid "View Latest Comments" +msgstr "Son Yorumları Görüntüle" + +msgid "View Comments" +msgstr "Yorumları Görüntüle" + +#, c-format +msgid "Comments: %d" +msgstr "Yorumlar: %d" + +msgid "Guest Comments" +msgstr "Ziyaretçi Yorumları" + +msgid "Comment Module" +msgstr "Yorum Modülü" + +msgid "Search comments" +msgstr "Yorumları ara" + +msgid "Subject" +msgstr "Konu" + +msgid "Comment" +msgstr "Yorum" + +msgid "Commenter" +msgstr "Yorumlayan" + +#, fuzzy +msgid "guest" +msgstr "Sıfırla" + +msgid "Comment Preview" +msgstr "Yorum Önizleme" + +msgid "Name" +msgstr "İsim" + +msgid "Posted by" +msgstr "Gönderen" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(gerekli)" + +msgid "You must enter a comment!" +msgstr "Yorum girmelisiniz!" + +msgid "Preview" +msgstr "Önizleme" + +msgid "Save" +msgstr "Kaydet" + +msgid "Cancel" +msgstr "İptal" + +msgid "edit" +msgstr "düzenle" + +msgid "delete" +msgstr "sil" + +msgid "show full" +msgstr "tam göster" + +msgid "show summary" +msgstr "özet göster" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "%s t arafından %s (%s) gönderildi." + +#, c-format +msgid "Posted by %s on %s" +msgstr "Gönderen %s, %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "%s t arafından %s (%s) gönderildi." + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Gönderen %s, %s" + +msgid "Comment change confirmation" +msgstr "Yorum değişiklik onayı" + +msgid "Comment added successfully" +msgstr "Yorum başarıyla eklendi" + +msgid "Comment deleted successfully" +msgstr "Yorum başarıyla silindi" + +msgid "Comment modified successfully" +msgstr "Yorum başarıyla değiştirildi" + +#, c-format +msgid "Back to %s" +msgstr "Geri Dön %s" + +msgid "Comments Settings" +msgstr "Yorum Ayarları" + +msgid "Settings saved successfully" +msgstr "Ayarlar başarıyla kaydedildi" + +msgid "Show link for Latest Comments:" +msgstr "Son Yorumlar için Bağlantı Göster:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Son Yorumlar sayfasındaki yorum sayısı:" + +msgid "Invalid value" +msgstr "Geçersiz değer" + +msgid "Reset" +msgstr "Sıfırla" + +msgid "Delete this comment?" +msgstr "Bu yorumu sil?" + +msgid "Are you sure?" +msgstr "Emin misiniz?" + +msgid "Delete this comment? There is no undo!" +msgstr "Bu yorumu sil? Geri dönüş yok!" + +msgid "Delete" +msgstr "Sil" + +msgid "Edit comment" +msgstr "Yorum düzenle" + +msgid "You must enter a username." +msgstr "Kullanıcı adı girmelisiniz." + +msgid "The username you entered is invalid." +msgstr "Girmiş olduğunuz kullanıcı adı geçersiz." + +msgid "Host" +msgstr "Host" + +msgid "You must enter a comment" +msgstr "Yorum girmelisiniz" + +msgid "Latest Comments" +msgstr "Son Yorumlar" + +msgid "Comment changed successfully" +msgstr "Yorum başarıyla değiştirildi" + +msgid "There are no comments for this item" +msgstr "Bu öge için yorum yok" + +msgid "Recent comments" +msgstr "Son yorumlar" + +#, c-format +msgid "(view all %d comments)" +msgstr "(Tüm %d yorumları görüntüle)" + +msgid "Show comments" +msgstr "Yorumları Göster" + +msgid "Number of comments" +msgstr "Yorum sayısı" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "Tam boyuta geçecek yazı kutusunu göster" + +#~ msgid "Date" +#~ msgstr "Tarih" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Girmiş olduğunuz tarih geçersiz." + +#~ msgid "You must enter a date" +#~ msgstr "Tarih girmelisiniz" + +#~ msgid "You must enter a subject!" +#~ msgstr "Konu girmelisiniz!" + +#~ msgid "You must enter a subject" +#~ msgstr "Konu girmelisiniz" diff --git a/Source/gallery2/modules/comment/po/uk.po b/Source/gallery2/modules/comment/po/uk.po new file mode 100644 index 0000000..65daa90 --- /dev/null +++ b/Source/gallery2/modules/comment/po/uk.po @@ -0,0 +1,285 @@ +# $Id: uk.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-08-07 13:26+0200\n" +"Last-Translator: Yurii Smetana \n" +"Language-Team: British \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Add Comment" +msgstr "Додати Коментар" + +msgid "add comment" +msgstr "додати коментар" + +msgid "show comments" +msgstr "показати коментарі" + +msgid "Comments" +msgstr "Коментарі" + +msgid "User commenting system" +msgstr "Система коментування" + +msgid "Extra Data" +msgstr "Додаткові Дані" + +msgid "[comment] Add comments" +msgstr "[коментарі] Додавання коментарів" + +msgid "[comment] Edit comments" +msgstr "[коментарі] Редагування коментарів" + +msgid "[comment] Delete comments" +msgstr "[коментарі] Видалення коментарів" + +msgid "[comment] View comments" +msgstr "[коментарі] Перегляд коментарів" + +msgid "[comment] All access" +msgstr "[коментарі] Повний доступ" + +msgid "View Latest Comments" +msgstr "Переглянути Останні Коментарі" + +msgid "View Comments" +msgstr "Переглянути Коментарі" + +#, c-format +msgid "Comments: %d" +msgstr "Коментарі: %d" + +msgid "Guest Comments" +msgstr "Коментарі Гостей" + +msgid "Comment Module" +msgstr "Модуль Коментарів" + +msgid "Search comments" +msgstr "Шукати коментарі" + +msgid "Subject" +msgstr "Тема" + +msgid "Comment" +msgstr "Коментар" + +msgid "Commenter" +msgstr "Автор" + +#, fuzzy +msgid "guest" +msgstr "Скинути" + +msgid "Comment Preview" +msgstr "Попередній Перегляд" + +msgid "Name" +msgstr "Назва" + +msgid "Posted by" +msgstr "Автор" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(обов'язково)" + +msgid "You must enter a comment!" +msgstr "Ви повинні написати коментар!" + +msgid "Preview" +msgstr "Попередній перегляд" + +msgid "Save" +msgstr "Зберегти" + +msgid "Cancel" +msgstr "Відмінити" + +msgid "edit" +msgstr "редагувати" + +msgid "delete" +msgstr "видалити" + +msgid "show full" +msgstr "показати повністю" + +msgid "show summary" +msgstr "показати скорочено" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Створено користувачем %s, %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Створено користувачем %s, %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Створено користувачем %s, %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Створено користувачем %s, %s" + +msgid "Comment change confirmation" +msgstr "Зміна коментарю" + +msgid "Comment added successfully" +msgstr "Коментар успішно додано" + +msgid "Comment deleted successfully" +msgstr "Коментар успішно видалено" + +msgid "Comment modified successfully" +msgstr "Коментар успішно змінено" + +#, c-format +msgid "Back to %s" +msgstr "Назад в %s" + +msgid "Comments Settings" +msgstr "Налаштування Коментарю" + +msgid "Settings saved successfully" +msgstr "Налаштування успішно збережено" + +msgid "Show link for Latest Comments:" +msgstr "Показувати посилання для Останніх Коментарів:" + +msgid "Number of comments on Latest Comments page:" +msgstr "Кількість коментарів на сторінці Останніх Коментарів" + +msgid "Invalid value" +msgstr "Хибне значення" + +msgid "Reset" +msgstr "Скинути" + +msgid "Delete this comment?" +msgstr "Видалити цей коментар?" + +msgid "Are you sure?" +msgstr "Ви впевнені?" + +msgid "Delete this comment? There is no undo!" +msgstr "Видалити цей коментар? Відмінити дію буде неможливо!" + +msgid "Delete" +msgstr "Видалити" + +msgid "Edit comment" +msgstr "Редагувати коментар" + +msgid "You must enter a username." +msgstr "Ви повинні вказати ім'я користувача." + +msgid "The username you entered is invalid." +msgstr "Ім'я користувача, введене Вами, хибне." + +msgid "Host" +msgstr "Машина" + +msgid "You must enter a comment" +msgstr "Ви повинні написати сам коментар" + +msgid "Latest Comments" +msgstr "Останні Коментарі" + +msgid "Comment changed successfully" +msgstr "Коментар успішно змінено" + +msgid "There are no comments for this item" +msgstr "Для цього елементу коментарів немає" + +msgid "Recent comments" +msgstr "Останні коментарі" + +#, c-format +msgid "(view all %d comments)" +msgstr "(переглянути усі %d коментарів)" + +msgid "Show comments" +msgstr "Показати коментарі" + +msgid "Number of comments" +msgstr "Кількість коментарів" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Дата" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Дата, введена Вами, хибна." + +#~ msgid "You must enter a date" +#~ msgstr "Ви повинні вказати дату" + +#~ msgid "You must enter a subject!" +#~ msgstr "Ви повинні написати тему!" + +#~ msgid "You must enter a subject" +#~ msgstr "Ви повинні вказати тему" diff --git a/Source/gallery2/modules/comment/po/vi.po b/Source/gallery2/modules/comment/po/vi.po new file mode 100644 index 0000000..de5c0d2 --- /dev/null +++ b/Source/gallery2/modules/comment/po/vi.po @@ -0,0 +1,292 @@ +# $Id: vi.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2005-08-02 12:31+0100\n" +"Last-Translator: Trung Dong Huynh \n" +"Language-Team: Vietnamese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "Thêm bình luận" + +msgid "add comment" +msgstr "thêm bình luận" + +msgid "show comments" +msgstr "hiển thị bình luận" + +msgid "Comments" +msgstr "Bình luận" + +msgid "User commenting system" +msgstr "Hệ thống bình luận" + +msgid "Extra Data" +msgstr "Dữ liệu thêm" + +msgid "[comment] Add comments" +msgstr "[bình luận] Thêm bình luận" + +msgid "[comment] Edit comments" +msgstr "[bình luận] Chỉnh sửa bình luận" + +msgid "[comment] Delete comments" +msgstr "[bình luận] Xóa bình luận" + +msgid "[comment] View comments" +msgstr "[bình luận] Xem bình luận" + +msgid "[comment] All access" +msgstr "[bình luận] Toàn quyền" + +#, fuzzy +msgid "View Latest Comments" +msgstr "Xem bình luận" + +msgid "View Comments" +msgstr "Xem bình luận" + +#, c-format +msgid "Comments: %d" +msgstr "Bình luận: %d" + +#, fuzzy +msgid "Guest Comments" +msgstr "Xem bình luận" + +msgid "Comment Module" +msgstr "Module Bình luận" + +msgid "Search comments" +msgstr "Tìm trong các bình luận" + +msgid "Subject" +msgstr "Chủ đề" + +msgid "Comment" +msgstr "Bình luận" + +msgid "Commenter" +msgstr "Người bình luận" + +msgid "guest" +msgstr "khách" + +msgid "Comment Preview" +msgstr "Xem thử bình luận" + +msgid "Name" +msgstr "Tên" + +msgid "Posted by" +msgstr "Gửi bởi" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(cần có)" + +msgid "You must enter a comment!" +msgstr "Bạn phải nhập vào bình luận của bạn!" + +msgid "Preview" +msgstr "Xem thử" + +msgid "Save" +msgstr "Lưu" + +msgid "Cancel" +msgstr "Hủy bỏ" + +msgid "edit" +msgstr "chỉnh sửa" + +msgid "delete" +msgstr "xóa" + +msgid "show full" +msgstr "hiện đầy đủ" + +msgid "show summary" +msgstr "hiện tóm tắt" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "Gửi bởi %s vào %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "Gửi bởi %s vào %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "Gửi bởi %s vào %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "Gửi bởi %s vào %s" + +msgid "Comment change confirmation" +msgstr "Xác nhận thay đổi bình luận" + +msgid "Comment added successfully" +msgstr "Đã thêm bình luận" + +msgid "Comment deleted successfully" +msgstr "Bình luận đã được xóa" + +msgid "Comment modified successfully" +msgstr "Bình luận đã được hiệu chỉnh" + +#, c-format +msgid "Back to %s" +msgstr "Quay lại %s" + +#, fuzzy +msgid "Comments Settings" +msgstr "Bình luận" + +#, fuzzy +msgid "Settings saved successfully" +msgstr "Đã thêm bình luận" + +msgid "Show link for Latest Comments:" +msgstr "" + +msgid "Number of comments on Latest Comments page:" +msgstr "" + +msgid "Invalid value" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Delete this comment?" +msgstr "Xóa bình luận này?" + +msgid "Are you sure?" +msgstr "Bạn có chắc chưa?" + +msgid "Delete this comment? There is no undo!" +msgstr "Xóa bình luận này? Sẽ không phục hồi được!" + +msgid "Delete" +msgstr "Xóa" + +msgid "Edit comment" +msgstr "Chỉnh sửa bình luận" + +msgid "You must enter a username." +msgstr "Bạn phải điền tên thành viên vào." + +msgid "The username you entered is invalid." +msgstr "Tên thành viên bạn vừa nhập vào không hợp lệ." + +msgid "Host" +msgstr "Máy" + +msgid "You must enter a comment" +msgstr "Bạn phải nhập vào bình luận của bạn" + +#, fuzzy +msgid "Latest Comments" +msgstr "Xem bình luận" + +msgid "Comment changed successfully" +msgstr "Bình luận đã được thay đổi" + +msgid "There are no comments for this item" +msgstr "Đối tượng này không có bình luận nào" + +msgid "Recent comments" +msgstr "Những bình luận gần đây" + +#, c-format +msgid "(view all %d comments)" +msgstr "(xem tất cả %d lời bình luận)" + +msgid "Show comments" +msgstr "Hiển thị bình luận" + +msgid "Number of comments" +msgstr "Số bình luận" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "Ngày" + +#~ msgid "The date you entered is invalid." +#~ msgstr "Ngày bạn vừa nhập vào không hợp lệ." + +#~ msgid "You must enter a date" +#~ msgstr "Bạn phải nhập một ngày hợp lệ" + +#~ msgid "You must enter a subject!" +#~ msgstr "Bạn phải điền một chủ đề vào!" + +#~ msgid "You must enter a subject" +#~ msgstr "Bạn phải điền một chủ đề vào" + +#~ msgid "[comment] Search comments" +#~ msgstr "[bình luận] Tìm kiếm bình luận" diff --git a/Source/gallery2/modules/comment/po/zh_CN.po b/Source/gallery2/modules/comment/po/zh_CN.po new file mode 100644 index 0000000..a2c534b --- /dev/null +++ b/Source/gallery2/modules/comment/po/zh_CN.po @@ -0,0 +1,289 @@ +# $Id: zh_CN.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2006-03-10 10:50+0800\n" +"Last-Translator: Lyric \n" +"Language-Team: Chinese Simplified \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +msgid "Add Comment" +msgstr "添加评论" + +msgid "add comment" +msgstr "添加评论" + +msgid "show comments" +msgstr "显示评论" + +msgid "Comments" +msgstr "评论" + +msgid "User commenting system" +msgstr "用户评论系统" + +msgid "Extra Data" +msgstr "额外数据" + +msgid "[comment] Add comments" +msgstr "[评论] 添加评论" + +msgid "[comment] Edit comments" +msgstr "[评论] 编辑评论" + +msgid "[comment] Delete comments" +msgstr "[评论] 删除评论" + +msgid "[comment] View comments" +msgstr "[评论] 查看评论" + +msgid "[comment] All access" +msgstr "[评论] 完全存取权限" + +msgid "View Latest Comments" +msgstr "查看最新评论" + +msgid "View Comments" +msgstr "查看评论" + +#, c-format +msgid "Comments: %d" +msgstr "评论: %d" + +msgid "Guest Comments" +msgstr "访客评论" + +msgid "Comment Module" +msgstr "评论模块" + +msgid "Search comments" +msgstr "搜索评论" + +msgid "Subject" +msgstr "主题" + +msgid "Comment" +msgstr "评论" + +msgid "Commenter" +msgstr "评论员" + +#, fuzzy +msgid "guest" +msgstr "重置" + +msgid "Comment Preview" +msgstr "评论预览" + +msgid "Name" +msgstr "名称" + +msgid "Posted by" +msgstr "发表者" + +#, c-format +msgid "%s (%s)" +msgstr "%s (%s)" + +msgid "(required)" +msgstr "(必填项)" + +msgid "You must enter a comment!" +msgstr "您必须输入一条评论!" + +msgid "Preview" +msgstr "预览" + +msgid "Save" +msgstr "保存" + +msgid "Cancel" +msgstr "取消" + +msgid "edit" +msgstr "编辑" + +msgid "delete" +msgstr "删除" + +msgid "show full" +msgstr "完全显示" + +msgid "show summary" +msgstr "显示摘要" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "由 %s 发表于 %s (%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "由 %s 发表于 %s" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "由 %s 发表于 %s (%s)" + +#, fuzzy, c-format +msgid "Posted by %s (guest) on %s" +msgstr "由 %s 发表于 %s" + +msgid "Comment change confirmation" +msgstr "评论更改确认" + +msgid "Comment added successfully" +msgstr "评论添加成功" + +msgid "Comment deleted successfully" +msgstr "评论删除成功" + +msgid "Comment modified successfully" +msgstr "评论修改成功" + +#, c-format +msgid "Back to %s" +msgstr "返回 %s" + +msgid "Comments Settings" +msgstr "评论设置" + +msgid "Settings saved successfully" +msgstr "设置保存成功" + +msgid "Show link for Latest Comments:" +msgstr "显示最新评论的链接:" + +msgid "Number of comments on Latest Comments page:" +msgstr "最新评论页面上的评论条数:" + +msgid "Invalid value" +msgstr "非法值" + +msgid "Reset" +msgstr "重置" + +msgid "Delete this comment?" +msgstr "删除此评论?" + +msgid "Are you sure?" +msgstr "您确定吗?" + +msgid "Delete this comment? There is no undo!" +msgstr "删除此评论?此操作无法恢复!" + +msgid "Delete" +msgstr "删除" + +msgid "Edit comment" +msgstr "编辑评论" + +msgid "You must enter a username." +msgstr "您必须输入一个用户名。" + +msgid "The username you entered is invalid." +msgstr "您输入的用户名无效。" + +msgid "Host" +msgstr "主机地址" + +msgid "You must enter a comment" +msgstr "您必须输入一条评论" + +msgid "Latest Comments" +msgstr "最新评论" + +msgid "Comment changed successfully" +msgstr "评论更改成功" + +msgid "There are no comments for this item" +msgstr "此项目没有评论" + +msgid "Recent comments" +msgstr "最近评论" + +#, c-format +msgid "(view all %d comments)" +msgstr "(查看所有 %d 条评论)" + +msgid "Show comments" +msgstr "显示评论" + +msgid "Number of comments" +msgstr "评论条数" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "" + +#~ msgid "Date" +#~ msgstr "日期" + +#~ msgid "The date you entered is invalid." +#~ msgstr "您输入的日期无效。" + +#~ msgid "You must enter a date" +#~ msgstr "您必须输入日期" + +#~ msgid "You must enter a subject!" +#~ msgstr "您必须输入一个主题!" + +#~ msgid "You must enter a subject" +#~ msgstr "您必须输入一个主题" + +#~ msgid "[comment] Search comments" +#~ msgstr "[评论] 搜索评论" diff --git a/Source/gallery2/modules/comment/po/zh_TW.po b/Source/gallery2/modules/comment/po/zh_TW.po new file mode 100644 index 0000000..2bfb704 --- /dev/null +++ b/Source/gallery2/modules/comment/po/zh_TW.po @@ -0,0 +1,269 @@ +# $Id: zh_TW.po 16040 2007-03-16 23:04:36Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Comments 1.1.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2006-12-19 11:56-0800\n" +"PO-Revision-Date: 2003-03-10 12:59+0800\n" +"Last-Translator: Stephen Chu \n" +"Language-Team: Chinese Traditional \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "Add Comment" +msgstr "新增一份回應" + +msgid "add comment" +msgstr "增加回應" + +msgid "show comments" +msgstr "顯示回應" + +msgid "Comments" +msgstr "回應" + +msgid "User commenting system" +msgstr "使用者回應系統" + +msgid "Extra Data" +msgstr "額外資料" + +msgid "[comment] Add comments" +msgstr "[回應] 增加回應" + +msgid "[comment] Edit comments" +msgstr "[回應] 編輯回應" + +msgid "[comment] Delete comments" +msgstr "[回應] 刪除回應" + +msgid "[comment] View comments" +msgstr "[回應] 觀看回應" + +msgid "[comment] All access" +msgstr "[回應] 完全存取" + +msgid "View Latest Comments" +msgstr "觀看最新回應" + +msgid "View Comments" +msgstr "觀看回應" + +#, c-format +msgid "Comments: %d" +msgstr "回應數:%d" + +msgid "Guest Comments" +msgstr "訪客回應" + +msgid "Comment Module" +msgstr "回應模組" + +msgid "Search comments" +msgstr "搜尋回應" + +msgid "Subject" +msgstr "主題" + +msgid "Comment" +msgstr "回應" + +msgid "Commenter" +msgstr "回應人:" + +msgid "guest" +msgstr "訪客" + +msgid "Comment Preview" +msgstr "回應預視" + +msgid "Name" +msgstr "姓名" + +msgid "Posted by" +msgstr "張貼者:" + +#, c-format +msgid "%s (%s)" +msgstr "%s(%s)" + +msgid "(required)" +msgstr "(必要)" + +msgid "You must enter a comment!" +msgstr "你必須輸入回應!" + +msgid "Preview" +msgstr "預視" + +msgid "Save" +msgstr "儲存" + +msgid "Cancel" +msgstr "取消" + +msgid "edit" +msgstr "編輯" + +msgid "delete" +msgstr "刪除" + +msgid "show full" +msgstr "顯示全部" + +msgid "show summary" +msgstr "顯示摘要" + +#, c-format +msgid "Posted by %s on %s (%s)" +msgstr "由%s張貼於%s(%s)" + +#, c-format +msgid "Posted by %s on %s" +msgstr "由%s張貼於%s" + +#, c-format +msgid "Posted by %s (guest) on %s (%s)" +msgstr "由%s(訪客)張貼於%s(%s)" + +#, c-format +msgid "Posted by %s (guest) on %s" +msgstr "由%s(訪客)張貼於%s" + +msgid "Comment change confirmation" +msgstr "確認回應修改" + +msgid "Comment added successfully" +msgstr "成功加入新的回應" + +msgid "Comment deleted successfully" +msgstr "回應刪除成功" + +msgid "Comment modified successfully" +msgstr "回應修改成功" + +#, c-format +msgid "Back to %s" +msgstr "返回%s" + +msgid "Comments Settings" +msgstr "回應設定" + +msgid "Settings saved successfully" +msgstr "設定儲存成功" + +msgid "Show link for Latest Comments:" +msgstr "顯示最新回應的鏈接:" + +msgid "Number of comments on Latest Comments page:" +msgstr "最新回應頁面回應數:" + +msgid "Invalid value" +msgstr "不正確的數值" + +msgid "Reset" +msgstr "重置" + +msgid "Delete this comment?" +msgstr "要刪除這項回應嗎?" + +msgid "Are you sure?" +msgstr "確定?" + +msgid "Delete this comment? There is no undo!" +msgstr "要刪除這項回應嗎?這個動作無法回復!" + +msgid "Delete" +msgstr "刪除" + +msgid "Edit comment" +msgstr "編輯回應" + +msgid "You must enter a username." +msgstr "你必須輸入使用者名稱。" + +msgid "The username you entered is invalid." +msgstr "你輸入的使用者名稱無效。" + +msgid "Host" +msgstr "主機" + +msgid "You must enter a comment" +msgstr "你必須輸入回應" + +msgid "Latest Comments" +msgstr "最新回應" + +msgid "Comment changed successfully" +msgstr "回應變更成功" + +msgid "There are no comments for this item" +msgstr "這個項目沒有回應" + +msgid "Recent comments" +msgstr "最近的回應" + +#, c-format +msgid "(view all %d comments)" +msgstr "(觀看所有 %d 筆回應)" + +msgid "Show comments" +msgstr "顯示回應" + +msgid "Number of comments" +msgstr "回應數" + +msgid "1" +msgstr "1" + +msgid "2" +msgstr "2" + +msgid "3" +msgstr "3" + +msgid "4" +msgstr "4" + +msgid "5" +msgstr "5" + +msgid "10" +msgstr "10" + +msgid "20" +msgstr "20" + +msgid "30" +msgstr "30" + +msgid "50" +msgstr "50" + +msgid "100" +msgstr "100" + +msgid "999" +msgstr "999" + +msgid "Show a text box that expands into the full form" +msgstr "顯示可擴展成完整欄位的文字區塊" diff --git a/Source/gallery2/modules/comment/templates/AddComment.tpl b/Source/gallery2/modules/comment/templates/AddComment.tpl new file mode 100644 index 0000000..8cfd49c --- /dev/null +++ b/Source/gallery2/modules/comment/templates/AddComment.tpl @@ -0,0 +1,92 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="Add Comment"}

    +
    + +{if isset($form.action.preview)} +
    +

    {g->text text="Comment Preview"}

    + +
    +

    {$form.subject|markup}

    +

    + {$form.comment|markup} +

    +
    +
    +{/if} + +
    +
    + {g->hiddenFormVars} + + + +
    + +
    + {if $user.isGuest} +

    {g->text text="Name"}

    + + {else} +

    {g->text text="Posted by"}

    + {g->text text="%s (%s)" arg1=$user.fullName arg2=$AddComment.host} + {/if} + +

    {g->text text="Subject"}

    + + {include file="gallery:modules/core/templates/MarkupBar.tpl" viewL10domain="modules_core" + element="subject" firstMarkupBar=true} + + + {if empty($inBlock)} + + {/if} + +

    + {g->text text="Comment"} + {g->text text="(required)"} +

    + + {include file="gallery:modules/core/templates/MarkupBar.tpl" viewL10domain="modules_core" + element="comment"} + + + + {if isset($form.error.comment.missing)} +
    + {g->text text="You must enter a comment!"} +
    + {/if} +
    + + {* Include validation plugins *} + {foreach from=$AddComment.plugins item=plugin} + {include file="gallery:`$plugin.file`" l10Domain=$plugin.l10Domain} + {/foreach} + +
    + + + {if empty($inBlock)} + + {/if} +
    +
    diff --git a/Source/gallery2/modules/comment/templates/Comment.tpl b/Source/gallery2/modules/comment/templates/Comment.tpl new file mode 100644 index 0000000..3822d07 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/Comment.tpl @@ -0,0 +1,81 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +{if !empty($comment.subject)} +

    + {$comment.subject|markup} +

    +{/if} + +{if $can.edit} + + + {g->text text="edit"} + +{/if} + +{if $can.delete} + + + {g->text text="delete"} + +{/if} + +{assign var="commentText" value=$comment.comment|markup} +{if isset($truncate)} + {assign var="truncated" value=$commentText|entitytruncate:$truncate} +{/if} + +{if isset($truncate) && ($truncated != $commentText)} + {g->text text="show full"} + + +

    + {$truncated} +

    + +{else} +

    + {$commentText} +

    +{/if} + +

    + {capture name="date"}{g->date timestamp=$comment.date style="datetime"}{/capture} + {if empty($comment.author)} + {if $can.edit} + {g->text text="Posted by %s on %s (%s)" + arg1=$user.fullName|default:$user.userName + arg2=$smarty.capture.date arg3=$comment.host} + {else} + {g->text text="Posted by %s on %s" + arg1=$user.fullName|default:$user.userName arg2=$smarty.capture.date} + {/if} + {else} + {if $can.edit} + {g->text text="Posted by %s (guest) on %s (%s)" + arg1=$comment.author|default:$user.userName + arg2=$smarty.capture.date arg3=$comment.host} + {else} + {g->text text="Posted by %s (guest) on %s" + arg1=$comment.author|default:$user.userName arg2=$smarty.capture.date} + {/if} + {/if} +

    diff --git a/Source/gallery2/modules/comment/templates/CommentChangeConfirmation.tpl b/Source/gallery2/modules/comment/templates/CommentChangeConfirmation.tpl new file mode 100644 index 0000000..5ae1817 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/CommentChangeConfirmation.tpl @@ -0,0 +1,31 @@ +{* + * $Revision: 15505 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="Comment change confirmation"}

    +
    + +
    +{if !empty($status)} +

    + {if isset($status.added)} + {g->text text="Comment added successfully"} + {/if} + {if isset($status.deleted)} + {g->text text="Comment deleted successfully"} + {/if} + {if isset($status.changed)} + {g->text text="Comment modified successfully"} + {/if} +

    +{/if} + +

    + + {g->text text="Back to %s" arg1=$CommentChangeConfirmation.itemTypeName.1} + +

    +
    diff --git a/Source/gallery2/modules/comment/templates/CommentSiteAdmin.tpl b/Source/gallery2/modules/comment/templates/CommentSiteAdmin.tpl new file mode 100644 index 0000000..4570e92 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/CommentSiteAdmin.tpl @@ -0,0 +1,47 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="Comments Settings"}

    +
    + +{if isset($status.saved)} +

    + {g->text text="Settings saved successfully"} +

    +{/if} + +
    + + + + +
    + + + +
    + {g->text text="Number of comments on Latest Comments page:"} + + + + {if isset($form.error.show)} +
    + {g->text text="Invalid value"} +
    + {/if} +
    +
    + +
    + + +
    diff --git a/Source/gallery2/modules/comment/templates/DeleteComment.tpl b/Source/gallery2/modules/comment/templates/DeleteComment.tpl new file mode 100644 index 0000000..23eea18 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/DeleteComment.tpl @@ -0,0 +1,40 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="Delete this comment?"}

    +
    + +
    +
    + {g->hiddenFormVars} + + + + +
    + +
    +

    {g->text text="Are you sure?"}

    +

    + {g->text text="Delete this comment? There is no undo!"} +

    +
    + +
    + + + +
    +
    + +
    +{include file="gallery:modules/comment/templates/Comment.tpl" + item=$DeleteComment.item comment=$DeleteComment.comment + user=$DeleteComment.commenter can=$DeleteComment.can} +
    diff --git a/Source/gallery2/modules/comment/templates/EditComment.tpl b/Source/gallery2/modules/comment/templates/EditComment.tpl new file mode 100644 index 0000000..b4d9c68 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/EditComment.tpl @@ -0,0 +1,101 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="Edit comment"}

    +
    + +{if isset($form.action.preview)} +
    +

    {g->text text="Comment Preview"}

    + +

    {$form.subject|markup}

    + + {$form.comment|markup} +
    +{/if} + +
    +
    + {g->hiddenFormVars} + + + +
    + +
    +

    + {g->text text="Commenter"} + {g->text text="(required)"} +

    + + + + + {if $EditComment.isGuestComment} +

    + {g->text text="Name"} +

    + + {/if} + + {if isset($form.error.commenterName.missing)} +
    + {g->text text="You must enter a username."} +
    + {/if} + {if isset($form.error.commenterName.invalid)} +
    + {g->text text="The username you entered is invalid."} +
    + {/if} + +

    {g->text text="Host"}

    + + +

    {g->text text="Subject"}

    + + {include file="gallery:modules/core/templates/MarkupBar.tpl" viewL10domain="modules_core" + element="subject" firstMarkupBar=true} + + + + + +

    + {g->text text="Comment"} + {g->text text="(required)"} +

    + + {include file="gallery:modules/core/templates/MarkupBar.tpl" viewL10domain="modules_core" + element="comment"} + + + + {if isset($form.error.comment.missing)} +
    + {g->text text="You must enter a comment"} +
    + {/if} +
    + +
    + + + +
    +
    diff --git a/Source/gallery2/modules/comment/templates/ShowAllComments.tpl b/Source/gallery2/modules/comment/templates/ShowAllComments.tpl new file mode 100644 index 0000000..b800dec --- /dev/null +++ b/Source/gallery2/modules/comment/templates/ShowAllComments.tpl @@ -0,0 +1,62 @@ +{* + * $Revision: 15949 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="Latest Comments"}

    +
    + +{if !empty($status)} +

    + {if isset($status.changed)} + {g->text text="Comment changed successfully"} + {/if} +

    +{/if} + +{if empty($ShowAllComments.comments)} +
    +

    {g->text text="There are no comments for this item"}

    +
    +{else} +{if $ShowAllComments.navigator.pageCount > 1} + {g->block type="core.Navigator" class="commentNavigator" + navigator=$ShowAllComments.navigator + currentPage=$ShowAllComments.navigator.page + totalPages=$ShowAllComments.navigator.pageCount} +{/if} + +{foreach from=$ShowAllComments.comments item=comment} + +{/foreach} +
    + {assign var="item" value=$ShowAllComments.itemData[$comment.parentId]} + + {if isset($item.thumb)} + {g->image item=$item image=$item.thumb maxSize=120} + {else} + {$item.title|default:$item.pathComponent|markup} + {/if} + + + +
    + {include file="gallery:modules/comment/templates/Comment.tpl" + comment=$comment can=$ShowAllComments.can[$comment.id] + item=$item user=$ShowAllComments.commenters[$comment.commenterId]} +
    +
    +{/if} diff --git a/Source/gallery2/modules/comment/templates/ShowComments.tpl b/Source/gallery2/modules/comment/templates/ShowComments.tpl new file mode 100644 index 0000000..1a268fa --- /dev/null +++ b/Source/gallery2/modules/comment/templates/ShowComments.tpl @@ -0,0 +1,35 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +
    +

    {g->text text="View Comments"}

    +
    + +{if !empty($status)} +
    +

    + {if isset($status.changed)} + {g->text text="Comment changed successfully"} + {/if} +

    +
    +{/if} + +{if empty($ShowComments.comments)} +
    +

    {g->text text="There are no comments for this item"}

    +
    +{else} +
    +{foreach from=$ShowComments.comments item=comment} +
    + {include file="gallery:modules/comment/templates/Comment.tpl" + comment=$comment item=$ShowComments.item can=$ShowComments.can + user=$ShowComments.commenters[$comment.commenterId]} +
    +{/foreach} +
    +{/if} diff --git a/Source/gallery2/modules/comment/templates/blocks/AddComment.tpl b/Source/gallery2/modules/comment/templates/blocks/AddComment.tpl new file mode 100644 index 0000000..2f8f841 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/blocks/AddComment.tpl @@ -0,0 +1,38 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +{* Set defaults *} +{if empty($item)} {assign var=item value=$theme.item} {/if} +{g->callback type="comment.AddComment" itemId=$item.id} + +{if !isset($expand)}{assign var="expand" value=true}{/if} + +{if !empty($block.comment.AddComment)} +
    + {include file="gallery:modules/comment/templates/AddComment.tpl" + AddComment=$block.comment.AddComment inBlock=1} +
    + +{if $expand} +
    +
    +

    {g->text text="Add Comment"}

    +
    + +
    + +{literal} + +{/literal} +{/if} +{/if} diff --git a/Source/gallery2/modules/comment/templates/blocks/ViewComments.tpl b/Source/gallery2/modules/comment/templates/blocks/ViewComments.tpl new file mode 100644 index 0000000..f447fa5 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/blocks/ViewComments.tpl @@ -0,0 +1,33 @@ +{* + * $Revision: 15342 $ + * If you want to customize this file, do not edit it directly since future upgrades + * may overwrite it. Instead, copy it into a new directory called "local" and edit that + * version. Gallery will look for that file first and use it if it exists. + *} +{* Set defaults *} +{if empty($item)} {assign var=item value=$theme.item} {/if} +{if empty($show)} {assign var=show value=3} {/if} +{g->callback type="comment.LoadComments" itemId=$item.id show=$show} + +{if !empty($block.comment.LoadComments.comments)} +
    +

    {g->text text="Recent comments"}

    + + {if sizeof($block.comment.LoadComments.comments) < $block.comment.LoadComments.totalComments } + + {g->text text="(view all %d comments)" arg1=$block.comment.LoadComments.totalComments} + + {/if} + + {foreach from=$block.comment.LoadComments.comments item=comment} +
    + {include file="gallery:modules/comment/templates/Comment.tpl" + user=$block.comment.LoadComments.commenters[$comment.commenterId] + comment=$comment + can=$block.comment.LoadComments.can + item=$block.comment.LoadComments.item + truncate=256} +
    + {/foreach} +
    +{/if} diff --git a/Source/gallery2/modules/comment/templates/blocks/blocks.inc b/Source/gallery2/modules/comment/templates/blocks/blocks.inc new file mode 100644 index 0000000..5a468e6 --- /dev/null +++ b/Source/gallery2/modules/comment/templates/blocks/blocks.inc @@ -0,0 +1,29 @@ + array( + 'description' => $gallery->i18n('Show comments'), + 'vars' => array( + 'show' => array( + 'description' => $gallery->i18n('Number of comments'), + 'type' => 'choice', + 'default' => '3', + 'choices' => array( + '1' => $gallery->i18n('1'), + '2' => $gallery->i18n('2'), + '3' => $gallery->i18n('3'), + '4' => $gallery->i18n('4'), + '5' => $gallery->i18n('5'), + '10' => $gallery->i18n('10'), + '20' => $gallery->i18n('20'), + '30' => $gallery->i18n('30'), + '50' => $gallery->i18n('50'), + '100' => $gallery->i18n('100'), + '999' => $gallery->i18n('999'))))), + 'AddComment' => array( + 'description' => $gallery->i18n('Add Comment'), + 'vars' => array( + 'expand' => array( + 'description' => $gallery->i18n('Show a text box that expands into the full form'), + 'type' => 'boolean', + 'default' => 'true')))); +?> diff --git a/Source/gallery2/modules/core/AdminCore.inc b/Source/gallery2/modules/core/AdminCore.inc new file mode 100644 index 0000000..818e0e2 --- /dev/null +++ b/Source/gallery2/modules/core/AdminCore.inc @@ -0,0 +1,358 @@ + + * @version $Revision: 15692 $ + */ +class AdminCoreController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $param) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $status = $error = array(); + $canSave = !empty($form['action']) && + array_intersect(array_keys($form['action']), array('save', 'emailTest')); + if ($canSave) { + /* Validate inputs */ + if (!empty($form['smtp']['from']) && + !GalleryUtilities::isValidEmailString($form['smtp']['from'])) { + $error[] = 'form[error][smtp][invalidFrom]'; + } + + /* Verify cookie domain / path */ + $urlGenerator =& $gallery->getUrlGenerator(); + if (isset($form['cookie']['path'])) { + /* It should either be empty or a substring of the request-URI */ + if (!empty($form['cookie']['path'])) { + $paths['cookie'] = $form['cookie']['path']; + $urlComponents = parse_url($urlGenerator->getCurrentUrlDir(true)); + $paths['standalone'] = $urlComponents['path']; + $urlComponents = parse_url($urlGenerator->getCurrentUrlDir(false)); + $paths['embedded'] = $urlComponents['path']; + foreach ($paths as $key => $value) { + if ($value{strlen($value)-1} != '/') { + $value .= '/'; + } + if ($value{0} != '/') { + $value = '/' . $value; + } + $paths[$key] = $value; + } + if (strpos($paths['standalone'], $paths['cookie']) === 0 && + strpos($paths['embedded'], $paths['cookie']) === 0) { + $form['cookie']['path'] = $paths['cookie']; + } else { + $error[] = 'form[error][cookie][invalidPath]'; + } + } else { + $form['cookie']['path']= ''; + } + } + if (isset($form['cookie']['domain'])) { + /* It should either be empty or a substring of the request-host */ + if (!empty($form['cookie']['domain'])) { + $cookieDomain = $form['cookie']['domain']; + if ($cookieDomain{0} != '.') { + $cookieDomain = '.' . $cookieDomain; + } + $urlComponents = parse_url($urlGenerator->getCurrentUrlDir()); + $currentHost = '.' . $urlComponents['host']; + /* + * The cookie domain should be a substring of the host and contain an embedded + * dot + */ + if (strpos($currentHost, $cookieDomain) !== false + && strpos($cookieDomain, '.', 1)) { + $form['cookie']['domain'] = $cookieDomain; + } else { + $error[] = 'form[error][cookie][invalidDomain]'; + } + } else { + $form['cookie']['domain'] = ''; + } + } + + if (empty($form['language']['useBrowserPref'])) { + $form['language']['useBrowserPref'] = '0'; + } else { + $form['language']['useBrowserPref'] = '1'; + } + } + + if (isset($form['action']['emailTest'])) { + if (empty($form['emailTest']['to']) || + !GalleryUtilities::isValidEmailString($form['emailTest']['to'])) { + $error[] = 'form[emailTestError][invalidTo]'; + } else { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + } + } + + if ($canSave && empty($error)) { + foreach (array('permissions.directory', + 'permissions.file', + 'exec.beNice', + 'exec.expectedStatus', + 'default.orderBy', + 'default.orderDirection', + 'default.theme', + 'default.language', + 'language.useBrowserPref', + 'session.lifetime', + 'session.inactivityTimeout', + 'misc.markup', + 'smtp.host', + 'smtp.from', + 'smtp.username', + 'cookie.path', + 'cookie.domain', + 'lock.system', + 'format.date', + 'format.time', + 'format.datetime') as $key) { + list ($outer, $inner) = explode('.', $key); + if (isset($form[$outer][$inner])) { + $ret = GalleryCoreApi::setPluginParameter( + 'module', 'core', $key, $form[$outer][$inner]); + if ($ret) { + return array($ret, null); + } + } + } + if (isset($form['smtp']['password']) && + !preg_match('/^\*+/', $form['smtp']['password'])) { + GalleryUtilities::unsanitizeInputValues($form['smtp']['password'], false); + $ret = GalleryCoreApi::setPluginParameter('module', 'core', 'smtp.password', + base64_encode($form['smtp']['password'])); + if ($ret) { + return array($ret, null); + } + } + + $status['saved'] = 1; + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminCore'; + } + + if (isset($form['action']['emailTest']) && empty($error)) { + $gallery->startRecordingDebugSnippet(); + ob_start(); + $ret = GalleryCoreApi::sendTemplatedEmail( + 'modules/core/templates/EmailTest.tpl', array(), null, + $form['emailTest']['to'], $module->translate('Gallery Email Test')); + $output = ob_get_contents(); + ob_end_clean(); + $debugSnippet = $gallery->stopRecordingDebugSnippet(); + + if ($ret) { + $status['emailTestError'] = $ret->getAsHtml(); + $status['emailTestDebug'] = $output . $debugSnippet; + } else { + $status['emailTestSuccess'] = 1; + } + } else if (isset($form['action']['reset'])) { + + /* Redirect back to the same view to reset the form */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminCore'; + } + + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminCore'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for general Gallery settings + */ +class AdminCoreView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminCore') { + /* Load up our form data */ + foreach (array('permissions.directory', + 'permissions.file', + 'exec.beNice', + 'exec.expectedStatus', + 'default.language', + 'language.useBrowserPref', + 'session.lifetime', + 'session.inactivityTimeout', + 'misc.markup', + 'smtp.host', + 'smtp.from', + 'smtp.username', + 'smtp.password', + 'cookie.path', + 'cookie.domain', + 'lock.system', + 'format.date', + 'format.time', + 'format.datetime') as $key) { + + list ($ret, $value) = + GalleryCoreApi::getPluginParameter('module', 'core', $key); + if ($ret) { + return array($ret, null); + } + + list ($outer, $inner) = explode('.', $key); + $form[$outer][$inner] = $value; + } + + $form['smtp']['password'] = + str_repeat('*', strlen(base64_decode($form['smtp']['password']))); + $form['formName'] = 'AdminCore'; + $form['emailTest']['to'] = ''; + } + + /* Radio button handling */ + $form['language']['useBrowserPref'] = (int)!empty($form['language']['useBrowserPref']); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $platform =& $gallery->getPlatform(); + $translator =& $gallery->getTranslator(); + $AdminCore = $can = array(); + + if ($translator->canTranslate()) { + $can['translate'] = true; + + /* Set up our language selection list */ + $AdminCore['languageList'] = array(); + $supportedLanguages = $translator->getSupportedLanguages(); + foreach ($supportedLanguages as $language => $countryList) { + foreach ($countryList as $country => $languageData) { + $AdminCore['languageList'][$language . '_' . $country] = + $languageData['description']; + } + } + } + + /* Set up our session time lists */ + $sessionTimeList = array(); + foreach (array(15, 30, 45) as $minutes) { + $sessionTimeList[$minutes * 60] = + $module->translate(array('one' => '%d minute', + 'many' => '%d minutes', + 'count' => $minutes, + 'arg1' => $minutes)); + } + foreach (array(1, 6, 12) as $hours) { + $sessionTimeList[$hours * 3600] = + $module->translate(array('one' => '%d hour', + 'many' => '%d hours', + 'count' => $hours, + 'arg1' => $hours)); + } + foreach (array(1, 2, 3, 4, 5, 6) as $days) { + $sessionTimeList[$days * 86400] = + $module->translate(array('one' => '%d day', + 'many' => '%d days', + 'count' => $days, + 'arg1' => $days)); + } + foreach (array(1, 2, 3) as $weeks) { + $sessionTimeList[$weeks * 7 * 86400] = + $module->translate(array('one' => '%d week', + 'many' => '%d weeks', + 'count' => $weeks, + 'arg1' => $weeks)); + } + $sessionTimeList[25 * 365 * 86400] = $module->translate('forever'); + + if (GalleryUtilities::isA($platform, 'UnixPlatform')) { + $can['setPermissions'] = true; + + /* Set up our permission selection lists */ + $AdminCore['permissionsDirectoryList'] = + array('700', '750', '755', '770', '775', '777'); + $AdminCore['permissionsFileList'] = array('600', '640', '644', '660', '664', '666'); + + $can['tweakSystemProcesses'] = true; + $AdminCore['beNiceList'] = array( + '0' => $module->translate('High Priority (Me first!)'), + '1' => $module->translate('Low Priority (I want to share!)')); + } + + /* Miscellaneous lists */ + $embeddedMarkupList = array('none' => $module->translate('No Markup'), + 'bbcode' => $module->translate('BBCode'), + 'html' => $module->translate('Raw HTML')); + + $lockSystemList = array('database' => $module->translate('Database'), + 'flock' => $module->translate('File')); + + $AdminCore['can'] = $can; + $AdminCore['sessionTimeList'] = $sessionTimeList; + $AdminCore['embeddedMarkupList'] = $embeddedMarkupList; + $AdminCore['lockSystemList'] = $lockSystemList; + + $template->setVariable('controller', 'core.AdminCore'); + $template->setVariable('AdminCore', $AdminCore); + $template->javascript('lib/javascript/BlockToggle.js'); + + return array(null, + array('body' => 'modules/core/templates/AdminCore.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminCreateGroup.inc b/Source/gallery2/modules/core/AdminCreateGroup.inc new file mode 100644 index 0000000..977cb83 --- /dev/null +++ b/Source/gallery2/modules/core/AdminCreateGroup.inc @@ -0,0 +1,126 @@ + + * @version $Revision: 15513 $ + */ +class AdminCreateGroupController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + if (isset($form['action']['cancel'])) { + + /* Go back to the AdminGroups view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + + } else if (isset($form['action']['create'])) { + /* + * If all the right fields are in place then go ahead and + * create the group. + */ + if (!empty($form['groupName'])) { + list ($ret, $group) = + GalleryCoreApi::newFactoryInstance('GalleryEntity', 'GalleryGroup'); + if ($ret) { + return array($ret, null); + } + + if (!isset($group)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), + null); + } + + $ret = $group->create($form['groupName']); + if ($ret) { + if (!($ret->getErrorCode() & ERROR_COLLISION)) { + return array($ret, null); + } + + // Set our error status and fall back to the view. + $error[] = 'form[error][groupName][exists]'; + } else { + $ret = $group->save(); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + $status['createdGroup'] = $group->getGroupName(); + } + } else { + // Set our error status and fall back to the view. + $error[] = 'form[error][groupName][missing]'; + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminCreateGroup'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for data to create a new group + */ +class AdminCreateGroupView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminCreateGroup') { + $form['groupName'] = ''; + $form['formName'] = 'AdminCreateGroup'; + } + + $template->setVariable('AdminCreateGroup', array()); + $template->setVariable('controller', 'core.AdminCreateGroup'); + return array(null, + array('body' => 'modules/core/templates/AdminCreateGroup.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminCreateUser.inc b/Source/gallery2/modules/core/AdminCreateUser.inc new file mode 100644 index 0000000..6537466 --- /dev/null +++ b/Source/gallery2/modules/core/AdminCreateUser.inc @@ -0,0 +1,169 @@ + + * @version $Revision: 15513 $ + */ +class AdminCreateUserController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + if (isset($form['action']['cancel'])) { + + /* Go back to the AdminUsers view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminUsers'; + + } else if (isset($form['action']['create'])) { + /* + * If all the right fields are in place then go ahead and + * create the user. + */ + if (!empty($form['userName']) && !empty($form['email']) + && !empty($form['password1']) && $form['password1'] == $form['password2']) { + + list ($ret, $user) = + GalleryCoreApi::newFactoryInstance('GalleryEntity', 'GalleryUser'); + if ($ret) { + return array($ret, null); + } + + if (!isset($user)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), + null); + } + + $ret = $user->create($form['userName']); + if ($ret) { + if (!($ret->getErrorCode() & ERROR_COLLISION)) { + return array($ret, null); + } + + /* Set our error status and fall back to the view */ + $error[] = 'form[error][userName][exists]'; + } else { + $user->setEmail($form['email']); + $user->setFullName($form['fullName']); + $user->setLanguage($form['language']); + GalleryUtilities::unsanitizeInputValues($form['password1'], false); + $user->changePassword($form['password1']); + + $ret = $user->save(); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminUsers'; + $status['createdUser'] = $form['userName']; + } + } else { + foreach (array('userName', 'email', 'password1', 'password2') as $key) { + if (empty($form[$key])) { + $error[] = 'form[error][' . $key . '][missing]'; + } + } + + if (!empty($form['password1']) && !empty($form['password2']) + && $form['password1'] != $form['password2']) { + $error[] = 'form[error][password2][mismatch]'; + } + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminCreateUser'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for data to create a new user + */ +class AdminCreateUserView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminCreateUser') { + /* First time around, set our defaults here. */ + $form['userName'] = ''; + $form['email'] = ''; + $form['fullName'] = ''; + $form['language'] = ''; + $form['formName'] = 'AdminCreateUser'; + } + + /* Set up our language selection list */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + $languageList = array(); + $languageList[''] = $module->translate(''); + + $translator =& $gallery->getTranslator(); + $supportedLanguages = $translator->getSupportedLanguages(); + foreach ($supportedLanguages as $language => $countryList) { + foreach ($countryList as $country => $languageData) { + $languageList[$language . '_' . $country] = + $languageData['description']; + } + } + + $AdminCreateUser = array(); + $AdminCreateUser['languageList'] = $languageList; + + $template->setVariable('AdminCreateUser', $AdminCreateUser); + $template->setVariable('controller', 'core.AdminCreateUser'); + + return array(null, + array('body' => 'modules/core/templates/AdminCreateUser.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminDeleteGroup.inc b/Source/gallery2/modules/core/AdminDeleteGroup.inc new file mode 100644 index 0000000..3769eaf --- /dev/null +++ b/Source/gallery2/modules/core/AdminDeleteGroup.inc @@ -0,0 +1,117 @@ + + * @version $Revision: 15513 $ + */ +class AdminDeleteGroupController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + $groupId = GalleryUtilities::getRequestVariables('groupId'); + + if (isset($form['action']['cancel'])) { + + /* Go back to the AdminGroups view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + + } else if (isset($form['action']['delete'])) { + + /* Only allow users to delete GROUP_NORMAL groups. */ + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::deleteEntityById($group->getId()); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + $status['deletedGroup'] = $group->getGroupName(); + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminDeleteGroup'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for confirmation to delete a group + */ +class AdminDeleteGroupView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $groupId = GalleryUtilities::getRequestVariables('groupId'); + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminDeleteGroup') { + /* First time around initialize our form */ + $form['groupName'] = $group->getGroupName(); + $form['formName'] = 'AdminDeleteGroup'; + } + + $AdminDeleteGroup = array(); + $AdminDeleteGroup['group'] = (array)$group; + + /* Render the HTML body */ + $template->setVariable('AdminDeleteGroup', $AdminDeleteGroup); + $template->setVariable('controller', 'core.AdminDeleteGroup'); + + return array(null, + array('body' => 'modules/core/templates/AdminDeleteGroup.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminDeleteUser.inc b/Source/gallery2/modules/core/AdminDeleteUser.inc new file mode 100644 index 0000000..01dc726 --- /dev/null +++ b/Source/gallery2/modules/core/AdminDeleteUser.inc @@ -0,0 +1,215 @@ + + * @version $Revision: 15513 $ + */ +class AdminDeleteUserController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + $userId = GalleryUtilities::getRequestVariables('userId'); + + if (isset($form['action']['cancel'])) { + + /* Go back to the AdminUsers view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminUsers'; + + } else if (isset($form['action']['delete'])) { + + /* Get the anonymous user for checks */ + list ($ret, $anonymousUserId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return array($ret, null); + } + + /* + * Check if the new owner exists (if the name was spelled correctly) + */ + if (isset($form['text']['newOwner']) && $form['text']['newOwner'] != null) { + list ($ret, $newOwner) = + GalleryCoreApi::fetchUserByUserName($form['text']['newOwner']); + if ($ret) { + if (!($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } else { /* the user was spelled incorrectly, return an error page */ + $error[] = 'form[error][text][noSuchUser]'; + } + } else if ($newOwner->getId() == $userId) { + /* new Owner = deleted user, doesn't make sense */ + $error[] = 'form[error][text][newOwnerIsDeletedUser]'; + } else if ($newOwner->getId() == $anonymousUserId) { + $error[] = 'form[error][text][newOwnerIsGuest]'; + } + } else { /* new owner field is empty, set the default new owner: 'admin' */ + $activeUserId = $gallery->getActiveUserId(); /* activeUser = site admin */ + list ($ret, $newOwner) = GalleryCoreApi::loadEntitiesById($activeUserId); + if ($ret) { + return array($ret, null); + } + } + + /* Verify the user exists */ + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return array($ret, null); + } + + /* Get all items by the User */ + list ($ret, $itemIds) = GalleryCoreApi::fetchAllItemIdsByOwnerId($user->getId()); + if ($ret) { + return array($ret, null); + } + + /* + * Only continue to delete the user if we have no errors and if we don't try + * to delete the anonymous user or the active user. In theory we should never + * get to this point unless we're operating on a valid user, so don't bother + * sending errors back in case we can't delete. + */ + if (empty($error) && $userId != $anonymousUserId + && $userId != $gallery->getActiveUserId() + && (empty($itemIds) || (!empty($itemIds) && isset($form['deletionVariant']) + && ($form['deletionVariant'] == 'assignNewOwner' + || $form['deletionVariant'] == 'deleteItems')))) { + + /* Items for this user exist, first delete the items, then the user */ + if (!empty($itemIds)) { + + /* Only delete items if we choose this deletion variant */ + if ($form['deletionVariant'] == 'deleteItems') { + /* + * Delete all items the user has permission to delete, + * don't delete albums that still contain items + */ + $ret = GalleryCoreApi::deleteUserItems($user->getId()); + if ($ret) { + return array($ret, null); + } + } + + /* Assign a new owner for the (remaining) items */ + $ret = GalleryCoreApi::remapOwnerId($user->getId(), $newOwner->getId()); + if ($ret) { + return array($ret, null); + } + + } /* /if !empty($itemIds) */ + + /* Delete the user */ + $ret = GalleryCoreApi::deleteEntityById($user->getId()); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminUsers'; + $status['deletedUser'] = $user->getUsername(); + } /* /if empty($error) && $userId != $anonymousUserId ... */ + } /* /if isset($form['action']['delete']) */ + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminDeleteUser'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for confirmation to delete a user + */ +class AdminDeleteUserView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $userId = GalleryUtilities::getRequestVariables('userId'); + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminDeleteUser') { + /* First time around initialize our form */ + $form['text']['newOwner'] = ''; + $form['formName'] = 'AdminDeleteUser'; + } + + $AdminDeleteUser = array(); + $AdminDeleteUser['user'] = (array)$user; + /* Get all items / the item count of the oldUser */ + list ($ret, $itemIds) = GalleryCoreApi::fetchAllItemIdsByOwnerId($user->getId()); + if ($ret) { + return array($ret, null); + } + $AdminDeleteUser['numberOfItems'] = count($itemIds); + + $template->setVariable('AdminDeleteUser', $AdminDeleteUser); + $template->setVariable('controller', 'core.AdminDeleteUser'); + return array(null, + array('body' => 'modules/core/templates/AdminDeleteUser.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminEditGroup.inc b/Source/gallery2/modules/core/AdminEditGroup.inc new file mode 100644 index 0000000..610e805 --- /dev/null +++ b/Source/gallery2/modules/core/AdminEditGroup.inc @@ -0,0 +1,153 @@ + + * @version $Revision: 15513 $ + */ +class AdminEditGroupController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + $groupId = GalleryUtilities::getRequestVariables('groupId'); + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if ($ret) { + return array($ret, null); + } + + if (isset($form['action']['cancel'])) { + + /* Redirect back to the AdminGroups view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + + } else if (isset($form['action']['undo'])) { + + /* Redirect back to the same view to reset the form */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminEditGroup'; + $redirect['groupId'] = $groupId; + + } else if (isset($form['action']['save'])) { + + if (empty($form['groupName'])) { + $error[] = 'form[error][groupName][missing]'; + } else { + list ($ret, $tmpGroup) = GalleryCoreApi::fetchGroupByGroupname($form['groupName']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + + if (!empty($tmpGroup) && $tmpGroup->getId() != $groupId) { + $error[] = 'form[error][groupName][exists]'; + } + } + + if (empty($error)) { + /* Save our changes */ + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($groupId); + if ($ret) { + return array($ret, null); + } + + /* Refresh our object, now that it's locked */ + list ($ret, $group) = $group->refresh(); + if ($ret) { + return array($ret, null); + } + + /* Enact the change */ + $group->setGroupName($form['groupName']); + $ret = $group->save(); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + $status['modifiedGroup'] = $group->getGroupName(); + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminEditGroup'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show options available to groups + */ +class AdminEditGroupView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $groupId = GalleryUtilities::getRequestVariables('groupId'); + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminEditGroup') { + /* First time around initialize our form */ + $form['groupName'] = $group->getGroupName(); + $form['formName'] = 'AdminEditGroup'; + } + + $AdminEditGroup = array(); + $AdminEditGroup['group'] = (array)$group; + $template->setVariable('AdminEditGroup', $AdminEditGroup); + $template->setVariable('controller', 'core.AdminEditGroup'); + + return array(null, array('body' => 'modules/core/templates/AdminEditGroup.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminEditGroupUsers.inc b/Source/gallery2/modules/core/AdminEditGroupUsers.inc new file mode 100644 index 0000000..b490ff0 --- /dev/null +++ b/Source/gallery2/modules/core/AdminEditGroupUsers.inc @@ -0,0 +1,251 @@ + + * @version $Revision: 15513 $ + */ +class AdminEditGroupUsersController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $error = $status = array(); + + /* Load the group */ + $groupId = GalleryUtilities::getRequestVariables('groupId'); + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if ($ret) { + return array($ret, null); + } + + if (isset($form['action']['filterClear'])) { + + /* Clear the filter */ + GalleryUtilities::putRequestVariable('form[list][filter]', null); + + } else if (isset($form['action']['done'])) { + + /* Go back to the AdminGroups view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminGroups'; + + } else if ($group->getGroupType() != GROUP_ALL_USERS) { + if (isset($form['action']['remove'])) { + + /* Remove the user from the group */ + $removedUsers = 0; + if (empty($form['userIds'])) { + $error[] = 'form[error][list][noUserSelected]'; + } else { + foreach ($form['userIds'] as $userId => $dummy) { + /* Can't remove yourself from the site admins list */ + if ($group->getGroupType() == GROUP_SITE_ADMINS && + $userId == $gallery->getActiveUserId()) { + $error[] = 'form[error][list][cantRemoveSelf]'; + break; + } + } + } + + if (empty($error)) { + foreach ($form['userIds'] as $userId => $dummy) { + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::removeUserFromGroup($user->getId(), $groupId); + if ($ret) { + return array($ret, null); + } + $removedUsers++; + } + + /* Redirect back to the same view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminEditGroupUsers'; + $redirect['groupId'] = $group->getId(); + $status['removedUsers'] = $removedUsers; + $status['removedUser'] = + $removedUsers == 1 ? $user->getUsername() : $removedUsers; + } + + } else if (isset($form['action']['add'])) { + + /* Add the user to the group */ + if (empty($form['text']['userName'])) { + $error[] = 'form[error][text][userName][missing]'; + } else { + list ($ret, $user) = + GalleryCoreApi::fetchUserByUsername($form['text']['userName']); + if ($ret && ($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + $error[] = 'form[error][text][userName][invalid]'; + } else if ($ret) { + return array($ret, null); + } else { + /* Is the user already in the group? */ + list ($ret, $inGroup) = + GalleryCoreApi::isUserInGroup($user->getId(), $groupId); + if ($ret) { + return array($ret, null); + } + if ($inGroup) { + $error[] = 'form[error][text][userName][alreadyInGroup]'; + } + } + } + + if (empty($error)) { + $ret = GalleryCoreApi::addUserToGroup($user->getId(), $groupId); + if ($ret) { + return array($ret, null); + } + + /* Redirect back to the same view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminEditGroupUsers'; + $redirect['groupId'] = $group->getId(); + $status['addedUser'] = $user->getUsername(); + } + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminEditGroupUsers'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show the possibilities of user-group mappings for a specified group. + */ +class AdminEditGroupUsersView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + /* Set some defaults, if necessary */ + if (!isset($form['list']['filter'])) { + $form['list']['filter'] = ''; + } + if (empty($form['list']['page'])) { + $form['list']['page'] = 1; + } + + /* Load the group */ + $groupId = GalleryUtilities::getRequestVariables('groupId'); + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if ($ret) { + return array($ret, null); + } + + /* First time on this page, initialize form fields */ + if ($form['formName'] != 'AdminEditGroupUsers') { + $form['text']['userName'] = ''; + $form['formName'] = 'AdminEditGroupUsers'; + } + + /* Initialize the user list */ + list ($ret, $totalUserCount) = GalleryCoreApi::fetchUserCount(null, $group->getId()); + if ($ret) { + return array($ret, null); + } + + $form['list']['count'] = $totalUserCount; + $form['list']['pageSize'] = $totalUserCount > 10 ? 10 : $totalUserCount + 2; + + if (!empty($form['list']['filter'])) { + list ($ret, $form['list']['count']) = GalleryCoreApi::fetchUserCount( + $form['list']['filter'], + $group->getId() + ); + } + + /* Figure out our max pages, make sure our current page fits in it */ + $form['list']['maxPages'] = ceil($form['list']['count'] / $form['list']['pageSize']); + if ($form['list']['page'] > $form['list']['maxPages']) { + $form['list']['page'] = $form['list']['maxPages']; + } + + /* Calculate the next/back pages */ + $form['list']['nextPage'] = min($form['list']['page']+1, $form['list']['maxPages']); + $form['list']['backPage'] = max(1, $form['list']['page']-1); + + list ($ret, $users) = GalleryCoreApi::fetchUsersForGroup( + $group->getId(), + $form['list']['pageSize'], + (($form['list']['page'] - 1) * $form['list']['pageSize']), + $form['list']['filter'] + ); + if ($ret) { + return array($ret, null); + } + + $form['list']['userNames'] = array(); + $canRemove = false; + foreach ($users as $userId => $userName) { + $form['list']['userNames'][$userId]['userName'] = $userName; + if ($group->getGroupType() == GROUP_SITE_ADMINS + && $userId == $gallery->getActiveUserId()) { + $form['list']['userNames'][$userId]['can']['remove'] = false; + } else { + $form['list']['userNames'][$userId]['can']['remove'] = true; + $canRemove = true; + } + } + + $AdminEditGroupUsers = array(); + $AdminEditGroupUsers['totalUserCount'] = $totalUserCount; + $AdminEditGroupUsers['canRemove'] = $canRemove; + $AdminEditGroupUsers['group'] = (array)$group; + + $template->setVariable('AdminEditGroupUsers', $AdminEditGroupUsers); + $template->setVariable('controller', 'core.AdminEditGroupUsers'); + return array(null, array('body' => 'modules/core/templates/AdminEditGroupUsers.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminEditUser.inc b/Source/gallery2/modules/core/AdminEditUser.inc new file mode 100644 index 0000000..b80740d --- /dev/null +++ b/Source/gallery2/modules/core/AdminEditUser.inc @@ -0,0 +1,264 @@ + + * @version $Revision: 15513 $ + */ +class AdminEditUserController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + + $userId = GalleryUtilities::getRequestVariables('userId'); + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return array($ret, null); + } + + /* We treat anonymous users differently, so see if we're editing the anonymous user */ + list ($ret, $anonymousUserId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return array($ret, null); + } + $isAnonymous = ($userId == $anonymousUserId); + + if (isset($form['action']['cancel'])) { + + /* Redirect back to the AdminUsers view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminUsers'; + + } else if (isset($form['action']['undo'])) { + + /* Redirect back to the same view to reset the form */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminEditUser'; + $redirect['userId'] = $userId; + + } else if (isset($form['action']['save'])) { + /* Validate our data before we continue. */ + + /* username is required and might conflict */ + if (empty($form['userName'])) { + $error[] = 'form[error][userName][missing]'; + } + + if (!empty($form['userName'])) { + list ($ret, $tmpUser) = GalleryCoreApi::fetchUserByUsername($form['userName']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + + if (!empty($tmpUser) && $tmpUser->getId() != $userId) { + $error[] = 'form[error][userName][duplicate]'; + } + } + + /* full name is optional for everybody */ + + /* language is optional for everybody */ + + /* email is suggested, but optional for administrator edits */ + if (!empty($form['email'])) { + $form['email'] = trim($form['email']); + if (!GalleryUtilities::isValidEmailString($form['email'])) { + $error[] = 'form[error][email][invalid]'; + } + } + + if (!$isAnonymous) { + if ($form['password1'] != $form['password2']) { + $error[] = 'form[error][password2][mismatch]'; + } + } + + if (isset($form['action']['resetFailedLogins'])) { + $ret = GalleryCoreApi::removeMapEntry( + 'FailedLoginsMap', array('userName' => $user->getUserName())); + if ($ret) { + return array($ret, null); + } + } + + /* If all the right fields are in place then go ahead and modify the user. */ + if (empty($error)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($user->getId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $user) = $user->refresh(); + if ($ret) { + return array($ret, null); + } + + $user->setUserName(trim($form['userName'])); + $user->setFullname(trim($form['fullName'])); + $user->setLocked(!empty($form['locked']) ? 1 : 0); + if (!$isAnonymous) { + $user->setEmail($form['email']); + $user->setLanguage($form['language']); + if (!empty($form['password1'])) { + GalleryUtilities::unsanitizeInputValues($form['password1'], false); + $user->changePassword($form['password1']); + } + } + + $ret = $user->save(); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminUsers'; + $status['modifiedUser'] = $user->getUserName(); + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminEditUser'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show a form to change user options + */ +class AdminEditUserView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $userId = GalleryUtilities::getRequestVariables('userId'); + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup($userId); + if ($ret) { + return array($ret, null); + } + + /* Load the form with user data the first time around. */ + if ($form['formName'] != 'AdminEditUser') { + $form['userName'] = $user->getUserName(); + $form['fullName'] = $user->getFullName(); + $form['email'] = $user->getEmail(); + $form['language'] = $user->getLanguage(); + $form['formName'] = 'AdminEditUser'; + $form['locked'] = $user->isLocked(); + } + + /* Email is not required for the anonymous user */ + list ($ret, $anonymousUserId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return array($ret, null); + } + + $show['email'] = ($userId != $anonymousUserId); + $show['language'] = ($userId != $anonymousUserId); + $show['password'] = ($userId != $anonymousUserId); + + /* Only show the lock option if the user being edited is not an admin */ + $show['locked'] = !$isAdmin; + + if ($show['language']) { + /* Set up our language selection list */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $languageList = array(); + $languageList[''] = $module->translate(''); + $translator =& $gallery->getTranslator(); + $supportedLanguages = $translator->getSupportedLanguages(); + foreach ($supportedLanguages as $language => $countryList) { + foreach ($countryList as $country => $languageData) { + $languageList[$language . '_' . $country] = $languageData['description']; + } + } + } + + list ($ret, $searchResults) = GalleryCoreApi::getMapEntry( + 'FailedLoginsMap', + array('count'), + array('userName' => $user->getUserName())); + if ($ret) { + return array($ret, null); + } + + if ($searchResults->resultCount() > 0) { + $result = $searchResults->nextResult(); + $failedLoginCount = $result[0]; + } else { + $failedLoginCount = 0; + } + + $AdminEditUser = array(); + $AdminEditUser['show'] = $show; + $AdminEditUser['user'] = (array)$user; + $AdminEditUser['failedLoginCount'] = $failedLoginCount; + if (isset($languageList)) { + $AdminEditUser['languageList'] = $languageList; + } + + $template->setVariable('AdminEditUser', $AdminEditUser); + $template->setVariable('controller', 'core.AdminEditUser'); + return array(null, array('body' => 'modules/core/templates/AdminEditUser.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminGroups.inc b/Source/gallery2/modules/core/AdminGroups.inc new file mode 100644 index 0000000..dfeb898 --- /dev/null +++ b/Source/gallery2/modules/core/AdminGroups.inc @@ -0,0 +1,248 @@ + + * @version $Revision: 15513 $ + */ +class AdminGroupsController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + + $group = null; + if (!empty($form['text']['groupName'])) { + list ($ret, $group) = + GalleryCoreApi::fetchGroupByGroupName($form['text']['groupName']); + if ($ret) { + if (!($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + } + } + + if (isset($form['action']['filterClear'])) { + + /* Clear the filter */ + GalleryUtilities::putRequestVariable('form[list][filter]', null); + + } else if (isset($form['action']['create'])) { + + /* Show the "create group" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminCreateGroup'; + + } else if (isset($form['action']['editFromText'])) { + + if (empty($form['text']['groupName'])) { + $error[] = 'form[error][text][noGroupSpecified]'; + } else if ($group == null) { + $error[] = 'form[error][text][noSuchGroup]'; + } else { + /* Show the "edit group" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminEditGroup'; + $redirect['groupId'] = $group->getId(); + } + + } else if (isset($form['action']['deleteFromText'])) { + + if (empty($form['text']['groupName'])) { + $error[] = 'form[error][text][noGroupSpecified]'; + } else if ($group == null) { + $error[] = 'form[error][text][noSuchGroup]'; + } else { + /* + * In theory we should never get to this point unless we're operating on a valid + * group, so don't bother sending errors back in case we can't delete. + */ + if ($group->getGroupType() != GROUP_NORMAL) { + $error[] = 'form[error][text][cantDeleteGroup]'; + } + } + + if (empty($error)) { + /* Show the "delete group" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminDeleteGroup'; + $redirect['groupId'] = $group->getId(); + } + + } else if (isset($form['action']['addRemoveUsersFromText'])) { + + if (empty($form['text']['groupName'])) { + $error[] = 'form[error][text][noGroupSpecified]'; + } else if ($group == null) { + $error[] = 'form[error][text][noSuchGroup]'; + } else { + /* + * In theory we should never get to this point unless we're operating on a valid + * group, so don't bother sending errors back in case we can't delete. + */ + if ($group->getGroupType() == GROUP_ALL_USERS || + $group->getGroupType() == GROUP_EVERYBODY) { + $error[] = 'form[error][text][cantEditGroupUsers]'; + } + } + + if (empty($error)) { + /* Show the "edit group's users" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminEditGroupUsers'; + $redirect['groupId'] = $group->getId(); + } + + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminGroups'; + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show available options to administer the groups of Gallery + */ +class AdminGroupsView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + /* Load some standard form parameters */ + if ($form['formName'] != 'AdminGroups') { + $form['text']['groupName'] = ''; + $form['formName'] = 'AdminGroups'; + } + + /* Set some defaults, if necessary */ + if (!isset($form['list']['filter'])) { + $form['list']['filter'] = ''; + } + + if (empty($form['list']['page'])) { + $form['list']['page'] = 1; + } + + list ($ret, $totalGroupCount) = GalleryCoreApi::fetchGroupCount(); + if ($ret) { + return array($ret, null); + } + + $form['list']['count'] = $totalGroupCount; + $form['list']['pageSize'] = $totalGroupCount > 10 ? 10 : $totalGroupCount + 2; + + /* If we have a filter, find out how many groups match it */ + if (!empty($form['list']['filter'])) { + list ($ret, $form['list']['count']) = + GalleryCoreApi::fetchGroupCount($form['list']['filter']); + if ($ret) { + return array($ret, null); + } + } + + /* Figure out our max pages, make sure our current page fits in it */ + $form['list']['maxPages'] = ceil($form['list']['count'] / $form['list']['pageSize']); + if ($form['list']['page'] > $form['list']['maxPages']) { + $form['list']['page'] = $form['list']['maxPages']; + } + + /* Calculate the next/back pages */ + $form['list']['nextPage'] = min($form['list']['page']+1, $form['list']['maxPages']); + $form['list']['backPage'] = max(1, $form['list']['page']-1); + + list ($ret, $groupNames) = + GalleryCoreApi::fetchGroupNames($form['list']['pageSize'], + (($form['list']['page'] - 1) * + $form['list']['pageSize']), + $form['list']['filter']); + if ($ret) { + return array($ret, null); + } + + list ($ret, $allUserGroupId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.allUserGroup'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $everybodyGroupId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.everybodyGroup'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $adminGroupId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.adminGroup'); + if ($ret) { + return array($ret, null); + } + + $form['list']['groupNames'] = array(); + foreach ($groupNames as $groupId => $groupName) { + $form['list']['groupNames'][$groupId]['groupName'] = $groupName; + if ($groupId == $allUserGroupId) { + $form['list']['groupNames'][$groupId]['can']['delete'] = false; + $form['list']['groupNames'][$groupId]['can']['editUsers'] = false; + } else if ($groupId == $everybodyGroupId) { + $form['list']['groupNames'][$groupId]['can']['delete'] = false; + $form['list']['groupNames'][$groupId]['can']['editUsers'] = false; + } else if ($groupId == $adminGroupId) { + $form['list']['groupNames'][$groupId]['can']['delete'] = false; + $form['list']['groupNames'][$groupId]['can']['editUsers'] = true; + } else { + $form['list']['groupNames'][$groupId]['can']['delete'] = true; + $form['list']['groupNames'][$groupId]['can']['editUsers'] = true; + } + } + + $AdminGroups = array(); + $AdminGroups['totalGroupCount'] = $totalGroupCount; + + $template->setVariable('AdminGroups', $AdminGroups); + $template->setVariable('controller', 'core.AdminGroups'); + return array(null, array('body' => 'modules/core/templates/AdminGroups.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminMaintenance.inc b/Source/gallery2/modules/core/AdminMaintenance.inc new file mode 100644 index 0000000..2427321 --- /dev/null +++ b/Source/gallery2/modules/core/AdminMaintenance.inc @@ -0,0 +1,204 @@ + + * @version $Revision: 15513 $ + */ +class AdminMaintenanceController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + if (isset($form['action']['runTask'])) { + $taskId = GalleryUtilities::getRequestVariables('taskId'); + + list ($ret, $tasks) = MaintenanceHelper_simple::fetchTasks(); + if ($ret) { + return array($ret, null); + } + + if (isset($tasks[$taskId])) { + $task =& $tasks[$taskId]; + + if ($task->requiresProgressBar()) { + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($this, 'runTask'), array($taskId, $task, true)); + $results['delegate']['view'] = 'core.ProgressBar'; + } else { + list ($ret, $success) = $this->runTask($taskId, $task, false); + if ($ret) { + return array($ret, null); + } + + $status['run'] = array('taskId' => $taskId, 'success' => $success); + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminMaintenance'; + } + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else if (empty($results['delegate'])) { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminMaintenance'; + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } + + function runTask($taskId, $task, $useProgressBar) { + global $gallery; + $urlGenerator =& $gallery->getUrlGenerator(); + + list ($ret1, $success, $details) = $task->run(); + if ($ret1) { + $details = $ret1->getAsHtml(); + } + $ret2 = MaintenanceHelper_simple::addRun($taskId, time(), $success, $details); + + if ($ret1 || $ret2) { + $ret = $ret1 ? $ret1 : $ret2; + return array($ret, null); + } + + $status['run']['success'] = $success; + $status['run']['taskId'] = $taskId; + $session =& $gallery->getSession(); + + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminMaintenance'; + $redirect['statusId'] = $session->putStatus($status); + + if ($useProgressBar) { + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->completeProgressBar($urlGenerator->generateUrl($redirect)); + } + + return array(null, $success); + } +} + +/** + * This view will show available maintenance tasks + */ +class AdminMaintenanceView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + /* Load some standard form parameters */ + if ($form['formName'] != 'AdminMaintenance') { + $form['formName'] = 'AdminMaintenance'; + } + + list ($ret, $tasks) = MaintenanceHelper_simple::fetchTasks(); + if ($ret) { + return array($ret, null); + } + + $AdminMaintenance = array(); + foreach ($tasks as $taskId => $task) { + list ($ret, $info) = MaintenanceHelper_simple::fetchLastRun($taskId); + if ($ret) { + return array($ret, null); + } + + $AdminMaintenance['tasks'][$taskId] = $task->getInfo(); + if (isset($info)) { + $AdminMaintenance['tasks'][$taskId]['runId'] = $info['runId']; + $AdminMaintenance['tasks'][$taskId]['timestamp'] = $info['timestamp']; + $AdminMaintenance['tasks'][$taskId]['success'] = $info['success']; + $AdminMaintenance['tasks'][$taskId]['details'] = $info['details']; + } else { + $AdminMaintenance['tasks'][$taskId]['runId'] = null; + $AdminMaintenance['tasks'][$taskId]['timestamp'] = null; + $AdminMaintenance['tasks'][$taskId]['success'] = null; + $AdminMaintenance['tasks'][$taskId]['details'] = null; + } + } + + $template->setVariable('AdminMaintenance', $AdminMaintenance); + $template->setVariable('controller', 'core.AdminMaintenance'); + + $template->javascript('lib/javascript/BlockToggle.js'); + return array(null, + array('body' => 'modules/core/templates/AdminMaintenance.tpl')); + } +} + +/** + * Base class for all maintenance tasks + * @abstract + */ +class MaintenanceTask { + + /** + * Return internationalized text about this task + * @return array('title' => ..., 'description' => ..., 'l10Domain' => ...) + */ + function getInfo() { + return array(); + } + + /** + * Execute the task + * @return array object GalleryStatus a status code + * boolean success or failure + * array string output text + */ + function run() { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Will this task run so long that it requires a progress bar? + * @return true or false + */ + function requiresProgressBar() { + return false; + } +} +?> diff --git a/Source/gallery2/modules/core/AdminPerformance.inc b/Source/gallery2/modules/core/AdminPerformance.inc new file mode 100644 index 0000000..ce36644 --- /dev/null +++ b/Source/gallery2/modules/core/AdminPerformance.inc @@ -0,0 +1,196 @@ + + * @version $Revision: 15513 $ + */ +class AdminPerformanceController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $results = $status = $error = array(); + list ($ret, $acceleration) = + GalleryCoreApi::getPluginParameter('module', 'core', 'acceleration'); + if ($ret) { + return array($ret, null); + } + if ($acceleration) { + $acceleration = unserialize($acceleration); + } + + if (isset($form['action']['save'])) { + foreach (array('user', 'guest') as $class) { + if (!isset($form['acceleration'][$class])) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Missing '$class' from the form"), null); + } + $acceleration[$class]['type'] = $form['acceleration'][$class]['type']; + switch ($form['acceleration'][$class]['type']) { + case 'partial': + case 'full': + $acceleration[$class]['expiration'] = + (int)$form['acceleration'][$class]['expiration']; + break; + + case 'none': + if (!isset($acceleration[$class]['expiration'])) { + $acceleration[$class]['expiration'] = 0; + } + break; + + default: + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + } + $ret = GalleryCoreApi::setPluginParameter( + 'module', 'core', 'acceleration', serialize($acceleration)); + if ($ret) { + return array($ret, null); + } + + $status['saved'] = 1; + $redirect = array('view' => 'core.SiteAdmin', + 'subView' => 'core.AdminPerformance'); + } else if (isset($form['action']['clear'])) { + $ret = GalleryCoreApi::removeAllMapEntries('GalleryCacheMap'); + if ($ret) { + return array($ret, null); + } + $status['cleared'] = 1; + $redirect = array('view' => 'core.SiteAdmin', + 'subView' => 'core.AdminPerformance'); + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else if (empty($results['delegate'])) { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminPerformance'; + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * Update performance settings + */ +class AdminPerformanceView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + /* Load some standard form parameters */ + if ($form['formName'] != 'AdminPerformance') { + $form['formName'] = 'AdminPerformance'; + + list ($ret, $acceleration) = + GalleryCoreApi::getPluginParameter('module', 'core', 'acceleration'); + if ($ret) { + return array($ret, null); + } + if ($acceleration) { + $form['acceleration'] = unserialize($acceleration); + } + foreach (array('user', 'guest') as $class) { + if (!isset($form['acceleration'][$class]['type'])) { + $form['acceleration'][$class]['type'] = 'none'; + } + if (!isset($form['acceleration'][$class]['expiration'])) { + $form['acceleration'][$class]['expiration'] = '0'; + } + } + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + /* Set up our type lists */ + $typeList = array('none' => $module->translate('No acceleration'), + 'partial' => $module->translate('Partial acceleration'), + 'full' => $module->translate('Full acceleration')); + + /* Set up our time lists */ + $expirationTimeLists = array(); + foreach (array(15, 30, 45) as $minutes) { + $expirationTimeList[$minutes * 60] = + $module->translate(array('one' => '%d minute', + 'many' => '%d minutes', + 'count' => $minutes, + 'arg1' => $minutes)); + } + foreach (array(1, 6, 12) as $hours) { + $expirationTimeList[$hours * 3600] = + $module->translate(array('one' => '%d hour', + 'many' => '%d hours', + 'count' => $hours, + 'arg1' => $hours)); + } + foreach (array(1, 2, 3, 4, 5, 6) as $days) { + $expirationTimeList[$days * 86400] = + $module->translate(array('one' => '%d day', + 'many' => '%d days', + 'count' => $days, + 'arg1' => $days)); + } + foreach (array(1, 2, 3) as $weeks) { + $expirationTimeList[$weeks * 7 * 86400] = + $module->translate(array('one' => '%d week', + 'many' => '%d weeks', + 'count' => $weeks, + 'arg1' => $weeks)); + } + + $AdminPerformance = array(); + $AdminPerformance['expirationTimeList'] = $expirationTimeList; + $AdminPerformance['typeList'] = $typeList; + + $template->setVariable('AdminPerformance', $AdminPerformance); + $template->setVariable('controller', 'core.AdminPerformance'); + + return array(null, array('body' => 'modules/core/templates/AdminPerformance.tpl')); + } +} + +?> diff --git a/Source/gallery2/modules/core/AdminPlugins.inc b/Source/gallery2/modules/core/AdminPlugins.inc new file mode 100644 index 0000000..198f9d0 --- /dev/null +++ b/Source/gallery2/modules/core/AdminPlugins.inc @@ -0,0 +1,215 @@ + + * @version $Revision: 16471 $ + */ +class AdminPluginsView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + $themeGroup = array('group' => 'theme', 'groupLabel' => $core->translate('Themes')); + + if ($form['formName'] != 'AdminPlugins') { + /* We have no form variables */ + $form['formName'] = 'AdminPlugins'; + } + + foreach (array('module', 'theme') as $type) { + /* Load the module list */ + list ($ret, $pluginStatus[$type]) = GalleryCoreApi::fetchPluginStatus($type, true); + if ($ret) { + return array($ret, null); + } + + /* + * It's possible that we have some out-of-date plugins which haven't been deactivated + * yet, since the deactivation only occurs when we try to load the module. Load all + * the active plugins now to force the version check, then reload the plugin status + * when we're done to pick up any changes we trigger. + */ + foreach ($pluginStatus[$type] as $pluginId => $status) { + if (!empty($status['active'])) { + list ($ret, $module) = + GalleryCoreApi::loadPlugin($type, $pluginId, false, true); + if ($ret && !($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH)) { + return array($ret, null); + } + } + } + + /* Reload the plugin list, which may now be updated because of obsolete modules. */ + list ($ret, $pluginStatus[$type]) = GalleryCoreApi::fetchPluginStatus($type, true); + if ($ret) { + return array($ret, null); + } + + $platform =& $gallery->getPlatform(); + $g2Dir = dirname(dirname(dirname(__FILE__))) . '/'; + GalleryCoreApi::requireOnce('modules/core/PluginCallback.inc'); + foreach ($pluginStatus[$type] as $pluginId => $status) { + list ($ret, $plugin) = GalleryCoreApi::loadPlugin($type, $pluginId, true); + if ($ret) { + return array($ret, null); + } + + $entry = array(); + $entry['type'] = $type; + $entry['name'] = $plugin->translate($plugin->getName()); + $entry['id'] = $plugin->getId(); + $entry['description'] = $plugin->translate($plugin->getDescription()); + $entry['version'] = $plugin->getVersion(); + $entry['installedVersion'] = isset($status['version']) ? $status['version'] : null; + $entry['deletable'] = + ($platform->is_writeable("$g2Dir{$type}s/$pluginId") && + $platform->is_writeable("$g2Dir{$type}s/$pluginId/$type.inc")) ? 1 : 0; + + list ($ret, $entry['state']) = + PluginCallbackView::getPluginState($type, $plugin, $status); + if ($ret) { + return array($ret, null); + } + + $screenshot = "{$type}s/$pluginId/images/screenshot.png"; + if ($platform->file_exists($g2Dir . $screenshot)) { + $entry['screenshot'] = $screenshot; + } + + if ($entry['state'] == 'incompatible') { + $entry['api']['required']['plugin'] = + join('.', $type == 'theme' ? + $plugin->getRequiredThemeApi() : $plugin->getRequiredModuleApi()); + $entry['api']['provided']['plugin'] = join('.', GalleryModule::getApiVersion()); + $entry['api']['required']['core'] = join('.', $plugin->getRequiredCoreApi()); + $entry['api']['provided']['core'] = join('.', GalleryCoreApi::getApiVersion()); + } + + if ($type == 'theme') { + $plugins[] = array_merge($entry, $themeGroup); + } else { + $plugins[] = array_merge($entry, $plugin->getGroup()); + } + } + } + usort($plugins, array($this, 'pluginSort')); + + $AdminPlugins = array(); + $AdminPlugins['plugins'] = $plugins; + list ($ret, $AdminPlugins['defaultTheme']) = GalleryCoreApi::getPluginParameter( + 'module', 'core', 'default.theme'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $repositories, $repositoryInitErrorCount) = + GalleryRepository::getRepositories(); + if ($ret) { + return array($ret, null); + } + + $AdminPlugins['showGetMorePluginsTip'] = 1; + foreach ($repositories as $source => $repository) { + if ($repository->localIndexExists()) { + $AdminPlugins['showGetMorePluginsTip'] = 0; + break; + } + } + + /* Only the codebase install can delete plugins, not multisites */ + $AdminPlugins['canDeletePlugins'] = + GALLERY_CONFIG_DIR == dirname(dirname(dirname(__FILE__))); + + $template->setVariable('AdminPlugins', $AdminPlugins); + $template->setVariable('controller', 'core.AdminPlugins'); + $template->javascript('lib/yui/yahoo-min.js'); + $template->javascript('lib/yui/dom-min.js'); + $template->javascript('lib/yui/event-min.js'); + $template->javascript('lib/yui/connection-min.js'); + $template->javascript('lib/yui/animation-min.js'); + $template->javascript('lib/yui/container-min.js'); + $template->javascript('modules/core/templates/AdminPlugins.js'); + + return array(null, array('body' => 'modules/core/templates/AdminPlugins.tpl')); + } + + function pluginSort($a, $b) { + static $groupOrder, $stateOrder; + if (!isset($stateOrder)) { + /* + * unupgraded first, unconfigured second, incompatible third, inactive forth, + * active fifth, uninstalled last + */ + $stateOrder = array('unupgraded' => 1, 'unconfigured' => 2, 'incompatible' => 3, + 'inactive' => 4, 'active' => 5, 'uninstalled' => 6); + } + if (!isset($groupOrder)) { + /* gallery first, toolkits second, other last */ + $groupOrder = array('gallery' => 1, 'toolkits' => 2, '' => 3, 'other' => 4); + } + $ag = $a['group']; + $bg = $b['group']; + if ($ag != $bg) { + $ao = isset($groupOrder[$ag]) ? $groupOrder[$ag] : $groupOrder['']; + $bo = isset($groupOrder[$bg]) ? $groupOrder[$bg] : $groupOrder['']; + if ($ao != $bo) { + return ($ao > $bo) ? 1 : -1; + } + $ag = isset($a['groupLabel']) ? $a['groupLabel'] : $ag; + $bg = isset($b['groupLabel']) ? $b['groupLabel'] : $bg; + return ($ag > $bg) ? 1 : -1; + } else { + $as = $a['state']; + $bs = $b['state']; + $aso = $stateOrder[$as]; + $bso = $stateOrder[$bs]; + if($aso == $bso) { + $an = strtolower($a['name']); + $bn = strtolower($b['name']); + if ($an == $bn) { + return 0; + } else { + return ($an > $bn) ? 1 : -1; + } + } else { + return ($aso > $bso) ? 1 : -1; + } + } + } +} +?> diff --git a/Source/gallery2/modules/core/AdminRepository.inc b/Source/gallery2/modules/core/AdminRepository.inc new file mode 100644 index 0000000..2cc2cd9 --- /dev/null +++ b/Source/gallery2/modules/core/AdminRepository.inc @@ -0,0 +1,422 @@ + + * @version $Revision: 16471 $ + */ +class AdminRepositoryController extends GalleryController { + + /** + * Get the repositories, but allow tests to inject their own version. + * @see GalleryRepository::getRepositories + * @access private + */ + function _getRepositories() { + if (isset($this->_repositories)) { + return array(null, $this->_repositories); + } + return GalleryRepository::getRepositories(); + } + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $status = $error = array(); + if (isset($form['action']['update'])) { + foreach (array('module', 'theme') as $pluginType) { + list ($ret, $pluginStatus[$pluginType]) = + GalleryCoreApi::fetchPluginStatus($pluginType, true); + if ($ret) { + return array($ret, null); + } + } + + if (empty($form['repositories'])) { + $form['repositories'] = array('released' => 1); + } + + /* filter the form values through our list of valid keys to avoid exploits */ + $data = array(); + foreach (array('released', 'experimental', 'community') as $key) { + if (isset($form['repositories'][$key])) { + $data[$key] = 1; + } + } + $ret = GalleryCoreApi::setPluginParameter( + 'module', 'core', 'core.repositories', serialize($data)); + if ($ret) { + return array($ret, null); + } + + list ($ret, $repositories) = $this->_getRepositories(); + if ($ret) { + return array($ret, null); + } + + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($this, 'updatePluginStatus'), + array($pluginStatus, $repositories)); + $delegate['view'] = 'core.ProgressBar'; + } else if (isset($form['action']['upgradeAll'])) { + list ($ret, $repositories) = $this->_getRepositories(); + if ($ret) { + return array($ret, null); + } + + /* Get list of upgradeable packages in repository */ + foreach ($repositories as $source => $repository) { + list ($ret, $tmp) = $repository->getAllUpgradeablePackages(); + if ($ret) { + return array($ret, null); + } + + if (!empty($tmp)) { + $packages[$source] = $tmp; + } + } + + if (empty($packages)) { + $status['noUpgradeAvailable'] = 1; + } else { + /* + * Start upgrade process and show progress bar. + * + * performDownloadAndInstallation used to live in this controller, so we'd just + * call it directly. But it got refactored into AdminRepositoryDownloadController + * so for now, just call it there. + * + * @todo: refactor it into a common base class + */ + + GalleryCoreApi::requireOnce('modules/core/AdminRepositoryDownload.inc'); + $controller = new AdminRepositoryDownloadController(); + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($controller, 'performDownloadAndInstallation'), + array($packages, array(), $repositories)); + $delegate['view'] = 'core.ProgressBar'; + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + if (empty($delegate)) { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminRepository'; + } else { + $results['delegate'] = $delegate; + } + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } + + /** + * Update the repository index, and scan all installed plugins and update + * GalleryPluginPackageMap with a complete listing of everything that's installed. + * + * @todo Show a summary page (or at least a link to it) which contains details about + * the exact tasks that were performed and any errors that were encountered. + * + * @param $pluginStatus status of all available installed plugins + * @param $repositories the repositories available for new plugins + * @return object GalleryStatus a status code + */ + function updatePluginStatus($pluginStatus, $repositories) { + global $gallery; + $templateAdapter =& $gallery->getTemplateAdapter(); + $platform =& $gallery->getPlatform(); + + $status = array(); + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return $ret; + } + $heading = $module->translate('Updating Repository Index'); + $templateAdapter->updateProgressBar($heading, '', 0); + + /* Erase all plugin data, so that a full scan drops old entries */ + $ret = GalleryCoreApi::removeAllMapEntries('GalleryPluginPackageMap'); + if ($ret) { + return $ret; + } + + /* Update the index */ + $currentProgress = 0; + $indexWeight = 5; + $increment = 1.0 / ($indexWeight * count($repositories) + count($pluginStatus['module']) + + count($pluginStatus['theme'])); + + foreach ($repositories as $source => $repository) { + list ($ret, $message) = GalleryRepository::translateRepositoryName($source); + if ($ret) { + return $ret; + } + + $templateAdapter->updateProgressBar($heading, $message, $currentProgress); + $ret = $repository->downloadIndex(); + if ($ret) { + /* TODO: Internationalize this error message */ + $status['error']['download'][] = $ret->getErrorMessage(); + } + $currentProgress += $indexWeight * $increment; + } + + $heading = $module->translate('Scanning plugins'); + $sSlash = 's' . $platform->getDirectorySeparator(); + + if (!isset($repository)) { + /* + * The loop below needs a working repository, but we don't have one because all of our + * existing indexes are missing or corrupted. So create a new bogus one expressly for + * the purpose of calling GalleryRepository::scanPlugin(). + */ + $repository = new GalleryRepository(); + $repository->init('bogus'); + } + + foreach (array('module', 'theme') as $pluginType) { + foreach (array_keys($pluginStatus[$pluginType]) as $pluginId) { + $gallery->guaranteeTimeLimit(30); + + $templateAdapter->updateProgressBar( + $heading, $pluginType . $sSlash . $pluginId, $currentProgress); + $ret = $repository->scanPlugin($pluginType, $pluginId); + if ($ret && !($ret->getErrorCode() & ERROR_STORAGE_FAILURE)) { + /* + * Something is wrong with this plugin. Maybe it's a 3rd party plugin w/o + * MANIFEST file, maybe it has no revisions in the po files, maybe the + * module.inc is foobar. Just log and ignore it. + */ + if ($gallery->getDebug()) { + $gallery->debug_r($ret); + } + $status['error']['scanPlugin'][] = $pluginId; + } else if ($ret) { + return $ret; + } + $currentProgress += $increment; + } + } + + $templateAdapter->updateProgressBar( + $module->translate('Update Plugin List'), $module->translate('Done.'), 1); + + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminRepository'; + + $session =& $gallery->getSession(); + $redirect['statusId'] = $session->putStatus($status); + + $urlGenerator =& $gallery->getUrlGenerator(); + $templateAdapter->completeProgressBar($urlGenerator->generateUrl($redirect)); + + return null; + } +} + +/** + * This view will show all repository-related features. + */ +class AdminRepositoryView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + $platform =& $gallery->getPlatform(); + $session =& $gallery->getSession(); + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $AdminRepository = array(); + + /* Init repository. */ + list ($ret, $repositories, $repositoryInitErrorCount) = + GalleryRepository::getRepositories(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminRepository') { + /* Set some defaults */ + $form['formName'] = 'AdminRepository'; + list ($ret, $sources) = + GalleryCoreApi::getPluginParameter('module', 'core', 'core.repositories'); + if ($ret) { + return array($ret, null); + } + @$form['repositories'] = unserialize($sources); + } + if (empty($form['repositories'])) { + $form['repositories'] = array('released' => 1); + } + + /* Check if incompatible plugins should be shown. */ + $coreApis = array(); + $showIncompatible = GalleryUtilities::getRequestVariables('showIncompatible'); + if ($showIncompatible == 'true') { + list ($coreApiVersion, $themeApiVersion, $moduleApiVersion) = + GalleryUtilities::getRequestVariables('coreApi', 'themeApi', 'moduleApi'); + if (empty($coreApiVersion) || empty($themeApiVersion) || empty($moduleApiVersion)) { + return array(GalleryCoreApi::error( + ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "[$coreApiVersion] [$themeApiVersion] [$moduleApiVersion]"), + null); + } + $coreApis['core'] = explode('.', $coreApiVersion); + $coreApis['module'] = explode('.', $moduleApiVersion); + $coreApis['theme'] = explode('.', $themeApiVersion); + $AdminRepository['showIncompatible'] = 1; + } + + $AdminRepository['isCoreUpgradeAvailable'] = false; + $AdminRepository['upgradesAvailable'] = false; + foreach ($repositories as $source => $repository) { + if (!$repository->localIndexExists()) { + break; + } + + /* + * Note: this merges modules and themes instead of treating themes separately. + * TODO: separate themes into their own group, like we do elsewhere + */ + foreach (array('module', 'theme') as $pluginType) { + /* Get list of plugins to show in the repository browser. */ + list ($ret, $browseData[$pluginType]) = $repository->getRepositoryPluginList( + $pluginType, $showIncompatible, $coreApis); + if ($ret) { + return array($ret, null); + } + + foreach ($browseData[$pluginType] as $pluginId => $browseInfo) { + if (empty($AdminRepository['browseData'][$pluginId]) || + (empty($AdminRepository['browseData'][$pluginId]['action']) && + !empty($browseInfo['action'])) || + version_compare( + $browseInfo['repositoryVersion'], + $AdminRepository['browseData'][$pluginId]['repositoryVersion'], + '>')) { + $AdminRepository['browseData'][$pluginId] = $browseInfo; + } + } + } + + /* Get local index meta data. */ + list ($ret, $indexMetaData) = $repository->getIndexMetaData(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $message) = GalleryRepository::translateRepositoryName($source); + if ($ret) { + return array($ret, null); + } + + $AdminRepository['indexMetaData'][$source] = + array_merge(array('name' => $message), $indexMetaData); + + list ($ret, $tmp) = $repository->getAllUpgradeablePackages(); + if ($ret) { + return array($ret, null); + } + + if (!empty($tmp)) { + $AdminRepository['upgradesAvailable'] = true; + } + + /* Get core upgrade info. */ + if ($source == 'released') { + list ($ret, $AdminRepository['isCoreUpgradeAvailable'], $apiVersions) = + $repository->isCoreUpgradeAvailable(); + if ($ret) { + return array($ret, null); + } + if ($AdminRepository['isCoreUpgradeAvailable']) { + $AdminRepository['latestCoreApiVersion'] = $apiVersions['core']; + $AdminRepository['latestThemeApiVersion'] = $apiVersions['theme']; + $AdminRepository['latestModuleApiVersion'] = $apiVersions['module']; + } + } + } + + if (!empty($AdminRepository['browseData'])) { + GalleryCoreApi::requireOnce('modules/core/AdminPlugins.inc'); + uasort($AdminRepository['browseData'], array($this, 'pluginSort')); + } + + $baseName = dirname(dirname(dirname(__FILE__))); + $AdminRepository['writeable'] = array( + 'modules' => $platform->is_writeable("$baseName/modules"), + 'themes' => $platform->is_writeable("$baseName/themes")); + $AdminRepository['authToken'] = $session->getAuthToken(); + + /* Render the HTML body */ + $template->setVariable('AdminRepository', $AdminRepository); + $template->setVariable('controller', 'core.AdminRepository'); + + if ($repositoryInitErrorCount) { + $status =& $template->getVariableByReference('status'); + $status['error']['repositoryInitErrorCount'] = $repositoryInitErrorCount; + } + + $template->javascript('lib/yui/yahoo-min.js'); + $template->javascript('lib/yui/dom-min.js'); + $template->javascript('lib/yui/event-min.js'); + $template->javascript('lib/yui/connection-min.js'); + $template->javascript('lib/yui/animation-min.js'); + $template->javascript('lib/yui/container-min.js'); + $template->javascript('modules/core/templates/AdminRepository.js'); + return array(null, array('body' => 'modules/core/templates/AdminRepository.tpl')); + } + + /** + * TODO: combine this with AdminPluginsView::pluginSort + */ + function pluginSort($a, $b) { + if (($cmp = strcmp($a['groupLabel'], $b['groupLabel'])) == 0) { + $cmp = strcmp($a['name'], $b['name']); + } + return $cmp; + } +} +?> diff --git a/Source/gallery2/modules/core/AdminRepositoryDownload.inc b/Source/gallery2/modules/core/AdminRepositoryDownload.inc new file mode 100644 index 0000000..4bf4f8f --- /dev/null +++ b/Source/gallery2/modules/core/AdminRepositoryDownload.inc @@ -0,0 +1,591 @@ + + * @version $Revision: 16127 $ + */ +class AdminRepositoryDownloadController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $status = $error = array(); + + if (!isset($form['pluginType']) || !isset($form['pluginId'])) { + return array(GalleryCoreApi::error( + ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Plugin type or ID not set [$pluginType] [$pluginId]"), + null); + } + $pluginType = $form['pluginType']; + $pluginId = $form['pluginId']; + + if (!preg_match('/theme|module/', $pluginType)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Invalid plugin type [$pluginType]"), + null); + } + + /* Handle cancel action. */ + if (isset($form['action']['cancel'])) { + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminRepository'; + } else if (isset($form['action']['download'])) { + /* Create package list. */ + $installPackages = $deleteLanguages = array(); + + $utils = new GalleryRepositoryUtilities(); + list ($ret, $pluginPackages) = $utils->getPluginPackages($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + $baseSource = ''; + if (!empty($form['base'])) { + list($baseSource, $baseNewBuild) = explode(':', $form['base']); + if (empty($pluginPackages['base']['build']) || + $pluginPackages['base']['build'] != $baseNewBuild) { + $installPackages[$baseSource][$pluginType][$pluginId]['base'] = 1; + } + } + + $selected = array(); + if (isset($form['languages'])) { + foreach ($form['languages'] as $language) { + list ($langSource, $langCode, $langNewVersion) = explode(':', $language); + $langCode = 'lang-' . $langCode; + if ($langSource == $baseSource && + (empty($pluginPackages[$langCode]['build']) || + $pluginPackages[$langCode]['build'] != $langNewVersion)) { + $installPackages[$langSource][$pluginType][$pluginId][$langCode] = 1; + } + $selected[$pluginType][$pluginId][$langCode] = 1; + } + } + + if (isset($form['languagesAvailable'])) { + foreach ($form['languagesAvailable'] as $language) { + list ($langSource, $langCode) = explode(':', $language); + if ($langSource == $baseSource && + empty($selected[$pluginType][$pluginId]['lang-' . $langCode])) { + $deleteLanguages[$pluginType][$pluginId][] = $langCode; + } + } + } + + /* Show error message if no packages have been selected for download. */ + if (empty($installPackages) && empty($deleteLanguages)) { + $delegate['view'] = 'core.SiteAdmin'; + $delegate['subView'] = 'core.AdminRepositoryDownload'; + $error[] = 'form[error][nothingSelected]'; + + /* TODO: Do we need to put these vars back into the request? */ + GalleryUtilities::putRequestVariable('pluginId', $pluginId); + GalleryUtilities::putRequestVariable('pluginType', $pluginType); + } else { + list ($ret, $repositories) = GalleryRepository::getRepositories(); + if ($ret) { + return array(null, $ret); + } + + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($this, 'performDownloadAndInstallation'), + array($installPackages, $deleteLanguages, $repositories)); + $delegate['view'] = 'core.ProgressBar'; + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + if (empty($delegate)) { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminRepository'; + } else { + $results['delegate'] = $delegate; + } + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } + + /** + * Download specified packages to the local repository cache and perform installation. + * + * TODO: Show a summary page (or at least a link to it) which contains details about + * the exact tasks that were performed and any errors that were encountered. + * + * @param array $installPackages packages to install + * @param array $deleteLanguages language packages to delete + * @param array an array of object GalleryRepository + * @return object GalleryStatus a status code + */ + function performDownloadAndInstallation($installPackages, $deleteLanguages, $repositories) { + global $gallery; + $session =& $gallery->getSession(); + $platform =& $gallery->getPlatform(); + $phpVm = $gallery->getPhpVm(); + $templateAdapter =& $gallery->getTemplateAdapter(); + + /* + * Get the original plugin status from before we start making changes so that we can + * try to counteract any activate/deactivate ripple effects. + */ + foreach (array('module', 'theme') as $pluginType) { + list ($ret, $pluginStatus[$pluginType]) = $this->_fetchPluginStatus($pluginType, false); + if ($ret) { + return $ret; + } + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return $ret; + } + $titleText = $module->translate('Updating Packages'); + $templateAdapter->updateProgressBar($titleText, '', 0); + + /* Create download file list. */ + $sourcedFiles = array(); + foreach ($installPackages as $source => $packages) { + if (!isset($repositories[$source])) { + continue; + } + + list ($ret, $tmp) = $repositories[$source]->getDownloadFileList($packages); + if ($ret) { + return $ret; + } + $sourcedFiles[$source] = empty($sourcedFiles[$source]) + ? $tmp + : array_merge($sourcedFiles[$source], $tmp); + } + + $totalActions = 0; + foreach ($sourcedFiles as $source => $files) { + foreach ($files as $pluginType => $plugins) { + foreach ($plugins as $pluginId => $pluginDownloadData) { + /* + * 2 actions (preverify, then download) for all files except the descriptor + * which we just download. + */ + $totalActions += 2 * count($pluginDownloadData['files']) - 1; + } + } + } + foreach ($deleteLanguages as $pluginType => $plugins) { + foreach ($plugins as $pluginId => $languages) { + $totalActions += count($languages); + } + } + + $status = array(); + $status['error'] = array(); + + /* Download files. */ + $currentAction = 0; + + foreach ($sourcedFiles as $source => $files) { + $repository = $repositories[$source]; + + foreach ($files as $pluginType => $plugins) { + foreach ($plugins as $pluginId => $pluginDownloadData) { + $packageUrls = $pluginDownloadData['files']; + $pluginName = $pluginDownloadData['name']; + + $templateAdapter->updateProgressBar( + $titleText, + sprintf($module->translate('Preparing %s'), $pluginName), + ++$currentAction / $totalActions); + + /* + * Extract the descriptor and verify that all of our packages will unpack + * safely before starting. + */ + $relativeDescriptorUrl = $packageUrls['descriptor']; + unset($packageUrls['descriptor']); + + list ($ret, $descriptor) = $repository->downloadAndUnpack( + $pluginType, $pluginId, 'descriptor', $relativeDescriptorUrl); + if ($ret) { + if ($ret->getErrorCode() & ERROR_STORAGE_FAILURE) { + /* XXX: storage failure means we failed to download the file properly */ + $status['error']['failedToDownload'][$pluginName] = + $relativeDescriptorUrl; + continue; + } + return $ret; + } + + $errors = array(); + foreach (array_keys($packageUrls) as $packageName) { + $gallery->guaranteeTimeLimit(30); + + if (++$currentAction % 5 == 0) { + $templateAdapter->updateProgressBar( + $titleText, + sprintf($module->translate('Preparing %s'), $pluginName), + $currentAction / $totalActions); + } + + /* pre-verify here */ + $errors = array_merge( + $errors, $repository->preVerifyPackage($packageName, $descriptor)); + } + $errors = array_unique($errors); + if ($errors) { + $status['error']['failedToInstall'][$pluginName] = $errors; + continue; + } + + $templateAdapter->updateProgressBar( + $titleText, + sprintf($module->translate('Downloading %s'), $pluginName), + $currentAction / $totalActions); + + + $dontReactivate = array(); + foreach ($packageUrls as $packageName => $relativePackageUrl) { + $gallery->guaranteeTimeLimit(30); + + if (++$currentAction % 5 == 0) { + $templateAdapter->updateProgressBar( + $titleText, + sprintf($module->translate('Downloading %s'), $pluginName), + $currentAction / $totalActions); + } + + /* Download and unpack package. */ + list ($ret, $ignored) = $repository->downloadAndUnpack( + $pluginType, $pluginId, $packageName, $relativePackageUrl); + if ($ret) { + if ($ret->getErrorCode() & ERROR_STORAGE_FAILURE) { + /* XXX: storage failure means we failed to download the file */ + $status['error']['failedToDownload'][$pluginName][] = + $relativePackageUrl; + if ($packageName == 'base') { + $dontReactivate[$pluginType][$pluginId] = 1; + break; + } else { + continue; + } + } + return $ret; + } + + /* Check the unpacked files' integrity. */ + $ret = $repository->verifyPackageIntegrity($packageName, $descriptor); + if ($ret) { + return $ret; + } + + /* Update plugin package map. */ + list ($ret, $version, $build) = $repository->getPackageVersionAndBuild( + $pluginType, $pluginId, $packageName); + if ($ret) { + return $ret; + } + $ret = $repository->updatePackageMetaData( + $pluginType, $pluginId, $packageName, $version, $build, 0); + if ($ret) { + return $ret; + } + } + + /* + * Our plugin status caches are no longer valid because we've just installed + * some new code. Load the status and ignore the cache which forces a cache + * update. @todo: add a real cache flushing method in the api instead + */ + list ($ret, $ignored) = GalleryCoreApi::fetchPluginStatus($pluginType, true); + if ($ret) { + return $ret; + } + + /********************************************************* + * This next block is duplicated in PluginCallback. + * @todo: Refactor this code duplication away + */ + + $templateAdapter->updateProgressBar( + $titleText, sprintf($module->translate('Activating %s'), $pluginName), + $currentAction / $totalActions); + + if (empty($dontReactivate[$pluginType][$pluginId])) { + /** + * Some plugins may already be loaded (e.g. the default theme, or + * authentication modules) so PHP will not let us evaluate the newly + * downloaded code. This means that we can't upgrade those modules + * via DP; the site admin must do it by hand on the AdminPlugins page. + * For now, just notify the user. + * + * @todo convert this to a two-phase approach so that we can reactivate + * plugins that are already loaded at this point. + */ + if ($phpVm->class_exists($pluginId . $pluginType)) { + $status['error']['cantUpgradeInUse'][] = $pluginName; + } else { + list ($ret, $plugin) = + GalleryCoreApi::loadPlugin($pluginType, $pluginId, true); + if ($ret) { + return $ret; + } + + $ret = $plugin->installOrUpgrade(); + if ($ret) { + return $ret; + } + + if ($pluginType == 'module') { + list ($ret, $autoConfigured) = $plugin->autoConfigure(); + if ($ret) { + return $ret; + } + } else { + /* Themes don't need this step */ + $autoConfigured = true; + } + + $isActive = !empty($pluginStatus[$pluginType][$pluginId]['active']); + $notInstalled = empty($pluginStatus[$pluginType][$pluginId]['version']); + + if ($autoConfigured && ($isActive || $notInstalled)) { + list ($ret, $redirect) = $plugin->activate(); + if ($ret) { + return $ret; + } + /* Ignore the redirect */ + } + + $status['updated'][] = $pluginName; + } + } + + /*********************************************************/ + } + } + } + + /* Delete old language packs */ + $deleteText = $module->translate('Deleting Language Packs'); + $g2base = dirname(dirname(dirname(__FILE__))); + $status['languagePacksDeleted'] = 0; + foreach ($deleteLanguages as $pluginType => $plugins) { + foreach ($plugins as $pluginId => $languages) { + foreach ($languages as $language) { + $currentAction++; + $templateAdapter->updateProgressBar( + $titleText, $deleteText, $currentAction / $totalActions); + + $actual = 0; + $dir = "$g2base/${pluginType}s/$pluginId/locale/$language"; + if ($platform->is_dir($dir) && $platform->is_writeable($dir)) { + $platform->recursiveRmdir($dir); + $actual++; + } + $file = "$g2base/${pluginType}s/$pluginId/po/$language.po"; + if ($platform->is_file($file) && $platform->is_writeable($file)) { + $platform->unlink($file); + $actual++; + } + + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryPluginPackageMap', + array('pluginType' => $pluginType, + 'pluginId' => $pluginId, + 'packageName' => 'lang-' . $language)); + if ($ret) { + return $ret; + } + + if ($actual) { + $status['languagePacksDeleted']++; + } + } + } + } + + /* Update progress bar. */ + if (!empty($status['error'])) { + $message = $module->translate('Update completed with errors.'); + } else { + $message = $module->translate('Update complete.'); + } + $templateAdapter->updateProgressBar($titleText, $message, 1); + + /* Show link to return to the previously selected tab. */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminRepository'; + $redirect['statusId'] = $session->putStatus($status); + + $urlGenerator =& $gallery->getUrlGenerator(); + $templateAdapter->completeProgressBar($urlGenerator->generateUrl($redirect)); + return null; + } + + /** + * Passthrough to GalleryCoreApi::fetchPluginStatus, used by test code to + * allow us to inject mock plugins. + * @see GalleryCoreApi::fetchPluginStatus + * @private + */ + function _fetchPluginStatus($pluginType, $ignoreCache) { + return GalleryCoreApi::fetchPluginStatus($pluginType, $ignoreCache); + } +} + +/** + * This view will show all repository-related features. + */ +class AdminRepositoryDownloadView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminRepositoryDownload') { + $form['formName'] = 'AdminRepositoryDownload'; + } + + /* Init repository. */ + list ($ret, $repositories) = GalleryRepository::getRepositories(); + if ($ret) { + return array($ret, null); + } + + list ($pluginType, $pluginId) = + GalleryUtilities::getRequestVariables('pluginType', 'pluginId'); + + $AdminRepositoryDownload = array( + 'pluginId' => $pluginId, + 'pluginType' => $pluginType); + + $utils = new GalleryRepositoryUtilities(); + list ($ret, $pluginPackages) = $utils->getPluginPackages($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + foreach (array_keys($pluginPackages) as $code) { + if (strpos($code, 'lang-') !== false) { + $AdminRepositoryDownload['installedLanguages'][substr($code, 5)] = 1; + } + } + + foreach ($repositories as $source => $repository) { + if (!$repository->pluginExistsInIndex($pluginType, $pluginId)) { + continue; + } + + /* Downloading and upgrading plugins are only different in the UI */ + list ($ret, $upgradeData) = $repository->getPluginUpgradeInfo($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + if (!$upgradeData['base']['isCompatible']) { + continue; + } + + list ($ret, $upgradeData['pluginName']) = + $repository->getPluginName($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + $upgradeData['languageCount'] = count($upgradeData['languages']); + $upgradeData['repository'] = $source; + list ($ret, $upgradeData['repositoryName']) = + GalleryRepository::translateRepositoryName($source); + if ($ret) { + return array($ret, null); + } + + $AdminRepositoryDownload['upgradeData'][] = $upgradeData; + + if (empty($AdminRepositoryDownload['pluginName'])) { + $AdminRepositoryDownload['pluginName'] = $upgradeData['pluginName']; + } + } + usort($AdminRepositoryDownload['upgradeData'], array($this, 'versionComparator')); + + if (!empty($AdminRepositoryDownload['upgradeData'][0]['base']['currentVersion'])) { + for ($i = 0; $i < count($AdminRepositoryDownload['upgradeData']); $i++) { + if ($AdminRepositoryDownload['upgradeData'][$i]['base']['relation'] == 'equal') { + break; + } + if ($AdminRepositoryDownload['upgradeData'][$i]['base']['relation'] == 'older') { + $newEntry['pluginName'] = $AdminRepositoryDownload['pluginName']; + $newEntry['base'] = array( + 'newVersion' => $pluginPackages['base']['version'], + 'newBuild' => $pluginPackages['base']['build'], + 'currentVersion' => $pluginPackages['base']['version'], + 'currentBuild' => $pluginPackages['base']['build'], + 'relation' => 'equal'); + $newEntry['repository'] = 'installed'; + $newEntry['languages'] = array(); + $newEntry['languageCount'] = 0; + array_splice($AdminRepositoryDownload['upgradeData'], $i, 0, array($newEntry)); + break; + } + } + } + + $template->setVariable('AdminRepositoryDownload', $AdminRepositoryDownload); + $template->setVariable('controller', 'core.AdminRepositoryDownload'); + $template->javascript('modules/core/templates/AdminRepositoryDownload.js'); + + return array(null, array('body' => 'modules/core/templates/AdminRepositoryDownload.tpl')); + } + + function versionComparator($a, $b) { + $result = version_compare($a['base']['newVersion'], $b['base']['newVersion']); + if (!$result) { + $result = version_compare($a['base']['newBuild'], $b['base']['newBuild']); + } + return $result; + } +} +?> diff --git a/Source/gallery2/modules/core/AdminThemes.inc b/Source/gallery2/modules/core/AdminThemes.inc new file mode 100644 index 0000000..108a0d6 --- /dev/null +++ b/Source/gallery2/modules/core/AdminThemes.inc @@ -0,0 +1,487 @@ + + * @version $Revision: 16471 $ + */ +class AdminThemesController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $status = $error = $errorMessage = array(); + $theme = null; + $themeId = GalleryUtilities::getRequestVariables('themeId'); + + if (isset($form['action']['saveDefaults'])) { + /* Do some basic input validation (by whitelisting) */ + GalleryCoreApi::requireOnce('modules/core/classes/GallerySortInterface_1_2.class'); + list ($ret, $orderByList, $presortList, $orderDirectionList) = + GallerySortInterface_1_2::getAllSortOrders(false); + if ($ret) { + return array($ret, null); + } + if (isset($form['default']['orderBy']) + && !isset($orderByList[$value = $form['default']['orderBy']])) { + $error = GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Unknown sort order '$value'"); + return array($error, null); + } + if (isset($form['default']['presort']) + && !isset($presortList[$value = $form['default']['presort']])) { + $error = GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Unknown presort order '$value'"); + return array($error, null); + } + if (isset($form['default']['orderDirection']) + && !isset($orderDirectionList[$value = $form['default']['orderDirection']])) { + $error = GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Unknown order direction '$value'"); + return array($error, null); + } + if (isset($form['default']['theme'])) { + list ($ret, $defaultTheme) = + GalleryCoreApi::loadPlugin('theme', $form['default']['theme'], false, true); + if ($ret) { + return array($ret, null); + } + } + if (isset($form['default']['newAlbumsUseDefaults']) && + !in_array($form['default']['newAlbumsUseDefaults'], array('true', 'false'))) { + $error = GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + 'Unknown value for newAlbumDefaults ' . + $form['default']['newAlbumsUseDefaults']); + return array($error, null); + } + + /* Save the values */ + foreach (array('default.orderBy', + 'default.orderDirection', + 'default.theme', + 'default.newAlbumsUseDefaults') + as $key) { + list ($outer, $inner) = explode('.', $key); + if (isset($form[$outer][$inner])) { + $value = $form[$outer][$inner]; + if ($key == 'default.orderBy' && !empty($form['default']['presort'])) { + $value = $form['default']['presort'] . '|' . $value; + } + $ret = GalleryCoreApi::setPluginParameter('module', 'core', $key, $value); + if ($ret) { + return array($ret, null); + } + } + } + + /* Switch to display the theme settings for the default theme if it has changed */ + if (!empty($form['default']['theme'])) { + $themeId = $form['default']['theme']; + } + + /* Redirect upon success */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminThemes'; + $redirect['themeId'] = $themeId; + $status['savedDefaults'] = 1; + } else { + if (!empty($themeId)) { + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $themeId, false, true); + if ($ret) { + if ($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH && + isset($form['action']['upgrade'])) { + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $themeId, true); + if ($ret) { + return array($ret, null); + } + } else { + return array($ret, null); + } + } + } + + if ($theme && isset($form['action']['saveTheme'])) { + list ($ret, $isActive) = $theme->isActive(); + if ($ret) { + return array($ret, null); + } + + /* Get all the possible settings */ + list ($ret, $settings) = $theme->getSettings(null); + if ($ret) { + return array($ret, null); + } + + /* Validate the settings */ + $validationErrors = $theme->validateSettings($form['key']); + if (empty($validationErrors)) { + /* Save any settings that have changed */ + foreach ($settings as $setting) { + if ($setting['type'] == 'checkbox') { + $value = isset($form['key'][$setting['key']]) ? 1 : 0; + } else { + $value = $form['key'][$setting['key']]; + } + + if (!empty($setting['typeParams']['packType'])) { + list ($success, $value) = $theme->packSetting( + $setting['typeParams']['packType'], $value); + } + + if ($setting['value'] !== $value) { + $ret = $theme->setParameter($setting['key'], $value); + if ($ret) { + return array($ret, null); + } + } + } + + if ($theme->isAdvancedSettings()) { + list ($ret, $error, $statusKey) = $theme->handleSettingsRequest($form); + if ($ret) { + return array($ret, null); + } + if (empty($error)) { + $status[$statusKey] = $theme->translate($theme->getName()); + } + } + + if (empty($error)) { + /* Redirect upon success */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminThemes'; + $redirect['themeId'] = $themeId; + $status['savedTheme'] = $theme->translate($theme->getName()); + } + } else { + foreach ($validationErrors as $validationKey => $validationMessage) { + $error[] = sprintf('form[error][key][%s][invalid]', $validationKey); + $errorMessage[$validationKey] = $validationMessage; + } + GalleryUtilities::putRequestVariable('form[errorMessage]', $errorMessage); + } + } else if ($theme && isset($form['action']['undoTheme'])) { + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminThemes'; + $redirect['themeId'] = $themeId; + $status['restoredTheme'] = $theme->translate($theme->getName()); + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminThemes'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show administration options for available themes + */ +class AdminThemesView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $defaultThemeId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + return array($ret, null); + } + + $themeId = GalleryUtilities::getRequestVariables('themeId'); + if (empty($themeId)) { + $themeId = $defaultThemeId; + } + + /* Load the theme list */ + list ($ret, $themes) = GalleryCoreApi::fetchPluginStatus('theme', true); + if ($ret) { + return array($ret, null); + } + + /* + * It's possible that we have some out-of-date themes which haven't been deactivated yet, + * since the deactivation only occurs when we try to load the theme. Load all the active + * themes now to force the version check, then reload the theme status when we're done to + * pick up any changes we trigger. + */ + foreach ($themes as $id => $status) { + if (!empty($status['active'])) { + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $id, false, true); + if ($ret && !($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH)) { + return array($ret, null); + } + } + } + + /* Reload the theme list, which may now be updated because of obsolete modules. */ + list ($ret, $themes) = GalleryCoreApi::fetchPluginStatus('theme', true); + if ($ret) { + return array($ret, null); + } + + /* + * Figure out how many active themes we have (because we don't allow + * deactivating the last one. + */ + $activeCount = 0; + foreach (array_keys($themes) as $id) { + $activeCount += !empty($themes[$id]['active']); + } + + /* Transform it to include all the theme data that we want to display */ + $themeList = array(); + foreach ($themes as $id => $status) { + + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $id, true); + if ($ret) { + return array($ret, null); + } + + /* Detect and remove old themes which not even had a setId() in their constructor */ + $getId = $theme->getId(); + if (empty($getId)) { + unset($themes[$id]); + continue; + } + + $entry = array(); + $entry['name'] = $theme->translate($theme->getName()); + $entry['active'] = !empty($status['active']); + $entry['l10Domain'] = $theme->getL10Domain(); + $entry['action'] = array(); + $coreApiCompatible = GalleryUtilities::isCompatibleWithApi( + $theme->getRequiredCoreApi(), GalleryCoreApi::getApiVersion()); + $themeApiCompatible = GalleryUtilities::isCompatibleWithApi( + $theme->getRequiredThemeApi(), GalleryTheme::getApiVersion()); + if ($coreApiCompatible && $themeApiCompatible) { + if (empty($status['active'])) { + $entry['state'] = 'inactive'; + + /* + * If the database versions doesn't match the theme + * version, we need to get the user to install the theme. + */ + if ($status['version'] != $theme->getVersion()) { + if (empty($status['version'])) { + $entry['action'][] = + array('text' => $module->translate('install'), + 'params' => array('controller' => 'core.AdminThemes', + 'themeId' => $id, + 'form[action][install]' => 1)); + $entry['state'] = 'install'; + } else { + $entry['action'][] = + array('text' => $module->translate('upgrade'), + 'params' => array('controller' => 'core.AdminThemes', + 'themeId' => $id, + 'form[action][upgrade]' => 1)); + $entry['state'] = 'upgrade'; + } + } else { + $entry['action'][] = + array('text' => $module->translate('activate'), + 'params' => array('controller' => 'core.AdminThemes', + 'themeId' => $id, + 'form[action][activate]' => 1)); + $entry['action'][] = + array('text' => $module->translate('uninstall'), + 'params' => array('controller' => 'core.AdminThemes', + 'themeId' => $id, + 'form[action][uninstall]' => 1)); + } + } else { + $entry['state'] = 'active'; + if ($id != $defaultThemeId) { + $entry['action'][] = + array('text' => $module->translate('deactivate'), + 'params' => array('controller' => 'core.AdminThemes', + 'themeId' => $id, + 'form[action][deactivate]' => 1)); + } + if ($status['version'] != $theme->getVersion()) { + $entry['action'][] = + array('text' => $module->translate('upgrade'), + 'params' => array('controller' => 'core.AdminThemes', + 'themeId' => $id, + 'form[action][upgrade]' => 1)); + $entry['state'] = 'upgrade'; + } + } + } else { + $entry['state'] = 'incompatible'; + $entry['api']['required']['theme'] = join('.', $theme->getRequiredThemeApi()); + $entry['api']['required']['core'] = join('.', $theme->getRequiredCoreApi()); + $entry['api']['provided']['theme'] = join('.', GalleryTheme::getApiVersion()); + $entry['api']['provided']['core'] = join('.', GalleryCoreApi::getApiVersion()); + } + + $entry['description'] = $theme->getDescription(); + $entry['version'] = $theme->getVersion(); + $entry['installedVersion'] = isset($status['version']) ? $status['version'] : null; + $themes[$id] = $entry; + + if (!empty($status['active'])) { + $themeList[$id] = $theme->translate($theme->getName()); + } + } + + $AdminThemes = array(); + /* Load up the stored defaults */ + foreach (array('default.orderBy', + 'default.orderDirection', + 'default.theme', + 'default.theme', + 'default.newAlbumsUseDefaults') + as $key) { + + list ($ret, $value) = + GalleryCoreApi::getPluginParameter('module', 'core', $key); + if ($ret) { + return array($ret, null); + } + + if ($key == 'default.orderBy') { + $tmp = explode('|', $value, 2); + if (count($tmp) == 2) { + $value = $tmp[1]; + $form['default']['presort'] = $tmp[0]; + } else { + $form['default']['presort'] = ''; + } + } + + list ($outer, $inner) = explode('.', $key); + $form[$outer][$inner] = $value; + } + + $newAlbumsUseDefaultsList = array( + 'false' => $module->translate('Inherit settings from parent album'), + 'true' => $module->translate('Use these settings') + ); + + /* Set up our sort order selection list */ + GalleryCoreApi::requireOnce( + 'modules/core/classes/GallerySortInterface_1_2.class'); + list ($ret, $orderByList, $presortList, $orderDirectionList) = + GallerySortInterface_1_2::getAllSortOrders(false); + if ($ret) { + return array($ret, null); + } + + $AdminThemes['orderByList'] = $orderByList; + $AdminThemes['presortList'] = $presortList; + $AdminThemes['orderDirectionList'] = $orderDirectionList; + $AdminThemes['themeList'] = $themeList; + $AdminThemes['newAlbumsUseDefaultsList'] = $newAlbumsUseDefaultsList; + + /* Load the config settings from the active theme */ + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $themeId, false, true); + if ($ret) { + if ($ret->getErrorCode() + & (ERROR_PLUGIN_VERSION_MISMATCH | ERROR_BAD_PARAMETER | ERROR_BAD_PLUGIN)) { + /* The default theme isn't available. Show a warning, don't load any settings. */ + $theme = null; + $form['error']['themeUnavailable'] = true; + } else { + return array($ret, null); + } + } + + if ($theme) { + if ($theme->isAdvancedSettings()) { + list ($ret, $tpl) = $theme->loadSettingsTemplate($template, $form); + if ($ret) { + return array($ret, null); + } + $AdminThemes['customTemplate'] = $tpl; + } + + list ($ret, $AdminThemes['settings']) = $theme->getSettings(null); + if ($ret) { + return array($ret, null); + } + } + + list ($ret, $AdminThemes['availableBlocks']) = GalleryCoreApi::loadAvailableBlocks(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminThemes') { + $form['formName'] = 'AdminThemes'; + + $settingTypes = array(); + if ($theme && isset($AdminThemes['settings'])) { + foreach ($AdminThemes['settings'] as $setting) { + $key = $setting['key']; + if (!empty($setting['typeParams']['packType'])) { + list ($success, $form['key'][$key]) = $theme->unpackSetting( + $setting['typeParams']['packType'], $setting['value']); + } else { + $form['key'][$key] = $setting['value']; + } + + $settingTypes[$setting['type']] = 1; + } + } + + if (isset($settingTypes['block-list'])) { + /* Query param is "version".. bump if data format in js changes */ + $template->javascript('lib/javascript/BlockSelectWidget.js?1'); + } + } + + $AdminThemes['themes'] = $themes; + $AdminThemes['themeId'] = $themeId; + + $template->setVariable('AdminThemes', $AdminThemes); + $template->setVariable('controller', 'core.AdminThemes'); + return array(null, array('body' => 'modules/core/templates/AdminThemes.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminToolkitPriority.inc b/Source/gallery2/modules/core/AdminToolkitPriority.inc new file mode 100644 index 0000000..8e36ce7 --- /dev/null +++ b/Source/gallery2/modules/core/AdminToolkitPriority.inc @@ -0,0 +1,105 @@ + + * @version $Revision: 15513 $ + */ +class AdminToolkitPriorityController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $status = array(); + if (isset($form['action']['save'])) { + list ($ret, $list) = GalleryCoreApi::getRedundantToolkitPriorities(); + if ($ret) { + return array($ret, null); + } + foreach ($form['priority'] as $priority => $toolkit) { + if ($priority != $list[$toolkit]) { + $ret = GalleryCoreApi::updateMapEntry( + 'GalleryToolkitOperationMimeTypeMap', + array('toolkitId' => $toolkit), array('priority' => $priority)); + if ($ret) { + return array($ret, null); + } + } + } + GalleryDataCache::removeByPattern('GalleryToolkitHelper::'); + $status['saved'] = 1; + } /* else $form['action']['reset'] */ + + $results['return'] = 0; + $results['redirect']['view'] = 'core.SiteAdmin'; + $results['redirect']['subView'] = 'core.AdminToolkitPriority'; + $results['status'] = $status; + $results['error'] = array(); + + return array(null, $results); + } +} + +/** + * This view will show toolkits and their relative priorities + */ +class AdminToolkitPriorityView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminToolkitPriority') { + $form['formName'] = 'AdminToolkitPriority'; + } + + list ($ret, $list) = GalleryCoreApi::getRedundantToolkitPriorities(); + if ($ret) { + return array($ret, null); + } + asort($list); + /* Reset all priorities to start of managed-priority window; ensure we break any ties */ + $priority = 20; + foreach ($list as $toolkit => $tmp) { + $list[$toolkit] = $priority++; + } + + $AdminToolkitPriority = array('list' => $list, 'count' => count($list)); + $template->setVariable('AdminToolkitPriority', $AdminToolkitPriority); + $template->setVariable('controller', 'core.AdminToolkitPriority'); + + return array(null, array('body' => 'modules/core/templates/AdminToolkitPriority.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/AdminUsers.inc b/Source/gallery2/modules/core/AdminUsers.inc new file mode 100644 index 0000000..8f0eeb1 --- /dev/null +++ b/Source/gallery2/modules/core/AdminUsers.inc @@ -0,0 +1,232 @@ + + * @version $Revision: 15513 $ + */ +class AdminUsersController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + $status = $error = $results = array(); + $user = null; + if (!empty($form['text']['userName'])) { + list ($ret, $user) = GalleryCoreApi::fetchUserByUserName($form['text']['userName']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + } + + if (isset($form['action']['filterClear'])) { + + /* Clear the filter */ + GalleryUtilities::putRequestVariable('form[list][filter]', null); + + } else if (isset($form['action']['create'])) { + + /* Show the "create user" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminCreateUser'; + + } else if (isset($form['action']['editFromText'])) { + + if (empty($form['text']['userName'])) { + $error[] = 'form[error][text][noUserSpecified]'; + } else if ($user == null) { + $error[] = 'form[error][text][noSuchUser]'; + } else { + /* Show the "delete user" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['userId'] = $user->getId(); + $redirect['subView'] = 'core.AdminEditUser'; + } + + } else if (isset($form['action']['deleteFromText'])) { + + if (empty($form['text']['userName'])) { + $error[] = 'form[error][text][noUserSpecified]'; + } else if ($user == null) { + $error[] = 'form[error][text][noSuchUser]'; + } else { + + /* + * Check to see if we're trying to delete the anonymous user, or + * ourself (can't do either of those). + */ + list ($ret, $anonymousUserId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return array($ret, null); + } + + if ($user->getId() == $anonymousUserId) { + $error[] = 'form[error][text][cantDeleteAnonymous]'; + } + + if ($user->getId() == $gallery->getActiveUserId()) { + $error[] = 'form[error][text][cantDeleteSelf]'; + } + } + + if (empty($error)) { + /* Show the "delete user" view */ + $redirect['view'] = 'core.SiteAdmin'; + $redirect['subView'] = 'core.AdminDeleteUser'; + $redirect['userId'] = $user->getId(); + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.SiteAdmin'; + $results['delegate']['subView'] = 'core.AdminUsers'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show available options to administer the users of Gallery + */ +class AdminUsersView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'AdminUsers') { + /* Set some defaults */ + $form['text']['userName'] = ''; + $form['formName'] = 'AdminUsers'; + } + + if (!isset($form['list']['filter'])) { + $form['list']['filter'] = ''; + } + + if (!isset($form['list']['page']) || $form['list']['page'] < 1) { + $form['list']['page'] = 1; + } + + /* Fetch the user count every time we reload */ + list ($ret, $totalUserCount) = GalleryCoreApi::fetchUserCount(); + if ($ret) { + return array($ret, null); + } + + $form['list']['count'] = $totalUserCount; + $form['list']['pageSize'] = $totalUserCount > 10 ? 10 : $totalUserCount + 2; + + /* If we have a filter, find out how many users match it */ + if (!empty($form['list']['filter'])) { + list ($ret, $form['list']['count']) = + GalleryCoreApi::fetchUserCount($form['list']['filter']); + if ($ret) { + return array($ret, null); + } + } + + /* Figure out our max pages, make sure our current page fits in it */ + $form['list']['maxPages'] = ceil($form['list']['count'] / $form['list']['pageSize']); + if ($form['list']['page'] > $form['list']['maxPages']) { + $form['list']['page'] = $form['list']['maxPages']; + } + + /* Calculate the next/back pages */ + $form['list']['nextPage'] = min($form['list']['page']+1, $form['list']['maxPages']); + $form['list']['backPage'] = max(1, $form['list']['page']-1); + + list ($ret, $userNames) = GalleryCoreApi::fetchUserNames( + $form['list']['pageSize'], + ($form['list']['page'] - 1) * $form['list']['pageSize'], + $form['list']['filter']); + if ($ret) { + return array($ret, null); + } + + list ($ret, $anonymousUserId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return array($ret, null); + } + + $myUserId = $gallery->getActiveUserId(); + + /* This is inefficient; we should extend GalleryCoreApi::fetchUserNames */ + list ($ret, $users) = GalleryCoreApi::loadEntitiesById(array_keys($userNames)); + if ($ret) { + return array($ret, null); + } + + list ($ret, $searchResults) = GalleryCoreApi::getMapEntry( + 'FailedLoginsMap', + array('userName', 'count'), + array('userName' => array_values($userNames))); + if ($ret) { + return array($ret, null); + } + while ($result = $searchResults->nextResult()) { + $failedLogins[$result[0]] = $result[1]; + } + + $form['list']['userNames'] = array(); + foreach ($users as $user) { + $userId = $user->getId(); + $form['list']['userNames'][$userId] = (array)$user; + if ($userId == $anonymousUserId || $userId == $myUserId) { + $form['list']['userNames'][$userId]['can']['delete'] = false; + } else { + $form['list']['userNames'][$userId]['can']['delete'] = true; + } + $form['list']['userNames'][$userId]['failedLogins'] = + (isset($failedLogins[$user->getUserName()])) ? + $failedLogins[$user->getUserName()] : 0; + } + + $template->setVariable('AdminUsers', array('totalUserCount' => $totalUserCount)); + $template->setVariable('controller', 'core.AdminUsers'); + return array(null, array('body' => 'modules/core/templates/AdminUsers.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/Callbacks.inc b/Source/gallery2/modules/core/Callbacks.inc new file mode 100644 index 0000000..aad6290 --- /dev/null +++ b/Source/gallery2/modules/core/Callbacks.inc @@ -0,0 +1,210 @@ + + * @version $Revision: 15513 $ + */ +class CoreCallbacks { + function callback($params, &$smarty, $callback, $userId=null) { + global $gallery; + $block =& $smarty->_tpl_vars['block']; + $theme =& $smarty->_tpl_vars['theme']; + + switch($callback) { + case 'LoadLanguageSelector': + $languageList = array(); + $translator =& $gallery->getTranslator(); + $supportedLanguages = $translator->getSupportedLanguages(); + foreach ($supportedLanguages as $language => $countryList) { + foreach ($countryList as $country => $languageData) { + $languageList[$language . '_' . $country] = $languageData['description']; + } + } + + list ($ret, $language) = $gallery->getActiveLanguageCode(); + if ($ret) { + return $ret; + } + + $block['core']['LanguageSelector'] = + array('list' => $languageList, 'language' => $language); + return null; + + case 'ShouldShowEmergencyEditItemLink': + $check = isset($params['checkBlocks']) ? $params['checkBlocks'] : ''; + /** + * @todo Remove support for check[Sidebar|Album|Photo]Blocks on next major api bump + */ + foreach (array('checkSidebarBlocks' => 'sidebar', + 'checkAlbumBlocks' => 'album', + 'checkPhotoBlocks' => 'photo') as $oldParam => $key) { + if (!empty($params[$oldParam])) { + $check .= empty($check) ? $key : ",$key"; + } + } + + $block['core']['ShouldShowEmergencyEditItemLink'] = false; + if (isset($params['permissions']['core_edit'])) { + $block['core']['ShouldShowEmergencyEditItemLink'] = true; + foreach (explode(',', $check) as $key) { + foreach ($theme['params'][$key . 'Blocks'] as $entry) { + if ($entry[0] == 'core.ItemLinks') { + $block['core']['ShouldShowEmergencyEditItemLink'] = false; + break 2; + } + } + } + } + return null; + + case 'LoadPeers': + $item = $params['item']; + if (isset($item['parent']->getChildrenFunction)) { + $parent = $item['parent']; + list ($ret, $peerIds) = call_user_func($parent->getChildrenFunction, $userId); + if ($ret) { + return $ret; + } + } else if ($item['parentId'] > 0) { + list ($ret, $canViewParent) = + GalleryCoreApi::hasItemPermission($item['parentId'], 'core.view', $userId); + if ($ret) { + return $ret; + } + if ($canViewParent) { + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($item['parentId']); + if ($ret) { + return $ret; + } + list ($ret, $peerIds) = + GalleryCoreApi::fetchChildItemIds($parent, null, null, $userId); + if ($ret) { + return $ret; + } + } + } + if (!empty($peerIds)) { + foreach ($peerIds as $i => $id) { + if ($id == $item['id']) { + $peerItemIndex = $i; + break; + } + } + } + if (isset($peerItemIndex)) { + $windowSize = isset($params['windowSize']) ? ($params['windowSize'] - 1) : 6; + $addEnds = isset($params['addEnds']) ? $params['addEnds'] : true; + $peerLast = count($peerIds) - 1; + $peerNeighborStart = max($peerItemIndex - (int)($windowSize/2), 0); + $peerNeighborEnd = min($peerItemIndex + (int)(($windowSize+1)/2), $peerLast); + /* If the window is pinned to one end, expand it to the entire windowSize */ + if ($peerNeighborStart == 0) { + $peerNeighborEnd = min($peerLast, $windowSize); + } else if ($peerNeighborEnd == $peerLast) { + $peerNeighborStart = max($peerLast - $windowSize, 0); + } + if ($peerNeighborStart > 0 && $addEnds) { + $peerMap[0] = $peerIds[0]; + } + for ($i = $peerNeighborStart; $i <= $peerNeighborEnd; $i++) { + $peerMap[$i] = $peerIds[$i]; + } + if ($peerNeighborEnd < $peerLast && $addEnds) { + $peerMap[$peerLast] = $peerIds[$peerLast]; + } + + list ($ret, $peerItems) = GalleryCoreApi::loadEntitiesById($peerMap); + if ($ret) { + return $ret; + } + if (!empty($params['loadThumbnails'])) { + list ($ret, $thumbTable) = GalleryCoreApi::fetchThumbnailsByItemIds($peerMap); + if ($ret) { + return $ret; + } + } + $j = 0; + foreach ($peerMap as $i => $id) { + $peer = (array)$peerItems[$j++]; + $peer['peerIndex'] = $i + 1; + if (isset($thumbTable[$id])) { + $peer['thumbnail'] = (array)$thumbTable[$id]; + } + $peers[] = $peer; + } + $block['core']['LoadPeers'] = array('peers' => $peers, + 'peerCount' => count($peerIds), 'thisPeerIndex' => $peerItemIndex + 1, + 'parent' => (array)$parent); + } else { + $block['core']['LoadPeers'] = + array('peers' => array(), 'peerCount' => 0); + } + return null; + + case 'LoadValidationPlugins': + if (!empty($params['level'])) { + $options['level'] = $params['level']; + } else { + list ($ret, $options['level']) = + GalleryCoreApi::getPluginParameter('module', 'core', 'validation.level'); + if ($ret) { + return $ret; + } + } + if ($options['level'] == 'MEDIUM' && !empty($params['key'])) { + $options['key'] = $params['key']; + } + if ($options['level'] == 'OFF') { + $allPluginIds = array(); + } else { + list ($ret, $allPluginIds) = + GalleryCoreApi::getAllFactoryImplementationIds('GalleryValidationPlugin'); + if ($ret) { + return $ret; + } + } + + /* Let each plugin load its template data */ + $block['core']['ValidationPlugins'] = array(); + foreach (array_keys($allPluginIds) as $pluginId) { + list ($ret, $plugin) = + GalleryCoreApi::newFactoryInstanceById('GalleryValidationPlugin', $pluginId); + if ($ret) { + return $ret; + } + + list ($ret, $data['file'], $data['l10Domain']) = + $plugin->loadTemplate($smarty->_tpl_vars['form'], $options); + if ($ret) { + return $ret; + } + if (isset($data['file'])) { + $block['core']['ValidationPlugins'][] = $data; + } + } + return null; + } + + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } +} +?> diff --git a/Source/gallery2/modules/core/ChangeLanguage.inc b/Source/gallery2/modules/core/ChangeLanguage.inc new file mode 100644 index 0000000..e4ba5e5 --- /dev/null +++ b/Source/gallery2/modules/core/ChangeLanguage.inc @@ -0,0 +1,49 @@ + + * @version $Revision: 15513 $ + */ +class ChangeLanguageController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $language = GalleryUtilities::getRequestVariables('language'); + $ret = $gallery->setActiveLanguageCode($language); + if ($ret) { + return array($ret, null); + } + + $results['return'] = 1; + $results['status'] = array(); + $results['error'] = array(); + + return array(null, $results); + } +} +?> diff --git a/Source/gallery2/modules/core/CoreModuleExtras.inc b/Source/gallery2/modules/core/CoreModuleExtras.inc new file mode 100644 index 0000000..26dc866 --- /dev/null +++ b/Source/gallery2/modules/core/CoreModuleExtras.inc @@ -0,0 +1,3222 @@ + + * @version $Revision: 16630 $ + * @static + */ +class CoreModuleExtras { + + /** + * @see GalleryModule::upgrade + * @param object GalleryModule $module the core module + * @param string $currentVersion the current installed version + */ + function upgrade($module, $currentVersion, $statusMonitor) { + global $gallery; + $storage =& $gallery->getStorage(); + $platform =& $gallery->getPlatform(); + $gallery->debug('Entering CoreModuleExtras::upgrade'); + + /* + * We store our version outside of the database so that we can upgrade even if the database + * is in an undependable state + */ + $versions = $module->getInstalledVersions(); + $currentVersion = $versions['core']; + if (!isset($currentVersion)) { + $gallery->debug('Current version not set'); + /* + * This is either an initial install or an upgrade from version 0.8 (which didn't have + * the core versions.dat file). Use a module parameter as our acid test. + * + * @todo Get rid of this when we stop supporting upgrades from alphas + */ + list ($ret, $paramValue) = $module->getParameter('permissions.directory'); + if (isset($paramValue)) { + $currentVersion = '0.8'; + } else { + $currentVersion = '0'; + } + } + $gallery->debug('Old version: ' . $currentVersion + . ' New version: ' . $module->getVersion()); + /* Enable upgrade from any patch release version */ + $currentVersion = preg_replace('/^(1\.[01]\.0)\.\d+$/', '$1.x', $currentVersion); + + /* + * We converted the character set for MySQL to UTF8 in version 1.0.27, but this only + * applies if you are running MySQL 4. If you install MySQL 4 after upgrading past 1.0.27 + * then you'd get stuck with the non-UTF8 character set and you'd get scrambled output. + * To remedy this, we check here to see if you're using a version more recent than 1.0.26 + * and if so, we perform the conversion now. Otherwise, we perform the conversion in-line + * in the 1.0.26 upgrade block below. + */ + if (version_compare($currentVersion, '1.0.26', '>')) { + list ($ret, $converted) = + CoreModuleExtras::convertCharacterSetToUtf8($module, $statusMonitor); + if ($ret) { + return $ret; + } + } + + /** + * README: How to update the block below + * + * If you add a new feature to the core module and revise the version, you should do the + * following. Supposing the current version is 1.0.1 and you're adding 1.0.2. Go to the + * end of the switch and find the 'end of upgrade path' case. Create a new case *above* + * that one with the old version number. For our example you'd add: "case '1.0.1':" and + * then your code. Do *not* put in a break statement. (Update _prepareConfigUpgrade too). + */ + $gallery->debug(sprintf('The current version is %s', $currentVersion)); + switch ($currentVersion) { + case '0': + $gallery->debug('Install core module'); + /* + * Checkpoint (commit configureStore transaction) + * Later in the installation code, we create the root album and therefore need locking. + * Locks are acquired with a non-transactional db connection. So before we can query + * the db with a second connection, the INSERT id into SequenceLock needs to be + * committed. Related bug 1235284. + */ + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.15); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + if (GalleryUtilities::isA($platform, 'WinNtPlatform')) { + $flockType = 'database'; + } else { + $fileToLock = $platform->fopen(__FILE__, 'r'); + $wouldBlock = false; + if ($platform->flock($fileToLock, LOCK_SH, $wouldBlock) || $wouldBlock) { + $flockType = 'flock'; + } else { + $flockType = 'database'; + } + $platform->fclose($fileToLock); + } + $gallery->debug(sprintf('Locktype %s selected', $flockType)); + /* Initial install. Make sure all our module parameters are set. */ + $gallery->debug('Set core module parameters'); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTranslator.class'); + foreach (array('permissions.directory' => '0755', + 'permissions.file' => '0644', + 'exec.expectedStatus' => '0', + 'exec.beNice' => '0', + 'default.orderBy' => 'orderWeight', + 'default.orderDirection' => '1', + 'default.theme' => 'matrix', + 'default.language' => GalleryTranslator::getLanguageCodeFromRequest(), + 'language.useBrowserPref' => '0', + 'default.newAlbumsUseDefaults' => 'false', + 'session.lifetime' => 21 * 86400, /* Three weeks */ + 'session.inactivityTimeout' => 7 * 86400, /* One week */ + 'misc.markup' => 'bbcode', + 'lock.system' => $flockType, + 'format.date' => '%x', + 'format.time' => '%X', + 'format.datetime' => '%c', + 'repository.updateTime' => '0', + 'acceleration' => serialize(array('guest' => array('type' => 'none'), + 'user' => array('type' => 'none'))), + 'validation.level' => 'MEDIUM', + 'core.repositories' => serialize(array('released' => 1)), + ) as $key => $value) { + if (!isset($param[$key])) { + $ret = $module->setParameter($key, (string)$value); + if ($ret) { + $gallery->debug(sprintf('Error: Failed to set core module parameter %s, ' . + 'this is the error stack trace: %s', $key, + $ret->getAsText())); + return $ret; + } + } + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.2); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + /* Activate the default theme */ + $gallery->debug('Load default theme'); + list ($ret, $themeList) = GalleryCoreApi::fetchPluginStatus('theme'); + if ($ret) { + return $ret; + } + $defaultThemeId = 'matrix'; + if (empty($themeList[$defaultThemeId]['available'])) { + $gallery->debug(sprintf('Warning: %s theme is not available. Trying to fall ' . + 'back to another theme.', $defaultThemeId)); + $defaultThemeId = null; + foreach ($themeList as $themeId => $themeInfo) { + if (!empty($themeInfo['available'])) { + $defaultThemeId = $themeId; + break; + } + } + if (empty($defaultThemeId)) { + return GalleryCoreApi::error(ERROR_UNKNOWN, __FILE__, __LINE__, + 'There is no theme available!'); + } + $ret = $module->setParameter('default.theme', $defaultThemeId); + if ($ret) { + return $ret; + } + } + $gallery->debug(sprintf('Using %s as default theme', $defaultThemeId)); + + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $defaultThemeId); + if ($ret) { + $gallery->debug(sprintf('Error: Failed to load %s theme, this is the error ' . + 'stack trace; %s', $defaultThemeId, $ret->getAsText())); + return $ret; + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.25); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + $gallery->debug('InstallOrUpgrade default theme'); + $ret = $theme->installOrUpgrade(); + if ($ret) { + $gallery->debug(sprintf('Error: Failed to installOrUpgrade %s theme, this is ' . + 'the error stack trace; %s', $defaultThemeId, $ret->getAsText())); + return $ret; + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.3); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + $gallery->debug('Activate default theme'); + list ($ret, $ignored) = $theme->activate(false); + if ($ret) { + $gallery->debug(sprintf('Error: Failed to activate %s theme, this is ' . + 'the error stack trace; %s', $defaultThemeId, $ret->getAsText())); + return $ret; + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.4); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + /* + * Register our permissions. Since we're storing internationalized strings in the + * database, we have to give our internationalized string extractor a clue that these + * strings get translated. So put a line like this translate('key') in for each + * description so that our extractor can find it. + */ + $gallery->debug('Register core module permissions'); + $permissions[] = array('all', $gallery->i18n('All access'), + GALLERY_PERMISSION_ALL_ACCESS, array()); + $permissions[] = array('view', $gallery->i18n('[core] View item'), 0, array()); + $permissions[] = array('viewResizes', $gallery->i18n('[core] View resized version(s)'), + 0, array()); + $permissions[] = array('viewSource', $gallery->i18n('[core] View original version'), + 0, array()); + $permissions[] = array('viewAll', $gallery->i18n('[core] View all versions'), + GALLERY_PERMISSION_COMPOSITE, + array('core.view', 'core.viewResizes', 'core.viewSource')); + $permissions[] = array('addAlbumItem', $gallery->i18n('[core] Add sub-album'), + 0, array()); + $permissions[] = array('addDataItem', $gallery->i18n('[core] Add sub-item'), + 0, array()); + $permissions[] = array('edit', $gallery->i18n('[core] Edit item'), 0, array()); + $permissions[] = array('changePermissions', + $gallery->i18n('[core] Change item permissions'), 0, array()); + $permissions[] = array('delete', $gallery->i18n('[core] Delete item'), 0, array()); + foreach ($permissions as $p) { + $ret = GalleryCoreApi::registerPermission( + $module->getId(), 'core.' . $p[0], $p[1], $p[2], $p[3]); + if ($ret) { + $gallery->debug(sprintf('Error: Failed to register a permission, ' . + 'this is the error stack trace: %s', + $ret->getAsText())); + return $ret; + } + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.5); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + foreach (array('_createAccessListCompacterLock', + '_createAllUsersGroup', + '_createSiteAdminsGroup', + '_createEverybodyGroup', + '_createAnonymousUser', + '_createAdminUser', + '_createRootAlbumItem') as $func) { + + $gallery->debug(sprintf('Call user func %s', $func)); + $ret = call_user_func(array('CoreModuleExtras', $func), $module); + if ($ret) { + $gallery->debug(sprintf('Error: %s returned an error, ' . + 'this is the error stack trace: %s', $func, + $ret->getAsText())); + return $ret; + } + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.6); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + + $gallery->debug('Initialize MIME types'); + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_advanced.class'); + $ret = GalleryMimeTypeHelper_advanced::initializeMimeTypes(); + if ($ret) { + $gallery->debug(sprintf('Error: Failed to initialize MIME types, this is ' . + 'the error stack trace: %s', $ret->getAsText())); + return $ret; + } + $gallery->debug('CoreModulesExtra::upgrade: successfully installed core'); + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Installing the core module'), '', 0.7); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(180); + break; + + case '0.8': + $gallery->debug('Warning: Upgrading from version 0.8 (not supported)'); + case '0.8.1': + case '0.8.2': + /* + * Update our framework module parameters to have a leading underscore so that we have + * our own separate namespace + */ + $query = ' + UPDATE + [GalleryPluginParameterMap] + SET + [::parameterName] = ? + WHERE + [GalleryPluginParameterMap::parameterName] = ? + AND + [GalleryPluginParameterMap::pluginType] = \'module\' + AND + [GalleryPluginParameterMap::itemId] = 0 + '; + $ret = $storage->execute($query, array('_version', 'version')); + if ($ret) { + return $ret; + } + + $ret = $storage->execute($query, array('_callbacks', 'callbacks')); + if ($ret) { + return $ret; + } + + /* Added a new parameter */ + $ret = $module->setParameter('misc.login', 'both'); + if ($ret) { + return $ret; + } + + case '0.8.3': + case '0.8.4': + case '0.8.5': + /* Added GalleryItem::originationTimestamp */ + $ret = $storage->configureStore($module->getId(), array('GalleryItem:1.0')); + if ($ret) { + return $ret; + } + + /* Copy viewedSinceTimestamp to originationTimestamp as both default to time() */ + $query = ' + UPDATE + [GalleryItem] + SET + [::originationTimestamp] = [::viewedSinceTimestamp] + '; + $ret = $storage->execute($query, array()); + if ($ret) { + return $ret; + } + + case '0.8.6': + case '0.8.7': + $ret = $module->setParameter('default.newAlbumsUseDefaults', 'false'); + if ($ret) { + return $ret; + } + + case '0.8.8': + /* + * This was not originally part of the 0.8.9 upgrade, but added much later. Upgrade + * code after this will need valid factory registrations so we can't wait until + * upgrade() completes to register during reactivate(). + */ + $ret = CoreModuleExtras::performFactoryRegistrations($module); + if ($ret) { + return $ret; + } + + case '0.8.9': + /* + * Set all factory implementation weights to 5. We'll re-register all core + * implementations with a weight of 4 so that they get precedence. + */ + $query = 'UPDATE [GalleryFactoryMap] SET [::orderWeight] = 5'; + $ret = $storage->execute($query, array()); + if ($ret) { + return $ret; + } + + case '0.8.10': + case '0.8.11': + case '0.8.12': + $ret = $module->setParameter('lock.system', 'flock'); + if ($ret) { + return $ret; + } + + case '0.8.13': + /* We used to add layout versioning here. Now that's been moved to the 0.9.29 block. */ + + case '0.8.14': + /* Added Entity::onLoadHandlers; default all values to null */ + $ret = $storage->configureStore($module->getId(), array('GalleryEntity:1.0')); + if ($ret) { + return $ret; + } + + case '0.8.15': + /* Removed GalleryItemPropertiesMap */ + + case '0.8.16': + /* Schema updates: GalleryPluginMap, GalleryPluginParameterMap, GalleryGroup */ + $ret = $storage->configureStore($module->getId(), + array('GalleryPluginMap:1.0', 'GalleryPluginParameterMap:1.0', 'GalleryGroup:1.0')); + if ($ret) { + return $ret; + } + + case '0.8.17': + /* Beta 1! */ + + case '0.9.0': + $ret = $module->removeParameter('misc.useShortUrls'); + if ($ret) { + return $ret; + } + + case '0.9.1': + /* Set Gallery version to 2.0-beta-1+ */ + + case '0.9.2': + /* Changed the data cache format */ + + case '0.9.3': + /* CSS refactor across entire app */ + + case '0.9.4': + $gallery->guaranteeTimeLimit(30); + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_advanced.class'); + $ret = GalleryMimeTypeHelper_advanced::initializeMimeTypes(); + if ($ret) { + return $ret; + } + + case '0.9.5': + $gallery->guaranteeTimeLimit(30); + $ret = CoreModuleExtras::_createAccessListCompacterLock($module); + if ($ret) { + return $ret; + } + + /* + * Choose an item that has permission rows. Find all other items with the same exact + * permissions. Create a new ACL, assign all those items to the ACL, delete those rows + * from the permissions table. Repeat. + */ + $totalRowsQuery = ' + SELECT + COUNT(DISTINCT [GalleryPermissionMap::itemId]) + FROM + [GalleryPermissionMap] + '; + + $findItemIdQuery = ' + SELECT + [GalleryPermissionMap::itemId], COUNT(*) AS C + FROM + [GalleryPermissionMap] + GROUP BY + [GalleryPermissionMap::itemId] + ORDER BY + C DESC + '; + + $permissionRowCountQuery = ' + SELECT + COUNT(*) + FROM + [GalleryPermissionMap] + WHERE + [GalleryPermissionMap::itemId] = ? + '; + + /* Updated this query for core 1.0.11 to write to userOrGroupId column */ + $createAclQuery = ' + INSERT INTO + [GalleryAccessMap] ([::accessListId], [::userOrGroupId], [::permission]) + SELECT + ?, + [GalleryPermissionMap::userId] + [GalleryPermissionMap::groupId], + [GalleryPermissionMap::permission] + FROM + [GalleryPermissionMap] + WHERE + [GalleryPermissionMap::itemId] = ? + '; + + $findPossibleDupesQuery = ' + SELECT + [GalleryPermissionMap=2::itemId], COUNT(*) + FROM + [GalleryPermissionMap=1], [GalleryPermissionMap=2] + WHERE + [GalleryPermissionMap=1::itemId] = ? + AND + [GalleryPermissionMap=1::userId] = [GalleryPermissionMap=2::userId] + AND + [GalleryPermissionMap=1::groupId] = [GalleryPermissionMap=2::groupId] + AND + [GalleryPermissionMap=1::permission] = [GalleryPermissionMap=2::permission] + GROUP BY + [GalleryPermissionMap=2::itemId] + HAVING + COUNT(*) = ? + '; + + $refineDupesQuery = ' + SELECT + [GalleryPermissionMap::itemId], COUNT(*) + FROM + [GalleryPermissionMap] + WHERE + [GalleryPermissionMap::itemId] IN (%s) + GROUP BY + [GalleryPermissionMap::itemId] + HAVING + COUNT(*) = ? + '; + + $assignAclQuery = ' + INSERT INTO + [GalleryAccessSubscriberMap] ([::itemId], [::accessListId]) + SELECT DISTINCT + [GalleryPermissionMap::itemId], ? + FROM + [GalleryPermissionMap] + WHERE + [GalleryPermissionMap::itemId] IN (%s) + '; + + $deleteOldPermsQuery = ' + DELETE FROM + [GalleryPermissionMap] + WHERE + [GalleryPermissionMap::itemId] IN (%s) + '; + + /* Determine how many items we are going to process for our status message */ + list ($ret, $results) = + $gallery->search($totalRowsQuery, array(), array('limit' => array('count' => 1))); + if ($ret) { + return $ret; + } + if ($results->resultCount() == 0) { + break; + } + $result = $results->nextResult(); + $totalPermissionItems = $result[0]; + + $itemsProcessed = 0; + if ($totalPermissionItems > 0) { + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Upgrading permissions'), + null, + $itemsProcessed / $totalPermissionItems); + if ($ret) { + return $ret; + } + } + + while ($totalPermissionItems > 0 && true) { + $gallery->guaranteeTimeLimit(60); + + /* Find the next item in the permissions table */ + list ($ret, $results) = $storage->search($findItemIdQuery); + if ($ret) { + return $ret; + } + if ($results->resultCount() == 0) { + break; + } + $result = $results->nextResult(); + list ($targetItemId, $permissionRowCount) = array((int)$result[0], (int)$result[1]); + + /* Create a new ACL */ + list ($ret, $newAclId) = $storage->getUniqueId(); + if ($ret) { + return $ret; + } + + $ret = $storage->execute($createAclQuery, array($newAclId, $targetItemId)); + if ($ret) { + return $ret; + } + + /* + * Find all items that share the same permissions as the target. I haven't figured + * out a good way to do aggregation without using temporary tables, which I'd like + * to avoid for portability. So, figure out how many rows have at least as many + * matching permissions as our target item. These are potentially dupes. We'll + * refine them later on. + */ + list ($ret, $results) = $gallery->search( + $findPossibleDupesQuery, array($targetItemId, $permissionRowCount)); + if ($ret) { + return $ret; + } + $possibleDupeIds = array(); + while ($result = $results->nextResult()) { + $possibleDupeIds[] = (int)$result[0]; + } + + /* + * Process these queries in chunks since we may have thousands of items with the + * same permissions and we don't want to give the database a heart attack + */ + $chunkSize = 200; + while (!empty($possibleDupeIds)) { + $chunk = array_splice($possibleDupeIds, 0, $chunkSize); + $count = count($chunk); + + /* + * Refine our dupes by eliminating ones that don't have exactly the same number + * of permission rows as our target. Our target item is included in the dupes, + * so this will always return at least 1 row. + */ + $markers = GalleryUtilities::makeMarkers($count); + $query = sprintf($refineDupesQuery, $markers); + list ($ret, $results) = $gallery->search( + $query, array_merge($chunk, array($permissionRowCount))); + $possibleDupeIds = array(); + + $dupeIds = array(); + while ($result = $results->nextResult()) { + $dupeIds[] = (int)$result[0]; + } + + if (empty($dupeIds)) { + /* No actual dupes? Try the next chunk. */ + continue; + } + + $count = count($dupeIds); + $markers = GalleryUtilities::makeMarkers($count); + + /* Set all the dupe items in this chunk to use the new ACL */ + $query = sprintf($assignAclQuery, $markers); + $ret = $storage->execute($query, array_merge(array($newAclId), $dupeIds)); + if ($ret) { + return $ret; + } + + /* Remove all the permission rows for the migrated items */ + $query = sprintf($deleteOldPermsQuery, $markers); + $ret = $storage->execute($query, $dupeIds); + if ($ret) { + return $ret; + } + + $itemsProcessed += $count; + + $ret = $statusMonitor->renderStatusMessage( + $module->translate(array( + 'text' => 'Upgrading permissions (%d items complete, %d remaining)', + 'arg1' => $itemsProcessed, + 'arg2' => $totalPermissionItems - $itemsProcessed)), + '', + $itemsProcessed / $totalPermissionItems); + if ($ret) { + return $ret; + } + } + } + + if ($totalPermissionItems > 0) { + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Deleting old permission tables'), + '', + $itemsProcessed / $totalPermissionItems); + if ($ret) { + return $ret; + } + } + + /* Removed GalleryPermissionMap */ + + case '0.9.6': + /* Added GalleryMaintenance table */ + + case '0.9.7': + /* + * Change GalleryMaintenance::details column to be a serialized array. The old data is + * transient so just delete it. Added FlushTemplatesTask, FlushDatabaseCacheTask. + */ + $gallery->guaranteeTimeLimit(30); + $ret = GalleryCoreApi::removeAllMapEntries('GalleryMaintenanceMap'); + if ($ret) { + return $ret; + } + + case '0.9.8': + /* + * Create 'plugins' and 'plugins_data' directories in g2data. Remove trailing slash for + * config paths using substr so file_exists can detect either file or dir. Update: in + * core 1.0.6 the data.gallery.plugins dir moved under gallery2 basedir, not in g2data + * anymore; we may not have permission to create a dir here. So code below is now + * updated to not require those mkdirs to succeed. + */ + $gallery->guaranteeTimeLimit(30); + foreach (array(substr($gallery->getConfig('data.gallery.plugins'), 0, -1) => false, + $gallery->getConfig('data.gallery.plugins') . 'modules' => false, + $gallery->getConfig('data.gallery.plugins') . 'layouts' => false, + substr($gallery->getConfig('data.gallery.plugins_data'), 0, -1) => true, + $gallery->getConfig('data.gallery.plugins_data') . 'modules' => true, + $gallery->getConfig('data.gallery.plugins_data') . 'layouts' => true) + as $dir => $isRequired) { + if ($platform->file_exists($dir)) { + if ($platform->is_dir($dir)) { + /* No need to do anything. Except maybe we could check permissions here. */ + } else { + /* There's a file there. There shouldn't be. Move it out of the way. */ + if (!@$platform->rename($newDir, "$newDir.old") || + !@$platform->mkdir($dir)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "$dir already exists; unable to replace it"); + } + } + } else { + if (!@$platform->mkdir($dir) && $isRequired) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "Unable to create $dir"); + } + } + } + + case '0.9.9': + /* Beta 2 release! */ + + case '0.9.10': + /* Added BuildDerivativesTask */ + + case '0.9.11': + /* Added GalleryRecoverPasswordMap */ + + case '0.9.12': + /* Added ResetViewCountsTask */ + + case '0.9.13': + /* Added SystemInfoTask */ + + case '0.9.14': + /* Added SetOriginationTimestampTask */ + + case '0.9.15': + /* Remove lock subdirs -- this is from 1.1.8->1.1.9 upgrade */ + $locksDir = $gallery->getConfig('data.gallery.locks'); + if ($platform->file_exists($locksDir)) { + @$platform->recursiveRmDir($locksDir); + } + @$platform->mkdir($locksDir); + + /* + * Changed 'All Users' to 'Registered Users' + * Don't change if the user modified the name already! + * Don't change if there is already a group with the new name + */ + list ($ret, $group) = + GalleryCoreApi::fetchGroupByGroupName($module->translate('Registered Users')); + if ($ret) { + if ($ret->getErrorCode() & ERROR_MISSING_OBJECT) { + /* OK, we can change the group name */ + + list ($ret, $allUserGroupId) = $module->getParameter('id.allUserGroup'); + if ($ret) { + return $ret; + } + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($allUserGroupId); + if ($ret) { + return $ret; + } + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($allUserGroupId); + if ($ret) { + return $ret; + } + $allUserGroupName = $group->getGroupName(); + /* We used to entitize data in db; expect that from orignal group name: */ + $originalGroupName = GalleryUtilities::utf8ToUnicodeEntities( + $module->translate('All Users')); + if (!strcmp($allUserGroupName, $originalGroupName)) { + $group->setGroupName($module->translate('Registered Users')); + $ret = $group->save(); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + } + } else { + return $ret; + } + } /* Else a group with that name already exists, nothing to do */ + + case '0.9.16': + /* Beta 3 release! */ + + case '0.9.17': + /* Split uploadLocalServer.dirs list into one parameter per entry */ + list ($ret, $dirList) = $module->getParameter('uploadLocalServer.dirs'); + if ($ret) { + return $ret; + } + if (!empty($dirList)) { + $dirList = explode(',', $dirList); + for ($i = 1; $i <= count($dirList); $i++) { + $ret = $module->setParameter('uploadLocalServer.dir.' . $i, $dirList[$i - 1]); + if ($ret) { + return $ret; + } + } + } + $ret = $module->removeParameter('uploadLocalServer.dirs'); + if ($ret) { + return $ret; + } + + case '0.9.18': + /* Add image/x-photo-cd mime type */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('pcd'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('pcd', 'image/x-photo-cd', false); + if ($ret) { + return $ret; + } + } + + case '0.9.19': + /* New multisite system and support for config.php upgrades */ + + case '0.9.20': + /* Change view/controller separator: core:ShowItem -> core.ShowItem */ + case '0.9.21': + /* Session cookie change, requires new config.php variable */ + + case '0.9.22': + /* GalleryModule::getItemLinks API change (GalleryModule API bumped to 0.13) */ + + case '0.9.23': + /* Session cookie change, revert the last change and try something new */ + foreach (array('cookie.path', 'cookie.domain') as $parameterName) { + $ret = $module->setParameter($parameterName, ''); + if ($ret) { + return $ret; + } + } + + case '0.9.24': + /* Add image/jpeg-cmyk mime type */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('jpgcmyk'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('jpgcmyk', 'image/jpeg-cmyk', false); + if ($ret) { + return $ret; + } + } + case '0.9.25': + /* Add image/tiff-cmyk mime type */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('tifcmyk'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('tifcmyk', 'image/tiff-cmyk', false); + if ($ret) { + return $ret; + } + } + case '0.9.26': + /* Added GalleryDerivative::isBroken; default all values to null */ + $ret = $storage->configureStore($module->getId(), array('GalleryDerivative:1.0')); + if ($ret) { + return $ret; + } + + case '0.9.27': + /* Remove lock subdirs -- this is from 1.1.8->1.1.9 upgrade */ + $locksDir = $gallery->getConfig('data.gallery.locks'); + if ($platform->file_exists($locksDir)) { + @$platform->recursiveRmDir($locksDir); + } + @$platform->mkdir($locksDir); + + /* Mark old broken derivatives as such with our new isBroken flag */ + /* + * This is the filesize and the crc32 checksum of the broken derivative placeholder + * image that we used in beta 3 and earlier versions. We may have replaced this image + * by the time this upgrade code is run. Thus we hardcode filesize(oldImage) and + * crc32(oldImageData) here. + */ + $referenceSize = 1589; + /* CRC is a good measure to compare files (not to detect malicous attacks though) */ + $referenceCrc = 888290220; + + /* + * 1. Get a list of all derivatives that are not already marked as isBroken + * (We can't count on derivativeSize being correct, so check all derivatives) + * Update: upgrade from pre-beta-1 will fail to load RandomHighlightDerivativeImage + * so restrict this query to only GalleryDerivativeImage + */ + $gallery->guaranteeTimeLimit(60); + $query = 'SELECT [GalleryDerivative::id] + FROM [GalleryDerivative], [GalleryEntity] + WHERE [GalleryDerivative::isBroken] IS NULL + AND [GalleryDerivative::id] = [GalleryEntity::id] + AND [GalleryEntity::entityType] = \'GalleryDerviativeImage\''; + list ($ret, $searchResults) = $gallery->search($query); + if ($ret) { + return $ret; + } + + /* Check the derivatives that match the search criteria */ + if ($searchResults->resultCount() > 0) { + $derivativeIds = array(); + while ($result = $searchResults->nextResult()) { + $derivativeIds[] = $result[0]; + } + $totalDerivatives = sizeof($derivativeIds); + + /* + * The following process is very expensive. We have to deal with a potentially huge + * (10^6) amount of derivatives. To not exceed the memory limit we do everything in + * batches. To not exceed the PHP execution time limit and to not exceed the apache + * timeout we add a progress bar and manipulate the PHP execution time limit + * periodically. + */ + $gallery->guaranteeTimeLimit(60); + + /* Show a progress bar */ + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Detecting broken derivatives'), '', 0); + if ($ret) { + return $ret; + } + + /* + * The outer loop is for each derivativeId and we upgrade a progress bar every + * $progressStepSize ids. We don't load entity by entity, but in batches of + * $loadBatchSize. And we don't save the items that were detected as broken + * derivatives one by one, but also in batches of $saveBatchSize, i.e. we acquire + * and release the locks in this batch size, but still have to save entity by entity + * because Gallery has no mass entity save like loadEntitiesById(). + */ + $derivatives = array(); + $progressStepSize = min(500, intval($totalDerivatives / 10)); + $loadBatchSize = 1000; + $saveBatchSize = 1000; + $itemsProcessed = 0; + $brokenDerivatives = array(); + do { + /* 2. Load the entities in batches */ + if (empty($derivatives) && !empty($derivativeIds)) { + /* Prevent PHP timeout */ + $gallery->guaranteeTimeLimit(60); + /* Prevent apache timeout */ + $ret = $statusMonitor->renderStatusMessage( + $module->translate( + array('text' => 'Detecting broken derivatives, loading ' + . '(%d derivatives checked, %d remaining)', + 'arg1' => $itemsProcessed, + 'arg2' => sizeof($derivativeIds))), + '', $itemsProcessed / $totalDerivatives); + if ($ret) { + return $ret; + } + + $currentDerivativeIds = array_splice($derivativeIds, 0, $loadBatchSize); + list ($ret, $derivatives) = + GalleryCoreApi::loadEntitiesById($currentDerivativeIds); + if ($ret) { + return $ret; + } + } + + /* Detect if the derivative is broken */ + if (!empty($derivatives)) { + $itemsProcessed++; + $gallery->guaranteeTimeLimit(30); + $derivative = array_pop($derivatives); + + /* + * Show the progress, but not for each derivative, this would slow down the + * process considerably + */ + if ($itemsProcessed % $progressStepSize == 0 || + $itemsProcessed == $totalDerivatives) { + $ret = $statusMonitor->renderStatusMessage( + $module->translate( + array('text' => 'Detecting broken derivatives (%d derivatives ' + . 'checked, %d remaining)', + 'arg1' => $itemsProcessed, + 'arg2' => $totalDerivatives - $itemsProcessed)), + '', $itemsProcessed / $totalDerivatives); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(30); + } + + /* + * 3. Filter out derivatives that don't return true for isCacheCurrent + * (= don't have a cache file yet = would be rebuilt anyway) + */ + list ($ret, $current) = $derivative->isCacheCurrent(); + if ($ret) { + return $ret; + } + if (!$current) { + continue; + } + + /* + * 4. Filter out derivatives that don't have the same file size as the + * broken image placeholder + */ + list ($ret, $path) = $derivative->fetchPath(); + if ($ret) { + return $ret; + } + if (($size = $platform->filesize($path)) === false) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + if ($size != $referenceSize) { + continue; + } + + /* 5. Binary compare the derivative file with the placeholder file */ + if (($data = $platform->file($path)) === false) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + $data = implode('', $data); + if ($referenceCrc == crc32($data)) { + /* Add the derivative to the list of broken ones */ + $brokenDerivatives[$derivative->getId()] = $derivative; + } + } + + /* 6. Mark the detected broken derivative as such and save it in the DB */ + if (sizeof($brokenDerivatives) == $saveBatchSize || + (!empty($brokenDerivatives) && empty($derivativeIds))) { + $gallery->guaranteeTimeLimit(30); + $saveProgressStepSize = min(200, intval(sizeof($brokenDerivatives) / 10)); + + $ret = $statusMonitor->renderStatusMessage( + $module->translate( + array('text' => 'Detecting broken derivatives, saving ' + . '(%d derivatives checked, %d remaining)', + 'arg1' => $itemsProcessed, + 'arg2' => $totalDerivatives - $itemsProcessed)), + '', $itemsProcessed / $totalDerivatives); + if ($ret) { + return $ret; + } + + list ($ret, $lockId) = + GalleryCoreApi::acquireWriteLock(array_keys($brokenDerivatives)); + if ($ret) { + return $ret; + } + + $itemsSaved = 0; + foreach ($brokenDerivatives as $brokenDerivative) { + $itemsSaved++; + if ($itemsSaved % $saveProgressStepSize == 0) { + $ret = $statusMonitor->renderStatusMessage( + $module->translate(array( + 'text' => 'Detecting broken derivatives, saving item ' + . '%d of %d (%d derivatives complete, %d remaining)', + 'arg1' => $itemsSaved, + 'arg2' => sizeof($brokenDerivatives), + 'arg3' => $itemsProcessed, + 'arg4' => $totalDerivatives - $itemsProcessed)), + '', $itemsProcessed / $totalDerivatives); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $gallery->guaranteeTimeLimit(30); + } + + $brokenDerivative->setIsBroken(true); + $ret = $brokenDerivative->save(true, false); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + } + $brokenDerivatives = array(); + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + } + /* + * Continue if there are either unloaded ids, unchecked derivatives or unsaved + * derivatives + */ + } while (!empty($derivativeIds) || !empty($brokenDerivatives) || + !empty($derivatives)); + } + + case '0.9.28': + /* Changed module API onLoad($entity, $duringUpgrade) definition */ + + case '0.9.29': + /* Ginormous layout and theme consolidation refactor */ + $ret = $storage->configureStore($module->getId(), + array('GalleryPluginParameterMap:1.1')); + if ($ret) { + return $ret; + } + + $query = ' + UPDATE + [GalleryPluginParameterMap] + SET + [::pluginType] = \'theme\' + WHERE + [GalleryPluginParameterMap::pluginType] = \'layout\' + '; + $ret = $storage->execute($query); + if ($ret) { + return $ret; + } + + /* After this refactor we only support the matrix theme */ + $query = ' + UPDATE + [GalleryAlbumItem] + SET + [::theme] = \'matrix\' + '; + $ret = $storage->execute($query); + if ($ret) { + return $ret; + } + + $query = ' + UPDATE + [GalleryPluginMap] + SET + [::pluginType] = \'theme\' + WHERE + [GalleryPluginMap::pluginType] = \'layout\' + '; + $ret = $storage->execute($query); + if ($ret) { + return $ret; + } + + /* + * Rename g2data 'layouts' directories to be 'themes', or create them if they don't + * already exist (they should exist, though) + */ + foreach (array($gallery->getConfig('data.gallery.plugins'), + $gallery->getConfig('data.gallery.plugins_data')) as $base) { + if ($platform->file_exists("$base/themes")) { + if ($platform->file_exists("$base/layouts")) { + $platform->recursiveRmDir("$base/layouts"); + } + } else if (file_exists($base)) { + if ($platform->file_exists("$base/layouts")) { + $platform->rename("$base/layouts", "$base/themes"); + } else { + $platform->mkdir("$base/themes"); + } + } + } + + /* Removed parameters */ + foreach (array('language.selector', 'misc.login') as $paramName) { + $ret = $module->removeParameter($paramName); + if ($ret) { + return $ret; + } + } + + /* + * If we're coming from 0.8.13 or earlier, then our themes don't have version + * information, so take care of that here by calling installOrUpgrade() on the currently + * active themes to let them update their bookkeeping. Reactivate them too for good + * measure. + */ + if (version_compare($currentVersion, '0.8.13', '<=')) { + list ($ret, $themes) = GalleryCoreApi::fetchPluginStatus('theme'); + if ($ret) { + return $ret; + } + + foreach ($themes as $themeId => $themeStatus) { + $gallery->guaranteeTimeLimit(30); + if (!empty($themeStatus['active'])) { + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $themeId); + if ($ret && + !($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH)) { + return $ret; + } + + $ret = $theme->installOrUpgrade(); + if ($ret) { + return $ret; + } + + list ($ret, $ignored) = $theme->activate(false); + if ($ret && + !($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH)) { + /* + * Theme getSettings may try to load ImageFrame interface, but + * ImageFrame may need to be upgraded. Ignore version mismatch here. + */ + return $ret; + } + } + } + } + + case '0.9.30': + /* Removed layout column from AlbumItem; matrix is only theme for now: set default */ + $ret = $storage->configureStore($module->getId(), array('GalleryAlbumItem:1.0')); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('default.theme', 'matrix'); + if ($ret) { + return $ret; + } + $ret = $module->removeParameter('default.layout'); + if ($ret) { + return $ret; + } + $query = ' + UPDATE + [GalleryAlbumItem] + SET + [::theme] = NULL + '; + $ret = $storage->execute($query); + if ($ret) { + return $ret; + } + + case '0.9.31': + /* Beta 4! */ + case '0.9.32': + /* Minor core API change */ + case '0.9.33': + /* Release Candidate 1! */ + + case '0.9.34': + /* Add date/time formats */ + foreach (array('format.date' => '%x', 'format.time' => '%X', 'format.datetime' => '%c') + as $key => $value) { + $ret = $module->setParameter($key, $value); + if ($ret) { + return $ret; + } + } + + case '0.9.35': + /* Release Candidate 2! */ + + case '0.9.36': + /* + * Fixed GalleryUtilities::getPseudoFileName for derivatives. Delete fast-download + * files that may have cached incorrect filenames. + */ + $slash = $platform->getDirectorySeparator(); + $baseDir = $gallery->getConfig('data.gallery.cache') . 'derivative' . $slash; + for ($i = 0; $i < 10; $i++) { + $gallery->guaranteeTimeLimit(60); + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Clearing fast-download cache'), '', $i / 10); + if ($ret) { + return $ret; + } + for ($j = 0; $j < 10; $j++) { + $dir = $baseDir . $i . $slash . $j . $slash; + if ($dh = @$platform->opendir($dir)) { + while (($file = $platform->readdir($dh)) !== false) { + if (substr($file, -9) == '-fast.inc') { + @$platform->unlink($dir . $file); + } + } + $platform->closedir($dh); + } + } + } + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Clearing fast-download cache'), '', 1); + if ($ret) { + return $ret; + } + + case '0.9.37': + /* 2.0 Release! */ + + case '1.0.0': + case '1.0.0.x': + /* Schema only upgrade */ + $ret = $storage->configureStore($module->getId(), + array('GalleryPluginParameterMap:1.2')); + if ($ret) { + return $ret; + } + + case '1.0.1': + /* Add image/wmf mime type */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('wmf'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('wmf', 'image/wmf', false); + if ($ret) { + return $ret; + } + } + + case '1.0.2': + /* Security fix */ + + case '1.0.3': + /* Consolidated .sql files into schema.tpl */ + + case '1.0.4': + /* Added maintenance mode */ + + case '1.0.5': + /* Remove plugins directory from g2data */ + $pluginDirectory = $gallery->getConfig('data.gallery.base') . 'plugins'; + $pluginDirectories = array($pluginDirectory . '/modules', + $pluginDirectory . '/themes', + $pluginDirectory); + + foreach ($pluginDirectories as $pluginDirectory) { + if (@$platform->file_exists($pluginDirectory)) { + /* We're not interested in whether it succeeded or not */ + @$platform->recursiveRmDir($pluginDirectory); + } + } + + case '1.0.6': + /* Add PluginPackageMap table */ + + case '1.0.7': + $ret = $module->setParameter('exec.beNice', '0'); + if ($ret) { + return $ret; + } + + case '1.0.8': + case '1.0.9': + /* Security fix in zipcart */ + + case '1.0.10': + /* Rename unnamed pre-beta-3 index to named index */ + if ($storage->getType() == 'mysql') { + $gallery->debug('Rename unnamed pre-beta-3 index to named index (ignore errors)'); + $query = sprintf(' + ALTER TABLE %sAccessMap + DROP INDEX %saccessListId_2, + ADD INDEX %sAccessMap_83732(%saccessListId);', + $storage->_tablePrefix, $storage->_columnPrefix, $storage->_tablePrefix, + $storage->_columnPrefix); + /* Ignore error, since there's nothing to do for most installations */ + $storage->execute($query); + } + + /* + * Combine AccessMap userId/groupId into single userOrGroupId, and remove unused + * GALLERY_PERMISSION_ITEM_ADMIN permission flag. Also increase size of + * GalleryUser::email column. + */ + $ret = $storage->configureStore($module->getId(), + array('GalleryAccessMap:1.0', 'GalleryUser:1.0')); + if ($ret) { + return $ret; + } + + /* If coming from 0.9.5 or earlier then GalleryAccessMap already has userOrGroupId */ + if (version_compare($currentVersion, '0.9.5', '>')) { + $query = ' + UPDATE + [GalleryAccessMap] + SET + [::userOrGroupId] = [::userId] + [::groupId] + '; + $ret = $storage->execute($query, array()); + if ($ret) { + return $ret; + } + } + + $ret = $storage->configureStore($module->getId(), array('GalleryAccessMap:1.1')); + if ($ret) { + return $ret; + } + + list ($ret, $flagModifier) = + $storage->getFunctionSql('BITAND', array('[::flags]', '?')); + if ($ret) { + return $ret; + } + $query = ' + UPDATE + [GalleryPermissionSetMap] + SET + [::flags] = ' . $flagModifier . ' + '; + $ret = $storage->execute($query, array(3)); + if ($ret) { + return $ret; + } + + case '1.0.11': + /* Several previous upgrades used 'modules' instead of 'module' with plugin params */ + list ($ret, $coreParams) = $module->fetchParameters(); + if ($ret) { + return $ret; + } + foreach (array('misc.useShortUrls', 'language.selector') as $key) { + if (isset($coreParams[$key])) { + $ret = $module->removeParameter('misc.useShortUrls'); + if ($ret) { + return $ret; + } + } + } + foreach (array('cookie.path' => '', 'cookie.domain' => '', + 'exec.beNice' => '0', 'repository.updateTime' => '0') + as $key => $value) { + if (!isset($coreParams[$key])) { + $ret = $module->setParameter($key, $value); + if ($ret) { + return $ret; + } + } + } + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryPluginParameterMap', array('pluginType' => 'modules')); + if ($ret) { + return $ret; + } + + case '1.0.12': + /* Add param 'language.useBrowserPref' */ + list ($ret, $langCode) = $module->getParameter('default.language'); + if ($ret) { + return $ret; + } + $useBrowserPref = '0'; + if (empty($langCode)) { + $useBrowserPref = '1'; + $ret = $module->setParameter('default.language', 'en_US'); + if ($ret) { + return $ret; + } + } + $ret = $module->setParameter('language.useBrowserPref', $useBrowserPref); + if ($ret) { + return $ret; + } + + case '1.0.13': + /* Add config parameter: 'baseUri'*/ + case '1.0.14': + /* GalleryCoreApi 7.0 and GalleryModule 3.0 */ + case '1.0.15': + /* + * Add fast-download for GalleryDataItems too. Fast-download files are now in + * cache/entity/. Delete the old files in cache/derivative/. + */ + $gallery->guaranteeTimeLimit(60); + $query = 'SELECT [GalleryDerivativeImage::id] + FROM [GalleryDerivativeImage]'; + list ($ret, $searchResults) = $gallery->search($query); + if ($ret) { + return $ret; + } + + if ($searchResults->resultCount() > 0) { + $derivativeIds = array(); + while ($result = $searchResults->nextResult()) { + $derivativeIds[] = $result[0]; + } + $totalDerivatives = count($derivativeIds); + $base = $gallery->getConfig('data.gallery.cache'); + $gallery->guaranteeTimeLimit(60); + + /* Show a progress bar */ + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Deleting old fast-download cache'), '', 0); + if ($ret) { + return $ret; + } + + $stepSize = min(100, max(intval($totalDerivatives / 10), 5)); + for ($i = 0; $i < $totalDerivatives; $i++) { + /* Delete the file if it exists */ + list ($first, $second) = GalleryDataCache::getCacheTuple($derivativeIds[$i]); + $fastDownloadFilePath = sprintf('%derivative/%s/%s/%d-fast.inc', + $base, $first, $second, $derivativeIds[$i]); + if ($platform->file_exists($fastDownloadFilePath)) { + $platform->unlink($fastDownloadFilePath); + } + + /* Update the progress bar / prevent timouts */ + if ($i % $stepSize == 0 || $i == ($totalDerivatives - 1)) { + $gallery->guaranteeTimeLimit(60); + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Deleting old fast-download cache'), + '', ($i+1) / $totalDerivatives); + if ($ret) { + return $ret; + } + } + } + } + case '1.0.16': + /* Added 'not-null' to Entities.inc and Map.inc */ + $storageExtras =& $storage->_getExtras(); + $storageExtras->_clearEntityAndMapCache(); + case '1.0.17': + /* Add image/tga mime type */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('tga'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('tga', 'image/tga', false); + if ($ret) { + return $ret; + } + } + + case '1.0.18': + /* Add index to GalleryEntity::linkId */ + $ret = $storage->configureStore($module->getId(), array('GalleryEntity:1.1')); + if ($ret) { + return $ret; + } + + case '1.0.19': + /* Add page level caching and the GalleryCache map */ + $acceleration = serialize(array('guest' => array('type' => 'none'), + 'user' => array('type' => 'none'))); + $ret = GalleryCoreApi::setPluginParameter( + 'module', 'core', 'acceleration', $acceleration); + if ($ret) { + return $ret; + } + + case '1.0.20': + /* Add configurable captcha security level */ + $ret = GalleryCoreApi::setPluginParameter('module', 'core', 'captcha.level', 'MEDIUM'); + if ($ret) { + return $ret; + } + + case '1.0.21': + /* GallerySession change: Store sessions in the database and no longer on disk */ + $sessionsDir = $gallery->getConfig('data.gallery.base') . 'sessions' . + $platform->getDirectorySeparator(); + $stepSize = 100; + $count = 0; + $iterationSize = 5000; + $iteration = 1; + /* Show a progress bar while removing the files */ + $ret = $statusMonitor->renderStatusMessage( + $module->translate(array('text' => 'Deleting old session files (iteration %d)', + 'arg1' => $iteration)), + '', 0); + if ($ret) { + return $ret; + } + $dir = $platform->opendir($sessionsDir, 'r'); + if (!$dir) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "Can't access session dir"); + } + $gallery->guaranteeTimeLimit(60); + while (($filename = $platform->readdir($dir)) !== false) { + if ($filename == '.' || $filename == '..') { + continue; + } + $count++; + $platform->unlink($sessionsDir . $filename); + + /* Update the progress bar / prevent timouts */ + if ($count % $stepSize == 0) { + $gallery->guaranteeTimeLimit(60); + $ret = $statusMonitor->renderStatusMessage( + $module->translate( + array('text' => 'Deleting old session files (iteration %d)', + 'arg1' => $iteration)), + '', $count / $iterationSize); + if ($ret) { + return $ret; + } + } + + if ($count > $iterationSize) { + $iteration++; + $count = 0; + } + } + $platform->closedir($dir); + $platform->rmdir($sessionsDir); + $ret = $statusMonitor->renderStatusMessage( + $module->translate(array('text' => 'Deleting old session files (iteration %d)', + 'arg1' => $iteration)), + '', 1); + if ($ret) { + return $ret; + } + + case '1.0.22': + /* Rename unnamed pre-beta-3 index to named index */ + $gallery->guaranteeTimeLimit(120); + if ($storage->getType() == 'mysql') { + $gallery->debug('Rename unnamed pre-beta-3 index to named index (ignore errors)'); + $indexChanges = array(); + $indexChanges[] = array('AccessMap', 'permission', + 'AccessMap_18058', array('permission')); + $indexChanges[] = array('AccessSubscriberMap', 'accessListId', + 'AccessSubscriberMap_83732', array('accessListId')); + $indexChanges[] = array('ChildEntity', 'parentId', + 'ChildEntity_52718', array('parentId')); + $indexChanges[] = array('Derivative', 'derivativeSourceId', + 'Derivative_85338', array('derivativeSourceId')); + $indexChanges[] = array('Derivative', 'derivativeOrder', + 'Derivative_25243', array('derivativeOrder')); + $indexChanges[] = array('Derivative', 'derivativeType', + 'Derivative_97216', array('derivativeType')); + $indexChanges[] = array('DerivativePrefsMap', 'itemId', + 'DerivativePrefsMap_75985', array('itemId')); + $indexChanges[] = array('Entity', 'creationTimestamp', + 'Entity_76255', array('creationTimestamp')); + $indexChanges[] = array('Entity', 'isLinkable', + 'Entity_35978', array('isLinkable')); + $indexChanges[] = array('Entity', 'modificationTimestamp', + 'Entity_63025', array('modificationTimestamp')); + $indexChanges[] = array('Entity', 'serialNumber', + 'Entity_60702', array('serialNumber')); + $indexChanges[] = array('FileSystemEntity ', 'pathComponent', + 'FileSystemEntity_3406', array('pathComponent')); + $indexChanges[] = array('Item', 'keywords', 'Item_99070', array('keywords')); + $indexChanges[] = array('Item', 'ownerId', 'Item_21573', array('ownerId')); + $indexChanges[] = array('Item', 'summary', 'Item_54147', array('summary')); + $indexChanges[] = array('Item', 'title', 'Item_90059', array('title')); + $indexChanges[] = array('ItemAttributesMap', 'parentSequence', + 'ItemAttributesMap_95270', array('parentSequence')); + $indexChanges[] = array('MaintenanceMap', 'taskId', + 'MaintenanceMap_21687', array('taskId')); + $indexChanges[] = array('PluginParameterMap', 'pluginType_2', + 'PluginParameterMap_12808', + array('pluginType', 'pluginId', 'itemId')); + $indexChanges[] = array('PluginParameterMap', 'pluginType_3', + 'PluginParameterMap_80596', array('pluginType')); + $indexChanges[] = array('TkOperatnMimeTypeMap', 'operationName', + 'TkOperatnMimeTypeMap_2014', array('operationName')); + $indexChanges[] = array('TkOperatnMimeTypeMap', 'mimeType', + 'TkOperatnMimeTypeMap_79463', array('mimeType')); + $indexChanges[] = array('TkOperatnParameterMap', 'operationName', + 'TkOperatnParameterMap_2014', array('operationName')); + $indexChanges[] = array('TkPropertyMimeTypeMap', 'propertyName', + 'TkPropertyMimeTypeMap_52881', array('propertyName')); + $indexChanges[] = array('TkPropertyMimeTypeMap', 'mimeType', + 'TkPropertyMimeTypeMap_79463', array('mimeType')); + $indexChanges[] = array('UserGroupMap', 'userId', + 'UserGroupMap_69068', array('userId')); + $indexChanges[] = array('UserGroupMap', 'groupId', + 'UserGroupMap_89328', array('groupId')); + $indexChanges[] = array('Lock', 'lockId', + 'Lock_11039', array('lockId')); + foreach ($indexChanges as $change) { + $indexColumns = implode('`, `' . $storage->_columnPrefix, $change[3]); + $indexColumns = $storage->_columnPrefix . $indexColumns; + $query = sprintf(' + ALTER TABLE `%s%s` + DROP INDEX `%s%s`, + ADD INDEX `%s%s`(`%s`);', + $storage->_tablePrefix, $change[0], $storage->_columnPrefix, $change[1], + $storage->_tablePrefix, $change[2], $indexColumns); + /* Ignore error, since there's nothing to do for most installations */ + $storage->execute($query); + } + $gallery->debug('Finished renaming unnamed pre-beta-3 indices to named indices'); + } + + /* Commit transactions before we execute a query that we expect to fail */ + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + + /* + * Also add a single column index on AccessMap.accessListId since it was forgotten in + * the initial upgrade code. Ignore errors since some installations already have it. + */ + $gallery->debug('Adding an index to the AccessMap table, ignore errors'); + $storage->configureStore($module->getId(), array('GalleryAccessMap:1.2')); + + /* Postgres will abort the transaction if the index exists, so checkpoint here */ + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + + $gallery->debug('Finished adding an index to the AccessMap table'); + /* + * Make sure the schema update is stored, can't use updateMapEntry because schema is not + * in Maps.xml + */ + $query = sprintf(' + UPDATE %sSchema + SET %smajor=1, %sminor=3 + WHERE %sname=\'AccessMap\' AND %smajor=1 AND %sminor=2', + $storage->_tablePrefix, $storage->_columnPrefix, + $storage->_columnPrefix, $storage->_columnPrefix, + $storage->_columnPrefix, $storage->_columnPrefix); + $ret = $storage->execute($query); + if ($ret) { + return $ret; + } + + case '1.0.23': + /* Rename GalleryCache to GalleryCacheMap, and make the value column TEXT(LARGE) */ + + case '1.0.24': + /* Add CoreCaptchaAdminOption, rename level parameter */ + $gallery->guaranteeTimeLimit(60); + list ($ret, $level) = $module->getParameter('captcha.level'); + if ($ret) { + return $ret; + } + $ret = $module->setParameter('validation.level', $level); + if ($ret) { + return $ret; + } + $ret = $module->removeParameter('captcha.level'); + if ($ret) { + return $ret; + } + + case '1.0.25': + case '1.0.26': + /* + * 2.1 Release Candidate 1! + * + * We used to change the character set for MySQL databases to utf8 here, but now we do + * it on every upgrade (at the beginning) to allow for the fact that the user can + * upgrade their MySQL from 3.x to 4.x at any time. We still call it here for + * historical accuracy for users upgrading from before 1.0.26. + */ + list ($ret, $converted) = + CoreModuleExtras::convertCharacterSetToUtf8($module, $statusMonitor); + if ($ret) { + return $ret; + } + + /* Clear the cache data since we changed the blob encoding */ + $gallery->guaranteeTimeLimit(60); + $ret = GalleryCoreApi::removeAllMapEntries('GalleryCacheMap'); + if ($ret) { + return $ret; + } + + case '1.0.27': + case '1.0.28': + /* Change in page cache key format */ + case '1.0.29': + /* Support for transactional locking */ + + case '1.0.30': + /* Pull dangerous mime types */ + $ret = GalleryCoreApi::removeMimeType( + array('mimeType' => array('text/html', 'application/xhtml+xml', 'text/xml'))); + if ($ret) { + return $ret; + } + + case '1.0.31': + list ($ret, $params) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); + if ($ret) { + return $ret; + } + foreach (array('session.lifetime' => array(25 * 365 * 86400, 21 * 86400), + 'session.inactivityTimeout' => array(14 * 86400, 7 * 86400)) as + $key => $oldAndNew) { + if ($params[$key] == $oldAndNew[0]) { + $ret = $module->setParameter($key, $oldAndNew[1]); + if ($ret) { + return $ret; + } + } + } + + case '1.0.32': + /* 2.1 Release Candidate 2! */ + case '1.0.33': + /* Security fix in installer/upgrader - RC-2a */ + case '1.0.34': + /* 2.1 Release! */ + + case '1.1.0': + case '1.1.0.x': + /* Minimum PHP version now 4.3.0; new versions of ADODb and Smarty */ + case '1.1.1': + + case '1.1.2': + /* Add Flash video and Windows playlist mime types */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('flv'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('flv', 'video/x-flv', false); + if ($ret) { + return $ret; + } + } + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('asx'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('asx', 'video/x-ms-asx', false); + if ($ret) { + return $ret; + } + } + + case '1.1.3': + /* Add renderers to GalleryItem */ + $ret = $storage->configureStore($module->getId(), array('GalleryItem:1.1')); + if ($ret) { + return $ret; + } + $ret = $storage->execute('UPDATE [GalleryItem] SET [::renderer] = NULL'); + if ($ret) { + return $ret; + } + + /* + * Switch PanoramaPhotoItem and PanoramaDerivativeImage entities back to their base + * classes and set the items to use the PanoramaRenderer instead + */ + $gallery->guaranteeTimeLimit(60); + $query = ' + SELECT + [GalleryEntity::id], [GalleryEntity::entityType] + FROM + [GalleryEntity] + WHERE + [GalleryEntity::entityType] IN (\'PanoramaPhotoItem\', \'PanoramaDerivativeImage\') + '; + list ($ret, $searchResults) = $gallery->search($query, array()); + if ($ret) { + return $ret; + } + $photos = $derivatives = array(); + while ($result = $searchResults->nextResult()) { + if ($result[1] == 'PanoramaPhotoItem') { + $photos[] = $result[0]; + } else { + $derivatives[] = $result[0]; + } + } + $total = count($photos) + count($derivatives); + + /* Switch PanoramaPhotoItems back to GalleryPhotoItems */ + for ($i = 0; $photos; $i += count($ids)) { + $gallery->guaranteeTimeLimit(30); + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Updating panorama items'), '', $i / $total); + if ($ret) { + return $ret; + } + $ids = array_splice($photos, 0, 500); + $markers = GalleryUtilities::makeMarkers($ids); + $query = "UPDATE [GalleryItem] SET [::renderer] = 'PanoramaRenderer' " . + "WHERE [GalleryItem::id] IN ($markers)"; + $ret = $storage->execute($query, $ids); + if ($ret) { + return $ret; + } + + $query = "UPDATE [GalleryEntity] SET [::entityType] = 'GalleryPhotoItem' " . + "WHERE [GalleryEntity::id] IN ($markers)"; + $ret = $storage->execute($query, $ids); + if ($ret) { + return $ret; + } + } + + /* Switch PanoramaDerivativeImage back to GalleryDerivativeImage */ + while ($derivatives) { + $gallery->guaranteeTimeLimit(30); + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Updating panorama items'), '', $i / $total); + if ($ret) { + return $ret; + } + $ids = array_splice($derivatives, 0, 500); + $markers = GalleryUtilities::makeMarkers($ids); + $query = "UPDATE [GalleryEntity] SET [::entityType] = 'GalleryDerivativeImage' " . + "WHERE [GalleryEntity::id] IN ($markers)"; + $ret = $storage->execute($query, $ids); + if ($ret) { + return $ret; + } + $i += count($ids); + } + if ($total) { + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Updating panorama items'), '', 1); + if ($ret) { + return $ret; + } + } + + case '1.1.4': + /* Add mpeg-4 video mime type */ + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime('mp4'); + if (!$ret && $mimeType == 'application/unknown') { + $ret = GalleryCoreApi::addMimeType('mp4', 'video/mp4', false); + if ($ret) { + return $ret; + } + } + + case '1.1.5': + case '1.1.6': + /* Remove useless rows in AccessSubscriberMap */ + $gallery->guaranteeTimeLimit(60); + $query = ' + SELECT + [GalleryAccessSubscriberMap::itemId] + FROM + [GalleryAccessSubscriberMap], [GalleryEntity] + WHERE + [GalleryAccessSubscriberMap::accessListId] = 0 + AND + [GalleryAccessSubscriberMap::itemId] = [GalleryEntity::id] + AND + [GalleryEntity::entityType] IN (?,?,?,?) + '; + list ($ret, $searchResults) = $gallery->search($query, + array('GalleryDerivativeImage', 'GalleryUser', 'GalleryGroup', 'GalleryComment')); + if ($ret) { + return $ret; + } + $itemIds = array(); + while ($result = $searchResults->nextResult()) { + $itemIds[] = (int)$result[0]; + } + $total = count($itemIds); + $query = 'DELETE FROM [GalleryAccessSubscriberMap] WHERE [::itemId] IN ('; + + for ($i = 0; $itemIds; $i += count($ids)) { + $gallery->guaranteeTimeLimit(30); + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Optimizing AccessSubscriberMap table'), '', $i / $total); + if ($ret) { + return $ret; + } + $ids = array_splice($itemIds, 0, 500); + $markers = GalleryUtilities::makeMarkers($ids); + $ret = $storage->execute($query . $markers . ')', $ids); + if ($ret) { + return $ret; + } + } + if ($total) { + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Optimizing AccessSubscriberMap table'), '', 1); + if ($ret) { + return $ret; + } + } + + case '1.1.7': + /* ItemAddFromServer and ItemAddFromWeb moved to separate module */ + /* Move uploadLocalServer.dir entries to itemadd module in case it is activated later */ + list ($ret, $params) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); + if ($ret) { + return $ret; + } + for ($i = 1; isset($params['uploadLocalServer.dir.' . $i]); $i++) { + $key = 'uploadLocalServer.dir.' . $i; + $ret = GalleryCoreApi::setPluginParameter('module', 'itemadd', $key, $params[$key]); + if ($ret) { + return $ret; + } + $ret = $module->removeParameter($key); + if ($ret) { + return $ret; + } + } + + case '1.1.8': + /* Remove lock subdirs */ + $locksDir = $gallery->getConfig('data.gallery.locks'); + if ($platform->file_exists($locksDir)) { + @$platform->recursiveRmDir($locksDir); + } + @$platform->mkdir($locksDir); + + case '1.1.9': + /* Graphics toolkits now support percentages for thumbnail/scale/resize */ + case '1.1.10': + /* Moved ItemCreateLink[Single] to replica module */ + case '1.1.11': + /* GalleryAuthPlugin: set active user from session now handled by SessionAuthPlugin */ + case '1.1.12': + /* GalleryCoreApi::getMapEntry */ + case '1.1.13': + /* GalleryDynamicAlbum */ + case '1.1.14': + /* + * Add a .htaccess file in the storage folder to protect it against direct access + * in case it is accessible from the web. + */ + $fh = @fopen($gallery->getConfig('data.gallery.base') . '.htaccess', 'w'); + if ($fh) { + $htaccessContents = "DirectoryIndex .htaccess\n" . + "SetHandler Gallery_Security_Do_Not_Remove\n" . + "Options None\n" . + "\n" . + "RewriteEngine off\n" . + "\n" . + "\n" . + "Order allow,deny\n" . + "Deny from all\n" . + "\n"; + fwrite($fh, $htaccessContents); + fclose($fh); + } + case '1.1.15': + /* Locked Users */ + $ret = $storage->configureStore($module->getId(), array('GalleryUser:1.1')); + if ($ret) { + return $ret; + } + + case '1.1.16': + /* Initialize multiple repositories */ + $ret = $module->setParameter('core.repositories', serialize(array('released' => 1))); + if ($ret) { + return $ret; + } + + /* Locked plugins */ + $ret = $storage->configureStore($module->getId(), array('GalleryPluginPackageMap:1.0')); + if ($ret) { + return $ret; + } + + case '1.1.17': + /* Rolled SessionAuthPlugin into GallerySession.class, so force a factory update */ + case '1.1.18': + /* Added PHP display_errors ini setting to config.php */ + case '1.1.19': + /* Added ConvertDatabaseToUtf8Task */ + case '1.1.20': + /* Add column isEmpty to CacheMap */ + $ret = $storage->configureStore($module->getId(), array('GalleryCacheMap:1.0')); + if ($ret) { + return $ret; + } + case '1.1.21': + /* Added authentication token */ + case '1.1.22': + /* Add FailedLoginsMap */ + case '1.1.23': + /* Add JavaScriptWarning.tpl */ + case '1.1.24': + /* Add page-level caching for embedded mode */ + case '1.1.25': + /* 2.2 Release Candidate 1! */ + case '1.1.26': + /* Prevent PHP from showing errors on direct access to config.php */ + case '1.1.27': + /* Changed repository cache directory, easiest to just blow away the old one. */ + $oldDir = $gallery->getConfig('data.gallery.plugins_data') . 'modules/core/repository'; + if ($platform->file_exists($oldDir)) { + @$platform->recursiveRmDir($oldDir); + } + case '1.1.28': + /* Added GalleryUrlGenerator::makeAbsoluteUrl() */ + case '1.1.29': + /* 2.2 Release Candidate 2! */ + case '1.1.30': + /* Reposition display_errors in config.php */ + case '1.1.31': + /* 2.2 Release! */ + case '1.2.0': + /* 2.2.1 Bugfix Release */ + case '1.2.0.1': + /* + * Add a new column to the Schema table to store the creation sql for each table. This + * change is to prepare the way for database export functionality. + */ + $gallery->guaranteeTimeLimit(30); + + $ret = $storage->configureStore($module->getId(), array('Schema:1.0')); + if ($ret) { + return $ret; + } + + list ($ret, $modules) = GalleryCoreApi::fetchPluginStatus('module', true); + if ($ret) { + return $ret; + } + + $storageExtras =& $storage->_getExtras(); + + /* Load all table versions */ + list ($ret, $tableVersions) = $storageExtras->_loadTableVersions(); + if ($ret) { + return $ret; + } + + $count = 1; + $total = count($modules); + $statusText = $module->translate('Converting Schema Table'); + + foreach ($modules as $moduleId => $moduleStatus) { + /* Skip uninstalled/unavailable modules */ + if (!isset($moduleStatus['active']) || empty($moduleStatus['available'])) { + continue; + } + + list ($ret, $sql) = $storageExtras->_getModuleSql($moduleId); + if ($ret) { + return $ret; + } + if (empty($sql['table'])){ + continue; + } + + foreach ($sql['table'] as $tableName => $tableSql) { + list ($safeName, $unused, $nameInSchema) = + $storage->_translateTableName($tableName); + + if (!array_key_exists($nameInSchema, $tableVersions)) { + continue; + } + + /* + * Check if there is a pending alter for the table and skip if there is. + * Column will be populated when/if that module is upgraded. + */ + list ($major, $minor) = $tableVersions[$nameInSchema]; + if (!empty($sql['alter'][$tableName][$major][$minor])) { + continue; + } + + $query = 'UPDATE [GallerySchema] SET [::createSql] = ? WHERE [::name] = ?'; + $ret = $storage->execute($query, array($tableSql, $nameInSchema)); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(60); + $ret = $statusMonitor->renderStatusMessage($statusText, '', $count / $total); + if ($ret) { + return $ret; + } + } + + $ret = $statusMonitor->renderStatusMessage($statusText, '', $count++ / $total); + if ($ret) { + return $ret; + } + } + /* Changed the length of the SessionMap data field for mySql & DB2. */ + $ret = $storage->configureStore($module->getId(), array('GallerySessionMap:1.0')); + if ($ret) { + return $ret; + } + case '1.2.0.2': + /* 2.2.2 Bugfix Release - Not used */ + case '1.2.0.3': + /* 2.2.2 Bugfix Release */ + + /* Store Entities.inc and Maps.inc definitions in the Schema table. */ + $gallery->guaranteeTimeLimit(30); + /* Remove _maps & _entities parameters from GalleryPluginParameterMap. See r16620 */ + $query = 'DELETE FROM [GalleryPluginParameterMap] + WHERE [::parameterName] in (\'_maps\', \'_entities\') + AND [::pluginType] = \'module\''; + $ret = $storage->execute($query); + if ($ret) { + return $ret; + } + + $ret = $storage->configureStore($module->getId(), array('Schema:1.1')); + if ($ret) { + return $ret; + } + + list ($ret, $modules) = GalleryCoreApi::fetchPluginStatus('module', true); + if ($ret) { + return $ret; + } + + $count = 1; + $total = count($modules); + $statusText = $module->translate('Converting Schema Table'); + + foreach ($modules as $moduleId => $moduleStatus) { + /* Skip uninstalled/unavailable modules */ + if (!isset($moduleStatus['active']) || empty($moduleStatus['available'])) { + continue; + } + + $ret = $storage->updateTableInfo($moduleId); + if ($ret) { + return $ret; + } + + $gallery->guaranteeTimeLimit(30); + $ret = $statusMonitor->renderStatusMessage($statusText, '', $count++ / $total); + if ($ret) { + return $ret; + } + } + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + + case 'end of upgrade path': + /* + * Leave this bogus case at the end of the legitimate case statements so that we always + * properly terminate our upgrade path with a break + */ + break; + + default: + $gallery->debug('Error: Unknown module version'); + return GalleryCoreApi::error(ERROR_BAD_PLUGIN, __FILE__, __LINE__, + sprintf('Unknown module version %s', $currentVersion)); + } + + $gallery->debug('Write new version to versions file'); + $versionFile = $gallery->getConfig('data.gallery.base') . 'versions.dat'; + $versionDatError = 0; + if ($fd = $platform->fopen($versionFile, 'wb')) { + $data = sprintf("%s\n%s", + $module->getVersion(), + $module->getGalleryVersion()); + if ($platform->fwrite($fd, $data) != strlen($data)) { + $versionDatError = 1; + } + $platform->fclose($fd); + } else { + $versionDatError = 1; + } + + if ($versionDatError) { + $gallery->debug('Error: Can\'t write to versions file'); + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + 'Can\'t write to the versions file'); + } + + return null; + } + + /** + * Determine what changes to config.php are required for this upgrade. + * + * @param string $currentVersion current core version + * @return array of array('remove' => array of string regexp removals, + * 'add' => array of string additions) + * @access private + */ + function _prepareConfigUpgrade($currentVersion) { + global $gallery; + $configChanges = array(); + + $currentVersion = preg_replace('/^(1\.[01]\.0)\.\d+$/', '$1.x', $currentVersion); + + /** + * README: How to update the block below + * + * If you add a new feature to the core module and revise the version, you should do the + * following. Supposing the current version is 1.0.1 and you're adding 1.0.2. Go to the + * end of the switch and find the 'end of upgrade path' case. Create a new case *above* + * that one with the old version number. For our example you'd add: "case '1.0.1':" and + * then your code. Do *not* put in a break statement. (Update upgrade function too). + */ + switch ($currentVersion) { + case '0.8.4': + case '0.8.5': + case '0.8.6': + case '0.8.7': + case '0.8.8': + case '0.8.9': + case '0.8.10': + case '0.8.11': + case '0.8.12': + case '0.8.13': + case '0.8.14': + case '0.8.15': + case '0.8.16': + case '0.8.17': + case '0.9.0': + case '0.9.1': + case '0.9.2': + case '0.9.3': + case '0.9.4': + case '0.9.5': + case '0.9.6': + case '0.9.7': + case '0.9.8': + case '0.9.9': + case '0.9.10': + case '0.9.11': + case '0.9.12': + case '0.9.13': + case '0.9.14': + case '0.9.15': + case '0.9.16': + case '0.9.17': + case '0.9.18': + case '0.9.19': + $add = array(); + if (!isset($gallery->_config['allowSessionAccess'])) { + /* + * This item was added to config.php before config.php upgrades were supported. Add + * it only if not already present. + */ + $add[] = +'/* + * Allow a particular IP address to access the session (it still must know the + * session id) even though it doesn\'t match the address/user agent that created + * the session. Put the address of validator.w3.org (\'128.30.52.13\') here to allow + * validation of non-public Gallery pages from the links at the bottom of the page. + */ +$gallery->setConfig(\'allowSessionAccess\', false); +'; + } + + $add[] = +'/* + * URL of Gallery codebase; required only for multisite install. + */ +$gallery->setConfig(\'galleryBaseUrl\', \'\'); +'; + + $configChanges[] = array( + 'remove' => array('{/\*[^/]*\*/\s*\$gallery->setConfig\(\'galleryId\',.*?;\s*}s'), + 'add' => $add, 'edit' => array()); + + case '0.9.20': + case '0.9.21': + $add = array(); + + /* Generate cookieId */ + list ($usec, $sec) = explode(" ", microtime()); + $cookieId = substr(md5(rand()), 0, 6); + + $add[] = +' +/* + * Set the name for Gallery session cookies. The name of the session cookie is + * a concatenation of \'GALLERYSID_\' and cookieId, which is randomly generated + * at Gallery installation time. You can change cookieId at any time, but if + * you change it be aware of two things: + * 1. Users have to login again after the change. They lose their old session. + * 2. If multiple Gallery installs are running on the same domain (in different paths or + * different subdomains) choose cookieId such that it is different for all Gallery + * installs on the same domain. + */ +$gallery->setConfig(\'cookieId\', \'' . $cookieId . '\'); +'; + $configChanges[] = array('remove' => array(), 'add' => $add, 'edit' => array()); + + case '0.9.22': + case '0.9.23': + /* Session cookie change, revert the last change and try something new */ + $configChanges[] = array( + 'remove' => array('{/\*[^/]*\*/\s*\$gallery->setConfig\(\'cookieId\',.*?;\s*}s'), + 'add' => array(), 'edit' => array()); + + case '0.9.24': + case '0.9.25': + case '0.9.26': + case '0.9.27': + case '0.9.28': + case '0.9.29': + case '0.9.30': + case '0.9.31': + case '0.9.32': + case '0.9.33': + case '0.9.34': + case '0.9.35': + case '0.9.36': + case '0.9.37': + case '1.0.0': + case '1.0.0.x': + case '1.0.1': + case '1.0.2': + case '1.0.3': + + case '1.0.4': + $configChanges[] = array('remove' => array(), 'edit' => array(), 'add' => array( +' +/* + * Maintenance mode. You can disable access to the site for anyone but + * site administrators by setting this this flag. Set value below to: + * true (without quotes) - to use a basic notification page; themed + * view with admin login link when codebase is up to date, but a + * plain unstyled page when codebase has been updated but upgrader + * has not yet been run. + * url (with quotes) - provide a URL where requests are redirected in + * either case described above. Example: \'/maintenance.html\' + */ +$gallery->setConfig(\'mode.maintenance\', false); +')); + + case '1.0.5': + case '1.0.6': + case '1.0.7': + case '1.0.8': + case '1.0.9': + case '1.0.10': + case '1.0.11': + case '1.0.12': + case '1.0.13': + /* Add config parameter: 'baseUri' */ + $configChanges[] = array('remove' => array(), 'edit' => array(), 'add' => array( +' +/* + * This setting can be used to override Gallery\'s auto-detection of the domain-name, + * protocol (http/https), URL path, and of the file & query string. + * Most users can leave this empty. If the server is misconfigured or for very special + * setups, this setting can be quite handy. + * Examples (the positions of the slashes (\'/\') are important): + * override the path: $gallery->setConfig(\'baseUri\', \'/another/path/\'); + * override the host + path: $gallery->setConfig(\'baseUri\', \'example.com/gallery2/\'); + * override the protocol + host + path + file: + * $gallery->setConfig(\'baseUri\', \'https://example.com:8080/gallery2/index.php\'); + */ +$gallery->setConfig(\'baseUri\', \'\');')); + + case '1.0.14': + case '1.0.15': + /* + * Normalize the config path 'data.gallery.base' (add a trailing slash if necessary). + * Escape the backslashes and quotes two times since we feed preg_replace with it. + */ + $edit = array(); + $tmp = strtr($gallery->getConfig('data.gallery.base'), + array('\\' => '\\\\\\\\', "'" => "\\\\'")); + $edit['regexp'] = '{\$gallery->setConfig\(\'data\.gallery\.base\',.*?;}s'; + $edit['replacement'] = '$gallery->setConfig(\'data.gallery.base\', \'' . $tmp . '\');'; + $configChanges[] = array('remove' => array(), 'add' => array(), 'edit' => array($edit)); + case '1.0.16': + case '1.0.17': + case '1.0.18': + case '1.0.19': + case '1.0.20': + case '1.0.21': + case '1.0.22': + case '1.0.23': + case '1.0.24': + case '1.0.25': + case '1.0.26': + case '1.0.27': + case '1.0.28': + case '1.0.29': + case '1.0.30': + case '1.0.31': + case '1.0.32': + case '1.0.33': + case '1.0.34': + case '1.1.0': + case '1.1.0.x': + case '1.1.1': + case '1.1.2': + case '1.1.3': + case '1.1.4': + case '1.1.5': + case '1.1.6': + case '1.1.7': + case '1.1.8': + case '1.1.9': + case '1.1.10': + case '1.1.11': + case '1.1.12': + case '1.1.13': + case '1.1.14': + case '1.1.15': + case '1.1.16': + case '1.1.17': + case '1.1.18': + /* Originally added PHP display_errors setting in this step, but at the end. */ + case '1.1.19': + case '1.1.20': + case '1.1.21': + case '1.1.22': + case '1.1.23': + case '1.1.24': + case '1.1.25': + case '1.1.26': + /* + * Prevent PHP from showing errors on direct access to config.php by adding a check + * for the $gallery object before the first setConfig() call. + */ + $edit = array(); + $edit['regexp'] = '{(<\?php\s*(?:/\*.*?\*/\s*)?)}s'; + $edit['replacement'] = '\1/* + * Prevent direct access to config.php. + */ +if (!isset($gallery) || !method_exists($gallery, \'setConfig\')) { + exit; +} + +'; + $configChanges[] = array('remove' => array(), 'add' => array(), 'edit' => array($edit)); + case '1.1.27': + case '1.1.28': + case '1.1.29': + case '1.1.30': + /* Reposition display_errors from the end to the beginning of the config file. */ + $remove = array('{/\*[^/]*\*/\s*\@?ini_set\(\'display_errors\',.*?;\s*}s'); + $edit = array(); + $edit['regexp'] = '{(<\?php\s*(?:/\*.*?\*/\s*)?)}s'; + $edit['replacement'] = '\1/* + * When display_errors is enabled, PHP errors are printed to the output. + * For production web sites, you\'re strongly encouraged to turn this feature off, + * and use error logging instead. + * During development, you should set the value to 1 to ensure that you notice PHP + * warnings and notices that are not covered in unit tests (e.g. template issues). + */ +@ini_set(\'display_errors\', 0); + +'; + $configChanges[] = array('remove' => $remove, 'add' => array(), 'edit' => array($edit)); + case '1.1.31': + case '1.2.0': + case '1.2.0.1': + case '1.2.0.2': + case '1.2.0.3': + + case 'end of upgrade path': + /* + * Leave this bogus case at the end of the legitimate case statements so that we always + * properly terminate our upgrade path with a break + */ + break; + + default: + $gallery->debug("Unknown module version $currentVersion in prepareConfigUpgrade()"); + } + + return $configChanges; + } + + /** + * Check if any changes to config.php are required for this upgrade. + * + * @param string $currentVersion current core version + * @return boolean true if change is required + */ + function isConfigUpgradeRequired($currentVersion) { + $configChanges = CoreModuleExtras::_prepareConfigUpgrade($currentVersion); + return !empty($configChanges); + } + + /** + * Perform upgrade of config.php file. + * + * @param string $currentVersion current core version + * @return object GalleryStatus a status code + */ + function performConfigUpgrade($currentVersion) { + global $gallery; + $platform =& $gallery->getPlatform(); + + $configFilePath = GALLERY_CONFIG_DIR . '/config.php'; + $configContents = implode('', $platform->file($configFilePath)); + if (empty($configContents) || strlen($configContents) < 100) { + return GalleryCoreApi::error(ERROR_MISSING_VALUE, __FILE__, __LINE__, + 'Unable to read current config.php contents'); + } + + $configChanges = CoreModuleExtras::_prepareConfigUpgrade($currentVersion); + foreach ($configChanges as $change) { + /* preg_replace $count param is only PHP 5.1.0+ */ + foreach ($change['remove'] as $regexp) { + $configContents = preg_replace($regexp, '', $old = $configContents); + if ($configContents == $old) { + $gallery->debug('Warning: config.php remove pattern not matched: ' . $regexp); + } + } + foreach ($change['edit'] as $edit) { + $configContents = + preg_replace($edit['regexp'], $edit['replacement'], $old = $configContents); + if ($configContents == $old) { + $gallery->debug('Warning: config.php edit pattern not matched: ' . $regexp); + } + } + foreach ($change['add'] as $content) { + $configContents = + preg_replace('{\?>\s*\z}', $content . "\n?>\n", $old = $configContents); + if ($configContents == $old) { + $gallery->debug( + 'Warning: config.php add pattern not matched, appending to file instead'); + $configContents .= "\n" . $content . "\n?>\n"; + } + } + } + + if (!$out = $platform->fopen($configFilePath, 'w')) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + 'Unable to write to config.php'); + } + if ($platform->fwrite($out, $configContents) < strlen($configContents)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + 'Unable to write config.php contents'); + } + $platform->fclose($out); + + return null; + } + + /** + * Create the initial all users group. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createAllUsersGroup($module) { + global $gallery; + + list ($ret, $id) = $module->getParameter('id.allUserGroup'); + if ($ret) { + return $ret; + } + + if (!empty($id)) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryGroup.class'); + $group = new GalleryGroup(); + + $groupName = $module->translate('Registered Users'); + $ret = $group->create($groupName, GROUP_ALL_USERS); + if ($ret) { + return $ret; + } + + $ret = $group->save(); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('id.allUserGroup', $group->getId()); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create the site admins group. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createSiteAdminsGroup($module) { + global $gallery; + + list ($ret, $id) = $module->getParameter('id.adminGroup'); + if ($ret) { + return $ret; + } + + if (!empty($id)) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryGroup.class'); + $group = new GalleryGroup(); + + $groupName = $module->translate('Site Admins'); + $ret = $group->create($groupName, GROUP_SITE_ADMINS); + if ($ret) { + return $ret; + } + + $ret = $group->save(); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('id.adminGroup', $group->getId()); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create the everybody group. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createEverybodyGroup($module) { + global $gallery; + + list ($ret, $id) = $module->getParameter('id.everybodyGroup'); + if ($ret) { + return $ret; + } + + if (!empty($id)) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryGroup.class'); + $group = new GalleryGroup(); + + $groupName = $module->translate('Everybody'); + $ret = $group->create($groupName, GROUP_EVERYBODY); + if ($ret) { + return $ret; + } + + $ret = $group->save(); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('id.everybodyGroup', $group->getId()); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create the initial anonymous user. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createAnonymousUser($module) { + global $gallery; + + list ($ret, $id) = $module->getParameter('id.anonymousUser'); + if ($ret) { + return $ret; + } + + if (!empty($id)) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryUser.class'); + $user = new GalleryUser(); + + $userName = 'guest'; + $fullName = $module->translate('Guest'); + $ret = $user->create($userName); + if ($ret) { + return $ret; + } + $user->setFullName($fullName); + $user->changePassword(''); + + $ret = $user->save(); + if ($ret) { + return $ret; + } + + /* Remove the anonymous user from the Everybody group */ + list ($ret, $allUserGroupId) = $module->getParameter('id.allUserGroup'); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::removeUserFromGroup($user->getId(), $allUserGroupId); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('id.anonymousUser', $user->getId()); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create the initial admin user. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createAdminUser($module) { + global $gallery; + + /* Don't create if there is already a user in the admin group */ + list ($ret, $adminGroupId) = $module->getParameter('id.adminGroup'); + if ($ret) { + return $ret; + } + + list ($ret, $results) = GalleryCoreApi::fetchUsersForGroup($adminGroupId); + if ($ret) { + return $ret; + } + + if (sizeof($results) > 0) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryUser.class'); + $user = new GalleryUser(); + + /* + * Get the admin name and data from the installer and default to 'admin' if it's not + * available for some reason + */ + $userName = $gallery->getConfig('setup.admin.userName'); + $userName = !strlen($userName) ? 'admin' : $userName; + $email = $gallery->getConfig('setup.admin.email'); + $fullName = $gallery->getConfig('setup.admin.fullName'); + $ret = $user->create($userName); + if ($ret) { + return $ret; + } + $user->changePassword($gallery->getConfig('setup.password')); + $user->setFullName($fullName); + $user->setEmail($email); + + $ret = $user->save(); + if ($ret) { + return $ret; + } + + /* Add her to the admin group */ + $ret = GalleryCoreApi::addUserToGroup($user->getId(), $adminGroupId); + if ($ret) { + return $ret; + } + + /* + * The rest of the bootstrap code won't work so well unless we're logged in, so log in as + * the admin user now + */ + $gallery->setActiveUser($user); + + return null; + } + + /** + * Create the root album item. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createRootAlbumItem($module) { + global $gallery; + + /* Do we already have a root? */ + list ($ret, $rootAlbumId) = $module->getParameter('id.rootAlbum'); + if ($rootAlbumId) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryAlbumItem.class'); + $album = new GalleryAlbumItem(); + + $ret = $album->createRoot(); + if ($ret) { + return $ret; + } + $title = $module->translate('Gallery'); + $description = $module->translate('This is the main page of your Gallery'); + $album->setTitle($title); + $album->setDescription($description); + + $ret = $album->save(); + if ($ret) { + return $ret; + } + + /* Give everybody some permissions */ + list ($ret, $groupId) = $module->getParameter('id.everybodyGroup'); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::addGroupPermission($album->getId(), $groupId, 'core.viewAll'); + if ($ret) { + return $ret; + } + + /* Grant admin users everything */ + list ($ret, $groupId) = $module->getParameter('id.adminGroup'); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::addGroupPermission($album->getId(), $groupId, 'core.all'); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('id.rootAlbum', $album->getId()); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create the access list compactor lock entity. + * + * @param object GalleryModule $module the core module + * @return object GalleryStatus a status code + */ + function _createAccessListCompacterLock($module) { + global $gallery; + + /* Do we already have a root? */ + list ($ret, $compacterLockId) = $module->getParameter('id.accessListCompacterLock'); + if ($compacterLockId) { + return null; + } + + GalleryCoreApi::requireOnce('modules/core/classes/GalleryEntity.class'); + $lock = new GalleryEntity(); + $lock->create(); + $ret = $lock->save(false); + if ($ret) { + return $ret; + } + + $ret = $module->setParameter('id.accessListCompacterLock', $lock->getId()); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryModule::performFactoryRegistrations + */ + function performFactoryRegistrations($module) { + /* Register all of our factory implementations. */ + $regs[] = array('GalleryEntity', 'GalleryEntity', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryChildEntity', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryAlbumItem', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryUser', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryGroup', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryDerivative', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryDerivativeImage', 'class', null); + $regs[] = array('GalleryDerivative', 'GalleryDerivativeImage', 'class', array('*')); + $regs[] = array('GalleryEntity', 'GalleryMovieItem', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryAnimationItem', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryPhotoItem', 'class', null); + $regs[] = array('GalleryEntity', 'GalleryUnknownItem', 'class', null); + $regs[] = array('GalleryItem', 'GalleryPhotoItem', 'class', + array('image/*', 'application/photoshop')); + $regs[] = array('GalleryItem', 'GalleryMovieItem', 'class', array('video/*')); + $regs[] = array('GalleryItem', 'GalleryAnimationItem', 'class', + array('application/x-director', 'application/x-shockwave-flash')); + $regs[] = array('GalleryItem', 'GalleryUnknownItem', 'class', array('*')); + $regs[] = array('GalleryDynamicAlbum', 'GalleryDynamicAlbum', 'class', null); + $regs[] = array('GallerySearchInterface_1_0', 'GalleryCoreSearch', 'class', null); + $regs[] = array('ItemEditPlugin', 'ItemEditItem', 'inc', null, 1); + $regs[] = array('ItemEditPlugin', 'ItemEditAnimation', 'inc', null, 2); + $regs[] = array('ItemEditPlugin', 'ItemEditMovie', 'inc', null, 2); + $regs[] = array('ItemEditPlugin', 'ItemEditAlbum', 'inc', null, 2); + $regs[] = array('ItemEditPlugin', 'ItemEditTheme', 'inc', null, 3); + $regs[] = array('ItemEditPlugin', 'ItemEditPhoto', 'inc', null, 2); + $regs[] = array('ItemEditPlugin', 'ItemEditRotateAndScalePhoto', 'inc', null, 3); + $regs[] = array('ItemEditPlugin', 'ItemEditPhotoThumbnail', 'inc', null, 4); + $regs[] = array('ItemAddPlugin', 'ItemAddFromBrowser', 'inc', null, 2); + $regs[] = array('ItemAddOption', 'CreateThumbnailOption', 'inc', null); + $regs[] = array('MaintenanceTask', 'OptimizeDatabaseTask', 'class', null); + $regs[] = array('MaintenanceTask', 'FlushTemplatesTask', 'class', null); + $regs[] = array('MaintenanceTask', 'FlushDatabaseCacheTask', 'class', null); + $regs[] = array('MaintenanceTask', 'BuildDerivativesTask', 'class', null); + $regs[] = array('MaintenanceTask', 'ResetViewCountsTask', 'class', null); + $regs[] = array('MaintenanceTask', 'SystemInfoTask', 'class', null); + $regs[] = array('MaintenanceTask', 'SetOriginationTimestampTask', 'class', null); + $regs[] = array('MaintenanceTask', 'DeleteSessionsTask', 'class', null); + $regs[] = array('MaintenanceTask', 'ConvertDatabaseToUtf8Task', 'class', null); + $regs[] = array('CaptchaAdminOption', 'CoreCaptchaAdminOption', 'class', null); + + /* + * Unlike other modules, the core module doesn't get deactivated so its factory + * registrations may still be around from before. Unregister them now before reregistering + * them all. + */ + /* Unregister all factory implementations */ + $ret = GalleryCoreApi::unregisterFactoryImplementationsByModuleId($module->getId()); + if ($ret) { + return $ret; + } + + foreach ($regs as $entry) { + $ret = GalleryCoreApi::registerFactoryImplementation( + $entry[0], $entry[1], $entry[1], + $entry[2] == 'class' ? + sprintf('modules/core/classes/%s.class', $entry[1]) : + sprintf('modules/core/%s.inc', $entry[1]), + 'core', $entry[3], isset($entry[4]) ? (string)$entry[4] : '4'); + if ($ret) { + return $ret; + } + } + + /* Special cases */ + $ret = GalleryCoreApi::registerFactoryImplementation( + 'GalleryAuthPlugin', 'SessionAuthPlugin', 'SessionAuthPlugin', + 'modules/core/classes/GallerySession.class', + 'core', null, 4); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Change character set encoding to utf 8 for MySQL if necessary. This is public because it + * is also used by ConvertDatabaseToUtf8Task. + * + * @return array object GalleryStatus a status code + * bool true if any conversions took place + * @access public + */ + function convertCharacterSetToUtf8($module, $statusMonitor) { + global $gallery; + $storage =& $gallery->getStorage(); + $converted = false; + + if ($storage->getType() == 'mysql') { + $version = $storage->getVersion(); + /* MySQL < 4.1.0 does not support UTF8 */ + if ($version && version_compare($version, '4.1.0', '>=')) { + /* + * Check if the database uses UTF8 already, by looking at the Schema table, which + * we convert last. + */ + list ($ret, $results) = + $storage->search('SHOW CREATE TABLE `' . $storage->_tablePrefix . 'Schema`'); + if ($ret) { + return array($ret, null); + } + $row = $results->nextResult(); + $result = $row[1]; + if (!$result || !preg_match('/utf8/i', $result)) { + /* Convert all existing tables to UTF-8 */ + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Converting MySQL data to UTF8'), null, 0); + if ($ret) { + return array($ret, null); + } + $gallery->guaranteeTimeLimit(120); + $storageExtras =& $storage->_getExtras(); + list ($ret, $tableVersions) = $storageExtras->_loadTableVersions(); + if ($ret) { + return array($ret, null); + } + $types = array('varchar' => 'varbinary', + 'text' => 'blob', + 'longtext' => 'longblob'); + $i = 0; + + foreach ($tableVersions as $tableName => $unused) { + $i++; + $tableName = $storage->_tablePrefix . $tableName; + /* First the table itself */ + $query = "ALTER TABLE `$tableName` DEFAULT CHARACTER SET utf8"; + $ret = $storage->execute($query); + if ($ret) { + return array($ret, null); + } + /* + * Then all character/string columns + * See: http://dev.mysql.com/doc/refman/4.1/en/charset-conversion.html + * + * The following code is based significantly on code from Drupal, + * For details, refer to: + * - http://api.drupal.org/api/4.7/file/update.php/source + * - http://api.drupal.org/api/4.7/file/LICENSE.txt + * - http://drupal.org/node/40515 + * + * Drupal is licensed under the GPL: + * + * 1. Detect current column attributes + * 2. Convert text column to binary column + * 3. Convert them to character/text columns with UTF8 charset + */ + $query = "SHOW FULL COLUMNS FROM `$tableName`"; + $originalFetchMode = $storage->_db->SetFetchMode(ADODB_FETCH_ASSOC); + list ($ret, $results) = $storage->search($query); + if ($ret) { + return array($ret, null); + } + $storage->_db->SetFetchMode($originalFetchMode); + $changeToBinary = $changeToUtf8 = array(); + while ($column = $results->nextResult()) { + list ($type) = explode('(', $column['Type']); + if (!isset($types[$type])) { + continue; + } + $change = + 'CHANGE `' . $column['Field'] . '` `' . $column['Field'] . '` '; + $binaryType = preg_replace('/'. $type .'/i', $types[$type], + $column['Type']); + $attributes = ' '; + if ($column['Default'] == 'NULL') { + $attributes .= 'DEFAULT NULL '; + } else if (!empty($column['Default'])) { + $attributes .= 'DEFAULT ' . $column['Default'] . ' '; + } + $attributes .= $column['Null'] == 'YES' ? 'NULL' : 'NOT NULL'; + $changeToBinary[] = $change . $binaryType . $attributes; + $changeToUtf8[] = + $change . $column['Type'] . ' CHARACTER SET utf8' . $attributes; + } + if (count($changeToBinary)) { + $query = + "ALTER TABLE `$tableName` " . implode(', ', $changeToBinary); + $ret = $storage->Execute($query); + if ($ret) { + return array($ret, null); + } + $query = "ALTER TABLE `$tableName` " . implode(', ', $changeToUtf8); + $ret = $storage->Execute($query); + if ($ret) { + return array($ret, null); + } + $converted = true; + } + + $ret = $statusMonitor->renderStatusMessage( + $module->translate('Converting MySQL data to UTF8'), + null, $i / count($tableVersions)); + if ($ret) { + return array($ret, null); + } + $gallery->guaranteeTimeLimit(120); + } /* End for each table */ + + if ($converted) { + /* Clear any cache data since it may be in the wrong character set*/ + $gallery->guaranteeTimeLimit(60); + $ret = GalleryCoreApi::removeAllMapEntries('GalleryCacheMap'); + if ($ret) { + return array($ret, null); + } + } + } /* End if database character set not UTF-8 */ + } /* End if MySql version > 4.1.0 */ + } /* End if MySQL */ + + return array(null, $converted); + } + + /** + * Sort an associative array where the key is the name of the table. Force + * the schema table to be last in line. + */ + function _sortSchemaTableLast($a, $b) { + if ($a == 'Schema') { + return -1; + } else if ($b == 'Schema') { + return 1; + } else { + return strcmp($a, $b); + } + } +} +?> diff --git a/Source/gallery2/modules/core/CreateThumbnailOption.inc b/Source/gallery2/modules/core/CreateThumbnailOption.inc new file mode 100644 index 0000000..008a2cf --- /dev/null +++ b/Source/gallery2/modules/core/CreateThumbnailOption.inc @@ -0,0 +1,75 @@ + + * @version $Revision: 15513 $ + */ +class CreateThumbnailOption extends ItemAddOption { + + /** + * @see ItemAddOption::loadTemplate + */ + function loadTemplate(&$template, &$form, $item) { + return array(null, 'modules/core/templates/CreateThumbnailOption.tpl', 'modules_core'); + } + + /** + * @see ItemAddOption::isAppropriate + */ + function isAppropriate() { + return array(null, true); + } + + /** + * @see ItemAddOption::handleRequestAfterAdd + */ + function handleRequestAfterAdd($form, $items) { + $errors = $warnings = $itemIds = array(); + foreach ($items as $item) { + $itemIds[] = $item->getId(); + } + if (empty($form['CreateThumbnailOption']['createThumbnail'])) { + return array(null, $errors, $warnings); + } + + list ($ret, $thumbTable) = GalleryCoreApi::fetchThumbnailsByItemIds($itemIds); + if ($ret) { + return array($ret, null, null); + } + + foreach ($items as $item) { + $itemId = $item->getId(); + if (!empty($thumbTable[$itemId])) { + $thumbnail = $thumbTable[$item->getId()]; + list ($ret) = + GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($thumbnail->getId()); + if ($ret) { + return array($ret, null, null); + } + } + } + return array(null, $errors, $warnings); + } +} +?> diff --git a/Source/gallery2/modules/core/DownloadItem.inc b/Source/gallery2/modules/core/DownloadItem.inc new file mode 100644 index 0000000..54d6afd --- /dev/null +++ b/Source/gallery2/modules/core/DownloadItem.inc @@ -0,0 +1,186 @@ + + * @version $Revision: 15513 $ + */ +class DownloadItemView extends GalleryView { + + /** + * @see GalleryView::isImmediate + */ + function isImmediate() { + return true; + } + + /** + * @see GalleryView::isAllowedInEmbedOnly + */ + function isAllowedInEmbedOnly() { + return true; + } + + /** + * @see GalleryView::shouldSaveSession + */ + function shouldSaveSession() { + return false; + } + + /** + * @see GalleryView::renderImmediate + */ + function renderImmediate($status, $error) { + /* Figure out which item we're talking about */ + $itemId = (int) GalleryUtilities::getRequestVariables('itemId'); + if (empty($itemId)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + /* Load the item */ + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return $ret; + } + + /* Figure out the filename */ + list ($ret, $pseudoFileName) = GalleryUtilities::getPseudoFileName($item); + if ($ret) { + return $ret; + } + + /* Don't allow malicious URLs */ + $fileName = GalleryUtilities::getRequestVariables('fileName'); + if (!empty($fileName) && $fileName != $pseudoFileName) { + return GalleryCoreApi::error(GALLERY_ERROR, __FILE__, __LINE__, 'malicious url'); + } + + /* Get the path to the file */ + if (!method_exists($item, 'fetchPath')) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + list ($ret, $path) = $item->fetchPath(); + if ($ret) { + return $ret; + } + + /* Rebuild derivative cache, if necessary */ + $itemForPermission = $itemId; + $derivativeType = null; + if (GalleryUtilities::isA($item, 'GalleryDerivative')) { + list ($ret, $item) = GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($itemId); + if ($ret) { + return $ret; + } + + $itemForPermission = $item->getParentId(); + $derivativeType = $item->getDerivativeType(); + } + + $ret = $this->_sendFile(array('derivativePath' => $path, + 'derivativeType' => $derivativeType, + 'mimeType' => $item->getMimeType(), + 'pseudoFileName' => $pseudoFileName, + 'parentId' => $itemForPermission, + 'id' => $itemId)); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::createFastDownloadFile($item); + /* Ignore failures since the file has already been sent */ + + return null; + } + + function _sendFile($data) { + global $gallery; + $platform =& $gallery->getPlatform(); + $session =& $gallery->getSession(); + $phpVm = $gallery->getPhpVm(); + + if (function_exists('apache_setenv')) { + @apache_setenv('no-gzip', '1'); + } + + /* Make sure we have permission */ + if (($ids = $session->get('core.isPrintService')) && in_array($data['id'], $ids)) { + /* Print services only need core.view to get access to full size version of photos */ + $permission = 'core.view'; + } else { + $permission = 'core.viewSource'; + switch ($data['derivativeType']) { + case DERIVATIVE_TYPE_IMAGE_THUMBNAIL: + $permission = 'core.view'; + break; + + case DERIVATIVE_TYPE_IMAGE_RESIZE: + $permission = 'core.viewResizes'; + break; + + /* DERIVATIVE_TYPE_IMAGE_PREFERRED uses core.viewSource */ + } + } + $ret = GalleryCoreApi::assertHasItemPermission($data['parentId'], $permission); + if ($ret) { + return $ret; + } + + $requestMethod = strtolower(GalleryUtilities::getServerVar('REQUEST_METHOD')); + + $phpVm->header('Content-type: ' . $data['mimeType']); + $phpVm->header('Content-Disposition: inline; filename="' . $data['pseudoFileName'] . '"'); + $stats = $platform->stat($data['derivativePath']); + $phpVm->header('Last-Modified: ' . GalleryUtilities::getHttpDate($stats[9])); + $phpVm->header('Expires: ' . GalleryUtilities::getHttpDate(time() + 31536000)); + + /* If the request method is HEAD, don't send back the body */ + if ($requestMethod == 'head') { + $phpVm->header('Content-length: 0'); + } else { + if ($stats[7] > 0) { + $phpVm->header('Content-length: ' . $stats[7]); + } + /* + * Don't use readfile() because it buffers the entire file in memory. Profiling shows + * that this approach is as efficient as fpassthru() but we get to call + * guaranteeTimeLimit which prevents it from failing on very large files + */ + if ($fd = $platform->fopen($data['derivativePath'], 'rb')) { + while (true) { + $bits = $platform->fread($fd, 65535); + if (strlen($bits) == 0) { + break; + } + print $bits; + $gallery->guaranteeTimeLimit(30); + } + $platform->fclose($fd); + } + } + + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/ErrorPage.inc b/Source/gallery2/modules/core/ErrorPage.inc new file mode 100644 index 0000000..08d71ab --- /dev/null +++ b/Source/gallery2/modules/core/ErrorPage.inc @@ -0,0 +1,215 @@ + + * @version $Revision: 15706 $ + */ +class ErrorPageView extends GalleryView { + + function setError($error) { + $this->_error = $error; + } + + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_ERROR; + } + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + $ErrorPage = array('isAdmin' => !$ret && $isAdmin); + + $showDetails = $ErrorPage['isAdmin'] || $gallery->getDebug(); + if (empty($this->_error)) { + $session =& $gallery->getSession(); + $errorCode = $session->get('core.error.code'); + $errorTrace = $session->get('core.error.trace'); + } else { + $errorCode = $this->_error->getErrorCode(); + $errorTrace = $this->_error->getAsHtml($showDetails); + } + + if ($showDetails) { + $ErrorPage['stackTrace'] = $errorTrace; + } + + /* Landing page for errors */ + if ($errorCode & ERROR_OBSOLETE_DATA) { + $ErrorPage['code']['obsoleteData'] = true; + } + if ($errorCode & (ERROR_PERMISSION_DENIED | ERROR_BAD_PARAMETER)) { + $ErrorPage['code']['securityViolation'] = true; + } + if ($errorCode & ERROR_STORAGE_FAILURE) { + $ErrorPage['code']['storageFailure'] = true; + } + if ($errorCode & ERROR_PLATFORM_FAILURE) { + $ErrorPage['code']['platformFailure'] = true; + } + if ($errorCode & ERROR_MISSING_OBJECT) { + $ErrorPage['code']['missingObject'] = true; + } + if ($errorCode & ERROR_REQUEST_FORGED) { + $ErrorPage['code']['requestAuthenticationFailure'] = true; + } + + if ($ErrorPage['isAdmin']) { + $ErrorPage['phpversion'] = phpversion(); + $ErrorPage['php_uname'] = php_uname(); + $ErrorPage['php_sapi_name'] = php_sapi_name(); + $ErrorPage['webserver'] = GalleryUtilities::getServerVar('SERVER_SOFTWARE'); + $ErrorPage['browser'] = GalleryUtilities::getServerVar('HTTP_USER_AGENT'); + if ($gallery->isStorageInitialized()) { + $storage =& $gallery->getStorage(); + $ErrorPage['dbType'] = $storage->getAdoDbType(); + $ErrorPage['dbVersion'] = @$storage->getVersion(); + + list ($ret, $list) = GalleryCoreApi::getToolkitOperationMimeTypes('thumbnail'); + if (!$ret) { + $toolkitList = array(); + foreach ($list as $tmp) { + $toolkitList = array_merge($toolkitList, $tmp); + } + $ErrorPage['toolkits'] = implode(', ', array_unique($toolkitList)); + } + } + + GalleryCoreApi::requireOnce('modules/core/module.inc'); + $installedVersions = CoreModule::getInstalledVersions(); + $ErrorPage['version'] = $installedVersions['gallery']; + } + + $template->javascript('lib/javascript/BlockToggle.js'); + $template->setVariable('ErrorPage', $ErrorPage); + return array(null, array('body' => 'modules/core/templates/ErrorPage.tpl')); + } + + /** + * Entry point from main.php + * + * @param object GalleryStatus $error + * @param mixed $g2Data GalleryMain result, if available + * @param boolean $initOk false if Gallery has not initialized (can't use theme system) + * @static + */ + function errorHandler($error, $g2Data=null, $initOk=true) { + global $gallery; + $failsafe = false; + if (!$initOk) { + $failsafe = true; + } + + /* Post Gallery::Error event */ + $event = GalleryCoreApi::newEvent('Gallery::Error'); + $event->setData(array('error' => $error)); + list ($ret, $eventResults) = GalleryCoreApi::postEvent($event); + if ($ret) { + $failsafe = true; + } + + /* Return HTTP 404 status for ERROR_MISSING_OBJECT */ + if ($error->getErrorCode() & ERROR_MISSING_OBJECT) { + GalleryUtilities::setResponseHeader('HTTP/1.0 404 Not Found', false); + } else { + GalleryUtilities::setResponseHeader('HTTP/1.0 500 Internal Server Error', false); + } + + foreach ($eventResults as $eventResult) { + if (!empty($eventResult['suppressBody'])) { + /* One of our error handlers has dealt with the output */ + return; + } + } + + if (!$failsafe) { + list ($ret, $themeId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + $failsafe = true; + } + } + + if (!$failsafe) { + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $themeId); + if ($ret) { + $failsafe = true; + } + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->setTheme($theme); + } + + if (!$failsafe) { + list ($ret, $view) = GalleryView::loadView('core.ErrorPage'); + if ($ret) { + $failsafe = true; + } + } + + if (!$failsafe) { + $dummyForm = array(); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTemplate.class'); + $template = new GalleryTemplate(dirname(dirname(dirname(__FILE__)))); + $view->setError($error); + list ($ret, $results) = $view->loadTemplate($template, $dummyForm); + if ($ret) { + $failsafe = true; + } + + $t =& $template->getVariableByReference('theme'); + $t['errorTemplate'] = $results['body']; + } + + if (!$failsafe) { + $template->setVariable('l10Domain', 'modules_core'); + list ($ret, $templatePath) = $theme->showErrorPage($template); + if ($ret) { + $failsafe = true; + } + } + + if (!$failsafe) { + $template->setVariable('l10Domain', 'themes_' . $themeId); + $ret = $template->display("themes/$themeId/templates/$templatePath"); + if ($ret) { + $failsafe = true; + } + } + + if ($failsafe) { + /* A catastrophic failure has occurred so just dump the error out to the browser */ + print '

    Error

    ' . $error->getAsHtml($gallery->getDebug()); + if ($gallery->getDebug() == 'buffered') { + print '

    Debug Output

    ' . $gallery->getDebugBuffer() . '
    '; + } + } + } +} +?> diff --git a/Source/gallery2/modules/core/ItemAdd.inc b/Source/gallery2/modules/core/ItemAdd.inc new file mode 100644 index 0000000..b4567d1 --- /dev/null +++ b/Source/gallery2/modules/core/ItemAdd.inc @@ -0,0 +1,598 @@ + + * @version $Revision: 15513 $ + */ +class ItemAddController extends GalleryController { + /** + * ItemAddOption instances to use when handling this request. Only used by test code. + * + * @var array (optionId => object ItemAddOption) $_optionInstances + * @access private + */ + var $_optionInstances; + + /** + * Tests can use this method to hardwire a specific set of option instances to use. + * This avoids situations where some of the option instances will do unpredictable + * things and derail the tests. + * + * @param array $optionInstances (optionId => ItemAddOption, ...) + */ + function setOptionInstances($optionInstances) { + $this->_optionInstances = $optionInstances; + } + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + list ($itemId, $addPlugin) = GalleryUtilities::getRequestVariables('itemId', 'addPlugin'); + + /* Make sure we have permission to add to this item */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.addDataItem'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $lockId) = GalleryCoreApi::acquireReadLock($item->getId()); + if ($ret) { + return array($ret, null); + } + + /* Load the correct add plugin */ + list ($ret, $plugin) = GalleryCoreApi::newFactoryInstanceById('ItemAddPlugin', $addPlugin); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + + if (!isset($plugin)) { + GalleryCoreApi::releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + list ($ret, $error, $status) = $plugin->handleRequest($form, $item); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + + if (empty($error) && isset($status['addedFiles'])) { + if (isset($this->_optionInstances)) { + $optionInstances = $this->_optionInstances; + } else { + list ($ret, $optionInstances) = ItemAddOption::getAllAddOptions(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + } + + $addedItems = array(); + for ($i = 0; $i < count($status['addedFiles']); $i++) { + $file =& $status['addedFiles'][$i]; + if (empty($file['id'])) { + /* we couldn't add this file for whatever reason. move on */ + continue; + } + list ($ret, $addedItem) = GalleryCoreApi::loadEntitiesById($file['id']); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + + /* Check if we should extract individual files out of an archive */ + $toolkit = null; + if (GalleryUtilities::isA($addedItem, 'GalleryDataItem')) { + list ($ret, $toolkit) = + GalleryCoreApi::getToolkitByOperation($addedItem->getMimeType(), 'extract'); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + } + if (isset($toolkit)) { + list ($ret, $addedFiles) = $this->_extractAndAddFiles($addedItem, $toolkit); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + $ret = GalleryCoreApi::deleteEntityById($addedItem->getId()); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + unset($status['addedFiles'][$i--]); + $status['addedFiles'] = array_merge($status['addedFiles'], $addedFiles); + } else { + /* This is not an archive, add it to our array of item objects */ + $addedItems[$i] = $addedItem; + } + } + + /* Allow ItemAddOptions to process added item(s) */ + foreach ($optionInstances as $option) { + list ($ret, $optionErrors, $optionWarnings) = + $option->handleRequestAfterAdd($form, $addedItems); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + $error = array_merge($error, $optionErrors); + /* for each item, put the items warnings into our status array */ + foreach ($optionWarnings as $j => $messages) { + if (!isset($status['addedFiles'][$j]['warnings'])) { + $status['addedFiles'][$j]['warnings'] = array(); + } + $status['addedFiles'][$j]['warnings'] = + array_merge($status['addedFiles'][$j]['warnings'], $messages); + } + } + + $results['redirect'] = array('view' => 'core.ItemAdmin', + 'subView' => 'core.ItemAddConfirmation', + 'itemId' => $item->getId()); + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemAdd'; + $results['delegate']['addPlugin'] = $addPlugin; + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + $results['status'] = $status; + $results['error'] = $error; + return array(null, $results); + } + + /** + * Extract files from an archive item and add new items to the same album. + * @param object GalleryDataItem $archiveItem archive + * @param object GalleryToolkit $toolkit toolkit that supports extract operation + * @return array object GalleryStatus a status code + * array of array('fileName' => '..', 'id' => ##, 'warnings' => array of string) + * @access private + */ + function _extractAndAddFiles($archiveItem, $toolkit) { + global $gallery; + $this->_platform =& $gallery->getPlatform(); + + list ($ret, $file) = $archiveItem->fetchPath(); + if ($ret) { + return array($ret, null); + } + + $base = $this->_platform->tempnam($gallery->getConfig('data.gallery.tmp'), 'tmp_'); + $tmpDir = $base . '.dir'; + if (!$this->_platform->mkdir($tmpDir)) { + return array(GalleryCoreApi::error(ERROR_PLATFORM_FAILURE), null); + } + + list ($ret) = $toolkit->performOperation($archiveItem->getMimeType(), 'extract', + $file, $tmpDir, array()); + if ($ret) { + @$this->_platform->recursiveRmdir($tmpDir); + @$this->_platform->unlink($base); + return array($ret, null); + } + + /* + * If archive title matches the filename or base filename then name new items + * with the same strategy; otherwise just use the archive title. + */ + $archiveTitle = $archiveItem->getTitle(); + $archiveName = $archiveItem->getPathComponent(); + list ($archiveBase) = GalleryUtilities::getFileNameComponents($archiveName); + if ($archiveTitle == $archiveName) { + $titleMode = 'file'; + } else if ($archiveTitle == $archiveBase) { + $titleMode = 'base'; + } else { + $titleMode = 'archive'; + } + + $addedFiles = array(); + $ret = $this->_recursiveAddDir( + $tmpDir, $archiveItem->getParentId(), $addedFiles, $archiveItem, $titleMode); + @$this->_platform->recursiveRmdir($tmpDir); + @$this->_platform->unlink($base); + if ($ret) { + return array($ret, null); + } + + return array(null, $addedFiles); + } + + /** + * Recursively add files from extracted archive. + * @return object GalleryStatus a status code + * @access private + */ + function _recursiveAddDir($dir, $parentId, &$addedFiles, &$archiveItem, $titleMode) { + $list = array(); + $dh = $this->_platform->opendir($dir); + while (($file = $this->_platform->readdir($dh)) !== false) { + if ($file != '.' && $file != '..') { + $list[] = $file; + } + } + $this->_platform->closedir($dh); + + foreach ($list as $filename) { + $path = "$dir/$filename"; + if ($this->_platform->is_dir($path)) { + list ($ret, $album) = + GalleryCoreApi::createAlbum($parentId, $filename, $filename, '', '', ''); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::addUserPermission($album->getId(), $album->getOwnerId(), + 'core.all', false); + if ($ret) { + return $ret; + } + list ($ret, $lockId) = GalleryCoreApi::acquireReadLock($album->getId()); + if ($ret) { + return $ret; + } + $ret = $this->_recursiveAddDir($path, $album->getId(), + $addedFiles, $archiveItem, $titleMode); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + continue; + } + + $extension = GalleryUtilities::getFileExtension($filename); + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime($extension); + if ($ret) { + $mimeType = 'application/unknown'; + } + if ($titleMode == 'file') { + $title = $filename; + } else if ($titleMode == 'base') { + list ($title) = GalleryUtilities::getFileNameComponents($filename); + } else { + $title = $archiveItem->getTitle(); + } + list ($ret, $newItem) = GalleryCoreApi::addItemToAlbum( + $path, $filename, $title, $archiveItem->getSummary(), + $archiveItem->getDescription(), $mimeType, $parentId); + if ($ret) { + return $ret; + } + $addedFiles[] = array('fileName' => $filename, 'id' => $newItem->getId(), + 'warnings' => array()); + } + + return null; + } +} + +/** + * This view will show the selected plugin for adding items to the gallery + */ +class ItemAddView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + list ($itemId, $addPlugin) = GalleryUtilities::getRequestVariables('itemId', 'addPlugin'); + + /* Make sure we have permission to add to this item */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.addDataItem'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* Get all the add plugins */ + list ($ret, $allPluginIds) = + GalleryCoreApi::getAllFactoryImplementationIds('ItemAddPlugin'); + if ($ret) { + return array($ret, null); + } + + $pluginInstances = array(); + foreach (array_keys($allPluginIds) as $pluginId) { + list ($ret, $plugin) = + GalleryCoreApi::newFactoryInstanceById('ItemAddPlugin', $pluginId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isAppropriate) = $plugin->isAppropriate(); + if ($ret) { + return array($ret, null); + } + + if ($isAppropriate) { + $pluginInstances[$pluginId] = $plugin; + } + } + + /* Get all the add options */ + list ($ret, $optionInstances) = ItemAddOption::getAllAddOptions(); + if ($ret) { + return array($ret, null); + } + + /* + * If the plugin is empty get it from the session. If it's empty there, + * default to the first plugin we find. Either way, save the user's + * preference in the session. + */ + $session =& $gallery->getSession(); + $addPluginSessionKey = 'core.view.ItemAdd.addPlugin.' . get_class($item); + if (empty($addPlugin) || !isset($pluginInstances[$addPlugin])) { + $addPlugin = $session->get($addPluginSessionKey); + if (empty($addPlugin) || !isset($pluginInstances[$addPlugin])) { + $ids = array_keys($pluginInstances); + $addPlugin = $ids[0]; + } + } + $session->put($addPluginSessionKey, $addPlugin); + + /* Get display data for all plugins */ + $plugins = array(); + foreach ($pluginInstances as $pluginId => $plugin) { + list ($ret, $title) = $plugin->getTitle(); + if ($ret) { + return array($ret, null); + } + $plugins[] = array('title' => $title, + 'id' => $pluginId, + 'isSelected' => ($pluginId == $addPlugin)); + } + + $ItemAdd = array(); + $ItemAdd['addPlugin'] = $addPlugin; + $ItemAdd['plugins'] = $plugins; + $ItemAdd['isAdmin'] = $isAdmin; + + /* Let the plugin load its template data */ + list ($ret, $ItemAdd['pluginFile'], $ItemAdd['pluginL10Domain']) = + $pluginInstances[$addPlugin]->loadTemplate($template, $form, $item); + if ($ret) { + return array($ret, null); + } + + /* Now let all options load their template data */ + $ItemAdd['options'] = array(); + foreach ($optionInstances as $option) { + list ($ret, $entry['file'], $entry['l10Domain']) = + $option->loadTemplate($template, $form, $item); + if ($ret) { + return array($ret, null); + } + if (!empty($entry['file'])) { + $ItemAdd['options'][] = $entry; + } + } + + /* Make sure that we've got some toolkits */ + list ($ret, $operations) = GalleryCoreApi::getToolkitOperations('image/jpeg'); + if ($ret) { + return array($ret, null); + } + + $ItemAdd['hasToolkit'] = false; + for ($i = 0; $i < sizeof($operations); $i++) { + if ($operations[$i]['name'] == 'thumbnail') { + $ItemAdd['hasToolkit'] = true; + break; + } + } + + $template->setVariable('ItemAdd', $ItemAdd); + $template->setVariable('controller', 'core.ItemAdd'); + return array(null, + array('body' => 'modules/core/templates/ItemAdd.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + return array(null, $core->translate('add items')); + } +} + + +/** + * Interface for plugins to the ItemAdd view and controller. + * Plugins provide alternate ways to add items into Gallery. + * @abstract + */ +class ItemAddPlugin { + + /** + * Load the template with data from this plugin + * @see GalleryView::loadTemplate + * + * @param object GalleryTemplate $template + * @param array $form the form values + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * string the path to a template file to include + * string localization domain for the template file + */ + function loadTemplate(&$template, &$form, $item) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Let the plugin handle the incoming request + * @see GalleryController::handleRequest + * + * @param array $form the form values + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * array error messages + * array status data, 'addedFiles' entry should contain: + * array(array('fileName' => '...', 'id' => ##, + * 'warnings' => array of strings), ...) + */ + function handleRequest($form, &$item) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Return a localized title for this plugin, suitable for display to the user + * + * @return array object GalleryStatus a status code + * return-array (same as GalleryController::handleRequest) + */ + function getTitle() { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } + + /** + * Is this plugin appropriate at this time? Default is true. + * + * @return array object GalleryStatus a status code + * boolean true or false + */ + function isAppropriate() { + return array(null, true); + } +} + +/** + * Interface for options to the ItemAdd view and controller. + * Options allow us to provide extra UI in the views and extra processing in the controller so + * that we can add new functionality like watermarking, quotas, etc to every ItemAddPlugin + * @abstract + */ +class ItemAddOption { + + /** + * Return all the available option plugins + * + * @return array object GalleryStatus a status code + * array object ItemAddOption instances + * @static + */ + function getAllAddOptions() { + /* Get all the option plugins */ + list ($ret, $allOptionIds) = + GalleryCoreApi::getAllFactoryImplementationIds('ItemAddOption'); + if ($ret) { + return array($ret, null); + } + + $optionInstances = array(); + foreach (array_keys($allOptionIds) as $optionId) { + list ($ret, $option) = + GalleryCoreApi::newFactoryInstanceById('ItemAddOption', $optionId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isAppropriate) = $option->isAppropriate(); + if ($ret) { + return array($ret, null); + } + + if ($isAppropriate) { + $optionInstances[$optionId] = $option; + } + } + + return array(null, $optionInstances); + } + + /** + * Load the template with data from this plugin + * @see GalleryView::loadTemplate + * + * @param object GalleryTemplate $template + * @param array $form the form values + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * string the path to a template file to include + * string localization domain for the template file + */ + function loadTemplate(&$template, &$form, $item) { + return array(null, null, null); + } + + /** + * Let the plugin handle the incoming request. We expect the $items to be locked. + * @see GalleryController::handleRequest + * + * @param array $form the form values + * @param array $items GalleryDataItems + * @return array object GalleryStatus a status code + * array localized error messages + * array localized warning messages + */ + function handleRequestAfterAdd($form, $items) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Is this option appropriate at this time? + * + * @return array object GalleryStatus a status code + * boolean true or false + */ + function isAppropriate() { + return array(null, false); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemAddAlbum.inc b/Source/gallery2/modules/core/ItemAddAlbum.inc new file mode 100644 index 0000000..a2830c8 --- /dev/null +++ b/Source/gallery2/modules/core/ItemAddAlbum.inc @@ -0,0 +1,181 @@ + + * @version $Revision: 15513 $ + */ +class ItemAddAlbumController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + /* Make sure we have permission do edit this item */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.addAlbumItem'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $lockIds[]) = GalleryCoreApi::acquireReadLock($itemId); + if ($ret) { + return array($ret, null); + } + + $status = $error = array(); + if (isset($form['action']['create'])) { + /* Validate the input data */ + $platform =& $gallery->getPlatform(); + + if (empty($form['pathComponent'])) { + $error[] = 'form[error][pathComponent][missing]'; + } else if (!$platform->isLegalPathComponent($form['pathComponent'])) { + $error[] = 'form[error][pathComponent][invalid]'; + } + + if (empty($error)) { + list ($ret, $markup) = + GalleryCoreApi::getPluginParameter('module', 'core', 'misc.markup'); + if ($ret) { + return array($ret, null); + } + if ($markup == 'html') { + /* Strip malicious content if html markup allowed */ + $form['title'] = GalleryUtilities::htmlSafe($form['title'], true); + $form['summary'] = GalleryUtilities::htmlSafe($form['summary'], true); + $form['description'] = GalleryUtilities::htmlSafe($form['description'], true); + } + + list ($ret, $instance) = + GalleryCoreApi::createAlbum($itemId, $form['pathComponent'], $form['title'], + $form['summary'], $form['description'], + $form['keywords']); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + if (!isset($instance)) { + GalleryCoreApi::releaseLocks($lockIds); + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), null); + } + + $ret = GalleryCoreApi::addUserPermission($instance->getId(), + $instance->getOwnerId(), + 'core.all', false); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemEdit'; + $redirect['editPlugin'] = 'ItemEditAlbum'; + $redirect['itemId'] = $instance->getId(); + + /* Prepare our status message */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + $status['editMessage'] = $module->translate('Album created successfully.'); + } + } + + $ret = GalleryCoreApi::releaseLocks($lockIds); + if ($ret) { + return array($ret, null); + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemAddAlbum'; + } + $results['status'] = $status; + $results['error'] = $error; + + + return array(null, $results); + } +} + +/** + * This view will prompt for the data for a new album to be created + */ +class ItemAddAlbumView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + /* Make sure we have permission do edit this item */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.addAlbumItem'); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] == 'ItemAddAlbum') { + + /* Complain if we have any invalid data */ + + } else { + /* First time around, load the form with item data */ + $form['pathComponent'] = ''; + $form['title'] = ''; + $form['summary'] = ''; + $form['keywords'] = ''; + $form['description'] = ''; + $form['formName'] = 'ItemAddAlbum'; + } + + $template->setVariable('ItemAddAlbum', array()); + $template->setVariable('controller', 'core.ItemAddAlbum'); + return array(null, array('body' => 'modules/core/templates/ItemAddAlbum.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('add sub-album')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemAddConfirmation.inc b/Source/gallery2/modules/core/ItemAddConfirmation.inc new file mode 100644 index 0000000..8680d6e --- /dev/null +++ b/Source/gallery2/modules/core/ItemAddConfirmation.inc @@ -0,0 +1,87 @@ + + * @version $Revision: 15513 $ + */ +class ItemAddConfirmationView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* + * We know what kind of operation happened, but for now let's compress + * it down so that the template doesn't have to know. + */ + $status = $template->getVariable('status'); + $uploaded = 0; + if (!empty($status['addedFiles'])) { + $count = sizeof($status['addedFiles']); + for ($i = 0; $i < $count; $i++) { + list ($ret, $entity) = + GalleryCoreApi::loadEntitiesById($status['addedFiles'][$i]['id']); + if (!$ret) { + $status['addedFiles'][$i]['exists'] = true; + $uploaded++; + } else if ($ret->getErrorCode() & (ERROR_MISSING_OBJECT | ERROR_BAD_PARAMETER)) { + $status['addedFiles'][$i]['exists'] = false; + } else { + return array($ret, null); + } + } + } else { + $status['addedFiles'] = array(); + } + + $ItemAddConfirmation = array(); + $ItemAddConfirmation['count'] = $uploaded; + $ItemAddConfirmation['status'] = $status; + + $template->setVariable('ItemAddConfirmation', $ItemAddConfirmation); + $template->setVariable('controller', ''); + return array(null, array('body' => 'modules/core/templates/ItemAddConfirmation.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('add items confirmation')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemAddFromBrowser.inc b/Source/gallery2/modules/core/ItemAddFromBrowser.inc new file mode 100644 index 0000000..f7ed9d4 --- /dev/null +++ b/Source/gallery2/modules/core/ItemAddFromBrowser.inc @@ -0,0 +1,252 @@ + + * @version $Revision: 15513 $ + */ +class ItemAddFromBrowser extends ItemAddPlugin { + + /** + * @see ItemAddPlugin::handleRequest + */ + function handleRequest($form, &$item) { + global $gallery; + + $status = array(); + $error = array(); + $uploaded = false; + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + if (isset($form['action']['addFromBrowser'])) { + list ($ret, $markup) = + GalleryCoreApi::getPluginParameter('module', 'core', 'misc.markup'); + if ($ret) { + return array($ret, null, null); + } + + /* Upload any new files */ + for ($i = 1; $i <= count($form['name']); $i++) { + $newItem = null; + + /* Placeholder for later */ + if (!empty($form['tmp_name'][$i]) && !empty($form['size'][$i])) { + $file = array('name' => $form['name'][$i], + 'type' => $form['type'][$i], + 'tmp_name' => $form['tmp_name'][$i], + 'size' => $form['size'][$i], + 'caption' => $form['caption'][$i]); + + if ($markup == 'html') { + /* Strip malicious content if html markup allowed */ + $file['caption'] = GalleryUtilities::htmlSafe($file['caption'], true); + } + + /* Get the mime type from the upload info. */ + $mimeType = $file['type']; + + /* + * If we don't get useful data from that or its a type we don't + * recognize, take a swing at it using the file name. + */ + list ($ret, $mimeExtensions) = + GalleryCoreApi::convertMimeToExtensions($mimeType); + if ($mimeType == 'application/octet-stream' || + $mimeType == 'application/unknown' || + empty($mimeExtensions)) { + $extension = GalleryUtilities::getFileExtension($file['name']); + list ($ret, $mimeType) = GalleryCoreApi::convertExtensionToMime($extension); + if ($ret) { + $mimeType = 'application/unknown'; + } + } + + $filename = basename($file['name']); + list ($base, $extension) = GalleryUtilities::getFileNameComponents($filename); + $title = ($form['set']['title'] == 'filename') ? $base + : (($form['set']['title'] == 'caption') ? $file['caption'] : ''); + $summary = empty($form['set']['summary']) ? '' : $file['caption']; + $description = empty($form['set']['description']) ? '' : $file['caption']; + + /* + * Don't use uploaded files, because the framework cannot safely copy them. + * Move it to our temporary directory first. + */ + + $platform =& $gallery->getPlatform(); + if ($platform->is_uploaded_file($file['tmp_name'])) { + $tmpFile = $platform->move_uploaded_file($file['tmp_name']); + if (!$tmpFile) { + return array(GalleryCoreApi::error(ERROR_PLATFORM_FAILURE), null, null); + } + $needToDeleteTmpFile = true; + } else { + $tmpFile = $file['tmp_name']; + $needToDeleteTmpFile = false; + } + + list ($ret, $newItem) = GalleryCoreApi::addItemToAlbum( + $tmpFile, $filename, $title, $summary, + $description, $mimeType, $item->getId()); + + /* Get rid of the tmp file if necessary */ + if ($needToDeleteTmpFile) { + @$platform->unlink($tmpFile); + } + + if ($ret) { + return array($ret, null, null); + } + + $status['addedFiles'][] = array('fileName' => $file['name'], + 'id' => $newItem->getId(), + 'warnings' => array()); + $uploaded = true; + } else if (!empty($form['name'][$i])) { + $error[] = 'form[error][upload][' . $i . ']'; + if (empty($form['error'])) { + $form['error'][$i] = -1; + } + switch($form['error'][$i]) { + case UPLOAD_ERR_INI_SIZE: + $warning = $module->translate(array( + 'text' => 'Input file %s exceeds maximum permitted file size', + 'arg1' => $form['name'][$i])); + break; + + case UPLOAD_ERR_FORM_SIZE: + $warning = $module->translate(array( + 'text' => 'Input file %s exceeds file size specified in the form', + 'arg1' => $form['name'][$i])); + break; + + case UPLOAD_ERR_PARTIAL: + $warning = $module->translate(array( + 'text' => 'Input file %s was only partially uploaded', + 'arg1' => $form['name'][$i])); + break; + + default: + $warning = $module->translate(array( + 'text' => 'Input file %s was not uploaded. Error %d', + 'arg1' => $form['name'][$i], + 'arg2' => $form['error'][$i])); + } + $status['addedFiles'][] = array('fileName' => $form['name'][$i], + 'id' => null, + 'warnings' => array($warning)); + } + } + if ($uploaded || empty($status)) { + /* + * Some files were uploaded successfully (or not even attempted) + * Go to confirmation page, even if there were errors in uploads + */ + $error = array(); + } else { + GalleryUtilities::putRequestVariable('ItemAddFromBrowserStatus', + $status['addedFiles']); + } + } + + return array(null, $error, $status); + } + + /** + * @see ItemAdd:loadTemplate + */ + function loadTemplate(&$template, &$form, $item) { + $fileUploadsBool = GalleryUtilities::getPhpIniBool('file_uploads'); + $totalUploadSize = ini_get('post_max_size'); + if (preg_match("/(\d+)M/", $totalUploadSize, $matches)) { + $totalUploadSize = $matches[1] * 1024 * 1024; + } + + $maxFileSize = ini_get('upload_max_filesize'); + if (preg_match("/(\d+)M/", $maxFileSize, $matches)) { + $maxFileSize = $matches[1] * 1024 * 1024; + } + $status = GalleryUtilities::getRequestVariables('ItemAddFromBrowserStatus'); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + foreach (array('totalUploadSize', 'maxFileSize') as $key) { + if ($$key >= 1024 * 1024) { + $$key = $module->translate(array('one' => '%d megabyte', + 'many' => '%d megabytes', + 'count' => (int)($$key / (1024 * 1024)), + 'arg1' => (int)($$key / (1024 * 1024)))); + } else if ($$key >= 1024) { + $$key = $module->translate(array('one' => '%d kilobytes', + 'many' => '%d kilobytes', + 'count' => (int)($$key / (1024)), + 'arg1' => (int)($$key / (1024)))); + } + } + + if ($form['formName'] != 'ItemAddFromBrowser') { + $form['set'] = array('title' => 'filename', 'summary' => 1, 'description' => 1); + $form['formName'] = 'ItemAddFromBrowser'; + } + + $titleList = array('filename' => $module->translate('Base filename'), + 'caption' => $module->translate('Caption'), + '' => $module->translate('Blank')); + + $template->setVariable('ItemAddFromBrowser', + array('totalUploadSize' => $totalUploadSize, + 'maxFileSize' => $maxFileSize, + 'uploadsPermitted' => $fileUploadsBool, + 'titleList' => $titleList, + 'status' => $status)); + + /* Set the ItemAdmin form's encoding type specially since we're uploading binary files */ + if ($template->hasVariable('ItemAdmin')) { + $ItemAdmin =& $template->getVariableByReference('ItemAdmin'); + $ItemAdmin['enctype'] = 'multipart/form-data'; + } else { + $ItemAdmin['enctype'] = 'multipart/form-data'; + $template->setVariable('ItemAdmin', $ItemAdmin); + } + + return array(null, 'modules/core/templates/ItemAddFromBrowser.tpl', 'modules_core'); + } + + /** + * @see ItemAddPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('From Web Browser')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemAdmin.inc b/Source/gallery2/modules/core/ItemAdmin.inc new file mode 100644 index 0000000..4bc974e --- /dev/null +++ b/Source/gallery2/modules/core/ItemAdmin.inc @@ -0,0 +1,222 @@ + + * @version $Revision: 15513 $ + */ +class ItemAdminView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* Figure out the item we're referring to */ + $itemId = GalleryUtilities::getRequestVariables('itemId'); + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* Find its thumbnail */ + list ($ret, $thumbnailTable) = GalleryCoreApi::fetchThumbnailsByItemIds(array($itemId)); + if ($ret) { + return array($ret, null); + } + if (empty($thumbnailTable)) { + $thumbnailData = null; + } else { + $thumbnail = $thumbnailTable[$itemId]; + $thumbnailData = (array)$thumbnail; + } + + /* Load the module list */ + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return array($ret, null); + } + + /* Get a list of all the admin views for each module */ + $subViewChoiceData = array(); + foreach ($moduleStatus as $moduleId => $status) { + if (empty($status['active'])) { + continue; + } + + /* Get the selected module's admin view */ + if (in_array('getItemAdminViews', explode('|', $status['callbacks']))) { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', $moduleId); + if ($ret) { + if ($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH) { + continue; + } + return array($ret, null); + } + + list ($ret, $moduleViews) = $module->getItemAdminViews($item); + if ($ret) { + return array($ret, null); + } + + $subViewChoiceData = array_merge($subViewChoiceData, $moduleViews); + } + } + + usort($subViewChoiceData, array($this, 'sortByName')); + + $subViewName = GalleryUtilities::getRequestVariables('subView'); + if ($subViewName == 'core.ItemAdmin') { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + /* Turn sub view choices into url params */ + $subViewChoices = array(); + foreach ($subViewChoiceData as $params) { + /* Extract the view name */ + $name = $params['name']; + unset($params['name']); + + /* Move the view -> subView and set ItemAdmin as the view */ + $params['subView'] = $params['view']; + $params['view'] = 'core.ItemAdmin'; + if ($subViewName == $params['subView']) { + $params['active'] = true; + } + + /* Set the item id if necessary */ + if (!isset($params['itemId'])) { + $params['itemId'] = $itemId; + } + + $subViewChoices[$name] = $params; + } + + /* If we have a specific sub view, render it now */ + if (empty($subViewName) && !empty($subViewChoices)) { + $subViewName = 'core.ItemEdit'; + } + + list ($ret, $subView) = GalleryView::loadView($subViewName); + if ($ret) { + return array($ret, null); + } + + /* Get the type of the item */ + $itemType = $item->itemTypeName(true); + + /* Load the item's parents */ + list ($ret, $parents) = GalleryCoreApi::fetchParents($item, 'core.view', true); + if ($ret) { + return array($ret, null); + } + for ($i = 0; $i < sizeof($parents); $i++) { + $parents[$i] = (array)$parents[$i]; + } + + list ($ret, $results) = $subView->loadTemplate($template, $form); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isSiteAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + /* Our sub view may have set some hints, like the encoding type */ + if ($template->hasVariable('ItemAdmin')) { + $ItemAdmin =& $template->getVariableByReference('ItemAdmin'); + } else { + $ItemAdmin = array(); + } + + /* Get the links for navigating back to where we came from */ + $urlGenerator =& $gallery->getUrlGenerator(); + list ($ret, $navigationLinks) = $urlGenerator->getNavigationLinks(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $ItemAdmin['navigationLinks'] = $navigationLinks; + $ItemAdmin['viewBodyFile'] = $results['body']; + $ItemAdmin['item'] = (array)$item; + $ItemAdmin['parents'] = $parents; + $ItemAdmin['parent'] = empty($parents) ? null : $parents[sizeof($parents) - 1]; + $ItemAdmin['itemType'] = $itemType; + $ItemAdmin['thumbnail'] = $thumbnailData; + $ItemAdmin['subViewChoices'] = $subViewChoices; + $ItemAdmin['viewL10Domain'] = $subView->getL10Domain(); + $ItemAdmin['isSiteAdmin'] = $isSiteAdmin; + + if (!isset($ItemAdmin['enctype'])) { + $ItemAdmin['enctype'] = 'application/x-www-form-urlencoded'; + } + + $template->setVariable('ItemAdmin', $ItemAdmin); + $template->title($module->translate('Gallery Item Administration')); + return array(null, + array('body' => 'modules/core/templates/ItemAdmin.tpl')); + } + + function sortByName($a, $b) { + return strcmp($a['name'], $b['name']); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + /* Get the description from the current subView */ + $subViewName = GalleryUtilities::getRequestVariables('subView'); + if (empty($subViewName)) { + $subViewName = 'core.ItemEdit'; + } + + list ($ret, $subView) = GalleryView::loadView($subViewName); + if ($ret) { + return array($ret, null); + } + + list ($ret, $description) = $subView->getViewDescription(); + if ($ret) { + return array($ret, null); + } + + return array(null, $description); + } + + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_ADMIN; + } +} +?> diff --git a/Source/gallery2/modules/core/ItemDelete.inc b/Source/gallery2/modules/core/ItemDelete.inc new file mode 100644 index 0000000..0eda8d1 --- /dev/null +++ b/Source/gallery2/modules/core/ItemDelete.inc @@ -0,0 +1,295 @@ + + * @version $Revision: 15513 $ + */ +class ItemDeleteController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + $status = $error = array(); + + if (isset($form['action']['delete'])) { + $status['deleted']['count'] = 0; + if (!empty($form['selectedIds'])) { + $selectedIds = array_keys($form['selectedIds']); + + /* get the rootId, so we don't try to delete it */ + list ($ret, $rootId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.rootAlbum'); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::studyPermissions($selectedIds); + if ($ret) { + return array($ret, null); + } + + foreach ($selectedIds as $selectedId) { + /* Make sure we have permission to delete this item */ + list ($ret, $permissions) = GalleryCoreApi::getPermissions($selectedId); + if ($ret) { + return array($ret, null); + } + + if ( !isset($permissions['core.delete'])) { + return array( + GalleryCoreApi::error(ERROR_PERMISSION_DENIED, __FILE__, __LINE__, + "Don't have permission to delete this item"), null); + } + + /* Make sure we're not deleting the root album */ + if ($selectedId == $rootId) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Can't delete the root album"), null); + } + } + + /* if we're still here then all are deletable */ + $storage =& $gallery->getStorage(); + foreach ($selectedIds as $selectedId) { + $ret = GalleryCoreApi::deleteEntityById($selectedId); + if ($ret) { + return array($ret, null); + } + if (!(++$status['deleted']['count'] % 20)) { + $ret = $storage->checkPoint(); + if ($ret) { + return array($ret, null); + } + } + } + + list ($ret, $success) = GalleryCoreApi::guaranteeAlbumHasThumbnail($itemId); + if ($ret) { + return array($ret, null); + } + + /* What do we do if we weren't successful? No thumbnail, I guess */ + } + + /* + * Figure out where to redirect upon success. + * Can't use return url because it may be for an item we just deleted, but + * check for g2_page param and include that if found (matrix theme specific..) + */ + $results['redirect'] = array('view' => 'core.ShowItem', + 'itemId' => $itemId); + + $urlGenerator =& $gallery->getUrlGenerator(); + list ($ret, $links) = $urlGenerator->getNavigationLinks(1); + if ($ret) { + return array($ret, null); + } + if (count($links) > 0 && + preg_match('{' . GalleryUtilities::prefixFormVariable('page') . '=(\d+)}', + $links[0]['url'], $match)) { + $results['redirect']['page'] = $match[1]; + } + } else if (isset($form['action']['next'])) { + $page = GalleryUtilities::getRequestVariables('page'); + list ($ret, $peerIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($itemId, 'core.delete'); + if ($ret) { + return array($ret, null); + } + + $numPages = ceil(sizeof($peerIds) / $form['numPerPage']); + + $results['delegate']['itemId'] = $itemId; + $results['delegate']['page'] = min($page + 1, $numPages); + } else if (isset($form['action']['previous'])) { + $page = GalleryUtilities::getRequestVariables('page'); + $results['delegate']['itemId'] = $itemId; + $results['delegate']['page'] = max($page - 1, 1); + } else if (isset($form['action']['cancel'])) { + $results['return'] = 1; + } + + if (!empty($results['delegate'])) { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemDelete'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for selecting items to delete + */ +class ItemDeleteView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $variables = GalleryUtilities::getRequestVariables('itemId', 'selectedId', 'page'); + foreach ($variables as $key => $value) { + $variables[$key] = is_numeric($value) ? (int) $value : null; + } + list ($itemId, $selectedId, $page) = $variables; + + if ($form['formName'] != 'ItemDelete') { + if ($selectedId) { + $form['selectedIds'][$selectedId] = true; + } + $form['destination'] = ''; + $form['formName'] = 'ItemDelete'; + $form['numPerPage'] = 15; + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $peerIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($itemId, 'core.delete'); + if ($ret) { + return array($ret, null); + } + + $peers = array(); + $peerTypes = array(); + $peerDescendentCounts = array(); + $numPages = 1; + $selectedIds = array(); + if (!empty($peerIds)) { + $numPages = ceil(sizeof($peerIds) / $form['numPerPage']); + if (empty($page)) { + /* determine which page we're on */ + $page = 1; + for ($i = 0; $i < sizeof($peerIds); $i++) { + if ($peerIds[$i] == $selectedId) { + $page = ceil(($i + 1) / $form['numPerPage']); + } + } + } + + $start = $form['numPerPage'] * ($page - 1); + $peerIds = array_slice($peerIds, $start, $form['numPerPage']); + if (isset($form['selectedIds'])) { + $selectedIds = $form['selectedIds']; + foreach ($peerIds as $peerId) { + if (isset($selectedIds[$peerId])) { + unset($selectedIds[$peerId]); + } + } + } + + /* load peers */ + list ($ret, $peerItems) = GalleryCoreApi::loadEntitiesById($peerIds); + if ($ret) { + return array($ret, null); + } + + /* get peer thumbnails and resizes */ + list ($ret, $derivatives) = GalleryCoreApi::fetchDerivativesByItemIds($peerIds); + if ($ret) { + return array($ret, null); + } + + /* build peers table */ + foreach ($peerItems as $peerItem) { + $peers[$peerItem->getId()] = (array)$peerItem; + if (GalleryUtilities::isA($peerItem, 'GalleryAlbumItem')) { + $peerTypes['album'][$peerItem->getId()] = 1; + } else { + $peerTypes['data'][$peerItem->getId()] = 1; + } + $peers[$peerItem->getId()]['selected'] = + isset($form['selectedIds'][$peerItem->getId()]); + + /* While we're at it, attach thumbnails and resizes */ + if (isset($derivatives[$peerItem->getId()])) { + foreach ($derivatives[$peerItem->getId()] as $derivative) { + $type = $derivative->getDerivativeType(); + if (empty($peers[$peerItem->getId()]['resize']) && + $type == DERIVATIVE_TYPE_IMAGE_RESIZE) { + $peers[$peerItem->getId()]['resize'] = (array)$derivative; + } else if ($type == DERIVATIVE_TYPE_IMAGE_THUMBNAIL) { + $peers[$peerItem->getId()]['thumbnail'] = (array)$derivative; + } + } + } + } + + /* Get child counts */ + if (isset($peerTypes['album'])) { + list ($ret, $peerDescendentCounts) = + GalleryCoreApi::fetchDescendentCounts(array_keys($peerTypes['album'])); + if ($ret) { + return array($ret, null); + } + } + } + + + $urlGenerator =& $gallery->getUrlGenerator(); + + $ItemDelete = array(); + $ItemDelete['canCancel'] = $urlGenerator->isNavigationBackPossible(); + $ItemDelete['peers'] = $peers; + $ItemDelete['peerTypes'] = $peerTypes; + $ItemDelete['peerDescendentCounts'] = $peerDescendentCounts; + $ItemDelete['page'] = $page; + $ItemDelete['numPages'] = $numPages; + $ItemDelete['numPerPage'] = $form['numPerPage']; + $ItemDelete['selectedIds'] = array_keys($selectedIds); + $ItemDelete['selectedIdCount'] = count($selectedIds); + + $template->setVariable('ItemDelete', $ItemDelete); + $template->setVariable('controller', 'core.ItemDelete'); + $template->javascript('lib/yui/yahoo-min.js'); + $template->javascript('lib/yui/dom-min.js'); + $template->javascript('lib/yui/event-min.js'); + $template->javascript('lib/yui/container-min.js'); + return array(null, array('body' => 'modules/core/templates/ItemDelete.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('delete an item')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemDeleteConfirmation.inc b/Source/gallery2/modules/core/ItemDeleteConfirmation.inc new file mode 100644 index 0000000..1b3cd91 --- /dev/null +++ b/Source/gallery2/modules/core/ItemDeleteConfirmation.inc @@ -0,0 +1,49 @@ + + * @version $Revision: 15513 $ + */ +class ItemDeleteConfirmationView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + return array(null, array('body' => 'modules/core/templates/ItemDeleteConfirmation.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('delete confirmation')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemDeleteSingle.inc b/Source/gallery2/modules/core/ItemDeleteSingle.inc new file mode 100644 index 0000000..9961c2b --- /dev/null +++ b/Source/gallery2/modules/core/ItemDeleteSingle.inc @@ -0,0 +1,174 @@ + + * @version $Revision: 15513 $ + */ +class ItemDeleteSingleController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + $session =& $gallery->getSession(); + $urlGenerator =& $gallery->getUrlGenerator(); + + list ($itemId, $navId) = GalleryUtilities::getRequestVariables('itemId', 'navId'); + + $status = $error = array(); + if (isset($form['action']['delete'])) { + /* Get the root album id, so we don't try to delete it */ + list ($ret, $rootId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.rootAlbum'); + if ($ret) { + return array($ret, null); + } + + /* The view shouldn't let us get this far if we don't have delete permission */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.delete'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* The view shouldn't let us try to delete the root album, either */ + if ($itemId == $rootId) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Can't delete the root album"), null); + } + + /* Save URL for trimming from navigation links */ + $itemUrl = $urlGenerator->generateUrl( + array('view' => 'core.ShowItem', 'itemId' => $itemId), + array('forceSessionId' => false)); + + /* Delete */ + $ret = GalleryCoreApi::deleteEntityById($itemId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $success) = + GalleryCoreApi::guaranteeAlbumHasThumbnail($item->getParentId()); + if ($ret) { + return array($ret, null); + } + /* What do we do if we weren't successful? No thumbnail, I guess */ + + /* Trim navigation if previous URL is ShowItem for this item */ + if (!empty($navId)) { + $navigation = $session->getNavigation($navId); + if ($i = strpos($itemUrl, '?')) { + $itemUrl = substr($itemUrl, 0, $i); + } + if (strpos($navigation[0]['returnUrl'], $itemUrl) !== false) { + $session->jumpNavigation($navId); + } + } + + $status['deleted'] = 1; + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemDeleteConfirmation'; + $redirect['itemId'] = $item->getParentId(); + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemDeleteSingle'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for confirmation on the deletion of an item + */ +class ItemDeleteSingleView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + if ($form['formName'] != 'ItemDeleteSingle') { + $form['destination'] = ''; + $form['formName'] = 'ItemDeleteSingle'; + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* Get child counts */ + list ($ret, $childCountTable) = GalleryCoreApi::fetchDescendentCounts(array($itemId)); + if ($ret) { + return array($ret, null); + } + $childCount = isset($childCountTable[$itemId]) ? $childCountTable[$itemId] : 0; + + $ItemDeleteSingle = array(); + $ItemDeleteSingle['itemTypeNames'] = $item->itemTypeName(); + $ItemDeleteSingle['childCount'] = $childCount; + + $template->setVariable('ItemDeleteSingle', $ItemDeleteSingle); + $template->setVariable('controller', 'core.ItemDeleteSingle'); + return array(null, array('body' => 'modules/core/templates/ItemDeleteSingle.tpl')); + + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + $itemTypeNames = $item->itemTypeName(true); + + return array(null, $core->translate(array('text' => 'delete %s', + 'arg1' => $itemTypeNames[1]))); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEdit.inc b/Source/gallery2/modules/core/ItemEdit.inc new file mode 100644 index 0000000..a4403da --- /dev/null +++ b/Source/gallery2/modules/core/ItemEdit.inc @@ -0,0 +1,523 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $editPlugin = GalleryUtilities::getRequestVariables('editPlugin'); + $itemId = (int)GalleryUtilities::getRequestVariables('itemId'); + + /* Load the item */ + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + if (!GalleryUtilities::isA($item, 'GalleryItem')) { + /* Invalid itemId given, return MISSING_OBJECT to get standard error page */ + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), null); + } + + /* Make sure we have permission to edit this item */ + $ret = GalleryCoreApi::assertHasItemPermission($item->getId(), 'core.edit'); + if ($ret) { + return array($ret, null); + } + + /* Check to see if we have a preferred source */ + list ($ret, $preferredTable) = + GalleryCoreApi::fetchPreferredsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null); + } + $preferred = empty($preferredTable) ? null : array_shift($preferredTable); + + /* Load the thumbnail */ + list ($ret, $thumbnails) = GalleryCoreApi::fetchThumbnailsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null); + } + $thumbnail = empty($thumbnails) ? null : array_shift($thumbnails); + + /* Get all the edit options */ + list ($ret, $optionInstances) = + ItemEditOption::getAllOptions($editPlugin, $item, $thumbnail); + if ($ret) { + return array($ret, null); + } + + /* Load the correct edit plugin */ + list ($ret, $plugin) = + GalleryCoreApi::newFactoryInstanceById('ItemEditPlugin', $editPlugin); + if ($ret) { + return array($ret, null); + } + if (!isset($plugin)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + $status = array(); + list ($ret, $error, $status['editMessage'], $requiresProgressBar) = + $plugin->handleRequest($form, $item, $preferred); + if ($ret) { + return array($ret, null); + } + if (!empty($requiresProgressBar)) { + $results['delegate']['view'] = 'core.ProgressBar'; + } + + /* Now let each option process its data */ + if (!isset($status['warning'])) { + $status['warning'] = array(); + } + if (isset($form['action']['save'])) { + $progressBarOptions = array(); + foreach ($optionInstances as $option) { + if ($option->requiresProgressBar($form)) { + $progressBarOptions[] = $option; + } else { + list ($ret, $optionErrors, $optionWarnings) = + $option->handleRequestAfterEdit($form, $item, $preferred); + if ($ret) { + return array($ret, null); + } + + $error = array_merge($error, $optionErrors); + $status['warning'] = array_merge($status['warning'], $optionWarnings); + } + } + + if (empty($error) && $progressBarOptions) { + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($this, 'runProgressBarOptions'), + array($progressBarOptions, $form, $item, $preferred, $status, $editPlugin)); + $results['delegate']['view'] = 'core.ProgressBar'; + } + } + + if (empty($results['delegate'])) { + /* It's not a progress bar view */ + if (empty($error)) { + $results['redirect'] = array('view' => 'core.ItemAdmin', + 'subView' => 'core.ItemEdit', + 'editPlugin' => $editPlugin, + 'itemId' => $item->getId()); + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemEdit'; + $results['delegate']['editPlugin'] = $editPlugin; + } + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } + + function runProgressBarOptions($options, $form, $item, $preferred, $status, $editPlugin) { + global $gallery; + $templateAdapter =& $gallery->getTemplateAdapter(); + + $error = array(); + foreach ($options as $option) { + list ($ret, $optionErrors, $optionWarnings) = + $option->handleRequestAfterEdit($form, $item, $preferred); + if ($ret) { + return $ret; + } + + $error = array_merge($error, $optionErrors); + $status['warning'] = array_merge($status['warning'], $optionWarnings); + } + $session =& $gallery->getSession(); + + $redirect = array(); + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemEdit'; + $redirect['itemId'] = $item->getId(); + $redirect['editPlugin'] = $editPlugin; + $redirect['statusId'] = $session->putStatus($status); + + $urlGenerator =& $gallery->getUrlGenerator(); + $templateAdapter->completeProgressBar($urlGenerator->generateUrl($redirect)); + + return null; + } +} + +/** + * This view will show options to edit an item + */ +class ItemEditView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + $editPlugin = GalleryUtilities::getRequestVariables('editPlugin'); + + list ($ret, $item, $wasSpecified) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + /* Make sure we have permission to edit this item */ + $ret = GalleryCoreApi::assertHasItemPermission($item->getId(), 'core.edit'); + if ($ret) { + return array($ret, null); + } + + /* Load the thumbnail */ + list ($ret, $thumbnails) = GalleryCoreApi::fetchThumbnailsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null); + } + if (!empty($thumbnails)) { + list ($ret, $thumbnail) = GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent( + $thumbnails[$item->getId()]->getId()); + if ($ret) { + /* Ignore thumbnail errors so we can edit items with broken thumbnail */ + } + } else { + $thumbnail = null; + } + + /* Get the edit plugins that support this item type */ + list ($ret, $allPluginIds) = + GalleryCoreApi::getAllFactoryImplementationIds('ItemEditPlugin'); + if ($ret) { + return array($ret, null); + } + + $pluginInstances = array(); + foreach (array_keys($allPluginIds) as $pluginId) { + list ($ret, $plugin) = + GalleryCoreApi::newFactoryInstanceById('ItemEditPlugin', $pluginId); + if ($ret) { + return array($ret, null); + } + + if ($plugin->isSupported($item, $thumbnail)) { + $pluginInstances[$pluginId] = $plugin; + } + } + + /* Define the first edit plugin as the default in case we need to fall back. */ + $editPluginIds = array_keys($pluginInstances); + $defaultEditPlugin = $editPluginIds[0]; + + /* + * If the plugin is empty get it from the session. If it's empty there, default to the + * first plugin we find. Either way, save the user's preference in the session. + */ + $session =& $gallery->getSession(); + $editPluginSessionKey = 'core.view.ItemEdit.editPlugin.' . get_class($item); + if (empty($editPlugin)) { + $editPlugin = $session->get($editPluginSessionKey); + if (empty($editPlugin) || !in_array($editPlugin, array_keys($pluginInstances))) { + $editPlugin = $defaultEditPlugin; + } + } + /* Input validation of the given editPlugin id. */ + if (!isset($pluginInstances[$editPlugin])) { + $editPlugin = $defaultEditPlugin; + } + $session->put($editPluginSessionKey, $editPlugin); + + /* Get display data for all plugins */ + $plugins = array(); + foreach ($pluginInstances as $pluginId => $plugin) { + list ($ret, $title) = $plugin->getTitle(); + if ($ret) { + return array($ret, null); + } + $plugins[] = array('title' => $title, + 'id' => $pluginId, + 'isSelected' => ($pluginId == $editPlugin)); + } + + /* Record our item serial number in the form so that all plugins can use it */ + $form['serialNumber'] = $item->getSerialNumber(); + + $ItemEdit = array(); + $ItemEdit['editPlugin'] = $editPlugin; + $ItemEdit['plugins'] = $plugins; + $ItemEdit['itemTypeNames'] = $item->itemTypeName(); + $ItemEdit['showEditThumbnail'] = $thumbnail != null; + + list ($ret, $ItemEdit['isAdmin']) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + /* Let the plugin load its template data */ + list ($ret, $ItemEdit['pluginFile'], $ItemEdit['pluginL10Domain']) = + $pluginInstances[$editPlugin]->loadTemplate($template, $form, $item, $thumbnail); + if ($ret) { + return array($ret, null); + } + + /* Get all the edit options */ + list ($ret, $optionInstances) = + ItemEditOption::getAllOptions($editPlugin, $item, $thumbnail); + if ($ret) { + return array($ret, null); + } + + /* Now let all options load their template data */ + $ItemEdit['options'] = array(); + foreach ($optionInstances as $option) { + list ($ret, $entry['file'], $entry['l10Domain']) = + $option->loadTemplate($template, $form, $item, $thumbnail); + if ($ret) { + return array($ret, null); + } + if (!empty($entry['file'])) { + $ItemEdit['options'][] = $entry; + } + } + + $template->setVariable('ItemEdit', $ItemEdit); + $template->setVariable('controller', 'core.ItemEdit'); + return array(null, array('body' => 'modules/core/templates/ItemEdit.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + global $gallery; + + list ($ret, $item) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $itemTypeNames = $item->itemTypeName(true); + + return array(null, + $core->translate(array('text' => 'edit %s', 'arg1' => $itemTypeNames[1]))); + } +} + +/** + * Interface for plugins to the ItemEdit view and controller + * @abstract + */ +class ItemEditPlugin { + /** + * Does this plugin support the given item type? + * + * @param object GalleryItem $item + * @param object GalleryDerivative $thumbnail item's thumbnail + * @return boolean true if it's supported + */ + function isSupported($item, $thumbnail) { + return false; + } + + /** + * Load the template with data from this plugin + * @see GalleryView::loadTemplate + * + * @param object GalleryTemplate $template + * @param array $form the form values + * @param object GalleryItem $item + * @param object GalleryDerivative $thumbnail item's thumbnail + * @return array object GalleryStatus a status code + * string the path to a template file to include + * string localization domain for the template file + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Let the plugin handle the incoming request + * @see GalleryController::handleRequest + * + * @param array $form the form values + * @param object GalleryItem $item + * @param object GalleryDerivative $preferred item's preferred derivative, if there is one + * @return array object GalleryStatus a status code + * array error messages + * string localized status message + * boolean true if progress bar is needed + */ + function handleRequest($form, &$item, &$preferred) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), + null, null, null); + } + + /** + * Return a localized title for this plugin, suitable for display to the user + * + * @return array object GalleryStatus a status code + * string localized title + */ + function getTitle() { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } + + /** + * Check to see if a given operation is available for any of a set of mime types + * + * @param string $operation the operation (eg. 'rotate' or 'scale') + * @param array $mimeTypes + * @return array object GalleryStatus a status code + * bool true if any of the mime types are supported + * @access protected + */ + function _checkForOperation($operation, $mimeTypes) { + foreach (array_unique($mimeTypes) as $mimeType) { + list ($ret, $toolkit) = GalleryCoreApi::getToolkitByOperation($mimeType, $operation); + if ($ret) { + return array($ret, null); + } + + if (isset($toolkit)) { + break; + } + } + + return array(null, isset($toolkit)); + } +} + +/** + * Interface for options to the ItemEdit view and controller. + * Options allow us to provide extra UI in the views and extra processing in the controller so + * that we can add new functionality to various ItemEditPlugins + * @abstract + */ +class ItemEditOption { + + /** + * Return all the available option plugins + * + * @param string $editPlugin name of ItemEditPlugin + * @param object GalleryItem $item + * @param object GalleryDerivative $thumbnail + * @return array object GalleryStatus a status code + * array object ItemEditOption instances + * @static + */ + function getAllOptions($editPlugin, $item, $thumbnail) { + list ($ret, $allOptionIds) = + GalleryCoreApi::getAllFactoryImplementationIdsWithHint('ItemEditOption', $editPlugin); + if ($ret) { + return array($ret, null); + } + + $optionInstances = array(); + foreach (array_keys($allOptionIds) as $optionId) { + list ($ret, $option) = + GalleryCoreApi::newFactoryInstanceById('ItemEditOption', $optionId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isAppropriate) = $option->isAppropriate($item, $thumbnail); + if ($ret) { + return array($ret, null); + } + + if ($isAppropriate) { + $optionInstances[$optionId] = $option; + } + } + + return array(null, $optionInstances); + } + + /** + * Load the template with data from this plugin + * @see GalleryView::loadTemplate + * + * @param object GalleryTemplate $template + * @param array $form the form values + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * string the path to a template file to include + * string localization domain for the template file + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Let the plugin handle the incoming request. We expect the $item to be locked. + * @see GalleryController::handleRequest + * + * @param array $form the form values + * @param object GalleryItem $item reference to the item + * @param object GalleryDerivative $preferred reference to preferred derivative + * @return array object GalleryStatus a status code + * array error messages + * array localized warning messages + */ + function handleRequestAfterEdit($form, &$item, &$preferred) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Is this option appropriate at this time? + * + * @param object GalleryItem $item + * @param object GalleryDerivative $thumbnail + * @return array object GalleryStatus a status code + * boolean true or false + */ + function isAppropriate($item, $thumbnail) { + return array(null, false); + } + + /** + * Will this task run so long that it requires a progress bar? + * + * @param array $form the state of the current form + * @return boolean + */ + function requiresProgressBar($form) { + return false; + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditAlbum.inc b/Source/gallery2/modules/core/ItemEditAlbum.inc new file mode 100644 index 0000000..c24f165 --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditAlbum.inc @@ -0,0 +1,769 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditAlbum extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + global $gallery; + + $status = null; + $error = array(); + $requiresProgressBar = false; + if (isset($form['action']['undo'])) { + /* + * Take no action and we'll be redirected back to the same page + * which will reset the form + */ + } else if (isset($form['action']['save'])) { + /* Validate the input data */ + if (!is_numeric($form['thumbnail']['size']) || $form['thumbnail']['size'] < 1) { + $error[] = 'form[error][thumbnail][size][invalid]'; + } + + $count = count($form['resizes']); + for ($i = 0; $i < $count; $i++) { + if (empty($form['resizes'][$i]['active'])) { + unset($form['resizes'][$i]); + } else if (empty($form['resizes'][$i]['width']) + || empty($form['resizes'][$i]['height'])) { + $error[] = 'form[error][resizes][' . $i . '][size][missing]'; + } else if (!($tmp = rtrim($form['resizes'][$i]['width'], '%')) + || !is_numeric($tmp) || $tmp < 1 + || !($tmp = rtrim($form['resizes'][$i]['height'], '%')) + || !is_numeric($tmp) || $tmp < 1) { + $error[] = 'form[error][resizes][' . $i . '][size][invalid]'; + } + } + + if (empty($error)) { + /* Delete existing derivative preferences */ + $ret = GalleryCoreApi::removeDerivativePreferencesForItem($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + $changeTypes = array(); + if (isset($form['changeInDescendents'])) { + list ($ret, $subAlbumIds) = + GalleryCoreApi::fetchDescendentAlbumItemIds($item); + if ($ret) { + return array($ret, null, null, null); + } + } + /* Add the thumbnail size back in */ + $ret = GalleryCoreApi::addDerivativePreference(0, $item->getId(), + DERIVATIVE_TYPE_IMAGE_THUMBNAIL, + 'thumbnail|' . $form['thumbnail']['size']); + if ($ret) { + return array($ret, null, null, null); + } + if (isset($form['changeInDescendents']['thumbnail'])) { + $changeTypes[] = DERIVATIVE_TYPE_IMAGE_THUMBNAIL; + } + + /* Add the resize-sizes back in */ + $i = 0; + foreach ($form['resizes'] as $resize) { + $ret = GalleryCoreApi::addDerivativePreference( + $i++, $item->getId(), DERIVATIVE_TYPE_IMAGE_RESIZE, + 'scale|' . $resize['width'] . ',' . $resize['height']); + if ($ret) { + return array($ret, null, null, null); + } + } + if (isset($form['changeInDescendents']['resizes'])) { + $changeTypes[] = DERIVATIVE_TYPE_IMAGE_RESIZE; + } + + /* Use appropriate settings in descendent albums */ + if (!empty($changeTypes) && !empty($subAlbumIds)) { + $ret = GalleryCoreApi::removeDerivativePreferenceForItemType( + $subAlbumIds, $changeTypes); + if ($ret) { + return array($ret, null, null, null); + } + if (isset($form['changeInDescendents']['thumbnail'])) { + $ret = GalleryCoreApi::addDerivativePreference(0, $subAlbumIds, + DERIVATIVE_TYPE_IMAGE_THUMBNAIL, + 'thumbnail|' . $form['thumbnail']['size']); + if ($ret) { + return array($ret, null, null, null); + } + } + if (isset($form['changeInDescendents']['resizes'])) { + $i = 0; + foreach ($form['resizes'] as $resize) { + $ret = GalleryCoreApi::addDerivativePreference( + $i++, $subAlbumIds, DERIVATIVE_TYPE_IMAGE_RESIZE, + 'scale|' . $resize['width'] . ',' . $resize['height']); + if ($ret) { + return array($ret, null, null, null); + } + } + } + } + + /* Recreate the thumbnails, if requested to do so */ + if (isset($form['recreateThumbnails'])) { + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($this, 'runRecreateThumbnails'), array($form, $item, $preferred)); + $requiresProgressBar = true; + } + + /* Recreate the resizes, if requested to do so */ + if (isset($form['recreateResizes'])) { + $templateAdapter =& $gallery->getTemplateAdapter(); + $templateAdapter->registerTrailerCallback( + array($this, 'runRecreateResizes'), array($form, $item, $preferred)); + $requiresProgressBar = true; + } + + /* Save basic settings */ + if (!empty($form['presort'])) { + $item->setOrderBy($form['presort'] . '|' . $form['orderBy']); + } else { + $item->setOrderBy($form['orderBy']); + } + if (isset($form['orderDirection'])) { + $item->setOrderDirection($form['orderDirection']); + } + $item->setSerialNumber($form['serialNumber']); + + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + + /* for sort order we need to load subalbums */ + if (!empty($subAlbumIds) && isset($form['changeInDescendents']['sort'])) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($subAlbumIds); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $subAlbums) = GalleryCoreApi::loadEntitiesById($subAlbumIds); + if ($ret) { + return array($ret, null, null, null); + } + foreach ($subAlbums as $album) { + if (isset($form['changeInDescendents']['sort'])) { + if (!empty($form['presort'])) { + $album->setOrderBy($form['presort'] . '|' . $form['orderBy']); + } else { + $album->setOrderBy($form['orderBy']); + } + if (isset($form['orderDirection'])) { + $album->setOrderDirection($form['orderDirection']); + } + } + $ret = $album->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null, null, null); + } + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + } + + /* Prepare our status message */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + $status = $module->translate('Settings saved successfully.'); + } + } + + return array(null, $error, $status, $requiresProgressBar); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + if ($form['formName'] != 'ItemEditAlbum') { + $tmp = explode('|', $item->getOrderBy(), 2); + if (count($tmp) < 2) { + $form['orderBy'] = $item->getOrderBy(); + $form['presort'] = ''; + } else { + $form['orderBy'] = $tmp[1]; + $form['presort'] = $tmp[0]; + } + $form['orderDirection'] = $item->getOrderDirection(); + $form['formName'] = 'ItemEditAlbum'; + + /* Load up the data for the resizes table */ + list ($ret, $preferences) = + GalleryCoreApi::fetchDerivativePreferencesForItem($item->getId()); + if ($ret) { + return array($ret, null, null); + } + + foreach ($preferences as $preference) { + if (preg_match('/(?:resize|scale|thumbnail)\|(\d+%?)(?:,(\d+%?))?/', + $preference['derivativeOperations'], $matches)) { + $size = $matches[1]; + $height = empty($matches[2]) ? $size : $matches[2]; + } + + switch ($preference['derivativeType']) { + case DERIVATIVE_TYPE_IMAGE_THUMBNAIL: + $form['thumbnail']['size'] = $size; + break; + + case DERIVATIVE_TYPE_IMAGE_RESIZE: + if (empty($size)) { + $form['resizes'][] = array('active' => 0, 'width' => '', 'height' => ''); + } else { + $form['resizes'][] = array('active' => 1, 'width' => $size, + 'height' => $height); + } + break; + } + } + + /* Tag on a few form blanks */ + if (empty($form['resizes'])) { + $extraBlanks = 3; + } else { + $extraBlanks = max(2 - count($form['resizes']), 0) + 1; + } + + while ($extraBlanks-- > 0) { + $form['resizes'][] = array('active' => 0, 'width' => '', 'height' => ''); + } + + /* Always force these to be false */ + $form['recreateThumbnails'] = false; + $form['recreateResizes'] = false; + $form['buildThumbnails'] = false; + $form['buildResizes'] = false; + } + + /* Checkboxes are annoying in that they are empty if false */ + $form['recreateThumbnails'] = !empty($form['recreateThumbnails']); + $form['recreateResizes'] = !empty($form['recreateThumbnails']); + $form['buildThumbnails'] = !empty($form['buildThumbnails']); + $form['buildResizes'] = !empty($form['buildResizes']); + for ($i = 0; $i < count($form['resizes']); $i++) { + $form['resizes'][$i]['active'] = !empty($form['resizes'][$i]['active']); + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + /* Set up our sort order selection list */ + GalleryCoreApi::requireOnce('modules/core/classes/GallerySortInterface_1_2.class'); + list ($ret, $orderByList, $presortList, $orderDirectionList) = + GallerySortInterface_1_2::getAllSortOrders(); + if ($ret) { + return array($ret, null, null); + } + + $ItemEditAlbum['orderByList'] = $orderByList; + $ItemEditAlbum['presortList'] = $presortList; + $ItemEditAlbum['orderDirectionList'] = $orderDirectionList; + + $template->setVariable('ItemEditAlbum', $ItemEditAlbum); + $template->setVariable('controller', 'core.ItemEditAlbum'); + return array(null, + 'modules/core/templates/ItemEditAlbum.tpl', 'modules_core'); + } + + function runRecreateResizes($form, $item, $preferred) { + global $gallery; + $storage =& $gallery->getStorage(); + $templateAdapter =& $gallery->getTemplateAdapter(); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return $ret; + } + $heading = $module->translate('Apply resized image settings'); + $templateAdapter->updateProgressBar($heading, $module->translate('Preparing...'), 0); + + /* Get the items to process */ + if (empty($form['changeInDescendents']['recreateResizes'])) { + list ($ret, $childIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($item->getId(), 'core.edit'); + if ($ret) { + return $ret; + } + } else { + list ($ret, $childIds) = + GalleryCoreApi::fetchDescendentItemIds($item, null, null, 'core.edit'); + if ($ret) { + return $ret; + } + } + + $batchSize = 100; + $total = count($childIds); + $ind = 0; + $step = min(200, intval($total / 20) + 1); + $resizePrefs = array(); + while (!empty($childIds)) { + $currentChildIds = array_splice($childIds, 0, $batchSize); + /* Load the children */ + list ($ret, $childItems) = GalleryCoreApi::loadEntitiesById($currentChildIds); + if ($ret) { + return $ret; + } + + /* Load existing resizes */ + list ($ret, $resizesSet) = GalleryCoreApi::fetchResizesByItemIds($currentChildIds); + if ($ret) { + return $ret; + } + $resizesTable = array(); + foreach ($resizesSet as $childId => $resizes) { + foreach ($resizes as $resize) { + $resizesTable[$childId][$resize->getDerivativeOperations()] = $resize; + } + } + + /* Update the resizes */ + foreach ($childItems as $child) { + if (!(++$ind % $step)) { + $message = $module->translate(array('text' => 'Processing image %d of %d', + 'arg1' => $ind, 'arg2' => $total)); + $templateAdapter->updateProgressBar($heading, $message, $ind / $total); + } + if (!GalleryUtilities::isA($child, 'GalleryDataItem')) { + continue; + } + + $childId = $child->getId(); + $albumId = $child->getParentId(); + if (!isset($resizePrefs[$albumId])) { + /* Keep resizes for albums in memory */ + list ($ret, $preferences) = + GalleryCoreApi::fetchDerivativePreferencesForItem($albumId); + if ($ret) { + return $ret; + } + + $resizePrefs[$albumId] = array(); + foreach ($preferences as $preference) { + if ($preference['derivativeType'] == DERIVATIVE_TYPE_IMAGE_RESIZE + && preg_match('/(?:resize|scale)\|(\d+)(?:,(\d+))?/', + $preference['derivativeOperations'], $matches)) { + $width = $matches[1]; + $height = empty($matches[2]) ? $width : $matches[2]; + $resizePrefs[$albumId][] = + array('operations' => $preference['derivativeOperations'], + 'width' => $width, 'height' => $height); + } + } + } + + list ($ret, $source) = GalleryCoreApi::fetchPreferredSource($child); + if ($ret) { + return $ret; + } + $mimeType = $source->getMimeType(); + + /* Determine operations and check against existing resizes */ + $newResizes = array(); + for ($i = 0; $i < count($resizePrefs[$albumId]); $i++) { + if (!isset($resizePrefs[$albumId][$i][$mimeType])) { + list ($ret, $resizePrefs[$albumId][$i][$mimeType]['operations'], + $resizePrefs[$albumId][$i][$mimeType]['outputMimeType']) = + GalleryCoreApi::makeSupportedViewableOperationSequence( + $mimeType, $resizePrefs[$albumId][$i]['operations'], false); + if ($ret) { + return $ret; + } + } + $resize = $resizePrefs[$albumId][$i]; + + /* Validate toolkit support before adding back the resizes */ + if (empty($resize[$mimeType]['operations'])) { + continue; + } + $operations = $resize[$mimeType]['operations']; + + /* Special case to make sure that we don't upsample photos */ + if (GalleryUtilities::isA($child, 'GalleryPhotoItem') + && $child->getWidth() <= $resize['width'] + && $child->getHeight() <= $resize['height']) { + continue; + } + + if (isset($resizesTable[$childId][$operations])) { + /* Keep existing resize, build it if requested */ + if (!empty($form['buildResizes'])) { + list ($ret) = GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent( + $resizesTable[$childId][$operations]->getId()); + if ($ret) { + return $ret; + } + } + unset($resizesTable[$childId][$operations]); + } else { + /* Create resize with these settings on next pass */ + $newResizes[] = $resize; + } + } + /* Add new resizes, using existing derivative entities until we run out */ + foreach ($newResizes as $resize) { + if (!empty($resizesTable[$childId])) { + $derivative = array_shift($resizesTable[$childId]); + list ($ret, $lockId) = + GalleryCoreApi::acquireWriteLock($derivative->getId()); + if ($ret) { + return $ret; + } + } else { + list ($ret, $derivative) = GalleryCoreApi::newFactoryInstanceByHint( + 'GalleryDerivative', $source->getEntityType()); + if ($ret) { + return $ret; + } + if (!isset($derivative)) { + return GalleryCoreApi::error(ERROR_MISSING_OBJECT); + } + + $ret = $derivative->create($childId, DERIVATIVE_TYPE_IMAGE_RESIZE); + if ($ret) { + return $ret; + } + } + + $derivative->setDerivativeSourceId($source->getId()); + $derivative->setDerivativeOperations($resize[$mimeType]['operations']); + $derivative->setMimeType($resize[$mimeType]['outputMimeType']); + + $ret = GalleryCoreApi::estimateDerivativeDimensions($derivative, $source); + if ($ret) { + return $ret; + } + + $ret = $derivative->save(); + if ($ret) { + return $ret; + } + if (isset($lockId)) { + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + $lockId = null; + } + /* Build if requested */ + if (!empty($form['buildResizes'])) { + list ($ret) = GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent( + $derivative->getId()); + if ($ret) { + return $ret; + } + } + } + /* Remove any leftover resizes */ + if (isset($resizesTable[$childId])) { + foreach ($resizesTable[$childId] as $resize) { + $ret = GalleryCoreApi::deleteEntityById($resize->getId()); + if ($ret) { + return $ret; + } + } + } + } + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + } + $templateAdapter->updateProgressBar($heading, '', 1); + $redirect = array('view' => 'core.ItemAdmin', 'subView' => 'core.ItemEdit', + 'itemId' => $item->getId()); + + $urlGenerator =& $gallery->getUrlGenerator(); + $templateAdapter->completeProgressBar($urlGenerator->generateUrl($redirect)); + + return null; + } + + function runRecreateThumbnails($form, $item, $preferred) { + global $gallery; + $storage =& $gallery->getStorage(); + $templateAdapter =& $gallery->getTemplateAdapter(); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return $ret; + } + $heading = $module->translate('Apply thumbnail settings'); + $templateAdapter->updateProgressBar($heading, $module->translate('Preparing...'), 0); + + /* Get the items to process */ + if (empty($form['changeInDescendents']['recreateThumbnails'])) { + list ($ret, $childIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($item->getId(), 'core.edit'); + if ($ret) { + return $ret; + } + } else { + list ($ret, $childIds) = + GalleryCoreApi::fetchDescendentItemIds($item, null, null, 'core.edit'); + if ($ret) { + return $ret; + } + } + + $batchSize = 100; + $total = count($childIds); + $ind = 0; + $step = min(500, intval($total / 20) + 1); + $thumbnailSizes = $thumbnailBuild = array(); + while (!empty($childIds)) { + $currentChildIds = array_splice($childIds, 0, $batchSize); + /* Load the children */ + list ($ret, $childItems) = GalleryCoreApi::loadEntitiesById($currentChildIds); + if ($ret) { + return $ret; + } + /* Load the thumbnail of the children */ + list ($ret, $thumbTable) = GalleryCoreApi::fetchThumbnailsByItemIds($currentChildIds); + if ($ret) { + return $ret; + } + + $lockIds = array(); + foreach ($childItems as $child) { + if (!(++$ind % $step) || $ind == $total) { + $message = $module->translate(array('text' => 'Processing image %d of %d', + 'arg1' => $ind, 'arg2' => $total)); + $templateAdapter->updateProgressBar($heading, $message, $ind / $total); + } + + $childId = $child->getId(); + $albumId = $child->getParentId(); + if (empty($thumbnailSizes[$albumId])) { + /* Keep thumbnail sizes for albums in memory */ + list ($ret, $preferences) = + GalleryCoreApi::fetchDerivativePreferencesForItem($albumId); + if ($ret) { + return $ret; + } + + foreach ($preferences as $preference) { + if (preg_match('/thumbnail\|(\d+)/', + $preference['derivativeOperations'], $matches)) { + $thumbnailSizes[$albumId] = $matches[1]; + break; + } + } + if (empty($thumbnailSizes[$albumId])) { + return GalleryCoreApi::error(ERROR_MISSING_OBJECT); + } + } + $thumbnailSize = $thumbnailSizes[$albumId]; + $thumbnail = null; + if (isset($thumbTable[$childId])) { + /* We already have a thumbnail */ + $thumbnail = $thumbTable[$childId]; + $sourceId = $thumbnail->getDerivativeSourceId(); + + /* Load the source of the thumbnail */ + list ($ret, $source) = GalleryCoreApi::loadEntitiesById($sourceId); + if ($ret && $ret->getErrorCode() & ERROR_MISSING_OBJECT) { + /* Someone deleted the source image, we can only delete the thumbnail */ + list ($ret, $lockIds[]) = + GalleryCoreApi::acquireWriteLock($thumbnail->getId()); + if ($ret) { + return $ret; + } + $ret = $thumbnail->delete(); + if ($ret) { + return $ret; + } + continue; + } else if ($ret) { + return $ret; + } + + $operation = preg_replace('/((^|;)thumbnail)\|\d+/', + '$1|' . $thumbnailSize, + $thumbnail->getDerivativeOperations()); + } else { + /* + * There is no thumbnail yet (maybe the file was uploaded when there was no + * graphic toolkit). Build new thumbnail from source if it's a GalleryDataItem. + */ + if (!GalleryUtilities::isA($child, 'GalleryDataItem')) { + /* It's an album or something else, we can't make a thumbnail */ + continue; + } + + list ($ret, $source) = GalleryCoreApi::fetchPreferredSource($child); + if ($ret) { + return $ret; + } + + list ($ret, $thumbnail) = + GalleryCoreApi::newFactoryInstanceByHint('GalleryDerivative', + $source->getEntityType()); + if ($ret) { + return $ret; + } + + $ret = $thumbnail->create($child->getId(), DERIVATIVE_TYPE_IMAGE_THUMBNAIL); + if ($ret) { + return $ret; + } + + $operation = 'thumbnail|' . $thumbnailSize; + } + + if ($thumbnail == null) { + return GalleryCoreApi::error(ERROR_MISSING_OBJECT); + } + + /* Change the thumbnail */ + list ($ret, $operation, $outputMimeType) = + GalleryCoreApi::makeSupportedViewableOperationSequence( + $source->getMimeType(), $operation); + if ($ret) { + return $ret; + } + + if (!empty($operation)) { + $thumbnail->setMimeType($outputMimeType); + $thumbnail->setDerivativeSourceId($source->getId()); + $thumbnail->setDerivativeOperations($operation); + $thumbnail->expireCache(); + + if ($thumbnail->isModified()) { + list ($ret, $lockIds[]) = + GalleryCoreApi::acquireWriteLock($thumbnail->getId()); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::estimateDerivativeDimensions($thumbnail, $source); + if ($ret) { + return $ret; + } + + $ret = $thumbnail->save(); + if ($ret) { + return $ret; + } + } + + if (!empty($form['buildThumbnails'])) { + $thumbnailBuild[] = $thumbnail->getId(); + } + } + } + $ret = GalleryCoreApi::releaseLocks($lockIds); + if ($ret) { + return $ret; + } + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + } + + /* Build thumbnails if requested */ + if (!empty($thumbnailBuild)) { + $message = $module->translate('Rebuilding thumbnails...'); + $templateAdapter->updateProgressBar($heading, $message, 0); + $total = count($thumbnailBuild); + $ind = 0; + $step = min(500, intval($total / 20) + 1); + } + foreach ($thumbnailBuild as $thumbnailId) { + list ($ret) = GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($thumbnailId); + if ($ret) { + return $ret; + } + if (!(++$ind % $step) || $ind == $total) { + $templateAdapter->updateProgressBar($heading, $message, $ind / $total); + } + if (!($ind % $batchSize)) { + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + } + } + + if (!isset($form['recreateResizes'])) { + /* Don't show "Complete" yet if there is another task */ + $redirect = array('view' => 'core.ItemAdmin', 'subView' => 'core.ItemEdit', + 'itemId' => $item->getId()); + + $urlGenerator =& $gallery->getUrlGenerator(); + $templateAdapter->completeProgressBar($urlGenerator->generateUrl($redirect)); + } + return null; + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryAlbumItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Album')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditAnimation.inc b/Source/gallery2/modules/core/ItemEditAnimation.inc new file mode 100644 index 0000000..24f412b --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditAnimation.inc @@ -0,0 +1,132 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditAnimation extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + global $gallery; + + $status = null; + $error = array(); + + /* Figure out which command we're taking */ + if (isset($form['action']['save'])) { + + if (isset($form['width']) && $form['width'] < 0) { + $error[] = 'form[error][width][invalid]'; + } else { + $form['width'] = (int)$form['width']; + } + + if (isset($form['height']) && $form['height'] < 0) { + $error[] = 'form[error][height][invalid]'; + } else { + $form['height'] = (int)$form['height']; + } + + if (empty($error)) { + list ($ret, $lock) = GalleryCoreApi::acquireWriteLock($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $item) = $item->refresh(); + if ($ret) { + GalleryCoreApi::releaseLocks($lock); + return array($ret, null, null, null); + } + + $item->setWidth($form['width']); + $item->setHeight($form['height']); + $item->setSerialNumber($form['serialNumber']); + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lock); + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lock); + if ($ret) { + return array($ret, null, null, null); + } + + /* Prepare our status message */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + $status = $module->translate('Changes saved successfully'); + } + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + global $gallery; + + if ($form['formName'] != 'ItemEditAnimation') { + /* First time around, load the form with item data */ + $form['width'] = $item->getWidth(); + $form['height'] = $item->getHeight(); + $form['formName'] = 'ItemEditAnimation'; + } + + $ItemEditAnimation = array(); + $template->setVariable('ItemEditAnimation', $ItemEditAnimation); + $template->setVariable('controller', 'core.ItemEditAnimation'); + return array(null, + 'modules/core/templates/ItemEditAnimation.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryAnimationItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Animation Size')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditCaptions.inc b/Source/gallery2/modules/core/ItemEditCaptions.inc new file mode 100644 index 0000000..4392b9e --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditCaptions.inc @@ -0,0 +1,267 @@ + + * @author Changpeng Zhao + * @version $Revision: 15513 $ + */ +class ItemEditCaptionsController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + list ($itemId, $page) = GalleryUtilities::getRequestVariables('itemId', 'page'); + + $status = $error = array(); + if (isset($form['action']['save'])) { + $ids = array_keys($form['items']); + + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($ids); + if ($ret) { + return array($ret, null); + } + + /* We'll check permissions one at a time below, but precache them now */ + $ret = GalleryCoreApi::studyPermissions($ids); + if ($ret) { + return array($ret, null); + } + + list ($ret, $items) = GalleryCoreApi::loadEntitiesById($ids); + if ($ret) { + return array($ret, null); + } + + list ($ret, $markup) = + GalleryCoreApi::getPluginParameter('module', 'core', 'misc.markup'); + if ($ret) { + return array($ret, null); + } + + $status['successCount'] = 0; + $status['errorCount'] = 0; + foreach ($items as $item) { + /* Make sure we have permission to edit this item */ + list ($ret, $permissions) = GalleryCoreApi::getPermissions($item->getId()); + if ($ret) { + return array($ret, null); + } + + $id = $item->getId(); + if (isset($permissions['core.edit'])) { + if ($item->getSerialNumber() == $form['items'][$id]['serialNumber']) { + if ($markup == 'html') { + /* Strip malicious content if html markup allowed */ + $form['items'][$id]['title'] = + GalleryUtilities::htmlSafe($form['items'][$id]['title'], true); + $form['items'][$id]['summary'] = + GalleryUtilities::htmlSafe($form['items'][$id]['summary'], true); + $form['items'][$id]['description'] = + GalleryUtilities::htmlSafe($form['items'][$id]['description'], true); + } + + $item->setTitle($form['items'][$id]['title']); + $item->setSummary($form['items'][$id]['summary']); + $item->setKeywords($form['items'][$id]['keywords']); + $item->setDescription($form['items'][$id]['description']); + + $ret = $item->save(); + if ($ret) { + return array($ret, null); + } + $status[$id]['saved'] = 1; + $status['successCount']++; + } else { + $status[$id]['obsolete'] = 1; + $status['errorCount']++; + } + } else { + $status[$id]['permissionDenied'] = 1; + $status['errorCount']++; + } + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + /* + * Figure out where to redirect. We always redirect even if we have + * an error since we may have saved some items, but not others. + */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemEditCaptions'; + $redirect['itemId'] = (int)$itemId; + if (!$status['errorCount'] && isset($form['action']['save']['next'])) { + $redirect['page'] = $page + 1; + } else if (!$status['errorCount'] && isset($form['action']['save']['previous'])) { + $redirect['page'] = max($page-1, 0); + } else if (!$status['errorCount'] && isset($form['action']['save']['done'])) { + $results['return'] = 1; + $redirect['page'] = (int)$page; + } else { + $redirect['page'] = (int)$page; + } + } else if (isset($form['action']['cancel'])) { + $results['return'] = 1; + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemEditCaptions'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will allow the user to edit many item captions at once. + */ +class ItemEditCaptionsView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + list ($itemId, $page, $selectedId, $albumPage) = + GalleryUtilities::getRequestVariables('itemId', 'page', 'selectedId', 'albumPage'); + + if ($form['formName'] != 'ItemEditCaption') { + $form['formName'] = 'ItemEditCaption'; + $form['numPerPage'] = 9; + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $childIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($itemId, 'core.edit'); + if ($ret) { + return array($ret, null); + } + + $form['childItems'] = array(); + $numPages = 1; + $numPages = ceil(sizeof($childIds) / $form['numPerPage']); + if (empty($page) && !empty($selectedId)) { + /* No page given. Determine which page we're on from the selectedId */ + for ($i = 0; $i < count($childIds); $i++) { + if ($childIds[$i] == $selectedId) { + $page = ceil(($i + 1) / $form['numPerPage']); + } + } + } + if (empty($page) && !empty($albumPage)) { + /* Still no page. Determine which page we're on from albumPage */ + list ($ret, $theme) = $this->loadThemeForItem($item); + if ($ret) { + return array($ret, null); + } + list ($ret, $params) = $theme->fetchParameters($itemId); + if ($ret) { + return array($ret, null); + } + $albumPageSize = $theme->getPageSize($params); + if (!empty($albumPageSize)) { + $page = ceil((($albumPage - 1) * $albumPageSize + 1) / $form['numPerPage']); + } + } + if (empty($page)) { + $page = 1; + } + + $start = $form['numPerPage'] * ($page - 1); + $childIds = array_slice($childIds, $start, $form['numPerPage']); + + list ($ret, $childItems) = GalleryCoreApi::loadEntitiesById($childIds); + if ($ret) { + return array($ret, null); + } + + /* Get child thumbnails and resizes */ + list ($ret, $derivatives) = GalleryCoreApi::fetchDerivativesByItemIds($childIds); + if ($ret) { + return array($ret, null); + } + + /* build peers table */ + foreach ($childItems as $child) { + $childId = $child->getId(); + $form['items'][$childId] = (array)$child; + + /* While we're at it, attach thumbnails and resizes */ + if (isset($derivatives[$childId])) { + foreach ($derivatives[$childId] as $derivative) { + $type = $derivative->getDerivativeType(); + if (empty($form['items'][$childId]['resize']) && + $type == DERIVATIVE_TYPE_IMAGE_RESIZE) { + $form['items'][$childId]['resize'] = (array)$derivative; + } else if ($type == DERIVATIVE_TYPE_IMAGE_THUMBNAIL) { + $form['items'][$childId]['thumbnail'] = (array)$derivative; + } + } + } + } + } + + $urlGenerator =& $gallery->getUrlGenerator(); + + $ItemEditCaptions = array(); + $ItemEditCaptions['canCancel'] = $urlGenerator->isNavigationBackPossible(); + $ItemEditCaptions['page'] = $page; + $ItemEditCaptions['numPages'] = $numPages; + + $template->setVariable('ItemEditCaptions', $ItemEditCaptions); + $template->setVariable('controller', 'core.ItemEditCaptions'); + $template->javascript('lib/yui/yahoo-min.js'); + $template->javascript('lib/yui/dom-min.js'); + $template->javascript('lib/yui/event-min.js'); + $template->javascript('lib/yui/container-min.js'); + return array(null, array('body' => 'modules/core/templates/ItemEditCaptions.tpl')); + + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('edit captions')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditItem.inc b/Source/gallery2/modules/core/ItemEditItem.inc new file mode 100644 index 0000000..5956641 --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditItem.inc @@ -0,0 +1,412 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditItem extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + global $gallery; + + $status = null; + $error = array(); + if (isset($form['action']['undo'])) { + /* + * Take no action and we'll be redirected back to the same page which will + * reset the form. + */ + } else if (isset($form['action']['save'])) { + list ($ret, $rootAlbumId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.rootAlbum'); + if ($ret) { + return array($ret, null, null, null); + } + + $isRootAlbum = $item->getId() == $rootAlbumId; + + /* Validate the input data. */ + $platform =& $gallery->getPlatform(); + + foreach (array('title', 'summary', 'keywords', 'description') as $key) { + if (!empty($form[$key]) && is_string($form[$key])) { + $form[$key] = trim($form[$key]); + } else { + $form[$key] = null; + } + } + + if (!$isRootAlbum) { + if (empty($form['pathComponent']) || !is_string($form['pathComponent'])) { + $error[] = 'form[error][pathComponent][missing]'; + $form['pathComponent'] = ''; + } else if (!$platform->isLegalPathComponent($form['pathComponent'])) { + $error[] = 'form[error][pathComponent][invalid]'; + } + } + + if ($isRootAlbum) { + if (empty($form['title'])) { + $error[] = 'form[error][title][missingRootTitle]'; + } + } + + if (!empty($form['originationTimestampSplit'])) { + $newOriginationTimestamp = mktime($form['originationTimestampSplit']['Time_Hour'], + $form['originationTimestampSplit']['Time_Minute'], + $form['originationTimestampSplit']['Time_Second'], + $form['originationTimestampSplit']['Date_Month'], + $form['originationTimestampSplit']['Date_Day'], + $form['originationTimestampSplit']['Date_Year']); + GalleryUtilities::putRequestVariable( + 'form[originationTimestamp]', $newOriginationTimestamp); + } + + if (!empty($form['thumbnail']['size']) && + (!is_numeric($form['thumbnail']['size']) || $form['thumbnail']['size'] < 0)) { + $error[] = 'form[error][thumbnail][size][invalid]'; + } + + if (empty($error) && isset($form['thumbnail']['size'])) { + /* Load the thumbnail */ + list ($ret, $thumbnail) = + GalleryCoreApi::fetchThumbnailsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null, null, null); + } + $thumbnail = empty($thumbnail) ? null : $thumbnail[$item->getId()]; + + if (!isset($thumbnail) && $form['thumbnail']['size'] > 0) { + if (GalleryUtilities::isA($item, 'GalleryAlbumItem')) { + /* Create album highlight (with default thumbnail size) */ + list ($ret) = GalleryCoreApi::guaranteeAlbumHasThumbnail($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + list ($ret, $thumbnail) = + GalleryCoreApi::fetchThumbnailsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null, null, null); + } + if (empty($thumbnail)) { + $error[] = 'form[error][thumbnail][create][forAlbum]'; + $thumbnail = null; + } else { + $thumbnail = $thumbnail[$item->getId()]; + } + } else { + /* Prepare new thumbnail source and toolkit operations */ + list ($ret, $source) = GalleryCoreApi::fetchPreferredSource($item); + if ($ret) { + return array($ret, null, null, null); + } + if (isset($source)) { + list ($ret, $operations, $outputMimeType) = + GalleryCoreApi::makeSupportedViewableOperationSequence( + $source->getMimeType(), + 'thumbnail|' . $form['thumbnail']['size']); + if ($ret) { + return array($ret, null, null, null); + } + } + if (!isset($operations)) { + $error[] = 'form[error][thumbnail][create][forItem]'; + } + } + } + + if (isset($thumbnail) && $form['thumbnail']['size'] > 0) { + /* Change the thumbnail */ + $thumbnail->setDerivativeOperations( + preg_replace('/((^|;)thumbnail)\|\d+/', '$1|' . + $form['thumbnail']['size'], + $thumbnail->getDerivativeOperations())); + + if ($thumbnail->isModified()) { + list ($ret, $lockId) = + GalleryCoreApi::acquireWriteLock($thumbnail->getId()); + if ($ret) { + return array($ret, null, null, null); + } + $ret = $thumbnail->save(); + if ($ret) { + return array($ret, null, null, null); + } + $ret = GalleryCoreApi::releaseLocks(array($lockId)); + if ($ret) { + return array($ret, null, null, null); + } + } + } else if (isset($thumbnail) && empty($form['thumbnail']['size'])) { + /* Delete the thumbnail */ + $ret = GalleryCoreApi::deleteEntityById($thumbnail->getId()); + if ($ret) { + return array($ret, null, null, null); + } + } else if ($form['thumbnail']['size'] > 0 && empty($error)) { + /* Create the thumbnail */ + list ($ret, $thumbnail) = + GalleryCoreApi::newFactoryInstanceByHint('GalleryDerivative', + $source->getEntityType()); + if ($ret) { + return array($ret, null, null, null); + } + if (!isset($thumbnail)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), + null, null, null); + } + + $ret = $thumbnail->create($item->getId(), DERIVATIVE_TYPE_IMAGE_THUMBNAIL); + if ($ret) { + return array($ret, null, null, null); + } + + $thumbnail->setMimeType($outputMimeType); + $thumbnail->setDerivativeSourceId($source->getId()); + $thumbnail->setDerivativeOperations($operations); + + $ret = $thumbnail->save(); + if ($ret) { + return array($ret, null, null, null); + } + } + } + + if (empty($error)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + /* + * It's possible to get a collision when we rename, so try that + * first. If there's no collision then make the rest of the changes. + */ + $originalPathComponent = $item->getPathComponent(); + if (isset($form['pathComponent']) && + $item->getPathComponent() != $form['pathComponent']) { + if ($isRootAlbum) { + GalleryCoreApi::releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), + null, null, null); + } else { + $ret = $item->rename($form['pathComponent']); + if ($ret && !($ret->getErrorCode() & ERROR_COLLISION)) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null, null, null); + } + } + } + + if ($ret && $ret->getErrorCode() & ERROR_COLLISION) { + $error[] = 'form[error][pathComponent][collision]'; + } else { + list ($ret, $markup) = + GalleryCoreApi::getPluginParameter('module', 'core', 'misc.markup'); + if ($ret) { + return array($ret, null, null, null); + } + if ($markup == 'html') { + /* Strip malicious content if html markup allowed */ + $form['title'] = GalleryUtilities::htmlSafe($form['title'], true); + $form['summary'] = GalleryUtilities::htmlSafe($form['summary'], true); + $form['description'] = + GalleryUtilities::htmlSafe($form['description'], true); + } + + $item->setTitle($form['title']); + $item->setSummary($form['summary']); + $item->setKeywords($form['keywords']); + $item->setDescription($form['description']); + $item->setSerialNumber($form['serialNumber']); + + /* Change the originationTimestamp */ + if (!empty($newOriginationTimestamp)) { + $item->setOriginationTimestamp($newOriginationTimestamp); + } + + $ret = $item->save(); + if ($ret) { + if (isset($form['pathComponent']) && + $originalPathComponent != $form['pathComponent']) { + /* + * Move the file back and hope that this succeeds + * since we're already in an error state + */ + $item->rename($originalPathComponent); + } + + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null, null, null); + } + + /* Prepare our status message */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + $status = $module->translate('Changes saved successfully'); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + } + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + global $gallery; + $platform =& $gallery->getPlatform(); + + if ($form['formName'] != 'ItemEditItem') { + /* First time around, load the form with item data */ + $form['formName'] = 'ItemEditItem'; + + $form['title'] = $item->getTitle(); + $form['summary'] = $item->getSummary(); + $form['keywords'] = $item->getKeywords(); + $form['description'] = $item->getDescription(); + $form['pathComponent'] = $item->getPathComponent(); + $form['originationTimestamp'] = $item->getOriginationTimestamp(); + + $form['thumbnail']['size'] = null; + if (!empty($thumbnail) && preg_match('/thumbnail\|(\d+)/', + $thumbnail->getDerivativeOperations(), + $matches)) { + $form['thumbnail']['size'] = $matches[1]; + } + } + + foreach (array('title', 'description', 'summary', 'pathComponent') as $key) { + if (!empty($form[$key]) && !is_string($form[$key])) { + $form[$key] = ''; + } + } + + list ($ret, $rootAlbumId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.rootAlbum'); + if ($ret) { + return array($ret, null, null); + } + + $can = array('createThumbnail' => false); + $can['changePathComponent'] = $can['editThumbnail'] = ($item->getId() != $rootAlbumId); + + if (GalleryUtilities::isA($item, 'GalleryAlbumItem')) { + $can['createThumbnail'] = true; + if (!isset($thumbnail)) { + list ($ret, $childIds) = GalleryCoreApi::fetchChildItemIds($item, 0, 1); + if ($ret) { + return array($ret, null, null); + } + if (empty($childIds)) { + $can['editThumbnail'] = false; + } + } + } else if (isset($thumbnail) && $thumbnail->getDerivativeSourceId() != $item->getId()) { + list ($ret, $source) = + GalleryCoreApi::loadEntitiesById($thumbnail->getDerivativeSourceId()); + if ($ret) { + return array($ret, null, null); + } + list ($ret, $can['createThumbnail']) = GalleryCoreApi::isSupportedOperationSequence( + $source->getMimeType(), $thumbnail->getDerivativeOperations()); + if ($ret) { + return array($ret, null, null); + } + } else if (method_exists($item, 'getMimeType')) { + list ($ret, $operations) = GalleryCoreApi::makeSupportedViewableOperationSequence( + $item->getMimeType(), 'thumbnail|150'); + if ($ret) { + return array($ret, null, null); + } + $can['createThumbnail'] = isset($operations); + } + + $ItemEditItem = array('can' => $can, + 'typeName' => $item->itemTypeName()); + + /* The originateTimestamp that we can get from our toolkits */ + list ($ret, $originationTimestamp) = GalleryCoreApi::fetchOriginationTimestamp($item); + if ($ret) { + return array($ret, null, null); + } + if ($originationTimestamp > 0) { + $ItemEditItem['originationTimestamp'] = array( + 'timestamp' => $originationTimestamp, + 'Time_Hour' => $platform->strftime('%H', $originationTimestamp), + 'Time_Minute' => $platform->strftime('%M', $originationTimestamp), + 'Time_Second' => $platform->strftime('%S', $originationTimestamp), + 'Date_Day' => ltrim($platform->strftime('%d', $originationTimestamp), '0'), + 'Date_Month' => $platform->strftime('%m', $originationTimestamp), + 'Date_Year' => $platform->strftime('%Y', $originationTimestamp), + ); + } + + /* The template needs to differentiate some important itemTypes */ + if (GalleryUtilities::isA($item, 'GalleryPhotoItem')) { + $ItemEditItem['isItemPhoto'] = true; + } else if (GalleryUtilities::isA($item, 'GalleryUnknownItem')) { + $ItemEditItem['isItemUnknown'] = true; + } + + /* Render the HTML body */ + $template->setVariable('ItemEditItem', $ItemEditItem); + $template->setVariable('controller', 'core.ItemEditItem'); + + return array(null, + 'modules/core/templates/ItemEditItem.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('General')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditMovie.inc b/Source/gallery2/modules/core/ItemEditMovie.inc new file mode 100644 index 0000000..b4ab8d5 --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditMovie.inc @@ -0,0 +1,134 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditMovie extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + global $gallery; + + $status = null; + $error = array(); + + /* Figure out which command we're taking */ + if (isset($form['action']['save'])) { + + /* Missing values get set to 0 */ + if (isset($form['width']) && $form['width'] < 0) { + $error[] = 'form[error][width][invalid]'; + } else { + $form['width'] = (int)$form['width']; + } + + if (isset($form['height']) && $form['height'] < 0) { + $error[] = 'form[error][height][invalid]'; + } else { + $form['height'] = (int)$form['height']; + } + + if (empty($error)) { + list ($ret, $lock) = GalleryCoreApi::acquireWriteLock($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $item) = $item->refresh(); + if ($ret) { + GalleryCoreApi::releaseLocks($lock); + return array($ret, null, null, null); + } + + $item->setWidth($form['width']); + $item->setHeight($form['height']); + $item->setSerialNumber($form['serialNumber']); + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lock); + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lock); + if ($ret) { + return array($ret, null, null, null); + } + + /* Prepare our status message */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + $status = $module->translate('Changes saved successfully'); + } + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + global $gallery; + + if ($form['formName'] != 'ItemEditMovie') { + /* First time around, load the form with item data */ + $form['width'] = $item->getWidth(); + $form['height'] = $item->getHeight(); + $form['formName'] = 'ItemEditMovie'; + } + + $ItemEditMovie = array(); + + $template->setVariable('ItemEditMovie', $ItemEditMovie); + $template->setVariable('controller', 'core.ItemEditMovie'); + return array(null, + 'modules/core/templates/ItemEditMovie.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryMovieItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Movie Size')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditPhoto.inc b/Source/gallery2/modules/core/ItemEditPhoto.inc new file mode 100644 index 0000000..b5f5109 --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditPhoto.inc @@ -0,0 +1,285 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditPhoto extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + global $gallery; + + $status = null; + $error = array(); + + if (isset($form['action']['save'])) { + + /* Validate the input data */ + for ($i = 0; $i < count($form['resizes']); $i++) { + if (empty($form['resizes'][$i]['active'])) { + continue; + } + + if (empty($form['resizes'][$i]['width']) + || empty($form['resizes'][$i]['height'])) { + $error[] = sprintf('form[error][resizes][%d][size][missing]', $i); + } else if (!($tmp = rtrim($form['resizes'][$i]['width'], '%')) + || !is_numeric($tmp) || $tmp <= 0 + || !($tmp = rtrim($form['resizes'][$i]['height'], '%')) + || !is_numeric($tmp) || $tmp <= 0) { + $error[] = sprintf('form[error][resizes][%d][size][invalid]', $i); + } + } + + if (empty($error)) { + /* Load existing resizes */ + $itemId = $item->getId(); + list ($ret, $resizes) = GalleryCoreApi::fetchResizesByItemIds(array($itemId)); + if ($ret) { + return array($ret, null, null, null); + } + $resizes = isset($resizes[$itemId]) ? $resizes[$itemId] : array(); + $resizesTable = array(); + foreach ($resizes as $resize) { + $postFilter = $resize->getPostFilterOperations(); + $resizesTable[$resize->getDerivativeOperations()] = $resize; + } + + list ($ret, $source) = GalleryCoreApi::fetchPreferredSource($item); + if ($ret) { + return array($ret, null, null, null); + } + + /* Make sure that we have a toolkit before adding back the resizes */ + list ($ret, $toolkit, $outputMimeType) = + GalleryCoreApi::getToolkitByOperation($source->getMimeType(), 'scale'); + if ($ret) { + return array($ret, null, null, null); + } + + if (isset($toolkit)) { + /* Determine operations and check against existing resizes */ + $count = count($form['resizes']); + for ($i = 0; $i < $count; $i++) { + if (empty($form['resizes'][$i]['active'])) { + unset($form['resizes'][$i]); + continue; + } + + $operations = 'scale|' . $form['resizes'][$i]['width'] . ',' + . $form['resizes'][$i]['height']; + + list ($ret, $newOperations, $newOutputMimeType) = + GalleryCoreApi::makeSupportedViewableOperationSequence( + $outputMimeType, $operations); + if ($ret) { + return array($ret, null, null, null); + } + if (!$newOperations || !$newOutputMimeType) { + $newOperations = $operations; + $newOutputMimeType = $outputMimeType; + } + + if (isset($resizesTable[$newOperations])) { + /* Keep existing resize */ + unset($resizesTable[$newOperations]); + unset($form['resizes'][$i]); + } else { + /* Create resize with these settings on next pass */ + $form['resizes'][$i]['operations'] = $newOperations; + $form['resizes'][$i]['mimeType'] = $newOutputMimeType; + } + } + /* Add new resizes, using existing derivative entities until we run out */ + foreach ($form['resizes'] as $resizeData) { + if (!empty($resizesTable)) { + $derivative = array_shift($resizesTable); + list ($ret, $lockId) = + GalleryCoreApi::acquireWriteLock($derivative->getId()); + if ($ret) { + return array($ret, null, null, null); + } + } else { + list ($ret, $derivative) = GalleryCoreApi::newFactoryInstanceByHint( + 'GalleryDerivative', $source->getEntityType()); + if ($ret) { + return array($ret, null, null, null); + } + if (!isset($derivative)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), + null, null, null); + } + + $ret = $derivative->create($itemId, DERIVATIVE_TYPE_IMAGE_RESIZE); + if ($ret) { + return array($ret, null, null, null); + } + } + + $derivative->setMimeType($resizeData['mimeType']); + $derivative->setDerivativeOperations($resizeData['operations']); + $derivative->setDerivativeSourceId($source->getId()); + if (isset($postFilter)) { + $derivative->setPostFilterOperations($postFilter); + } + + $ret = $derivative->save(); + if ($ret) { + return array($ret, null, null, null); + } + if (isset($lockId)) { + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + $lockId = null; + } + } + /* Remove any leftover resizes */ + foreach ($resizesTable as $resize) { + $ret = GalleryCoreApi::deleteEntityById($resize->getId()); + if ($ret) { + return array($ret, null, null, null); + } + } + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + $status = $module->translate('Changes saved successfully'); + } + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + global $gallery; + + if ($form['formName'] != 'ItemEditPhoto') { + /* First time around, reset the form */ + $form['formName'] = 'ItemEditPhoto'; + + /* Load the resizes */ + list ($ret, $resizes) = GalleryCoreApi::fetchResizesByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null, null); + } + + if (!empty($resizes)) { + foreach ($resizes[$item->getId()] as $resize) { + if (preg_match('/(?:scale|resize)\|(\d+%?)(?:,(\d+%?))?/', + $resize->getDerivativeOperations(), $matches)) { + $width = $matches[1]; + $height = empty($matches[2]) ? $width : $matches[2]; + $form['resizes'][] = array('active' => 1, + 'width' => $width, 'height' => $height); + } + } + } + } + + /* Tag on a few form blanks */ + $extraBlanks = 3; + if (isset($form['resizes'])) { + foreach ($form['resizes'] as $resize) { + if (!isset($resize['active'])) { + $extraBlanks--; + } + } + } + + while ($extraBlanks-- > 0) { + $form['resizes'][] = array('active' => 0, 'width' => '', 'height' => ''); + } + + /* Make sure that 'active' is set to a value */ + for ($i = 0; $i < sizeof($form['resizes']); $i++) { + if (!isset($form['resizes'][$i]['active'])) { + $form['resizes'][$i]['active'] = false; + } + } + + $ItemEditPhoto = array(); + + /* Check to see if we have a preferred source */ + list ($ret, $results) = + GalleryCoreApi::fetchPreferredsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null, null); + } + + $sourceMimeTypes = array($item->getMimeType()); + if (empty($results)) { + $ItemEditPhoto['editPhoto']['hasPreferredSource'] = false; + } else { + $preferred = $results[$item->getId()]; + if (preg_match("/(rotate|resize|scale)\|/", $preferred->getDerivativeOperations())) { + $ItemEditPhoto['editPhoto']['hasPreferredSource'] = true; + } else { + $ItemEditPhoto['editPhoto']['hasPreferredSource'] = false; + } + $sourceMimeTypes[] = $preferred->getMimeType(); + } + + /* Figure out what options we can provide */ + list ($ret, $ItemEditPhoto['editSizes']['can']['createResizes']) = + $this->_checkForOperation('resize', $sourceMimeTypes); + if ($ret) { + return array($ret, null, null); + } + + $template->setVariable('ItemEditPhoto', $ItemEditPhoto); + $template->setVariable('controller', 'core.ItemEditPhoto'); + return array(null, 'modules/core/templates/ItemEditPhoto.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryPhotoItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Photo')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditPhotoThumbnail.inc b/Source/gallery2/modules/core/ItemEditPhotoThumbnail.inc new file mode 100644 index 0000000..a98b981 --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditPhotoThumbnail.inc @@ -0,0 +1,392 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditPhotoThumbnail extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + global $gallery; + + $status = null; + $error = array(); + + if (isset($form['action']['crop']) || isset($form['action']['reset'])) { + /* Load the thumbnail */ + list ($ret, $thumbnails) = + GalleryCoreApi::fetchThumbnailsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null, null, null); + } + + if (!empty($thumbnails)) { + $thumbnail = $thumbnails[$item->getId()]; + } + } + + if (isset($form['action']['crop']) && isset($thumbnail)) { + /* Get our source */ + list ($ret, $source) = + GalleryCoreApi::loadEntitiesById($thumbnail->getDerivativeSourceId()); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $lock) = GalleryCoreApi::acquireWriteLock($thumbnail->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $thumbnail) = $thumbnail->refresh(); + if ($ret) { + return array($ret, null, null, null); + } + + if (empty($form['crop']['width'])) { + $cropX = 0; + $cropY = 0; + $cropWidth = 100; + $cropHeight = 100; + } else { + $cropX = GalleryUtilities::roundToString( + 100 * $form['crop']['x'] / $source->getWidth(), 3); + $cropY = GalleryUtilities::roundToString( + 100 * $form['crop']['y'] / $source->getHeight(), 3); + $cropWidth = GalleryUtilities::roundToString( + 100 * $form['crop']['width'] / $source->getWidth(), 3); + $cropHeight = GalleryUtilities::roundToString( + 100 * $form['crop']['height'] / $source->getHeight(), 3); + } + + list ($ret, $operations) = + GalleryCoreApi::mergeDerivativeOperations($thumbnail->getDerivativeOperations(), + sprintf('crop|%s,%s,%s,%s', + $cropX, + $cropY, + $cropWidth, + $cropHeight), + true); + + if ($ret) { + return array($ret, null, null, null); + } + $thumbnail->setDerivativeOperations($operations); + + $ret = $thumbnail->save(); + if ($ret) { + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lock); + if ($ret) { + return array($ret, null, null, null); + } + + /* Figure out where to redirect upon success */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + $status = $module->translate('Thumbnail cropped successfully'); + } else if (isset($form['action']['reset']) && isset($thumbnail)) { + list ($ret, $lock) = GalleryCoreApi::acquireWriteLock($thumbnail->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $thumbnail) = $thumbnail->refresh(); + if ($ret) { + return array($ret, null, null, null); + } + + $operations = GalleryCoreApi::removeDerivativeOperation( + 'crop', $thumbnail->getDerivativeOperations()); + $thumbnail->setDerivativeOperations($operations); + + $ret = $thumbnail->save(); + if ($ret) { + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lock); + if ($ret) { + return array($ret, null, null, null); + } + + /* Figure out where to redirect upon success */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + $status = $module->translate('Thumbnail reset successfully'); + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + global $gallery; + + $ItemEditPhotoThumbnail = array(); + $ItemEditPhotoThumbnail['showApplet'] = $thumbnail != null; + + list ($ret, $ItemEditPhotoThumbnail['isAdmin']) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null, null); + } + + if ($form['formName'] != 'ItemEditPhotoThumbnail') { + /* First time around, reset the form */ + $form['formName'] = 'ItemEditPhotoThumbnail'; + } + + $targetThumbnailSize = 0; + $crop = array(); + if (preg_match('/thumbnail\|(\d+)/', + $thumbnail->getDerivativeOperations(), + $matches)) { + $targetThumbnailSize = $matches[1]; + } + + if (preg_match('/crop\|([\d\.]+),([\d\.]+),([\d\.]+),([\d\.]+)/', + $thumbnail->getDerivativeOperations(), + $matches)) { + $crop['leftPercent'] = $matches[1]; + $crop['topPercent'] = $matches[2]; + $crop['widthPercent'] = $matches[3]; + $crop['heightPercent'] = $matches[4]; + } else { + /* No cropping yet */ + $crop['leftPercent'] = 0; + $crop['topPercent'] = 0; + $crop['widthPercent'] = 100; + $crop['heightPercent'] = 100; + } + + /* + * The source may be quite large. However, it's the only input image that we can really + * display at this point because the resized derivatives though they may be smaller, can + * have different derivative commands from the source. + */ + list ($ret, $source) = + GalleryCoreApi::loadEntitiesById($thumbnail->getDerivativeSourceId()); + if ($ret) { + return array($ret, null, null); + } + + /* Convert crop percentages into real pixels */ + $crop['left'] = round($crop['leftPercent'] * $source->getWidth() / 100); + $crop['top'] = round($crop['topPercent'] * $source->getHeight() / 100); + $crop['width'] = round($crop['widthPercent'] * $source->getWidth() / 100); + $crop['height'] = round($crop['heightPercent'] * $source->getHeight() / 100); + + /* + * It's possible that the source was created before we had an appropriate image toolkit, + * so its dimensions can be set to zero, which will cause us problems. In that case, + * try rescanning it. + */ + $width = $source->getWidth(); + if (empty($width)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($source->getId()); + if ($ret) { + return array($ret, null, null); + } + list ($ret, $source) = $source->refresh(); + if ($ret) { + return array($ret, null, null); + } + $ret = $source->rescan(); + if ($ret) { + return array($ret, null, null); + } + $ret = $source->save(); + if ($ret) { + return array($ret, null, null); + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null); + } + } + + /* Make sure we have toolkit support */ + list ($ret, $toolkit) = + GalleryCoreApi::getToolkitByOperation($source->getMimeType(), 'crop'); + if ($ret) { + return array($ret, null, null); + } + + $width = $source->getWidth(); + if (empty($width) || !isset($toolkit)) { + $ItemEditPhotoThumbnail['editThumbnail']['can']['crop'] = false; + } else { + $ItemEditPhotoThumbnail['editThumbnail']['can']['crop'] = true; + if (empty($crop)) { + $crop['left'] = 0; + $crop['top'] = 0; + $crop['width'] = $source->getWidth(); + $crop['height'] = $source->getHeight(); + } + + /* + * When we make the url for the image, force the session id into it. Otherwise, the + * IE JVM will send a request without the session cookie, then the server will make a + * new session and send that cookie back to the JVM, which will overwrite the browser's + * session with it, effectively logging out the user. + */ + $urlGenerator =& $gallery->getUrlGenerator(); + $url = $urlGenerator->generateUrl( + array('view' => 'core.DownloadItem', 'itemId' => $source->getId()), + array('forceSessionId' => true, 'forceFullUrl' => true, 'htmlEntities' => false)); + + $ItemEditPhotoThumbnail['editThumbnail']['appletCodeBase'] = + GalleryUtilities::convertPathToUrl(dirname(__FILE__)) . '/plugins'; + $ItemEditPhotoThumbnail['editThumbnail']['appletJarFile'] = 'ImageCrop.jar'; + $ItemEditPhotoThumbnail['editThumbnail']['imageUrl'] = $url; + $ItemEditPhotoThumbnail['editThumbnail']['imageWidth'] = $source->getWidth(); + $ItemEditPhotoThumbnail['editThumbnail']['imageHeight'] = $source->getHeight(); + $ItemEditPhotoThumbnail['editThumbnail']['cropLeft'] = $crop['left']; + $ItemEditPhotoThumbnail['editThumbnail']['cropTop'] = $crop['top']; + $ItemEditPhotoThumbnail['editThumbnail']['cropWidth'] = $crop['width']; + $ItemEditPhotoThumbnail['editThumbnail']['cropHeight'] = $crop['height']; + $ItemEditPhotoThumbnail['editThumbnail']['targetThumbnailSize'] = $targetThumbnailSize; + + $aspectlist = array(); + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + $aspectRatioList[] = array('label' => $module->translate('Photo 5x3'), + 'width' => 5, + 'height' => 3); + $aspectRatioList[] = array('label' => $module->translate('Photo 6x4'), + 'width' => 6, + 'height' => 4); + $aspectRatioList[] = array('label' => $module->translate('Photo 7x5'), + 'width' => 7, + 'height' => 5); + $aspectRatioList[] = array('label' => $module->translate('Photo 10x8'), + 'width' => 10, + 'height' => 8); + $aspectRatioList[] = array('label' => $module->translate('Fullscreen 4x3'), + 'width' => 4, + 'height' => 3); + $aspectRatioList[] = array('label' => $module->translate('Widescreen 16x9'), + 'width' => 16, + 'height' => 9); + $aspectRatioList[] = array('label' => $module->translate('CinemaScope 2.35x1'), + 'width' => 47, + 'height' => 20); + $aspectRatioList[] = array('label' => $module->translate('Square 1x1'), + 'width' => 1, + 'height' => 1); + $aspectRatioList[] = array('label' => $module->translate('As Image'), + 'width' => $item->getWidth(), + 'height' => $item->getHeight()); + $ItemEditPhotoThumbnail['editThumbnail']['aspectRatioList'] = $aspectRatioList; + + $orientationList = array(); + $orientationList['landscape'] = $module->translate('Landscape'); + $orientationList['portrait'] = $module->translate('Portrait'); + $ItemEditPhotoThumbnail['editThumbnail']['orientationList'] = $orientationList; + + + /* + * Figure out which aspect ratio / orientation is closest to the current crop + * settings so that we can start out with those values selected in the dropdowns. + */ + $currentAspect = round($crop['width'] / $crop['height'], 2); + $i = 0; + + /* Set defaults */ + $selectedAspect = 0; + $selectedOrientation = 'portrait'; + $ItemEditPhotoThumbnail['editThumbnail']['cropRatioWidth'] = + $aspectRatioList[0]['width']; + $ItemEditPhotoThumbnail['editThumbnail']['cropRatioHeight'] = + $aspectRatioList[0]['height']; + + foreach ($aspectRatioList as $aspect) { + $landscapeCompare = round($aspect['width'] / $aspect['height'], 2); + $portraitCompare = round($aspect['height'] / $aspect['width'], 2); + if (abs($currentAspect - $landscapeCompare) <= 0.03) { + $selectedAspect = $i; + $selectedOrientation = 'landscape'; + break; + } else if (abs($currentAspect - $portraitCompare) <= 0.03) { + $selectedAspect = $i; + $selectedOrientation = 'portrait'; + break; + } + $i++; + } + $ItemEditPhotoThumbnail['editThumbnail']['selectedAspect'] = $selectedAspect; + $ItemEditPhotoThumbnail['editThumbnail']['selectedOrientation'] = $selectedOrientation; + $ItemEditPhotoThumbnail['editThumbnail']['cropRatioWidth'] = + $aspectRatioList[$selectedAspect]['width']; + $ItemEditPhotoThumbnail['editThumbnail']['cropRatioHeight'] = + $aspectRatioList[$selectedAspect]['height']; + } + + $template->javascript('lib/yui/yahoo-min.js'); + $template->javascript('lib/yui/dom-min.js'); + $template->javascript('lib/yui/event-min.js'); + $template->javascript('lib/yui/dragdrop-min.js'); + $template->javascript('lib/javascript/Cropper.js'); + $template->style('modules/core/templates/ItemEditPhotoThumbnail.css'); + + $template->setVariable('ItemEditPhotoThumbnail', $ItemEditPhotoThumbnail); + $template->setVariable('controller', 'core.ItemEditPhotoThumbnail'); + return array(null, + 'modules/core/templates/ItemEditPhotoThumbnail.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return ($thumbnail != null && GalleryUtilities::isA($item, 'GalleryPhotoItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Crop Thumbnail')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditRotateAndScalePhoto.inc b/Source/gallery2/modules/core/ItemEditRotateAndScalePhoto.inc new file mode 100644 index 0000000..2d186b7 --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditRotateAndScalePhoto.inc @@ -0,0 +1,268 @@ + + * @version $Revision: 15513 $ + */ +class ItemEditRotateAndScalePhoto extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + $status = null; + $error = array(); + + $operation = null; + /* Figure out which command we're taking */ + if (isset($form['action']['resize'])) { + if (empty($form['resize']['width']) || empty($form['resize']['height'])) { + $error[] = 'form[error][resize][size][missing]'; + } else if (!($tmp = rtrim($form['resize']['width'], '%')) + || !is_numeric($tmp) || $tmp < 1 + || !($tmp = rtrim($form['resize']['height'], '%')) + || !is_numeric($tmp) || $tmp < 1) { + $error[] = 'form[error][resize][size][invalid]'; + } else { + $operation = 'scale'; + $args = array($form['resize']['width'], $form['resize']['height']); + } + } else if (isset($form['action']['rotate']['clockwise'])) { + $operation = 'rotate'; + $args = array(90); + } else if (isset($form['action']['rotate']['counterClockwise'])) { + $operation = 'rotate'; + $args = array(-90); + } else if (isset($form['action']['rotate']['flip'])) { + $operation = 'rotate'; + $args = array(180); + } else if (isset($form['action']['revertToOriginal'])) { + if (!empty($preferred)) { + /* + * Pull out the rotate and resize operations and let our change ripple + * down the derivative tree, if necessary + */ + $remainingOperations = array(); + foreach (split(';', $preferred->getDerivativeOperations()) as $tmpOperation) { + if (preg_match("/^(rotate|resize|scale)\|/", $tmpOperation)) { + $ret = GalleryCoreApi::adjustDependentDerivatives($preferred->getId(), + $tmpOperation, + true); + if ($ret) { + return array($ret, null, null, null); + } + } else { + $remainingOperations[] = $tmpOperation; + } + } + + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($preferred->getId()); + if ($ret) { + return array($ret, null, null, null); + } + list ($ret, $preferred) = $preferred->refresh(); + if ($ret) { + return array($ret, null, null, null); + } + + if ($remainingOperations) { + $preferred->setDerivativeOperations(join(';', $remainingOperations)); + } else { + $preferred->setDerivativeOperations(null); + } + + $ret = $preferred->save(); + if ($ret) { + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + + if ($preferred->hasNoOperations()) { + $ret = GalleryCoreApi::remapSourceIds( + $preferred->getId(), $preferred->getDerivativeSourceId()); + if ($ret) { + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::deleteEntityById($preferred->getId()); + if ($ret) { + return array($ret, null, null, null); + } + } + + /* Prepare our status message */ + $status = $module->translate('Reverted rotate and scale changes successfully'); + } + } + + $preserveOriginal = isset($form['preserveOriginal']); + + if ($form['serialNumber'] != $item->getSerialNumber()) { + return array(GalleryCoreApi::error(ERROR_OBSOLETE_DATA), null, null, null); + } + + /* + * If we have a command, then apply it to the correct object. + */ + if (!empty($operation)) { + $ret = GalleryCoreApi::applyToolkitOperation( + $operation, $args, $preserveOriginal, $item, $preferred); + if ($ret) { + return array($ret, null, null, null); + } + + /* Set our status message */ + switch ($operation) { + case 'rotate': + $status = $module->translate('Rotated photo successfully'); + break; + + case 'scale': + $status = $module->translate('Scaled photo successfully'); + break; + } + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + $ItemEditRotateAndScalePhoto = array(); + + list ($ret, $ItemEditRotateAndScalePhoto['isAdmin']) = + GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null, null); + } + + if ($form['formName'] != 'ItemEditRotateAndScalePhoto') { + /* First time around, reset the form */ + $form['resize']['width'] = $form['resize']['height'] = ''; + $form['preserveOriginal'] = 1; + $form['formName'] = 'ItemEditRotateAndScalePhoto'; + } + + if ($item->isLinked()) { + $ItemEditRotateAndScalePhoto['editPhoto']['isLinked'] = true; + $ItemEditRotateAndScalePhoto['editPhoto']['isLinkedTo'] = false; + } else { + list ($ret, $linkedIds) = GalleryCoreApi::fetchEntitiesLinkedTo($item->getId()); + if ($ret) { + return array($ret, null, null); + } + + $ItemEditRotateAndScalePhoto['editPhoto']['isLinkedTo'] = !empty($linkedIds); + $ItemEditRotateAndScalePhoto['editPhoto']['isLinked'] = false; + } + + /* Check to see if we have a preferred source */ + list ($ret, $results) = + GalleryCoreApi::fetchPreferredsByItemIds(array($item->getId())); + if ($ret) { + return array($ret, null, null); + } + + /* Can we allow to delete the original? */ + $mimeType = $item->getMimeType(); + list ($ret, $toolkit) = + GalleryCoreApi::getToolkitByOperation($mimeType, 'rotate'); + if ($ret) { + return array($ret, null, null); + } + $ItemEditRotateAndScalePhoto['editPhoto']['noToolkitSupport'] = !isset($toolkit); + /* Get worst of rotate and resize */ + if (isset($toolkit)) { + list ($ret, $toolkit) = + GalleryCoreApi::getToolkitByOperation($mimeType, 'resize'); + if ($ret) { + return array($ret, null, null); + } + $ItemEditRotateAndScalePhoto['editPhoto']['noToolkitSupport'] = !isset($toolkit); + } + + $sourceMimeTypes = array($mimeType); + + if (empty($results)) { + $ItemEditRotateAndScalePhoto['editPhoto']['hasPreferredSource'] = false; + } else { + $preferred = $results[$item->getId()]; + if (preg_match("/(rotate|resize|scale)\|/", $preferred->getDerivativeOperations())) { + $ItemEditRotateAndScalePhoto['editPhoto']['hasPreferredSource'] = true; + } else { + $ItemEditRotateAndScalePhoto['editPhoto']['hasPreferredSource'] = false; + } + $sourceMimeTypes[] = $preferred->getMimeType(); + } + + /* Figure out what options we can provide */ + list ($ret, $ItemEditRotateAndScalePhoto['editPhoto']['can']['rotate']) = + $this->_checkForOperation('rotate', $sourceMimeTypes); + if ($ret) { + return array($ret, null, null); + } + + list ($ret, $ItemEditRotateAndScalePhoto['editPhoto']['can']['resize']) = + $this->_checkForOperation('scale', $sourceMimeTypes); + if ($ret) { + return array($ret, null, null); + } + + $template->setVariable('ItemEditRotateAndScalePhoto', $ItemEditRotateAndScalePhoto); + $template->setVariable('controller', 'core.ItemEditRotateAndScalePhoto'); + return array(null, + 'modules/core/templates/ItemEditRotateAndScalePhoto.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryPhotoItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Modify Photo')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemEditTheme.inc b/Source/gallery2/modules/core/ItemEditTheme.inc new file mode 100644 index 0000000..782e9fa --- /dev/null +++ b/Source/gallery2/modules/core/ItemEditTheme.inc @@ -0,0 +1,211 @@ + + * @version $Revision: 16471 $ + */ +class ItemEditTheme extends ItemEditPlugin { + + /** + * @see ItemEditPlugin::handleRequest + */ + function handleRequest($form, &$item, &$preferred) { + if (isset($form['action']['chooseTheme'])) { + $error = array(); + if (!empty($form['theme'])) { + $themeId = $form['theme']; + list ($ret, $theme) = GalleryCoreApi::loadPlugin('theme', $themeId); + if ($ret) { + return array($ret, null, null, null); + } + } else { + $themeId = null; + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($item->getId()); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $item) = $item->refresh(); + if ($ret) { + return array($ret, null, null, null); + } + + $item->setSerialNumber($form['serialNumber']); + $item->setTheme($themeId); + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null, null, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + + if (isset($form['changeInDescendents'])) { + list ($ret, $subAlbumIds) = + GalleryCoreApi::fetchDescendentAlbumItemIds($item); + if ($ret) { + return array($ret, null, null, null); + } + + if (!empty($subAlbumIds)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($subAlbumIds); + if ($ret) { + return array($ret, null, null, null); + } + + list ($ret, $subAlbums) = GalleryCoreApi::loadEntitiesById($subAlbumIds); + if ($ret) { + return array($ret, null, null, null); + } + + foreach ($subAlbums as $album) { + if (isset($form['changeInDescendents']['theme'])) { + $album->setTheme($form['theme']); + } + $ret = $album->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null, null, null); + } + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null, null, null); + } + } + } + + $status = $module->translate('Successfully changed theme'); + } else { + list ($ret, $themeId) = GalleryCoreApi::fetchThemeId($item); + if ($ret) { + return array($ret, null, null, null); + } + list ($ret, $error, $status) = GalleryCoreApi::handleThemeSettingsRequest( + $themeId, $item->getId(), $form); + if ($ret) { + return array($ret, null, null, null); + } + } + + return array(null, $error, $status, false); + } + + /** + * @see ItemEditPlugin::loadTemplate + */ + function loadTemplate(&$template, &$form, $item, $thumbnail) { + $themeId = $themeSettingsThemeId = $item->getTheme(); + if (empty($themeSettingsThemeId)) { + list ($ret, $themeSettingsThemeId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + return array($ret, null, null); + } + } + + list ($ret, $theme) = + GalleryCoreApi::loadPlugin('theme', $themeSettingsThemeId, false, true); + if (!$ret) { + $ret = GalleryCoreApi::loadThemeSettingsForm( + $themeSettingsThemeId, $item->getId(), $template, $form); + if ($ret) { + return array($ret, null, null); + } + } else if ($ret->getErrorCode() & (ERROR_BAD_PARAMETER | ERROR_PLUGIN_VERSION_MISMATCH)) { + /* Ignore incompatible / missing themes. Just show a warning. */ + } else { + return array($ret, null, null); + } + + if ($form['formName'] != 'ItemEditTheme') { + $form['formName'] = 'ItemEditTheme'; + $form['theme'] = $themeId; + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + /* Set up our theme selection list */ + list ($ret, $themeStatusList) = GalleryCoreApi::fetchPluginStatus('theme'); + if ($ret) { + return array($ret, null, null); + } + $themeList = array('' => $module->translate('« default theme »')); + foreach ($themeStatusList as $id => $status) { + if (empty($status['active'])) { + continue; + } + + list ($ret, $tmp) = GalleryCoreApi::loadPlugin('theme', $id, false, true); + if ($ret) { + + if ($ret->getErrorCode() & (ERROR_BAD_PARAMETER | ERROR_PLUGIN_VERSION_MISMATCH)) { + /* Ignore incompatible themes (but don't list them either) */ + continue; + } + return array($ret, null, null); + } + $themeList[$id] = $tmp->translate($tmp->getName()); + } + $ItemEditTheme['themeList'] = $themeList; + $ItemEditTheme['theme'] = $themeId; + + $template->setVariable('controller', 'core.ItemEditTheme'); + $template->setVariable('ItemEditTheme', $ItemEditTheme); + return array(null, 'modules/core/templates/ItemEditTheme.tpl', 'modules_core'); + } + + /** + * @see ItemEditPlugin::isSupported + */ + function isSupported($item, $thumbnail) { + return (GalleryUtilities::isA($item, 'GalleryAlbumItem')); + } + + /** + * @see ItemEditPlugin::getTitle + */ + function getTitle() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $module->translate('Theme')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemMakeHighlight.inc b/Source/gallery2/modules/core/ItemMakeHighlight.inc new file mode 100644 index 0000000..ec3cc3e --- /dev/null +++ b/Source/gallery2/modules/core/ItemMakeHighlight.inc @@ -0,0 +1,119 @@ + + * @version $Revision: 15513 $ + */ +class ItemMakeHighlightController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + $status = array(); + $error = array(); + if (isset($form['action']['makeHighlight'])) { + $itemId = GalleryUtilities::getRequestVariables('itemId'); + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* Make sure we have permission to edit this item */ + $ret = GalleryCoreApi::assertHasItemPermission($form['parentId'], 'core.edit'); + if ($ret) { + return array($ret, null); + } + + /* XXX: What should we do if this fails? */ + list ($ret, $success) = + GalleryCoreApi::setThumbnailFromItem($form['parentId'], $itemId); + if ($ret) { + return array($ret, null); + } + } /* else $form['action']['cancel'] */ + + $results['return'] = true; + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for which ancestor album to set the highlight + */ +class ItemMakeHighlightView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + $parentId = $item->getParentId(); + + /* Make sure we have permission do edit the parent of this item */ + $ret = GalleryCoreApi::assertHasItemPermission($parentId, 'core.edit'); + if ($ret) { + return array($ret, null); + } + + if ($form['formName'] != 'ItemMakeHighlight') { + $form['formName'] = 'ItemMakeHighlight'; + } + + list ($ret, $parents) = GalleryCoreApi::fetchParents($item, 'core.edit', true); + if ($ret) { + return array($ret, null); + } + + $parentList = array(); + foreach (array_reverse($parents) as $parent) { + $parentList[] = (array)$parent; + } + + $template->setVariable('ItemMakeHighlight', array('parentList' => $parentList)); + $template->setVariable('controller', 'core.ItemMakeHighlight'); + return array(null, array('body' => 'modules/core/templates/ItemMakeHighlight.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('make highlight')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemMove.inc b/Source/gallery2/modules/core/ItemMove.inc new file mode 100644 index 0000000..7d1616a --- /dev/null +++ b/Source/gallery2/modules/core/ItemMove.inc @@ -0,0 +1,424 @@ + + * @version $Revision: 15513 $ + */ +class ItemMoveController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + $status = $error = array(); + if (isset($form['action']['move'])) { + + /* First check if everything would be okay with the change */ + $canAddItem = $canAddAlbum = false; + if (!empty($form['destination'])) { + /* Check if we can add albums or items here */ + $newParentId = $form['destination']; + list ($ret, $permissions) = GalleryCoreApi::getPermissions($newParentId); + if ($ret) { + return array($ret, null); + } + + $canAddItem = isset($permissions['core.addDataItem']); + $canAddAlbum = isset($permissions['core.addAlbumItem']); + if (!$canAddAlbum && !$canAddItem) { + $error[] = 'form[error][destination][permission]'; + } + + /* Load destination parent ids: we don't want recursive moves */ + list ($ret, $newParentAncestorIds) = + GalleryCoreApi::fetchParentSequence($newParentId); + if ($ret) { + return array($ret, null); + } + $newParentAncestorIds[] = $newParentId; + } else { + $error[] = 'form[error][destination][empty]'; + } + + if (empty($error) && !empty($form['selectedIds'])) { + $selectedIds = array_keys($form['selectedIds']); + + /* Load the source items */ + list ($ret, $selectedItems) = GalleryCoreApi::loadEntitiesById($selectedIds); + if ($ret) { + return array($ret, null); + } + $ret = GalleryCoreApi::studyPermissions($selectedIds); + if ($ret) { + return array($ret, null); + } + + foreach ($selectedItems as $selectedItem) { + $selectedId = $selectedItem->getId(); + + /* Can't move into a tree that is included in the source */ + if (in_array($selectedId, $newParentAncestorIds)) { + $error[] = 'form[error][source][' . $selectedId . '][selfMove]'; + continue; + } + + list ($ret, $permissions) = GalleryCoreApi::getPermissions($selectedId); + if ($ret) { + return array($ret, null); + } + + /* Can we delete this item from here? */ + if (!isset($permissions['core.delete'])) { + $error[] = 'form[error][source][' . $selectedId . '][permission][delete]'; + } + + /* Check if the destination allows this source to be added */ + if ($selectedItem->getCanContainChildren() && !$canAddAlbum) { + $error[] = 'form[error][source][' . $selectedId . + '][permission][addAlbumItem]'; + } else if (!$selectedItem->getCanContainChildren() && !$canAddItem) { + $error[] = 'form[error][source][' . $selectedId . + '][permission][addDataItem]'; + } + } + } + + if (empty($error) && !empty($selectedIds) && !empty($newParentId)) { + $storage =& $gallery->getStorage(); + + /* Read lock old and new parent album, and all ancestor albums */ + $lockIds = array(); + list ($ret, $oldParents) = GalleryCoreApi::fetchParentSequence($itemId); + if ($ret) { + return array($ret, null); + } + list ($ret, $newParents) = GalleryCoreApi::fetchParentSequence($newParentId); + if ($ret) { + return array($ret, null); + } + $oldParents[] = $itemId; + $newParents[] = $newParentId; + list ($ret, $lockIds[]) = GalleryCoreApi::acquireReadLock( + array_unique(array_merge($oldParents, $newParents))); + if ($ret) { + return array($ret, null); + } + + /* Do the move / locking in batches to prevent too many open files issues */ + $batchSize = 100; + $status['moved']['count'] = 0; + do { + $currentItems = array_splice($selectedItems, 0, $batchSize); + $currentIds = array(); + foreach ($currentItems as $item) { + $currentIds[] = $item->getId(); + } + /* Write lock all the items we're moving */ + list ($ret, $currentLockId) = GalleryCoreApi::acquireWriteLock($currentIds); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + /* If we have no problems, do the moves */ + foreach ($currentItems as $selectedItem) { + $ret = $selectedItem->move($newParentId); + if ($ret) { + $lockIds[] = $currentLockId; + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + $status['moved']['count']++; + + $ret = $selectedItem->save(); + if ($ret) { + $lockIds[] = $currentLockId; + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + if (GalleryUtilities::isA($selectedItem, 'GalleryDataItem')) { + /* Update for derivative preferences of new parent */ + $ret = + GalleryCoreApi::addExistingItemToAlbum($selectedItem, $newParentId); + if ($ret) { + $lockIds[] = $currentLockId; + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + } + + $ret = $storage->checkPoint(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + } + $ret = GalleryCoreApi::releaseLocks($currentLockId); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + $ret = $storage->checkPoint(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + } while (!empty($selectedItems)); + + $ret = GalleryCoreApi::releaseLocks($lockIds); + if ($ret) { + return array($ret, null); + } + + list ($ret, $success) = GalleryCoreApi::guaranteeAlbumHasThumbnail($itemId); + if ($ret) { + return array($ret, null); + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemMove'; + $redirect['itemId'] = $itemId; + } + } else if (isset($form['action']['next'])) { + $page = GalleryUtilities::getRequestVariables('page'); + list ($ret, $peerIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($itemId, 'core.delete'); + if ($ret) { + return array($ret, null); + } + + $numPages = ceil(sizeof($peerIds) / $form['numPerPage']); + + $results['delegate']['itemId'] = $itemId; + $results['delegate']['page'] = min($page + 1, $numPages); + } else if (isset($form['action']['previous'])) { + $page = GalleryUtilities::getRequestVariables('page'); + $results['delegate']['itemId'] = $itemId; + $results['delegate']['page'] = max($page - 1, 1); + } else if (isset($form['action']['cancel'])) { + $results['return'] = true; + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemMove'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for which items to move and where is the destination. + */ +class ItemMoveView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* itemId is the album where we want to move items from */ + list ($itemId, $selectedId, $page) = + GalleryUtilities::getRequestVariables('itemId', 'selectedId', 'page'); + if ($form['formName'] != 'ItemMove') { + /* First time around, load the form with item data */ + if ($selectedId) { + $form['selectedIds'][$selectedId] = true; + } + $form['destination'] = ''; + $form['formName'] = 'ItemMove'; + $form['numPerPage'] = 15; + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + /* Get all peers that we can delete */ + list ($ret, $peerIds) = + GalleryCoreApi::fetchChildItemIdsWithPermission($itemId, 'core.delete'); + if ($ret) { + return array($ret, null); + } + + $albumIds = $albumTree = $selectedIds = $peers = $peerDescendentCounts = array(); + $peerTypes = array('album' => array(), 'data' => array()); + $numPages = 1; + if (!empty($peerIds)) { + $numPages = ceil(sizeof($peerIds) / $form['numPerPage']); + if (empty($page)) { + /* determine which page we're on */ + $page = 1; + for ($i = 0; $i < sizeof($peerIds); $i++) { + if ($peerIds[$i] == $selectedId) { + $page = ceil(($i + 1) / $form['numPerPage']); + } + } + } + + $start = $form['numPerPage'] * ($page - 1); + $peerIds = array_slice($peerIds, $start, $form['numPerPage']); + if (isset($form['selectedIds'])) { + $selectedIds = $form['selectedIds']; + foreach ($peerIds as $peerId) { + if (isset($selectedIds[$peerId])) { + unset($selectedIds[$peerId]); + } + } + } + + /* Add any items with error messages that would otherwise not be shown */ + if (!empty($form['error']['source'])) { + foreach ($form['error']['source'] as $id => $tmp) { + if (!in_array($id, $peerIds)) { + array_unshift($peerIds, $id); + unset($selectedIds[$id]); + } + } + } + + /* Load all the peers */ + list ($ret, $peerItems) = GalleryCoreApi::loadEntitiesById($peerIds); + if ($ret) { + return array($ret, null); + } + + /* get peer thumbnails and resizes */ + list ($ret, $derivatives) = GalleryCoreApi::fetchDerivativesByItemIds($peerIds); + if ($ret) { + return array($ret, null); + } + + /* Build our peers table */ + $peers = array(); + foreach ($peerItems as $peerItem) { + $peers[$peerItem->getId()] = (array)$peerItem; + if (GalleryUtilities::isA($peerItem, 'GalleryAlbumItem')) { + $peerTypes['album'][$peerItem->getId()] = 1; + } else { + $peerTypes['data'][$peerItem->getId()] = 1; + } + $peers[$peerItem->getId()]['selected'] = + isset($form['selectedIds'][$peerItem->getId()]); + + /* While we're at it, attach thumbnails and resizes */ + if (isset($derivatives[$peerItem->getId()])) { + foreach ($derivatives[$peerItem->getId()] as $derivative) { + $type = $derivative->getDerivativeType(); + if (empty($peers[$peerItem->getId()]['resize']) && + $type == DERIVATIVE_TYPE_IMAGE_RESIZE) { + $peers[$peerItem->getId()]['resize'] = (array)$derivative; + } else if ($type == DERIVATIVE_TYPE_IMAGE_THUMBNAIL) { + $peers[$peerItem->getId()]['thumbnail'] = (array)$derivative; + } + } + } + } + + /* Get child counts */ + if (!empty($peerTypes['album'])) { + list ($ret, $peerDescendentCounts) = + GalleryCoreApi::fetchDescendentCounts(array_keys($peerTypes['album'])); + if ($ret) { + return array($ret, null); + } + } + + /* Get ids of all albums where we can add new data items */ + list ($ret, $albumIds['addDataItem']) = + GalleryCoreApi::fetchAllItemIds('GalleryAlbumItem', 'core.addDataItem'); + if ($ret) { + return array($ret, null); + } + + /* Get ids of all all albums where we can add new album items */ + list ($ret, $albumIds['addAlbumItem']) = + GalleryCoreApi::fetchAllItemIds('GalleryAlbumItem', 'core.addAlbumItem'); + if ($ret) { + return array($ret, null); + } + + /* Merge them together to get the master list of ids */ + $albumIds['allIds'] = array_unique(array_merge($albumIds['addDataItem'], + $albumIds['addAlbumItem'])); + + /* Load all the album entities */ + list ($ret, $albums) = GalleryCoreApi::loadEntitiesById($albumIds['allIds']); + if ($ret) { + return array($ret, null); + } + + $albumTree = GalleryUtilities::createAlbumTree($albums); + } + + $urlGenerator =& $gallery->getUrlGenerator(); + + $ItemMove = array(); + $ItemMove['canCancel'] = $urlGenerator->isNavigationBackPossible(); + $ItemMove['albumIds'] = $albumIds; + $ItemMove['peers'] = $peers; + $ItemMove['peerTypes'] = $peerTypes; + $ItemMove['peerDescendentCounts'] = $peerDescendentCounts; + $ItemMove['albumTree'] = $albumTree; + $ItemMove['page'] = $page; + $ItemMove['numPages'] = $numPages; + $ItemMove['numPerPage'] = $form['numPerPage']; + $ItemMove['selectedIds'] = array_keys($selectedIds); + $ItemMove['selectedIdCount'] = count($selectedIds); + + $template->setVariable('ItemMove', $ItemMove); + $template->setVariable('controller', 'core.ItemMove'); + $template->javascript('lib/yui/yahoo-min.js'); + $template->javascript('lib/yui/dom-min.js'); + $template->javascript('lib/yui/event-min.js'); + $template->javascript('lib/yui/container-min.js'); + return array(null, array('body' => 'modules/core/templates/ItemMove.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('move item')); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemMoveSingle.inc b/Source/gallery2/modules/core/ItemMoveSingle.inc new file mode 100644 index 0000000..ab7350d --- /dev/null +++ b/Source/gallery2/modules/core/ItemMoveSingle.inc @@ -0,0 +1,276 @@ + + * @version $Revision: 15513 $ + */ +class ItemMoveSingleController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + $status = $error = array(); + + if (isset($form['action']['move'])) { + if (empty($form['destination'])) { + $error[] = 'form[error][destination][empty]'; + } + + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.delete'); + if ($ret) { + return array($ret, null); + } + + if (empty($error)) { + $newParentId = $form['destination']; + + /* + * Assert that our permissions are correct. The view should never try to make a + * move that isn't legal so we can just bail if there's an inconsistency. + */ + if (GalleryUtilities::isA($item, 'GalleryDataItem')) { + $ret = GalleryCoreApi::assertHasItemPermission($newParentId, + 'core.addDataItem'); + if ($ret) { + return array($ret, null); + } + } else if (GalleryUtilities::isA($item, 'GalleryAlbumItem')) { + $ret = GalleryCoreApi::assertHasItemPermission($newParentId, + 'core.addAlbumItem'); + if ($ret) { + return array($ret, null); + } + } else { + /* The view should never let this happen */ + return array(GalleryCoreApi::error(ERROR_BAD_DATA_TYPE), + null); + } + } + + /* Make sure the destination is the right type of item */ + if (empty($error)) { + list ($ret, $newParent) = GalleryCoreApi::loadEntitiesById($newParentId); + if ($ret) { + return array($ret, null); + } + + if (!GalleryUtilities::isA($newParent, 'GalleryAlbumItem')) { + /* The view should never let this happen */ + return array(GalleryCoreApi::error(ERROR_BAD_DATA_TYPE), + null); + } + } + + /* Make sure we don't have recursive moves */ + if (empty($error)) { + list ($ret, $newParentAncestorIds) = + GalleryCoreApi::fetchParentSequence($newParentId); + if ($ret) { + return array($ret, null); + } + + if ($itemId == $newParentId || in_array($itemId, $newParentAncestorIds)) { + $error[] = 'form[error][destination][selfMove]'; + } + } + + if (empty($error)) { + /* + * Read lock both parent hierarchies + * TODO: Optimize this + */ + list ($ret, $lockIds[]) = GalleryCoreApi::acquireReadLockParents($newParentId); + if ($ret) { + return array($ret, null); + } + + $oldParentId = $item->getParentId(); + list ($ret, $lockIds[]) = GalleryCoreApi::acquireReadLockParents($oldParentId); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + list ($ret, $lockIds[]) = + GalleryCoreApi::acquireReadLock(array($newParentId, $oldParentId)); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + /* Write lock the item we're moving */ + list ($ret, $lockIds[]) = GalleryCoreApi::acquireWriteLock($itemId); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + /* Refresh the item in case it changed before it was locked */ + list ($ret, $item) = $item->refresh(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + /* Do the move */ + $ret = $item->move($newParentId); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + + if (GalleryUtilities::isA($item, 'GalleryDataItem')) { + /* Update for derivative preferences of new parent */ + $ret = GalleryCoreApi::addExistingItemToAlbum($item, $newParentId); + if ($ret) { + GalleryCoreApi::releaseLocks($lockIds); + return array($ret, null); + } + } + + /* Release all locks */ + $ret = GalleryCoreApi::releaseLocks($lockIds); + if ($ret) { + return array($ret, null); + } + + /* Fix thumbnail integrity */ + list ($ret, $success) = GalleryCoreApi::guaranteeAlbumHasThumbnail($oldParentId); + if ($ret) { + return array($ret, null); + } + + $status['moved'] = 1; + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemMoveSingle'; + $redirect['itemId'] = $itemId; + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemMoveSingle'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for the destination of moving this item + */ +class ItemMoveSingleView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* itemId is the album where we want to move items from */ + $itemId = GalleryUtilities::getRequestVariables('itemId'); + if ($form['formName'] != 'ItemMoveSingle') { + /* First time around, load the form with item data */ + $form['destination'] = ''; + $form['formName'] = 'ItemMoveSingle'; + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + if (GalleryUtilities::isA($item, 'GalleryDataItem')) { + $permission = 'core.addDataItem'; + } else if (GalleryUtilities::isA($item, 'GalleryAlbumItem')) { + $permission = 'core.addAlbumItem'; + } else { + return array(GalleryCoreApi::error(ERROR_BAD_DATA_TYPE), null); + } + + /* Get ids of all all albums where we can add this items */ + list ($ret, $albumIds) = GalleryCoreApi::fetchAllItemIds('GalleryAlbumItem', $permission); + if ($ret) { + return array($ret, null); + } + + /* Load all the album entities */ + list ($ret, $albums) = GalleryCoreApi::loadEntitiesById($albumIds); + if ($ret) { + return array($ret, null); + } + + $albumTree = GalleryUtilities::createAlbumTree($albums); + + $ItemMoveSingle = array(); + $ItemMoveSingle['albumTree'] = $albumTree; + $ItemMoveSingle['itemTypeNames'] = $item->itemTypeName(); + + $template->setVariable('ItemMoveSingle', $ItemMoveSingle); + $template->setVariable('controller', 'core.ItemMoveSingle'); + return array(null, array('body' => 'modules/core/templates/ItemMoveSingle.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + $itemTypeNames = $item->itemTypeName(true); + + return array(null, + $core->translate(array('text' => 'move %s', 'arg1' => $itemTypeNames[1]))); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemPermissions.inc b/Source/gallery2/modules/core/ItemPermissions.inc new file mode 100644 index 0000000..fe0dd24 --- /dev/null +++ b/Source/gallery2/modules/core/ItemPermissions.inc @@ -0,0 +1,562 @@ + + * @version $Revision: 15513 $ + */ +class ItemPermissionsController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + /* Make sure we have permission to change permissions of this item */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.changePermissions'); + if ($ret) { + return array($ret, null); + } + + $applyToChildren = isset($form['applyToSubItems']); + $status = $error = array(); + if (isset($form['action']['deleteGroupPermission'])) { + /* Figure out which one we're working with */ + $deleteGroupPermission = array_keys($form['action']['deleteGroupPermission']); + $index = array_pop($deleteGroupPermission); + + /* Handle delete group perm actions */ + list ($groupId, $permissionId) = explode(',', $form['group']['delete'][$index]); + $ret = GalleryCoreApi::removeGroupPermission($itemId, $groupId, + $permissionId, $applyToChildren); + if ($ret) { + return array($ret, null); + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemPermissions'; + $redirect['itemId'] = $itemId; + $status['deletedGroupPermission'] = 1; + + /* Stuff the values back into the form for easy re-adding */ + $redirect['form[group][permission]'] = $permissionId; + list ($ret, $group) = GalleryCoreApi::loadEntitiesById($groupId); + if (!$ret) { + $redirect['form[group][groupName]'] = $group->getGroupName(); + } + $verifySelfPermissions = true; + } else if (isset($form['action']['deleteUserPermission'])) { + /* Figure out which one we're working with */ + $deleteUserPermission = array_keys($form['action']['deleteUserPermission']); + $index = array_pop($deleteUserPermission); + + /* Handle delete user perm actions */ + list ($userId, $permissionId) = explode(',', $form['user']['delete'][$index]); + $ret = GalleryCoreApi::removeUserPermission($itemId, $userId, + $permissionId, $applyToChildren); + if ($ret) { + return array($ret, null); + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemPermissions'; + $redirect['itemId'] = $itemId; + $status['deletedUserPermission'] = 1; + + /* Stuff the values back into the form for easy re-adding */ + $redirect['form[user][permission]'] = $permissionId; + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if (!$ret) { + $redirect['form[user][userName]'] = $user->getUserName(); + } + if ($userId == $gallery->getActiveUserId()) { + $verifySelfPermissions = true; + } + } else if (isset($form['action']['addUserPermission'])) { + + /* Handle add user permission actions */ + if (empty($form['user']['userName'])) { + $error[] = 'form[error][user][missingUser]'; + } else { + /* Validate the user */ + list ($ret, $user) = GalleryCoreApi::fetchUserByUserName($form['user']['userName']); + if ($ret) { + if ($ret->getErrorCode() & ERROR_MISSING_OBJECT) { + $error[] = 'form[error][user][invalidUser]'; + } else { + return array($ret, null); + } + } + } + + /* Validate the permission */ + $permission = $form['user']['permission']; + list ($ret, $allPermissions) = GalleryCoreApi::getPermissionIds(); + if ($ret) { + return array($ret, null); + } + if (empty($allPermissions[$permission])) { + $error[] = 'form[error][user][invalidPermission]'; + } + + if (empty($error)) { + /* Don't add the permission if it already exists */ + list ($ret, $hasIt) = + GalleryCoreApi::hasPermission($itemId, $user->getId(), $permission); + if ($ret) { + return array($ret, null); + } + if ($hasIt) { + $error[] = 'form[error][user][alreadyHadPermission]'; + } + } + + if (empty($error)) { + $ret = GalleryCoreApi::addUserPermission($itemId, $user->getId(), + $permission, $applyToChildren); + if ($ret) { + return array($ret, null); + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemPermissions'; + $redirect['itemId'] = $itemId; + $redirect['form[user][userName]'] = $user->getUserName(); + $status['addedUserPermission'] = 1; + } + } else if (isset($form['action']['addGroupPermission'])) { + + /* Handle add group permission actions */ + if (empty($form['group']['groupName'])) { + $error[] = 'form[error][group][missingGroup]'; + } else { + /* Validate the group */ + list ($ret, $group) = + GalleryCoreApi::fetchGroupByGroupName($form['group']['groupName']); + if ($ret) { + if ($ret->getErrorCode() & ERROR_MISSING_OBJECT) { + $error[] = 'form[error][group][invalidGroup]'; + } else { + return array($ret, null); + } + } + } + + /* Validate the permission */ + $permission = $form['group']['permission']; + list ($ret, $allPermissions) = GalleryCoreApi::getPermissionIds(); + if ($ret) { + return array($ret, null); + } + if (empty($allPermissions[$permission])) { + $error[] = 'form[error][group][invalidPermission]'; + } + + if (empty($error)) { + /* Don't add the permission if it already exists */ + list ($ret, $hasIt) = + GalleryCoreApi::hasPermission($itemId, $group->getId(), $permission); + if ($ret) { + return array($ret, null); + } + if ($hasIt) { + $error[] = 'form[error][group][alreadyHadPermission]'; + } + } + + if (empty($error)) { + $ret = GalleryCoreApi::addGroupPermission($itemId, $group->getId(), + $permission, $applyToChildren); + if ($ret) { + return array($ret, null); + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemPermissions'; + $redirect['itemId'] = $itemId; + $redirect['form[group][groupName]'] = $group->getGroupName(); + $status['addedGroupPermission'] = 1; + } + } else if (isset($form['action']['changeOwner'])) { + if (empty($form['owner']['ownerName'])) { + $error[] = 'form[error][owner][missingUser]'; + } else { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + /* Validate the user */ + list ($ret, $user) = + GalleryCoreApi::fetchUserByUserName($form['owner']['ownerName']); + if ($ret) { + if ($ret->getErrorCode() & ERROR_MISSING_OBJECT) { + $error[] = 'form[error][owner][invalidUser]'; + } else { + return array($ret, null); + } + } + } + + if (empty($error)) { + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $permissions) = + GalleryCoreApi::fetchPermissionsForItems(array($itemId), $item->getOwnerId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($itemId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = $item->refresh(); + if ($ret) { + return array($ret, null); + } + + $userId = $user->getId(); + $item->setOwnerId($userId); + $item->setSerialNumber($form['serialNumber']); + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + $applyOwnerToChildren = isset($form['applyOwnerToSubItems']); + foreach ($permissions[$itemId] as $permission => $unused) { + $ret = GalleryCoreApi::addUserPermission($itemId, $userId, + $permission, $applyOwnerToChildren); + if ($ret) { + return array($ret, null); + } + } + + /* change the owner recursively for the descendents */ + if ($applyOwnerToChildren) { + list ($ret, $descendentIds) = + GalleryCoreApi::fetchDescendentItemIds($item, null, null, 'core.all'); + + /* + * Process these descendents in chunks since we may have thousands of + * items and we don't want to give the database a heart attack. + */ + $chunkSize = 200; + while (!empty($descendentIds)) { + $chunk = array_splice($descendentIds, 0, $chunkSize); + $gallery->guaranteeTimeLimit(60); + + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($chunk); + if ($ret) { + return array($ret, null); + } + + list ($ret, $descendents) = GalleryCoreApi::loadEntitiesById($chunk); + if ($ret) { + return array($ret, null); + } + foreach ($descendents as $item) { + $item->setOwnerId($userId); + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + } + } + + /* Figure out where to redirect upon success */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemPermissions'; + $redirect['itemId'] = $itemId; + $status['changedOwner'] = 1; + } + } + + if (isset($verifySelfPermissions)) { + /* + * Make sure we don't remove our own ability to change permissions on this item. + * If this was a recursive remove we may lose permissions on subitems. + */ + list ($ret, $canEdit) = GalleryCoreApi::hasItemPermission($itemId, 'core.edit'); + if ($ret) { + return array($ret, null); + } + if (!$canEdit) { + $ret = GalleryCoreApi::addUserPermission($itemId, $gallery->getActiveUserId(), + 'core.edit', false); + if ($ret) { + return array($ret, null); + } + $status['addedBackSelfPermission'] = 1; + } + list ($ret, $canChange) = + GalleryCoreApi::hasItemPermission($itemId, 'core.changePermissions'); + if ($ret) { + return array($ret, null); + } + if (!$canChange) { + $ret = GalleryCoreApi::addUserPermission($itemId, $gallery->getActiveUserId(), + 'core.changePermissions', false); + if ($ret) { + return array($ret, null); + } + $status['addedBackSelfPermission'] = 1; + } + } + + if (empty($error)) { + /* + * Try compacting. Ignore lock timeouts here; if we failed this time we'll try + * again next time. + */ + $ret = GalleryCoreApi::maybeCompactAccessLists(); + if ($ret && !($ret->getErrorCode() & ERROR_LOCK_TIMEOUT)) { + return array($ret, null); + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemPermissions'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for permission settings of an item + */ +class ItemPermissionsView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + /* Make sure we have permission to edit this item */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.edit'); + if ($ret) { + return array($ret, null); + } + list ($ret, $canChange) = + GalleryCoreApi::hasItemPermission($itemId, 'core.changePermissions'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + $form['serialNumber'] = $item->getSerialNumber(); + + if ($form['formName'] == 'ItemPermissions') { + /* Complain if we have any invalid data */ + } else { + /* + * First time around, load the form with item data. Note that + * userName and groupName can be passed in to this form so don't + * initialize them unless they don't exist. + */ + if (empty($form['user']['userName'])) { + $form['user']['userName'] = ''; + } + + if (empty($form['user']['permission'])) { + $form['user']['permission'] = ''; + } + + if (empty($form['group']['groupName'])) { + $form['group']['groupName'] = ''; + } + + if (empty($form['group']['permission'])) { + $form['group']['permission'] = ''; + } + + $form['owner']['ownerName'] = ''; + $form['formName'] = 'ItemPermissions'; + } + + /* Get all available permissions */ + list ($ret, $allPermissions) = GalleryCoreApi::getPermissionIds(); + if ($ret) { + return array($ret, null); + } + ksort($allPermissions); + + /* Get all permissions for the item. */ + list ($ret, $permissions) = + GalleryCoreApi::fetchAllPermissionsForItem($itemId, true); + if ($ret) { + return array($ret, null); + } + + /* Figure out all the unique user/group ids and load those */ + $userAndGroupEntityIds = array(); + foreach ($permissions as $permission) { + if (!empty($permission['userId'])) { + $userAndGroupEntityIds[$permission['userId']] = 1; + } + if (!empty($permission['groupId'])) { + $userAndGroupEntityIds[$permission['groupId']] = 1; + } + } + + list ($ret, $userAndGroupEntities) = + GalleryCoreApi::loadEntitiesById(array_keys($userAndGroupEntityIds)); + if ($ret) { + return array($ret, null); + } + + /* Convert them into a hash map by entity id */ + foreach ($userAndGroupEntities as $entity) { + $userAndGroupEntityMap[$entity->getId()] = (array)$entity; + } + + /* Figure out the admin group id */ + list ($ret, $adminGroupId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.adminGroup'); + if ($ret) { + return array($ret, null); + } + + /* + * Now create the separate user and group permission maps. + * + * Silently ignore any permissions that we come across that aren't part + * of the permission registry. They may be permission associated with + * modules that are not currently active. + */ + $userPermissions = $groupPermissions = array(); + foreach ($permissions as $permission) { + $permissionId = $permission['permission']; + if (!empty($permission['userId']) && isset($allPermissions[$permissionId])) { + list ($ret, $subPermissions) = GalleryCoreApi::getSubPermissions($permissionId); + if ($ret) { + return array($ret, null); + } + + $userPermissions[] = array( + 'permission' => array('id' => $permissionId, + 'description' => $allPermissions[$permissionId]), + 'user' => $userAndGroupEntityMap[$permission['userId']], + 'deleteList' => $subPermissions); + } + + if (!empty($permission['groupId']) && isset($allPermissions[$permissionId])) { + if ($permission['groupId'] != $adminGroupId) { + list ($ret, $subPermissions) = GalleryCoreApi::getSubPermissions($permissionId); + if ($ret) { + return array($ret, null); + } + } else { + $subPermissions = array(); + } + + $groupPermissions[] = + array('permission' => array('id' => $permissionId, + 'description' => $allPermissions[$permissionId]), + 'group' => $userAndGroupEntityMap[$permission['groupId']], + 'deleteList' => $subPermissions); + } + } + + /* Figure out the owner */ + list ($ret, $owner) = GalleryCoreApi::loadEntitiesById($item->getOwnerId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + /* Figure out what we can display on the form */ + $can['changePermissions'] = $canChange; + $can['changeOwner'] = $isAdmin; + $can['applyToSubItems'] = $item->getCanContainChildren(); + + $ItemPermissions['owner'] = (array)$owner; + $ItemPermissions['can'] = $can; + $ItemPermissions['userPermissions'] = $userPermissions; + $ItemPermissions['groupPermissions'] = $groupPermissions; + $ItemPermissions['allPermissions'] = $allPermissions; + + $template->setVariable('ItemPermissions', $ItemPermissions); + $template->setVariable('controller', 'core.ItemPermissions'); + return array(null, array('body' => 'modules/core/templates/ItemPermissions.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + list ($ret, $item) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + $itemTypeNames = $item->itemTypeName(true); + + return array(null, $core->translate(array('text' => 'edit %s permissions', + 'arg1' => $itemTypeNames[1]))); + } +} +?> diff --git a/Source/gallery2/modules/core/ItemReorder.inc b/Source/gallery2/modules/core/ItemReorder.inc new file mode 100644 index 0000000..c0c7c23 --- /dev/null +++ b/Source/gallery2/modules/core/ItemReorder.inc @@ -0,0 +1,250 @@ + + * @version $Revision: 15513 $ + */ +class ItemReorderController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + /* Check permissions */ + $ret = GalleryCoreApi::assertHasItemPermission($itemId, 'core.edit'); + if ($ret) { + return array($ret, null); + } + + $status = $error = array(); + if (isset($form['action']['reorder'])) { + + /* Verify that we've got what we need */ + if (empty($form['selectedId'])) { + $error[] = 'form[error][selectedId][missing]'; + } + + if (empty($form['targetId'])) { + $error[] = 'form[error][targetId][missing]'; + } + + $before = 0; + if (empty($form['placement']) || $form['placement'] == 'before') { + $before = 1; + } + + /* + * Make sure that the selectedId and targetId are children of the album + */ + if (empty($error)) { + $selectedId = $form['selectedId']; + $targetId = $form['targetId']; + list ($ret, $entities) = + GalleryCoreApi::loadEntitiesById(array($selectedId, $targetId)); + if ($ret) { + return array($ret, null); + } + + if ($entities[0]->getParentId() != $itemId || + $entities[1]->getParentId() != $itemId) { + return array(GalleryCoreApi::error(ERROR_PERMISSION_DENIED), null); + } + } + + if (empty($error)) { + $loopCount = 0; + while (true) { + /* + * Get the current and target order weights (have to do + * this after every rebalance, too) + */ + list ($ret, $orderWeights) = + GalleryCoreApi::fetchItemOrderWeights(array($selectedId, $targetId)); + if ($ret) { + return array($ret, null); + } + + list ($ret, $next) = GalleryCoreApi::fetchNextItemWeight($targetId, + $before ? LOWER_WEIGHT : HIGHER_WEIGHT); + if ($ret) { + return array($ret, null); + } + + if (isset($next)) { + /* Floor rounds down, so separate the sign and the magnitude */ + $delta = (int)(($next - $orderWeights[$targetId]) / 2); + } else { + /* + * We couldn't get a weight, which means that the + * target is at the edge. So go beyond the edge + */ + $delta = $before ? -1000 : 1000; + } + + if (abs($delta) > 0) { + break; + } + + if ($loopCount++ > 0) { + /* + * If we have to rebalance more than once then something went wrong! + */ + return array(GalleryCoreApi::error(ERROR_UNKNOWN), null); + } + + /* A delta of 0 means that we don't have room, so rebalance */ + $ret = GalleryCoreApi::rebalanceChildOrderWeights($itemId); + if ($ret) { + return array($ret, null); + } + } + $newWeight = $orderWeights[$targetId] + $delta; + + $ret = GalleryCoreApi::setItemOrderWeight($selectedId, $newWeight); + if ($ret) { + return array($ret, null); + } + + $event = GalleryCoreApi::newEvent('Gallery::ItemOrder'); + $event->setData($itemId); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + + /* Redirect back to the same page so that we can do more reordering */ + $redirect['view'] = 'core.ItemAdmin'; + $redirect['subView'] = 'core.ItemReorder'; + $redirect['itemId'] = $itemId; + $status['saved'] = 1; + } + } else if (isset($form['action']['cancel'])) { + $redirect['return'] = true; + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.ItemAdmin'; + $results['delegate']['subView'] = 'core.ItemReorder'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will prompt for how to change the order of items in the album + */ +class ItemReorderView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* itemId is the album where we want to move items from */ + $itemId = GalleryUtilities::getRequestVariables('itemId'); + + if ($form['formName'] == 'ItemReorder') { + /* No validation at the moment */ + } else { + /* First time around, load the form with item data */ + $form['formName'] = 'ItemReorder'; + } + + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId); + if ($ret) { + return array($ret, null); + } + + $show = array(); + $ItemReorder = array(); + $orderBy = $item->getOrderBy(); + if (empty($orderBy)) { + list ($ret, $orderBy) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.orderBy'); + if ($ret) { + return array($ret, null); + } + } + if ($orderBy != 'orderWeight') { + $show['automaticOrderMessage'] = 1; + } else { + + /* Get all peers that we can see */ + list ($ret, $peerIds) = GalleryCoreApi::fetchChildItemIds($item); + if ($ret) { + return array($ret, null); + } + + /* Load all the peers */ + list ($ret, $peerItems) = GalleryCoreApi::loadEntitiesById($peerIds); + if ($ret) { + return array($ret, null); + } + + /* Build our peers table */ + $peers = array(); + foreach ($peerItems as $peerItem) { + $peers[$peerItem->getId()] = (array)$peerItem; + if (GalleryUtilities::isA($peerItem, 'GalleryAlbumItem')) { + $peerTypes['album'][$peerItem->getId()] = 1; + } else { + $peerTypes['data'][$peerItem->getId()] = 1; + } + $peers[$peerItem->getId()]['selected'] = + isset($form['selectedIds'][$peerItem->getId()]); + } + $ItemReorder['peers'] = $peers; + $ItemReorder['peerTypes'] = $peerTypes; + } + + $ItemReorder['show'] = $show; + + $template->setVariable('ItemReorder', $ItemReorder); + $template->setVariable('controller', 'core.ItemReorder'); + return array(null, array('body' => 'modules/core/templates/ItemReorder.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('reorder items')); + } +} +?> diff --git a/Source/gallery2/modules/core/Logout.inc b/Source/gallery2/modules/core/Logout.inc new file mode 100644 index 0000000..60f9977 --- /dev/null +++ b/Source/gallery2/modules/core/Logout.inc @@ -0,0 +1,94 @@ + + * @version $Revision: 15543 $ + */ +class LogoutController extends GalleryController { + + /** + * @see GalleryController::isAllowedInMaintenance + */ + function isAllowedInMaintenance() { + return true; + } + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $event = GalleryCoreApi::newEvent('Gallery::Logout'); + $event->setEntity($gallery->getActiveUser()); + list ($ret, $eventResults) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + + $results = array(); + foreach ($eventResults as $key => $value) { + if (!empty($value['delegate'])) { + $results['delegate'] = $value['delegate']; + } + } + + $session =& $gallery->getSession(); + $ret = $session->reset(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $anonymousId) = GalleryCoreApi::getAnonymousUserId(); + if ($ret) { + return array($ret, null); + } + list ($ret, $guestUser) = GalleryCoreApi::loadEntitiesById($anonymousId); + if ($ret) { + return array($ret, null); + } + + $gallery->setActiveUser($guestUser); + + if (!isset($results['status'])) { + $results['status'] = array(); + } + if (!isset($results['error'])) { + $results['error'] = array(); + } + + /* + * Force return to core.ShowItem, as we don't know if the guest user has necessary + * permissions for the return page + */ + if (!isset($results['return']) + && !isset($results['redirect']) + && !isset($results['delegate'])) { + $results['redirect']['view'] = GALLERY_DEFAULT_VIEW; + } + + return array(null, $results); + } +} +?> diff --git a/Source/gallery2/modules/core/MANIFEST b/Source/gallery2/modules/core/MANIFEST new file mode 100644 index 0000000..9af3670 --- /dev/null +++ b/Source/gallery2/modules/core/MANIFEST @@ -0,0 +1,929 @@ +# $Revision: 16636 $ +# File crc32 crc32(crlf) size size(crlf) or R File +modules/core/AdminCore.inc 2448414203 2986494712 11002 11360 +modules/core/AdminCreateGroup.inc 2264869130 1145511965 3620 3746 +modules/core/AdminCreateUser.inc 1462310984 1607659129 4997 5166 +modules/core/AdminDeleteGroup.inc 1669726831 2502738258 3462 3579 +modules/core/AdminDeleteUser.inc 716793296 3011555486 7604 7819 +modules/core/AdminEditGroup.inc 343557606 997524848 4419 4572 +modules/core/AdminEditGroupUsers.inc 4010456494 1321901185 7655 7906 +modules/core/AdminEditUser.inc 3823299388 2008172478 7921 8185 +modules/core/AdminGroups.inc 1072913838 3323106308 7743 7991 +modules/core/AdminMaintenance.inc 1807406648 199083694 5943 6147 +modules/core/AdminPerformance.inc 1396727514 3771082380 5848 6044 +modules/core/AdminPlugins.inc 112630298 584106593 7370 7585 +modules/core/AdminRepository.inc 1345389657 3484967822 13766 14188 +modules/core/AdminRepositoryDownload.inc 4180302936 2593085531 19014 19605 +modules/core/AdminThemes.inc 2716714456 570935334 15872 16359 +modules/core/AdminToolkitPriority.inc 187729627 221793192 3244 3349 +modules/core/AdminUsers.inc 2220718479 165072603 7032 7264 +modules/core/Callbacks.inc 3414775313 32377629 6599 6809 +modules/core/ChangeLanguage.inc 2203055387 4084050931 1514 1563 +modules/core/CoreModuleExtras.inc 1221988706 1277895183 101067 104289 +modules/core/CreateThumbnailOption.inc 2043871615 3096809131 2288 2363 +modules/core/DownloadItem.inc 2728495747 2454205779 5430 5616 +modules/core/ErrorPage.inc 4217687436 3526276519 6632 6847 +modules/core/ItemAdd.inc 1524234226 3461130678 18289 18887 +modules/core/ItemAddAlbum.inc 3089645024 1124803788 5319 5500 +modules/core/ItemAddConfirmation.inc 2014125754 3860583703 2740 2827 +modules/core/ItemAddFromBrowser.inc 280644262 1561073015 8324 8576 +modules/core/ItemAdmin.inc 329658463 4167833293 6405 6627 +modules/core/ItemDelete.inc 4164640384 2594062524 9150 9445 +modules/core/ItemDeleteConfirmation.inc 2811205858 1015518889 1587 1636 +modules/core/ItemDeleteSingle.inc 1482798871 1602844183 5269 5443 +modules/core/ItemEdit.inc 2730112184 1788810417 16162 16685 +modules/core/ItemEditAlbum.inc 4084792366 948079391 23719 24488 +modules/core/ItemEditAnimation.inc 3866588488 1068237193 3694 3826 +modules/core/ItemEditCaptions.inc 2679614969 3374859967 8367 8634 +modules/core/ItemEditItem.inc 3026110910 4285234074 13479 13891 +modules/core/ItemEditMovie.inc 1336460336 1689628722 3690 3824 +modules/core/ItemEditPhoto.inc 3591068491 3063254648 8724 9009 +modules/core/ItemEditPhotoThumbnail.inc 2161111801 3281360399 13540 13932 +modules/core/ItemEditRotateAndScalePhoto.inc 2860406861 538485634 8376 8644 +modules/core/ItemEditTheme.inc 550177399 2991544085 6216 6427 +modules/core/ItemMakeHighlight.inc 873249812 281487295 3528 3647 +modules/core/ItemMove.inc 2928106848 210134550 13423 13847 +modules/core/ItemMoveSingle.inc 2954338555 3050249768 7877 8153 +modules/core/ItemPermissions.inc 1083621543 2318336491 17243 17805 +modules/core/ItemReorder.inc 1246312425 3513613101 6978 7228 +modules/core/Logout.inc 1245647638 2848488483 2582 2676 +modules/core/MaintenanceMode.inc 3761183237 3631379631 1759 1814 +modules/core/PluginCallback.inc 2908720998 1109966846 12208 12682 +modules/core/ProgressBar.inc 4126306685 2940244141 1244 1280 +modules/core/RepositoryCallback.inc 3648860541 1081608363 2465 2547 +modules/core/ShowItem.inc 839820520 1589581520 5301 5469 +modules/core/ShowItemError.inc 1352964838 2921558206 2754 2855 +modules/core/SimpleCallback.inc 2529466632 522125530 4271 4419 +modules/core/SiteAdmin.inc 1419611232 1676740969 8943 9241 +modules/core/UserAdmin.inc 1262601494 4263496519 4971 5142 +modules/core/UserChangePassword.inc 3354717991 2530128188 5454 5640 +modules/core/UserLogin.inc 260195341 2252963602 6923 7157 +modules/core/UserPreferences.inc 1011637169 2467282858 7627 7869 +modules/core/UserRecoverPassword.inc 3871468312 3691347367 9095 9382 +modules/core/UserRecoverPasswordAdmin.inc 3152583592 118458075 5890 6086 +modules/core/UserRecoverPasswordConfirm.inc 3943285199 3054372424 5695 5878 +modules/core/UserRecoverPasswordDownload.inc 2701083349 3144941862 1863 1923 +modules/core/classes/BuildDerivativesTask.class 1907085915 2448037004 6371 6589 +modules/core/classes/ConvertDatabaseToUtf8Task.class 1342647640 2995823199 2822 2908 +modules/core/classes/CoreCaptchaAdminOption.class 609134542 1736315525 1535 1578 +modules/core/classes/DatabaseLockSystem.class 3400761785 179150199 3428 3567 +modules/core/classes/DeleteSessionsTask.class 745356116 296463005 3948 4075 +modules/core/classes/Entities.inc 1497339087 4036856130 7296 7432 +modules/core/classes/FlockLockSystem.class 2432013936 937205347 6399 6611 +modules/core/classes/FlushDatabaseCacheTask.class 4059898551 2117098845 2578 2658 +modules/core/classes/FlushTemplatesTask.class 557608065 2674794243 2443 2519 +modules/core/classes/GNUmakefile 1995366819 843025639 51 52 +modules/core/classes/Gallery.class 1268845653 1892583906 27922 28899 +modules/core/classes/GalleryAlbumItem.class 2539369158 277263021 11396 11854 +modules/core/classes/GalleryAnimationItem.class 3661475554 2943075553 10143 10488 +modules/core/classes/GalleryAuthPlugin.class 4017342940 2232821842 1605 1650 +modules/core/classes/GalleryCapabilities.class 206973922 1786298794 1933 2001 +modules/core/classes/GalleryChildEntity.class 2774998468 2017299867 3997 4167 +modules/core/classes/GalleryConstants.class 824085107 1466335329 8180 8570 +modules/core/classes/GalleryController.class 803281735 1939832669 8930 9174 +modules/core/classes/GalleryCoreApi.class 1625010385 3074285311 123549 126632 +modules/core/classes/GalleryCoreSearch.class 493071188 2466888409 6281 6480 +modules/core/classes/GalleryDataCache.class 3170244721 200348872 24443 25297 +modules/core/classes/GalleryDataItem.class 2849288302 1026551472 11207 11625 +modules/core/classes/GalleryDerivative.class 2339063275 3211540716 21980 22737 +modules/core/classes/GalleryDerivativeImage.class 2188715573 1353974838 6900 7157 +modules/core/classes/GalleryDynamicAlbum.class 1980903954 391200992 3535 3663 +modules/core/classes/GalleryEmbed.class 3175610697 4165712474 29296 30205 +modules/core/classes/GalleryEntity.class 363725272 1494823632 19079 19750 +modules/core/classes/GalleryEvent.class 318400690 3824603053 2341 2447 +modules/core/classes/GalleryEventListener.class 33041932 4008161696 1360 1402 +modules/core/classes/GalleryFileSystemEntity.class 730261426 267420314 11116 11512 +modules/core/classes/GalleryGroup.class 2144723586 3975560504 4593 4775 +modules/core/classes/GalleryItem.class 2547248704 3808386352 14138 14674 +modules/core/classes/GalleryLockSystem.class 2008153885 4096559793 10190 10553 +modules/core/classes/GalleryModule.class 1725599764 215920216 21032 21680 +modules/core/classes/GalleryMovieItem.class 1192136938 748562658 8983 9312 +modules/core/classes/GalleryPersistent.class 656914118 3478192779 4640 4791 +modules/core/classes/GalleryPhotoItem.class 3077956316 1338785552 7458 7735 +modules/core/classes/GalleryPhpVm.class 4161307712 1527810545 7129 7399 +modules/core/classes/GalleryPlatform.class 1477686176 2635317237 35246 36470 +modules/core/classes/GalleryPlatform/UnixPlatform.class 2756586770 2039914292 4498 4670 +modules/core/classes/GalleryPlatform/WinNtPlatform.class 3487462023 3069408667 5432 5637 +modules/core/classes/GalleryPlugin.class 2853189090 3578003324 16816 17372 +modules/core/classes/GalleryRenderer.class 1186218377 3514656853 2316 2377 +modules/core/classes/GalleryRepository.class 221726337 3062598776 29688 30610 +modules/core/classes/GalleryRepositoryIndex.class 2275240876 4194746989 15576 16060 +modules/core/classes/GalleryRepositoryUtilities.class 1420123339 3738041945 13066 13449 +modules/core/classes/GallerySession.class 2301220157 2492968692 49810 51340 +modules/core/classes/GallerySmarty.class 1167339763 1914013163 2486 2566 +modules/core/classes/GallerySortInterface_1_2.class 3661677399 1738427894 4791 4918 +modules/core/classes/GalleryStatus.class 3668451210 797510317 6707 6953 +modules/core/classes/GalleryStorage.class 4211483962 1367427022 50715 52495 +modules/core/classes/GalleryStorage/Db2CreateUdfs.sql 4053757771 1342803176 10487 10729 +modules/core/classes/GalleryStorage/Db2Storage.class 971631230 2699444090 8823 9133 +modules/core/classes/GalleryStorage/GNUmakefile 1465776782 2009162633 61 62 +modules/core/classes/GalleryStorage/GallerySqlFragment.class 942909190 781556307 972 997 +modules/core/classes/GalleryStorage/GalleryStorageExtras.class 1724920289 4176448598 65618 67820 +modules/core/classes/GalleryStorage/MSSqlStorage.class 2368380829 1567277645 5266 5471 +modules/core/classes/GalleryStorage/OracleCreateBitOr.sql 60661448 4158840 1580 1626 +modules/core/classes/GalleryStorage/OracleStorage.class 2935797960 3378558108 5428 5621 +modules/core/classes/GalleryStorage/PostgreSqlStorage.class 109802137 1050579026 6090 6333 +modules/core/classes/GalleryStorage/g2_db2.jar 1747928977 1747928977 973 973 +modules/core/classes/GalleryStorage/schema.tpl 1976485050 3771466333 168704 173722 +modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.0.xml 3659530052 394683713 736 766 +modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.1.xml 1447402358 1144842379 746 778 +modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.2.xml 1108010595 3504958071 476 496 +modules/core/classes/GalleryStorage/xml-src/A_GalleryAlbumItem_1.0.xml 1956706663 836858804 450 469 +modules/core/classes/GalleryStorage/xml-src/A_GalleryCacheMap_1.0.xml 838620363 3449969578 944 987 +modules/core/classes/GalleryStorage/xml-src/A_GalleryDerivative_1.0.xml 318432315 3970947518 516 537 +modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.0.xml 2732011149 1420753157 557 579 +modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.1.xml 2474147373 120988729 467 487 +modules/core/classes/GalleryStorage/xml-src/A_GalleryGroup_1.0.xml 2011848054 1054593633 555 577 +modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.0.xml 2679906988 1670105703 522 543 +modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.1.xml 234078821 1974949902 549 571 +modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginMap_1.0.xml 969427553 577009186 743 772 +modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginPackageMap_1.0.xml 1898820480 2893922273 565 588 +modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.0.xml 3384882950 547438647 752 781 +modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.1.xml 3440068311 3792400272 397 412 +modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.2.xml 1563827194 3633534878 604 627 +modules/core/classes/GalleryStorage/xml-src/A_GallerySessionMap_1.0.xml 3568925049 4220097817 552 574 +modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.0.xml 3561312794 2915551385 549 571 +modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.1.xml 1601925350 2976091891 535 557 +modules/core/classes/GalleryStorage/xml-src/A_Schema_1.0.xml 797955291 3226704800 549 571 +modules/core/classes/GalleryStorage/xml-src/A_Schema_1.1.xml 1806179067 3324062559 837 869 +modules/core/classes/GalleryStorage/xml-src/Lock.xml 4149272517 399322752 1007 1045 +modules/core/classes/GalleryStorage/xml-src/R_GalleryCache_1.0.xml 2218626156 22862096 275 286 +modules/core/classes/GalleryStorage/xml-src/R_GalleryItemPropertiesMap_1.0.xml 1678269710 639783741 287 298 +modules/core/classes/GalleryStorage/xml-src/R_GalleryPermissionMap_1.0.xml 3065744889 314676150 283 294 +modules/core/classes/GalleryStorage/xml-src/Schema.xml 16308205 2592193347 1383 1434 +modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_1.xml 1633947393 2510465397 796 827 +modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_2.xml 1561374263 4202596476 632 658 +modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_3.xml 508896771 814400991 473 492 +modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_4.xml 3727832861 3705143938 276 287 +modules/core/classes/GalleryTemplate.class 3195561604 3031556819 13059 13492 +modules/core/classes/GalleryTemplateAdapter.class 576758695 2711090257 34067 35126 +modules/core/classes/GalleryTheme.class 1554612651 4161497945 62465 64423 +modules/core/classes/GalleryToolkit.class 430757563 1676672623 9211 9470 +modules/core/classes/GalleryTranslator.class 1378285602 3929173078 17998 18553 +modules/core/classes/GalleryUnknownItem.class 1250921055 3104789440 3712 3824 +modules/core/classes/GalleryUrlGenerator.class 749454232 696410155 37152 38157 +modules/core/classes/GalleryUser.class 2456787163 922793224 10277 10661 +modules/core/classes/GalleryUtilities.class 976993412 3543989983 52177 53810 +modules/core/classes/GalleryValidationPlugin.class 1136995659 669000369 2557 2622 +modules/core/classes/GalleryView.class 1013213702 1103860489 14982 15469 +modules/core/classes/Maps.inc 434612798 3170344201 9243 9269 +modules/core/classes/Maps.xml 1035858555 2126879626 19364 20087 +modules/core/classes/OptimizeDatabaseTask.class 4111980970 543219837 2173 2242 +modules/core/classes/ResetViewCountsTask.class 2672698902 1836929406 2578 2665 +modules/core/classes/SetOriginationTimestampTask.class 1164720414 1052877243 4575 4726 +modules/core/classes/SystemInfoTask.class 341117226 3556087977 4459 4587 +modules/core/classes/helpers/GalleryCharsetHelper_medium.class 105858908 2982120952 54177 55046 +modules/core/classes/helpers/GalleryCharsetHelper_simple.class 3671905133 2386018774 8385 8639 +modules/core/classes/helpers/GalleryChildEntityHelper_simple.class 1807230835 3966517390 18110 18686 +modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class 3952597092 3463080 23176 24071 +modules/core/classes/helpers/GalleryDerivativeHelper_medium.class 1654527596 2059864341 2384 2465 +modules/core/classes/helpers/GalleryDerivativeHelper_simple.class 1995004192 1848850704 5479 5663 +modules/core/classes/helpers/GalleryEntityHelper_medium.class 1441224049 3338344873 9959 10317 +modules/core/classes/helpers/GalleryEntityHelper_simple.class 4197700968 1720198770 3756 3891 +modules/core/classes/helpers/GalleryEventHelper_simple.class 4069867816 3070508698 3768 3898 +modules/core/classes/helpers/GalleryFactoryHelper_medium.class 2166756647 2979827988 3513 3637 +modules/core/classes/helpers/GalleryFactoryHelper_simple.class 3073031121 1329168215 6473 6700 +modules/core/classes/helpers/GalleryFileSystemEntityHelper_medium.class 4175950937 1296984497 4586 4739 +modules/core/classes/helpers/GalleryFileSystemEntityHelper_simple.class 4026337529 1680042974 3044 3156 +modules/core/classes/helpers/GalleryGroupHelper_simple.class 2132472906 206466848 3210 3351 +modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class 2569963724 2562433906 6411 6662 +modules/core/classes/helpers/GalleryItemAttributesHelper_medium.class 3809996878 732484310 2053 2123 +modules/core/classes/helpers/GalleryItemAttributesHelper_simple.class 1155404091 2730280312 5271 5439 +modules/core/classes/helpers/GalleryItemHelper_advanced.class 2533182978 556350553 13489 14007 +modules/core/classes/helpers/GalleryItemHelper_medium.class 1459975932 1264530561 29879 30892 +modules/core/classes/helpers/GalleryItemHelper_simple.class 3541535833 1318850075 11241 11666 +modules/core/classes/helpers/GalleryLockHelper_simple.class 165769105 2028613091 6509 6776 +modules/core/classes/helpers/GalleryMimeTypeHelper_advanced.class 4248990435 2486574242 8828 9106 +modules/core/classes/helpers/GalleryMimeTypeHelper_simple.class 3785786189 2656413186 5193 5359 +modules/core/classes/helpers/GalleryPermissionHelper_advanced.class 1649247693 2108149024 34058 35233 +modules/core/classes/helpers/GalleryPermissionHelper_simple.class 1167300452 3752016492 14074 14533 +modules/core/classes/helpers/GalleryPluginHelper_medium.class 3418368674 3944592465 12407 12833 +modules/core/classes/helpers/GalleryPluginHelper_simple.class 2881342642 2934929028 15215 15710 +modules/core/classes/helpers/GalleryThemeHelper_medium.class 2202683966 3734896357 7262 7514 +modules/core/classes/helpers/GalleryToolkitHelper_medium.class 3840689287 3359852416 18195 18820 +modules/core/classes/helpers/GalleryToolkitHelper_simple.class 3486440353 530778553 6174 6384 +modules/core/classes/helpers/GalleryUserGroupHelper_medium.class 2673247597 2509659633 5554 5763 +modules/core/classes/helpers/GalleryUserGroupHelper_simple.class 448029682 2851419717 3424 3545 +modules/core/classes/helpers/GalleryUserHelper_medium.class 148869521 962367018 10729 11158 +modules/core/classes/helpers/GalleryUserHelper_simple.class 1341242403 2546741847 3188 3289 +modules/core/classes/helpers/MailHelper_simple.class 232096750 2982280210 3052 3152 +modules/core/classes/helpers/MaintenanceHelper_simple.class 2776704256 3378649829 3557 3676 +modules/core/classes/helpers/UserRecoverPasswordHelper_simple.class 1318582050 2969940325 2599 2684 +modules/core/classes/helpers/WebHelper_simple.class 2962596942 3532052972 11138 11499 +modules/core/data/broken-image.gif 888290220 888290220 1589 1589 +modules/core/data/donate.png 3710449820 3710449820 299 299 +modules/core/data/g22-double_double.png 213546112 213546112 830 830 +modules/core/data/gallery.css 3307814919 3430391326 9535 10041 +modules/core/data/groupinfo.png 3454340450 3454340450 1212 1212 +modules/core/data/hline.png 218182613 218182613 416 416 +modules/core/data/hue.png 919760189 919760189 1344 1344 +modules/core/data/key7-16-bw.gif 835001704 835001704 977 977 +modules/core/data/module-active.gif 2313640867 2313640867 108 108 +modules/core/data/module-inactive.gif 427960404 427960404 107 107 +modules/core/data/module-incompatible.gif 2833300153 2833300153 104 104 +modules/core/data/module-install.gif 2583550065 2583550065 112 112 +modules/core/data/module-locked.gif 997452354 997452354 542 542 +modules/core/data/module-upgrade.gif 286245876 286245876 532 532 +modules/core/data/pickerbg.png 3086136363 3086136363 12421 12421 +modules/core/data/select.gif 2230215518 2230215518 78 78 +modules/core/data/selectline_h.gif 1447662674 1447662674 161 161 +modules/core/data/selectline_v.gif 3539785191 3539785191 161 161 +modules/core/data/userinfo.png 3326153604 3326153604 935 935 +modules/core/locale/af/LC_MESSAGES/modules_core.mo 3372750530 3372750530 73269 73269 +modules/core/locale/ar/LC_MESSAGES/modules_core.mo 4271875098 4271875098 70063 70063 +modules/core/locale/bg/LC_MESSAGES/modules_core.mo 2731605220 2731605220 35163 35163 +modules/core/locale/ca/LC_MESSAGES/modules_core.mo 1220165262 1220165262 88762 88762 +modules/core/locale/cs/LC_MESSAGES/modules_core.mo 1151482023 1151482023 103856 103856 +modules/core/locale/da/LC_MESSAGES/modules_core.mo 1250169186 1250169186 100785 100785 +modules/core/locale/de/LC_MESSAGES/modules_core.mo 3697253904 3697253904 111791 111791 +modules/core/locale/el/LC_MESSAGES/modules_core.mo 1461485605 1461485605 140992 140992 +modules/core/locale/en_GB/LC_MESSAGES/modules_core.mo 3569256731 3569256731 3464 3464 +modules/core/locale/es/LC_MESSAGES/modules_core.mo 2956609355 2956609355 110210 110210 +modules/core/locale/es_AR/LC_MESSAGES/modules_core.mo 4020300131 4020300131 12792 12792 +modules/core/locale/es_MX/LC_MESSAGES/modules_core.mo 1355539517 1355539517 24901 24901 +modules/core/locale/et/LC_MESSAGES/modules_core.mo 1420642355 1420642355 41107 41107 +modules/core/locale/eu/LC_MESSAGES/modules_core.mo 4007323540 4007323540 88579 88579 +modules/core/locale/fi/LC_MESSAGES/modules_core.mo 2027341157 2027341157 105628 105628 +modules/core/locale/fr/LC_MESSAGES/modules_core.mo 1467280129 1467280129 112682 112682 +modules/core/locale/ga/LC_MESSAGES/modules_core.mo 1870517930 1870517930 20182 20182 +modules/core/locale/he/LC_MESSAGES/modules_core.mo 2270527700 2270527700 47383 47383 +modules/core/locale/hu/LC_MESSAGES/modules_core.mo 2854948031 2854948031 85892 85892 +modules/core/locale/is/LC_MESSAGES/modules_core.mo 2633641391 2633641391 612 612 +modules/core/locale/it/LC_MESSAGES/modules_core.mo 2348933115 2348933115 108339 108339 +modules/core/locale/ja/LC_MESSAGES/modules_core.mo 3621691982 3621691982 107172 107172 +modules/core/locale/ko/LC_MESSAGES/modules_core.mo 4072262481 4072262481 63242 63242 +modules/core/locale/lt/LC_MESSAGES/modules_core.mo 221924909 221924909 105064 105064 +modules/core/locale/lv/LC_MESSAGES/modules_core.mo 264154562 264154562 21310 21310 +modules/core/locale/nl/LC_MESSAGES/modules_core.mo 2984328771 2984328771 87114 87114 +modules/core/locale/no/LC_MESSAGES/modules_core.mo 393790879 393790879 104426 104426 +modules/core/locale/pl/LC_MESSAGES/modules_core.mo 2199093503 2199093503 108032 108032 +modules/core/locale/pt/LC_MESSAGES/modules_core.mo 2143564824 2143564824 48446 48446 +modules/core/locale/pt_BR/LC_MESSAGES/modules_core.mo 2319450371 2319450371 99858 99858 +modules/core/locale/ro/LC_MESSAGES/modules_core.mo 1812392577 1812392577 99944 99944 +modules/core/locale/ru/LC_MESSAGES/modules_core.mo 2130395352 2130395352 124984 124984 +modules/core/locale/sk/LC_MESSAGES/modules_core.mo 752806602 752806602 51452 51452 +modules/core/locale/sl/LC_MESSAGES/modules_core.mo 524448441 524448441 7068 7068 +modules/core/locale/sr/LC_MESSAGES/modules_core.mo 2487818504 2487818504 106751 106751 +modules/core/locale/sv/LC_MESSAGES/modules_core.mo 1826272482 1826272482 105768 105768 +modules/core/locale/tr/LC_MESSAGES/modules_core.mo 2075568099 2075568099 35554 35554 +modules/core/locale/uk/LC_MESSAGES/modules_core.mo 1399762056 1399762056 110879 110879 +modules/core/locale/vi/LC_MESSAGES/modules_core.mo 2998938853 2998938853 81579 81579 +modules/core/locale/zh_CN/LC_MESSAGES/modules_core.mo 3401054278 3401054278 79379 79379 +modules/core/locale/zh_TW/LC_MESSAGES/modules_core.mo 2096570485 2096570485 99452 99452 +modules/core/module.inc 3898334575 402974461 16407 16903 +modules/core/po/GNUmakefile 1866879166 2808215985 98 103 +modules/core/po/af.po 3827306461 3127092828 98817 102528 +modules/core/po/ar.po 2975738929 3642575605 105214 108822 +modules/core/po/bg.po 239516239 1599073977 86109 89605 +modules/core/po/ca.po 344332303 1750027930 105670 109392 +modules/core/po/cs.po 2472244865 2941817446 109550 113230 +modules/core/po/da.po 3146928831 3948032127 106955 110635 +modules/core/po/de.po 4124453062 2198768577 117031 120829 +modules/core/po/el.po 3711473009 4191122819 148496 152232 +modules/core/po/en_GB.po 3688419828 2746610871 105374 109056 +modules/core/po/es.po 2666218702 385138842 114092 117836 +modules/core/po/es_AR.po 3771909866 1367677739 114943 119010 +modules/core/po/es_MX.po 3622412590 1422581070 117141 121233 +modules/core/po/et.po 2650748505 2674738276 81167 84678 +modules/core/po/eu.po 895411745 2492420139 103593 107285 +modules/core/po/fi.po 3020163282 995119607 109248 112930 +modules/core/po/fr.po 3613676771 3756548980 117561 121327 +modules/core/po/ga.po 33234032 2337917741 85311 89083 +modules/core/po/he.po 3994768516 2788693631 96016 99623 +modules/core/po/hu.po 2425940863 3153462011 101239 104845 +modules/core/po/is.po 1506163848 2325841989 64271 67661 +modules/core/po/it.po 188473731 487528898 112246 115985 +modules/core/po/ja.po 1580221767 4110274214 117230 120833 +modules/core/po/ko.po 1231619399 3919496533 95859 99416 +modules/core/po/lt.po 46701885 975040577 110440 114142 +modules/core/po/lv.po 1478384943 3328676116 72412 75833 +modules/core/po/nl.po 3049322337 1105797535 105114 108845 +modules/core/po/no.po 1354929475 3407594297 108187 111871 +modules/core/po/pl.po 1919945111 1033852402 111833 115562 +modules/core/po/pt.po 1912850499 2508156582 95965 99771 +modules/core/po/pt_BR.po 1402752656 1804305824 109838 113532 +modules/core/po/ro.po 2845567136 3787581055 107156 110833 +modules/core/po/ru.po 1722751118 2156936883 145409 149197 +modules/core/po/sk.po 3740609613 1367471884 87158 90703 +modules/core/po/sl.po 3006082230 813479567 66791 70216 +modules/core/po/sr.po 2662345754 1220089524 114389 118274 +modules/core/po/strings.raw 3482976355 3730985726 66645 67868 +modules/core/po/sv.po 944643994 56112320 110160 113858 +modules/core/po/tr.po 3663598708 1773659305 80706 84205 +modules/core/po/uk.po 2260066662 318830483 131707 135443 +modules/core/po/vi.po 900270881 3203528000 108144 111831 +modules/core/po/zh_CN.po 3468040016 3668326422 95084 98636 +modules/core/po/zh_TW.po 2939614066 3626597712 102067 105579 +modules/core/templates/AdminCore.tpl 3097197750 3071118409 13620 13955 +modules/core/templates/AdminCreateGroup.tpl 3804188172 3783270452 1343 1382 +modules/core/templates/AdminCreateUser.tpl 1261255686 363520659 3072 3180 +modules/core/templates/AdminDeleteGroup.tpl 815224703 4120920854 1088 1116 +modules/core/templates/AdminDeleteUser.tpl 4072578080 2271048372 3249 3336 +modules/core/templates/AdminEditGroup.tpl 3257021680 2522482113 1573 1616 +modules/core/templates/AdminEditGroupUsers.tpl 3780031696 2395028236 5691 5855 +modules/core/templates/AdminEditUser.tpl 4005999971 3802450809 4292 4425 +modules/core/templates/AdminGroups.tpl 3566666160 3629106710 5548 5704 +modules/core/templates/AdminMaintenance.tpl 2914086177 3771497574 2922 3009 +modules/core/templates/AdminPerformance.tpl 2938508000 1476987358 5207 5342 +modules/core/templates/AdminPlugins.js 3373366232 64356158 7957 8197 +modules/core/templates/AdminPlugins.tpl 2457708758 2455129062 13275 13538 +modules/core/templates/AdminPluginsLegend.tpl 2042806874 3537232441 1322 1354 +modules/core/templates/AdminRepository.js 300453090 177871495 2103 2168 +modules/core/templates/AdminRepository.tpl 958382710 2721057492 14930 15277 +modules/core/templates/AdminRepositoryDownload.js 643929490 3295539249 1314 1358 +modules/core/templates/AdminRepositoryDownload.tpl 4175646754 3987917927 5318 5428 +modules/core/templates/AdminThemes.tpl 3048166558 2260420977 10035 10323 +modules/core/templates/AdminToolkitPriority.tpl 1759607716 3616960899 2365 2433 +modules/core/templates/AdminUsers.tpl 2596077093 1151593518 5493 5657 +modules/core/templates/AutoComplete.tpl 1337773861 2713891692 1145 1169 +modules/core/templates/CreateThumbnailOption.tpl 1994247833 611809929 944 963 +modules/core/templates/DefaultButton.tpl 1258018173 924099518 1374 1398 +modules/core/templates/Dimensions.tpl 2190881429 75331729 1354 1389 +modules/core/templates/EmailTest.tpl 448704814 806908924 331 338 +modules/core/templates/ErrorPage.tpl 3887764930 2021057018 5438 5598 +modules/core/templates/FallbackTheme.tpl 1335420454 2301879649 527 542 +modules/core/templates/ItemAdd.tpl 3973653940 3365783624 1455 1495 +modules/core/templates/ItemAddAlbum.tpl 1302725233 2470818088 3168 3267 +modules/core/templates/ItemAddConfirmation.tpl 1444990109 1651517735 1442 1490 +modules/core/templates/ItemAddFromBrowser.tpl 597825292 4035361204 4018 4115 +modules/core/templates/ItemAdmin.tpl 1535233116 1328013470 1930 1988 +modules/core/templates/ItemDelete.tpl 2817011968 3340227224 5672 5823 +modules/core/templates/ItemDeleteConfirmation.tpl 1685406818 1056688543 474 487 +modules/core/templates/ItemDeleteSingle.tpl 77890436 3063904518 1018 1047 +modules/core/templates/ItemEdit.tpl 2065071893 3380052651 1609 1662 +modules/core/templates/ItemEditAlbum.tpl 2078857524 3958501918 5750 5894 +modules/core/templates/ItemEditAnimation.tpl 3352907060 3355000196 1768 1815 +modules/core/templates/ItemEditCaptions.tpl 4037030630 2454697424 5456 5602 +modules/core/templates/ItemEditItem.tpl 1428926207 2965838050 7326 7543 +modules/core/templates/ItemEditMovie.tpl 336972428 3498487429 1725 1770 +modules/core/templates/ItemEditPhoto.tpl 753510636 1642410947 2170 2228 +modules/core/templates/ItemEditPhotoThumbnail.css 2517483465 817094381 1175 1253 +modules/core/templates/ItemEditPhotoThumbnail.tpl 1622137022 1567097987 4798 4912 +modules/core/templates/ItemEditRotateAndScalePhoto.tpl 3450914850 2360900523 4722 4839 +modules/core/templates/ItemEditTheme.tpl 1941879819 1733280424 2260 2308 +modules/core/templates/ItemMakeHighlight.tpl 403370741 4288684334 1191 1223 +modules/core/templates/ItemMove.tpl 1491027065 3879430177 10532 10798 +modules/core/templates/ItemMoveSingle.tpl 8013002 940019288 1681 1731 +modules/core/templates/ItemPermissions.tpl 236042125 266030026 9621 9887 +modules/core/templates/ItemReorder.tpl 866760582 714075774 2108 2168 +modules/core/templates/JavaScriptWarning.tpl 1058259032 2827968779 580 591 +modules/core/templates/MaintenanceMode.tpl 4087350788 2538396215 679 699 +modules/core/templates/MarkupBar.tpl 3660339360 1858233749 6775 6931 +modules/core/templates/ShowItem.tpl 2293912855 2205012850 280 287 +modules/core/templates/ShowItemError.tpl 934558869 4026653147 3005 3057 +modules/core/templates/SidebarBlock.tpl 4005833103 1194777957 505 516 +modules/core/templates/SiteAdmin.tpl 3704701336 27099969 1702 1757 +modules/core/templates/UserAdmin.tpl 1726354972 4218102301 1526 1572 +modules/core/templates/UserChangePassword.tpl 2953108601 979654862 2488 2577 +modules/core/templates/UserLocked.tpl 389887779 1647670829 683 697 +modules/core/templates/UserLogin.tpl 2597109292 3419570072 3009 3088 +modules/core/templates/UserPreferences.tpl 2204550882 1319972523 2772 2868 +modules/core/templates/UserRecoverPassword.tpl 1335791545 2426450185 2693 2750 +modules/core/templates/UserRecoverPasswordAdmin.tpl 2792432789 952608089 4915 5041 +modules/core/templates/UserRecoverPasswordConfirm.tpl 1066197966 3157707383 2668 2750 +modules/core/templates/UserRecoverPasswordEmail.tpl 4113337349 1059603847 764 782 +modules/core/templates/blocks/BreadCrumb.tpl 1505880397 3416468955 1444 1477 +modules/core/templates/blocks/EmergencyEditItemLink.tpl 392573189 3960947894 1011 1032 +modules/core/templates/blocks/GuestPreview.tpl 902818568 36142618 858 876 +modules/core/templates/blocks/ItemInfo.tpl 386572058 3252160989 1464 1513 +modules/core/templates/blocks/ItemLinks.tpl 481907877 434967216 1862 1910 +modules/core/templates/blocks/LanguageSelector.tpl 478461352 1613447497 938 961 +modules/core/templates/blocks/LoginBlock.tpl 3040995182 2498509335 1567 1601 +modules/core/templates/blocks/NavigationLinks.tpl 2143970538 10653227 552 572 +modules/core/templates/blocks/Navigator.tpl 3588136865 3426064195 3044 3129 +modules/core/templates/blocks/Pager.tpl 94780700 3623583417 848 878 +modules/core/templates/blocks/PeerList.tpl 3735666696 666223219 1265 1298 +modules/core/templates/blocks/PhotoSizes.tpl 2033605046 1022032780 1804 1855 +modules/core/templates/blocks/SystemLink.tpl 3643200621 4047141486 464 476 +modules/core/templates/blocks/SystemLinks.tpl 1950007329 1980823451 1267 1304 +modules/core/templates/blocks/ThemeSettingsForm.tpl 1549968410 353239461 8314 8555 +modules/core/templates/blocks/blocks.inc 3504865617 701317870 514 533 +R modules/core/AdminLayouts.inc +R modules/core/AdminModules.inc +R modules/core/AdminModulesVerifyUninstall.inc +R modules/core/ItemAddFromServer.inc +R modules/core/ItemAddFromWeb.inc +R modules/core/ItemCreateLink.inc +R modules/core/ItemCreateLinkSingle.inc +R modules/core/ItemEditLayout.inc +R modules/core/ItemEditPhotoSizes.inc +R modules/core/ModuleCallback.inc +R modules/core/Navigation.inc +R modules/core/ObsoleteDataError.inc +R modules/core/OptimizeDatabaseTask.inc +R modules/core/SecurityViolation.inc +R modules/core/classes/ExternalIdMap.class +R modules/core/classes/GalleryAccessMap.class +R modules/core/classes/GalleryAccessSubscriberMap.class +R modules/core/classes/GalleryDerivativePreferencesMap.class +R modules/core/classes/GalleryDescendentCountsMap.class +R modules/core/classes/GalleryFactoryMap.class +R modules/core/classes/GalleryImmediateStatusView.class +R modules/core/classes/GalleryItemAttributesMap.class +R modules/core/classes/GalleryItemPropertiesMap.class +R modules/core/classes/GalleryLayout.class +R modules/core/classes/GalleryMaintenanceMap.class +R modules/core/classes/GalleryMimeTypeMap.class +R modules/core/classes/GalleryPermissionMap.class +R modules/core/classes/GalleryPermissionSetMap.class +R modules/core/classes/GalleryPluginMap.class +R modules/core/classes/GalleryPluginPackageMap.class +R modules/core/classes/GalleryPluginParameterMap.class +R modules/core/classes/GalleryRecoverPasswordMap.class +R modules/core/classes/GallerySearchResults.class +R modules/core/classes/GallerySortInterface_1.0.class +R modules/core/classes/GallerySortInterface_1_1.class +R modules/core/classes/GalleryStorage/DatabaseSearchResults.class +R modules/core/classes/GalleryStorage/DatabaseSqlFragment.class +R modules/core/classes/GalleryStorage/DatabaseStorage.class +R modules/core/classes/GalleryStorage/DatabaseStorage/CreateBitOr.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/CreateDb2Udfs.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/Db2DatabaseStorage.class +R modules/core/classes/GalleryStorage/DatabaseStorage/ErrorHandler.inc +R modules/core/classes/GalleryStorage/DatabaseStorage/MySqlDatabaseStorage.class +R modules/core/classes/GalleryStorage/DatabaseStorage/OracleDatabaseStorage.class +R modules/core/classes/GalleryStorage/DatabaseStorage/PostgreSqlDatabaseStorage.class +R modules/core/classes/GalleryStorage/DatabaseStorage/g2_db2.jar +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/GNUmakefile +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/GNUmakefile +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/GNUmakefile.inc +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryAlbumItem_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryDerivative_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryDerivative_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryEntity_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryGroup_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryItem_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryPluginMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryPluginParameterMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryPluginParameterMap_1.1.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/A_GalleryPluginParameterMap_1.2.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/ExternalIdMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GNUmakefile +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryAccessMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryAccessSubscriberMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryAlbumItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryAnimationItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryChildEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryDataItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryDerivative.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryDerivativeImage.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryDerivativePreferencesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryDescendentCountsMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryFactoryMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryFileSystemEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryGroup.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryItemAttributesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryItemPropertiesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryMaintenanceMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryModuleMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryModuleParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryMovieItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryPermissionMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryPermissionSetMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryPhotoItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryPluginMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryPluginParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryRecoverPasswordMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GallerySession.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryToolkitOperationMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryToolkitOperationMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryToolkitOperationParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryToolkitPropertyMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryToolkitPropertyMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryUnknownItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryUser.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryUserGroupMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/GalleryViewCountMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/InstallerTest_sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/Lock.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/MySQL.xsl +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/R_GalleryItemPropertiesMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/R_GalleryItemPropertiesMap_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/R_GalleryPermissionMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/R_GalleryPermissionMap_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/Schema.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/T_InstallerTest_1.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/T_InstallerTest_2.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/T_InstallerTest_3.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql/T_InstallerTest_4.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/mysql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryAlbumItem_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryDerivative_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryDerivative_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryEntity_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryGroup_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryItem_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryPluginMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryPluginParameterMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryPluginParameterMap_1.1.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/A_GalleryPluginParameterMap_1.2.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/CreateBitOr.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/CreateBitOr_sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/ExternalIdMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GNUmakefile +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryAccessMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryAccessSubscriberMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryAlbumItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryAnimationItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryChildEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryDataItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryDerivative.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryDerivativeImage.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryDerivativePreferencesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryDescendentCountsMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryFactoryMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryFileSystemEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryGroup.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryItemAttributesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryItemPropertiesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryMaintenanceMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryMovieItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryPermissionMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryPermissionSetMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryPhotoItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryPluginMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryPluginParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryRecoverPasswordMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryToolkitOperationMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryToolkitOperationMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryToolkitOperationParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryToolkitPropertyMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryToolkitPropertyMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryUnknownItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryUser.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/GalleryUserGroupMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/InitRandom.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/InstallerTest_sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/Lock.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/Oracle.xsl +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/R_GalleryItemPropertiesMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/R_GalleryItemPropertiesMap_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/R_GalleryPermissionMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/R_GalleryPermissionMap_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/Schema.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/T_InstallerTest_1.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/T_InstallerTest_2.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/T_InstallerTest_3.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle/T_InstallerTest_4.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/oracle +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryAlbumItem_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryDerivative_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryDerivative_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryEntity_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryGroup_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryItem_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryPluginMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryPluginParameterMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryPluginParameterMap_1.1.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/A_GalleryPluginParameterMap_1.2.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/CreateBitOr.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/ExternalIdMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GNUmakefile +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryAccessMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryAccessSubscriberMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryAlbumItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryAnimationItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryChildEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryDataItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryDerivative.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryDerivativeImage.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryDerivativePreferencesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryDescendentCountsMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryFactoryMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryFileSystemEntity.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryGroup.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryItemAttributesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryItemPropertiesMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryMaintenanceMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryModuleMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryModuleParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryMovieItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryPermissionMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryPermissionSetMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryPhotoItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryPluginMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryPluginParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryRecoverPasswordMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GallerySession.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryToolkitOperationMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryToolkitOperationMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryToolkitOperationParameterMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryToolkitPropertyMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryToolkitPropertyMimeTypeMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryUnknownItem.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryUser.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryUserGroupMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/GalleryViewCountMap.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/InstallerTest_sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/Lock.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/PostgreSQL.xsl +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/R_GalleryItemPropertiesMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/R_GalleryItemPropertiesMap_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/R_GalleryPermissionMap_1.0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/R_GalleryPermissionMap_1_0.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/Schema.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/T_InstallerTest_1.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/T_InstallerTest_2.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/T_InstallerTest_3.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres/T_InstallerTest_4.sql +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform/postgres +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/platform +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/schema.tpl +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-out/InstallerTest.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-out +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryAccessMap_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryAccessMap_1.1.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryAlbumItem_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryDerivative_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryDerivative_1_0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryEntity_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryGroup_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryItem_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryPluginMap_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryPluginParameterMap_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryPluginParameterMap_1.1.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryPluginParameterMap_1.2.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/A_GalleryUser_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/DbXml.xsl +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/GNUmakefile +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/Lock.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/R_GalleryItemPropertiesMap_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/R_GalleryItemPropertiesMap_1_0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/R_GalleryPermissionMap_1.0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/R_GalleryPermissionMap_1_0.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/Schema.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/T_InstallerTest_1.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/T_InstallerTest_2.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/T_InstallerTest_3.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src/T_InstallerTest_4.xml +R modules/core/classes/GalleryStorage/DatabaseStorage/schema/xml-src +R modules/core/classes/GalleryStorage/DatabaseStorage/schema +R modules/core/classes/GalleryStorage/DatabaseStorage +R modules/core/classes/GalleryStorage/DatabaseStorageExtras.class +R modules/core/classes/GalleryStorage/MySqlStorage.class +R modules/core/classes/GalleryToolkitOperationMap.class +R modules/core/classes/GalleryToolkitOperationMimeTypeMap.class +R modules/core/classes/GalleryToolkitOperationParameterMap.class +R modules/core/classes/GalleryToolkitPropertyMap.class +R modules/core/classes/GalleryToolkitPropertyMimeTypeMap.class +R modules/core/classes/GalleryUserGroupMap.class +R modules/core/classes/SessionAuthPlugin.class +R modules/core/classes/helpers/GalleryLockHelper_medium.class +R modules/core/classes/helpers/GalleryPermissionHelper_medium.class +R modules/core/classes/helpers/MimeHelper_simple.class +R modules/core/classes/interfaces/ClassCode.xsl +R modules/core/classes/interfaces/ExternalIdMap.inc +R modules/core/classes/interfaces/GNUmakefile +R modules/core/classes/interfaces/GalleryAccessMap.inc +R modules/core/classes/interfaces/GalleryAccessSubscriberMap.inc +R modules/core/classes/interfaces/GalleryAlbumItem.inc +R modules/core/classes/interfaces/GalleryAnimationItem.inc +R modules/core/classes/interfaces/GalleryChildEntity.inc +R modules/core/classes/interfaces/GalleryDataItem.inc +R modules/core/classes/interfaces/GalleryDerivative.inc +R modules/core/classes/interfaces/GalleryDerivativeImage.inc +R modules/core/classes/interfaces/GalleryDerivativePreferencesMap.inc +R modules/core/classes/interfaces/GalleryDescendentCountsMap.inc +R modules/core/classes/interfaces/GalleryEntity.inc +R modules/core/classes/interfaces/GalleryFactoryMap.inc +R modules/core/classes/interfaces/GalleryFileSystemEntity.inc +R modules/core/classes/interfaces/GalleryGroup.inc +R modules/core/classes/interfaces/GalleryItem.inc +R modules/core/classes/interfaces/GalleryItemAttributesMap.inc +R modules/core/classes/interfaces/GalleryItemPropertiesMap.inc +R modules/core/classes/interfaces/GalleryMaintenanceMap.inc +R modules/core/classes/interfaces/GalleryMimeTypeMap.inc +R modules/core/classes/interfaces/GalleryModuleMap.inc +R modules/core/classes/interfaces/GalleryModuleParameterMap.inc +R modules/core/classes/interfaces/GalleryMovieItem.inc +R modules/core/classes/interfaces/GalleryPermissionMap.inc +R modules/core/classes/interfaces/GalleryPermissionSetMap.inc +R modules/core/classes/interfaces/GalleryPhotoItem.inc +R modules/core/classes/interfaces/GalleryPluginMap.inc +R modules/core/classes/interfaces/GalleryPluginPackageMap.inc +R modules/core/classes/interfaces/GalleryPluginParameterMap.inc +R modules/core/classes/interfaces/GalleryRecoverPasswordMap.inc +R modules/core/classes/interfaces/GallerySession.inc +R modules/core/classes/interfaces/GalleryToolkitOperationMap.inc +R modules/core/classes/interfaces/GalleryToolkitOperationMimeTypeMap.inc +R modules/core/classes/interfaces/GalleryToolkitOperationParameterMap.inc +R modules/core/classes/interfaces/GalleryToolkitPropertyMap.inc +R modules/core/classes/interfaces/GalleryToolkitPropertyMimeTypeMap.inc +R modules/core/classes/interfaces/GalleryUnknownItem.inc +R modules/core/classes/interfaces/GalleryUser.inc +R modules/core/classes/interfaces/GalleryUserGroupMap.inc +R modules/core/classes/interfaces/GalleryViewCountMap.inc +R modules/core/classes/interfaces +R modules/core/data/g2-unpossible.mp3 +R modules/core/data/g2-unpossible.png +R modules/core/data/g21-blackjack.html +R modules/core/data/g21-blackjack.png +R modules/core/data/g21-blackjack.swf +R modules/core/data/g21-rc1-hitme.mov +R modules/core/data/g2b3-bingo.png +R modules/core/data/g2b3-bingo.wav +R modules/core/data/g2b4-flippin-sweet-full.jpg +R modules/core/data/g2b4-flippin-sweet-full.png +R modules/core/data/g2b4-flippin-sweet-logo.png +R modules/core/data/g2b4-flippin-sweet.html +R modules/core/data/g2rc1-+5-insightful.png +R modules/core/data/g2rc2-kthxbye.mp3 +R modules/core/data/g2rc2-kthxbye.png +R modules/core/locale/ar_SA/LC_MESSAGES/modules_core.mo +R modules/core/locale/ar_SA/LC_MESSAGES +R modules/core/locale/ar_SA +R modules/core/locale/bg_BG/LC_MESSAGES/modules_core.mo +R modules/core/locale/bg_BG/LC_MESSAGES +R modules/core/locale/bg_BG +R modules/core/locale/cs_CZ/LC_MESSAGES/modules_core.mo +R modules/core/locale/cs_CZ/LC_MESSAGES +R modules/core/locale/cs_CZ +R modules/core/locale/da_DK/LC_MESSAGES/modules_core.mo +R modules/core/locale/da_DK/LC_MESSAGES +R modules/core/locale/da_DK +R modules/core/locale/de_DE/LC_MESSAGES/modules_core.mo +R modules/core/locale/de_DE/LC_MESSAGES +R modules/core/locale/de_DE +R modules/core/locale/el_GR/LC_MESSAGES/modules_core.mo +R modules/core/locale/el_GR/LC_MESSAGES +R modules/core/locale/el_GR +R modules/core/locale/es_ES/LC_MESSAGES/modules_core.mo +R modules/core/locale/es_ES/LC_MESSAGES +R modules/core/locale/es_ES +R modules/core/locale/eu_ES/LC_MESSAGES/modules_core.mo +R modules/core/locale/eu_ES/LC_MESSAGES +R modules/core/locale/eu_ES +R modules/core/locale/fi_FI/LC_MESSAGES/modules_core.mo +R modules/core/locale/fi_FI/LC_MESSAGES +R modules/core/locale/fi_FI +R modules/core/locale/fr_FR/LC_MESSAGES/modules_core.mo +R modules/core/locale/fr_FR/LC_MESSAGES +R modules/core/locale/fr_FR +R modules/core/locale/ga_IE/LC_MESSAGES/modules_core.mo +R modules/core/locale/ga_IE/LC_MESSAGES +R modules/core/locale/ga_IE +R modules/core/locale/he_IL/LC_MESSAGES/modules_core.mo +R modules/core/locale/he_IL/LC_MESSAGES +R modules/core/locale/he_IL +R modules/core/locale/hu_HU/LC_MESSAGES/modules_core.mo +R modules/core/locale/hu_HU/LC_MESSAGES +R modules/core/locale/hu_HU +R modules/core/locale/is_IS/LC_MESSAGES/modules_core.mo +R modules/core/locale/is_IS/LC_MESSAGES +R modules/core/locale/is_IS +R modules/core/locale/it_IT/LC_MESSAGES/modules_core.mo +R modules/core/locale/it_IT/LC_MESSAGES +R modules/core/locale/it_IT +R modules/core/locale/ja_JP/LC_MESSAGES/modules_core.mo +R modules/core/locale/ja_JP/LC_MESSAGES +R modules/core/locale/ja_JP +R modules/core/locale/nl_NL/LC_MESSAGES/modules_core.mo +R modules/core/locale/nl_NL/LC_MESSAGES +R modules/core/locale/nl_NL +R modules/core/locale/no_NO/LC_MESSAGES/modules_core.mo +R modules/core/locale/no_NO/LC_MESSAGES +R modules/core/locale/no_NO +R modules/core/locale/pl_PL/LC_MESSAGES/modules_core.mo +R modules/core/locale/pl_PL/LC_MESSAGES +R modules/core/locale/pl_PL +R modules/core/locale/pt_PT/LC_MESSAGES/modules_core.mo +R modules/core/locale/pt_PT/LC_MESSAGES +R modules/core/locale/pt_PT +R modules/core/locale/ru_RU/LC_MESSAGES/modules_core.mo +R modules/core/locale/ru_RU/LC_MESSAGES +R modules/core/locale/ru_RU +R modules/core/locale/sr_YU/LC_MESSAGES/modules_core.mo +R modules/core/locale/sr_YU/LC_MESSAGES +R modules/core/locale/sr_YU +R modules/core/locale/sv_SE/LC_MESSAGES/modules_core.mo +R modules/core/locale/sv_SE/LC_MESSAGES +R modules/core/locale/sv_SE +R modules/core/locale/tr_TR/LC_MESSAGES/modules_core.mo +R modules/core/locale/tr_TR/LC_MESSAGES +R modules/core/locale/tr_TR +R modules/core/locale/vi_VN/LC_MESSAGES/modules_core.mo +R modules/core/locale/vi_VN/LC_MESSAGES +R modules/core/locale/vi_VN +R modules/core/plugins/ImageCrop.jar +R modules/core/plugins +R modules/core/po/ar_SA.po +R modules/core/po/bg_BG.po +R modules/core/po/cs_CZ.po +R modules/core/po/da_DK.po +R modules/core/po/de_DE.po +R modules/core/po/el_GR.po +R modules/core/po/es_ES.po +R modules/core/po/eu_ES.po +R modules/core/po/fi_FI.po +R modules/core/po/fr_FR.po +R modules/core/po/ga_IE.po +R modules/core/po/he_IL.po +R modules/core/po/hu_HU.po +R modules/core/po/is_IS.po +R modules/core/po/it_IT.po +R modules/core/po/ja_JP.po +R modules/core/po/nl_NL.po +R modules/core/po/no_NO.po +R modules/core/po/pl_PL.po +R modules/core/po/pt_PT.po +R modules/core/po/ru_RU.po +R modules/core/po/sr_YU.po +R modules/core/po/sv_SE.po +R modules/core/po/tr_TR.po +R modules/core/po/vi_VN.po +R modules/core/templates/AdminLayouts.tpl +R modules/core/templates/AdminModules.tpl +R modules/core/templates/AdminModulesVerifyUninstall.tpl +R modules/core/templates/AdminRepositorySetup.tpl +R modules/core/templates/ImmediateStatus.tpl +R modules/core/templates/ImmediateStatusMessage.tpl +R modules/core/templates/ItemAddFromServer.tpl +R modules/core/templates/ItemAddFromWeb.tpl +R modules/core/templates/ItemCreateLink.tpl +R modules/core/templates/ItemCreateLinkSingle.tpl +R modules/core/templates/ItemEditLayout.tpl +R modules/core/templates/ItemEditPhotoSizes.tpl +R modules/core/templates/LanguageSelector.tpl +R modules/core/templates/LateRedirect.tpl +R modules/core/templates/LoginSystemContent.tpl +R modules/core/templates/NavigationSidebar.tpl +R modules/core/templates/ObsoleteDataError.tpl +R modules/core/templates/ObsoleteDataErrorHead.tpl +R modules/core/templates/SecurityViolation.tpl +R modules/core/templates/SecurityViolationHead.tpl +R modules/core/templates/ShowItemHead.tpl +R modules/core/templates/SiteAdminHead.tpl +R modules/core/templates/SplitMarker.tpl +R modules/core/templates/StatusMessage.tpl +R modules/core/templates/UserAdminHead.tpl +R modules/core/templates/UserPreferencesHead.tpl +R modules/core/test/TestCase/CleanStore.class +R modules/core/test/TestCase/ConfigureStore.class +R modules/core/test/TestCase/Constructor.class +R modules/core/test/TestCase/CreateAdminUser.class +R modules/core/test/TestCase/CreateAlbum.class +R modules/core/test/TestCase/CreateAllAdminsGroup.class +R modules/core/test/TestCase/CreateAllUsersGroup.class +R modules/core/test/TestCase/CreateAndDeleteAlbumItem.class +R modules/core/test/TestCase/CreateAndDeleteUser.class +R modules/core/test/TestCase/CreateAnonymousUser.class +R modules/core/test/TestCase/CreateGroupAndUsers.class +R modules/core/test/TestCase/CreateModifyAndDeleteUser.class +R modules/core/test/TestCase/CreateNestedAlbumItem.class +R modules/core/test/TestCase/CreatePhotoItem.class +R modules/core/test/TestCase/CreateRandomGroup.class +R modules/core/test/TestCase/CreateRandomTree.class +R modules/core/test/TestCase/CreateRandomUser.class +R modules/core/test/TestCase/CreateRootAlbumItem.class +R modules/core/test/TestCase/CreateStore.class +R modules/core/test/TestCase/DeleteAllItems.class +R modules/core/test/TestCase/DeleteRandomAlbum.class +R modules/core/test/TestCase/EmptyGallery.class +R modules/core/test/TestCase/FlushCache.class +R modules/core/test/TestCase/FlushTemplates.class +R modules/core/test/TestCase/GetChildren.class +R modules/core/test/TestCase/InitializeGallery.class +R modules/core/test/TestCase/LoadAlbumItem.class +R modules/core/test/TestCase/PerformanceTestData.class +R modules/core/test/TestCase/ReInitializeGallery.class +R modules/core/test/TestCase/RemoveStore.class +R modules/core/test/TestCase/ResetGallery.class +R modules/core/test/TestCase +R modules/core/test/data/RepositoryTest.package +R modules/core/test/data/localUploadDir/subdir +R modules/core/test/data/localUploadDir/test1.gif +R modules/core/test/data/localUploadDir/test1.jpg +R modules/core/test/data/localUploadDir/test2.gif +R modules/core/test/data/localUploadDir/test3.gif +R modules/core/test/data/localUploadDir/test4.gif +R modules/core/test/data/localUploadDir/test[3].gif +R modules/core/test/data/localUploadDir +R modules/core/test/data/test3.gif +R modules/core/test/data/tst1.png +R modules/core/test/phpunit/AdminLayoutsControllerTest.class +R modules/core/test/phpunit/AdminLinkIdTest.class +R modules/core/test/phpunit/AdminModulesControllerTest.class +R modules/core/test/phpunit/AdminModulesVerifyUninstallControllerTest.class +R modules/core/test/phpunit/ItemAddFromServerTest.class +R modules/core/test/phpunit/ItemAddFromWebTest.class +R modules/core/test/phpunit/ItemCreateLinkControllerTest.class +R modules/core/test/phpunit/ItemCreateLinkSingleControllerTest.class +R modules/core/test/phpunit/ItemEditLayoutPluginTest.class +R modules/core/test/phpunit/ItemEditPhotoSizesPluginTest.class +R modules/core/test/phpunit/ItemPropertiesTest.class +R modules/core/test/phpunit/LayoutTest.class +R modules/core/test/phpunit/ModuleCallbackTest.class +R modules/core/test/phpunit/Php41CompatibilityTest.class +R modules/core/test/phpunit/Php41IllegalFunctions.inc +R modules/core/test/phpunit/SafeCssNameTest.class +R modules/core/test/phpunit/TemplateAudit.class +R modules/core/test/phpunit/UserPreferencesControllerTest2.class diff --git a/Source/gallery2/modules/core/MaintenanceMode.inc b/Source/gallery2/modules/core/MaintenanceMode.inc new file mode 100644 index 0000000..18028f0 --- /dev/null +++ b/Source/gallery2/modules/core/MaintenanceMode.inc @@ -0,0 +1,55 @@ + + * @version $Revision: 15513 $ + */ +class MaintenanceModeView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $template->title($module->translate('Maintenance')); + return array(null, array('body' => 'modules/core/templates/MaintenanceMode.tpl', + 'useFullScreen' => true)); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + return array(null, $module->translate('Maintenance')); + } +} +?> diff --git a/Source/gallery2/modules/core/PluginCallback.inc b/Source/gallery2/modules/core/PluginCallback.inc new file mode 100644 index 0000000..716f0c0 --- /dev/null +++ b/Source/gallery2/modules/core/PluginCallback.inc @@ -0,0 +1,474 @@ + + * @version $Revision: 15513 $ + */ +class PluginCallbackView extends GalleryView { + /** + * @var object GalleryRepository + * @access private + */ + var $_repository; + + /** + * @see GalleryView::isImmediate + */ + function isImmediate() { + return true; + } + + /** + * @see GalleryView::isControllerLike + */ + function isControllerLike() { + return true; + } + + /** + * @see GalleryView::renderImmediate + */ + function renderImmediate($status, $error) { + global $gallery; + $session =& $gallery->getSession(); + $storage =& $gallery->getStorage(); + + $command = GalleryUtilities::getRequestVariables('command'); + if (!headers_sent()) { + header("Content-type: text/plain; charset=UTF-8"); + } + + $result = array(); + list ($ret, $beforeStates) = $this->getPluginStates(); + if ($ret) { + $result['status'] = 'error'; + $storage->rollbackTransaction(); /* ignore errors here */ + $ret->putInSession(); + } + + if (!$ret) { + $ret = $this->handleCallback($command, $result); + if ($ret) { + $result['status'] = 'error'; + $storage->rollbackTransaction(); /* ignore errors here */ + $ret->putInSession(); + } else { + /* Make sure this change is isolated from any potential failures we get below. */ + $ret = $storage->checkPoint(); + if ($ret) { + $result['status'] = 'error'; + $ret->putInSession(); + } + } + + if ($result['status'] == 'redirect') { + $urlGenerator =& $gallery->getUrlGenerator(); + $result['redirect'] = + $urlGenerator->generateUrl($result['redirect'], + array('htmlEntities' => 0, 'forceServerRelativeUrl' => 1)); + } + } + + if (!$ret) { + list ($ret, $afterStates) = $this->getPluginStates(); + if ($ret) { + $result['status'] = 'error'; + $storage->rollbackTransaction(); /* ignore errors here */ + $ret->putInSession(); + } else { + $result = array_merge( + $result, $this->calculateStateChanges($beforeStates, $afterStates)); + } + } + + GalleryCoreApi::requireOnce('lib/JSON/JSON.php'); + $json = new Services_JSON(); + print $json->encode($result); + return null; + } + + /** + * Given two sets of states, figure out what's changed from before to after. + * + * @param array $beforeStates (moduleId => state, ...) + * @param array $afterStates (moduleId => state, ...) + * @return array changed states (moduleId => state, ...) + * @static + */ + function calculateStateChanges($beforeStates, $afterStates) { + $states = array(); + $deleted = array(); + foreach (array('module', 'theme') as $type) { + foreach ($beforeStates[$type] as $moduleId => $state) { + if (!isset($afterStates[$type][$moduleId])) { + $deleted[$type][$moduleId] = 1; + } else if ($afterStates[$type][$moduleId] != $state) { + $states[$type][$moduleId] = $afterStates[$type][$moduleId]; + } + } + } + return array('states' => $states, 'deleted' => $deleted); + } + + /** + * Handle the specific callback, and store its result in the given output array. + * + * @param string $command (eg. "installModule") + * @param array $result the location for result data to be sent back to the browser + * @return object GalleryStatus a status code + * @static + */ + function handleCallback($command, &$result) { + global $gallery; + $platform =& $gallery->getPlatform(); + + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return $ret; + } + + $result = array(); + list ($pluginType, $pluginId) = + GalleryUtilities::getRequestVariables('pluginType', 'pluginId'); + + list ($ret, $plugin) = GalleryCoreApi::loadPlugin($pluginType, $pluginId, true); + if ($ret) { + return $ret; + } + + list ($ret, $isActive) = $plugin->isActive(); + if ($ret) { + return $ret; + } + + switch($command) { + case 'activate': + + if ($pluginType == 'module') { + list ($ret, $needsConfiguration) = $plugin->needsConfiguration(); + if ($ret) { + return $ret; + } + } else { + /* Themes don't need configuration */ + $needsConfiguration = false; + } + + if ($isActive || $needsConfiguration) { + /* UI shouldn't let us come here anyway */ + $result['status'] = 'invalid'; + return null; + } + + list ($ret, $redirect) = $plugin->activate(); + if ($ret) { + return $ret; + } + + if ($redirect) { + $result['status'] = 'redirect'; + $result['redirect'] = $redirect; + } else { + $result['status'] = 'success'; + } + break; + + case 'deactivate': + if (!$isActive) { + /* UI shouldn't let us come here anyway */ + $result['status'] = 'invalid'; + return null; + } + + if ($pluginType == 'theme') { + list ($ret, $defaultThemeId) = GalleryCoreApi::getPluginParameter( + 'module', 'core', 'default.theme'); + if ($ret) { + return $ret; + } + + if ($plugin->getId() == $defaultThemeId) { + /* UI shouldn't let us come here anyway */ + $result['status'] = 'invalid'; + } + } + + if (empty($result['status'])) { + list ($ret, $redirect) = $plugin->deactivate(); + if ($ret) { + return $ret; + } + + if ($redirect) { + $result['status'] = 'redirect'; + $result['redirect'] = $redirect; + } else { + $result['status'] = 'success'; + } + } + break; + + case 'upgrade': + case 'install': + $ret = $plugin->installOrUpgrade(); + if ($ret) { + return $ret; + } + + if ($pluginType == 'module') { + list ($ret, $autoConfigured) = $plugin->autoConfigure(); + if ($ret) { + return $ret; + } + } else { + /* Themes don't need this step */ + $autoConfigured = true; + } + + + if ($autoConfigured) { + list ($ret, $redirect) = $plugin->activate(); + if ($ret) { + if ($ret->getErrorCode() & ERROR_CONFIGURATION_REQUIRED) { + /* + * Some modules don't override autoConfigure which defaults to success. + * Show the "Modules needs configuration" message. + */ + } else { + return $ret; + } + } + + if ($redirect) { + $result['status'] = 'redirect'; + $result['redirect'] = $redirect; + } else { + $result['status'] = 'success'; + } + } else { + $result['status'] = 'success'; + } + + if (empty($this->_repository)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryRepository.class'); + $this->_repository = new GalleryRepository(); + $this->_repository->init(''); /* bogus repository, but that should be ok */ + } + + $ret = $this->_repository->scanPlugin($pluginType, $pluginId); + if ($ret && !($ret->getErrorCode() & ERROR_STORAGE_FAILURE)) { + /* + * Something is wrong with this plugin. Maybe it's a 3rd party plugin w/o MANIFEST + * file, maybe it has no revisions in the po files, maybe the module.inc is foobar. + * Just log and ignore it. + */ + if ($gallery->getDebug()) { + $gallery->debug_r($ret); + } + } else if ($ret) { + return $ret; + } + + break; + + case 'uninstall': + if ($isActive) { + list ($ret, $redirect) = $plugin->deactivate(); + if ($ret) { + return $ret; + } + } else { + $redirect = false; + } + + if ($redirect) { + $result['status'] = 'redirect'; + $results['redirect'] = $redirect; + } else { + $ret = $plugin->uninstall(); + if ($ret) { + return $ret; + } + $result['status'] = 'success'; + } + break; + + case 'delete': + if ($isActive) { + list ($ret, $redirect) = $plugin->deactivate(); + if ($ret) { + return $ret; + } + } else { + $redirect = false; + } + + if ($redirect) { + $result['status'] = 'redirect'; + $results['redirect'] = $redirect; + } else { + $ret = $plugin->uninstall(); + if ($ret) { + return $ret; + } + + $path = sprintf( + "%s/%ss/%s", dirname(dirname(dirname(__FILE__))), $pluginType, $pluginId); + $success = @$platform->recursiveRmdir($path); + if (!$success) { + $result['status'] = 'fail'; + } else { + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryPluginPackageMap', + array('pluginType' => $pluginType, 'pluginId' => $pluginId)); + if ($ret) { + return $ret; + } + + $result['status'] = 'success'; + } + } + break; + + case 'configure': + $result['status'] = 'redirect'; + $result['redirect'] = array('view' => 'core.SiteAdmin', + 'subView' => $plugin->getConfigurationView()); + break; + } + + return null; + } + + /** + * Get the state ('active', 'inactive', 'uninstalled', etc) of all modules + * + * @return array object GalleryStatus a status code + * array(moduleId => state, ...) + * @static + */ + function getPluginStates() { + $states = array(); + + foreach (array('module', 'theme') as $type) { + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus($type, true); + if ($ret) { + return array($ret, null); + } + foreach ($pluginStatus as $pluginId => $status) { + list ($ret, $plugin) = GalleryCoreApi::loadPlugin($type, $pluginId, true); + if ($ret) { + return array($ret, null); + } + + list ($ret, $states[$type][$pluginId]) = + $this->getPluginState($type, $plugin, $status); + if ($ret) { + return array($ret, null); + } + } + } + + return array(null, $states); + } + + /** + * Get the state ('active', 'inactive', 'uninstalled', etc) of a given module + * + * @param string $type ('module' or 'theme') + * @param object GalleryPlugin $plugin + * @param array $status status of the plugin (from GalleryCoreApi::fetchPluginStatus) + * @return array object GalleryStatus a status code + * string a state + * @static + */ + function getPluginState($type, $plugin, $status) { + if ($type == 'module' && $plugin->getId() == 'core') { + return array(null, 'active'); + } + + $coreApiCompatible = GalleryUtilities::isCompatibleWithApi( + $plugin->getRequiredCoreApi(), GalleryCoreApi::getApiVersion()); + + /* TODO: refactor this into type specific wrapper methods around getPluginState() */ + switch ($type) { + case 'module': + $pluginApiCompatible = GalleryUtilities::isCompatibleWithApi( + $plugin->getRequiredModuleApi(), GalleryModule::getApiVersion()); + break; + + case 'theme': + $pluginApiCompatible = GalleryUtilities::isCompatibleWithApi( + $plugin->getRequiredThemeApi(), GalleryTheme::getApiVersion()); + break; + } + + if ($coreApiCompatible && $pluginApiCompatible) { + if (empty($status['active'])) { + $version = $status['version']; + $state = 'inactive'; + + /* + * If the database versions doesn't match the module + * version, we need to get the user to install the module. + */ + if ($version != $plugin->getVersion()) { + if (empty($version)) { + $state = 'uninstalled'; + } else { + $state = 'unupgraded'; + } + } else { + if ($type == 'module') { + /* + * The versions match, but the module can still demand + * to be configured before being activated. + */ + list ($ret, $needsConfig) = $plugin->needsConfiguration(); + if ($ret) { + return array($ret, null); + } + } else { + $needsConfig = false; + } + + if ($needsConfig) { + $state = 'unconfigured'; + } else { + $state = 'inactive'; + } + } + } else { + $state = 'active'; + } + } else { + $state = 'incompatible'; + } + + return array(null, $state); + } +} +?> diff --git a/Source/gallery2/modules/core/ProgressBar.inc b/Source/gallery2/modules/core/ProgressBar.inc new file mode 100644 index 0000000..2293059 --- /dev/null +++ b/Source/gallery2/modules/core/ProgressBar.inc @@ -0,0 +1,36 @@ + + * @version $Revision: 15513 $ + */ +class ProgressBarView extends GalleryView { + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_PROGRESS_BAR; + } +} +?> diff --git a/Source/gallery2/modules/core/RepositoryCallback.inc b/Source/gallery2/modules/core/RepositoryCallback.inc new file mode 100644 index 0000000..ac3a114 --- /dev/null +++ b/Source/gallery2/modules/core/RepositoryCallback.inc @@ -0,0 +1,82 @@ + + * @version $Revision: 15513 $ + */ +class RepositoryCallbackView extends GalleryView { + /** + * @see GalleryView::isImmediate + */ + function isImmediate() { + return true; + } + + /** + * @see GalleryView::isControllerLike + */ + function isControllerLike() { + return true; + } + + /** + * @see GalleryView::renderImmediate + */ + function renderImmediate($status, $error) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return $ret; + } + + list ($command, $form) = GalleryUtilities::getRequestVariables('command', 'form'); + if ($command == 'saveRepositoryList') { + /* + * Filter the form values through our list of valid keys to avoid exploits + * This is duplicated from AdminRepositoryController. Success is assumed here + * since the UI is not configured to actually do anything on failure. This probably + * isn't the best long term approach. + */ + $data = array(); + foreach (array('released', 'experimental', 'community') as $key) { + if ($form['repositories'][$key]) { + $data[$key] = 1; + } + } + + if (empty($data)) { + $data['released'] = 1; + } + + $ret = GalleryCoreApi::setPluginParameter( + 'module', 'core', 'core.repositories', serialize($data)); + if ($ret) { + return $ret; + } + } + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/ShowItem.inc b/Source/gallery2/modules/core/ShowItem.inc new file mode 100644 index 0000000..7089f68 --- /dev/null +++ b/Source/gallery2/modules/core/ShowItem.inc @@ -0,0 +1,168 @@ + + * @version $Revision: 15513 $ + */ +class ShowItemController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + /* + * Note that this always changes user preview mode; if we add management of other variables + * to this controller then we should guard this properly. (Maybe delete this comment after + * writing the unit test that verifies it) + */ + $guestPreviewMode = GalleryUtilities::getRequestVariables('guestPreviewMode'); + if ($guestPreviewMode != null) { + $session =& $gallery->getSession(); + $session->put('theme.guestPreviewMode', $guestPreviewMode ? 1 : 0); + } + + return array(null, array('return' => 1, 'status' => array(), 'error' => array())); + } +} + +/** + * Handle the rendering of an album or item. + */ +class ShowItemView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + list ($ret, $item, $wasSpecified) = $this->getItem(true); + if ($ret) { + return array($ret, null); + } + + if (isset($_GET[GalleryUtilities::prefixFormVariable('path')]) && !$wasSpecified) { + /* + * Bug #1468797 + * Detect use of rewritten URL but rewrite module inactive; walk up to find main.php + */ + $urlGenerator =& $gallery->getUrlGenerator(); + $redirect = dirname($urlGenerator->getCurrentUrlDir()) . '/' . GALLERY_MAIN_PHP; + return array(null, array('redirectUrl' => $redirect)); + } + + /* Make sure we have permission to view this item */ + $ret = GalleryCoreApi::assertHasItemPermission($item->getId(), 'core.view'); + if ($ret) { + if ($ret->getErrorCode() & ERROR_PERMISSION_DENIED) { + list ($ret2, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret2) { + return array($ret, null); + } + if ($isAnonymous) { + /* Redirect to login view */ + return array(null, array('redirect' => $gallery->getConfig('loginRedirect'))); + } + /* Try to redirect to default album */ + list ($ret2, $rootId) = GalleryCoreApi::getDefaultAlbumId(); + if ($ret2) { + return array($ret, null); + } + if ($item->getId() == $rootId) { + /* No permission on root album; redirect to login view */ + return array(null, array('redirect' => $gallery->getConfig('loginRedirect'))); + } + return array(null, array('redirect' => + array('view' => 'core.ShowItem', 'itemId' => $rootId))); + } + return array($ret, null); + } + + /* + * Don't increment the view count for anything but the first page of the album so that we + * don't count each individual page views as an album view. This only applies to + * non-persistent sessions because GalleryCoreApi::incrementItemViewCount does the right + * thing for persistent sessions. + */ + if (GalleryUtilities::isA($item, 'GalleryAlbumItem')) { + $session =& $gallery->getSession(); + if (!$session->isPersistent()) { + list ($page, $highlightId) = + GalleryUtilities::getRequestVariables('page', 'highlightId'); + if ($highlightId || ($page && $page != 1)) { + return array(null, null); + } + } + } + + $ret = GalleryCoreApi::incrementItemViewCount($item->getId()); + if ($ret) { + return array($ret, null); + } + + return array(null, array()); + } + + /** + * @see GalleryView::getItem + */ + function getItem($getOriginalSpecified=false) { + static $originalSpecified; + list ($ret, $item, $wasSpecified) = parent::getItem(); + if ($ret) { + return array($ret, null, null); + } + if (!isset($originalSpecified)) { + /* Save value for first call; $wasSpecified always true later as itemId is set below */ + $originalSpecified = $wasSpecified; + } + if (!$wasSpecified) { + GalleryUtilities::putRequestVariable('itemId', $item->getId()); + } + /* Default wasSpecified=true so without itemId we still use root album theme/params */ + return array(null, $item, $getOriginalSpecified ? $originalSpecified : true); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $item) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + $typeName = $item->itemTypeName(true); + return array(null, $typeName[1]); + } + + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_SHOW_ITEM; + } +} +?> diff --git a/Source/gallery2/modules/core/ShowItemError.inc b/Source/gallery2/modules/core/ShowItemError.inc new file mode 100644 index 0000000..63f6bef --- /dev/null +++ b/Source/gallery2/modules/core/ShowItemError.inc @@ -0,0 +1,101 @@ + + * @version $Revision: 15513 $ + */ +class ShowItemErrorView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + list ($ret, $item, $wasSpecified) = $this->getItem(); + if ($ret) { + return array($ret, null); + } + + $problem = GalleryUtilities::getRequestVariables('problem'); + + switch ($problem) { + case 'missingTheme': + if ($wasSpecified) { + list ($ret, $themeId) = GalleryCoreApi::fetchThemeId($item); + if ($ret) { + return array($ret, null); + } + + if (GalleryUtilities::isA($item, 'GalleryDataItem')) { + $targetId = $item->getParentId(); + } else { + $targetId = $item->getId(); + } + + list ($ret, $canEdit) = GalleryCoreApi::hasItemPermission($targetId, 'core.edit'); + if ($ret) { + return array($ret, null); + } + } else { + list ($ret, $themeId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + return array($ret, null); + } + + $targetId = null; + $canEdit = false; + } + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + $template->setVariable('ShowItemError', + array('itemId' => $targetId, + 'themeId' => $themeId, + 'canEdit' => $canEdit, + 'isAdmin' => $isAdmin)); + return array(null, + array('body' => 'modules/core/templates/ShowItemError.tpl')); + + default: + /* + * We know of no other problems! Returning an empty result will + * throw up a security violation page. + */ + return array(null, array()); + } + } + + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_ADMIN; + } +} +?> diff --git a/Source/gallery2/modules/core/SimpleCallback.inc b/Source/gallery2/modules/core/SimpleCallback.inc new file mode 100644 index 0000000..72df560 --- /dev/null +++ b/Source/gallery2/modules/core/SimpleCallback.inc @@ -0,0 +1,148 @@ + + * @version $Revision: 15513 $ + */ +class SimpleCallbackView extends GalleryView { + + /** + * @see GalleryView::isImmediate + */ + function isImmediate() { + return true; + } + + /** + * @see GalleryView::isControllerLike + */ + function isControllerLike() { + return true; + } + + /** + * @see GalleryView::renderImmediate + */ + function renderImmediate($status, $error) { + list ($command, $prefix) = GalleryUtilities::getRequestVariables('command', 'prefix'); + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return $ret; + } + if (!headers_sent()) { + header("Content-type: text/plain; charset=UTF-8"); + } + + switch($command) { + case 'lookupUsername': + if (!$isAnonymous) { + list ($ret, $usernames) = GalleryCoreApi::fetchUsernames(10, null, $prefix); + if (!$ret) { + print implode("\n", $usernames); + } + } + break; + + case 'lookupGroupname': + if (!$isAnonymous) { + list ($ret, $groupNames) = GalleryCoreApi::fetchGroupNames(10, null, $prefix); + if (!$ret) { + print implode("\n", $groupNames); + } + } + break; + + case 'lookupDirectories': + list ($ret, $isSiteAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if (!$ret && $isSiteAdmin) { + GalleryUtilities::unsanitizeInputValues($prefix, false); + $dirs = implode("\n", $this->_getDirectoryListing($prefix, false)); + GalleryUtilities::sanitizeInputValues($dirs, false); + print $dirs; + } + break; + + case 'lookupFiles': + list ($ret, $isSiteAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if (!$ret && $isSiteAdmin) { + GalleryUtilities::unsanitizeInputValues($prefix, false); + $files = implode("\n", $this->_getDirectoryListing($prefix)); + GalleryUtilities::sanitizeInputValues($files, false); + print $files; + } + break; + } + + return null; + } + + function _getDirectoryListing($path, $getFiles=true) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* $path is UTF-8, we need it in the system charset for filesystem interactions */ + $path = GalleryCoreApi::convertFromUtf8($path); + + if ($platform->is_dir($path)) { + $match = ''; + } else { + $match = basename($path); + $matchLength = strlen($match); + $path = dirname($path); + if (!$platform->is_dir($path)) { + return array(); + } + } + + $dirList = $fileList = array(); + if ($dir = $platform->opendir($path)) { + $slash = $platform->getDirectorySeparator(); + if ($path{strlen($path)-1} != $slash) { + $path .= $slash; + } + while (($file = $platform->readdir($dir)) !== false) { + if ($file == '.' || $file == '..' + || ($match && strncmp($file, $match, $matchLength))) { + continue; + } + $file = $path . $file; + + if ($platform->is_dir($file)) { + /* Filesystem charset -> UTF-8 conversion required */ + $dirList[] = GalleryCoreApi::convertToUtf8($file); + } else if ($getFiles && $platform->is_file($file)) { + $fileList[] = GalleryCoreApi::convertToUtf8($file); + } + } + $platform->closedir($dir); + sort($dirList); + sort($fileList); + } + + return empty($dirList) ? $fileList : array_merge($dirList, $fileList); + } +} +?> diff --git a/Source/gallery2/modules/core/SiteAdmin.inc b/Source/gallery2/modules/core/SiteAdmin.inc new file mode 100644 index 0000000..8c499c2 --- /dev/null +++ b/Source/gallery2/modules/core/SiteAdmin.inc @@ -0,0 +1,298 @@ + + * @version $Revision: 15513 $ + */ +class SiteAdminView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* Make sure we have adequate permissions */ + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + + /* Load the module list */ + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return array($ret, null); + } + + /* Get a list of all the admin views for each module */ + $subViewChoices = array(); + ksort($moduleStatus); + + /* + * We show all site admin links to the Modules page because it will hide any links for + * modules that are not active. + */ + $subView = GalleryUtilities::getRequestVariables('subView'); + $showAllSiteAdminViews = ($subView == 'core.AdminPlugins'); + + foreach ($moduleStatus as $moduleId => $status) { + if (empty($status['active']) && !$showAllSiteAdminViews) { + continue; + } + + /* Get the selected module's admin view */ + if (in_array('getSiteAdminViews', explode('|', $status['callbacks'])) || + $showAllSiteAdminViews) { + if ($showAllSiteAdminViews) { + list ($ret, $module) = + GalleryCoreApi::loadPlugin('module', $moduleId, true, false); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + /* Module is missing or malformed, so ignore it */ + continue; + } + return array($ret, null); + } + + if ($ret) { + return array($ret, null); + } + } else { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', $moduleId); + if ($ret) { + if ($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH) { + continue; + } + return array($ret, null); + } + } + + list ($ret, $moduleViews) = $module->getSiteAdminViews(); + if ($ret) { + return array($ret, null); + } + + $group = $module->getGroup(); + /** + * Pre 2.2, we only accepted a 'view', which we made the subView to + * core.SiteAdmin. In 2.2, we now let them specify extra parameters + * so we create a separate 'view' which contains all the url parameters + * to form a complete SiteAdmin view (except that we force view to + * be core.SiteAdmin). + * + * TODO: change the API to allow the module to return this form directly + * so that we don't have to massage it like this. + */ + $currentSubView = GalleryUtilities::getRequestVariables('subView'); + foreach (array_keys($moduleViews) as $i) { + $outer = array('name' => $moduleViews[$i]['name']); + if (isset($moduleViews[$i]['group'])) { + $outer['group'] = $moduleViews[$i]['group']; + unset($moduleViews[$i]['group']); + $outer['groupLabel'] = $moduleViews[$i]['groupLabel']; + unset($moduleViews[$i]['groupLabel']); + } else { + $outer['group'] = $group['group']; + $outer['groupLabel'] = $group['groupLabel']; + } + + $inner = $moduleViews[$i]; + unset($inner['name']); + $inner['subView'] = $inner['view']; + $inner['view'] = 'core.SiteAdmin'; + $outer['view'] = $inner; + + if ($inner['subView'] == $currentSubView) { + /* This is probably our selected view */ + $selected = true; + foreach ($inner as $key => $value) { + if ($key == 'view') { + continue; + } + if (GalleryUtilities::getRequestVariables($key) != $value) { + $selected = false; + break; + } + } + $outer['selected'] = $selected; + } + $moduleViews[$i] = $outer; + } + + $subViewChoices = array_merge($subViewChoices, $moduleViews); + } + } + + /* Sort and group */ + $subViewGroups = $groupLabels = array(); + foreach ($subViewChoices as $adminView) { + $group = $adminView['group']; + $subViewGroups[$group][] = $adminView; + + if (!empty($adminView['groupLabel'])) { + $label = $adminView['groupLabel']; + if (!isset($groupLabels[$group][$label])) { + $groupLabels[$group][$label] = 1; + } else { + $groupLabels[$group][$label]++; + } + } + } + + /* Set labels */ + foreach (array_keys($subViewGroups) as $group) { + $data =& $subViewGroups[$group]; + usort($data, array($this, 'nameSort')); + if (isset($groupLabels[$group])) { + $tmp = -1; + foreach ($groupLabels[$group] as $label => $count) { + if ($count > $tmp) { + $tmp = $count; + $data[0]['groupLabel'] = $label; + } + } + } else { + $data[0]['groupLabel'] = ucwords($data[0]['group']); + } + } + usort($subViewGroups, array($this, 'groupSort')); + + /* If we have a specific sub view, render it now */ + $subViewName = GalleryUtilities::getRequestVariables('subView'); + if ($subViewName == 'core.SiteAdmin') { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } else if (empty($subViewName)) { + $subViewName = 'core.AdminCore'; + } else if ($subViewName == 'core.AdminModules') { + /* + * In 2.2, we changed core.AdminModules and core.AdminPlugins. Remap the name + * here to avoid breaking any existing modules. + * TODO: Remove this when GalleryCoreApi is at 8.0+ + */ + $subViewName = 'core.AdminPlugins'; + } + + list ($ret, $subView) = GalleryView::loadView($subViewName); + if ($ret) { + return array($ret, null); + } + + list ($ret, $results) = $subView->loadTemplate($template, $form); + if ($ret) { + return array($ret, null); + } + + /* Our sub view may have set some hints, like the encoding type */ + if ($template->hasVariable('SiteAdmin')) { + $SiteAdmin =& $template->getVariableByReference('SiteAdmin'); + } else { + $SiteAdmin = array(); + } + + /* Get the links for navigating back to where we came from */ + $urlGenerator =& $gallery->getUrlGenerator(); + list ($ret, $navigationLinks) = $urlGenerator->getNavigationLinks(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + /* Set up my view parameters */ + $SiteAdmin['navigationLinks'] = $navigationLinks; + $SiteAdmin['subViewGroups'] = $subViewGroups; + $SiteAdmin['subViewName'] = $subViewName; + $SiteAdmin['viewBodyFile'] = $results['body']; + $SiteAdmin['viewL10Domain'] = $subView->getL10Domain(); + + $template->setVariable('SiteAdmin', $SiteAdmin); + $template->title($module->translate('Gallery Site Administration')); + return array(null, array('body' => 'modules/core/templates/SiteAdmin.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + /* Get the description from the current subView */ + $subViewName = GalleryUtilities::getRequestVariables('subView'); + if (empty($subViewName)) { + $subViewName = 'core.AdminCore'; + } + list ($ret, $subView) = GalleryView::loadView($subViewName); + if ($ret) { + return array($ret, null); + } + + list ($ret, $description) = $subView->getViewDescription(); + if (!empty($description)) { + return array(null, $description); + } + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + /* Fallback if subView doesn't have a name */ + return array(null, $core->translate('site admin')); + } + + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_ADMIN; + } + + function groupSort($a, $b) { + static $groupOrder; + if (!isset($groupOrder)) { + /* gallery first, toolkits second, other last */ + $groupOrder = array('gallery' => 1, 'toolkits' => 2, '' => 3, 'other' => 4); + } + $ag = $a[0]['group']; + $bg = $b[0]['group']; + $ao = isset($groupOrder[$ag]) ? $groupOrder[$ag] : $groupOrder['']; + $bo = isset($groupOrder[$bg]) ? $groupOrder[$bg] : $groupOrder['']; + if ($ao != $bo) { + return ($ao > $bo) ? 1 : -1; + } + $ag = isset($a[0]['groupLabel']) ? $a[0]['groupLabel'] : $ag; + $bg = isset($b[0]['groupLabel']) ? $b[0]['groupLabel'] : $bg; + return ($ag > $bg) ? 1 : -1; + } + + function nameSort($a, $b) { + $an = $a['name']; + $bn = $b['name']; + if ($an == $bn) { + return 0; + } + return ($an > $bn) ? 1 : -1; + } +} +?> diff --git a/Source/gallery2/modules/core/UserAdmin.inc b/Source/gallery2/modules/core/UserAdmin.inc new file mode 100644 index 0000000..ed73bca --- /dev/null +++ b/Source/gallery2/modules/core/UserAdmin.inc @@ -0,0 +1,171 @@ + + * @version $Revision: 15513 $ + */ +class UserAdminView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + $user = $gallery->getActiveUser(); + + /* Load the module list */ + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return array($ret, null); + } + + /* Get a list of all the admin views for each module */ + $subViewChoices = array(); + foreach ($moduleStatus as $moduleId => $status) { + if (empty($status['active'])) { + continue; + } + + /* Get the selected module's admin view */ + if (in_array('getUserAdminViews', explode('|', $status['callbacks']))) { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', $moduleId); + if ($ret) { + if ($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH) { + continue; + } + return array($ret, null); + } + + list ($ret, $moduleViews) = $module->getUserAdminViews($user); + if ($ret) { + return array($ret, null); + } + + $subViewChoices = array_merge($subViewChoices, $moduleViews); + } + } + + /* If we have a specific sub view, load it now */ + $subViewName = GalleryUtilities::getRequestVariables('subView'); + if ($subViewName == 'core.UserAdmin') { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + if (empty($subViewName) && !empty($subViewChoices)) { + $subViewName = $subViewChoices[0]['view']; + } + + list ($ret, $isSiteAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + /* Our sub view may have set some hints, like the encoding type */ + if ($template->hasVariable('UserAdmin')) { + $UserAdmin =& $template->getVariableByReference('UserAdmin'); + } else { + $UserAdmin = array(); + $template->setVariableByReference('UserAdmin', $UserAdmin); + } + + /* Get the links for navigating back to where we came from */ + $urlGenerator =& $gallery->getUrlGenerator(); + list ($ret, $navigationLinks) = $urlGenerator->getNavigationLinks(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + /* Set up my view parameters */ + $UserAdmin['navigationLinks'] = $navigationLinks; + $UserAdmin['subViewChoices'] = $subViewChoices; + $UserAdmin['subViewName'] = $subViewName; + $UserAdmin['isSiteAdmin'] = $isSiteAdmin; + + if (!empty($subViewName)) { + list ($ret, $subView) = GalleryView::loadView($subViewName); + if ($ret) { + return array($ret, null); + } + + list ($ret, $results) = $subView->loadTemplate($template, $form); + if ($ret) { + return array($ret, null); + } + + if (isset($results['redirect'])) { + return array(null, $results); + } + + $UserAdmin['viewBodyFile'] = $results['body']; + $UserAdmin['viewL10Domain'] = $subView->getL10Domain(); + } + + $template->setVariable('UserAdmin', $UserAdmin); + $template->title($module->translate('Gallery User Administration')); + return array(null, array('body' => 'modules/core/templates/UserAdmin.tpl')); + } + + /** + * @see GalleryView::isAllowedInMaintenance + */ + function isAllowedInMaintenance() { + return (GalleryUtilities::getRequestVariables('subView') == 'core.UserLogin'); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + global $gallery; + + /* Get the description from the current subView */ + $subViewName = GalleryUtilities::getRequestVariables('subView'); + if (empty($subViewName)) { + $subViewName = 'core.ItemEdit'; + } + list ($ret, $subView) = GalleryView::loadView($subViewName); + if ($ret) { + return array($ret, null); + } + + list ($ret, $description) = $subView->getViewDescription(); + if ($ret) { + return array($ret, null); + } + + return array(null, $description); + } + + /** + * @see GalleryView::getViewType + */ + function getViewType() { + return VIEW_TYPE_ADMIN; + } +} +?> diff --git a/Source/gallery2/modules/core/UserChangePassword.inc b/Source/gallery2/modules/core/UserChangePassword.inc new file mode 100644 index 0000000..4a54ea3 --- /dev/null +++ b/Source/gallery2/modules/core/UserChangePassword.inc @@ -0,0 +1,186 @@ + + * @version $Revision: 15692 $ + */ +class UserChangePasswordController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + $user = $gallery->getActiveUser(); + + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return array($ret, null); + } + if ($isAnonymous || $user->isLocked()) { + return array(GalleryCoreApi::error(ERROR_PERMISSION_DENIED), null); + } + + $results = $status = $error = array(); + if (isset($form['action']['cancel'])) { + + /* Redirect back to user preferences */ + $redirect['view'] = 'core.UserAdmin'; + $redirect['subView'] = 'core.UserPreferences'; + + } else if (isset($form['action']['undo'])) { + + /* Redirect back to the same view to reset the form */ + $redirect['view'] = 'core.UserAdmin'; + $redirect['subView'] = 'core.UserChangePassword'; + + } else if (isset($form['action']['save'])) { + + /* + * Validate our data before we continue. + */ + if (empty($form['currentPassword'])) { + $error[] = 'form[error][currentPassword][missing]'; + } else { + GalleryUtilities::unsanitizeInputValues($form['currentPassword'], false); + if (!$user->isCorrectPassword($form['currentPassword'])) { + $error[] = 'form[error][currentPassword][incorrect]'; + + $event = GalleryCoreApi::newEvent('Gallery::FailedLogin'); + $event->setData(array('userName' => $user->getUserName())); + list ($ret, $ignored) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + } else { + /* + * To be consistent, we really should post a Gallery::Login event here to show + * that the user successfully authenticated. But they're not really logging in so + * that's misleading. Perhaps we should rename the events to Gallery::Authenticate + * and Gallery::FailedAuthenticate to be more accurate, and then post those here? + * + * @see UserPreferencesController::handleRequest + */ + } + } + + if (empty($form['password1'])) { + $error[] = 'form[error][password1][missing]'; + } + + if (empty($form['password2'])) { + $error[] = 'form[error][password2][missing]'; + } + + if (!$error && $form['password1'] != $form['password2']) { + $error[] = 'form[error][password2][mismatch]'; + } + + /* + * If all the right fields are in place then go ahead and modify + * the user. + */ + if (empty($error)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($user->getId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $user) = $user->refresh(); + if ($ret) { + return array($ret, null); + } + + GalleryUtilities::unsanitizeInputValues($form['password1'], false); + $user->changePassword($form['password1']); + + $ret = $user->save(); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.UserAdmin'; + $redirect['subView'] = 'core.UserChangePassword'; + $status['changedPassword'] = 1; + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.UserAdmin'; + $results['delegate']['subView'] = 'core.UserChangePassword'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show a form to change a password + */ +class UserChangePasswordView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* Load the form with user data the first time around. */ + if ($form['formName'] != 'UserChangePassword') { + $form['formName'] = 'UserChangePassword'; + } + + $user = $gallery->getActiveUser(); + + if ($user->isLocked()) { + return array(null, array('body' => 'modules/core/templates/UserLocked.tpl')); + } + + $template->setVariable('controller', 'core.UserChangePassword'); + return array(null, array('body' => 'modules/core/templates/UserChangePassword.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('change password')); + } +} +?> diff --git a/Source/gallery2/modules/core/UserLogin.inc b/Source/gallery2/modules/core/UserLogin.inc new file mode 100644 index 0000000..f9dc293 --- /dev/null +++ b/Source/gallery2/modules/core/UserLogin.inc @@ -0,0 +1,234 @@ + + * @version $Revision: 15955 $ + */ +class UserLoginController extends GalleryController { + + /** + * ValidationPlugin instances to use when handling this request. Only used by test code. + * + * @var array $_plugins (array of GalleryValidationPlugin) + * @access private + */ + var $_pluginInstances; + + /** + * Tests can use this method to hardwire a specific set of plugin instances to use. + * This avoids situations where some of the option instances will do unpredictable + * things and derail the tests. + * + * @param array $pluginInstances of GalleryValidationPlugin + */ + function setPluginInstances($pluginInstances) { + $this->_pluginInstances = $pluginInstances; + } + + /** + * @see GalleryController::isAllowedInMaintenance + */ + function isAllowedInMaintenance() { + return true; + } + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $results = array(); + $error = array(); + if (isset($form['action']['login'])) { + if (empty($form['username'])) { + $error[] = 'form[error][username][missing]'; + } + + if (empty($form['password'])) { + $error[] = 'form[error][password][missing]'; + } + + if (empty($error)) { + list ($ret, $isDisabled) = GalleryCoreApi::isDisabledUsername($form['username']); + if ($ret) { + return array($ret, null); + } + if ($isDisabled) { + $error[] = 'form[error][username][disabled]'; + } + } + + if (empty($error)) { + list ($ret, $user) = GalleryCoreApi::fetchUserByUsername($form['username']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + GalleryUtilities::unsanitizeInputValues($form['password'], false); + $isCorrect = (isset($user) && $user->isCorrectPassword($form['password'])); + + /* Prepare for validation */ + $options = array('pass' => $isCorrect); + list ($ret, $options['level']) = + GalleryCoreApi::getPluginParameter('module', 'core', 'validation.level'); + if ($ret) { + return array($ret, null); + } + if ($options['level'] == 'MEDIUM') { + $options['key'] = 'core.UserLogin.' . $form['username']; + } + if ($options['level'] == 'OFF') { + $pluginInstances = array(); + } else if (isset($this->_pluginInstances)) { + $pluginInstances = $this->_pluginInstances; + } else { + list ($ret, $pluginInstances) = + GalleryCoreApi::getAllFactoryImplementationIds('GalleryValidationPlugin'); + if ($ret) { + return array($ret, null); + } + + foreach (array_keys($pluginInstances) as $pluginId) { + list ($ret, $pluginInstances[$pluginId]) = + GalleryCoreApi::newFactoryInstanceById('GalleryValidationPlugin', + $pluginId); + if ($ret) { + return array($ret, null); + } + } + } + + /* Let each plugin do its verification */ + foreach ($pluginInstances as $plugin) { + list ($ret, $pluginErrors, $continue) = + $plugin->performValidation($form, $options); + if ($ret) { + return array($ret, null); + } + + $error = array_merge($error, $pluginErrors); + if (!$continue) { + break; + } + } + } + + if (empty($error)) { + if ($isCorrect) { + $gallery->setActiveUser($user); + + $event = GalleryCoreApi::newEvent('Gallery::Login'); + $event->setEntity($user); + list ($ret, $redirect) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + + /* Redirect if requested by event listener, otherwise return */ + if (!empty($redirect)) { + $results['redirect'] = array_shift($redirect); + } else { + $results['return'] = 1; + } + } else { + $error[] = 'form[error][invalidPassword]'; + } + } + + if (!empty($error)) { + if (!empty($form['username'])) { + $event = GalleryCoreApi::newEvent('Gallery::FailedLogin'); + $event->setData(array('userName' => $form['username'])); + list ($ret, $ignored) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + } + } + + } else if (isset($form['action']['cancel'])) { + $results['return'] = 1; + } + + if (!empty($error)) { + $results['delegate']['view'] = 'core.UserAdmin'; + $results['delegate']['subView'] = 'core.UserLogin'; + } + $results['status'] = array(); + $results['error'] = $error; + + return array(null, $results); + } + +} + +/** + * This view prompts for login information + */ +class UserLoginView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + /* Check if the default login view URL has been overridden and redirect appropriately */ + $loginRedirect = $gallery->getConfig('loginRedirect'); + if (!(isset($loginRedirect['subView']) && $loginRedirect['subView'] == 'core.UserLogin') + && !empty($loginRedirect)) { + /* Do not redirect if we are logged in already */ + list ($ret, $isGuest) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return array($ret, null); + } + + $phpVm = $gallery->getPhpVm(); + $urlGenerator =& $gallery->getUrlGenerator(); + if ($isGuest && !$phpVm->headers_sent()) { + $redirectUrl = $urlGenerator->generateUrl($loginRedirect, + array('forceSessionId' => false, + 'forceFullUrl' => true)); + $phpVm->header("Location: $redirectUrl"); + $phpVm->exit_(); + } + } + + if ($form['formName'] != 'UserLogin') { + $form['formName'] = 'UserLogin'; + $form['username'] = ''; + + /* + * When logging in we don't have a session yet, thus no navigation history / a place + * to store the returnUrl. Thus store the returnUrl in the login form + */ + $returnUrl = GalleryUtilities::getRequestVariables('return'); + $form['returnUrl'] = !empty($returnUrl) ? $returnUrl : ''; + } + + $template->setVariable('controller', 'core.UserLogin'); + return array(null, array('body' => 'modules/core/templates/UserLogin.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/UserPreferences.inc b/Source/gallery2/modules/core/UserPreferences.inc new file mode 100644 index 0000000..e9bc9a7 --- /dev/null +++ b/Source/gallery2/modules/core/UserPreferences.inc @@ -0,0 +1,242 @@ + + * @version $Revision: 15692 $ + */ +class UserPreferencesController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return array($ret, null); + } + if ($isAnonymous) { + return array(GalleryCoreApi::error(ERROR_PERMISSION_DENIED), null); + } + + $results = $status = $error = array(); + if (isset($form['action']['cancel'])) { + + /* Redirect back to the previous view */ + $results['return'] = true; + + } else if (isset($form['action']['undo'])) { + + /* Redirect back to the same view to reset the form */ + $redirect['view'] = 'core.UserAdmin'; + $redirect['subView'] = 'core.UserPreferences'; + + } else if (isset($form['action']['save'])) { + + /* Validate our data before we continue. */ + + /* full name is optional */ + + /* language is optional for everybody */ + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + return array($ret, null); + } + + $userId = $gallery->getActiveUserId(); + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($userId); + if ($ret) { + return array($ret, null); + } + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + if ($ret) { + return array($ret, null); + } + + /* Locked users are not allowed to edit themselves */ + if ($user->isLocked()) { + GalleryCoreApi::releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_PERMISSION_DENIED), null); + } + + /* email is required for non-anonymous but optional for administrators */ + if (empty($form['email']) && !$isAdmin) { + $error[] = 'form[error][email][missing]'; + } else if (!empty($form['email'])) { + $form['email'] = trim($form['email']); + if (!GalleryUtilities::isValidEmailString($form['email'])) { + $error[] = 'form[error][email][invalid]'; + } + } + + if (!empty($form['currentPassword'])) { + GalleryUtilities::unsanitizeInputValues($form['currentPassword'], false); + if (!$user->isCorrectPassword($form['currentPassword'])) { + $error[] = 'form[error][currentPassword][incorrect]'; + + $event = GalleryCoreApi::newEvent('Gallery::FailedLogin'); + $event->setData(array('userName' => $user->getUserName())); + list ($ret, $ignored) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + } else { + /* + * To be consistent, we really should post a Gallery::Login event here to show + * that the user successfully authenticated. But they're not really logging in so + * that's misleading. Perhaps we should rename the events to Gallery::Authenticate + * and Gallery::FailedAuthenticate to be more accurate, and then post those here? + * + * @see UserChangePasswordController::handleRequest + */ + } + } + + /* Set a default if for some reason it doesn't get sent from the browser */ + $form['email'] = empty($form['email']) ? '' : $form['email']; + + /* Require a password to change the email address */ + if ($form['email'] != $user->getEmail()) { + if (empty($form['currentPassword'])) { + $error[] = 'form[error][currentPassword][missing]'; + } + } + + /* If all the right fields are in place then go ahead and modify the user. */ + if (empty($error)) { + $user->setFullname(trim($form['fullName'])); + $user->setEmail($form['email']); + + if (isset($form['language'])) { + $user->setLanguage($form['language']); + /* update the effective language in the current session */ + $session =& $gallery->getSession(); + $session->put('core.language', $form['language']); + } + + $ret = $user->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return array($ret, null); + } + + /* Request a redirect to the confirmation screen */ + $redirect['view'] = 'core.UserAdmin'; + $redirect['subView'] = 'core.UserPreferences'; + $status['saved'] = 1; + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + } + + if (!empty($redirect)) { + $results['redirect'] = $redirect; + } else { + $results['delegate']['view'] = 'core.UserAdmin'; + $results['delegate']['subView'] = 'core.UserPreferences'; + } + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view will show a form to change user options + */ +class UserPreferencesView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return array($ret, null); + } + if ($isAnonymous) { + return array(GalleryCoreApi::error(ERROR_PERMISSION_DENIED), null); + } + + $user = $gallery->getActiveUser(); + + /* Locked users aren't allowed to edit themselves - display message */ + if ($user->isLocked()) { + return array(null, array('body' => 'modules/core/templates/UserLocked.tpl')); + } + + /* Load the form with user data the first time around. */ + if ($form['formName'] != 'UserPreferences') { + $form['userName'] = $user->getUserName(); + $form['fullName'] = $user->getFullName(); + $form['email'] = $user->getEmail(); + $form['language'] = $user->getLanguage(); + $form['formName'] = 'UserPreferences'; + } + + /* Set up our language selection list */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $languageList = array(); + $languageList[''] = $module->translate(''); + $translator =& $gallery->getTranslator(); + $supportedLanguages = $translator->getSupportedLanguages(); + foreach ($supportedLanguages as $language => $countryList) { + foreach ($countryList as $country => $languageData) { + $languageList[$language . '_' . $country] = $languageData['description']; + } + } + + $UserPreferences['translationsSupported'] = $translator->canTranslate(); + $UserPreferences['languageList'] = $languageList; + + $template->setVariable('UserPreferences', $UserPreferences); + $template->setVariable('controller', 'core.UserPreferences'); + return array(null, array('body' => 'modules/core/templates/UserPreferences.tpl')); + } + + /** + * @see GalleryView::getViewDescription + */ + function getViewDescription() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + return array(null, $core->translate('your account')); + } +} +?> diff --git a/Source/gallery2/modules/core/UserRecoverPassword.inc b/Source/gallery2/modules/core/UserRecoverPassword.inc new file mode 100644 index 0000000..4227842 --- /dev/null +++ b/Source/gallery2/modules/core/UserRecoverPassword.inc @@ -0,0 +1,287 @@ + + * @version $Revision: 15513 $ + */ +class UserRecoverPasswordController extends GalleryController { + /** + * ValidationPlugin instances to use when handling this request. Only used by test code. + * + * @var array (pluginId => object ValidationPlugin) $_pluginInstances + * @access private + */ + var $_pluginInstances; + + /** + * Tests can use this method to hardwire a specific set of plugin instances to use. + * This avoids situations where some of the option instances will do unpredictable + * things and derail the tests. + * + * @param array $pluginInstances of GalleryValidationPlugin + */ + function setPluginInstances($pluginInstances) { + $this->_pluginInstances = $pluginInstances; + } + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $status = $error = $results = array(); + + $phpVm = $gallery->getPhpVm(); + if (isset($form['action']['recover'])) { + $form['userName'] = is_string($form['userName']) ? $form['userName'] : null; + if (empty($form['userName'])) { + $error[] = 'form[error][userName][missing]'; + } + + /* If no errors have been detected, let the validation plugins do their work */ + if (empty($error)) { + if (isset($this->_pluginInstances)) { + $pluginInstances = $this->_pluginInstances; + } else { + /* Get all the validation plugins */ + list ($ret, $pluginInstances) = + GalleryCoreApi::getAllFactoryImplementationIds('GalleryValidationPlugin'); + if ($ret) { + return array($ret, null); + } + + foreach (array_keys($pluginInstances) as $pluginId) { + list ($ret, $pluginInstances[$pluginId]) = + GalleryCoreApi::newFactoryInstanceById('GalleryValidationPlugin', + $pluginId); + if ($ret) { + return array($ret, null); + } + } + } + + /* Let each plugin do its verification */ + foreach ($pluginInstances as $plugin) { + list ($ret, $pluginErrors, $continue) = $plugin->performValidation($form); + if ($ret) { + return array($ret, null); + } + + $error = array_merge($error, $pluginErrors); + if (!$continue) { + break; + } + } + } + + /* + * Still no errors? Check the DB for a previous request and then + * update, reject or add based on the results. + */ + $shouldSendEmail = false; + if (empty($error)) { + list ($ret, $user) = GalleryCoreApi::fetchUserByUsername($form['userName']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + + if (isset($user) && $user->getEmail() != '') { + + /* Generate a unique auth string based on userName, time of request and IP */ + $authString = $phpVm->md5( + $user->getUserName() . time() . GalleryUtilities::getRemoteHostAddress()); + + /* Generate the request expiration: Now + 7 Days */ + $requestExpires = mktime(date('G'), date('i'), date('s'), + date('m'), date('d')+7, date('Y')); + + /* + * Check the database to see if a previous request. + * If a request exists, check the timestamp to see if a new + * request can be generated, or if they will be denied + * because the window is too small. + */ + list ($ret, $lastRequest) = UserRecoverPasswordHelper_simple::getRequestExpires( + $user->getUserName(), null); + if ($ret) { + return array($ret, null); + } + + /* + * This request was made less than 20 minutes ago. Don't update the auth + * string. We'll silently succeed to thwart phishing attempts. + */ + if (!empty($lastRequest)) { + if (($lastRequest - (7 * 24 * 60 * 60) + (20 * 60)) < time()) { + $ret = GalleryCoreApi::updateMapEntry( + 'GalleryRecoverPasswordMap', + array('userName' => $user->getUserName()), + array('authString' => $authString, + 'requestExpires' => $requestExpires)); + $shouldSendEmail = true; + } + } else { + /* + * Add the map entry before sending email to the user - + * We don't want to send them mail if the data never gets into the DB + */ + $ret = GalleryCoreApi::addMapEntry( + 'GalleryRecoverPasswordMap', + array('userName' => $form['userName'], + 'authString' => $authString, + 'requestExpires' => $requestExpires)); + if ($ret) { + return array($ret, null); + } + $shouldSendEmail = true; + } + + if (empty($error) && $shouldSendEmail) { + /* Generate baseUrl and recoverUrl for the email template */ + $generator =& $gallery->getUrlGenerator(); + $baseUrl = $generator->generateUrl(array(), + array('forceFullUrl' => true, 'htmlEntities' => false, + 'forceSessionId' => false)); + $recoverUrl = $generator->generateUrl( + array('view' => 'core.UserAdmin', + 'subView' => 'core.UserRecoverPasswordConfirm', + 'userName' => $user->getUserName(), + 'authString' => $authString), + array('forceFullUrl' => true, 'htmlEntities' => false, + 'forceSessionId' => false)); + + /* email template data */ + $tplData = array('name' => $user->getfullName(), + 'baseUrl' => $baseUrl, + 'ip' => GalleryUtilities::getRemoteHostAddress(), + 'date' => date('r'), + 'userName' => $user->getUserName(), + 'recoverUrl' => $recoverUrl, + ); + + /* Load core for translation */ + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + /* Send the user email based on our confirmation template */ + $ret = GalleryCoreApi::sendTemplatedEmail( + 'modules/core/templates/UserRecoverPasswordEmail.tpl', + $tplData, '', $user->getEmail(), + $module->translate('Password Recovery')); + if ($ret) { + return array($ret, null); + } + } + + /* Set the recovered info flag */ + $status['requestSent'] = 1; + } else { + /* Silently succeed; we don't reward phishing attempts */ + /* Set the recovered info flag */ + $status['requestSent'] = 1; + } + } + } else if (isset($form['action']['cancel'])) { + $results['return'] = 1; + } + + if (empty($subView)) { + $subView = 'core.UserRecoverPassword'; + } + + if (empty($error)) { + $results['redirect']['view'] = 'core.UserAdmin'; + $results['redirect']['subView'] = $subView; + } else { + $results['delegate']['view'] = 'core.UserAdmin'; + $results['delegate']['subView'] = $subView; + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view shows information about password recovery + */ +class UserRecoverPasswordView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + if ($form['formName'] == 'UserRecoverPassword') { + if (empty($form['userName'])) { + $form['error']['userName']['missing'] = 1; + } + } else { + $form['userName'] = ''; + $form['formName'] = 'UserRecoverPassword'; + } + + $UserRecoverPassword = array(); + + /* Get all the login plugins */ + list ($ret, $allPluginIds) = + GalleryCoreApi::getAllFactoryImplementationIds('GalleryValidationPlugin'); + if ($ret) { + return array($ret, null); + } + + /* Let each plugin load its template data */ + $UserRecoverPassword['plugins'] = array(); + foreach (array_keys($allPluginIds) as $pluginId) { + list ($ret, $plugin) = + GalleryCoreApi::newFactoryInstanceById('GalleryValidationPlugin', $pluginId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $data['file'], $data['l10Domain']) = $plugin->loadTemplate($form); + if ($ret) { + return array($ret, null); + } + + if (isset($data['file'])) { + $UserRecoverPassword['plugins'][] = $data; + } + } + + $template->setVariable('UserRecoverPassword', $UserRecoverPassword); + $template->setVariable('controller', 'core.UserRecoverPassword'); + return array(null, array('body' => 'modules/core/templates/UserRecoverPassword.tpl')); + } +} +?> diff --git a/Source/gallery2/modules/core/UserRecoverPasswordAdmin.inc b/Source/gallery2/modules/core/UserRecoverPasswordAdmin.inc new file mode 100644 index 0000000..d3346fc --- /dev/null +++ b/Source/gallery2/modules/core/UserRecoverPasswordAdmin.inc @@ -0,0 +1,196 @@ + + * @version $Revision: 15569 $ + */ +class UserRecoverPasswordAdminController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + $platform =& $gallery->getPlatform(); + $session =& $gallery->getSession(); + + $status = $error = $results = array(); + + if (isset($form['action']['recover'])) { + $authFile = GALLERY_CONFIG_DIR . '/login.txt'; + $authFromFile = $platform->is_readable($authFile) ? + trim($platform->file_get_contents($authFile)) : ''; + + if ($session->get('core.UserRecoverPasswordAdminAuthKey') != $authFromFile) { + $error[] = 'form[error][authString][incorrect]'; + } + + if (empty($error)) { + if (empty($form['userName'])) { + $error[] = 'form[error][userName][missing]'; + } + + if (empty($form['password1']) || empty($form['password2'])) { + $error[] = 'form[error][password][missing]'; + } else if ($form['password1'] != $form['password2']) { + $error[] = 'form[error][password][mismatch]'; + } + } + + if (empty($error)) { + list ($ret, $user) = GalleryCoreApi::fetchUserByUsername($form['userName']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + + if (isset($user)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($user->getId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $user) = $user->refresh(); + if ($ret) { + return array($ret, null); + } + + $user->changePassword($form['password1']); + + $ret = $user->save(); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + $status['passwordRecovered'] = 1; + + /* + * Return 0 is essential - it prevents core.UserLogin from sending the + * user back to the recovery page after logging in + */ + $results['return'] = 0; + $subView = 'core.UserLogin'; + + $session->remove('core.UserRecoverPasswordAdminAuthKey'); + } else { + $error[] = 'form[error][userName][incorrect]'; + } + } + } else if (isset($form['action']['cancel'])) { + $results['return'] = 1; + } + + if (empty($subView)) { + $subView = 'core.UserRecoverPasswordAdmin'; + } + + if (empty($error) && !isset($form['action']['refresh'])) { + $results['redirect']['view'] = 'core.UserAdmin'; + $results['redirect']['subView'] = $subView; + + } else { + $results['delegate']['view'] = 'core.UserAdmin'; + $results['delegate']['subView'] = 'core.UserRecoverPasswordAdmin'; + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view shows information about password recovery + */ +class UserRecoverPasswordAdminView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + $platform =& $gallery->getPlatform(); + $session =& $gallery->getSession(); + + $status = $error = array(); + $authFile = GALLERY_CONFIG_DIR . '/login.txt'; + + if ($form['formName'] != 'UserRecoverPasswordAdmin') { + $form['formName'] = 'UserRecoverPasswordAdmin'; + + /* Don't display the Authorization Incorrect error on first page load */ + $status['firstLoad'] = 1; + + /* Generate the auth string on the first visit to this view */ + $this->_generateAuthString(); + } + + $authString = $session->get('core.UserRecoverPasswordAdminAuthKey'); + + if (!$platform->file_exists($authFile)) { + $error['authFile']['missing'] = 1; + } else if (!$platform->is_readable($authFile)) { + $error['authFile']['unreadable'] = 1; + } else { + $authStringFromFile = trim($platform->file_get_contents($authFile)); + if ($authStringFromFile == $authString) { + $status['authString']['correct'] = 1; + } else { + $error['authString']['incorrect'] = 1; + } + } + + $status['userName'] = GalleryUtilities::getRequestVariables('userName'); + + $UserRecoverPasswordAdmin['authString'] = $authString; + $UserRecoverPasswordAdmin['error'] = $error; + $UserRecoverPasswordAdmin['status'] = $status; + $template->setVariable('UserRecoverPasswordAdmin', $UserRecoverPasswordAdmin); + $template->setVariable('controller', 'core.UserRecoverPasswordAdmin'); + return array(null, array('body' => 'modules/core/templates/UserRecoverPasswordAdmin.tpl')); + } + + /** + * Generate the authorization string used for login.txt + * @access private + */ + function _generateAuthString() { + global $gallery; + $session =& $gallery->getSession(); + + for ($len=64, $rand=''; + strlen($rand) < $len; + $rand .= chr(!mt_rand(0, 2) ? mt_rand(48, 57) : + (!mt_rand(0, 1) ? mt_rand(65, 90) : + mt_rand(97, 122)))); + $session->put('core.UserRecoverPasswordAdminAuthKey', md5($rand)); + } +} +?> diff --git a/Source/gallery2/modules/core/UserRecoverPasswordConfirm.inc b/Source/gallery2/modules/core/UserRecoverPasswordConfirm.inc new file mode 100644 index 0000000..812057e --- /dev/null +++ b/Source/gallery2/modules/core/UserRecoverPasswordConfirm.inc @@ -0,0 +1,183 @@ + + * @version $Revision: 15513 $ + */ +class UserRecoverPasswordConfirmController extends GalleryController { + + /** + * @see GalleryController::handleRequest + */ + function handleRequest($form) { + global $gallery; + + $status = $results = $error = array(); + + if (isset($form['action']['submit'])) { + if (empty($form['userName'])) { + $error[] = 'form[error][userName][missing]'; + } + + if (empty($form['authString'])) { + $error[] = 'form[error][authString][missing]'; + } + + if (empty($form['password1']) || empty($form['password2'])) { + $error[] = 'form[error][password][missing]'; + } else if ($form['password1'] != $form['password2']) { + $error[] = 'form[error][password][mismatch]'; + } + + /* No errors? Check the DB for the request and then update the user's password */ + if (empty($error)) { + list ($ret, $user) = GalleryCoreApi::fetchUserByUsername($form['userName']); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + /* + * Check the database to see if a previous request. + * If a request exists, check the timestamp to see if a new request can be + * generated, or if they will be denied because the window is too small. + */ + list ($ret, $requestExpires) = UserRecoverPasswordHelper_simple::getRequestExpires( + $form['userName'], $form['authString']); + if ($ret) { + return array($ret, null); + } + + if ($user && !empty($requestExpires)) { + if ($requestExpires < time()) { + /* + * This request was made more than 7 days ago + * purge it from the system and redirect to the request page + */ + $error[] = 'form[error][request][tooOld]'; + } else if (!empty($user)) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($user->getId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $user) = $user->refresh(); + if ($ret) { + return array($ret, null); + } + + $user->changePassword($form['password1']); + + $ret = $user->save(); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::removeMapEntry( + 'FailedLoginsMap', + array('userName' => $user->getUserName())); + if ($ret) { + return array($ret, null); + } + + $status['passwordRecovered'] = 1; + } + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryRecoverPasswordMap', + array('userName' => $user->getUserName())); + if ($ret) { + return array($ret, null); + } + } else { + /* There is no matching request for this userName and authString combo */ + $error[] = 'form[error][request][missing]'; + } + } + } else if (isset($form['action']['cancel'])) { + $results['return'] = 1; + } + + if (empty($error) && !empty($status)) { + $results['redirect']['view'] = 'core.UserAdmin'; + $results['redirect']['subView'] = 'core.UserLogin'; + $results['return'] = 0; + } else { + $results['delegate']['view'] = 'core.UserAdmin'; + $results['delegate']['subView'] = 'core.UserRecoverPasswordConfirm'; + } + + $results['status'] = $status; + $results['error'] = $error; + + return array(null, $results); + } +} + +/** + * This view shows information about password recovery + */ +class UserRecoverPasswordConfirmView extends GalleryView { + + /** + * @see GalleryView::loadTemplate + */ + function loadTemplate(&$template, &$form) { + global $gallery; + + if ($form['formName'] == 'UserRecoverPasswordConfirm') { + if (empty($form['password1']) || empty($form['password2'])) { + $form['error']['password']['missing'] = 1; + } + } else { + $form['userName'] = GalleryUtilities::getRequestVariables('userName'); + $form['authString'] = GalleryUtilities::getRequestVariables('authString'); + $form['formName'] = 'UserRecoverPasswordConfirm'; + } + + list ($ret, $requestExpires) = UserRecoverPasswordHelper_simple::getRequestExpires( + $form['userName'], $form['authString']); + if ($ret) { + return array($ret, null); + } + + if (empty($requestExpires)) { + return array(null, + array('redirect' => array('view' => 'core.UserAdmin', + 'subView' => 'core.UserRecoverPassword'))); + } else { + $UserRecoverPasswordConfirm = array(); + $template->setVariable('UserRecoverPasswordConfirm', $UserRecoverPasswordConfirm); + $template->setVariable('controller', 'core.UserRecoverPasswordConfirm'); + return array(null, + array('body' => 'modules/core/templates/UserRecoverPasswordConfirm.tpl')); + } + } +} +?> diff --git a/Source/gallery2/modules/core/UserRecoverPasswordDownload.inc b/Source/gallery2/modules/core/UserRecoverPasswordDownload.inc new file mode 100644 index 0000000..bdb323d --- /dev/null +++ b/Source/gallery2/modules/core/UserRecoverPasswordDownload.inc @@ -0,0 +1,60 @@ + + * @version $Revision: 15513 $ + */ +class UserRecoverPasswordDownloadView extends GalleryView { + + /** + * @see GalleryView::isImmediate + */ + function isImmediate() { + return true; + } + + /** + * @see GalleryView::renderImmediate + */ + function renderImmediate($status, $error) { + global $gallery; + $session =& $gallery->getSession(); + + $authString = $session->get('core.UserRecoverPasswordAdminAuthKey'); + + if (empty($authString)) { + return GalleryCoreApi::error(ERROR_MISSING_VALUE, __FILE__, __LINE__, + 'Authorization String Not Set'); + } + + header('Content-Type: text/plain'); + header('Content-Length: ' . strlen($authString)); + header('Content-Description: Download login.txt to your computer.'); + header('Content-Disposition: attachment; filename="login.txt"'); + print $authString; + + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/BuildDerivativesTask.class b/Source/gallery2/modules/core/classes/BuildDerivativesTask.class new file mode 100644 index 0000000..d44e64a --- /dev/null +++ b/Source/gallery2/modules/core/classes/BuildDerivativesTask.class @@ -0,0 +1,218 @@ + + * @version $Revision: 15906 $ + */ +class BuildDerivativesTask extends MaintenanceTask { + /** + * @see MaintenanceTask::getInfo + */ + function getInfo() { + global $gallery; + return array('l10Domain' => 'modules_core', + 'title' => $gallery->i18n('Build all thumbnails/resizes'), + 'description' => $gallery->i18n( + 'Ensure data files for all derivatives (thumbnails, etc) have been ' . + 'built and rebuild broken ones.')); + } + + /** + * @see MaintenanceTask::run + */ + function run() { + global $gallery; + $templateAdapter =& $gallery->getTemplateAdapter(); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + $templateAdapter->updateProgressBar( + $module->translate('Build All Thumbnails/Resizes'), '', 0); + + /* Check all existing derivatives */ + $query = ' + SELECT + [DerivativeImage::id] + FROM + [DerivativeImage] + ORDER BY [DerivativeImage::id] + '; + $gallery->guaranteeTimeLimit(120); + list ($ret, $derivatives) = $gallery->search($query); + if ($ret) { + return array($ret, null, null); + } + + /* Also attempt to add derivatives to items without them (no toolkit when item added) */ + $query = ' + SELECT + [GalleryDataItem::id] + FROM + [GalleryDataItem] + LEFT JOIN [GalleryChildEntity] ON [GalleryDataItem::id] = [GalleryChildEntity::parentId] + LEFT JOIN [GalleryDerivative] ON [GalleryChildEntity::id] = [GalleryDerivative::id] + GROUP BY + [GalleryDataItem::id] + HAVING + COUNT([GalleryDerivative::derivativeType]) = 0 + '; + $gallery->guaranteeTimeLimit(120); + list ($ret, $items) = $gallery->search($query); + if ($ret) { + return array($ret, null, null); + } + + $i = $broken = $built = 0; + $total = $derivatives->resultCount() + $items->resultCount(); + $gallery->guaranteeTimeLimit(120); + while ($result = $derivatives->nextResult()) { + $gallery->startRecordingDebugSnippet(); + list ($ret, $derivative, $wasBuilt) = + GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($result[0], true); + $debug = $gallery->stopRecordingDebugSnippet(); + if ($ret) { + $debug .= "\nError: building $result[0]: " . $ret->getAsHtml(); + } + if ($ret || $derivative->getIsBroken()) { + $this->_printFailure($debug, ++$broken, $module); + } else if ($wasBuilt) { + $built++; + } + + if (++$i % 5 == 0 || $i == $total) { + $ret = $this->_updateProgress($module, $i, $total); + if ($ret) { + return array($ret, null, null); + } + } + } + + while ($result = $items->nextResult()) { + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($result[0]); + if ($ret) { + return array($ret, null, null); + } + $error = ''; + $gallery->startRecordingDebugSnippet(); + if (method_exists($item, 'getWidth') && !$item->getWidth()) { + $ret = $this->_rescan($item); + if ($ret) { + $error .= "\nError: rescan $result[0]: " . $ret->getAsHtml(); + } else { + $built++; + } + } + $ret = GalleryCoreApi::applyDerivativePreferences($item, $item->getParentId(), true); + $debug = $gallery->stopRecordingDebugSnippet(); + if ($ret) { + $error .= "\nError: building $result[0]: " . $ret->getAsHtml(); + } + if ($error) { + $this->_printFailure($debug . $error, ++$broken, $module); + } + + if (++$i % 5 == 0 || $i == $total) { + $ret = $this->_updateProgress($module, $i, $total); + if ($ret) { + return array($ret, null, null); + } + } + } + + $result = array($module->translate(array('text' => 'Checked %d items', 'arg1' => $total))); + if ($built) { + $result[] = $module->translate(array('text' => '%d items built', 'arg1' => $built)); + } + if ($broken) { + $result[] = $module->translate(array('text' => '%d items failed', 'arg1' => $broken)); + } + return array(null, true, $result); + } + + function _rescan(&$item) { + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($item->getId()); + if ($ret) { + return $ret; + } + list ($ret, $item) = $item->refresh(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $ret = $item->rescan(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $ret = $item->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + return null; + } + + function _updateProgress(&$module, $i, $total) { + global $gallery; + $storage =& $gallery->getStorage(); + $templateAdapter =& $gallery->getTemplateAdapter(); + + $message = $module->translate( + array('text' => 'Processing image %d of %d', 'arg1' => $i, 'arg2' => $total)); + $templateAdapter->updateProgressBar($message, '', $i / $total); + /* Release locks (avoid too many open files for flock based locking) */ + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + $gallery->guaranteeTimeLimit(120); + return null; + } + + function _printFailure($message, $count, &$module) { + if ($count == 1) { + print '

    ' . $module->translate('Debug output for failed items:') . '

    '; + } + print '
    ' . $message . '
    '; + } + + /** + * @see MaintenanceTask::requiresProgressBar + */ + function requiresProgressBar() { + return true; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class b/Source/gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class new file mode 100644 index 0000000..bb1821b --- /dev/null +++ b/Source/gallery2/modules/core/classes/ConvertDatabaseToUtf8Task.class @@ -0,0 +1,86 @@ + + * @version $Revision: 15513 $ + */ +class ConvertDatabaseToUtf8Task extends MaintenanceTask { + /** + * @see MaintenanceTask::getInfo + */ + function getInfo() { + global $gallery; + + $info['l10Domain'] = 'modules_core'; + $info['title'] = $gallery->i18n('Convert MySQL database to UTF8'); + $info['description'] = $gallery->i18n( + 'If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you ' . + 'will experience scrambled characters until you convert your database to use ' . + 'UTF8. This operation is harmless if your database is already converted, so ' . + 'it\'s safe to try it if you\'re unsure. After using this, you should run the ' . + '\'Delete database cache\' task to get rid of any corruption in your cache.'); + return $info; + } + + /** + * @see MaintenanceTask::run + */ + function run() { + global $gallery; + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + GalleryCoreApi::requireOnce('modules/core/CoreModuleExtras.inc'); + list ($ret, $converted) = CoreModuleExtras::convertCharacterSetToUtf8( + $module, new MockStatusMonitor()); + if ($ret) { + return array($ret, null, null); + } + + if ($converted) { + $details = array($module->translate('Database successfully converted to UTF8')); + } else { + $details = array($module->translate('No conversion required')); + } + + return array(null, true, $details); + } +} + +/** + * Use a mock status monitor to simulate what we use in the upgrader. + * + * @todo use the real progress bar when we unify the two implementations. + */ +class MockStatusMonitor { + function renderStatusMessage() { + } +} +?> diff --git a/Source/gallery2/modules/core/classes/CoreCaptchaAdminOption.class b/Source/gallery2/modules/core/classes/CoreCaptchaAdminOption.class new file mode 100644 index 0000000..5f05db3 --- /dev/null +++ b/Source/gallery2/modules/core/classes/CoreCaptchaAdminOption.class @@ -0,0 +1,43 @@ + + * @version $Revision: 15513 $ + */ +class CoreCaptchaAdminOption extends CaptchaAdminOption { + /** + * @see CaptchaAdminOption::getOptionData + */ + function getOptionData() { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + /* Note: we use validation.level for all plugins, but config is via captcha module */ + return array(null, $module->translate('Login'), + array('module', 'core', 'validation.level'), + array('HIGH', 'MEDIUM', 'LOW', 'OFF')); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/DatabaseLockSystem.class b/Source/gallery2/modules/core/classes/DatabaseLockSystem.class new file mode 100644 index 0000000..35594c8 --- /dev/null +++ b/Source/gallery2/modules/core/classes/DatabaseLockSystem.class @@ -0,0 +1,139 @@ + + * @version $Revision: 15513 $ + */ +class DatabaseLockSystem extends GalleryLockSystem { + + /** + * @see GalleryLockSystem::_acquireLock + */ + function _acquireLock($ids, $timeout, $lockType) { + global $gallery; + $storage =& $gallery->getStorage(); + + if ($lockType == LOCK_WRITE) { + list ($ret, $lock) = $storage->acquireWriteLock($ids, $timeout); + if ($ret) { + return array($ret, null); + } + } else { + list ($ret, $lock) = $storage->acquireReadLock($ids, $timeout); + if ($ret) { + return array($ret, null); + } + } + + $this->_locks[$lock['lockId']] = $lock; + return array(null, $lock['lockId']); + } + + /** + * @see GalleryLockSystem::_releaseLocksNow + */ + function _releaseLocksNow($locks) { + global $gallery; + $storage =& $gallery->getStorage(); + + $ret = $storage->releaseLocks(array_keys($locks)); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryLockSystem:_removeObjectsFromLock + */ + function _removeObjectsFromLock(&$lock, $ids) { + global $gallery; + $storage =& $gallery->getStorage(); + + $ret = $storage->removeIdsFromLock($lock, $ids); + if ($ret) { + return $ret; + } + foreach ($ids as $id) { + unset($lock['ids'][$id]); + } + return null; + } + + /** + * @see GalleryLockSystem:_moveObjectsBetweenLocks + */ + function _moveObjectsBetweenLocks($relock, $newLockId) { + global $gallery; + $storage =& $gallery->getStorage(); + + $ret = $storage->moveIdsBetweenLocks( + $relock, $newLockId, $this->_locks[$newLockId]['type']); + if ($ret) { + return $ret; + } + $ret = parent::_moveObjectsBetweenLocks($relock, $newLockId); + if ($ret) { + return $ret; + } + return null; + } + + /** + * @see GalleryLockSystem::_newLockId + */ + function _newLockId() { + global $gallery; + $storage =& $gallery->getStorage(); + + list ($ret, $lockId) = $storage->newLockId(); + if ($ret) { + return array($ret, null); + } + return array(null, $lockId); + } + + /** + * @see GalleryLockSystem::refreshLocks + */ + function refreshLocks($freshUntil) { + global $gallery; + + if (!empty($this->_locks)) { + $storage =& $gallery->getStorage(); + $ret = $storage->refreshLocks(array_keys($this->_locks), $freshUntil); + if ($ret) { + return $ret; + } + } + + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/DeleteSessionsTask.class b/Source/gallery2/modules/core/classes/DeleteSessionsTask.class new file mode 100644 index 0000000..ef383da --- /dev/null +++ b/Source/gallery2/modules/core/classes/DeleteSessionsTask.class @@ -0,0 +1,127 @@ + + * @version $Revision: 15513 $ + */ +class DeleteSessionsTask extends MaintenanceTask { + /** + * @see MaintenanceTask::getInfo + */ + function getInfo() { + global $gallery; + + return array('l10Domain' => 'modules_core', + 'title' => $gallery->i18n('Delete user sessions'), + 'description' => $gallery->i18n( + 'Delete all persistent user sessions according to your current session ' . + 'expiration settings.')); + } + + /** + * @see MaintenanceTask::run + */ + function run() { + global $gallery; + $templateAdapter =& $gallery->getTemplateAdapter(); + $session =& $gallery->getSession(); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + /* Touch this admin session to ensure that we don't delete it */ + $session->put('touch', time()); + $ret = $session->save(); + if ($ret) { + return array($ret, null, null); + } + + list ($ret, $params) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + $inactivityTimeout = (int)$params['session.inactivityTimeout']; + $lifetime = (int)$params['session.lifetime']; + list ($ret, $anonymousUserId) = GalleryCoreApi::getAnonymousUserId(); + if ($ret) { + return array($ret, null, null); + } + + $templateAdapter->updateProgressBar($module->translate('Delete user sessions'), '', 0); + + $data = array(time() - $inactivityTimeout, time() - $lifetime, + $anonymousUserId, time() - (7 * 86400)); + + $query = ' + SELECT COUNT([GallerySessionMap::id]) + FROM [GallerySessionMap] + WHERE [GallerySessionMap::modificationTimestamp] < ? OR + [GallerySessionMap::creationTimestamp] < ? OR + ([GallerySessionMap::userId] = ? AND [GallerySessionMap::creationTimestamp] < ?) + '; + list ($ret, $results) = $gallery->search($query, $data); + if ($ret) { + return array($ret, null, null); + } + $result = $results->resultCount(); + $total = $result[0]; + + if ($total) { + /* This limit controls the query text length, 1000 sessionIds => query size = 32kbyte */ + $stepSize = $session->_expirationLimit = 1000; + $iterations = ceil($total / $stepSize); + $option['limit']['count'] = $stepSize; + + for ($i = 1; $i <= $iterations; $i++) { + $gallery->guaranteeTimeLimit(120); + $ret = $session->_expireSessions(); + if ($ret) { + return array($ret, null, null); + } + + $templateAdapter->updateProgressBar( + $module->translate('Delete user sessions'), '', $i / $iterations); + } + } + + $templateAdapter->updateProgressBar($module->translate('Delete user sessions'), '', 1); + + $result = array($module->translate(array('text' => 'Deleted %d sessions.', + 'arg1' => (int)$total))); + + return array(null, true, $result); + } + + /** + * @see MaintenanceTask::requiresProgressBar + */ + function requiresProgressBar() { + return true; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/Entities.inc b/Source/gallery2/modules/core/classes/Entities.inc new file mode 100644 index 0000000..7aa60f9 --- /dev/null +++ b/Source/gallery2/modules/core/classes/Entities.inc @@ -0,0 +1,136 @@ + array( + 'theme' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_SMALL), + 'orderBy' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM), + 'orderDirection' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_SMALL) +), + 'parent' => 'GalleryItem', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryAnimationItem'] = array( + 'members' => array( + 'width' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_FULL), + 'height' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_FULL) +), + 'parent' => 'GalleryDataItem', + 'module' => 'core', + 'linked' => array('width','height')); +$entityInfo['GalleryChildEntity'] = array( + 'members' => array( + 'parentId' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1) +), + 'parent' => 'GalleryEntity', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryDataItem'] = array( + 'members' => array( + 'mimeType' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'external-access' => EXTERNAL_ACCESS_READ), + 'size' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_READ) +), + 'parent' => 'GalleryItem', + 'module' => 'core', + 'linked' => array('mimeType','size')); +$entityInfo['GalleryDerivative'] = array( + 'members' => array( + 'derivativeSourceId' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'derivativeOperations' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_LARGE), + 'derivativeOrder' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1), + 'derivativeSize' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_READ), + 'derivativeType' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1), + 'mimeType' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_FULL), + 'postFilterOperations' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_LARGE), + 'isBroken' => array('type' => STORAGE_TYPE_BOOLEAN) +), + 'parent' => 'GalleryChildEntity', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryDerivativeImage'] = array( + 'members' => array( + 'width' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_READ), + 'height' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_READ) +), + 'parent' => 'GalleryDerivative', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryEntity'] = array( + 'members' => array( + 'id' => array('type' => STORAGE_TYPE_INTEGER| STORAGE_TYPE_ID, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'creationTimestamp' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_FULL), + 'isLinkable' => array('type' => STORAGE_TYPE_BOOLEAN, 'notNull' => 1), + 'linkId' => array('type' => STORAGE_TYPE_INTEGER), + 'modificationTimestamp' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'serialNumber' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'entityType' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_SMALL, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'onLoadHandlers' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM) +), + 'parent' => null, + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryFileSystemEntity'] = array( + 'members' => array( + 'pathComponent' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'external-access' => EXTERNAL_ACCESS_READ) +), + 'parent' => 'GalleryChildEntity', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryGroup'] = array( + 'members' => array( + 'groupType' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1), + 'groupName' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'external-access' => EXTERNAL_ACCESS_READ) +), + 'parent' => 'GalleryEntity', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryItem'] = array( + 'members' => array( + 'canContainChildren' => array('type' => STORAGE_TYPE_BOOLEAN, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'description' => array('type' => STORAGE_TYPE_TEXT, 'size' => STORAGE_SIZE_SMALL, 'external-access' => EXTERNAL_ACCESS_FULL), + 'keywords' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_LARGE, 'external-access' => EXTERNAL_ACCESS_FULL), + 'ownerId' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1), + 'renderer' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM), + 'summary' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_LARGE, 'external-access' => EXTERNAL_ACCESS_FULL), + 'title' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'external-access' => EXTERNAL_ACCESS_FULL), + 'viewedSinceTimestamp' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'originationTimestamp' => array('type' => STORAGE_TYPE_INTEGER, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_FULL) +), + 'parent' => 'GalleryFileSystemEntity', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryMovieItem'] = array( + 'members' => array( + 'width' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_FULL), + 'height' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_FULL), + 'duration' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_FULL) +), + 'parent' => 'GalleryDataItem', + 'module' => 'core', + 'linked' => array('width','height','duration')); +$entityInfo['GalleryPhotoItem'] = array( + 'members' => array( + 'width' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_READ), + 'height' => array('type' => STORAGE_TYPE_INTEGER, 'external-access' => EXTERNAL_ACCESS_READ) +), + 'parent' => 'GalleryDataItem', + 'module' => 'core', + 'linked' => array('width','height')); +$entityInfo['GalleryUnknownItem'] = array( + 'members' => array( +), + 'parent' => 'GalleryDataItem', + 'module' => 'core', + 'linked' => array()); +$entityInfo['GalleryUser'] = array( + 'members' => array( + 'userName' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_SMALL, 'notNull' => 1, 'external-access' => EXTERNAL_ACCESS_READ), + 'fullName' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'external-access' => EXTERNAL_ACCESS_FULL), + 'hashedPassword' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM), + 'email' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_LARGE), + 'language' => array('type' => STORAGE_TYPE_STRING, 'size' => STORAGE_SIZE_MEDIUM, 'external-access' => EXTERNAL_ACCESS_READ), + 'locked' => array('type' => STORAGE_TYPE_BOOLEAN) +), + 'parent' => 'GalleryEntity', + 'module' => 'core', + 'linked' => array()); +?> diff --git a/Source/gallery2/modules/core/classes/FlockLockSystem.class b/Source/gallery2/modules/core/classes/FlockLockSystem.class new file mode 100644 index 0000000..f3d024e --- /dev/null +++ b/Source/gallery2/modules/core/classes/FlockLockSystem.class @@ -0,0 +1,212 @@ + + * @author Alan Harder + * @version $Revision: 15799 $ + */ +class FlockLockSystem extends GalleryLockSystem { + + /** + * Reference counts for every lock we're holding so that if we've got a file doubly read locked + * we don't try to delete it until all read locks are released. + * @todo When we get rid of double read locks, we can delete this. + * @var array + * @access private + */ + var $_references; + + /** + * @see GalleryLockSystem::_acquireLock + */ + function _acquireLock($ids, $timeout, $lockType) { + global $gallery; + $platform =& $gallery->getPlatform(); + $cutoffTime = time() + $timeout; + + /* Get a file handle (which is actually a lock handle) for all the files first */ + $notLocked = array(); + foreach ($ids as $id) { + $lockFile = $this->_getLockFile($id); + $fd = $platform->fopen($lockFile, 'wb+'); + if ($fd) { + $notLocked[$id] = array($fd, $lockFile); + } else { + /* Close the files that we already opened successfully and return an error */ + foreach ($notLocked as $lockInfo) { + list ($fd, $lockFile) = $lockInfo; + $platform->fclose($fd); + /* + * Delete the lock files even if others are locking it too (releaseLock calls + * are too often forgotten in error handling) + */ + if ($platform->file_exists($lockFile)) { + @$platform->unlink($lockFile); + } + } + return array(GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + $lockFile), null); + } + } + + /* Move them from notLocked -> locked as we acquire the lock */ + $locked = array(); + $wouldBlock = null; + $flockType = ($lockType == LOCK_READ) ? LOCK_SH : LOCK_EX; + while (!empty($notLocked)) { + $tmp = $notLocked; + $notLocked = array(); + foreach ($tmp as $id => $lockInfo) { + list ($fd, $lockFile) = $lockInfo; + /* Check if we can lock */ + $flockReturned = $platform->flock($fd, $flockType | LOCK_NB, $wouldBlock); + if ($flockReturned && !$wouldBlock) { + $locked[$id] = $lockInfo; + /* Keep track of the number of locks there are for this object */ + if (isset($this->_references[$lockFile])) { + $this->_references[$lockFile]++; + } else { + $this->_references[$lockFile] = 1; + } + } else { + /* Remember that it's not locked and keep going */ + $notLocked[$id] = $lockInfo; + } + } + + if (!empty($notLocked)) { + if (time() > $cutoffTime) { + /* Couldn't get the locks in time, release the ones that we have and return */ + foreach (array_merge($locked, $notLocked) as $lockInfo) { + $this->_closeLockFile($lockInfo); + } + return array(GalleryCoreApi::error(ERROR_LOCK_TIMEOUT, __FILE__, __LINE__, + array_reduce($notLocked, + create_function('$v,$w', 'return empty($v) ? $w[1] : "$v $w[1]";'))), + null); + } + + /* Wait a second and try any unacquired locks again */ + $gallery->debug('Waiting for a lock'); + sleep(1); + } + } + + $lockId = crc32(microtime()); + $this->_locks[$lockId] = array('lockId' => $lockId, 'type' => $lockType, 'ids' => $locked); + return array(null, $lockId); + } + + /** + * @see GalleryLockSystem::_releaseLocksNow + */ + function _releaseLocksNow($locks) { + global $gallery; + $gallery->guaranteeTimeLimit(count($locks) + 5); + + /* Release all locks by closing the files */ + foreach ($locks as $lock) { + foreach ($lock['ids'] as $lockInfo) { + $this->_closeLockFile($lockInfo); + } + } + + return null; + } + + /** + * @see GalleryLockSystem::refreshLocks + */ + function refreshLocks($freshUntil) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Flush one byte to each lock file to update its timestamp */ + foreach ($this->_locks as $lockId => $lock) { + foreach ($lock['ids'] as $lockInfo) { + list ($fd, $lockFile) = $lockInfo; + $count = $platform->fwrite($fd, '.'); + if ($count == 0) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + $lockFile); + } + $platform->fflush($fd); + } + } + + return null; + } + + /** + * Return the lock file for a given object id. + * @param int $id the input id + * @return string the complete path to the lock file + * @access private + */ + function _getLockFile($id) { + global $gallery; + return $gallery->getConfig('data.gallery.locks') . (int)$id; + } + + /** + * Close file for this lock and remove file if there are no more references. + * @param array $lockInfo lockInfo + * @access private + */ + function _closeLockFile($lockInfo) { + global $gallery; + $platform =& $gallery->getPlatform(); + + list ($fd, $lockFile) = $lockInfo; + $platform->fclose($fd); + if ($platform->file_exists($lockFile)) { + $this->_references[$lockFile]--; + if ($this->_references[$lockFile] == 0) { + $platform->unlink($lockFile); + } + } + } + + /** + * @see GalleryLockSystem::_removeObjectsFromLock + */ + function _removeObjectsFromLock(&$lock, $ids) { + foreach ($ids as $id) { + $this->_closeLockFile($lock['ids'][$id]); + unset($lock['ids'][$id]); + } + return null; + } + + /** + * @see GalleryLockSystem::_newLockId + */ + function _newLockId() { + return array(null, crc32(microtime())); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/FlushDatabaseCacheTask.class b/Source/gallery2/modules/core/classes/FlushDatabaseCacheTask.class new file mode 100644 index 0000000..6758bd2 --- /dev/null +++ b/Source/gallery2/modules/core/classes/FlushDatabaseCacheTask.class @@ -0,0 +1,80 @@ + + * @version $Revision: 15513 $ + */ +class FlushDatabaseCacheTask extends MaintenanceTask { + /** + * @see MaintenanceTask::getInfo + */ + function getInfo() { + global $gallery; + + $info['l10Domain'] = 'modules_core'; + $info['title'] = $gallery->i18n('Delete database cache'); + $info['description'] = $gallery->i18n( + 'Gallery stores commonly used database information on disk for increased performance.' . + ' If you modify the database directly, you should run this task to clean out the ' . + 'cache and force Gallery to reload the information from the database.'); + return $info; + } + + /** + * @see MaintenanceTask::run + */ + function run() { + global $gallery; + $platform =& $gallery->getPlatform(); + $cacheBaseDir = $gallery->getConfig('data.gallery.cache'); + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + $cacheDirs = array('entity', 'theme', 'module'); + $success = true; + foreach ($cacheDirs as $dir) { + $dir = sprintf('%s%s', $cacheBaseDir, $dir); + if ($platform->file_exists($dir)) { + if ($platform->recursiveRmDir($dir)) { + $details[] = $module->translate( + array('text' => 'Successfully deleted directory: %s', + 'arg1' => $dir)); + } else { + $success = false; + $details[] = $module->translate( + array('text' => 'Unable to delete directory: %s', + 'arg1' => $dir)); + } + } + } + + return array(null, $success, $details); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/FlushTemplatesTask.class b/Source/gallery2/modules/core/classes/FlushTemplatesTask.class new file mode 100644 index 0000000..16e0f66 --- /dev/null +++ b/Source/gallery2/modules/core/classes/FlushTemplatesTask.class @@ -0,0 +1,76 @@ + + * @version $Revision: 15513 $ + */ +class FlushTemplatesTask extends MaintenanceTask { + /** + * @see MaintenanceTask::getInfo + */ + function getInfo() { + global $gallery; + + $info['l10Domain'] = 'modules_core'; + $info['title'] = $gallery->i18n('Delete template cache'); + $info['description'] = $gallery->i18n( + 'Gallery compiles template files and saves them for increased performance. If you\'' . + 're experiencing problems that say Smarty error then you might try running ' . + 'this task. Also run this if you remove a local/*.tpl file so Smarty will switch ' . + 'back to the default tpl file.'); + return $info; + } + + /** + * @see MaintenanceTask::run + */ + function run() { + global $gallery; + $platform =& $gallery->getPlatform(); + $dir = $gallery->getConfig('data.smarty.templates_c'); + $success = true; + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + if ($platform->file_exists($dir)) { + $success = $platform->recursiveRmdir($dir); + } + + $details = array(); + if ($success) { + $details[] = $module->translate('Template cache deleted successfully'); + } else { + $details[] = $module->translate( + array('text' => 'Unable to delete directory: %s', 'arg1' => $dir)); + } + + return array(null, $success, $details); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GNUmakefile b/Source/gallery2/modules/core/classes/GNUmakefile new file mode 100644 index 0000000..8015656 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GNUmakefile @@ -0,0 +1 @@ +include ../../../lib/tools/bin/GNUmakefile.classes diff --git a/Source/gallery2/modules/core/classes/Gallery.class b/Source/gallery2/modules/core/classes/Gallery.class new file mode 100644 index 0000000..74731e9 --- /dev/null +++ b/Source/gallery2/modules/core/classes/Gallery.class @@ -0,0 +1,977 @@ + + * @version $Revision: 15519 $ + */ +class Gallery { + + /** + * The active GalleryUser instance + * @var object GalleryUser + * @access private + */ + var $_activeUser; + + /** + * Storage for all configuration variables, set in config.php. The values contained here can't + * be modified. Well, they can be modified but they can't be saved so it's not a good idea. + * @var array + * @access private + */ + var $_config; + + /** + * The current debugging mode. One of 'buffered', 'logged', 'immediate' or false. + * @var string + * @access private + */ + var $_debug; + + /** + * Where to send debug output (when the debugging mode is set to 'logged') + * @var string + * @access private + */ + var $_debugLogFile; + + /** + * A place to temporarily store debug output when the debugging mode is set to 'buffered' + * @var string + * @access private + */ + var $_debugBuffer; + + /** + * A secondary debug buffer used to record debug output even if regular debug mode is disabled. + * @var string + * @access private + */ + var $_debugSnippet = null; + + /** + * Are we currently recording a debug snippet? + * @var boolean + * @access private + */ + var $_debugSnippetActive = false; + + /** + * The active GalleryLockSystem implementation + * @var object GalleryLockSystem + * @access private + */ + var $_lockSystem; + + /** + * An instance of the GalleryPlatform class + * @var object GalleryPlatform + * @access private + */ + var $_platform; + + /** + * The current profiling mode. + * @var string + * @access private + */ + var $_profile; + + /** + * Storage for all session variables. + * @var object GallerySession + * @access private + */ + var $_session; + + /** + * The backend persistent store for the Gallery class + * @var object GalleryStorage + * @access private + */ + var $_storage; + + /** + * The adapter between the template system and any Gallery callbacks that want to use in the + * template process. + * @var object GalleryTemplateAdapter + * @access private + */ + var $_templateAdapter; + + /** + * Instance of the GalleryTranslator class + * @var object GalleryTranslator + * @access private + */ + var $_translator; + + /** + * Instance of the GalleryUrlGenerator class + * @var object GalleryUrlGenerator + * @access private + */ + var $_urlGenerator; + + /** + * The name of the current view + * @var string + * @access private + */ + var $_currentView = ''; + + /** + * The time at which we should cease whatever operation we're doing + * @var int + * @access private + */ + var $_timeLimit; + + /** + * Actions to perform at the end of the request + * @var array + * @access private + */ + var $_shutdownActions; + + /** + * A facade in front of the PHP virtual machine. We use this as an abstraction layer to let us + * interpose mock objects between our code and the VM for testing purposes. When we're not in a + * test environment, this is always an instance of GalleryPhpVm. + * @var object GalleryPhpVm + * @access private + */ + var $_phpVm = null; + + + function Gallery() { + $this->_activeUser = null; + + /* Set up a shutdown function to release any hanging locks */ + register_shutdown_function(array(&$this, '_shutdown')); + + /* Default config settings (can be overridden via config.php or embedded environment) */ + $this->_config = array( + 'login' => true, /* Offer UserAdmin links (Login/Logout/Your Account) */ + + /* UrlGenerator parameters for redirect URL to login page. Can be overridden. */ + 'loginRedirect' => array('view' => 'core.UserAdmin', + 'subView' => 'core.UserLogin', 'return' => true), + + 'link' => true, /* @deprecated - Allow item linking */ + /* (now unused, there is a separate replica module */ + + 'showSidebarBlocks' => true, /* Can we allow themes to show the sidebar? */ + + 'systemCharset' => null, /* Specify system character set, skip autodetect */ + 'defaultAlbumId' => null, /* Initial album to display instead of root album */ + 'breadcrumbRootId' => null, /* Can omit parents above this id in fetchParentSequence */ + 'anonymousUserId' => null, /* Alternate user account for guest sessions */ + ); + } + + /** + * @see GalleryStorage::search + */ + function search($query, $data=array(), $options=array()) { + $storage =& $this->getStorage(); + list ($ret, $results) = $storage->search($query, $data, $options); + if ($ret) { + return array($ret, null); + } + + return array(null, $results); + } + + /** + * Set the id of the active user. The active user is the user who is logged on in this session. + * + * @param object GalleryUser $user the current user + */ + function setActiveUser($user) { + $this->_activeUser = $user; + + /* It's possible for the session not to exist during bootstrap time */ + $session =& $this->getSession(); + if (isset($session)) { + $activeUserId = $session->getUserId(); + if ($activeUserId != $user->getId()) { + $session->setUserId($user->getId()); + $language = $user->getLanguage(); + if (!empty($language)) { + $session->put('core.language', $language); + } + } + } + } + + /** + * Get the Id of the active user. + * The active user is the user who is logged on in this session. + * + * @return int the id of the current user + */ + function getActiveUserId() { + if (isset($this->_activeUser)) { + return (int) $this->_activeUser->getId(); + } else { + $session =& $this->getSession(); + return (int) $session->getUserId(); + } + } + + /** + * Get the active user. + * Cache the results of the first call and return that same value each time. + * + * @return object GalleryUser the active user + */ + function getActiveUser() { + return $this->_activeUser; + } + + /** + * Store a value in the Gallery config table + * + * @param string $key + * @param mixed $value + */ + function setConfig($key, $value) { + assert('!empty($key)'); + $this->_config[$key] = $value; + } + + /** + * Get a value from the Gallery configuration settings + * + * @return mixed an arbitrary value + */ + function getConfig($key) { + assert('!empty($key)'); + return $this->_config[$key]; + } + + /** + * Initialize session. + * + * @return object GalleryStatus a status code + */ + function initSession() { + GalleryCoreApi::requireOnce('modules/core/classes/GallerySession.class'); + if (empty($this->_session)) { + $this->_session = new GallerySession(); + $ret = $this->_session->init(); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Initialize an empty session. + */ + function initEmptySession() { + GalleryCoreApi::requireOnce('modules/core/classes/GallerySession.class'); + $this->_session = new GallerySession(); + } + + /** + * Get the Gallery session object. + * Return a reference to the unique Gallery session object. Any changes made to this object + * will be saved in the session. + * + * @return object GallerySession a session instance + */ + function &getSession() { + return $this->_session; + } + + /** + * Set the Gallery platform object. + * + * @param object GalleryPlatform $platform the Gallery platform object + */ + function setPlatform(&$platform) { + unset($this->_platform); + $this->_platform =& $platform; + } + + /** + * Get the Gallery platform object. + * Return a reference to the unique Gallery platform object. + * + * @return object GalleryPlatform the Gallery platform object + */ + function &getPlatform() { + return $this->_platform; + } + + /** + * Return the active lock system. + * + * @param boolean $canInit (optional) if false and lockSystem isn't yet initialized, return null + * @return array object GalleryStatus a status code + * object GalleryLockSystem the lock implementation (reference) + */ + function &getLockSystem($canInit=true) { + if (!isset($this->_lockSystem)) { + if ($canInit) { + list ($ret, $which) = + GalleryCoreApi::getPluginParameter('module', 'core', 'lock.system'); + if ($ret) { + $ret = array($ret, null); + return $ret; + } + } else { + $which = 'null'; + } + + switch($which) { + case 'flock': + GalleryCoreApi::requireOnce('modules/core/classes/FlockLockSystem.class'); + $this->_lockSystem = new FlockLockSystem(); + break; + + case 'database': + GalleryCoreApi::requireOnce('modules/core/classes/DatabaseLockSystem.class'); + $this->_lockSystem = new DatabaseLockSystem(); + break; + + case 'null': + $this->_lockSystem = null; + break; + + default: + $ret = array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + return $ret; + } + } + + $ret = array(null, &$this->_lockSystem); + return $ret; + } + + /** + * Perform any necessary shutdown tasks. + * This should only be invoked as a register_shutdown callback. + * + * @access private + */ + function _shutdown() { + if (isset($this->_lockSystem)) { + /* Bitch about open locks */ + $lockIds = $this->_lockSystem->getLockIds(); + foreach ($lockIds as $lockId) { + if ($this->getDebug()) { + $this->debug(sprintf('Lock id %d was left hanging!', $lockId)); + } + } + + /* Release all locks and ignore any errors */ + $this->_lockSystem->releaseAllLocks(); + $this->_lockSystem->releaseQueue(); + } + + /* Roll back any transactions */ + if (isset($this->_storage)) { + $this->_storage->rollbackTransaction(); + } + } + + /** + * Return an instance of the GalleryStorage class + * + * @return object GalleryStorage a storage instance + */ + function &getStorage() { + if (!isset($this->_storage)) { + $config = $this->getConfig('storage.config'); + switch ($config['type']) { + case 'mysql': + case 'mysqlt': + case 'mysqli': + GalleryCoreApi::requireOnce('modules/core/classes/GalleryStorage.class'); + $this->_storage = new MySqlStorage($config); + break; + + case 'postgres': + case 'postgres7': + GalleryCoreApi::requireOnce( + 'modules/core/classes/GalleryStorage/PostgreSqlStorage.class'); + $this->_storage = new PostgreSqlStorage($config); + break; + + case 'db2': + GalleryCoreApi::requireOnce('modules/core/classes/GalleryStorage/Db2Storage.class'); + $this->_storage = new Db2Storage($config); + break; + + case 'oci8': + case 'oci805': + case 'oci8po': + case 'oracle': + GalleryCoreApi::requireOnce( + 'modules/core/classes/GalleryStorage/OracleStorage.class'); + $this->_storage = new OracleStorage($config); + break; + + case 'ado_mssql': + GalleryCoreApi::requireOnce( + 'modules/core/classes/GalleryStorage/MSSqlStorage.class'); + $this->_storage = new MSSqlStorage($config); + break; + + default: + $this->debug('Unknown storage type'); + $this->debug_r($config); + GalleryCoreApi::requireOnce('modules/core/classes/GalleryStorage.class', true); + $this->_storage = new GalleryStorage($config); + } + } + + return $this->_storage; + } + + /** + * Check if GalleryStorage has been instantiated + * + * @return boolean + */ + function isStorageInitialized() { + return isset($this->_storage); + } + + /** + * Set the URL generator + * + * @param object GalleryUrlGenerator $urlGenerator + */ + function setUrlGenerator(&$urlGenerator) { + unset($this->_urlGenerator); + $this->_urlGenerator =& $urlGenerator; + } + + /** + * Get the URL generator + * + * @return object GalleryUrlGenerator + */ + function &getUrlGenerator() { + return $this->_urlGenerator; + } + + /** + * Set the current view + * + * @param string $view the view name + */ + function setCurrentView($view) { + $this->_currentView = $view; + } + + /** + * Get the current view + * + * @return string the current view name + */ + function getCurrentView() { + return $this->_currentView; + } + + /** + * Return a reference to our GalleryTranslator instance + * + * @return object GalleryTranslator + */ + function &getTranslator() { + return $this->_translator; + } + + /** + * Initialize our GalleryTranslator + * + * @param boolean $dontUseDatabase (optional) true if we should not use the database + * @return object GalleryStatus a status code + */ + function initTranslator($dontUseDatabase=false) { + if (empty($this->_translator)) { + /* Load the translator class */ + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTranslator.class'); + + /* Do we already have an activeLanguage for this session? */ + list ($ret, $language) = $this->getActiveLanguageCode(); + if ($ret) { + return $ret; + + } + + $this->_translator = new GalleryTranslator(); + list ($ret, $languageCode) = $this->_translator->init($language, $dontUseDatabase); + if ($ret) { + return $ret; + } + $ret = $this->setActiveLanguageCode($languageCode); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Get the active language code. + * + * @return array object GalleryStatus a status code + * string language code + */ + function getActiveLanguageCode() { + $session =& $this->getSession(); + /* During installation, we don't have a session yet */ + if (!empty($session)) { + $language = $session->get('core.language'); + } else { + $language = ''; + } + + return array(null, $language); + } + + /** + * Set the active language code for this session. + * + * @param string $language language code + * @return object GalleryStatus a status code + */ + function setActiveLanguageCode($language) { + $session =& $this->getSession(); + /* During installation, we don't have a session yet */ + if (!empty($session)) { + $session->put('core.language', $language); + } + + return null; + } + + /** + * Guarantee that we have at least this many more seconds to work + * + * After this function completes, we will be guaranteed of at least this much more time to work. + * + * @param int $limit a time interval in seconds, must be greater than 0 + */ + function guaranteeTimeLimit($limit) { + if ($limit <= 0) { + $limit = 30; + } + + $now = time(); + if (empty($this->_timeLimit) || ($this->_timeLimit - $now < $limit)) { + $this->debug("[$now] can't guarantee $limit -- extending!"); + + /* Make sure that we extend at least a minimum of 30 seconds */ + $this->_timeLimit = $now + max($limit, 30); + set_time_limit($this->_timeLimit - $now); + + /* + * Then make sure our locks stick around. Even though this returns a status code, we + * really don't want to make guaranteeTimeLimit() return a status code since we want to + * keep it lightweight. So swallow the return code and don't sweat it for now. + */ + if (isset($this->_lockSystem)) { + $this->_lockSystem->refreshLocks($this->_timeLimit); + } + } + } + + /** + * Set the profiling state. Pass in an array containing the different kinds of things that you + * want to profile. Right now, we only do sql profiling so the only valid values are: + * + * false <-- no profiling + * array() <-- no profiling + * array('sql') <-- SQL profiling + * + * @param mixed $profile array of profiling modes or boolean false + */ + function setProfile($profile=array()) { + if ($profile === false) { + $this->_profile = array(); + } else { + $this->_profile = $profile; + } + } + + /** + * Get the profiling state + * + * @param string $type profiling type + * @return boolean + */ + function isProfiling($type) { + return in_array($type, $this->_profile); + } + + /** + * Change the debugging state + * + * @param mixed $debug one of 'buffered', 'logged', 'immediate' or false + */ + function setDebug($debug=false) { + + /* Try to do the right thing in the face of bogus input */ + if ($debug === true) { + $debug = 'buffered'; + } + + $this->_debug = $debug; + if (!isset($this->_debugBuffer)) { + $this->clearDebugBuffer(); + } + if (!empty($this->_debug)) { + /* PHP 6 includes E_STRICT in E_ALL. Hardcode since PHP 4 does not know that constant */ + error_reporting(E_ALL &~ 2048); + ini_set('display_errors', 1); + ini_set('log_errors', 1); + ini_set('short_open_tag', false); + ini_set('allow_call_time_pass_reference', false); + } + if (isset($this->_storage)) { + $this->_storage->setDebug((bool)$debug); + } + } + + /** + * Set the location of debugging output + * @param string $debugLogFile a filename + */ + function setDebugLogFile($debugLogFile) { + $this->_debugLogFile = $debugLogFile; + } + + /** + * Get the debug state + * @return mixed the debug state + */ + function getDebug() { + if ($this->_debug) { + return $this->_debug; + } + if ($this->_debugSnippetActive) { + return 'snippet'; + } + return false; + } + + /** + * Get any buffered debug output + * @return string the debug state + */ + function getDebugBuffer() { + return $this->_debugBuffer; + } + + /** + * Clear any buffered debug output + */ + function clearDebugBuffer() { + $this->_debugBuffer = ''; + } + + /** + * Start recording a debug snippet + */ + function startRecordingDebugSnippet() { + $this->_debugSnippetActive = true; + $this->_debugSnippet = ''; + if (isset($this->_storage) && !$this->_debug) { + $this->_storage->setDebug(true); + } + } + + /** + * Stop recording the debug snippet and return whatever got recorded. + * @return string the snippet + */ + function stopRecordingDebugSnippet() { + $this->_debugSnippetActive = false; + $tmp = $this->_debugSnippet; + $this->_debugSnippet = ''; + if (isset($this->_storage) && !$this->_debug) { + $this->_storage->setDebug(false); + } + return $tmp; + } + + /** + * Output a debug message + * @param string $msg a message + */ + function debug($msg) { + if (empty($msg)) { + return; + } + + if (!empty($this->_debug)) { + if (!strcmp($this->_debug, 'buffered')) { + $this->_debugBuffer .= wordwrap($msg) . "\n"; + } else if (!strcmp($this->_debug, 'logged')) { + /* Don't use platform calls for these as they call debug internally! */ + if ($fd = fopen($this->_debugLogFile, 'a')) { + $date = date('Y-m-d H:i:s'); + $session =& $this->getSession(); + if (!empty($session)) { + $id = $session->getId(); + } else { + $id = ''; + } + fwrite($fd, "$date [" . $id . "] $msg\n"); + fclose($fd); + } + } else if (!strcmp($this->_debug, 'immediate')) { + print "$msg\n"; + } + } + + if ($this->_debugSnippetActive) { + $this->_debugSnippet .= wordwrap($msg) . "\n"; + } + } + + /** + * Output a print_r style debug message + * + * @param mixed $object any object or value + * @param boolean $escapeHtmlEntities true if the output should be run through htmlentities() + */ + function debug_r($object, $escapeHtmlEntities=false) { + if (!empty($this->_debug)) { + $buf = print_r($object, true); + if ($escapeHtmlEntities) { + $buf = htmlentities($buf); + } + $this->debug($buf); + } + } + + /** + * Return the template adapter. There is only ever one in the system. + * + * @return object GalleryTemplateAdapter + */ + function &getTemplateAdapter() { + if (!isset($this->_templateAdapter)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTemplateAdapter.class'); + $this->_templateAdapter = new GalleryTemplateAdapter(); + } + + return $this->_templateAdapter; + } + + /** + * Mark a string as being internationalized. This is a semaphore method; it does nothing but it + * allows us to easily identify strings that require translation. Generally this is used to + * mark strings that will be stored in the database (like descriptions of permissions). + * + * Gallery uses GNU gettext for internationalization (i18n) and localization (l10n) of text + * presented to the user. Gettext needs to know about all places involving strings, that must + * be translated. Mark any place, where localization at runtime shall take place by using the + * function GalleryPlugin::translate(). + * + * eg. instead of: + * print 'TEST to be displayed in different languages'; + * use (in any modules subclass of GalleryPlugin): + * print $this->translate('TEST to be displayed in different languages'); + * and you are all set for pure literals. The translation teams will receive that literal + * string as a job to translate and will translate it (when the message is clear enough). + * At runtime the message is then localized when printed. + * The input string can contain a hint to assist translators: + * print $this->translate('TT '); + * The hint portion of the string will not be printed. + * + * But consider this case: + * $message_to_be_localized = 'TEST to be displayed in different languages'; + * print $this->translate($message_to_be_localized); + * + * The translate() method is called in the right place for runtime handling, but there is no + * message at gettext preprocessing time to be given to the translation teams, just a variable + * name. Translation of the variable name would break the code! So all places potentially + * feeding this variable have to be marked to be given to translation teams, but not translated + * at runtime! + * + * This method resolves all such cases. Simply mark the candidates: + * $message_to_be_localized = $gallery->i18n('TEST to be displayed in different languages'); + * print $this->translate($message_to_be_localized); + * + * @param string $value + * @param boolean $cFormat (optional) hint for gettext whether to use c-format + * @return string the same value + */ + function i18n($value, $cFormat=null) { + return $value; /* Just pass the value through */ + } + + /** + * Send a data file out to the browser as quickly as possible. + * + * @param string $relativePath the relative path to the file from the g2data/ directory + * @param string $filename logical name of the file (used for the Content-Disposition header) + * @param string $lastModified the last modified date string (used for the Last-Modified header) + * @param string $mimeType the mime type (used for the Content-type header) + * @param int $contentLength the size of the file (used for the Content-length header) + * @return boolean true if we transferred the file successfully + */ + function fastDownload($relativePath, $filename, $lastModified, $mimeType, $contentLength) { + /* + * Note: don't use GalleryPlatform or GalleryUtilities here because this code is + * a shortcut that is used before we load those classes. + */ + $fileNameParam = GALLERY_FORM_VARIABLE_PREFIX . 'fileName'; + $requestFileName = isset($_GET[$fileNameParam]) ? $_GET[$fileNameParam] : null; + if (!empty($requestFileName) && $requestFileName != $filename) { + return false; + } + + $base = $this->getConfig('data.gallery.base'); + $path = $base . $relativePath; + if (file_exists($path) && $fd = fopen($path, 'rb')) { + header('Content-Disposition: inline; filename="' . $filename . '"'); + header('Last-Modified: ' . $lastModified); + header('Content-type: ' . $mimeType); + header('Content-length: ' . $contentLength); + header('Expires: ' . $this->getHttpDate(time() + 31536000)); + set_magic_quotes_runtime(0); + set_time_limit(0); + while (!feof($fd)) { + print fread($fd, 4096); + } + fclose($fd); + + return true; + } + + return false; + } + + /** + * Return a date and time string that is conformant to RFC 2616 + * @see http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.3 + * + * @param int $time the unix timestamp of the date we want to return, + * empty if we want the current time + * @return string a date-string conformant to the RFC 2616 + */ + function getHttpDate($time='') { + if ($time == '') { + $time = time(); + } + /* Use fixed list of weekdays and months, so we don't have to fiddle with locale stuff */ + $months = array('01' => 'Jan', '02' => 'Feb', '03' => 'Mar', + '04' => 'Apr', '05' => 'May', '06' => 'Jun', + '07' => 'Jul', '08' => 'Aug', '09' => 'Sep', + '10' => 'Oct', '11' => 'Nov', '12' => 'Dec'); + $weekdays = array('1' => 'Mon', '2' => 'Tue', '3' => 'Wed', + '4' => 'Thu', '5' => 'Fri', '6' => 'Sat', + '0' => 'Sun'); + $dow = $weekdays[gmstrftime('%w', $time)]; + $month = $months[gmstrftime('%m', $time)]; + $out = gmstrftime('%%s, %d %%s %Y %H:%M:%S GMT', $time); + return sprintf($out, $dow, $month); + } + + /** + * Check if Gallery is in embedded mode + * + * @return boolean true if Gallery is in embedded mode, false otherwise + */ + function isEmbedded() { + return GalleryDataCache::containsKey('G2_EMBED') && GalleryDataCache::get('G2_EMBED'); + } + + /** + * Add an action to be performed at the end of the request. + * + * @param callback $callback + * @param array $parameters + */ + function addShutdownAction($callback, $parameters) { + if (!isset($this->_shutdownActions)) { + $this->_shutdownActions = array(); + } + $action = array($callback, $parameters); + /* Skip duplicate actions */ + foreach ($this->_shutdownActions as $item) { + if ($item == $action) { + $duplicate = true; + break; + } + } + if (!isset($duplicate)) { + $this->_shutdownActions[] = $action; + } + } + + /** + * Process registered shutdown actions. + */ + function performShutdownActions() { + if (isset($this->_shutdownActions)) { + foreach ($this->_shutdownActions as $action) { + $ret = @call_user_func_array($action[0], $action[1]); + if ($this->getDebug() || class_exists('GalleryTestCase')) { + /* Ignore errors unless debug is on */ + if (is_array($ret) && GalleryUtilities::isA($ret[0], 'GalleryStatus')) { + $ret = $ret[0]; + } else if (!GalleryUtilities::isA($ret, 'GalleryStatus')) { + $ret = null; + } + if (isset($ret) && $ret) { + $this->debug('Error from shutdown action:'); + $this->debug_r($action); + $this->debug_r($ret); + } + } + } + } + } + + /** + * Return our PHP virtual machine abstraction + * + * @return object GalleryPhpVm + */ + function getPhpVm() { + if (!isset($this->_phpVm)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryPhpVm.class'); + $this->_phpVm = new GalleryPhpVm(); + } + return $this->_phpVm; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryAlbumItem.class b/Source/gallery2/modules/core/classes/GalleryAlbumItem.class new file mode 100644 index 0000000..39b6257 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryAlbumItem.class @@ -0,0 +1,458 @@ +GalleryAlbumItem + * @g2 GalleryItem + * @g2 + * @g2 1 + * @g2 1 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15513 $ + */ +class GalleryAlbumItem extends GalleryItem { + + /** + * The theme to use for this item + * @var string + * + * @g2 + * @g2 theme + * @g2 STRING + * @g2 SMALL + * @g2 + */ + var $theme; + + /** + * Specify the name of the field that we're using to order children + * @var string + * + * @g2 + * @g2 orderBy + * @g2 STRING + * @g2 MEDIUM + * @g2 + */ + var $orderBy; + + /** + * Specify the order direction that we're applying to the orderBy field + * @var string + * + * @g2 + * @g2 orderDirection + * @g2 STRING + * @g2 SMALL + * @g2 + */ + var $orderDirection; + + + /** + * Create a new instance of this AlbumItem in the persistent store. + * Also create the album directory on the filesystem. + * + * @param int $parentId the id of the parent of this object + * @return object GalleryStatus a status code + */ + function create($parentId, $albumName) { + global $gallery; + + if (empty($albumName) || empty($parentId)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + /* Let our superclass take care of creation in the persistent store */ + $ret = parent::create($parentId, $albumName); + if ($ret) { + return $ret; + } + + $albumName = $this->getPathComponent(); + + /* Albums can contain children */ + $this->setCanContainChildren(true); + + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($parentId); + if ($ret) { + return $ret; + } + + list ($ret, $parentPath) = $parent->fetchPath(); + if ($ret) { + return $ret; + } + + /* Copy over derivative preferences from the parent */ + $ret = GalleryCoreApi::copyDerivativePreferences($parentId, $this->getId()); + if ($ret) { + return $ret; + } + + list ($ret, $useDefaults) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.newAlbumsUseDefaults'); + if ($ret) { + return $ret; + } + + if ($useDefaults != 'true') { + /* Use parent's settings */ + $this->setTheme($theme = $parent->getTheme()); + $this->setOrderBy($parent->getOrderBy()); + $this->setOrderDirection($parent->getOrderDirection()); + if (empty($theme)) { + list ($ret, $theme) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + return $ret; + } + } + list ($ret, $themeParams) = + GalleryCoreApi::fetchAllPluginParameters('theme', $theme, $parent->getId()); + if ($ret) { + return $ret; + } + foreach ($themeParams as $key => $value) { + $ret = GalleryCoreApi::setPluginParameter('theme', $theme, + $key, $value, $this->getId()); + if ($ret) { + return $ret; + } + } + } else { + $this->setTheme(null); + $this->setOrderBy(null); + $this->setOrderDirection(null); + } + + $ret = $this->_createDir($parentPath . $albumName); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create a new root level album + * @return object GalleryStatus a status code + */ + function createRoot() { + global $gallery; + + /* See if we already have a root */ + list ($ret, $rootId) = GalleryCoreApi::getPluginParameter('module', 'core', 'id.rootAlbum'); + if ($ret) { + return $ret; + } + + if (!empty($rootId)) { + return GalleryCoreApi::error(ERROR_COLLISION); + } + + /* Let our superclass take care of creation in the persistent store */ + $ret = parent::createRoot(); + if ($ret) { + return $ret; + } + + /* Root album can contain children */ + $this->setCanContainChildren(true); + + /* Create default preferences */ + /* XXX: parameterize this */ + $ret = GalleryCoreApi::addDerivativePreference( + 0, $this->getId(), DERIVATIVE_TYPE_IMAGE_THUMBNAIL, 'thumbnail|150'); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::addDerivativePreference( + 0, $this->getId(), DERIVATIVE_TYPE_IMAGE_RESIZE, 'scale|640'); + if ($ret) { + return $ret; + } + + /* Use site default theme and sort order */ + $this->setTheme(''); + $this->setOrderBy(''); + $this->setOrderDirection(ORDER_ASCENDING); + + return null; + } + + /** + * Internal function to create the album directory + * @access private + */ + function _createDir($albumDir) { + global $gallery; + $platform =& $gallery->getPlatform(); + + list ($ret, $perm) = GalleryCoreApi::getPluginParameter( + 'module', 'core', 'permissions.directory'); + if ($ret) { + return $ret; + } + + if ($platform->file_exists($albumDir)) { + return GalleryCoreApi::error(ERROR_COLLISION, __FILE__, __LINE__, + $albumDir . ' already exists'); + } + + if (!$platform->mkdir($albumDir, $perm)) { + return GalleryCoreApi::error(ERROR_COLLISION, __FILE__, __LINE__, + 'mkdir failed for ' . $albumDir); + } + + return null; + } + + /** + * Can this item contain other file system items? + * Always returns true -- AlbumItems contain other GalleryItems + * + * @return true if this item can contain other file system items + */ + function isContainer() { + return true; + } + + /** + * Delete this AlbumItem. + * Delete all children and then remove the album directory. + * + * @return object GalleryStatus a status code + */ + function delete() { + global $gallery; + + /* Delete myself from the store */ + $ret = parent::delete(); + if ($ret) { + return $ret; + } + + /* Delete derivative preferences */ + $ret = GalleryCoreApi::removeDerivativePreferencesForItem($this->getId()); + if ($ret) { + return $ret; + } + + /* Get my path */ + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + /* Remove my directory and everything in it */ + $platform =& $gallery->getPlatform(); + + if ($platform->file_exists($path)) { + if (!$platform->recursiveRmdir($path)) { + return GalleryCoreApi::error(ERROR_BAD_PATH); + } + } + + $storage =& $gallery->getStorage(); + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Rename this album + * + * @param string $newName the path component + * @return object GalleryStatus a status code + */ + function rename($newName) { + global $gallery; + + if ($newName == $this->getPathComponent()) { + return null; + } + + /* + * Read lock the parent so that we don't have a race condition below. + */ + if (GalleryCoreApi::isReadLocked($this->getParentId()) || + GalleryCoreApi::isWriteLocked($this->getParentId())) { + $lockId = null; + } else { + list ($ret, $lockId) = GalleryCoreApi::acquireReadLock($this->getParentId()); + if ($ret) { + return $ret; + } + } + + $platform =& $gallery->getPlatform(); + + /* + * Get the current path + */ + list ($ret, $currentPath) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + /* + * Set the new path in the database. If that succeeds then we should + * be ok in general. Jump through hoops to make sure that we release + * our locks at the end. + */ + $error = null; + $ret = parent::rename($newName); + if ($ret) { + $error = $ret; + } + + /* The parent class may have changed/sanitized the pathComponent, so get it again */ + $newName = $this->getPathComponent(); + + if (!isset($error)) { + /* Check to see if the desired path exists. */ + $newPath = dirname($currentPath) . '/' . $newName; + if ($platform->file_exists($newPath)) { + $error = GalleryCoreApi::error(ERROR_COLLISION); + } + } + + if (!isset($error)) { + if (!$platform->rename($currentPath, $newPath)) { + $error = GalleryCoreApi::error(ERROR_BAD_PATH); + } + } + + /* Release locks */ + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + + if (isset($error)) { + return $error; + } + + return null; + } + + /** + * Move this item to a new parent + * + * @param int $newParentId the id of the GalleryItem parent + * @return object GalleryStatus a status code + */ + function move($newParentId) { + /* Get the current parent sequence */ + list ($ret, $oldParentSequence) = GalleryCoreApi::fetchParentSequence($this->getId()); + if ($ret) { + return $ret; + } + $oldChildParentSequence = array_merge($oldParentSequence, array($this->getId())); + + /* + * Perform the move. Note that *after* the move, my parent id is going to be different so + * the getParentId() calls are going to return $newParentId + */ + $ret = parent::move($newParentId); + if ($ret) { + return $ret; + } + + /* Figure out the new one */ + list ($ret, $newParentSequence) = GalleryCoreApi::fetchParentSequence($this->getParentId()); + if ($ret) { + return $ret; + } + $newChildParentSequence = array_merge($newParentSequence, + array($this->getParentId(), $this->getId())); + + /* Convert my children's parent sequences */ + $ret = GalleryCoreApi::updateParentSequence( + $oldChildParentSequence, $newChildParentSequence); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function itemTypeName($localized = true) { + global $gallery; + if ($localized) { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if (! $ret) { + return array($core->translate('Album'), $core->translate('album')); + } + } + return array('Album', 'album'); + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryAlbumItem'; + } + + function getTheme() { + return $this->theme; + } + + function setTheme($theme) { + $this->theme = $theme; + } + + function getOrderBy() { + return $this->orderBy; + } + + function setOrderBy($orderBy) { + $this->orderBy = $orderBy; + } + + function getOrderDirection() { + return $this->orderDirection; + } + + function setOrderDirection($orderDirection) { + $this->orderDirection = $orderDirection; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryAnimationItem.class b/Source/gallery2/modules/core/classes/GalleryAnimationItem.class new file mode 100644 index 0000000..8453ec7 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryAnimationItem.class @@ -0,0 +1,345 @@ +GalleryAnimationItem + * @g2 GalleryDataItem + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15534 $ + */ +class GalleryAnimationItem extends GalleryDataItem { + + /** + * The width of this animation. + * @var int + * + * @g2 + * @g2 width + * @g2 INTEGER + * @g2 + * @g2 FULL + * @g2 + */ + var $width; + + /** + * The height of this animation. + * @var int + * + * @g2 + * @g2 height + * @g2 INTEGER + * @g2 + * @g2 FULL + * @g2 + */ + var $height; + + + /** + * @see GalleryDataItem::canBeViewedInline + */ + function canBeViewedInline() { + /* The mimeTypes listed here should provide a render() output */ + static $mimeList = array( + 'application/x-shockwave-flash', + 'application/x-director', + ); + return $this->_canBeViewedInline( + ($this->getWidth() > 0 && $this->getHeight() > 0) ? $mimeList : null); + } + + /** + * Create a new GalleryAnimationItem from a animation file + * + * @param int $parentId the id of the parent GalleryItem + * @param string $animationFileName the path to the source animation + * @param string $mimeType + * @param string $targetName the desired name of the new item + * @param boolean $symlink (optional) a boolean true if we should symlink instead + * of copy (default is false). + * @return object GalleryStatus a status code + */ + function create($parentId, $animationFileName, $mimeType, $targetName=null, $symlink=false) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Validate the input filename */ + if (empty($animationFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + if (!$platform->file_exists($animationFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PATH); + } + + /* Create our data item */ + $ret = parent::create($parentId, $animationFileName, $mimeType, $targetName, $symlink); + if ($ret) { + return $ret; + } + + /* Default to empty dimensions */ + $this->setWidth(0); + $this->setHeight(0); + + /* We're linkable */ + $this->setIsLinkable(true); + + /* Detect our dimensions, if possible */ + $ret = $this->rescan(); + if ($ret) { + /* Cleanup our datafile on failure */ + list ($ret2, $path) = $this->fetchPath(); + if (!$ret2) { + @$platform->unlink($path); + } + return $ret; + } + + return null; + } + + /** + * @see GalleryDataItem::rescan + */ + function rescan() { + global $gallery; + + $ret = parent::rescan(); + if ($ret) { + return $ret; + } + + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + $mimeType = $this->getMimeType(); + list ($ret, $toolkit) = GalleryCoreApi::getToolkitByProperty($mimeType, 'dimensions'); + if ($ret) { + return $ret; + } + + if (isset($toolkit)) { + list ($ret, $dimensions) = $toolkit->getProperty($mimeType, 'dimensions', $path); + if ($ret) { + + /* + * If we can't get the dimensions, it's probably a bad image. + * Or our graphics code is broken. Hard to tell which at this point. + */ + $ret->addErrorCode(ERROR_BAD_DATA_TYPE); + return $ret; + } + + $this->setWidth($dimensions[0]); + $this->setHeight($dimensions[1]); + } + + return null; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function itemTypeName($localized = true) { + global $gallery; + if ($localized) { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if (! $ret) { + return array($core->translate('Animation'), $core->translate('animation')); + } + } + return array('Animation', 'animation'); + } + + /** + * @see GalleryDataItem::render + */ + function render($format, $params) { + global $gallery; + + $fallback = trim(preg_replace("/[\r\n]/", '', $params['fallback'])); + + switch($format) { + case 'HTML': + $urlGenerator =& $gallery->getUrlGenerator(); + $src = $urlGenerator->generateUrl( + array('view' => 'core.DownloadItem', 'itemId' => $this->getId(), + 'serialNumber' => $this->getSerialNumber()), + array('forceFullUrl' => !empty($params['forceFullUrl']))); + + list ($width, $height) = array($this->getWidth(), $this->getHeight()); + switch($this->getMimeType()) { + case 'application/x-shockwave-flash': + return sprintf('', + + /* IE Object */ + !empty($params['class']) ? 'class="' . $params['class'] . '"' : '', + $width, + $height, + $src, + $fallback, + + /* Mozilla Object */ + !empty($params['class']) ? 'class="' . $params['class'] . '"' : '', + $this->getMimeType(), + $src, + $width, + $height, + $src, + $fallback); + + case 'application/x-director': + return sprintf('', + + /* IE Object */ + !empty($params['class']) ? 'class="' . $params['class'] . '"' : '', + $width, + $height, + $src, + $fallback, + + /* Mozilla Object */ + !empty($params['class']) ? 'class="' . $params['class'] . '"' : '', + $this->getMimeType(), + $src, + $width, + $height, + $fallback); + + default: + return $fallback; + + } + default: + return null; + } + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryAnimationItem'; + } + + function getWidth() { + return $this->width; + } + + function setWidth($width) { + $this->width = $width; + } + + function getHeight() { + return $this->height; + } + + function setHeight($height) { + $this->height = $height; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryAuthPlugin.class b/Source/gallery2/modules/core/classes/GalleryAuthPlugin.class new file mode 100644 index 0000000..30674fc --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryAuthPlugin.class @@ -0,0 +1,45 @@ + + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryAuthPlugin { + + /** + * Perform authentication & return a user object + * + * @return array object GalleryStatus a status code + * object GalleryUser the active user or null + */ + function getUser() { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryCapabilities.class b/Source/gallery2/modules/core/classes/GalleryCapabilities.class new file mode 100644 index 0000000..983d7d5 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryCapabilities.class @@ -0,0 +1,68 @@ +setConfig instead. + * @todo Remove this class on next major bump of core/embed api. + * + * @package GalleryCore + * @subpackage Classes + * @author Alan Harder + * @version $Revision: 15513 $ + * @static + * @deprecated + */ +class GalleryCapabilities { + + /** + * Get a configuration value. + * + * @param string $key + * @return string the configuration value or null if not found + */ + function get($key) { + global $gallery; + return $gallery->getConfig($key); + } + + /** + * Get a boolean configuration flag. + * + * @param string $key + * @return boolean the configuration value or null if not found + */ + function can($key) { + global $gallery; + return (boolean)$gallery->getConfig($key); + } + + /** + * Set a configuration value. + * + * @param string $key + * @param mixed $value (null to remove the value) + */ + function set($key, $value) { + global $gallery; + $gallery->setConfig($key, $value); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryChildEntity.class b/Source/gallery2/modules/core/classes/GalleryChildEntity.class new file mode 100644 index 0000000..50a13fc --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryChildEntity.class @@ -0,0 +1,170 @@ +GalleryChildEntity + * @g2 GalleryEntity + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15513 $ + */ +class GalleryChildEntity extends GalleryEntity { + + /** + * The id of the parent of this GalleryChildEntity + * @var int + * + * @g2 + * @g2 parentId + * @g2 INTEGER + * @g2 + * @g2 + * @g2 + */ + var $parentId; + + + /** + * Create this item in our persistent store + * + * @param int $parentId the id of the GalleryItem parent + * @return object GalleryStatus a status code + */ + function create($parentId) { + global $gallery; + + if (empty($parentId)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + $ret = parent::create(); + if ($ret) { + return $ret; + } + + /* Set the parent id */ + $this->setParentId($parentId); + + return null; + } + + /** + * @see GalleryEntity::createLink + */ + function createLink($entity, $parentId) { + global $gallery; + + $ret = parent::createLink($entity); + if ($ret) { + return $ret; + } + + /* Set the parent id */ + $this->setParentId($parentId); + + return null; + } + + /** + * Move this item to a new parent + * + * @param int $newParentId the id of the GalleryItem parent + * @return object GalleryStatus a status code + */ + function move($newParentId) { + global $gallery; + + if (empty($newParentId)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + /* Set the new parent id */ + $this->setParentId($newParentId); + + return null; + } + + /** + * Create a root level item. + * This is a special case; every other GalleryChildEntry will have a + * parent. But the root items don't have one. + */ + function createRoot() { + $ret = parent::create(); + if ($ret) { + return $ret; + } + + /* No parent for root */ + $this->setParentId(0); + + return null; + } + + /** + * Get the parent instance + * + * @return array object GalleryStatus a status code + * object GalleryItem the parent item + */ + function fetchParent() { + global $gallery; + + $parentId = $this->getParentId(); + if (isset($parentId)) { + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($this->getParentId()); + if ($ret) { + return array($ret, null); + } + } else { + $parent = null; + } + + return array(null, $parent); + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryChildEntity'; + } + + function getParentId() { + return $this->parentId; + } + + function setParentId($parentId) { + $this->parentId = $parentId; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryConstants.class b/Source/gallery2/modules/core/classes/GalleryConstants.class new file mode 100644 index 0000000..7a0cd99 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryConstants.class @@ -0,0 +1,390 @@ + + * @version $Revision: 15534 $ + */ + +/* + * **************************************** + * Derivative types + * **************************************** + */ + +/** + * Thumbnail image type + */ +define('DERIVATIVE_TYPE_IMAGE_THUMBNAIL', 1); + +/** + * Resized image type + */ +define('DERIVATIVE_TYPE_IMAGE_RESIZE', 2); + +/** + * Preferred image type + */ +define('DERIVATIVE_TYPE_IMAGE_PREFERRED', 3); + +/* + * **************************************** + * Group types + * **************************************** + */ + +/** + * A normal group + */ +define('GROUP_NORMAL', 1); + +/** + * The "all users" group (everybody but the guest account) + */ +define('GROUP_ALL_USERS', 2); + +/** + * The "site admins" group + */ +define('GROUP_SITE_ADMINS', 3); + +/** + * The "everybody" group (all users plus any guest accounts) + */ +define('GROUP_EVERYBODY', 4); + +/* + * **************************************** + * Storage constants + * **************************************** + */ + +/** + * Integer type + */ +define('STORAGE_TYPE_INTEGER', 0x00000001); + +/** + * String type + */ +define('STORAGE_TYPE_STRING', 0x00000002); + +/** + * Text type + */ +define('STORAGE_TYPE_TEXT', 0x00000004); + +/** + * Text type + */ +define('STORAGE_TYPE_BOOLEAN', 0x00000008); + +/** + * Timestamp type + */ +define('STORAGE_TYPE_TIMESTAMP', 0x00000010); + +/** + * ID type + */ +define('STORAGE_TYPE_ID', 0x00000020); + +/** + * Bits type + */ +define('STORAGE_TYPE_BIT', 0x00000040); + +/** + * Newly created flag + */ +define('STORAGE_FLAG_NEWLY_CREATED', 0x00000001); + +/** + * Deleted flag + */ +define('STORAGE_FLAG_DELETED', 0x00000002); + +/** + * Storage sizes + */ +define('STORAGE_SIZE_SMALL', 0x00000001); +define('STORAGE_SIZE_MEDIUM', 0x00000002); +define('STORAGE_SIZE_LARGE', 0x00000004); + +/* + * **************************************** + * Item order constants + * **************************************** + */ + +/** + * Order in an ascending fashion + */ +define('ORDER_ASCENDING', 'asc'); + +/** + * Order in an descending fashion + */ +define('ORDER_DESCENDING', 'desc'); + +/** + * Indicate a lower weight + */ +define('LOWER_WEIGHT', -1); + +/** + * Indicate a higher weight + */ +define('HIGHER_WEIGHT', 1); + + +/* + * **************************************** + * Permission constants + * **************************************** + */ + +/** + * This is the special "All Access" permission + */ +define('GALLERY_PERMISSION_ALL_ACCESS', 0x00000001); + +/** + * This permission is a composite of other permissions + */ +define('GALLERY_PERMISSION_COMPOSITE', 0x00000002); + +/** + * Key for storing permissions granted to this session + */ +define('GALLERY_PERMISSION_SESSION_KEY', 'core.sessionPermissionEntityIds'); + +/* + * **************************************** + * Lock constants + * **************************************** + */ + +/** + * Read lock type + */ +define('LOCK_READ', 1); + +/** + * Write lock type + */ +define('LOCK_WRITE', 2); + +/* + * **************************************** + * View types + * **************************************** + */ + +/** + * Module view + */ +define('VIEW_TYPE_MODULE', 1); + +/** + * ShowItem view + */ +define('VIEW_TYPE_SHOW_ITEM', 2); + +/** + * Administration view + */ +define('VIEW_TYPE_ADMIN', 3); + +/** + * Progress bar + */ +define('VIEW_TYPE_PROGRESS_BAR', 4); + +/** + * Error page + */ +define('VIEW_TYPE_ERROR', 5); + +/** + * Default view + */ +define('GALLERY_DEFAULT_VIEW', 'core.ShowItem'); + +/* + * **************************************** + * Status code bitflags + * **************************************** + */ + +/** + * The operation had errors + * @todo (bharat): Get rid of this; it's no longer necessary + */ +define('GALLERY_ERROR', 0x00000001); + +/** + * A name collision happened in the filesystem or database as a result of this operation. A common + * cause of this is attempting to use an existing filename when moving an item from one location to + * another. + */ +define('ERROR_COLLISION', 0x00000002); + +/** + * The object you're trying to access is no longer available. Perhaps it was deleted. You + * shouldn't get this when an object has simply moved. + */ +define('ERROR_MISSING_OBJECT', 0x00000004); + +/** + * The lock you're trying to acquire is currently in use and was not released within the timeout + * period you specified. + */ +define('ERROR_LOCK_IN_USE', 0x00000008); + +/** + * One of the parameters passed to this function is bad. + */ +define('ERROR_BAD_PARAMETER', 0x00000010); + +/** + * You're missing a value necessary to continue with the current operation. + */ +define('ERROR_MISSING_VALUE', 0x00000020); + +/** + * An unspecified storage error occurred. + */ +define('ERROR_STORAGE_FAILURE', 0x00000040); + +/** + * A storage operation was attempted with an invalid storage connection. + */ +define('ERROR_STORAGE_CONNECTION', 0x00000080); + +/** + * You attempted an operation which requires a valid authentication token. + */ +define('ERROR_REQUEST_FORGED', 0x00000100); + +/** + * You attempted to modify an object using an in-memory version that is out of date with the version + * that's in the storage. + */ +define('ERROR_OBSOLETE_DATA', 0x00000200); + +/** + * You attempted an operation which requires a lock. + */ +define('ERROR_LOCK_REQUIRED', 0x00000400); + +/** + * You tried a file operation on an unsupported file type. + */ +define('ERROR_UNSUPPORTED_FILE_TYPE', 0x00000800); + +/** + * You attempted an illegal operation on a deleted object. + */ +define('ERROR_DELETED_OBJECT', 0x00001000); + +/** + * You attempted an operation which had a bad path component. + */ +define('ERROR_BAD_PATH', 0x00002000); + +/** + * You attempted an operation which had a bad data type. + */ +define('ERROR_BAD_DATA_TYPE', 0x00004000); + +/** + * You attempted to add a child to a GalleryItem which can't have children. + */ +define('ERROR_ILLEGAL_CHILD', 0x00008000); + +/** + * An unspecified error occured while completing a toolkit command.. + */ +define('ERROR_TOOLKIT_FAILURE', 0x00010000); + +/** + * We experienced a platform specific error (perhaps filesystem related) + */ +define('ERROR_PLATFORM_FAILURE', 0x00020000); + +/** + * You did an operation on a derivative that is broken. + */ +define('ERROR_BROKEN_DERIVATIVE', 0x00040000); + +/** + * You tried an unsupported operation. + */ +define('ERROR_UNSUPPORTED_OPERATION', 0x00080000); + +/** + * You were unable to get a lock in the time allotted. + */ +define('ERROR_LOCK_TIMEOUT', 0x00100000); + +/** + * Something went wrong when loading or activating a plugin. + */ +define('ERROR_BAD_PLUGIN', 0x00200000); + +/** + * The module you tried to use requires configuration. + */ +define('ERROR_CONFIGURATION_REQUIRED', 0x00400000); + +/** + * You don't have permission to complete the given action. + */ +define('ERROR_PERMISSION_DENIED', 0x00800000); + +/** + * You don't have enough space for the operation required. + */ +define('ERROR_OUT_OF_SPACE', 0x01000000); + +/** + * The plugin exists, but the version on disk doesn't match the version in the database. + */ +define('ERROR_PLUGIN_VERSION_MISMATCH', 0x02000000); + +/** + * The operation you attempted is unimplemented. + */ +define('ERROR_UNIMPLEMENTED', 0x40000000); + +/** + * An unknown error occurred. + */ +define('ERROR_UNKNOWN', 0x80000000); + +/** + * External access for entity members (default: none) + */ +define('EXTERNAL_ACCESS_READ', 0x00000001); +define('EXTERNAL_ACCESS_WRITE', 0x00000002); +define('EXTERNAL_ACCESS_FULL', 0x00000003); +?> diff --git a/Source/gallery2/modules/core/classes/GalleryController.class b/Source/gallery2/modules/core/classes/GalleryController.class new file mode 100644 index 0000000..10c987a --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryController.class @@ -0,0 +1,244 @@ + + * @version $Revision: 15813 $ + * @abstract + */ +class GalleryController { + + /** + * Take the appropriate action based on the user input provided. + * + * When done, we return a data structure with results from the controller's actions and + * information about where we should send the user next. We can either delegate the user + * to a view in the same request, or we can redirect the user to a different url. Whenever + * a controller makes a change to the data model, it should pass back a redirect so that + * the browser is sent to a fresh page. Otherwise if you hit reload on the browser it will + * want to re-post the form data and it will attempt to change the model again, which may + * not be what the user wants. + * + * To redirect, return: + *
    +     *     array('redirect' => [url params],
    +     *           'status' => [status data])
    +     * 
    + * + * To delegate, return: + *
    +     *     array('delegate' => [url params],
    +     *           'return' => [boolean],   optional
    +     *           'error' => [error],
    +     *           'status' => [status data])
    +     * 
    + * + * If you delegate, your form and request variables will persist to the view, since it is + * being handled inside the same request. However, if you redirect you'll have to put any + * form variables that you want to pass to the subsequent view into the redirect url, since + * it will be processed in a new request. The browser will receive a redirect and then post + * the new url. So for example, if you want to redirect to a confirmation view and specify + * a username to that view, you'd return: + * + *
    +     *    array('redirect' => array('view' => 'module.Confirmation',
    +     *                              'username' => 'johndoe'),
    +     *          'status' => array('success' => 'true'),
    +     *          'error' => array())
    +     * 
    + * + * Status data is passed to the view and can be in any form that you want. + * Typically it's simple key value pairs, like this: + *
    +     *    array('myAction' => 'wasSuccessful')
    +     * 
    + * + * If you pass status data back on a redirect, it will be automatically stored in the session + * and the url will be modified to contain a marker to this status information. After the + * redirect, we'll retrieve it back from the database and pass it to the view. Status data + * sent back upon delegation is passed directly to the view. + * + * Error data is an array of values, like this: + *
    +     *    array('form[widget][missing]')
    +     * 
    + * + * This data is only processed on delegation. It gets put into the request and is accessible + * when the delegated view is called. Since we only redirect on success, you never pass back + * error data when you redirect. + * + * Return is a special parameter. If you set this to a non-false value, it will look + * for a special request variable called "return" in the request scope. This variable is + * expected to contain a URL, and we'll return a redirect to that URL. This is useful in + * the case where we want to use this controller in the middle of a workflow. A good example + * of this is when we click the "Login" link on the main page. We pass control to the + * UserLogin controller, and when its done, it uses the "return" flag to indicate that we + * should return to the URL where the login link was clicked. + * + * @param array $form the form values + * @return array object GalleryStatus a status code + * return-array + */ + function handleRequest($form) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } + + /** + * Load a controller + * + * Be very security conscious about checking the inputs for possible misuse + * + * @param string $controllerName a controller name (eg. 'core.Logout') + * @return array object GalleryStatus a status code + * object GalleryController a controller + * @static + */ + function loadController($controllerName) { + global $gallery; + + /* Continue to support old style : separator for a while */ + if (preg_match('/^(\w+)[.:](\w+)$/', $controllerName, $regs) == 1) { + $module = $regs[1]; + $class = $regs[2]; + } else { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "$controllerName can't be parsed"), null); + } + + /* If the module is not active, only let site admins use the config controller */ + list ($ret, $plugin) = GalleryCoreApi::loadPlugin('module', $module); + if ($ret) { + return array($ret, null); + } + list ($ret, $isActive) = $plugin->isActive(); + if ($ret) { + return array($ret, null); + } + if (!$isActive) { + if ($controllerName == $plugin->getConfigurationView()) { + $ret = GalleryCoreApi::assertUserIsSiteAdministrator(); + if ($ret) { + return array($ret, null); + } + } else { + return array(GalleryCoreApi::error(ERROR_PERMISSION_DENIED), null); + } + } + + $controllerClassName = $class . 'Controller'; + if (!class_exists($controllerClassName)) { + $moduleBaseDir = GalleryCoreApi::getPluginBaseDir('module', $module); + $fileName = 'modules/' . $module . '/' . $class . '.inc'; + + $platform =& $gallery->getPlatform(); + if (!$platform->file_exists($moduleBaseDir . $fileName)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + GalleryCoreApi::requireOnce($fileName); + + if (!class_exists($controllerClassName)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Class $controllerClassName not defined in $controllerName"), null); + } + } + + return array(null, new $controllerClassName); + } + + /** + * Does this controller allow access to non-admins when site is in maintenance mode? + * + * @return boolean true if access always allowed + */ + function isAllowedInMaintenance() { + return false; + } + + /** + * Does this controller allow direct access even in embed-only mode? + * + * @return boolean true if access always allowed + */ + function isAllowedInEmbedOnly() { + return false; + } + + /** + * Whether the controller opts-out from the framework's auth token check. + * + * Some protocols don't allow to add authentication tokens to controller requests, but all + * normal Gallery controllers should not override this method. + * + * @return boolean true if the controller opts-out from the auth token check + */ + function omitAuthTokenCheck() { + return false; + } + + /** + * Should session be saved and session cookie sent when this controller is used? + * + * @return boolean true to enable session + */ + function shouldSaveSession() { + return true; + } + + /** + * Verifies the genuineness of the request + * + * All requests that modify data must be signed, except the request is by a guest. + * + * @return object GalleryStatus a status code null on success, ERROR_REQUEST_FORGED on failure + * @static + */ + function assertIsGenuineRequest() { + global $gallery; + $session =& $gallery->getSession(); + + if (!$session->isPersistent()) { + /* + * Fake requests on behalf of guests is seen as a form of spam and spam protection + * should take care of that. Don't handle it here. + */ + return null; + } + + $authToken = GalleryUtilities::getRequestVariables('authToken'); + if ($session->isCorrectAuthToken($authToken)) { + return null; + } else { + /* Omit check if we're in maintenance mode */ + if ($gallery->getConfig('mode.maintenance')) { + return null; + } else { + return GalleryCoreApi::error(ERROR_REQUEST_FORGED); + } + } + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryCoreApi.class b/Source/gallery2/modules/core/classes/GalleryCoreApi.class new file mode 100644 index 0000000..ad8501b --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryCoreApi.class @@ -0,0 +1,3083 @@ + + * @version $Revision: 16471 $ + * @static + */ +class GalleryCoreApi { + + /** + * Return the major and minor version of the Core API. + * + * When we add to the API, we'll bump the minor version. When we change or remove something + * from the API we'll change the major version. + * + * When writing a module, you should verify: + * o The major version of the API exactly matches the version you expect + * o The minor number is the same, or higher than the version you expect + * + * Notes: + * o If the major number is lower, or it's the same and the minor number is + * lower then it means that the API is older than you require. + * o If the major number is higher, then it means that the API is newer, but + * has made a change that may be incompatible with your module + * o If the major number is the same and the minor number is higher, then + * the API has more features than you need but should still work for you. + * + * @return array major number, minor number + * + * @todo for next major version bump: + * - remove GallerySession::getSessionId + * - remove GalleryPlatform::recursiveFixDirPermissions + * - remove GalleryUtilities::htmlEntityDecode + * - remove GalleryUrlGenerator::getGalleryId + * - remove GalleryStatus::wrap + * - change GalleryCoreApi::error to only take error code and error message + * - remove GalleryCapabilities (major bump of embed api too?) + * - remove 'link' entry in Gallery.class constructor + * - remove GalleryCoreApi::getPluginBaseDirs(); + * - remove GalleryCoreApi::getPluginBaseDir(); + * - remove GalleryCoreApi::isPluginInDefaultLocation(); + * - remove $skipBaseDirectoryDetection from GalleryCoreApi::requireOnce(); + * - remove support for check[Sidebar|Album|Photo]Blocks deprecated params + * for ShouldShowEmergencyEditItemLink in Callbacks.inc + * and comment in blocks/EmergencyEditItemLink.tpl + * - remove GalleryView::_getItem() (the private version of getItem()); + * - remove support for : separator in GalleryView::loadView + * - delete GallerySqlFragment.class + * - remove studyPermissions, fetchPermissionsForItems does the same and more. + * - remove GalleryUtilities::utf8Substring (moved to GalleryCoreApi) + * - remove lib/wz_dragdrop/ (currently used by G2.1's watermark module) + * - refactor renderer code (methods: getRenderer and render, GalleryEntity vs GalleryItem) + */ + function getApiVersion() { + return array(7, 18); + } + + /** + * Register a new implementation with the factory + * + * @param string $classType the class type (eg. 'GalleryToolkit') + * @param string $className the class name (eg. 'NetPbmToolkit') + * @param string $implId an implementation id (eg. 'NetPBM') + * @param string $implPath the relative path to the implementation file + * (eg. 'modules/netpbm/classes/NetPbmToolkit.class') + * @param string $implModuleId the id of the module containing the implementation (eg. 'netpbm') + * @param array $hints optional hints that can be used to locate this + * implementation (eg. array('image/jpeg', 'image/gif')) + * @param int $orderWeight the priority of this implementation (lower number == higher priority) + */ + function registerFactoryImplementation($classType, $className, $implId, $implPath, + $implModuleId, $hints, $orderWeight=5) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_medium.class'); + return GalleryFactoryHelper_medium::registerImplementation( + $classType, $className, $implId, $implPath, $implModuleId, $hints, $orderWeight); + } + + /** + * Create a new instance of the given type based on the hint(s) provided + * + * @param string $classType the class type (eg. 'GalleryToolkit') + * @param mixed $hints array of hints to try (in order) or single string hint (eg. 'image/jpeg') + * @return array object GalleryStatus a status code, + * object an instance + */ + function newFactoryInstanceByHint($classType, $hints) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_simple.class'); + return GalleryFactoryHelper_simple::newInstanceByHint($classType, $hints); + } + + /** + * Create a new instance of the given type + * + * @param string $classType the class type (eg. 'GalleryToolkit') + * @param string $className the class name (eg. 'NetPbmToolkit') + * @return object GalleryStatus a status code + * object the instance + */ + function newFactoryInstance($classType, $className=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_simple.class'); + return GalleryFactoryHelper_simple::newInstance($classType, $className); + } + + /** + * Create a new instance of the given type based on the id provided + * + * @param string $classType the class type (eg. 'GalleryToolkit') + * @param string $id the class name (eg. 'NetPBM') + * @return array object GalleryStatus a status code, + * object an instance + */ + function newFactoryInstanceById($classType, $id) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_simple.class'); + return GalleryFactoryHelper_simple::newInstanceById($classType, $id); + } + + /** + * Return the ids of all the available implementations for a class + * + * @param string $classType the class type (eg. 'GalleryToolkit') + * @return array object GalleryStatus a status code + * array (id => className, ...) + */ + function getAllFactoryImplementationIds($classType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_simple.class'); + return GalleryFactoryHelper_simple::getAllImplementationIds($classType); + } + + /** + * Return the ids of all the available implementations for a class for a given hint. + * + * @return array object GalleryStatus a status code + * array (id => className, ...) + */ + function getAllFactoryImplementationIdsWithHint($classType, $hint) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_medium.class'); + return GalleryFactoryHelper_medium::getAllImplementationIdsWithHint($classType, $hint); + } + + /** + * Unregister all factory implementations for a module + * + * @param string $moduleId an id (eg. 'netpbm') + * @return object GalleryStatus a status code + */ + function unregisterFactoryImplementationsByModuleId($moduleId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_medium.class'); + return GalleryFactoryHelper_medium::unregisterImplementationsByModuleId($moduleId); + } + + /** + * Unregister a factory implementation by id + * + * @param string $classType a class type (eg. 'GalleryToolkit') + * @param string $implId an implementation id (eg. 'NetPBM') + * @return object GalleryStatus a status code + */ + function unregisterFactoryImplementation($classType, $implId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFactoryHelper_medium.class'); + return GalleryFactoryHelper_medium::unregisterImplementation($classType, $implId); + } + + /** + * Load and initialize the given plugin + * + * @param string $pluginType the plugin type (eg. module, theme) + * @param string $pluginId the plugin id + * @param bool $ignoreVersionMismatch should we ignore version mismatches (default: no) + * @param bool $errorOnVersionMismatch should we return an error on version mismatches instead + * of redirecting to the upgrader? (default: false) + * @return array object GalleryStatus a status code + * object the plugin + */ + function loadPlugin($pluginType, $pluginId, $ignoreVersionMismatch=false, + $errorOnVersionMismatch=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_simple.class'); + return GalleryPluginHelper_simple::loadPlugin( + $pluginType, $pluginId, $ignoreVersionMismatch, $errorOnVersionMismatch); + } + + /** + * Return true if the plugin is compatible with the current API versions. False otherwise. + * + * @param object GalleryPlugin $plugin + * @return boolean true if the plugin is compatible + */ + function isPluginCompatibleWithApis($plugin) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_simple.class'); + return GalleryPluginHelper_simple::isPluginCompatibleWithApis($plugin); + } + + /** + * Convenience method to retrieve a plugin parameter + * + * @param string $pluginType + * @param string $pluginId + * @param string $parameterName + * @param string $itemId (optional) + * @return array object GalleryStatus a status code + * string a value + */ + function getPluginParameter($pluginType, $pluginId, $parameterName, $itemId=0) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_simple.class'); + return GalleryPluginHelper_simple::getParameter($pluginType, $pluginId, + $parameterName, $itemId); + } + + /** + * Get all the parameters for this plugin + * + * @param string $pluginType + * @param string $pluginId + * @param int $itemId the id of item (or null for global settings) + * @return array object GalleryStatus a status code + * array (parameterName => parameterValue) + */ + function fetchAllPluginParameters($pluginType, $pluginId, $itemId=0) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_simple.class'); + return GalleryPluginHelper_simple::fetchAllParameters($pluginType, $pluginId, $itemId); + } + + /** + * Remove all plugin parameters for a given item id + * + * @param int $itemId the id of the GalleryItem + * @return object GalleryStatus a status code + */ + function removePluginParametersForItemId($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::removeParametersForItemId($itemId); + } + + /** + * Remove all plugin entries for a given parameter and value pair + * + * @param string $pluginType + * @param string $pluginId + * @param string $parameterName + * @param mixed $parameterValue the value to be matched + * @return object GalleryStatus a status code + */ + function removePluginParameterByValue($pluginType, $pluginId, $parameterName, $parameterValue) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::removeParameterByValue($pluginType, $pluginId, + $parameterName, $parameterValue); + } + + + /** + * Get the status of all plugins of a given type + * + * @param string $pluginType + * @param bool $ignoreCache (optional) true if we want to ignore the cache + * @return array object GalleryStatus as status code + * array (moduleId => array('active' => true/false, + * 'available' => true/false) + */ + function fetchPluginStatus($pluginType, $ignoreCache=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_simple.class'); + return GalleryPluginHelper_simple::fetchPluginStatus($pluginType, $ignoreCache); + } + + /** + * Return a plugin list by plugin type + * + * @param string $pluginType + * @return array GalleryStatus a status code + * array of (pluginId => ('active' => boolean)) + */ + function fetchPluginList($pluginType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_simple.class'); + return GalleryPluginHelper_simple::fetchPluginList($pluginType); + } + + /** + * Activate the given plugin + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * array redirect info for error page (empty for success) + */ + function activatePlugin($pluginType, $pluginId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::activate($pluginType, $pluginId); + } + + /** + * Deactivate the given plugin + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * array redirect info for error page (empty for success) + */ + function deactivatePlugin($pluginType, $pluginId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::deactivate($pluginType, $pluginId); + } + + /** + * Remove the given plugin from the map + * + * @param string $pluginType + * @param string $pluginId + * @return object GalleryStatus a status code + */ + function removePlugin($pluginType, $pluginId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::removePlugin($pluginType, $pluginId); + } + + /** + * Get the list of all available plugins of a given type + * + * @param string $pluginType + * @return array object GalleryStatus a status code + * string plugin ids + */ + function getAllPluginIds($pluginType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::getAllPluginIds($pluginType); + } + + /** + * Remove a parameter for this plugin + * + * @param string $pluginType + * @param string $pluginId + * @param string $parameterName + * @param int $itemId the id of item (or null for a global setting) + * @return object GalleryStatus a status code + */ + function removePluginParameter($pluginType, $pluginId, $parameterName, $itemId=0) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::removeParameter($pluginType, $pluginId, + $parameterName, $itemId); + } + + /** + * Remove all parameters for this plugin + * + * @param string $pluginType + * @param string $pluginId + * @return object GalleryStatus a status code + */ + function removeAllPluginParameters($pluginType, $pluginId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::removeAllParameters($pluginType, $pluginId); + } + + /** + * Set a plugin parameter + * + * @param string $pluginType + * @param string $pluginId + * @param string $parameterName + * @param string $parameterValue + * @param string $itemId (optional) + * @return object GalleryStatus a status code + */ + function setPluginParameter($pluginType, $pluginId, $parameterName, + $parameterValue, $itemId=0) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPluginHelper_medium.class'); + return GalleryPluginHelper_medium::setParameter($pluginType, $pluginId, + $parameterName, $parameterValue, $itemId); + } + + /** + * Fetch all the access list ids that grant the given permission to the given user + * (either directly or via a group). + * + * @param string $permission the permission id (eg. 'core.view') + * @param int $userId + * @param boolean $sessionPermissions (optional) false to ignore session based permissions + * @return array object GalleryStatus a status code + * array int access list ids + */ + function fetchAccessListIds($permission, $userId, $sessionPermissions=true) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_simple.class'); + return GalleryPermissionHelper_simple::fetchAccessListIds( + $permission, $userId, $sessionPermissions); + } + + /** + * Compact the access list map, if we deem that it's a good time to do so. + * + * @return object GalleryStatus a status code + */ + function maybeCompactAccessLists() { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::maybeCompactAccessLists(); + } + + /** + * Compact the access map. Remove any duplicate access maps and remap any subscribers from + * the duplicates to the one remaining version. + * + * @return object GalleryStatus a status code + */ + function compactAccessLists() { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::compactAccessLists(); + } + + /** + * Look up an item's access list. + * + * @param int $itemId the id of the source item + * @return array object GalleryStatus a status code, + * int accessListId the associated item's list + */ + function fetchAccessListId($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::fetchAccessListId($itemId); + } + + /** + * Assert that the current user has the specific permission for the target item + * + * @param int $itemId + * @param string $permission + * @return object GalleryStatus success if the user has permission, + * ERROR_PERMISSION_DENIED if not. + */ + function assertHasItemPermission($itemId, $permission) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_simple.class'); + return GalleryUserHelper_simple::assertHasItemPermission($itemId, $permission); + } + + /** + * Return true if the current user has the specific permission for the target item + * + * @param int $itemId + * @param string $permission + * @param int $userId an optional user id (default is the current user) + * @param boolean $sessionPermissions (optional) false to ignore session based permissions + * @return array object GalleryStatus a status code + * boolean true if yes + */ + function hasItemPermission($itemId, $permission, $userId=null, $sessionPermissions=true) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_simple.class'); + return GalleryUserHelper_simple::hasItemPermission( + $itemId, $permission, $userId, $sessionPermissions); + } + + /** + * Return a map of userNames => userids + * + * You can specify how many users to list, and where the windows is in the list of all users. + * + * @param int $count (optional) the number of usernames desired + * @param int $offset (optional) the start of the range + * @param string $substring (optional) a substring to match + * @return array object GalleryStatus a status code + * array (username, username, ...) + */ + function fetchUsernames($count=null, $offset=null, $substring=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_medium.class'); + return GalleryUserHelper_medium::fetchUsernames($count, $offset, $substring); + } + + /** + * Return the total number of users + * + * @param string $substring an optional substring to match against the username + * @return array object GalleryStatus a status code + * int number of users + */ + function fetchUserCount($substring=null, $groupId=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_medium.class'); + return GalleryUserHelper_medium::fetchUserCount($substring, $groupId); + } + + /** + * Lookup a user by username + * + * @param string $userName + * @return array object GalleryStatus a status code + * object GalleryUser a user + */ + function fetchUserByUserName($userName=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_medium.class'); + return GalleryUserHelper_medium::fetchUserByUserName($userName); + } + + /** + * Assert that the active user is a site administrator + * + * @return object GalleryStatus success if the user is an administrator + * ERROR_PERMISSION_DENIED if not. + */ + function assertUserIsSiteAdministrator() { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_medium.class'); + return GalleryUserHelper_medium::assertSiteAdministrator(); + } + + /** + * Delete all non-album items of a user. Then delete all remaining albums that are empty. + * This function can only be called with activeUser = Site Admin + * + * @param int $userId + * @return array object GalleryStatus a status code + */ + function deleteUserItems($userId) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_medium.class'); + return GalleryUserHelper_medium::deleteUserItems($userId); + } + + /** + * Return a map of groupNames => groupids + * + * You can specify how many groups to list, and where the windows is in the list of all groups. + * + * @param int $count (optional) the number of groupnames desired + * @param int $offset (optional) the start of the range + * @param string $substring (optional) a substring to match + * @return array object GalleryStatus a status code + * array (groupname, groupname, ...) + */ + function fetchGroupNames($count=null, $offset=null, $substring=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryGroupHelper_simple.class'); + return GalleryGroupHelper_simple::fetchGroupNames($count, $offset, $substring); + } + + /** + * Return a count of groups, optionally matching a search string + * + * @param string $substring the substring to match + * @return array object GalleryStatus a status code + * int group count + */ + function fetchGroupCount($substring=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryGroupHelper_simple.class'); + return GalleryGroupHelper_simple::fetchGroupCount($substring); + } + + /** + * Lookup a group by name + * + * @param string $groupName + * @return array object GalleryStatus a status code + * object GalleryGroup a group + */ + function fetchGroupByGroupName($groupName=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryGroupHelper_simple.class'); + return GalleryGroupHelper_simple::fetchGroupByGroupName($groupName); + } + + + /** + * Return the permission bits for a set of permission ids + * + * @param mixed $permissionIds array of string permission ids or single permission id + * @return array object GalleryStatus a status code + * integer bits + */ + function convertPermissionIdsToBits($permissionIds) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_simple.class'); + return GalleryPermissionHelper_simple::convertIdsToBits($permissionIds); + } + + /** + * Return all the permission ids for a permission bit set + * + * @param int $permissionBits the bit mask + * @param boolean $compress should we compress the permission list? + * @return array object GalleryStatus a status code + * array (bits, bits, bits) + */ + function convertPermissionBitsToIds($permissionBits, $compress=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_simple.class'); + return GalleryPermissionHelper_simple::convertBitsToIds($permissionBits, $compress); + } + + /** + * Return a list of permissions for the given items + * + * @param array $itemIds int GalleryItem ids + * @param int $userId (optional) id of the user whose permissions we search for + * @param boolean $sessionPermissions (optional) false to ignore session based permissions + * @return array object GalleryStatus a status code + * array (id => array(array(permission.id => 1, ...), ...) + */ + function fetchPermissionsForItems($itemIds, $userId=null, $sessionPermissions=true) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_simple.class'); + return GalleryPermissionHelper_simple::fetchPermissionsForItems( + $itemIds, $userId, $sessionPermissions); + } + + /** + * Return all the permissions that the given user has for the given item. + * + * @param int $itemId + * @param int $userId an optional user id (default is current user) + * @param boolean $sessionPermissions (optional) false to ignore session based permissions + * @return array object GalleryStatus a status code + * array (perm1, perm2) + */ + function getPermissions($itemId, $userId=null, $sessionPermissions=true) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_simple.class'); + return GalleryPermissionHelper_simple::getPermissions( + $itemId, $userId, $sessionPermissions); + } + + /** + * Study the permissions for all items (for the given user). + * Caches the results in memory for the duration of the HTTP request handling + * such that subsequent permission checks go to memory rather than to the DB. + * + * @param array $itemIds GalleryItem ids + * @param int $userId an optional user id (default is current user) + * @param boolean $sessionPermissions (optional) false to ignore session based permissions + * @deprecated Use fetchPermissionsForItems instead. + * @return object GalleryStatus a status code + */ + function studyPermissions($itemIds, $userId=null, $sessionPermissions=true) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_simple.class'); + return GalleryPermissionHelper_simple::studyPermissions( + $itemIds, $userId, $sessionPermissions); + } + + /** + * Add the given itemid, userid, permission mapping + * + * @param int $itemId the id of the GalleryItem + * @param int $userId the id of the GalleryUser + * @param string $permission the permission id + * @param boolean $applyToChildren (optional) whether or not this call applies to child items + * @return object GalleryStatus a status code + */ + function addUserPermission($itemId, $userId, $permission, $applyToChildren=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::addUserPermission($itemId, $userId, + $permission, $applyToChildren); + } + + /** + * Add the given itemid, groupid, permission mapping + * + * @param int $itemId the id of the GalleryItem + * @param int $groupId the id of the GalleryGroup + * @param string $permission the permission id + * @param boolean $applyToChildren (optional) whether or not this call applies to child items + * @return object GalleryStatus a status code + */ + function addGroupPermission($itemId, $groupId, $permission, $applyToChildren=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::addGroupPermission($itemId, $groupId, + $permission, $applyToChildren); + } + + /** + * Add the given itemid, entityid, permission mapping. + * (Session based permissions; permission is granted when this entityId is added to + * GALLERY_PERMISSION_SESSION_KEY array in the session) + * + * @param int $itemId the id of the GalleryItem + * @param int $entityId the id of the GalleryEntity + * @param string $permission the permission id + * @param boolean $applyToChildren (optional) whether or not this call applies to child items + * @return object GalleryStatus a status code + */ + function addEntityPermission($itemId, $entityId, $permission, $applyToChildren=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::addEntityPermission($itemId, $entityId, + $permission, $applyToChildren); + } + + /** + * Remove the given itemid, userid, permission mapping + * + * @param int $itemId the id of the GalleryItem + * @param int $userId the id of the GalleryUser + * @param string $permission the permission id + * @param boolean $applyToChildren (optional) whether or not this call applies to child items + * @return object GalleryStatus a status code + */ + function removeUserPermission($itemId, $userId, $permission, $applyToChildren=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::removeUserPermission( + $itemId, $userId, $permission, $applyToChildren); + } + + /** + * Remove the given itemid, groupid, permission mapping + * + * @param int $itemId the id of the GalleryItem + * @param int $groupId the id of the GalleryGroup + * @param string $permission the permission id + * @param boolean $applyToChildren (optional) whether or not this call applies to child items + * @return object GalleryStatus a status code + */ + function removeGroupPermission($itemId, $groupId, $permission, $applyToChildren=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::removeGroupPermission( + $itemId, $groupId, $permission, $applyToChildren); + } + + /** + * Remove the given itemid, entityid, permission mapping + * + * @param int $itemId the id of the GalleryItem + * @param int $entityId the id of the GalleryEntity + * @param string $permission the permission id + * @param boolean $applyToChildren (optional) whether or not this call applies to child items + * @return object GalleryStatus a status code + */ + function removeEntityPermission($itemId, $entityId, $permission, $applyToChildren=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::removeEntityPermission( + $itemId, $entityId, $permission, $applyToChildren); + } + + /** + * Remove all permissions for the given itemid + * + * @param int $itemId + * @return object GalleryStatus a status code + */ + function removeItemPermissions($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::removeItemPermissions($itemId); + } + + /** + * Return a list of permissions for the given item id + * + * @param int $itemId + * @param boolean $compress should we compress the permission list? + * @return array object GalleryStatus a status code + * array array('userId' or 'groupId' or 'entityId' => ..., + * 'permission' => ...) + */ + function fetchAllPermissionsForItem($itemId, $compress=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::fetchAllPermissionsForItem($itemId, $compress); + } + + /** + * Copy a set of permissions from one id to another + * + * @param int $itemId the id of the target item + * @param int $fromId the id of the source item + * @return object GalleryStatus a status code + */ + function copyPermissions($itemId, $fromId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::copyPermissions($itemId, $fromId); + } + + /** + * Are any or the given user/group ids directly granted all given permissions + * for the target item? Ignores session-based permissions. + * + * @param int $itemId + * @param mixed $entityIds array of int entity ids (usually user or group ids) or a single id + * @param mixed $permissions array of string permission ids or single permission id + * @return array object GalleryStatus a status code + * boolean true if yes + */ + function hasPermission($itemId, $entityIds, $permissions) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::hasPermission($itemId, $entityIds, $permissions); + } + + /** + * Register a new permission + * + * @param string $module the id of the module + * @param string $permissionId the id of the permission + * @param string $description the non-localized description of the permission + * @param int $flags (optional) flags (of the GALLERY_PERMISSION_XYZ variety) + * @param array $composites (optional) ids of other permissions that compose this one + * @return object GalleryStatus a status code + */ + function registerPermission($module, $permissionId, $description, + $flags=0, $composites=array()) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::registerPermission( + $module, $permissionId, $description, $flags, $composites); + } + + /** + * Get all the permission ids that match the specified flags. + * This will return any permissions that contain *all* the bits from flags. + * + * @param int $flags + * @return array object GalleryStatus a status code + * array (id => description, id => description, ...) + */ + function getPermissionIds($flags=0) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::getPermissionIds($flags); + } + + /** + * Expand a single permission into all the possible permissions that it can possibly be. + * For example, convert 'core.viewAll' into: + * ('core.viewAll', 'core.view', 'core.viewOriginal', 'core.viewResizes') + * + * @return array object GalleryStatus a status code + * array(array('id' => ..., 'description' => ...), ...) + */ + function getSubPermissions($permissionId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::getSubPermissions($permissionId); + } + + /** + * Unregister all permission associated with a given module. + * + * @return object GalleryStatus a status code + */ + function unregisterModulePermissions($moduleId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryPermissionHelper_advanced.class'); + return GalleryPermissionHelper_advanced::unregisterModulePermissions($moduleId); + } + + /** + * Rebuild the cached derivative file if it is not current. + * If the cache is expired, it will be automatically rebuilt + * + * @param int $derivativeId + * @param boolean $fixBroken (optional) whether to try to fix the derivative if is broken + * @return array object GalleryStatus a status code, + * object GalleryDerivative the up-to-date derivative + * boolean true if it had to be rebuilt, false if not + */ + function rebuildDerivativeCacheIfNotCurrent($derivativeId, $fixBroken=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_simple.class'); + return GalleryDerivativeHelper_simple::rebuildCacheIfNotCurrent($derivativeId, $fixBroken); + } + + /** + * Rebuild the cache for the given derivative + * + * @param int $derivativeId + * @return array object GalleryStatus a status code + * object GalleryDerivative the rebuilt derivative + */ + function rebuildDerivativeCache($derivativeId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::rebuildCache($derivativeId); + } + + /** + * Expire all derivatives that depend on the source ids specified + * + * @param array $ids source ids + * @return object GalleryStatus a status code + */ + function expireDerivativeTreeBySourceIds($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::expireDerivativeTreeBySourceIds($ids); + } + + /** + * Zero out the dimensions for all derivatives that depend on the given source id so that + * they will be recalculated before the next view. + * + * @param array $ids source ids + * @return object GalleryStatus a status code + */ + function invalidateDerivativeDimensionsBySourceIds($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::invalidateDerivativeDimensionsBySourceIds($ids); + } + + /** + * Return the preferred source for this item by returning the first occurrence of the following: + * 1. This item's preferred derivative + * 2. This item's linked item's preferred derivative (if applicable) + * 3. This item's linked item (if applicable) + * 4. This item itself + * + * @param object GalleryDataItem $item + * @return array object GalleryObject a status code + * object GalleryEntity (either a GalleryDataItem or a GalleryDerivative) the + * preferred source + */ + function fetchPreferredSource($item) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::fetchPreferredSource($item); + } + + /** + * Convenience function to fetch the thumbnail for an item id + * + * @param array $ids GalleryItem ids + * @return array object GalleryStatus a status code + * array(GalleryItem id => GalleryDerivativeImage, ...) + */ + function fetchThumbnailsByItemIds($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_simple.class'); + return GalleryDerivativeHelper_simple::fetchThumbnailsByItemIds($ids); + } + + /** + * Convenience function to fetch the preferred for an item id + * + * @param array $ids GalleryItem ids + * @return array object GalleryStatus a status code + * array(GalleryItem id => GalleryDerivativeImage, ...) + */ + function fetchPreferredsByItemIds($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_medium.class'); + return GalleryDerivativeHelper_medium::fetchPreferredsByItemIds($ids); + } + + /** + * Convenience function to fetch the resizes for an item id + * + * @param array $ids GalleryItem ids + * @return array object GalleryStatus a status code + * array(GalleryItem id => array(GalleryDerivativeImage, ...) + * ...) + */ + function fetchResizesByItemIds($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_medium.class'); + return GalleryDerivativeHelper_medium::fetchResizesByItemIds($ids); + } + + /** + * Merge together two sets of operations into one in the most sensible way. + * For example: + * + * OPERATION SET 1 OPERATION SET 2 RESULT + * crop|1,2,3,4;rotate|90 crop|2,3,4,5 crop|2,3,4,5;rotate|90 + * scale|250;rotate|90 rotate|-90 scale|250 + * scale|250;rotate|90 rotate|90 scale|250;rotate|180 + * scale|250;rotate|90 thumbnail|125 thumbnail|125;rotate|180 + * + * @param string $operationSet1 the first set of operations + * @param string $operationSet2 the second set of operations + * @param boolean $highPriority true if the second set should be added at the beginning of + * the first set, if it can't be merged. + * @return array object GalleryStatus a status code + * the merged operation set + */ + function mergeDerivativeOperations($operationSet1, $operationSet2, $highPriority=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::mergeOperations($operationSet1, $operationSet2, + $highPriority); + } + + /** + * Remove the given operation from the operation set. + * + * @return string the new operation set + */ + function removeDerivativeOperation($operation, $operationSet) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::removeOperation($operation, $operationSet); + } + + /** + * Load the derivative images that have the specified source id(s) with the type(s) specified + * + * @param array $ids GalleryItem ids + * @param array $types derivative types (eg. DERIVATIVE_TYPE_IMAGE_THUMBNAIL) + * @return array object GalleryStatus a status code + * array(GalleryItem id => GalleryDerivativeImage, ...) + */ + function fetchDerivativesBySourceIds($ids, $types=array()) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::fetchDerivativesBySourceIds($ids, $types); + } + + /** + * Convenience function to fetch all derivatives for a given item id + * + * @param array $ids GalleryItem ids + * @return array object GalleryStatus a status code + * array(GalleryItem id => GalleryDerivativeImage, ...) + */ + function fetchDerivativesByItemIds($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::fetchDerivativesByItemIds($ids); + } + + /** + * Use the given operation as a transform for each derivative that depends on the target + * derivative. This gives the dependent derivatives a chance to perform any necessary + * transformations required to adapt to an upstream derivative operation change. For example, + * if you have a preferred which has a dependent thumbnail which has a crop operation in it, + * then you "rotate|90" the preferred you'd call adjustDependentDerivatives on the thumbnail + * with the "rotate|90" operation so that we can rotate the crop coordinates appropriately. + * + * @param array $id id the target derivative + * @param string $operation the operation that was performed on the target derivative + * @param boolean $reverse (optional) true if we should apply the transform in reverse + * @return object GalleryStatus a status code + */ + function adjustDependentDerivatives($id, $operation, $reverse=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::adjustDependentDerivatives($id, $operation, + $reverse); + } + + /** + * Use the given operation as a transform for each derivative that depends on the target + * + * @param string $operation the operation to be executed + * @param array $args arguments of the operation + * @param boolean $preserveOriginal whether to preserve original + * @param object GalleryItem $args item to perform the operation on + * @param object GalleryDerivative (optional) preferred derivative to execute the operation on + * @param int $serialNumber (optional) avoid concurrent edits + * @return object GalleryStatus a status code + */ + function applyToolkitOperation($operation, $args, $preserveOriginal, + &$item, $preferred=null, $serialNumber=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::applyToolkitOperation($operation, + $args, $preserveOriginal, $item, $preferred, $serialNumber); + } + + /** + * Find all derivatives attached to one source and switch them to another one + * + * @param string $originalSourceId the original source id + * @param string $newSourceId the new source id + * @return object GalleryStatus a status code + */ + function remapSourceIds($originalSourceId, $newSourceId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::remapSourceIds($originalSourceId, $newSourceId); + } + + /** + * Copy the derivative preferences from one id to another. + * Note that this doesn't modify pre-existing preferences already assigned to the target. + * + * @param int $sourceId the source id + * @param int $targetId the target id + * @return object GalleryStatus a status code + */ + function copyDerivativePreferences($sourceId, $targetId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::copyPreferences($sourceId, $targetId); + } + + /** + * Get the derivative preferences for the given item + * + * @param int $targetId the target id + * @return array object GalleryStatus a status code + * array (derivativeType => ..., derivativeOperations => ...) + */ + function fetchDerivativePreferencesForItem($targetId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::fetchPreferencesForItem($targetId); + } + + /** + * Add a derivative preference to a given item + * + * @param int $order the position of this preference + * @param int $itemId + * @param int $derivativeType (eg. DERIVATIVE_TYPE_IMAGE_THUMBNAIL) + * @param string $derivativeOperations (eg. 'thumbnail|200') + * @return object GalleryStatus a status code + */ + function addDerivativePreference($order, $itemId, $derivativeType, $derivativeOperations) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::addPreference($order, $itemId, $derivativeType, + $derivativeOperations); + } + + /** + * Remove derivative preference for a given item/type combination + * + * @param int $itemId + * @param int $derivativeType + * @return object GalleryStatus a status code + */ + function removeDerivativePreferenceForItemType($itemId, $derivativeType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::removePreferenceForItemType($itemId, + $derivativeType); + } + + /** + * Remove all derivative preferences for a given item + * + * @param int $itemId + * @return object GalleryStatus a status code + */ + function removeDerivativePreferencesForItem($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryDerivativeHelper_advanced.class'); + return GalleryDerivativeHelper_advanced::removePreferencesForItem($itemId); + } + + /** + * Estimate the dimensions of a GalleryDerivativeImage from its operations and its source. + * @todo This method knows too much about a small set of operations. We should move it into + * the toolkits themselves. + * + * @param object GalleryDerivativeImage $derivative + * @param object GalleryDerivativeEntity $source + * (probably a GalleryPhotoItem or GalleryMovieItem) + * @return object GalleryStatus a status code + */ + function estimateDerivativeDimensions(&$derivative, $source) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::estimateDerivativeDimensions($derivative, $source); + } + + /** + * Set modification timestamp for the given entity id to the current time. + * + * @param int $entityId + * @return object GalleryStatus a status code + */ + function updateModificationTimestamp($entityId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::updateModificationTimestamp($entityId); + } + + /** + * Update the view count for this item id + * @param int $itemId + * @param int $step the amount to increment + * @return object GalleryStatus a status code + */ + function incrementItemViewCount($itemId, $step=1) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_simple.class'); + return GalleryItemAttributesHelper_simple::incrementViewCount($itemId, $step); + } + + /** + * Create a new set of attributes for an item + * @param int $itemId + * @param array $parentSequence the sequence of parent ids + * @return object GalleryStatus a status code + */ + function createItemAttributes($itemId, $parentSequence) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::createItemAttributes($itemId, $parentSequence); + } + + /** + * Remove the attributes for the given item + * @param int $itemId + * @return object GalleryStatus a status code + */ + function removeItemAttributes($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::removeItemAttributes($itemId); + } + + /** + * Update the view count for this item id + * @param int $itemId + * @param int $count the new count + * @return object GalleryStatus a status code + */ + function setItemViewCount($itemId, $count) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::setViewCount($itemId, $count); + } + + /** + * Get the view counts for many item ids + * @param int $itemId + * @return array object GalleryStatus a status code + * int view count + */ + function fetchItemViewCount($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_simple.class'); + return GalleryItemAttributesHelper_simple::fetchViewCount($itemId); + } + + /** + * Get the view counts for many item ids + * @param array $itemIds + * @return array object GalleryStatus a status code + * array (itemId => viewCount, ..) + */ + function fetchItemViewCounts($itemIds) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_simple.class'); + return GalleryItemAttributesHelper_simple::fetchViewCounts($itemIds); + } + + /** + * Set the order weight for an item id + * @param int $itemId + * @param int $orderWeight the new order weight + * @return object GalleryStatus a status code + */ + function setItemOrderWeight($itemId, $orderWeight) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::setOrderWeight($itemId, $orderWeight); + } + + /** + * Get the order weight for a given item id + * @param int $itemId + * @return array object GalleryStatus a status code + * int the order weight + */ + function fetchItemOrderWeight($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_medium.class'); + return GalleryItemAttributesHelper_medium::fetchOrderWeight($itemId); + } + + /** + * Get the order weight for many item ids + * @param array $itemIds + * @return array object GalleryStatus a status code + * array(itemId1 => orderWeight1, + * itemId2 => orderWeight2, ...) + */ + function fetchItemOrderWeights($itemIds) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_medium.class'); + return GalleryItemAttributesHelper_medium::fetchOrderWeights($itemIds); + } + + /** + * Rebalance the order weights associated with this item's children. When this method is + * complete, the child item ids should still have the same order as they have now, but their + * order weights should be spaced out to exactly the spacing value specified in the arguments. + * + * @param int $parentItemId + * @param int $spacing the order spacing + * @return object GalleryStatus a status code + */ + function rebalanceChildOrderWeights($parentItemId, $spacing=1000) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::rebalanceChildOrderWeights($parentItemId, + $spacing); + } + + /** + * Fetch the highest or lowest weight of all children + * @param int $itemId the parent item id + * @param int $direction the direction (HIGHER_WEIGHT, LOWER_WEIGHT) + * @return int a weight + */ + function fetchExtremeChildWeight($itemId, $direction) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::fetchExtremeChildWeight($itemId, $direction); + } + + /** + * Fetch the weight of the next peer in line (higher or lower, as specified) + * + * @param int $itemId + * @param int $direction the direction (HIGHER_WEIGHT, LOWER_WEIGHT) + * @return int a weight + */ + function fetchNextItemWeight($itemId, $direction) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::fetchNextWeight($itemId, $direction); + } + + /** + * Set the parent id sequence for an item id + * + * @param int $itemId + * @param array $parentSequence the parent sequence (ids) + * @return object GalleryStatus a status code + */ + function setParentSequence($itemId, $parentSequence) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::setParentSequence($itemId, $parentSequence); + } + + /** + * Update all items containing the source parent sequence to the new parent sequence + * + * @param array $oldParentSequence + * @param array $newParentSequence the parent sequence (ids) + * @return object GalleryStatus a status code + */ + function updateParentSequence($oldParentSequence, $newParentSequence) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_advanced.class'); + return GalleryItemAttributesHelper_advanced::updateParentSequence($oldParentSequence, + $newParentSequence); + } + + /** + * Get the parent sequence for this item id + * @param int $itemId + * @param bool $filterBreadcrumb (optional) whether to filter results with breadcrumbRootId + * @return array object GalleryStatus a status code + * array the parent id sequence from root album down; given itemId not included + */ + function fetchParentSequence($itemId, $filterBreadcrumb=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemAttributesHelper_simple.class'); + return GalleryItemAttributesHelper_simple::fetchParentSequence($itemId, $filterBreadcrumb); + } + + /** + * Return the correct theme for this item. If the appropriate theme cannot be loaded, + * we fall back on the default. And if that can't be loaded, then we return null. + * + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * string a theme plugi + */ + function fetchThemeId($item) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_simple.class'); + return GalleryItemHelper_simple::fetchThemeId($item); + } + + /** + * Return the number of children for the items specified, that are visible to the given user. + * + * @param array $itemIds + * @param int $userId an optional user id (default is the current user) + * @return array object GalleryStatus a status code + * int a count + */ + function fetchChildCounts($itemIds, $userId=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_simple.class'); + return GalleryItemHelper_simple::fetchChildCounts($itemIds, $userId); + } + + /** + * Fetch the breakdown of descendents for a given item + * + * @param array $itemIds + * @param int $userId an optional user id (default is the current user) + * @return array object GalleryStatus a status code + * array(id => ##, id => ##) + */ + function fetchDescendentCounts($itemIds, $userId=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_simple.class'); + return GalleryItemHelper_simple::fetchDescendentCounts($itemIds, $userId); + } + + /** + * Fetch the breakdown of descendents for a given item. Note: this call is more expensive than + * GalleryCoreApi::fetchDescendentCounts(), so use that version where possible. + * + * @param array $itemIds + * @return array object GalleryStatus a status code + * array(id => array('GalleryAlbumItem' => ##, + * 'GalleryDataItem' => ##), + * id => array('GalleryAlbumItem' => ##, + * 'GalleryDataItem' => ##)) + */ + function fetchItemizedDescendentCounts($itemIds) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_advanced.class'); + return GalleryItemHelper_advanced::fetchItemizedDescendentCounts($itemIds); + } + + /** + * Return the number of of items that match the given type and have the given permission. + * + * @param string $itemType an item type (eg. GalleryAlbumItem) + * @param string $permission (default is core.view) + * @param int $userId an optional user id (default is the current user) + * @return array object GalleryStatus a status code + * int a count + */ + function fetchItemIdCount($itemType, $permission='core.view', $userId=null) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_simple.class'); + return GalleryItemHelper_simple::fetchItemIdCount($itemType, $permission, $userId); + } + + /** + * Return the ids of all the child items of the given item that have the matching permission. + * Useful for, example, for finding all the children where we (the active user) has the + * 'core.changePermissions' permission bit set. This allows us to cascade permission updates. + * + * @param int $itemId + * @param string $permissionId + * @return array object GalleryStatus a status code + * array a list of ids + */ + function fetchChildItemIdsWithPermission($itemId, $permissionId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchChildItemIdsWithPermission($itemId, + $permissionId); + } + + /** + * Return the ids of all the child items of the given item that have the matching permission + * and are linkable entities. Useful for, example, for finding all the children where we + * (the active user) has the 'core.changePermissions' permission bit set. This allows us to + * cascade permission updates. + * + * @param array $itemId + * @param string $permissionId + * @return array object GalleryStatus a status code + * array a list of ids + */ + function fetchLinkableChildItemIdsWithPermission($itemId, $permissionId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchLinkableChildItemIdsWithPermission($itemId, + $permissionId); + } + + /** + * Return the ids of all items that match the given type and have the given permission. + * + * @param string $itemType an item type (eg. GalleryAlbumItem) + * @param string $permission (default is core.view) + * @return array object GalleryStatus a status code + * array(id, id, id, ...) + */ + function fetchAllItemIds($itemType, $permission='core.view') { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::fetchAllItemIds($itemType, $permission); + } + + /** + * Return the ids of all items which are owned by the given userid. + * This function does NOT obey permissions! + * + * @param int $ownerId the id of the owner of the items + * @return array object GalleryStatus a status code + * array(id, id, id, ...) + */ + function fetchAllItemIdsByOwnerId($ownerId) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::fetchAllItemIdsByOwnerId($ownerId); + } + + /** + * Return the appropriate GalleryItem instance for the mime type provided. + * Use the GalleryFactory to try to find an exact match to the mime type. + * Failing that, fall back to the major type, then fall back to '*'. + * + * @param string $mimeType + * @return array object GalleryStatus a status code + * object GalleryItem an item + */ + function newItemByMimeType($mimeType) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::newItemByMimeType($mimeType); + } + + /** + * Create a new album. + * + * @param int $parentAlbumId the id of the parent album + * @param string $name the name of the new album + * @param string $title the title of the new album + * @param string $summary the summary of the new album + * @param string $description the description of the new album + * @param string $keywords the keywords of the new album + * @return array object GalleryStatus a status code + * object GalleryAlbumItem a new album + */ + function createAlbum($parentAlbumId, $name, $title, $summary, $description, $keywords) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_advanced.class'); + return GalleryItemHelper_advanced::createAlbum($parentAlbumId, $name, $title, $summary, + $description, $keywords); + } + + /** + * Add a new data item to an album from a data file. + * + * @param string $fileName the path to the file on the local disk + * @param string $itemName the name of the new item + * @param string $title the title of the new item + * @param string $summary the summary of the new item + * @param string $description the description of the new item + * @param string $mimeType the mime type of the new item + * @param int $albumId the id of the target album + * @param boolean $symlink (optional) a boolean true if we should symlink instead + * of copy (default is false). + * @return array object GalleryStatus a status code + * object GalleryDataItem a new item + */ + function addItemToAlbum($fileName, $itemName, $title, $summary, + $description, $mimeType, $albumId, $symlink=false) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::addItemToAlbum( + $fileName, $itemName, $title, $summary, $description, $mimeType, $albumId, $symlink); + } + + /** + * Add an existing data item to an album + * + * @param object GalleryItem $item the source item + * @param int $albumId the id of the target album + * @param boolean $isNew (optional) if true, skip check for existing derivatives + * @return object GalleryStatus a status code + */ + function addExistingItemToAlbum($item, $albumId, $isNew=false) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::addExistingItemToAlbum($item, $albumId, $isNew); + } + + /** + * (Re)create derivatives for a data item according to preferences for given album + * + * @param object GalleryItem $item the source item + * @param int $albumId the id of the target album + * @param boolean $isNew (optional) if true, skip check for existing derivatives + * @return object GalleryStatus a status code + */ + function applyDerivativePreferences($item, $albumId, $isNew=false) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::applyDerivativePreferences($item, $albumId, $isNew); + } + + /** + * Fetch the originationTimestamp through our known toolkits + * + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * int a timestamp or null if nothing was found + */ + function fetchOriginationTimestamp($item) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::fetchOriginationTimestamp($item); + } + + /** + * Set the thumbnail for an album from an item, according to the thumbnail + * preferences for the album. + * + * @param int $itemId the album id + * @param int $fromItemId the item id + * @return object GalleryStatus a status code + * boolean true if successful + */ + function setThumbnailFromItem($itemId, $fromItemId) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryItemHelper_medium.class'); + return GalleryItemHelper_medium::setThumbnailFromItem($itemId, $fromItemId); + } + + /** + * Make sure that the album has a thumbnail. If it doesn't, then grab the first handy child and + * make it the album's thumbnail. We're not picky. + * + * @param int $itemId the album id + * @return object GalleryStatus a status code + * boolean true if successful + */ + function guaranteeAlbumHasThumbnail($itemId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_advanced.class'); + return GalleryItemHelper_advanced::guaranteeAlbumHasThumbnail($itemId); + } + + /** + * Fetch album tree visible to current user, + * optionally starting from a given album and to a given depth. + * + * @param int $itemId (optional) id of album for root of tree + * @param int $depth (optional) max depth of tree + * @param int $userId (optional) items visible to this user id, instead of current user + * @return array object GalleryStatus a status code + * array (albumId => array(albumId => array, ..), ..) + */ + function fetchAlbumTree($itemId=null, $depth=null, $userId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_simple.class'); + return GalleryItemHelper_simple::fetchAlbumTree($itemId, $depth, $userId); + } + + /** + * Transfer the ownership of all items by oldUser to newUser + * + * @param int $oldUserId the user id of the old owner + * @param int $newUserId the user id of the new owner + * @return object GalleryStatus a status code + */ + function remapOwnerId($oldUserId, $newUserId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_advanced.class'); + return GalleryItemHelper_advanced::remapOwnerId($oldUserId, $newUserId); + } + + /** + * Is the active user in the admin group? + * + * @param int $userId an optional user id (default is the current user) + * @return array object GalleryStatus a status code + * boolean true if yes + */ + function isUserInSiteAdminGroup($userId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_simple.class'); + return GalleryUserGroupHelper_simple::isUserInSiteAdminGroup($userId); + } + + /** + * Is the given user id in the given group? + * + * @param int $userId + * @param int $groupId + * @return array object GalleryStatus a status code + * boolean true if yes + */ + function isUserInGroup($userId, $groupId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_simple.class'); + return GalleryUserGroupHelper_simple::isUserInGroup($userId, $groupId); + } + + /** + * Add the specified user to the specified group. + * + * @param int $userId + * @param int $groupId + * @return object GalleryStatus a status code + */ + function addUserToGroup($userId, $groupId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_medium.class'); + return GalleryUserGroupHelper_medium::addUserToGroup($userId, $groupId); + } + + /** + * Remove the specified user to the specified group. + * + * @param int $userId + * @param int $groupId + * @return object GalleryStatus a status code + */ + function removeUserFromGroup($userId, $groupId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_medium.class'); + return GalleryUserGroupHelper_medium::removeUserFromGroup($userId, $groupId); + } + + /** + * Remove the user from all groups + * + * @param int $userId + * @return object GalleryStatus a status code + */ + function removeUserFromAllGroups($userId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_medium.class'); + return GalleryUserGroupHelper_medium::removeUserFromAllGroups($userId); + } + + /** + * Remove any users in the group + * + * @param int $groupId + * @return object GalleryStatus a status code + */ + function removeAllUsersFromGroup($groupId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_medium.class'); + return GalleryUserGroupHelper_medium::removeAllUsersFromGroup($groupId); + } + + /** + * Return a list of user ids belonging to a group + * + * You can specify how many userids to list, and where the windows is in + * the list of all users. + * + * @param int $groupId + * @param int $count the number of user ids desired + * @param int $offset the start of the range + * @param string $substring substring to match against the username + * @return array object GalleryStatus a status code + * array user id => user name + */ + function fetchUsersForGroup($groupId, $count=null, $offset=null, $substring=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_medium.class'); + return GalleryUserGroupHelper_medium::fetchUsersForGroup($groupId, $count, + $offset, $substring); + } + + /** + * Return a list of groups that a user belongs to. + * You can specify how many userids to list, and where the windows is in the list of all users. + * + * @param int $userId + * @param int $count the number of group ids desired + * @param int $offset the start of the range + * @return array object GalleryStatus a status code + * array group id => group name + */ + function fetchGroupsForUser($userId, $count=null, $offset=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryUserGroupHelper_simple.class'); + return GalleryUserGroupHelper_simple::fetchGroupsForUser($userId, $count, $offset); + } + + /** + * Given a complete logical path, return the item id that it refers to. + * + * @param string $path + * @return array object GalleryStatus a status code + * int the item id + */ + function fetchItemIdByPath($path) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFileSystemEntityHelper_simple.class'); + return GalleryFileSystemEntityHelper_simple::fetchItemIdByPath($path); + } + + /** + * Check for a collision of FileSystemEntiry paths. + * + * @param string $pathComponent + * @param int $parentId the id of the target parent + * @param int $selfId (optional) ignore path collision with this id + * @return array object GalleryStatus a status code + * boolean true if there's a collision + */ + function checkPathCollision($pathComponent, $parentId, $selfId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFileSystemEntityHelper_medium.class'); + return GalleryFileSystemEntityHelper_medium::checkPathCollision($pathComponent, + $parentId, $selfId); + } + + /** + * Get a legal path component in the given parent id. Legal by the platform standards, and + * legal in that it doesn't cause a conflict with other path components. + * + * @param string $pathComponent the starting path component (eg. "IMG_10293.JPG") + * @param int $parentId the target parent id + * @param int $selfId (optional) ignore path collision with this id + * @return array object GalleryStatus a status code + * string the legal path component + */ + function getLegalPathComponent($pathComponent, $parentId, $selfId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFileSystemEntityHelper_medium.class'); + return GalleryFileSystemEntityHelper_medium::getLegalPathComponent($pathComponent, + $parentId, $selfId); + } + + /** + * Returns the id of the child filesystem entity that matches the given path component. + * Note: this call ignores permissions so it must be used very carefully! + * + * @param int $parentId + * @param string $pathComponent of the target item + * @return array object GalleryStatus a status code + * int an id + */ + function fetchChildIdByPathComponent($parentId, $pathComponent) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryFileSystemEntityHelper_simple.class'); + return GalleryFileSystemEntityHelper_simple::fetchChildIdByPathComponent($parentId, + $pathComponent); + } + + /** + * Register the operations that a toolkit is able to perform on a certain mime type. + * + * This should be called by a module that provides a toolkit to access certain mime types. + * The module should also call GalleryCoreApi::registerFactoryImplementation with the same + * "id" that it registers here, so the correct class can be found later. + * + * @param string $toolkitId the id of the toolkit + * @param array $mimeTypes the applicable mime types for this operation + * @param string $operationName the id of the operation + * @param array $parameterTypesArray a list of parameters that this operation requires + * @param string $description a translatable description of this operation + * @param string $outputMimeType the output mime type after performing this operation + * @param int $priority priority of this implementation vs other toolkits + * @return object GalleryStatus a status code + */ + function registerToolkitOperation($toolkitId, $mimeTypes, $operationName, + $parameterTypesArray, $description, + $outputMimeType='', $priority=5) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::registerOperation( + $toolkitId, $mimeTypes, $operationName, $parameterTypesArray, $description, + $outputMimeType, $priority); + } + + /** + * Unregister an operation that a toolkit is able to perform on certain mime types + * + * @param string $toolkitId the id of the toolkit + * @param string $operationName the id of the operation + * @param array $mimeTypes the applicable mime types to remove; empty for all mime types + * @return object GalleryStatus a status code + */ + function unregisterToolkitOperation($toolkitId, $operationName, $mimeTypes=array()) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::unregisterOperation($toolkitId, $operationName, + $mimeTypes); + } + + /** + * Unregister all operations and properties for toolkits implemented by the given module. + * + * @param string $moduleId + * @return object GalleryStatus a status code + */ + function unregisterToolkitsByModuleId($moduleId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::unregisterToolkitsByModuleId($moduleId); + } + + /** + * Register a parameter that a toolkit can extract from a certain mime type. + * + * This should be called by a module that provides a toolkit to access certain mime types. + * The module should also call GalleryCoreApi::registerFactoryImplementation with the same + * "id" that it registers here, so the correct class can be found later. + * + * @param string $toolkitId the id of the toolkit + * @param array $mimeTypes the applicable mime types for this property + * @param string $propertyName the name of the property + * @param string $type the type of the property + * @param string $description a translatable description of this property + * @return object GalleryStatus a status code + */ + function registerToolkitProperty($toolkitId, $mimeTypes, $propertyName, $type, $description) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::registerProperty($toolkitId, $mimeTypes, + $propertyName, $type, $description); + } + + /** + * Unregister a toolkit's operations and properties. If we have any remaining that are no + * longer implemented by any toolkit then remove them from the system also. + * + * @param string $toolkitId + * @return object GalleryStatus a status code + */ + function unregisterToolkit($toolkitId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::unregisterToolkit($toolkitId); + } + + /** + * Get all valid operations on a certain mime type + * + * @param string $mimeType + * @return array object GalleryStatus a status code + * array('name' => ..., + * 'outputMimeType' => ..., + * 'description' => ..., + * arguments => array('type' => ..., + * 'description' => ...), + * ...) + */ + function getToolkitOperations($mimeType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::getOperations($mimeType); + } + + /** + * Get all valid input mime types for a certain operation + * + * @param string $operationName + * @return array object GalleryStatus a status code + * array(mime type => array(toolkit ids, sorted by priority)) + */ + function getToolkitOperationMimeTypes($operationName) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::getOperationMimeTypes($operationName); + } + + /** + * Get all valid properties of a certain mime type + * + * @param string $mimeType + * @return array object GalleryStatus a status code + * array ( + * array('name' => property, 'type' => type, 'description' => description), .. + * ) + * + */ + function getToolkitProperties($mimeType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::getProperties($mimeType); + } + + /** + * Get a toolkit that can perform the given operation + * + * @param string $mimeType + * @param string $operationName + * @return array object GalleryStatus a status code + * object GalleryToolkit a toolkit + * string a result mime type + */ + function getToolkitByOperation($mimeType, $operationName) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_simple.class'); + return GalleryToolkitHelper_simple::getToolkitByOperation($mimeType, $operationName); + } + + /** + * Verify that a given mime-type/operation-sequence combination is supported by our existing + * toolkits by walking the sequence and making sure that we have a toolkit that can handle + * each operation. + * + * @param string $mimeType the original mime type + * @param string $operations a sequence of operations + * @return object GalleryStatus a status code + * boolean true if supported, false if not + * string the output mime type + */ + function isSupportedOperationSequence($mimeType, $operations) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::isSupportedOperationSequence($mimeType, $operations); + } + + /** + * Make sure operation sequence is supported and produces a browser-viewable output mime type. + * Add convert-to-image/jpeg operation if needed. + * + * @param string $mimeType the original mime type + * @param string $operations a sequence of operations + * @param boolean $prependConversion (optional) true to also try prepending convert-to-image/xxx + * @return array object GalleryStatus a status code + * string a sequence of operations, null if not supported + * string the output mime type, null if not supported + */ + function makeSupportedViewableOperationSequence($mimeType, $operations, + $prependConversion=true) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::makeSupportedViewableOperationSequence( + $mimeType, $operations, $prependConversion); + } + + /** + * Get a toolkit that can retrieve the given property + * + * @param string $mimeType + * @param string $propertyName + * @return array object GalleryStatus a status code + * object GalleryToolkit a toolkit + */ + function getToolkitByProperty($mimeType, $propertyName) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_simple.class'); + return GalleryToolkitHelper_simple::getToolkitByProperty($mimeType, $propertyName); + } + + /** + * Get the toolkits that can retrieve the given property + * + * @param string $mimeType + * @param string $propertyName + * @return array object GalleryStatus a status code + * array of toolkitIds + */ + function getToolkitsByProperty($mimeType, $propertyName) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_simple.class'); + return GalleryToolkitHelper_simple::getToolkitsByProperty($mimeType, $propertyName); + } + + /** + * Get maximum priority value (lowest priority) in managed priority range (20-40) + * + * @return array object GalleryStatus a status code + * int priority + */ + function getMaximumManagedToolkitPriority() { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_simple.class'); + return GalleryToolkitHelper_simple::getMaximumManagedPriority(); + } + + /** + * Get maximum priority value (lowest priority) in managed priority range (20-40) + * + * @param string $toolkitId + * @return array object GalleryStatus a status code + * int priority + */ + function getToolkitPriorityById($toolkitId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_simple.class'); + return GalleryToolkitHelper_simple::getToolkitPriorityById($toolkitId); + } + + + /** + * Get list of toolkits/priorities in managed priority range (20-40) for which + * another toolkit supports a same operation and mime type. + * + * @return array object GalleryStatus a status code + * array (toolkitId=>priority, ..) + */ + function getRedundantToolkitPriorities() { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryToolkitHelper_medium.class'); + return GalleryToolkitHelper_medium::getRedundantPriorities(); + } + + /** + * Create a new event with the given name + * @param string $eventName + * @return object GalleryEvent an event with the given name + */ + function newEvent($eventName) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryEventHelper_simple.class'); + return GalleryEventHelper_simple::newEvent($eventName); + } + + /** + * Register an event listener + * + * @param string $eventName the name of the event (eg. "GalleryEntity::save") + * @param object GalleryEventListener $listener + * @param boolean $disableForUnitTests (optional) if true, disable event listener during tests + */ + function registerEventListener($eventName, &$listener, $disableForUnitTests=false) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryEventHelper_simple.class'); + return GalleryEventHelper_simple::registerEventListener($eventName, $listener, + $disableForUnitTests); + } + + /** + * Deliver an event to anybody listening + * + * @param object GalleryEvent $event + * @return array object GalleryStatus a status code + * array data returned from listeners, if any + */ + function postEvent($event) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryEventHelper_simple.class'); + return GalleryEventHelper_simple::postEvent($event); + } + + + /** + * Read Lock one or more objects + * + * @param mixed $ids array of ids to lock, or single int id + * @param int $timeout (optional) how long to wait for the lock before giving up + * @return array object GalleryStatus a status code + * int the lock id + */ + function acquireReadLock($ids, $timeout=10) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::acquireReadLock($ids, $timeout); + } + + /** + * Acquire read locks on all the ancestors of this id. This is useful when we're going to do + * a filesystem related operation and we want to make sure that the tree does not change out + * from underneath us. + * + * @param int $id + * @param int $timeout (optional) how long to wait for the lock before giving up + * @return array object GalleryStatus a status code + * int the lock id + */ + function acquireReadLockParents($id, $timeout=10) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::acquireReadLockParents($id, $timeout); + } + + /** + * Return true if the given id is read locked or write locked by us. + * + * @param int $id an entity id + * @return boolean true if the entity is read locked + */ + function isReadLocked($id) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::isReadLocked($id); + } + + /** + * Write lock one or more objects + * + * @param mixed $ids array of ids to lock, or single int id + * @param int $timeout (optional) how long to wait for the lock before giving up + * @return array object GalleryStatus a status code + * int the lock id + */ + function acquireWriteLock($ids, $timeout=10) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::acquireWriteLock($ids, $timeout); + } + + /** + * Return true if the given id is write locked by us. + * + * @param int $id an entity id + * @return boolean true if the entity is write locked + */ + function isWriteLocked($id) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::isWriteLocked($id); + } + + /** + * Release the given lock(s) + * + * @param mixed $lockIds array of lock ids, or a single lock id + * @return object GalleryStatus a status code + */ + function releaseLocks($lockIds) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::releaseLocks($lockIds); + } + + /** + * Let go of all of our locks. + * + * @return object GalleryStatus a status code + */ + function releaseAllLocks() { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::releaseAllLocks(); + } + + /** + * Refresh all the locks that we hold so that they aren't accidentally considered expired + * + * @param int $freshUntil the new "fresh until" timestamp + * @return object GalleryStatus a status code + */ + function refreshLocks($freshUntil) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::refreshLocks($freshUntil); + } + + /** + * Get the set of lock ids + * + * @return object array of lock ids + */ + function getLockIds() { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryLockHelper_simple.class'); + return GalleryLockHelper_simple::getLockIds(); + } + + /** + * Load the GalleryEntities with the ids specified + * + * @param mixed $ids the ids (or id) of the GalleryEntities to load + * @return array object GalleryStatus a status code, + * mixed one GalleryEntity or an array of GalleryEntities + */ + function loadEntitiesById($ids) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_simple.class'); + return GalleryEntityHelper_simple::loadEntitiesById($ids); + } + + /** + * Delete the entity with the given id + * + * @param int $id the id of a GalleryEntity to delete + * @return object GalleryStatus a status code + */ + function deleteEntityById($id) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::deleteEntityById($id); + } + + /** + * Fetch the ids of the entities linked to the target entity + * + * @param int $targetId the target entity id + * @return array object GalleryStatus a status code + * array entity ids + */ + function fetchEntitiesLinkedTo($targetId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::fetchEntitiesLinkedTo($targetId); + } + + /** + * Map external id to G2 id and then load the entity + * + * @param string $externalId + * @param string $entityType + * @return array object GalleryStatus a status code + * object GalleryEntity + */ + function loadEntityByExternalId($externalId, $entityType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_simple.class'); + return GalleryEntityHelper_simple::loadEntityByExternalId($externalId, $entityType); + } + + /** + * Remove onLoadHandlers from all entities + * + * @param array $handlerIds of factory impl ids + * @return object GalleryStatus a status code + */ + function removeOnLoadHandlers($handlerIds) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::removeOnLoadHandlers($handlerIds); + } + + /** + * Return the ids of the descendents of this entity that are visible to the given user. + * + * @param object GalleryItem $item + * @param int $offset where to start + * @param int $count how many to return + * @param string $permission (optional) what permission is required for the item + * @return array object GalleryStatus a status code + * array integer ids + */ + function fetchDescendentItemIds($item, $offset=null, $count=null, $permission='core.view') { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchDescendentItemIds($item, $offset, + $count, $permission); + } + + /** + * Return the ids of the children of this entity, in the order specified by the orderBy field + * and the direction specified by the orderDirection field, that are visible to the given user. + * + * @param object GalleryItem $item + * @param int $offset where to start + * @param int $count how many to return + * @param int $userId optional user id. Defaults to current user id + * @return array object GalleryStatus a status code + * array integer ids + */ + function fetchChildItemIds($item, $offset=null, $count=null, $userId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchChildItemIds($item, $offset, $count, $userId); + } + + /** + * Same as fetchDescendentItemIds except we only want sub-albums + * + * @param object GalleryItem $item + * @param int $offset where to start + * @param int $count how many to return + * @param string $permission (optional) what permission is required for the item + * @return array object GalleryStatus a status code + * array integer ids + */ + function fetchDescendentAlbumItemIds($item, $offset=null, $count=null, + $permission='core.view') { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchDescendentAlbumItemIds($item, $offset, + $count, $permission); + } + + /** + * Same as fetchChildItemIds except we only want sub-albums + * + * @param object GalleryItem $item + * @param int $offset where to start + * @param int $count how many to return + * @param int $userId optional user id. Defaults to current user id + * @return array object GalleryStatus a status code + * array integer ids + */ + function fetchChildAlbumItemIds($item, $offset=null, $count=null, $userId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchChildAlbumItemIds($item, $offset, + $count, $userId); + } + + /** + * Same as fetchChildItemIds except we only want data items + * + * @param object GalleryItem $item + * @param int $offset where to start + * @param int $count how many to return + * @param int $userId optional user id. Defaults to current user id + * @return array object GalleryStatus a status code + * array integer ids + */ + function fetchChildDataItemIds($item, $offset=null, $count=null, $userId=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchChildDataItemIds($item, $offset, + $count, $userId); + } + + /** + * Same as fetchChildItemIds, except that we ignore permissions + * + * @param object GalleryItem $item + * @param int $offset where to start + * @param int $count how many to return + * @return array object GalleryStatus a status code + * array integer ids + */ + function fetchChildItemIdsIgnorePermissions($item, $offset=null, $count=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchChildItemIdsIgnorePermissions($item, $offset, + $count); + } + + /** + * Load all the ancestors of this item + * + * @param object GalleryItem $item + * @param string $permission (optional) only return ancestors with this permission + * @param bool $filterBreadcrumb (optional) whether to filter results with breadcrumbRootId + * @return array object GalleryStatus a status code + * array of GalleryItem, from top level to parent item + */ + function fetchParents($item, $permission=null, $filterBreadcrumb=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::fetchParents($item, $permission, $filterBreadcrumb); + } + + /** + * Build query to select items in a given sort order + * + * @param string $baseTable base table to query + * @param string $baseIdColumn name of id column in this table + * @param string $baseQuery where clause for query + * @param string $orderBy order for results + * @param string $orderDirection order direction for results + * @param string $class a class to restrict children to (eg. 'GalleryAlbumItem'; can be null) + * @param string $requiredPermission a required permission (can be null) + * @param boolean $linkableOnly whether to restrict to linkable items only + * @param int $userId the user we're doing this for + * @return array object GalleryStatus a status code + * string query + * array data items for query (not including any ? marks in baseQuery) + */ + function buildItemQuery($baseTable, $baseIdColumn, $baseQuery, $orderBy, $orderDirection, + $class, $requiredPermission, $linkableOnly, $userId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryChildEntityHelper_simple.class'); + return GalleryChildEntityHelper_simple::buildItemQuery($baseTable, $baseIdColumn, + $baseQuery, $orderBy, $orderDirection, $class, $requiredPermission, + $linkableOnly, $userId); + } + + /** + * Convert a file extension to a mime type + * + * @param string $extension a file extension + * @return array object GalleryStatus a status code + * string a mime type (application/unknown if no known mapping) + */ + function convertExtensionToMime($extension) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_simple.class'); + return GalleryMimeTypeHelper_simple::convertExtensionToMime($extension); + } + + /** + * Convert a mime type to a file extension + * + * @param string $mimeType + * @return array object GalleryStatus a status code + * array of file extensions (empty array if no known mapping) + */ + function convertMimeToExtensions($mimeType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_simple.class'); + return GalleryMimeTypeHelper_simple::convertMimeToExtensions($mimeType); + } + + /** + * Figure out the file's mime type. + * eg. "foo.jpg" returns "image/jpeg" + * + * @param string $filename + * @return array object GalleryStatus a status code + * string a mime type (application/unknown if no known extension) + */ + function getMimeType($filename) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_simple.class'); + return GalleryMimeTypeHelper_simple::getMimeType($filename); + } + + /** + * Return true if the given mime type is viewble in a web browser + * + * @param string $mimeType + * @return array object GalleryStatus a status code + * boolean + */ + function isViewableMimeType($mimeType) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_simple.class'); + return GalleryMimeTypeHelper_simple::isViewableMimeType($mimeType); + } + + /** + * Remove specified mime data from the list. + * examples: array('mimeType' => 'test/image') or array('extension' => array('img', 'im2')) + * + * @param array $mimeMatch (keys/values to delete) + * @return object GalleryStatus a status code + */ + function removeMimeType($mimeMatch) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_advanced.class'); + return GalleryMimeTypeHelper_advanced::removeMimeType($mimeMatch); + } + + + /** + * Add the given extension to the database and map it to the specified mime type and mark it + * viewable as requested. Return ERROR_COLLISION if there's already a mapping for the given + * extension. + * + * @param string $extension + * @param string $mimeType + * @param bool $viewable whether or not it's browser viewable + * @return object GalleryStatus a status code + */ + function addMimeType($extension, $mimeType, $viewable) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryMimeTypeHelper_advanced.class'); + return GalleryMimeTypeHelper_advanced::addMimeType($extension, $mimeType, $viewable); + } + + /** + * Fetch the web page at the given url. Follow redirects to get the data and upon completion + * return the http response, headers and the actual URL that we used to get the data. + * + * @param string $url + * @param string $outputFile + * @param array $extraHeaders (optional) extra headers to pass to the server + * @return array(boolean success, http response, headers, url) + * the url is the final url retrieved after redirects + */ + function fetchWebFile($url, $outputFile, $extraHeaders=array()) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/WebHelper_simple.class'); + return WebHelper_simple::fetchWebFile($url, $outputFile, $extraHeaders); + } + + /** + * Fetch the web page at the given url. Follow redirects to get the data and upon completion + * return the body, http response, headers and the actual URL that we used to get the data. + * + * @param string $url + * @param array $extraHeaders (optional) extra headers to pass to the server + * @return array(boolean success, string body, http response, headers, url) + * the url is the final url retrieved after redirects + */ + function fetchWebPage($url, $extraHeaders=array()) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/WebHelper_simple.class'); + return WebHelper_simple::fetchWebPage($url, $extraHeaders); + } + + /** + * Post form data to a remote url and return the http response, headers and body of the reply + * + * @param string $url + * @param array $postDataArray the key/value post data + * @param array $extraHeaders (optional) extra headers to pass to the server + * @return array(body, http response, headers) + */ + function postToWebPage($url, $postDataArray, $extraHeaders=array()) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/WebHelper_simple.class'); + return WebHelper_simple::postToWebPage($url, $postDataArray, $extraHeaders); + } + + /** + * Make an HTTP request to a remote URL and return the HTTP response status, headers and body. + * @param string $url + * @param string $requestMethod (optional) the HTTP request method, defaults to 'GET' + * @param array $requestHeaders (optional) extra headers to pass to the server + * @param string $requestBody (optional) the request body to pass to the server + * @return array($responseStatus, $responseHeaders, $responseBody) + */ + function requestWebPage($url, $requestMethod='GET', $requestHeaders=array(), $requestBody='') { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/WebHelper_simple.class'); + return WebHelper_simple::requestWebPage( + $url, $requestMethod, $requestHeaders, $requestBody); + } + + /** + * Convert the string from the source encoding to UTF8 + * + * @param string $inputString + * @param string $sourceEncoding source encoding (eg. 'ISO-8859-1'), defaults to system charset + * @return string the result + */ + function convertToUtf8($inputString, $sourceEncoding=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryCharsetHelper_simple.class'); + return GalleryCharsetHelper_simple::convertToUtf8($inputString, $sourceEncoding); + } + + /** + * Convert the string from the internal encoding (UTF-8) to target encoding. + * + * @param string $inputString + * @param string $targetEncoding target encoding (eg. 'ISO-8859-1'), defaults to system charset + * @return string the result + */ + function convertFromUtf8($inputString, $targetEncoding=null) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryCharsetHelper_simple.class'); + return GalleryCharsetHelper_simple::convertFromUtf8($inputString, $targetEncoding); + } + + /** + * mb_substr for UTF-8, with PHP fallback. Truncates incomplete HTML entity at end of result. + * @param string $string the input string containing raw UTF-8 + * @param int $start the start position + * @param int $length the length of the substring, not optional + * @return string a multibyte safe substring of input value + */ + function utf8Substring($string, $start, $length) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryCharsetHelper_simple.class'); + return GalleryCharsetHelper_simple::utf8Substring($string, $start, $length); + } + + /** + * mb_strcut for UTF-8, with PHP fallback. Truncates incomplete HTML entity at end of result. + * @param string $string the input string containing raw UTF-8 + * @param int $start the byte-offset of the start position + * @param int $length the length in bytes (not in characters), not optional + * @return string a multibyte safe substring of input value + */ + function utf8Strcut($string, $start, $length) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryCharsetHelper_simple.class'); + return GalleryCharsetHelper_simple::utf8Strcut($string, $start, $length); + } + + /** + * Returns an array of directories that can contain plugins. + * + * OBSOLETE. Remove on next major API bump. + * + * This function should only be used in special circumstances, for example when a list of all + * plugins needs to be made. Currently it returns gallery2/ and gallery2/plugins/. + */ + function getPluginBaseDirs() { + return array('base' => dirname(dirname(dirname(dirname(__FILE__)))) . '/'); + } + + /** + * Returns the base directory of the specified plugin. + * + * OBSOLETE. Remove on next major API bump. + * + * Modules should never assume the filesystem location of any module, not even the core module. + * Use this function to get the base directory of a module. Possible base directories are + * usually gallery2/ and gallery2/plugins. + * The complete list can be read with GalleryCoreApi::getPluginBaseDirs(). + * + * @param string $pluginType + * @param string $pluginId + * @param bool $clearCache (optional) force index to be reread from the filesystem + * @return string plugin base directory + */ + function getPluginBaseDir($pluginType, $pluginId, $clearCache=false) { + return dirname(dirname(dirname(dirname(__FILE__)))) . '/'; + } + + /** + * Indicates whether the specified plugin is in the default plugin directory. + * + * OBSOLETE. Remove on next major API bump. + * + * Sometimes it's useful to know just whether a plugin is in its default directory or not, + * without actually getting any information about its path. It is used for rewriting URL + * in the UrlGenerator. + * + * We don't use GalleryPlatform in this function, because it is too low-level and there are + * significant problems with making it work here. One of the problems is that it breaks dozens + * of tests that rely on UnitTestPlatform. + * + * @param string $pluginType + * @param string $pluginId + * @param bool $clearCache (optional) force index to be reread from the filesystem + * @return boolean + */ + function isPluginInDefaultLocation($pluginType, $pluginId, $clearCache=false) { + return true; + } + + /** + * Require a file, but only once. All specified paths must be relative to the gallery2 + * directory. Think of it as a virtual PHP include_path. + * + * Surprisingly, tracking what's been already loaded in a static variable is actually 10x+ + * faster than just calling require_once directly, even when using this extra API method + * to wrap it. + * + * @param string $file + * @param boolean $skipBaseDirectoryDetection deprecated + */ + function requireOnce($file, $skipBaseDirectoryDetection=false) { + static $loaded; + if (!isset($loaded[$file])) { + $loaded[$file] = 1; + if (strpos($file, '..') !== false) { + return; + } + require_once(dirname(__FILE__) . '/../../../' . $file); + } + } + + /** + * Send an email using a smarty template for the message body + * + * @param string $file template file + * @param array $data data to pass to smarty template + * @param string $from from address (null allowed) + * @param string $to to address(es) (comma separated) + * @param string $subject email subject + * @param string $headers (optional) additional headers (\r\n separated) + * @return object GalleryStatus a status code + */ + function sendTemplatedEmail($file, $data, $from, $to, $subject, $headers='') { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/MailHelper_simple.class'); + return MailHelper_simple::sendTemplatedEmail($file, $data, $from, $to, $subject, $headers); + } + + /** + * Return an error status. + * + * Starting in GalleryCoreApi 7.4 we ignore the filename and line number. You still need to + * provide them if you want to provide an error message. Next major API bump we'll remove the + * fileName and lineNumber arguments. + * + * @param int $errorCode + * @param string $fileName deprecated + * @param string $lineNumber deprecated + * @param string $errorMessage + * @return object GalleryStatus an error status + */ + function error($errorCode, $fileName='ignored', $lineNumber='ignored', $errorMessage=null) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryStatus.class'); + $status = new GalleryStatus(GALLERY_ERROR | $errorCode, $errorMessage); + $status->setStackTrace(debug_backtrace()); + return $status; + } + + /** + * Update entries in a map + * + * @param string $mapName the map we're working on + * @param array $match the entries to match + * @param array $change the values to change + * @return object GalleryStatus a status code + */ + function updateMapEntry($mapName, $match, $change) { + global $gallery; + + if (sizeof($match) == 0 || sizeof($change) == 0) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + $storage =& $gallery->getStorage(); + $ret = $storage->updateMapEntry($mapName, $match, $change); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Get entries in a map that match a criteria and return selected fields + * + * @param string $mapName the map we're working on + * @param array $select the columns to return + * @param array $match the entries to match + * @param array $optional optional arguments (eg. limit, orderBy) + * array('limit' => array('count' => #, 'offset' => #), + * 'orderBy' => array(columnName => ORDER_ASCENDING|ORDER_DESCENDING, ...)) + * @return array object GalleryStatus a status code + * array the results + */ + function getMapEntry($mapName, $select, $match=array(), $optional=array()) { + global $gallery; + + if (empty($mapName) || empty($select) || !is_array($match) || !is_array($optional)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + $storage =& $gallery->getStorage(); + list ($ret, $searchResults) = $storage->getMapEntry($mapName, $select, $match, $optional); + if ($ret) { + return array($ret, null); + } + + return array(null, $searchResults); + } + + /** + * Remove entries from a map + * + * @param string $mapName the map we're working on + * @param array $data an associative array of data about the entries to match + * @return object GalleryStatus a status code + */ + function removeMapEntry($mapName, $data) { + global $gallery; + + if (sizeof($data) == 0) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + $storage =& $gallery->getStorage(); + $ret = $storage->removeMapEntry($mapName, $data); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Add a new entry to a map + * + * @param string $mapName the map we're working on + * @param array $data an associative array of the entry data + * @return object GalleryStatus a status code + */ + function addMapEntry($mapName, $data) { + global $gallery; + + $storage =& $gallery->getStorage(); + $ret = $storage->addMapEntry($mapName, $data); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Remove ALL entries from this map.. use with caution! + * + * @param string $mapName + * @return object GalleryStatus a status code + */ + function removeAllMapEntries($mapName) { + global $gallery; + + $storage =& $gallery->getStorage(); + $ret = $storage->removeAllMapEntries($mapName); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Describe all the members of a map + * + * @param string $mapName + * @param boolean $tryAllModules true if we should scan all modules, not just the active ones + * @return array GalleryStatus a status code, + * array member name => member type + */ + function describeMap($mapName, $tryAllModules=false) { + global $gallery; + + $storage =& $gallery->getStorage(); + list ($ret, $entityInfo) = $storage->describeMap($mapName, $tryAllModules); + if ($ret) { + return array($ret, null); + } + + return array(null, $entityInfo); + } + + /** + * Describe the members, modules and parent of an entity + * + * @param string $entityName a class name + * @param boolean $tryAllModules true if we should scan all modules, not just the active ones + * @return array object GalleryStatus a status code + * entity associative array + */ + function describeEntity($entityName, $tryAllModules=false) { + global $gallery; + $storage =& $gallery->getStorage(); + list ($ret, $entityInfo) = $storage->describeEntity($entityName, $tryAllModules); + if ($ret) { + return array($ret, null); + } + + return array(null, $entityInfo); + } + + /** + * Delete the fast download file for a specific entity + * + * @param int $entityId + */ + function deleteFastDownloadFileById($entityId) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::deleteFastDownloadFileById($entityId); + } + + /** + * Create a small PHP file containing all the information we need to send a data item or + * derivative to the browser. + * Note that fast-downloads are only created for items with public permissions + * + * @param object $entity GalleryDataItem or GalleryDerivative object + * @param bool $runEvenInUnitTest (optional) force this to run, even in the unit test framework + * @return object GalleryStatus a status code + */ + function createFastDownloadFile($entity, $runEvenInUnitTest=false) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::createFastDownloadFile($entity, $runEvenInUnitTest); + } + + /** + * Get id of the album to display by default. + * @return array object GalleryStatus a status code + * int album id + */ + function getDefaultAlbumId() { + global $gallery; + + $defaultId = $gallery->getConfig('defaultAlbumId'); + if (empty($defaultId)) { + list ($ret, $defaultId) = GalleryCoreApi::getPluginParameter( + 'module', 'core', 'id.rootAlbum'); + if ($ret) { + return array($ret, null); + } + } + + return array(null, (int)$defaultId); + } + + /** + * Get id of the guest user. + * + * @return array object GalleryStatus a status code + * int user id + */ + function getAnonymousUserId() { + global $gallery; + $id = $gallery->getConfig('anonymousUserId'); + if (empty($id)) { + list ($ret, $id) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return array($ret, null); + } + } + return array(null, $id); + } + + /** + * Is the user a guest? + * + * @param int $userId id of user (default is current user) + * @return array object GalleryStatus a status code + * boolean true if anonymous + */ + function isAnonymousUser($userId=null) { + if (empty($userId)) { + global $gallery; + $userId = $gallery->getActiveUserId(); + } + list ($ret, $anonymousId) = GalleryCoreApi::getAnonymousUserId(); + if ($ret) { + return array($ret, null); + } + return array(null, $userId == $anonymousId); + } + + /** + * Remove the given sort order from any thing in the framework that uses it + * (albums and the default sort order). + * + * @param string $sortOrder + * @return object GalleryStatus a status code + */ + function deleteSortOrder($sortOrder) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_advanced.class'); + return GalleryItemHelper_advanced::deleteSortOrder($sortOrder); + } + + /** + * Remove the given renderer from all items that are using it. + * + * @param string $rendererClassName + * @return object GalleryStatus a status code + */ + function deleteRenderer($rendererClassName) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryItemHelper_advanced.class'); + return GalleryItemHelper_advanced::deleteRenderer($rendererClassName); + } + + /** + * Load template data for a theme settings form + * + * @param string $themeId if empty, site default theme is used + * @param int $itemId + * @param object GalleryTemplate $template + * @param array $form + * @return object GalleryStatus a status code + */ + function loadThemeSettingsForm($themeId, $itemId, &$template, &$form) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryThemeHelper_medium.class'); + return GalleryThemeHelper_medium::loadThemeSettingsForm( + $themeId, $itemId, $template, $form); + } + + /** + * Load the block configuration files from every module + * + * @return array object GalleryStatus a status code + * array block configurations + */ + function loadAvailableBlocks() { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryThemeHelper_medium.class'); + return GalleryThemeHelper_medium::loadAvailableBlocks(); + } + + /** + * Handle theme settings form submission + * + * @param string $themeId if empty, site default theme is used + * @param int $itemId + * @param array $form form values + * @return array object GalleryStatus a status code + * array error messages + * string localized status message + */ + function handleThemeSettingsRequest($themeId, $itemId, $form) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryThemeHelper_medium.class'); + return GalleryThemeHelper_medium::handleThemeSettingsRequest($themeId, $itemId, $form); + } + + /** + * Return true if this username is not allowed to log in (generally due to automated abuse). + * The username doesn't have to correspond to a real user in the system. + * + * @param string $userName a username + * @return array object GalleryStatus a status code + * bool true if the account is disabled + */ + function isDisabledUsername($userName) { + GalleryCoreApi::requireOnce('modules/core/classes/helpers/GalleryUserHelper_medium.class'); + return GalleryUserHelper_medium::isDisabledUsername($userName); + } + + /** + * Get a list of entity members which are allowed to be shown / set by external systems (e.g. + * via remote protocols like WebDAV, XML-RPC, etc). + * This does not include any permission checking. + * @param string $entityName name of the entity + * @return array object GalleryStatus a status code + * array(string memberName => + * array('read' => boolean true if it's ok to show, + * 'write' => boolean true if it's ok to set)) + */ + function getExternalAccessMemberList($entityName) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/helpers/GalleryEntityHelper_medium.class'); + return GalleryEntityHelper_medium::getExternalAccessMemberList($entityName); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryCoreSearch.class b/Source/gallery2/modules/core/classes/GalleryCoreSearch.class new file mode 100644 index 0000000..249facb --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryCoreSearch.class @@ -0,0 +1,199 @@ + + * @version $Revision: 15513 $ + */ +class GalleryCoreSearch extends GallerySearchInterface_1_0 { + /** + * @see GallerySearchInterface_1_0.getSearchModuleInfo + */ + function getSearchModuleInfo() { + global $gallery; + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $info = array('name' => $module->translate('Gallery Core'), + 'description' => $module->translate('Gallery Core Module'), + 'options' => array( + 'descriptions' => array( + 'description' => $module->translate('Search descriptions'), + 'enabled' => 1), + 'keywords' => array( + 'description' => $module->translate('Search keywords'), + 'enabled' => 1), + 'summaries' => array( + 'description' => $module->translate('Search summaries'), + 'enabled' => 1), + 'titles' => array('description' => $module->translate('Search titles'), + 'enabled' => 1))); + return array(null, $info); + } + + /** + * @see GallerySearchInterface_1_0.search + */ + function search($options, $criteria, $offset=0, $count=-1) { + global $gallery; + + $whereList = array(); + $whereData = array(); + $columnNumber = 0; + foreach (array('descriptions' => '[GalleryItem::description]', + 'keywords' => '[GalleryItem::keywords]', + 'summaries' => '[GalleryItem::summary]', + 'titles' => '[GalleryItem::title]') + as $key => $column) { + + if (isset($options[$key])) { + $whereList[] = "$column LIKE ?"; + $whereData[] = '%' . $criteria . '%'; + $selectMap[$column] = $columnNumber++;; + $selectList[] = $column; + } + } + + /* Always select back title and summary */ + foreach (array('[GalleryItem::title]', '[GalleryItem::summary]') as $column) { + if (!isset($selectMap[$column])) { + $selectMap[$column] = $columnNumber++; + $selectList[] = $column; + } + } + + $storage =& $gallery->getStorage(); + + list ($ret, $aclIds) = GalleryCoreApi::fetchAccessListIds( + 'core.view', $gallery->getActiveUserId()); + if ($ret) { + return array($ret, null); + } + if (empty($aclIds)) { + return array(null, + array('start' => 0, 'end' => '0', + 'count' => 0, 'results' => array())); + } + $aclMarkers = GalleryUtilities::makeMarkers(count($aclIds)); + + $countQuery = sprintf(' + SELECT + COUNT([GalleryItem::id]) + FROM + [GalleryItem], [GalleryAccessSubscriberMap] + WHERE + (' . implode(' OR ', $whereList) . ') + AND + [GalleryItem::id] = [GalleryAccessSubscriberMap::itemId] + AND + [GalleryAccessSubscriberMap::accessListId] IN (%s) + ', $aclMarkers); + + $query = sprintf(' + SELECT + [GalleryItem::id], + [GalleryUser::fullName], + [GalleryUser::userName], + [GalleryEntity::modificationTimestamp], ' . + implode(', ', $selectList) . ' + FROM + [GalleryItem], [GalleryAccessSubscriberMap], [GalleryEntity], [GalleryUser] + WHERE + (' . implode(' OR ', $whereList) . ') + AND + [GalleryItem::id] = [GalleryAccessSubscriberMap::itemId] + AND + [GalleryItem::id] = [GalleryEntity::id] + AND + [GalleryUser::id] = [GalleryItem::ownerId] + AND + [GalleryAccessSubscriberMap::accessListId] IN (%s) + ORDER BY + [GalleryEntity::modificationTimestamp] DESC, [GalleryItem::id] DESC + ', $aclMarkers); + + $data = $whereData; + $data = array_merge($data, $aclIds); + + /* Find the total */ + list ($ret, $results) = $gallery->search($countQuery, $data); + if ($ret) { + return array($ret, null); + } + $result = $results->nextResult(); + $numRows = (int)$result[0]; + + /* Get the results that we're interested in */ + list ($ret, $results) = $gallery->search( + $query, $data, array('limit' => array('offset' => $offset, 'count' => $count))); + if ($ret) { + return array($ret, null); + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + $text['description'] = $module->translate('Description'); + $text['keywords'] = $module->translate('Keywords'); + $text['summary'] = $module->translate('Summary'); + $text['title'] = $module->translate('Title'); + $text['owner'] = $module->translate('Owner'); + + $searchResults = array(); + while ($result = $results->nextResult()) { + $fields = array(); + foreach (array('[GalleryItem::title]' => $text['title'], + '[GalleryItem::summary]' => $text['summary'], + '[GalleryItem::keywords]' => $text['keywords'], + '[GalleryItem::description]' => $text['description']) + as $columnName => $fieldText) { + if (isset($selectMap[$columnName])) { + /* + * Remember that our field columns start at column index 4 + * (id, date, full name, username are columns 0-3) + */ + $fields[] = array( + 'key' => $fieldText, 'value' => $result[$selectMap[$columnName]+4]); + } + } + + $fields[] = array('key' => $text['owner'], + 'value' => !empty($result[1]) ? $result[1] : $result[2]); + $searchResults[] = array('itemId' => (int)$result[0], 'fields' => $fields); + } + + $data = array('start' => $numRows == 0 ? 0 : $offset+1, + 'end' => $numRows == 0 ? 0 : $offset + sizeof($searchResults), + 'count' => $numRows, + 'results' => $searchResults); + return array(null, $data); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryDataCache.class b/Source/gallery2/modules/core/classes/GalleryDataCache.class new file mode 100644 index 0000000..b6823ed --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryDataCache.class @@ -0,0 +1,854 @@ + + * @version $Revision: 16011 $ + * @static + */ +class GalleryDataCache { + + /** + * Get the static cache + * + * @return array the cache + * @staticvar cache the singleton cache + * @access private + */ + function &_getCache() { + static $cache; + if (!isset($cache)) { + $cache['maxKeys'] = 300; + $cache['positions'] = array(); + $cache['latestPosition'] = 0; + $cache['keys'] = array(); + $cache['protected'] = array(); + $cache['memoryCacheEnabled'] = 1; + $cache['fileCacheEnabled'] = 1; + } + return $cache; + } + + /** + * Is in-memory caching enabled? + * @return boolean true if it's enabled + */ + function isMemoryCachingEnabled() { + $cache =& GalleryDataCache::_getCache(); + return $cache['memoryCacheEnabled']; + } + + /** + * Turn in-memory caching on or off + * @param boolean $bool + */ + function setMemoryCachingEnabled($bool) { + $cache =& GalleryDataCache::_getCache(); + $cache['memoryCacheEnabled'] = $bool; + } + + /** + * Store data in the cache + * You must provide a unique key. Existing keys are overwritten. + * + * @param string $key + * @param mixed $data + * @param boolean $protected should this key survive a reset call? + */ + function put($key, $data, $protected=false) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return; + } + + $cache['keys'][$key] = $data; + if ($protected) { + $cache['protected'][$key] = 1; + } else { + $cache['positions'][$key] = $cache['latestPosition']++; + } + + if ($cache['latestPosition'] % 150 == 0) { + GalleryDataCache::_performMaintenance(); + } + } + + /** + * Remove data from the cache + * @param string $key + */ + function remove($key) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return; + } + + unset($cache['positions'][$key]); + unset($cache['keys'][$key]); + unset($cache['protected'][$key]); + } + + /** + * Remove data from the cache + * @param string $pattern regexp + */ + function removeByPattern($pattern) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return; + } + + foreach (preg_grep("/$pattern/", array_keys($cache['keys'])) as $key) { + unset($cache['positions'][$key]); + unset($cache['keys'][$key]); + unset($cache['protected'][$key]); + } + } + + /** + * Store a reference to the data in the cache + * + * You must provide a unique key. Existing keys are overwritten. + * + * @param string $key + * @param mixed $data + * @param boolean $protected (optional) should this key survive a reset call? + */ + function putByReference($key, &$data, $protected=false) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return; + } + + $cache['keys'][$key] =& $data; + if ($protected) { + $cache['protected'][$key] = 1; + } else { + $cache['positions'][$key] = $cache['latestPosition']++; + } + + if ($cache['latestPosition'] % 150 == 0) { + GalleryDataCache::_performMaintenance(); + } + } + + /** + * Perform some pruning of our cache to prevent it from growing too large when we're doing + * exceptionally long operations like adding many items in one request. + * + * @access private + */ + function _performMaintenance() { + $cache =& GalleryDataCache::_getCache(); + $numToExpire = sizeof($cache['positions']) - $cache['maxKeys']; + if ($numToExpire > 0) { + asort($cache['positions']); + foreach ($cache['positions'] as $key => $position) { + unset($cache['keys'][$key]); + unset($cache['positions'][$key]); + if ($numToExpire-- == 0) { + break; + } + } + } + } + + /** + * Retrieve data from the cache + * @param string $key + * @return mixed the cached data + */ + function get($key) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return null; + } + + if (!isset($cache['protected'][$key])) { + $cache['positions'][$key] = $cache['latestPosition']++; + } + return $cache['keys'][$key]; + } + + /** + * Does the cache contain the key specified? + * @param string $key + * @return boolean true if the cache contains the key given + */ + function containsKey($key) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return false; + } + return isset($cache['keys'][$key]); + } + + /** + * Return all the keys in the cache + * @return array string keys + */ + function getAllKeys() { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return array(); + } + + return array_keys($cache['keys']); + } + + /** + * Empty the cache of all but protected entries + * @param boolean $purgeProtected (optional) purge protected also? + */ + function reset($purgeProtected=false) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['memoryCacheEnabled']) { + return; + } + + if ($purgeProtected) { + $cache['positions'] = array(); + $cache['keys'] = array(); + } else { + foreach (array_keys($cache['keys']) as $key) { + if (!isset($cache['protected'][$key])) { + unset($cache['positions'][$key]); + unset($cache['keys'][$key]); + } + } + } + } + + /** + * Is caching to disk enabled? + * @return boolean + */ + function &isFileCachingEnabled() { + $cache =& GalleryDataCache::_getCache(); + return $cache['fileCacheEnabled']; + } + + /** + * Turn caching to disk on or off + * @param boolean $bool + + */ + function setFileCachingEnabled($bool) { + $cache =& GalleryDataCache::_getCache(); + $cache['fileCacheEnabled'] = $bool; + } + + /** + * Get the file from disk. PathInfo is of the form that can be passed to getCachePath + * @see GalleryDataCache::getCachePath + * @param array $pathInfo the path info + * @return mixed object data + */ + function &getFromDisk($pathInfo) { + $null = null; + $cache =& GalleryDataCache::_getCache(); + if (!$cache['fileCacheEnabled']) { + return $null; + } + + global $gallery; + $platform =& $gallery->getPlatform(); + $cacheFile = GalleryDataCache::getCachePath($pathInfo); + if ($platform->file_exists($cacheFile) && + $buf = $platform->file_get_contents($cacheFile)) { + /* Parse the cache file */ + $marker = strcspn($buf, '|'); + foreach (explode(',', substr($buf, 0, $marker)) as $classFile) { + if ($classFile) { + GalleryCoreApi::requireOnce($classFile); + } + } + $data = unserialize(substr($buf, $marker+1)); + return $data; + } + + return $null; + } + + /** + * Remove the cache file from disk. PathInfo is of the form that can be passed to getCachePath + * @see GalleryDataCache::getCachePath + * @param array $pathInfo the path info + */ + function removeFromDisk($pathInfo) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['fileCacheEnabled']) { + return null; + } + + global $gallery; + $platform =& $gallery->getPlatform(); + if ($pathInfo['type'] == 'entity' || + $pathInfo['type'] == 'derivative-meta' || + $pathInfo['type'] == 'module-data' || + isset($pathInfo['id'])) { + $cacheFile = GalleryDataCache::getCachePath($pathInfo); + if ($platform->file_exists($cacheFile)) { + if ($platform->is_dir($cacheFile)) { + $platform->recursiveRmDir($cacheFile); + } else { + $platform->unlink($cacheFile); + } + } + } else { + if ($pathInfo['type'] == 'module' || $pathInfo['type'] == 'theme') { + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus($pathInfo['type']); + if ($ret) { + return $ret; + } + + foreach (array_keys($pluginStatus) as $pluginId) { + GalleryDataCache::removeFromDisk(array('type' => $pathInfo['type'], + 'id' => $pluginId, + 'itemId' => $pathInfo['itemId'])); + } + } + } + } + + /** + * Put the specified data into a cache file from disk. PathInfo is of the form that can + * be passed to getCachePath. + * + * @param array $pathInfo the path info + * @param mixed $data the object data + * @param array $requiredClasses classes that must be loaded in order to retrieve this data + * @see GalleryDataCache::getCachePath + */ + function putToDisk($pathInfo, &$data, $requiredClasses=array()) { + $cache =& GalleryDataCache::_getCache(); + if (!$cache['fileCacheEnabled']) { + return; + } + + global $gallery; + $cacheFile = GalleryDataCache::getCachePath($pathInfo); + $platform =& $gallery->getPlatform(); + GalleryUtilities::guaranteeDirExists(dirname($cacheFile)); + + /* This will either succeed, or leave no trace of its attempt. */ + $platform->atomicWrite( + $cacheFile, implode(',', $requiredClasses) . "|" . serialize($data)); + } + + /** + * For a given id, return a tuple with the breakdown of the id. The caching mechanism uses + * this to determine where in the cache tree to place the file. The breakdown happens + * according to the digits of the id. The first element returned is the hundreds digit, + * the second element is the tens digit. + * + * 0..9 => 0, 0 + * 10..19 => 0, 1 + * 20..29 => 0, 2 + * ... + * 100..109 => 1, 0 + * 110..119 => 1, 1 + * + * @param int $id + * @return array the tuple + */ + function getCacheTuple($id) { + $id = "$id"; + if ($id > 100) { + return array($id[0], $id[1]); + } else if ($id > 10) { + return array('0', $id[0]); + } else { + return array('0', '0'); + } + } + + /** + * Given a path info descriptor, return the path to the appropriate cache file. + * + * Path info contains the following variables: + * type: entity, derivative, derivative-meta, module, theme + * itemId: the item id + * id: (module, theme only) a refinement of the type + * + * @return string the path + */ + function getCachePath($pathInfo) { + global $gallery; + + $base = $gallery->getConfig('data.gallery.cache'); + $cacheFile = null; + switch ($pathInfo['type']) { + case 'entity': + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + $cacheFile = sprintf('%sentity/%s/%s/%d.inc', + $base, $first, $second, $pathInfo['itemId']); + break; + + case 'derivative': + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + $cacheFile = sprintf('%sderivative/%s/%s/%d.dat', + $base, $first, $second, $pathInfo['itemId']); + break; + + case 'derivative-relative': + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + $cacheFile = sprintf('derivative/%s/%s/%d.dat', + $first, $second, $pathInfo['itemId']); + break; + + case 'derivative-meta': + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + $cacheFile = sprintf('%sderivative/%s/%s/%d-meta.inc', + $base, $first, $second, $pathInfo['itemId']); + break; + + case 'fast-download': + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + $cacheFile = sprintf('%sentity/%s/%s/%d-fast.inc', + $base, $first, $second, $pathInfo['itemId']); + break; + + case 'module': + case 'theme': + if (isset($pathInfo['id'])) { + if (strstr($pathInfo['id'], '..') !== false) { + $pathInfo['id'] = '0'; + } + if (isset($pathInfo['itemId'])) { + if (strstr($pathInfo['itemId'], '..') !== false) { + $pathInfo['itemId'] = '0'; + } + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + $cacheFile = sprintf('%s%s/%s/%s/%s/%s.inc', + $base, $pathInfo['type'], $pathInfo['id'], + $first, $second, $pathInfo['itemId']); + } else { + $cacheFile = sprintf('%s%s/%s', $base, $pathInfo['type'], $pathInfo['id']); + } + } + break; + + case 'module-data': + if (strstr($pathInfo['module'], '..') !== false) { + $pathInfo['module'] = '0'; + } + if (isset($pathInfo['itemId'])) { + list ($first, $second) = GalleryDataCache::getCacheTuple($pathInfo['itemId']); + + /* $itemId is overloaded here; sanitize it so that it only accepts [0-9A-Za-z_]+ */ + $itemId = preg_replace('/[^0-9A-Za-z_]/', '_', $pathInfo['itemId']); + $cacheFile = sprintf('%s%s/%s/%s/%s/%s.dat', + $base, 'module', $pathInfo['module'], + $first, $second, $itemId); + } else { + $cacheFile = sprintf('%s%s/%s/', $base, 'module', $pathInfo['module']); + } + break; + } + + return $cacheFile; + } + + /** + * Store the given permission => ids mapping in the session cache + * @param mixed $ids item ids (can be an array of ids or a single id) + * @param string $permission + */ + function cachePermissions($ids, $permission) { + global $gallery; + $session =& $gallery->getSession(); + if (!isset($session)) { + /* No session means we've got no cache */ + return; + } + + if (!is_array($ids)) { + $ids = array($ids); + } + + $permissions = $session->get('permissionCache'); + + /* + * We want to put all the permissions that we cache in this request into one entry in + * the session. However we're going to get several separate requests. So start by + * pruning down the total number of cached permission sets, then create a new set + * and add all cached values to that. + */ + static $initialized; + if (!isset($initialized)) { + if (!isset($permissions)) { + $permissions = array(); + } + + array_unshift($permissions, array()); + /* Trim down the cache */ + $max = 6; + if (sizeof($permissions) > $max) { + array_splice($permissions, -1, sizeof($permissions) - $max); + } + + $initialized = 1; + } + + $cacheKey = 'GalleryDataCache::cachePermissions::newEntries'; + if (GalleryDataCache::containsKey($cacheKey)) { + $newEntries = GalleryDataCache::get($cacheKey); + } else { + $newEntries = 0; + } + + /* Make sure the session permission cache is not too large */ + $maxEntries = 40; + /* Add our new data to the head of the list */ + while (($id = array_shift($ids)) && $maxEntries > $newEntries++) { + $permissions[0][$permission][$id] = 1; + } + + GalleryDataCache::put($cacheKey, $newEntries); + $session->put('permissionCache', $permissions); + } + + /** + * Look up the given permission in the cache. Return true if the permission + * exists in the cache, false if it doesn't. A return of false doesn't mean + * that the user doesn't have the permission -- just that it's not in the + * cache. + * + * @param int $id the item id + * @param string $permission + * @return boolean + */ + function hasPermission($id, $permission) { + global $gallery; + $session =& $gallery->getSession(); + if (!isset($session)) { + return; + } + + $permissions = $session->get('permissionCache'); + /* + * Since we add all new data to the head of the list, the odds are good + * that we should find our answer in the first iteration of this loop. + */ + for ($i = 0; $i < sizeof($permissions); $i++) { + if (isset($permissions[$i][$permission][$id])) { + return true; + } + } + + return false; + } + + /** + * Clear permission cache for active user. + */ + function clearPermissionCache() { + global $gallery; + $session =& $gallery->getSession(); + if (isset($session)) { + $session->remove('permissionCache'); + } + } + + /** + * Get page data from the cache. + * + * @param string $type the page type + * @param mixed $keyData data to use to generate the unique key for this cache entry + * @return array object GalleryStatus a status code + * string the page data + */ + function getPageData($type, $keyData) { + global $gallery; + + list ($ret, $acceleration) = + GalleryCoreApi::getPluginParameter('module', 'core', 'acceleration'); + if ($ret) { + return array($ret, null); + } + $acceleration = unserialize($acceleration); + + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return array($ret, null); + } + + $expiration = $acceleration[$isAnonymous ? 'guest' : 'user']['expiration']; + $phpVm = $gallery->getPhpVm(); + $cutoff = $phpVm->time() - $expiration; + + list ($ret, $aclIds) = + GalleryCoreApi::fetchAccessListIds('core.view', $gallery->getActiveUserId()); + if ($ret) { + return array($ret, null); + } + + list ($ret, $extraKey) = GalleryDataCache::_getExtraPageCacheKey(); + if ($ret) { + return array($ret, null); + } + + $key = md5(serialize($keyData) . '|' . $extraKey . '|' . implode(",", $aclIds)); + $userId = $gallery->getActiveUserId(); + /* + * Note: there is no complete index for this WHERE clause because the MySQL query optimizer + * would still use the PK for this query. This should not lead to a performance decrease as + * PK is a unique index thus returning only 0/1 rows that need to be compared with isEmpty + * and timestamp. + */ + list ($ret, $results) = GalleryCoreApi::getMapEntry('GalleryCacheMap', + array('value'), + array('key' => $key, 'type' => $type, 'userId' => $userId, + 'timestamp' => new GallerySqlFragment('>?', $cutoff), 'isEmpty' => 0)); + if ($ret) { + return array($ret, null); + } + + if ($results->resultCount() > 0) { + $result = $results->nextResult(); + $value = $result[0]; + if (function_exists('gzinflate')) { + $storage =& $gallery->getStorage(); + $value = $storage->decodeBlob($value); + $value = gzinflate($value); + } + } else { + $value = null; + } + + return array(null, $value); + } + + /** + * Store page data from the cache. + * + * @param string $type the page type + * @param int $itemId the itemId of the item this page is rendering + * @param mixed $keyData data to use to generate the unique key for this cache entry + * @param string $value the page data + * @return object GalleryStatus a status code + */ + function putPageData($type, $itemId, $keyData, $value) { + global $gallery; + + $userId = $gallery->getActiveUserId(); + list ($ret, $aclIds) = GalleryCoreApi::fetchAccessListIds('core.view', $userId); + if ($ret) { + return $ret; + } + + list ($ret, $extraKey) = GalleryDataCache::_getExtraPageCacheKey(); + if ($ret) { + return $ret; + } + + $key = md5(serialize($keyData) . '|' . $extraKey . '|' . implode(",", $aclIds)); + + if (function_exists('gzdeflate')) { + $value = gzdeflate($value); + $storage =& $gallery->getStorage(); + $value = $storage->encodeBlob($value); + } + + $phpVm = $gallery->getPhpVm(); + $now = $phpVm->time(); + $ret = GalleryCoreApi::updateMapEntry( + 'GalleryCacheMap', + array('key' => $key, 'userId' => $userId, 'itemId' => $itemId, 'type' => $type), + array('value' => $value, 'timestamp' => $now, 'isEmpty' => 0)); + + $storage =& $gallery->getStorage(); + list ($ret, $affectedRows) = $storage->getAffectedRows(); + if ($ret) { + return $ret; + } + + if (!$affectedRows) { + $ret = GalleryCoreApi::addMapEntry( + 'GalleryCacheMap', + array('key' => $key, 'value' => $value, 'userId' => $userId, + 'itemId' => $itemId, 'type' => $type, 'timestamp' => $now, 'isEmpty' => 0)); + if ($ret) { + return $ret; + } + } + + /* Clear expired data only 5% of the time. */ + $dieRoll = $phpVm->rand(1,100); + if($dieRoll <= 5){ + $ret = GalleryDataCache::_cleanPageDataCache(); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Remove all cached page data for the given item ids + * + * @param mixed $itemIds one item id, or an array of item ids + * @return object GalleryStatus a status code + */ + function removePageData($itemIds) { + $ret = GalleryCoreApi::removeMapEntry('GalleryCacheMap', array('itemId' => $itemIds)); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Should we use the cache for this page or not? Right now we cache a page if it's a GET + * request, the browser hasn't specified that it wants uncached data, and the caching policy + * for the given user class is appropriate. + * + * @param string $action + * @param string $type the page type + * @return object GalleryStatus a status code + */ + function shouldCache($action, $type) { + global $gallery; + + if (GalleryUtilities::getServerVar('REQUEST_METHOD') != 'GET') { + return array(null, false); + } + + $phpVm = $gallery->getPhpVm(); + if ($action == 'read') { + $noCache = (GalleryUtilities::getServerVar('HTTP_PRAGMA') == 'no-cache' || + GalleryUtilities::getServerVar('HTTP_CACHE_CONTROL') == 'no-cache'); + if ($noCache) { + return array(null, false); + } + } + + /* + * Don't cache guest preview pages since we want a realtime preview + * and they are infrequently visited + */ + $session =& $gallery->getSession(); + if ($session->get('theme.guestPreviewMode')) { + return array(null, false); + } + + list ($ret, $acceleration) = + GalleryCoreApi::getPluginParameter('module', 'core', 'acceleration'); + if ($ret) { + return array($ret, null); + } + $acceleration = unserialize($acceleration); + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return array($ret, null); + } + + return array(null, $acceleration[$isAnonymous ? 'guest' : 'user']['type'] == $type); + } + + /** + * Returns session related page cache key, eg. to make the page cache language sensitive + * @todo The extra key for exif module is a quick fix, not a permanent fix; it should be + * cached on the block level not on page level. + * + * @return array object GalleryStatus a status code + * string extra cache key + */ + function _getExtraPageCacheKey() { + global $gallery; + $session =& $gallery->getSession(); + + /* Add session specific flags & values to the cache key */ + list ($ret, $languageCode) = $gallery->getActiveLanguageCode(); + if ($ret) { + return array($ret, null); + } + $isEmbedded = (int)$gallery->isEmbedded(); + $extraKey = (int)($session->isUsingCookies()) . '-' . $languageCode . '-' . $isEmbedded; + + $mode = $session->get('exif.module.LoadExifInfo.mode'); + if (!empty($mode) && $mode != 'summary') { + $extraKey .= '-exif' . $mode; + } + + return array(null, $extraKey); + } + + /** + * Delete value of obsolete cache data. + * + * @return object GalleryStatus a status code + */ + function _cleanPageDataCache() { + global $gallery; + + list ($ret, $anonymousUserId) = + GalleryCoreApi::getPluginParameter('module', 'core', 'id.anonymousUser'); + if ($ret) { + return $ret; + } + + list ($ret, $acceleration) = + GalleryCoreApi::getPluginParameter('module', 'core', 'acceleration'); + if ($ret) { + return $ret; + } + $acceleration = unserialize($acceleration); + + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); + if ($ret) { + return $ret; + } + + $expiration = $acceleration[$isAnonymous ? 'guest' : 'user']['expiration']; + $phpVm = $gallery->getPhpVm(); + $cutoff = $phpVm->time() - $expiration; + + /* Use UPDATE instead of DELETE since UPDATE is faster and we reuse the rows. */ + $storage =& $gallery->getStorage(); + + if ($isAnonymous) { + $userIdForSql = (int)$anonymousUserId; + } else { + $userIdForSql = new GallerySqlFragment('<> ?', (int)$anonymousUserId); + } + + list ($ret, $results) = GalleryCoreApi::updateMapEntry('GalleryCacheMap', + array('userId' => $userIdForSql, + 'timestamp' => new GallerySqlFragment('< ?', (int)$cutoff), 'isEmpty' => 0), + array('value' => null, 'isEmpty' => 1)); + if ($ret) { + return $ret; + } + + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryDataItem.class b/Source/gallery2/modules/core/classes/GalleryDataItem.class new file mode 100644 index 0000000..12997cb --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryDataItem.class @@ -0,0 +1,418 @@ +GalleryDataItem + * @g2 GalleryItem + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15831 $ + */ +class GalleryDataItem extends GalleryItem { + + /** + * The mime type of the data file + * @var string + * + * @g2 + * @g2 mimeType + * @g2 STRING + * @g2 MEDIUM + * @g2 + * @g2 READ + * @g2 + */ + var $mimeType; + + /** + * The byte size of the data file + * @var int + * + * @g2 + * @g2 size + * @g2 INTEGER + * @g2 + * @g2 READ + * @g2 + */ + var $size; + + + /** + * Data items that can be viewed inline (photos, movies, etc) should return true. + * Items that can't be viewed inline (word documents, text, etc) should return false. + * + * Classes that return true for this query must implement getWidth() and getHeight() + * + * @return boolean true if this data item can be viewed inline + */ + function canBeViewedInline() { + return $this->_canBeViewedInline(); + } + + /** + * Helper function to check renderer and list of mime types for canBeViewedInline. + * + * @param array $mimeList (optional) list of mime types that render() will support + * @return boolean true if this data item can be viewed inline + * @access protected + */ + function _canBeViewedInline($mimeList=null) { + $renderer = $this->getRenderer(); + if (!empty($renderer)) { + list ($ret, $renderer) = + GalleryCoreApi::newFactoryInstanceById('GalleryRenderer', $renderer); + if (!$ret && isset($renderer)) { + return $renderer->canBeViewedInline($this); + } + } + if (isset($mimeList) && in_array($this->getMimeType(), $mimeList)) { + return true; + } + return false; + } + + /** + * Create a new instance of this type in the persistent store. + * + * @param int $parentId the id of the parent GalleryItem + * @param string $inputFileName the path to a data file to be contained + * @param string $mimeType the mime type of the new item + * @param string $targetName (optional) the desired name of the new item + * @param boolean $symlink (optional) a boolean true if we should symlink instead + * of copy (default is false). + * @return object GalleryStatus a status code + */ + function create($parentId, $inputFileName, $mimeType, $targetName=null, $symlink=false) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Validate the input file */ + if (empty($inputFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + if (!$platform->is_uploaded_file($inputFileName) + && !$platform->file_exists($inputFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PATH); + } + + /* + * The parent must be read locked at this point to make sure that it's + * not going to be moved around while we're adding stuff to it. + */ + if (!GalleryCoreApi::isReadLocked($parentId)) { + return GalleryCoreApi::error(ERROR_LOCK_REQUIRED); + } + + /* Set the mime type before we call the parent so that it can use this info if necessary */ + $this->setMimeType($mimeType); + + $baseName = !empty($targetName) ? $targetName : basename($inputFileName); + $ret = parent::create($parentId, $baseName); + if ($ret) { + return $ret; + } + + /* Figure out the new location for this file */ + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($parentId); + if ($ret) { + return $ret; + } + + list ($ret, $parentPath) = $parent->fetchContainerPath(); + if ($ret) { + return $ret; + } + + /* + * Grab the new name from the path component, since GalleryFileSystemEntity + * may adapt the newName to avoid conflicts + */ + $newFileName = $parentPath . $this->getPathComponent(); + + /* + * XXX: Race condition here! It's possible for two threads to be + * adding a file with the same name to the container at the same time. + * We have to write lock the container to be sure that this doesn't happen. + */ + if ($symlink) { + if (!$platform->isSymlinkSupported()) { + return GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION); + } + if (!$platform->symlink($inputFileName, $newFileName)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + } else { + /* Copy the file to its new location */ + if (!$platform->copy($inputFileName, $newFileName)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + } + + /* Set my file size */ + $this->setSize($platform->filesize($newFileName)); + + return null; + } + + /** + * @see GalleryEntity::detachLink + */ + function detachLink() { + global $gallery; + + /* Stash the linked entity because the super class is going to get rid of it */ + $linkedEntity = $this->getLinkedEntity(); + + $ret = parent::detachLink(); + if ($ret) { + return $ret; + } + + $platform =& $gallery->getPlatform(); + list ($ret, $sourcePath) = $linkedEntity->fetchPath(); + if ($ret) { + return $ret; + } + + list ($ret, $parent) = $this->fetchParent(); + if ($ret) { + return $ret; + } + + list ($ret, $newPathBase) = $parent->fetchContainerPath(); + if ($ret) { + return $ret; + } + + /* This path should already be legal, unless we screwed up elsewhere */ + $newPath = $newPathBase . $this->getPathComponent(); + + if (!$platform->copy($sourcePath, $newPath)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + + return null; + } + + /** + * Delete this GalleryEntity + * @return object GalleryStatus a status code + */ + function delete() { + global $gallery; + + /* Delete myself */ + $ret = parent::delete(); + if ($ret) { + return $ret; + } + + /* Delete our source file, if we're not a link */ + if (!$this->isLinked()) { + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + $platform =& $gallery->getPlatform(); + if ($platform->file_exists($path) && !$platform->unlink($path)) { + return GalleryCoreApi::error(ERROR_BAD_PATH, __FILE__, __LINE__, + "Could not delete $path"); + } + } + + /* Delete the fast-download cache if it exists */ + GalleryCoreApi::deleteFastDownloadFileById($this->getId()); + + return null; + } + + /** + * Scan this item's data for changes. + * @return object GalleryStatus a status code + */ + function rescan() { + global $gallery; + $platform =& $gallery->getPlatform(); + + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + $this->setSize($platform->filesize($path)); + GalleryCoreApi::deleteFastDownloadFileById($this->getId()); + + return null; + } + + /** + * Rename this DataItem + * + * @param string $newName the path component + * @return object GalleryStatus a status code + */ + function rename($newName) { + global $gallery; + + if ($newName == $this->getPathComponent()) { + return null; + } + + /* Read lock the parent so that we don't have a race condition below */ + list ($ret, $lockId) = GalleryCoreApi::acquireReadLock($this->getParentId()); + if ($ret) { + return $ret; + } + + $platform =& $gallery->getPlatform(); + + + /* Get the current path before we let the superclass do the rename */ + list ($ret, $currentPath) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + /* + * Set the new path in the database. If that succeeds then we should be ok in general. + * Jump through hoops to make sure that we release our locks at the end. + */ + $error = null; + $ret = parent::rename($newName); + + if ($ret) { + $error = $ret; + } + + /* Only rename the filesystem entity if we're not a link */ + if (!$this->isLinked()) { + + /* + * Grab the new name from the path component, since GalleryFileSystemEntity + * may adapt the newName to avoid conflicts + */ + $newName = $this->getPathComponent(); + + if (!isset($error)) { + $newPath = dirname($currentPath) . '/' . $newName; + + /* Check to see if the desired path exists */ + if ($platform->file_exists($newPath)) { + $error = GalleryCoreApi::error(ERROR_COLLISION); + } + } + + if (!isset($error)) { + if (!$platform->rename($currentPath, $newPath)) { + $error = GalleryCoreApi::error(ERROR_BAD_PATH); + } + } + } + + /* Release locks */ + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + + if (isset($error)) { + return $error; + } + + return null; + } + + /** + * Get the full path to the data file. + * + * @return array object GalleryStatus a status code, + * string a path where children can store their data files + */ + function fetchPath() { + global $gallery; + + /* + * Source files in the item's directory. But the parent may be an item that doesn't have + * its own directory, so we need to get the path of the nearest parent who is a container + * (eg an AlbumItem), because a container has a directory for the items it contains. + */ + if ($this->isLinked()) { + $target = $this->getLinkedEntity(); + } else { + $target = $this; + } + + list ($ret, $containerPath) = $target->fetchContainerPath(); + if ($ret) { + return array($ret, null); + } + + return array(null, $containerPath . $target->getPathComponent()); + } + + /** + * @see GalleryRenderer::render + * + * @todo Change this API to match that of GalleryRenderer::render() + * on the next major GalleryModule API bump. + */ + function render($format, $params) { + return null; + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryDataItem'; + } + + function getMimeType() { + return $this->mimeType; + } + + function setMimeType($mimeType) { + $this->mimeType = $mimeType; + } + + function getSize() { + return $this->size; + } + + function setSize($size) { + $this->size = $size; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryDerivative.class b/Source/gallery2/modules/core/classes/GalleryDerivative.class new file mode 100644 index 0000000..6d46689 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryDerivative.class @@ -0,0 +1,757 @@ +GalleryDerivative + * @g2 GalleryChildEntity + * @g2 + * @g2 1 + * @g2 1 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15534 $ + */ +class GalleryDerivative extends GalleryChildEntity { + + /** + * What's the source of this derivative? The source must be the id of another data container. + * @var int + * + * @g2 + * @g2 derivativeSourceId + * @g2 INTEGER + * @g2 + * @g2 + * @g2 READ + * @g2 + */ + var $derivativeSourceId; + + /** + * A sequence of operations used to derive this data from the original. + * Can be empty, because the derivative can have only a postfilter. + * @var string + * + * @g2 + * @g2 derivativeOperations + * @g2 STRING + * @g2 LARGE + * @g2 + */ + var $derivativeOperations; + + /** + * The order of this derivative relative to others + * @var int + * + * @g2 + * @g2 derivativeOrder + * @g2 INTEGER + * @g2 + * @g2 + * @g2 + */ + var $derivativeOrder; + + /** + * The size of the derived object + * @var int + * + * @g2 + * @g2 derivativeSize + * @g2 INTEGER + * @g2 READ + * @g2 + */ + var $derivativeSize; + + /** + * The type of this derivative (eg, DERIVATIVE_TYPE_IMAGE_THUMBNAIL) + * @var int + * + * @g2 + * @g2 derivativeType + * @g2 INTEGER + * @g2 + * @g2 + * @g2 + */ + var $derivativeType; + + /** + * The mime type of data file + * @var string + * + * @g2 + * @g2 mimeType + * @g2 STRING + * @g2 MEDIUM + * @g2 + * @g2 FULL + * @g2 + */ + var $mimeType; + + /** + * More operations that are applied at the very end of the derivative operations, and are + * not carried down to derivatives that depend on this one. Useful for operations like + * watermarking that change the derivative in a way that we don't want to propagate. + * Can be empty, because the derivative can have only a regular derivative operations. + * @var string + * + * @g2 + * @g2 postFilterOperations + * @g2 STRING + * @g2 LARGE + * @g2 + */ + var $postFilterOperations; + + /** + * Is the derivative broken? + * We set this to true if a toolkit operation failed, or for similar reasons. + * Can be empty, which is interpreted as false. + * @var boolean + * + * @g2 + * @g2 isBroken + * @g2 BOOLEAN + * @g2 + */ + var $isBroken; + + + /** + * Data items that can be viewed inline (photos, movies, etc) should return true. Items that + * can't be viewed inline (word documents, text, etc) should return false. + * + * Classes that return true for this query must implement getWidth() and getHeight() + * + * @return boolean true if this data item can be viewed inline + */ + function canBeViewedInline() { + return false; + } + + /** + * Delete this GalleryEntity + * + * @return object GalleryStatus a status code + */ + function delete() { + global $gallery; + + /* Find all derivatives for whom I am the source and whack them too */ + /* TODO: just fetch the ids, instead of the entire entities */ + list ($ret, $derivativesTable) = + GalleryCoreApi::fetchDerivativesBySourceIds(array($this->getId())); + if ($ret) { + return $ret; + } + + foreach ($derivativesTable as $itemId => $derivatives) { + foreach ($derivatives as $derivative) { + $ret = GalleryCoreApi::deleteEntityById($derivative->getId()); + /* + * Deletes can cascade in interesting ways. For example, deleting a derivative + * will get rid of any other derivatives that are sourced to it, so it's possible + * that deleting children here can lead to a MISSING_OBJECT result unless we re-run + * the parent/child query each time. Easier to just ignore the MISSING_OBJECT + * error since we only care that it's gone. + */ + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return $ret; + } + } + } + + /* Delete myself */ + $ret = parent::delete(); + if ($ret) { + return $ret; + } + + /* Expire our cache, and don't abort if this fails */ + $ret = $this->expireCache(); + + GalleryDataCache::removeFromDisk( + array('type' => 'derivative-meta', 'itemId' => $this->getId())); + + return null; + } + + /** + * Create a new GalleryDerivative + * + * @param int $parentId the id of the parent GalleryItem + * @return object GalleryStatus a status code + */ + function create($parentId) { + $ret = parent::create($parentId); + if ($ret) { + return $ret; + } + + $this->setDerivativeOrder(0); + $this->setIsBroken(false); + $this->setMimeType(null); + $this->setDerivativeType(null); + $this->setDerivativeSourceId(null); + $this->setDerivativeSize(null); + $this->setDerivativeOperations(null); + $this->setPostFilterOperations(null); + + return null; + } + + /** + * @see GalleryEntity::save + */ + function save($expire=true, $postEvent=true) { + $isNew = $this->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED); + + /* Save myself */ + $ret = parent::save($postEvent); + if ($ret) { + return $ret; + } + + if (!$isNew) { + /* Expire myself */ + if ($expire) { + $ret = $this->expireCache(); + if ($ret) { + return $ret; + } + } + + /* Expire anything that depends on me */ + $ret = GalleryCoreApi::expireDerivativeTreeBySourceIds(array($this->getId())); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Rebuild the cache. This should never be called directly; instead you + * should call GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($derivativeId) + * + * Rebuilds the cache and marks the derivative as broken if we failed. + * + * @return object GalleryStatus a status code + */ + function rebuildCache() { + global $gallery; + + $ret = $this->_rebuildCache(); + + if ($ret) { + /* + * Something went wrong with the toolkit + * Mark the derivative as broken for later repair attempts + */ + $this->setIsBroken(true); + if ($gallery->getDebug()) { + $gallery->debug("\n" . $ret->getAsText() . "\n"); + } + + /* + * Use our "busted" image / derivative instead. + * Figure out our target path + */ + list ($ret, $destPath) = $this->fetchPath(); + if (!$ret) { + /* Copy the broken derivative placeholder */ + $platform =& $gallery->getPlatform(); + if ($platform->copy($this->getBrokenDerivativePath(), $destPath)) { + /* Get the mime type of the placeholder */ + list ($ret, $mimeType) = + GalleryCoreApi::getMimeType($this->getBrokenDerivativePath()); + if (!$ret) { + $this->setMimeType($mimeType); + if ($platform->file_exists($destPath)) { + $size = $platform->filesize($destPath); + $this->setDerivativeSize($size); + $status = null; + } else { + $status = + GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + } else { + $status = $ret; + } + } else { + $status = GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + } else { + $status = $ret; + } + + /* + * It's important to remember that the derivative is broken and save wouldn't be + * called if we sent an error as a return value + */ + $ret = $this->save(false); + if ($status) { + return $status; + } else if ($ret) { + return $ret; + } + + /* Pretend the operation was successful */ + $ret = null; + } elseif ($this->getIsBroken()) { + $this->setIsBroken(false); + } + + return $ret; + } + + /** + * Rebuild the cache. This should never be called directly; instead you + * should call GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($derivativeId) + * + * @return object GalleryStatus a status code + * @access private + */ + function _rebuildCache() { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Figure out our target path */ + list ($ret, $destPath) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + /* Make sure our path is legit */ + GalleryUtilities::guaranteeDirExists(dirname($destPath)); + + list ($ret, $source, $operations) = $this->fetchFinalOperations(); + if ($ret) { + return $ret; + } + + if (GalleryUtilities::isA($source, 'GalleryDerivative')) { + list ($ret, $rebuild) = + GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($source->getId()); + if ($ret) { + return $ret; + } + + if ($rebuild) { + /* Fetch the updated version back from our entity cache */ + list ($ret, $source) = GalleryCoreApi::loadEntitiesById($source->getId()); + if ($ret) { + return $ret; + } + } + + list ($ret, $sourcePath) = $source->fetchPath(); + if ($ret) { + return $ret; + } + } else { + /* Get the path of the source file */ + if ($source->isLinked()) { + $linkedEntity = $source->getLinkedEntity(); + list ($ret, $sourcePath) = $linkedEntity->fetchPath(); + if ($ret) { + return $ret; + } + } else { + list ($ret, $sourcePath) = $source->fetchPath(); + if ($ret) { + return $ret; + } + } + } + + $context = array(); + if (method_exists($source, 'getWidth') && method_exists($source, 'getHeight')) { + $context['width'] = $source->getWidth(); + $context['height'] = $source->getHeight(); + if ($context['width'] == 0 && $context['height'] == 0) { + /* Don't put unknown size into context */ + $context = array(); + } + } + + /* Now apply our derivative commands to create the cache file */ + $mimeType = $source->getMimeType(); + for ($i = 0; $i < count($operations); $i++) { + if (strpos($operations[$i], '|') === false) { + list ($operationName, $operationArgs) = array($operations[$i], null); + } else { + list ($operationName, $operationArgs) = explode('|', $operations[$i]); + } + + /* Get the appropriate toolkit */ + list ($ret, $toolkit, $nextMimeType) = + GalleryCoreApi::getToolkitByOperation($mimeType, $operationName); + if ($ret) { + return $ret; + } + + if (!isset($toolkit)) { + return GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION, __FILE__, __LINE__, + "$operationName $mimeType"); + } + + /* Put look-ahead info in context, so toolkit can decide if it can + * queue up parameters in the context for later processing, or just do it. + */ + if ($i + 1 == count($operations)) { + $context['next.toolkit'] = null; + $context['next.operation'] = null; + } else { + list ($nextOperationName) = explode('|', $operations[$i+1]); + list ($ret, $nextToolkit) = + GalleryCoreApi::getToolkitByOperation($nextMimeType, $nextOperationName); + if ($ret) { + return $ret; + } + $context['next.toolkit'] = isset($nextToolkit) ? $nextToolkit : null; + $context['next.operation'] = $nextOperationName; + } + + /* Perform the operation */ + list ($ret, $outputMimeType, $context) = $toolkit->performOperation( + $mimeType, $operationName, $sourcePath, $destPath, + explode(',', $operationArgs), $context); + if ($ret) { + return $ret; + } + + /* Prepare for the next operation */ + $sourcePath = $destPath; + $mimeType = $outputMimeType; + } + if (empty($operations)) { + /* No operations.. just copy source file */ + if (!$platform->copy($sourcePath, $destPath)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + } + + /* Get the size of the file */ + if ($platform->file_exists($destPath)) { + $size = $platform->filesize($destPath); + } else { + $size = -1; + } + + /* Update our info */ + $this->setMimeType($mimeType); + $this->setDerivativeSize($size); + + $data = array('derivativePath' => $destPath, + 'derivativeType' => $this->getDerivativeType(), + 'mimeType' => $this->getMimeType(), + 'parentId' => $this->getParentId()); + list ($ret, $data['pseudoFileName']) = GalleryUtilities::getPseudoFileName($this); + if ($ret) { + return $ret; + } + + GalleryDataCache::putToDisk( + array('type' => 'derivative-meta', 'itemId' => $this->getId()), $data); + + GalleryCoreApi::deleteFastDownloadFileById($this->getId()); + $ret = GalleryCoreApi::createFastDownloadFile($this); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Get the complete set of operations required by this derivative. This will return + * the original source GalleryDataItem or preferred GalleryDerivative and an array of + * all the operations that must be performed in order to create the correct output + * file, including the post filter. + * + * @return array object GalleryStatus a status code + * object GalleryDataItem data item or GalleryDerivative preferred derivative + * array the operations + */ + function fetchFinalOperations() { + /* Load the source */ + list ($ret, $source) = GalleryCoreApi::loadEntitiesById($this->getDerivativeSourceId()); + if ($ret) { + return array($ret, null, null); + } + + if (GalleryUtilities::isA($source, 'GalleryDerivative')) { + /* + * In order to build our derivative, we need to complete set of + * commands from the original source file. We can't rely on + * intervening files for two reasons: + * 1. Larger derivatives sourced on derivatives would lead to upsampling + * 2. The source derivative's cached data file may have postfilters applied, which we + * don't want for our derivative + * + * So seek backwards to the source file, then merge and apply all + * the derivative operations from the intervening parents to + * discover the correct operations for this derivative. + */ + $sources = array($source, $this); + while (GalleryUtilities::isA($sources[0], 'GalleryDerivative')) { + list ($ret, $tmp) = + GalleryCoreApi::loadEntitiesById($sources[0]->getDerivativeSourceId()); + if ($ret) { + return array($ret, null, null); + } + + if (!GalleryUtilities::isA($tmp, 'GalleryDerivative')) { + /* We've found our true source */ + $source = $tmp; + break; + } + + array_unshift($sources, $tmp); + } + + /* + * If we have a preferred at the head of the chain, and that preferred has no + * postfilter operations then use that as the source. We won't run any risk of + * upsampling, and it is as good a source as the original (better in fact, since we + * skip at least one operation). + */ + if (count($sources) > 1 && /* we have at least one derivative in the chain */ + $sources[0]->getDerivativeType() == DERIVATIVE_TYPE_IMAGE_PREFERRED && + strlen($sources[0]->getPostFilterOperations()) == 0) { + $source = array_shift($sources); /* the preferred is now our source */ + } + + /* + * Now gather up all the remaining operations, and reduce them to the smallest + * possible sequence. + */ + $operations = $sources[0]->getDerivativeOperations(); + for ($i = 1; $i < sizeof($sources); $i++) { + foreach (explode(';', $sources[$i]->getDerivativeOperations()) as $newOperation) { + list ($ret, $operations) = + GalleryCoreApi::mergeDerivativeOperations($operations, $newOperation); + if ($ret) { + return array($ret, null, null); + } + } + } + } else { + $operations = $this->getDerivativeOperations(); + } + + /* Merge in the postfilter operations */ + $postFilters = $this->getPostFilterOperations(); + if (empty($operations)) { + $operations = empty($postFilters) ? array() : explode(';', $postFilters); + } else { + foreach (explode(';', $postFilters) as $newOperation) { + list ($ret, $operations) = + GalleryCoreApi::mergeDerivativeOperations($operations, $newOperation); + if ($ret) { + return array($ret, null, null); + } + } + + $operations = explode(';', $operations); + } + + return array(null, $source, $operations); + } + + /** + * Is the cache for this item still current? + * If the cache is expired, it can be rebuilt with rebuildCache() + * + * @return array object GalleryStatus a status code, + * boolean false if the item is expired (ie, empty cache) + */ + function isCacheCurrent() { + global $gallery; + $platform =& $gallery->getPlatform(); + + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return array($ret, false); + } + + $bool = $platform->file_exists($path); + return array(null, $bool); + } + + /** + * Expire the cache. + * @return object GalleryStatus a status code + */ + function expireCache() { + global $gallery; + $platform =& $gallery->getPlatform(); + + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + if ($platform->file_exists($path)) { + $platform->unlink($path); + } + + GalleryCoreApi::deleteFastDownloadFileById($this->getId()); + + return null; + } + + /** + * Get the full path to the data file. + * + * @return array object GalleryStatus a status code, + * string a path where children can store their data files + */ + function fetchPath() { + global $gallery; + + $cacheFile = GalleryDataCache::getCachePath(array('type' => 'derivative', + 'itemId' => $this->getId())); + return array(null, $cacheFile); + } + + /** + * Render this item in the given format. For example, + * GalleryDerivativeImage may want to render as an tag in the HTML format. + * + * @param string $format the format (eg. HTML) + * @param object GalleryDataItem $item the data item + * @param array $params format specific key value pairs + * @return string output + */ + function render($format, $item, $params) { + return null; + } + + /** + * Return true if we have no derivative or postfilter operations + * @return boolean + */ + function hasNoOperations() { + $derivativeOperations = $this->getDerivativeOperations(); + $postfilterOperations = $this->getPostFilterOperations(); + return (empty($derivativeOperations) && empty($postfilterOperations)); + } + + /** + * Return path for broken derivative placeholder which is shown when we fail to generate a + * derivative item. Descendent classes can override this method to use their own broken + * derivative placeholder, which can be of any mime type, eg. a wav file for broken audio + * derivatives, etc. + * + * @return string the path of the broken derivative medium + */ + function getBrokenDerivativePath() { + /* Default to the broken-image.gif */ + return dirname(__FILE__) . '/../data/broken-image.gif'; + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryDerivative'; + } + + function getDerivativeSourceId() { + return $this->derivativeSourceId; + } + + function setDerivativeSourceId($derivativeSourceId) { + $this->derivativeSourceId = $derivativeSourceId; + } + + function getDerivativeOperations() { + return $this->derivativeOperations; + } + + function setDerivativeOperations($derivativeOperations) { + $this->derivativeOperations = $derivativeOperations; + } + + function getDerivativeOrder() { + return $this->derivativeOrder; + } + + function setDerivativeOrder($derivativeOrder) { + $this->derivativeOrder = $derivativeOrder; + } + + function getDerivativeSize() { + return $this->derivativeSize; + } + + function setDerivativeSize($derivativeSize) { + $this->derivativeSize = $derivativeSize; + } + + function getDerivativeType() { + return $this->derivativeType; + } + + function setDerivativeType($derivativeType) { + $this->derivativeType = $derivativeType; + } + + function getMimeType() { + return $this->mimeType; + } + + function setMimeType($mimeType) { + $this->mimeType = $mimeType; + } + + function getPostFilterOperations() { + return $this->postFilterOperations; + } + + function setPostFilterOperations($postFilterOperations) { + $this->postFilterOperations = $postFilterOperations; + } + + function getIsBroken() { + return $this->isBroken; + } + + function setIsBroken($isBroken) { + $this->isBroken = $isBroken; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryDerivativeImage.class b/Source/gallery2/modules/core/classes/GalleryDerivativeImage.class new file mode 100644 index 0000000..86313eb --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryDerivativeImage.class @@ -0,0 +1,257 @@ +GalleryDerivativeImage + * @g2 GalleryDerivative + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15534 $ + */ +class GalleryDerivativeImage extends GalleryDerivative { + + /** + * The width of the image. + * @var int + * + * @g2 + * @g2 width + * @g2 INTEGER + * @g2 READ + * @g2 + */ + var $width; + + /** + * The height of the image. + * @var int + * + * @g2 + * @g2 height + * @g2 INTEGER + * @g2 READ + * @g2 + */ + var $height; + + + /** + * @see GalleryDerivative::canBeViewedInline + */ + function canBeViewedInline() { + return true; + } + + /** + * Create a new GalleryDerivativeImage + * + * @param int $parentId the id of the parent GalleryItem + * @param int $derivativeType the type of derivative image + * @return object GalleryStatus a status code + */ + function create($parentId, $derivativeType) { + global $gallery; + $parentId = (int)$parentId; + + if ($derivativeType != DERIVATIVE_TYPE_IMAGE_THUMBNAIL && + $derivativeType != DERIVATIVE_TYPE_IMAGE_RESIZE && + $derivativeType != DERIVATIVE_TYPE_IMAGE_PREFERRED) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER, + __FILE__, __LINE__, + "Unknown derivative type: $derivativeType"); + } + + /* We can't have more than one THUMBNAIL or PREFERRED */ + if ($derivativeType == DERIVATIVE_TYPE_IMAGE_THUMBNAIL || + $derivativeType == DERIVATIVE_TYPE_IMAGE_PREFERRED) { + + $query = ' + SELECT + COUNT([GalleryChildEntity::id]) + FROM + [GalleryChildEntity], [GalleryDerivative] + WHERE + ([GalleryChildEntity::parentId] = ? + AND [GalleryDerivative::derivativeType] = ?) + AND ([GalleryChildEntity::id] = [GalleryDerivative::id]) + '; + + list ($ret, $searchResults) = + $gallery->search($query, array($parentId, $derivativeType)); + if ($ret) { + return $ret; + } + + $result = $searchResults->nextResult(); + if ($result[0] > 0) { + return GalleryCoreApi::error(ERROR_COLLISION, __FILE__, __LINE__, + sprintf('Too many %s (type: %s, count: %d)', + ($derivativeType == DERIVATIVE_TYPE_IMAGE_PREFERRED ? + 'preferreds' : 'thumbnails'), + $derivativeType, $result[0])); + } + } + + $ret = parent::create($parentId); + if ($ret) { + return $ret; + } + + /* Save our derivative type */ + $this->setDerivativeType($derivativeType); + $this->setWidth(0); + $this->setHeight(0); + + return null; + } + + /** + * Rebuild the cache. + * Break apart the derivative commands and feed them into the appropriate graphics toolkits + * to perform the transformation necessary to create this derivative from its source. + * + * @return object GalleryStatus a status code + */ + function rebuildCache() { + global $gallery; + + /* Figure out our target path */ + list ($ret, $destPath) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + $ret = parent::rebuildCache(); + if ($ret) { + return $ret; + } + + /* Update our dimensions */ + $mimeType = $this->getMimeType(); + list ($ret, $toolkit) = GalleryCoreApi::getToolkitByProperty($mimeType, 'dimensions'); + if ($ret) { + return $ret; + } + + if (isset($toolkit)) { + list ($ret, $dimensions) = $toolkit->getProperty($mimeType, 'dimensions', $destPath); + if ($ret) { + return $ret; + } + + $this->setWidth($dimensions[0]); + $this->setHeight($dimensions[1]); + } + + return null; + } + + /** + * @see GalleryDerivative::render + */ + function render($format, $item, $params) { + global $gallery; + + switch($format) { + case 'HTML': + $urlGenerator =& $gallery->getUrlGenerator(); + $src = $urlGenerator->generateUrl( + array('view' => 'core.DownloadItem', 'itemId' => $this->getId(), + 'serialNumber' => $this->getSerialNumber()), + array('forceFullUrl' => !empty($params['forceFullUrl']))); + + list ($width, $height) = array($this->getWidth(), $this->getHeight()); + + /* Shrink our dimensions if necessary */ + if (isset($params['maxSize'])) { + list ($width, $height) = + GalleryUtilities::shrinkDimensionsToFit($width, $height, $params['maxSize']); + unset($params['maxSize']); + } + + $sizeStr = ''; + if ($width > 0 && $height > 0) { + $sizeStr = sprintf(' width="%s" height="%s"', $width, $height); + } + if (!isset($params['alt'])) { + $params['alt'] = + $item->getTitle() ? GalleryUtilities::markup($item->getTitle(), 'strip') + : $item->getPathComponent(); + } + if (!isset($params['longdesc'])) { + $longdesc = preg_replace('/[\r\n]+/', ' ', + GalleryUtilities::markup($item->getDescription(), 'strip')); + if (!empty($longdesc)) { + $params['longdesc'] = $longdesc; + } + } + + $html = sprintf(' $value) { + if (isset($value)) { + $html .= " $attr=\"$value\""; + } + } + return $html . '/>'; + + default: + return null; + } + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryDerivativeImage'; + } + + function getWidth() { + return $this->width; + } + + function setWidth($width) { + $this->width = $width; + } + + function getHeight() { + return $this->height; + } + + function setHeight($height) { + $this->height = $height; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryDynamicAlbum.class b/Source/gallery2/modules/core/classes/GalleryDynamicAlbum.class new file mode 100644 index 0000000..5c861fa --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryDynamicAlbum.class @@ -0,0 +1,128 @@ + + * @version $Revision: 15513 $ + */ +class GalleryDynamicAlbum extends GalleryItem { + + /** + * Type name info for this dynamic album + * @var array + * @access private + */ + var $_itemTypeName; + + + /** + * Initialize dynamic album + * + * @param string $title localized title + * @param array $itemTypeNameData itemTypeName data, eg. array(Photo, photo), array(Foto, foto) + */ + function create($title, $itemTypeNameData=null) { + global $gallery; + + $this->setId(null); + $this->setParentId(null); + $this->setPathComponent(null); + $this->setEntityType($this->getClassName()); + $this->setIsLinkable(false); + $this->setLinkId(null); + $this->setLinkedEntity(null); + $this->setOnLoadHandlers(null); + + $this->setTitle($title); + $this->setSummary(null); + $this->setDescription(null); + $this->setKeywords(null); + $this->setCreationTimestamp(time()); + $this->setOriginationTimestamp(time()); + $this->setModificationTimestamp(time()); + $this->setViewedSinceTimestamp(time()); + $this->setCanContainChildren(true); + $this->setOwnerId($gallery->getActiveUserId()); + + if (!empty($itemTypeNameData)) { + $this->_itemTypeName = $itemTypeNameData; + } else { + $this->_itemTypeName = array(array('Dynamic Album', 'dynamic album')); + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + $this->_itemTypeName[] = $this->_itemTypeName[0]; + } else { + $this->_itemTypeName[] = + array($module->translate('Dynamic Album'), $module->translate('dynamic album')); + } + } + + return null; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function itemTypeName($localized = true) { + return $this->_itemTypeName[$localized ? 1 : 0]; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function getClassName() { + return 'GalleryDynamicAlbum'; + } + + /** + * @see GalleryEntity::delete + */ + function delete() { + return GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION); + } + + /** + * @see GalleryItem::move + */ + function move($newParentId) { + return GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION); + } + + /** + * @see GalleryEntity::save + */ + function save($postEvent=true) { + return GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION); + } + + /** + * @see GalleryEntity::refresh + */ + function refresh() { + return array(null, $this); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryEmbed.class b/Source/gallery2/modules/core/classes/GalleryEmbed.class new file mode 100644 index 0000000..c8111cf --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryEmbed.class @@ -0,0 +1,909 @@ + true)) followed by other + * GalleryEmbed/G2 calls, end with GalleryEmbed::done() <-- REQUIRED + * 3) Single GalleryEmbed::logout(array(..)) call + * + * All of these methods should be accessed in a static sense, ie: GalleryEmbed::handleRequest(); + * + * @package GalleryCore + * @subpackage Classes + * @author Alan Harder + * @author Andy Staudacher + * @version $Revision: 15718 $ + * @static + */ +class GalleryEmbed { + + /** + * Return the major and minor version of the Embedding API. + * Make sure to specify the 'apiVersion' parameter in the GalleryEmbed::init call! + * + * @see GalleryCoreApi::getApiVersion, the same rules and notes apply to the Embedding API + * @return array major number, minor number + */ + function getApiVersion() { + return array(1, 2); + } + + /** + * Return whether the supplied Embedding API version is compatible or not + * + * @param array $apiVersion int major, int minor + * @return boolean + */ + function isCompatibleWithEmbedApi($apiVersion) { + return GalleryUtilities::isCompatibleWithApi($apiVersion, GalleryEmbed::getApiVersion()); + } + + /** + * Initialize Gallery; must be called before most GalleryEmbed methods can be used. + * This method should only be called once during the lifetime of the request. + * + * @param array $initParams (optional--required before calling handleRequest) ( + * 'embedUri' => URI to access G2 via CMS application + * (example: /portal/index.php?module=gallery2) + * 'g2Uri' = URL path to G2 + * (example: /gallery2/, see extended docs for special character '|') + * 'loginRedirect' => (optional) URI for redirect to CMS login view (example: /cms/index.php) + * 'embedSessionString' => (optional) To support cookieless browsing, pass in key=value for + * CMS session key and session id value to be added as query parameter in urls + * 'gallerySessionId' => (optional) To support cookieless browsing, pass in G2 session id + * (when cookies not in use, CMS must track this value between requests) + * 'activeUserId' => (optional) external user id of active user + * (empty string for anonymous/guest user) + * 'activeLanguage' => (optional) language code in use for this session + * 'fullInit' => (optional) call GalleryInitSecondPass + * (only use when not calling handleRequest) + * 'apiVersion' => (optional) array int major, int minor (check if your integration is + * compatible) + * ) + * @return object GalleryStatus a status object + */ + function init($initParams=array()) { + /* GDC as static var replacement for better testability */ + static $firstCacheKey = 'GalleryEmbed::initFirstPass'; + static $secondCacheKey = 'GalleryEmbed::initSecondPass'; + + /* Only InitFirstPass if not already done so in a prior call */ + if (!GalleryDataCache::containsKey($firstCacheKey)) { + GalleryEmbed::_saveState(); + if (isset($initParams['embedUri'])) { + $initParams['baseUri'] = $initParams['embedUri']; + unset($initParams['embedUri']); + } + $ret = GalleryInitFirstPass($initParams); + if ($ret) { + return $ret; + } + GalleryDataCache::put($firstCacheKey, true); + } + + if (isset($initParams['apiVersion'])) { + if (!GalleryEmbed::isCompatibleWithEmbedApi($initParams['apiVersion'])) { + return GalleryCoreApi::error(ERROR_PLUGIN_VERSION_MISMATCH, __FILE__, __LINE__, + 'Embedding API version is incompatible'); + } + } + + global $gallery; + $gallery->setConfig('login', false); + if (isset($initParams['loginRedirect'])) { + $gallery->setConfig('loginRedirect', array('href' => $initParams['loginRedirect'])); + } + + if (isset($initParams['activeUserId'])) { + $ret = GalleryEmbed::checkActiveUser($initParams['activeUserId']); + if ($ret) { + return $ret; + } + } + + if (empty($initParams) || (isset($initParams['fullInit']) && $initParams['fullInit'])) { + /* Only InitSecondPass if not already done so in a prior call */ + if (!GalleryDataCache::containsKey($secondCacheKey)) { + $ret = GalleryInitSecondPass(); + if ($ret) { + return $ret; + } + GalleryDataCache::put($secondCacheKey, true); + } + } + + return null; + } + + /** + * Complete the G2 transaction. + * + * @return object GalleryStatus a status object + */ + function done() { + global $gallery; + $session =& $gallery->getSession(); + $ret = $session->save(); + if ($ret) { + return $ret; + } + if ($gallery->isStorageInitialized()) { + $storage =& $gallery->getStorage(); + $ret = $storage->commitTransaction(); + if ($ret) { + return $ret; + } + } + GalleryEmbed::_restoreState(); + return null; + } + + /** + * Process the G2 request. + * Return value contains 'isDone'=>true if output has already been sent + * (redirect, or output from G2 immediate view like core.DownloadItem) and + * CMS should not send any additional output. If isDone is false then check + * headHtml and bodyHtml keys for content to display via CMS. + * Include activeUserName parameter if integration is not calling GalleryEmbed::login() + * at CMS login time. + * themeData is set if isDone is false and populated with the corresponding template variable. + * + * @return array ('isDone' => boolean, + * [optional: 'headHtml' => string, 'bodyHtml' => string, + * 'sidebarBlocksHtml' => array('blockHtml', 'blockHtml'), + * 'themeData' => mixed theme data] + */ + function handleRequest() { + $result = GalleryMain(true); + GalleryEmbed::_restoreState(); + return $result; + } + + /** + * Ensure G2 session has same active user as CMS session. + * No need to call directly if activeUserId is passed to init(). + * + * @param string $activeUserId external user id of active user + * (null or empty for anonymous/guest user) + * @return object GalleryStatus a status object + * @access private + */ + function checkActiveUser($activeUserId) { + global $gallery; + $session =& $gallery->getSession(); + + $idInSession = $session->get('embed.id.externalUser'); + if ($idInSession === $activeUserId) { + return null; + } + + $language = $session->get('core.language'); + if (empty($activeUserId)) { + if ($session->isPersistent()) { + /* Logout */ + $ret = $session->reset(); + if ($ret) { + return $ret; + } + } + $session->put('embed.id.externalUser', $activeUserId); + } else { + /* Set G2 active user */ + list ($ret, $user) = + GalleryCoreApi::loadEntityByExternalId($activeUserId, 'GalleryUser'); + if ($ret) { + return $ret; + } + $gallery->setActiveUser($user); + $session->put('embed.id.externalUser', $activeUserId); + } + + /* The session language has precedence over the user default language */ + if (!empty($language)) { + $session->put('core.language', $language); + } + + return null; + } + + /** + * Login the specified user in the G2 session. + * This method is not usually needed (passing activeUserId to init() or calling + * checkActiveUser will login the user as needed); this method included for completeness. + * + * @param string $extUserId external user id + * @return object GalleryStatus a status object + */ + function login($extUserId) { + global $gallery; + list ($ret, $user) = GalleryCoreApi::loadEntityByExternalId($extUserId, 'GalleryUser'); + if ($ret) { + return $ret; + } + $gallery->setActiveUser($user); + $session =& $gallery->getSession(); + $session->put('embed.id.externalUser', $extUserId); + + $ret = $session->regenerate(); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Reset the G2 session. Do not call init() before this method. + * + * Specify embedUri (the same embedUri as the one from ::init()) + * + * @param array $params ('embedUri' => string the embedUri (e.g. /cms/index.php)) + * @return object GalleryStatus a status object + */ + function logout($params=array()) { + require_once(dirname(__FILE__) . '/GalleryCoreApi.class'); + require_once(dirname(__FILE__) . '/GallerySession.class'); + $hasSession = GalleryUtilities::getCookieVar(SESSION_ID_PARAMETER); + if (empty($hasSession)) { + $hasSession = GalleryUtilities::hasRequestVariable(SESSION_ID_PARAMETER); + } + if (!empty($hasSession)) { + GalleryEmbed::_saveState(); + $ret = GalleryInitFirstPass($params); + if ($ret) { + return $ret; + } + global $gallery; + $session =& $gallery->getSession(); + $ret = $session->reset(); + if ($ret) { + return $ret; + } + /* Commit the transaction */ + $ret = GalleryEmbed::done(); + if ($ret) { + return $ret; + } + } + return null; + } + + /** + * Retrieve G2 session id. This method can be called after init() or handleRequest(). + * + * @return string session id + */ + function getSessionId() { + global $gallery; + $session =& $gallery->getSession(); + return $session->getId(); + } + + /** + * Save any state we'd like to restore after G2 processing. + */ + function _saveState() { + if (isset($GLOBALS['ADODB_FETCH_MODE'])) { + GalleryDataCache::put('GalleryEmbed::ADODB_FETCH_MODE', $GLOBALS['ADODB_FETCH_MODE']); + } + } + + /** + * Restore state before returning control to embedding app. + */ + function _restoreState() { + if (GalleryDataCache::containsKey('GalleryEmbed::ADODB_FETCH_MODE')) { + $GLOBALS['ADODB_FETCH_MODE'] = GalleryDataCache::get('GalleryEmbed::ADODB_FETCH_MODE'); + } + } + + /** + * Create a G2 user. + * + * @param string $extUserId external user id + * @param array $args user data (username required; others optional) + * ['username' => string, 'email' => string, 'fullname' => string, + * 'language' => string, 'password' => string, + * 'hashedpassword' => string, 'hashmethod' => string, + * 'creationtimestamp' => integer] + * @return object GalleryStatus a status object + */ + function createUser($extUserId, $args) { + if (empty($extUserId) || empty($args['username'])) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + list ($ret, $user) = GalleryCoreApi::newFactoryInstance('GalleryEntity', 'GalleryUser'); + if ($ret) { + return $ret; + } + if (!isset($user)) { + return GalleryCoreApi::error(ERROR_MISSING_OBJECT); + } + + $ret = $user->create($args['username']); + if ($ret) { + return $ret; + } + GalleryEmbed::_setUserData($user, $args, true); + $ret = $user->save(); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::addMapEntry( + 'ExternalIdMap', + array('externalId' => $extUserId, + 'entityType' => 'GalleryUser', 'entityId' => $user->getId())); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Update a G2 user. + * + * @param string $extUserId external user id + * @param array $args user data + * ['username' => string, 'email' => string, 'fullname' => string, + * 'language' => string, 'password' => string, + * 'hashedpassword' => string, 'hashmethod' => string, + * 'creationtimestamp' => integer] + * @return object GalleryStatus a status object + */ + function updateUser($extUserId, $args) { + list ($ret, $user) = GalleryCoreApi::loadEntityByExternalId($extUserId, 'GalleryUser'); + if ($ret) { + return $ret; + } + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($user->getId()); + if ($ret) { + return $ret; + } + + GalleryEmbed::_setUserData($user, $args); + $ret = $user->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Set values in user object based on given args. + * + * @param object GalleryUser $user + * @param array $args additional user data + * @access private + */ + function _setUserData(&$user, $args, $create = false) { + if (!empty($args['password'])) { + $user->changePassword($args['password']); + } elseif (isset($args['hashmethod']) && $args['hashmethod'] == 'md5' + && !empty($args['hashedpassword'])) { + $user->setHashedPassword($args['hashedpassword']); + } elseif ($create) { + /* Create a random password */ + $user->changePassword('G' . rand(100000,999999) . '2'); + } + + if (isset($args['username'])) { + $user->setUserName($args['username']); + } + if (isset($args['email'])) { + $user->setEmail($args['email']); + } + if (isset($args['fullname'])) { + $user->setFullName($args['fullname']); + } + if (isset($args['language'])) { + list ($languageCode) = GalleryTranslator::getSupportedLanguageCode($args['language']); + $user->setLanguage($languageCode); + } + if (isset($args['creationtimestamp'])) { + $user->setCreationTimestamp($args['creationtimestamp']); + } + } + + /** + * Delete a G2 user. + * + * @param string $extUserId external user id + * @return object GalleryStatus a status object + */ + function deleteUser($extUserId) { + list ($ret, $user) = GalleryCoreApi::loadEntityByExternalId($extUserId, 'GalleryUser'); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::deleteEntityById($user->getId()); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::removeMapEntry( + 'ExternalIdMap', + array('externalId' => $extUserId, 'entityType' => 'GalleryUser')); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Create a G2 group. + * + * @param string $extGroupId external group id + * @param string $groupName group name + * @return object GalleryStatus a status object + */ + function createGroup($extGroupId, $groupName) { + if (empty($extGroupId) || empty($groupName)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + list ($ret, $group) = GalleryCoreApi::newFactoryInstance('GalleryEntity', 'GalleryGroup'); + if ($ret) { + return $ret; + } + if (!isset($group)) { + return GalleryCoreApi::error(ERROR_MISSING_OBJECT); + } + + $ret = $group->create($groupName); + if ($ret) { + return $ret; + } + $ret = $group->save(); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::addMapEntry( + 'ExternalIdMap', + array('externalId' => $extGroupId, + 'entityType' => 'GalleryGroup', 'entityId' => $group->getId())); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Delete a G2 group. + * + * @param string $extGroupId external group id + * @return object GalleryStatus a status object + */ + function deleteGroup($extGroupId) { + list ($ret, $group) = GalleryCoreApi::loadEntityByExternalId($extGroupId, 'GalleryGroup'); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::deleteEntityById($group->getId()); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::removeMapEntry( + 'ExternalIdMap', array('externalId' => $extGroupId, 'entityType' => 'GalleryGroup')); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Update a G2 Group. + * + * @param string $extGroupId external group id + * @param array $args group data + * ['groupname' => string] + * @return object GalleryStatus a status object + */ + function updateGroup($extGroupId, $args) { + list ($ret, $group) = GalleryCoreApi::loadEntityByExternalId($extGroupId, 'GalleryGroup'); + if ($ret) { + return $ret; + } + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($group->getId()); + if ($ret) { + return $ret; + } + + if (isset($args['groupname'])) { + $group->setGroupName($args['groupname']); + } + $ret = $group->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Add a user to a G2 group. + * + * @param string $extUserId external user id + * @param string $extGroupId external group id + * @return object GalleryStatus a status object + */ + function addUserToGroup($extUserId, $extGroupId) { + list ($ret, $user) = GalleryCoreApi::loadEntityByExternalId($extUserId, 'GalleryUser'); + if ($ret) { + return $ret; + } + list ($ret, $group) = GalleryCoreApi::loadEntityByExternalId($extGroupId, 'GalleryGroup'); + if ($ret) { + return $ret; + } + /* First check if the user is not already a member of the group */ + list ($ret, $membership) = GalleryCoreApi::fetchGroupsForUser($user->getId()); + if ($ret) { + return $ret; + } + /* Only add user to group if not already done so */ + if (!isset($membership[$group->getId()])) { + $ret = GalleryCoreApi::addUserToGroup($user->getId(), $group->getId()); + if ($ret) { + return $ret; + } + } + return null; + } + + /** + * Remove a user from a G2 group. + * + * @param string $extUserId external user id + * @param string $extGroupId external group id + * @return object GalleryStatus a status object + */ + function removeUserFromGroup($extUserId, $extGroupId) { + list ($ret, $user) = GalleryCoreApi::loadEntityByExternalId($extUserId, 'GalleryUser'); + if ($ret) { + return $ret; + } + list ($ret, $group) = GalleryCoreApi::loadEntityByExternalId($extGroupId, 'GalleryGroup'); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::removeUserFromGroup($user->getId(), $group->getId()); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Perform a search across all available searchable modules. + * + * @param string $searchString search criteria + * @param int $resultsPerModule (optional) max number of results to return from each module, + * defaults to 3 + * @return array object GalleryStatus a status object + * array of {module_id} => results array plus 'name' key with module name + * @see GallerySearchInterface_1_0::search for contents of results arrays + */ + function searchScan($searchString, $resultsPerModule=3) { + global $gallery; + + $session =& $gallery->getSession(); + $ret = $session->start(); + if ($ret) { + return array($ret, null); + } + $session->doNotUseTempId(); + + GalleryCoreApi::requireOnce('modules/search/classes/SearchUtilities.class'); + $searchInstances = $searchResults = array(); + list ($ret, $ids) = + GalleryCoreApi::getAllFactoryImplementationIds('GallerySearchInterface_1_0'); + if ($ret) { + return array($ret, null); + } + + foreach ($ids as $id => $className) { + list ($ret, $searchInstances[$id]) = + GalleryCoreApi::newFactoryInstance('GallerySearchInterface_1_0', $className); + if ($ret) { + return array($ret, null); + } + } + foreach ($searchInstances as $id => $instance) { + list ($ret, $searchInfo) = $instance->getSearchModuleInfo(); + if ($ret) { + return array($ret, null); + } + $options = array(); + foreach ($searchInfo['options'] as $option => $info) { + if ($info['enabled']) { + $options[$option] = true; + } + } + list ($ret, $searchResults[$id]) = + $instance->search($options, + SearchUtilities::sanitizeSearchCriteria($searchString), + 0, $resultsPerModule); + if ($ret) { + return array($ret, null); + } + $searchResults[$id]['name'] = $searchInfo['name']; + } + return array(null, $searchResults); + } + + /** + * Search specific module. + * + * @param string $searchString search criteria + * @param string $moduleId id of module to search + * @param int $offset start index + * @param int $count number of results to retrieve + * @return array object GalleryStatus a status object + * results array plus 'name' key with module name + * @see GallerySearchInterface_1_0::search for contents of results array + */ + function search($searchString, $moduleId, $offset, $count) { + global $gallery; + + $session =& $gallery->getSession(); + $ret = $session->start(); + if ($ret) { + return array($ret, null); + } + $session->doNotUseTempId(); + + GalleryCoreApi::requireOnce('modules/search/classes/SearchUtilities.class'); + list ($ret, $searchInstance) = + GalleryCoreApi::newFactoryInstanceById('GallerySearchInterface_1_0', $moduleId); + if ($ret) { + return array($ret, null); + } + if (!isset($searchInstance)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), null); + } + list ($ret, $searchInfo) = $searchInstance->getSearchModuleInfo(); + if ($ret) { + return array($ret, null); + } + $options = array(); + foreach ($searchInfo['options'] as $option => $info) { + if ($info['enabled']) { + $options[$option] = true; + } + } + list ($ret, $searchResults) = + $searchInstance->search($options, + SearchUtilities::sanitizeSearchCriteria($searchString), + $offset, $count); + if ($ret) { + return array($ret, null); + } + $searchResults['name'] = $searchInfo['name']; + return array(null, $searchResults); + } + + /** + * Parse html (headHtml) for css links, javascript and page title + * + * @param string $headhtml + * @return array(string title, array (string css1, string css2, ...), + * array (string javascript1, string javascript2, ...)) + */ + function parseHead($headhtml) { + $title = ''; + $css = array(); + $javascript = array(); + + /* Only one title allowed */ + if (preg_match("|]*)?>(.*)|Usi", $headhtml, $regs)) { + $title = $regs[1]; + } + + /* More than one script section allowed */ + if (preg_match_all( + "|]*)?(?:\ssrc=[\"\'].+[\"\'])?(?:\s[^>]*)?>.*|Usi", + $headhtml, $regs, PREG_PATTERN_ORDER)) { + foreach ($regs[0] as $script) { + $javascript[] = $script; + } + } + + /* More than one style allowed */ + if (preg_match_all("/|]*)?>.*<\/style>/Usi", + $headhtml, $regs, PREG_PATTERN_ORDER)) { + foreach ($regs[0] as $style) { + $css[] = $style; + } + } + + return array($title, $css, $javascript); + } + + /** + * Get HTML for an image block + * + * @param array $params ('blocks' => string, 'show' => string, (optional)'heading' => int, + * (optional)'itemId' => int, (optional)'maxSize' => int, (optional)'exactSize' => int, + * (optional)'itemFrame' => frameId, (optional)'albumFrame' => frameId) + * 'blocks' is a pipe (|) separated list, of one or more possible blocks which are: + * randomImage|recentImage|viewedImage|randomAlbum|recentAlbum|viewedAlbum|specificItem + * dailyImage|weeklyImage|monthlyImage|dailyAlbum|weeklyAlbum|monthlyAlbum + * 'show' is a pipe (|) separated list of one or more possible choices which are: + * title|date|views|owner|heading|fullSize or just 'none' + * If you choose 'blocks' => 'specificItem', you must specify 'itemId' too. + * example: GalleryEmbed::getImageBlock(array('blocks' => 'randomImage', + * 'show' => 'title|date')); + * itemFrame/albumFrame may require CSS to be displayed. + * See Image Block Site Admin page for info on optional parameters. + * @return array object GalleryStatus + * string html content + * string head content or null if none required + */ + function getImageBlock($params) { + global $gallery; + $moduleId = 'imageblock'; + $blockHtml = $headHtml = null; + + $session =& $gallery->getSession(); + $ret = $session->start(); + if ($ret) { + return array($ret, null, null); + } + $session->doNotUseTempId(); + + /* Load the module list */ + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return array($ret, null, null); + } + + if (isset($moduleStatus[$moduleId]) && !empty($moduleStatus[$moduleId]['active']) + && $moduleStatus[$moduleId]['active']) { + /* Load the G2 templating engine */ + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTemplate.class'); + $template = new GalleryTemplate(dirname(__FILE__) . '/../../..'); + $template->setVariable('l10Domain', 'modules_' . $moduleId); + + if (!isset($params['maxSize'])) { + $params['maxSize'] = null; + } + + /* Generate the imageblock */ + GalleryCoreApi::requireOnce( + 'modules/imageblock/classes/ImageBlockHelper.class'); + $ret = ImageBlockHelper::loadImageBlocks($template, $params); + if ($ret) { + return array($ret, null, null); + } + + if ($template->hasVariable('ImageBlockData')) { + $ImageBlockData =& $template->getVariableByReference('ImageBlockData'); + $ImageBlockData['forceFullUrl'] = 1; + $tpl = 'modules/imageblock/templates/ImageBlock.tpl'; + /* Render and get the imageblock html */ + list ($ret, $blockHtml) = $template->fetch("gallery:$tpl"); + if ($ret) { + return array($ret, null, null); + } + /* Check for any css required for imageframes */ + $head = $template->getVariable('head'); + if (!empty($head['tpl'])) { + list ($tpl) = each($head['tpl']); + list ($ret, $headHtml) = $template->fetch("gallery:$tpl"); + if ($ret) { + return array($ret, null, null); + } + } + } + } else { + return array(GalleryCoreApi::error(ERROR_CONFIGURATION_REQUIRED), null, null); + } + return array(null, $blockHtml, $headHtml); + } + + /** + * Add an externalId<->entityId map entry for existing G2/emApp users/groups + * example: GalleryEmbed::addExternalIdMapEntry($uid, $g2user->getId(), 'GalleryUser'); + * + * @param string $externalId the user/group id in the embedded application + * @param int $entityId the entityId of the user/group in G2 + * @param string $entityType 'GalleryUser' for user mapping, 'GalleryGroup' for group mapping + * @return object GalleryStatus + */ + function addExternalIdMapEntry($externalId, $entityId, $entityType) { + $ret = GalleryCoreApi::addMapEntry( + 'ExternalIdMap', + array('externalId' => $externalId, + 'entityType' => $entityType, + 'entityId' => $entityId)); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Get the complete externalId<->entityId map (for users and groups), + * the return array is organized by externalId or by entityId + * + * @param string $key 'externalId' or 'entityId', array is organized by this key + * @return array object GalleryStatus + * array(externalId|entityId => array(externalId => int/string, + * entityId => int, entityType => string)) + */ + function getExternalIdMap($key) { + /* Input validation */ + if ($key != 'externalId' && $key != 'entityId') { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + list ($ret, $results) = GalleryCoreApi::getMapEntry('ExternalIdMap', + array('entityId', 'externalId', 'entityType')); + if ($ret) { + return array($ret, null); + } + + $map = array(); + while ($result = $results->nextResult()) { + $entry = array('externalId' => $result[1], + 'entityId' => $result[0], 'entityType' => $result[2]); + if ($key == 'externalId') { + $map[$result[1]] = $entry; + } else if ($key == 'entityId') { + $map[$result[0]] = $entry; + } + } + return array(null, $map); + } + + /** + * Check if externalId is mapped to a G2 user/group. + * If GalleryStatus is a success, the externalId is mapped. Else, check for the status code. + * ERROR_MISSING_OBJECT -> externalId is not mapped to a G2 entity. + * other error codes -> unexpected behavior / bug. + * + * @param string $externalId the user/group id in the embedded application + * @param string $entityType 'GalleryUser' for user mapping, 'GalleryGroup' for group mapping + * @return object GalleryStatus + */ + function isExternalIdMapped($externalId, $entityType) { + list ($ret, $results) = GalleryCoreApi::getMapEntry('ExternalIdMap', + array('entityId'), array('externalId' => $externalId, 'entityType' => $entityType)); + if ($ret) { + return $ret; + } + if (!($result = $results->nextResult())) { + return GalleryCoreApi::error(ERROR_MISSING_OBJECT, __FILE__, __LINE__, + "$externalId $entityType"); + } + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryEntity.class b/Source/gallery2/modules/core/classes/GalleryEntity.class new file mode 100644 index 0000000..e6c3c39 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryEntity.class @@ -0,0 +1,671 @@ +GalleryEntity + * @g2 GalleryPersistent + * @g2 + * @g2 1 + * @g2 2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15829 $ + */ +class GalleryEntity extends GalleryPersistent { + + /** + * The id of this item + * @var int + * + * @g2 + * @g2 id + * @g2 INTEGER + * @g2 + * @g2 + * @g2 READ + * @g2 + */ + var $id; + + /** + * Date and time this item was created, in seconds since the epoch. + * @var int + * + * @g2 + * @g2 creationTimestamp + * @g2 INTEGER + * @g2 + * @g2 + * @g2 FULL + * @g2 + */ + var $creationTimestamp; + + /** + * Does this entity type support linking? + * @var boolean + * + * @g2 + * @g2 isLinkable + * @g2 BOOLEAN + * @g2 + * @g2 + * @g2 + */ + var $isLinkable; + + /** + * The id of the target entity this entity is linked to + * @var int + * + * @g2 + * @g2 linkId + * @g2 INTEGER + * @g2 + * @g2 + */ + var $linkId; + + /** + * The target entity this entity is linked to + * @var object GalleryEntity + */ + var $linkedEntity; + + /** + * Date and time this item was last modified, in seconds since the epoch. + * @var int + * + * @g2 + * @g2 modificationTimestamp + * @g2 INTEGER + * @g2 + * @g2 + * @g2 READ + * @g2 + */ + var $modificationTimestamp; + + /** + * The serial number of this object in the persistent store. This value + * will help us to avoid collisions. + * @var int + * + * @g2 + * @g2 serialNumber + * @g2 INTEGER + * @g2 + * @g2 + * @g2 READ + * @g2 + */ + var $serialNumber; + + /** + * The actual type of this object. This will allow the storage class to + * correctly load this object from the database. + * @var string + * + * @g2 + * @g2 entityType + * @g2 STRING + * @g2 SMALL + * @g2 + * @g2 READ + * @g2 + */ + var $entityType; + + /** + * Handlers to run when this entity is loaded. + * @var string + * + * @g2 + * @g2 onLoadHandlers + * @g2 STRING + * @g2 MEDIUM + * @g2 + */ + var $onLoadHandlers; + + + /** + * Create a new instance of this GalleryEntity in the persistent store + * + * @return object GalleryStatus a status code + */ + function create() { + global $gallery; + + /* Create a new instance of this entity in the persistent store */ + $storage =& $gallery->getStorage(); + $ret = $storage->newEntity($this); + if ($ret) { + return $ret; + } + + /* Set the creation time on this entity */ + $this->setCreationTimestamp(time()); + + /* Set the object type */ + $this->setEntityType($className = $this->getClassName()); + + /* + * Make sure the entity defined its own class name. This is a little draconian; + * it requires that your entity name is the same as the get_class() version. We'd + * just use get_class for getClassName() except that it's always lowercase in PHP4. + * If this causes problems we could relax the check to just make sure that + * $this->getClassName() != 'GalleryEntity' + * but that wouldn't catch the case where one entity extends another one and forgets + * to override getClassName() + * Don't use strcasecmp or strtolower because they are affected by locale. + */ + if (($thisClass = get_class($this)) != $className && $thisClass + != strtr($className, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz')) { + return GalleryCoreApi::error(ERROR_MISSING_VALUE, __FILE__, __LINE__, + sprintf('Entity %s did not override getClassName()', + get_class($this))); + } + + /* By default, entities are not linkable; init other fields */ + $this->setIsLinkable(false); + $this->setLinkId(null); + $this->setLinkedEntity(null); + $this->setOnLoadHandlers(null); + + $ret = $this->resetOriginalValues(true); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Create a new linked version of this item into a new album + * + * @param object GalleryEntity $entity the entity we're linking to + * @return array object GalleryStatus a status code + * object GalleryItem the linked item + */ + function createLink($entity) { + global $gallery; + + if (get_class($this) != get_class($entity)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + /* Follow our usual creation process (same as create() above) */ + $storage =& $gallery->getStorage(); + $ret = $storage->newEntity($this); + if ($ret) { + return $ret; + } + + /* Set the creation time on this entity */ + $this->setCreationTimestamp(time()); + + /* Set the object type */ + $this->setEntityType($this->getClassName()); + + /* But attach to the linked entity */ + $this->setIsLinkable(true); + $this->setLinkId($entity->getId()); + $this->setLinkedEntity($entity); + + $ret = $this->resetOriginalValues(true); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Save the changes to this GalleryEntity. + * + * @param bool $postEvent post a save event; only disable this during core upgrades + * @param int $setAclId (optional) ACL id to assign for new entity (used by subclasses) + * @return object GalleryStatus a status code + */ + function save($postEvent=true, $setAclId=null) { + global $gallery; + + /* + * Newly created objects don't need to be locked 'cause they're not in + * the database yet. Everything else does. + */ + if (!GalleryCoreApi::isWriteLocked($this->getId()) + && !$this->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED)) { + return GalleryCoreApi::error(ERROR_LOCK_REQUIRED); + } + + if (isset($setAclId) && $this->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED)) { + $ret = GalleryCoreApi::addMapEntry('GalleryAccessSubscriberMap', + array('itemId' => $this->getId(), 'accessListId' => $setAclId)); + if ($ret) { + return $ret; + } + } + + if ($this->isModified()) { + /* Change the modification date */ + $phpVm = $gallery->getPhpVm(); + $this->setModificationTimestamp($phpVm->time()); + + if ($postEvent) { + $event = GalleryCoreApi::newEvent('GalleryEntity::save'); + $event->setEntity($this); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + } + + $storage =& $gallery->getStorage(); + $changedEntityType = $this->isModified('entityType'); + + $ret = $storage->saveEntity($this); + if ($ret) { + return $ret; + } + + /* Update our caches */ + if ($changedEntityType) { + /* + * We changed the entity type which probably means that the entity class doesn't + * line up with its embedded entityType. Clear this from our cache so that the + * next load actually gets the clean, correct version. + */ + GalleryDataCache::remove( + sprintf('GalleryEntityHelper::loadEntitiesById(%s)', $this->getId())); + GalleryDataCache::removeFromDisk( + array('type' => 'entity', 'itemId' => $this->getId())); + } else { + GalleryDataCache::put( + sprintf('GalleryEntityHelper::loadEntitiesById(%s)', $this->getId()), $this); + list ($ret, $classFile) = $this->getClassFile(); + if ($ret) { + return $ret; + } + GalleryDataCache::putToDisk(array('type' => 'entity', 'itemId' => $this->getId()), + $this, array($classFile)); + } + } + + return null; + } + + /** + * Refresh this item from the persistent store + * + * @return array object GalleryStatus a status code, + * object the refreshed GalleryEntity + */ + function refresh() { + global $gallery; + + /* Are we trying to refresh an object that isn't in the database? */ + if ($this->testPersistentFlag(STORAGE_FLAG_DELETED) || + $this->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), + null); + } + + $storage =& $gallery->getStorage(); + + list ($ret, $freshEntity) = $storage->refreshEntity($this); + if ($ret) { + return array($ret, null); + } + + return array(null, $freshEntity); + } + + /** + * Delete this GalleryEntity + * + * @return object GalleryStatus a status code + */ + function delete() { + global $gallery; + + if (!GalleryCoreApi::isWriteLocked($this->getId())) { + return GalleryCoreApi::error(ERROR_LOCK_REQUIRED); + } + + $event = GalleryCoreApi::newEvent('GalleryEntity::delete'); + $event->setEntity($this); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::removePluginParametersForItemId($this->getId()); + if ($ret) { + return $ret; + } + + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryAccessSubscriberMap', array('itemId' => $this->getId())); + if ($ret) { + return $ret; + } + + $storage =& $gallery->getStorage(); + $ret = $storage->deleteEntity($this); + if ($ret) { + return $ret; + } + + GalleryDataCache::remove( + sprintf('GalleryEntityHelper::loadEntitiesById(%s)', $this->getId())); + GalleryDataCache::removeFromDisk(array('type' => 'entity', 'itemId' => $this->getId())); + + return null; + } + + /** + * This is called after an entity is loaded by the GalleryStorage subsystem. + * Perform any actions that are required after loading the entity. + * + * @return object GalleryStatus a status code + */ + function onLoad() { + global $gallery; + + $linkId = $this->getLinkId(); + if (!empty($linkId)) { + list ($ret, $this->linkedEntity) = GalleryCoreApi::loadEntitiesById($linkId); + if ($ret) { + return $ret; + } + + list ($ret, $data) = GalleryCoreApi::describeEntity($this->entityType); + if ($ret) { + return $ret; + } + + $target = $this->entityType; + while ($target) { + foreach ($data[$target]['linked'] as $memberName) { + $setFunc = "set$memberName"; + $getFunc = "get$memberName"; + $this->$setFunc($this->linkedEntity->$getFunc()); + } + $target = $data[$target]['parent']; + } + } else { + $this->setLinkedEntity(null); + } + + /* + * Run any onLoad handlers for this entity + * Modules that wish to implement an onLoad handler for an entity must provide + * a class that implements the GalleryOnLoadHandler interface. + */ + $onLoadHandlers = $this->getOnLoadHandlers(); + if (!empty($onLoadHandlers)) { + /* Determine whether we're in an upgrade process */ + $session =& $gallery->getSession(); + $isDuringInstallOrUpgrade = $session->get('isInstall') || $session->get('isUpgrade'); + + foreach (explode('|', $onLoadHandlers) as $handlerId) { + if (empty($handlerId)) { + continue; + } + list ($ret, $handler) = + GalleryCoreApi::newFactoryInstanceById('GalleryOnLoadHandler', $handlerId); + if ($ret) { + return $ret; + } + if (isset($handler)) { + /* GalleryOnLoadHandlerInterface_1_0::onLoad(&$entity, $duringUpgrade) + * + * A GalleryOnLoadHandler has to implement this method + * It is called for each entity when it is loaded from the disk cache or the + * persistent store (the database), but not when the entity is already in the + * memory cache. + * + * During the core module install or upgrade, there's no active gallery session + * and $duringUpgrade is set to false. If $duringUpgrade is set to false, be + * aware that everything that is related to the current active user will + * error-out. The recommended usage is to do nothing and just return a success + * status in onLoad if $duringUpgrade is set to false. If this would affect + * data integrity and / or you are sure that your onLoad method does not + * require an activeSession, you can ignore $duringUpgrade. + * + * @param object GalleryEntity reference to an entity + * @param boolean whether the onLoad handler is being called during an upgrade + * @return object GalleryStatus a status code + */ + $ret = $handler->onLoad($this, $isDuringInstallOrUpgrade); + if ($ret) { + return $ret; + } + } + } + } + + return null; + } + + /** + * Check for an onLoad handler. + * + * @param string $handlerId + * @return boolean + */ + function hasOnLoadHandler($handlerId) { + return (strpos($this->getOnLoadHandlers(), "|$handlerId|") !== false); + } + + /** + * Add onLoad handler. + * + * @param string $handlerId + */ + function addOnLoadHandler($handlerId) { + $onLoadHandlers = $this->getOnLoadHandlers(); + if (empty($onLoadHandlers)) { + $onLoadHandlers = '|'; + } + $this->setOnLoadHandlers($onLoadHandlers . $handlerId . '|'); + } + + /** + * Remove onLoad handler. + * + * @param string $handlerId + */ + function removeOnLoadHandler($handlerId) { + $onLoadHandlers = preg_replace('{\|' . preg_quote($handlerId) . '\|}', '|', + $this->getOnLoadHandlers()); + if (empty($onLoadHandlers) || $onLoadHandlers == '|') { + $onLoadHandlers = null; + } + + $this->setOnLoadHandlers($onLoadHandlers); + } + + /** + * This is called after an entity is saved by the GalleryStorage subsystem. + * Perform any actions that are required after saving the entity. + * + * @return object GalleryStatus a status code + */ + function onSave() { + return null; + } + + /** + * Return the name of this type of item. + * Subclasses must override this to provide their own type names. + * + * @param boolean $localized if the name is to be translated using the current language + * @return array string to be used by itself ("Photo") + * string to be used in context ("photo") + */ + function itemTypeName($localized=true) { + assert(false); + } + + /** + * Return true if this entity is linked to another + * @return boolean + */ + function isLinked() { + $linkedEntity = $this->getLinkedEntity(); + return isset($linkedEntity); + } + + /** + * Detach this entity from the entity it is linked to by the simple expedient + * of overwriting over all non-null members with the equivalent from the link target. + * + * @return object GalleryStatus a status code + */ + function detachLink() { + if (!$this->isLinked()) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, 'Not a link!'); + } + + /* + * Copy over the linked data. It should already be here since we do this in onLoad() but + * this will guarantee it in case the values were changed before the detach happens. + */ + list ($ret, $data) = GalleryCoreApi::describeEntity($this->entityType); + if ($ret) { + return $ret; + } + + foreach ($data[$this->entityType]['linked'] as $memberName) { + $setFunc = "set$memberName"; + $getFunc = "get$memberName"; + $this->$setFunc($this->linkedEntity->$getFunc()); + } + + /* Get rid of the link */ + $this->setLinkedEntity(null); + $this->setLinkId(null); + + return null; + } + + /** + * Return the case sensitive name of this entity class. This is exactly what get_class() + * would return in PHP5. PHP4 is case-insensitive though so we must rely on it being set + * in each entity. The framework uses this as an index into entity related tables. + * @return string + */ + function getClassName() { + return 'GalleryEntity'; + } + + function getId() { + return $this->id; + } + + function setId($id) { + $this->id = $id; + } + + function getCreationTimestamp() { + return $this->creationTimestamp; + } + + function setCreationTimestamp($creationTimestamp) { + $this->creationTimestamp = $creationTimestamp; + } + + function getIsLinkable() { + return $this->isLinkable; + } + + function setIsLinkable($isLinkable) { + $this->isLinkable = $isLinkable; + } + + function getLinkId() { + return $this->linkId; + } + + function setLinkId($linkId) { + $this->linkId = $linkId; + } + + function getLinkedEntity() { + return $this->linkedEntity; + } + + function setLinkedEntity($linkedEntity) { + $this->linkedEntity = $linkedEntity; + } + + function getModificationTimestamp() { + return $this->modificationTimestamp; + } + + function setModificationTimestamp($modificationTimestamp) { + $this->modificationTimestamp = $modificationTimestamp; + } + + function getSerialNumber() { + return $this->serialNumber; + } + + function setSerialNumber($serialNumber) { + $this->serialNumber = $serialNumber; + } + + function getEntityType() { + return $this->entityType; + } + + function setEntityType($entityType) { + $this->entityType = $entityType; + } + + function getOnLoadHandlers() { + return $this->onLoadHandlers; + } + + function setOnLoadHandlers($onLoadHandlers) { + $this->onLoadHandlers = $onLoadHandlers; + } + + /** + * @todo Consider removing this method when refactoring the renderer code. + */ + function getRenderer() { + /* See bug 1662652 */ + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryEvent.class b/Source/gallery2/modules/core/classes/GalleryEvent.class new file mode 100644 index 0000000..7230507 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryEvent.class @@ -0,0 +1,106 @@ + + * @version $Revision: 15513 $ + */ +class GalleryEvent { + + /** + * Event name + * @var string + * @access private + */ + var $_eventName; + + /** + * Target entity + * @var object GalleryEntity + * @access private + */ + var $_entity; + + /** + * Event specific data + * @var mixed + * @access private + */ + var $_data; + + + function GalleryEvent() { + $this->setEventName(null); + $this->setEntity(null); + $this->setData(null); + } + + /** + * Set this event's name + * @param string $eventName + */ + function setEventName($eventName) { + $this->_eventName = $eventName; + } + + /** + * Return the event name + * @return string the event name + */ + function getEventName() { + return $this->_eventName; + } + + /** + * Set this event's entity + * @param object GalleryEntity $entity + */ + function setEntity($entity) { + $this->_entity = $entity; + } + + /** + * Return the event's entity + * @return object GalleryEntity + */ + function getEntity() { + return $this->_entity; + } + + /** + * Set this event's data + * @param mixed $data + */ + function setData($data) { + $this->_data = $data; + } + + /** + * Return the event's data + * @return mixed + */ + function getData() { + return $this->_data; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryEventListener.class b/Source/gallery2/modules/core/classes/GalleryEventListener.class new file mode 100644 index 0000000..f30ea29 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryEventListener.class @@ -0,0 +1,42 @@ + + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryEventListener { + + /** + * Handle the event + * + * @param object GalleryEvent $event + * @return array object GalleryStatus a status code + * mixed data to send back to event source, or null + */ + function handleEvent($event) { + return array(null, null); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryFileSystemEntity.class b/Source/gallery2/modules/core/classes/GalleryFileSystemEntity.class new file mode 100644 index 0000000..d22cfad --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryFileSystemEntity.class @@ -0,0 +1,396 @@ +GalleryFileSystemEntity + * @g2 GalleryChildEntity + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15534 $ + * @abstract + */ +class GalleryFileSystemEntity extends GalleryChildEntity { + + /** + * The path component of this item (eg. "image1"). This value, when combined with the paths + * of all the parent objects (say, "rootAlbum", "album01") will form the complete path to the + * item ("rootAlbum/album01/image1"). + * @var string + * + * @g2 + * @g2 pathComponent + * @g2 STRING + * @g2 MEDIUM + * @g2 + * @g2 READ + * @g2 + */ + var $pathComponent; + + + /** + * Create a new instance of this FileSystemEntity in the persistent store. + * Let the parent do its work, then add any initialization specific to this class. + * + * @param int $parentId the id of the parent GalleryChildEntity + * @param string $pathComponent the path component of this entity + * @return object GalleryStatus a status code + */ + function create($parentId, $pathComponent) { + if (empty($pathComponent)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + /* + * The parent must be read locked at this point to make sure that it's not going to be + * moved around while we're adding stuff to it. Realistically, the entire parent tree must + * be locked but it's not really practical to check the whole tree so just check the parent. + */ + if (!GalleryCoreApi::isReadLocked($parentId)) { + return GalleryCoreApi::error(ERROR_LOCK_REQUIRED); + } + + list ($ret, $pathComponent) = + GalleryCoreApi::getLegalPathComponent($pathComponent, $parentId); + if ($ret) { + return $ret; + } + + $ret = parent::create($parentId); + if ($ret) { + return $ret; + } + + /* Set our path component */ + $this->setPathComponent($pathComponent); + + return null; + } + + /** + * Create a new root level instance of this FileSystemEntity in the persistent store. + * Let the parent do its work, then add any initialization specific to this class. + * + * @return object GalleryStatus a status code + */ + function createRoot() { + $ret = parent::createRoot(); + if ($ret) { + return $ret; + } + + /* The root has no path component */ + $this->setPathComponent(NULL); + + return null; + } + + /** + * @see GalleryEntity::createLink + */ + function createLink($entity, $parentId) { + $ret = parent::createLink($entity, $parentId); + if ($ret) { + return $ret; + } + + list ($ret, $pathComponent) = + GalleryCoreApi::getLegalPathComponent($entity->getPathComponent(), $parentId); + if ($ret) { + return $ret; + } + + /* Set our path component */ + $this->setPathComponent($pathComponent); + + return null; + } + + /** + * Rename this item + * + * @param string $newPathComponent the path component + * @return object GalleryStatus a status code + */ + function rename($newPathComponent) { + if (!$this->getParentId()) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + if (empty($newPathComponent)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + /* No need to do anything if renaming to same name */ + if ($newPathComponent == $this->getPathComponent()) { + return null; + } + + $parentId = $this->getParentId(); + list ($ret, $newPathComponent) = + GalleryCoreApi::getLegalPathComponent($newPathComponent, $parentId, $this->getId()); + if ($ret) { + return $ret; + } + + $this->setPathComponent($newPathComponent); + + return null; + } + + /** + * Move item to a new parent + * + * @param int $newParentId the id of the new parent GalleryItem + * @return object GalleryStatus a status code + * @todo Make sure that 'order' stuff is maintained, so that the moved + * items become the last in order in the new album if that album is marked as unordered + */ + function move($newParentId) { + global $gallery; + + /* No need to do anything if moving to same parent */ + if ($newParentId == $this->getParentId()) { + return null; + } + + /* Make sure the old parent and the new parent are read locked */ + if (!(GalleryCoreApi::isReadLocked($newParentId) + && GalleryCoreApi::isReadLocked($this->getParentId()))) { + return GalleryCoreApi::error(ERROR_LOCK_REQUIRED, __FILE__, __LINE__, + sprintf("One parent id (%d or %d) is not read locked", + $newParentId, + $this->getParentId())); + } + + /* Get the new parent */ + list ($ret, $newParent) = GalleryCoreApi::loadEntitiesById($newParentId); + if ($ret) { + return $ret; + } + + if (!$newParent->getCanContainChildren()) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + list ($ret, $newPathComponent) = GalleryCoreApi::getLegalPathComponent( + $this->getPathComponent(), $newParentId, $this->getId()); + if ($ret) { + return $ret; + } + + list ($ret, $currentPath) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + list ($ret, $newParentPath) = $newParent->fetchPath(); + if ($ret) { + return $ret; + } + + /* No collision -- proceed! */ + $ret = parent::move($newParentId); + if ($ret) { + return $ret; + } + + if (!$this->isLinked()) { + $newPath = $newParentPath . $newPathComponent; + $platform =& $gallery->getPlatform(); + if (!$platform->rename($currentPath, $newPath)) { + return GalleryCoreApi::error(ERROR_BAD_PATH, __FILE__, __LINE__, + "rename $currentPath to $newPath"); + } + } + + /* Our path component may have changed when it got "legalized" */ + $this->setPathComponent($newPathComponent); + + return null; + } + + /** + * Delete this GalleryFileSystemEntity + * @return object GalleryStatus a status code + */ + function delete() { + /* + * The parent must be read or write locked at this point to make sure + * that it's not going to be moved around while we're deleting stuff + * from its children. Realistically, the entire parent tree must be at + * least read locked but it's not really practical to check the entire + * tree so just check the parent. + */ + $parentId = $this->getParentId(); + if (!empty($parentId)) { + if (!GalleryCoreApi::isReadLocked($parentId) && + !GalleryCoreApi::isWriteLocked($parentId)) { + return GalleryCoreApi::error(ERROR_LOCK_REQUIRED); + } + } + + return parent::delete(); + } + + /** + * Return a path for any objects contained within this one (ie, children) + * + * Subclasses should specify their container-ness by overloading isContainer() + * + * @return array object GalleryStatus a status code, + * string a path where children can store their data files + */ + function fetchContainerPath() { + if ($this->isContainer()) { + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return array($ret, null); + } + return array(null, $path); + } else { + list ($ret, $parent) = $this->fetchParent(); + if ($ret) { + return array($ret, null); + } + + if (isset($parent)) { + list ($ret, $path) = $parent->fetchContainerPath(); + if ($ret) { + return array($ret, null); + } + + return array(null, $path); + } else { + return array(GalleryCoreApi::error(ERROR_BAD_PATH), null); + } + } + } + + /** + * Can this item contain other file system items? + * @return boolean + */ + function isContainer() { + return false; + } + + /** + * Return the logical path to this item. Note that this path is only valid as + * long as the entire tree is at least read locked. + * + * @return array object GalleryStatus a status code, + * array path component names + */ + function fetchLogicalPath() { + $parentId = $this->getParentId(); + if (!empty($parentId)) { + list ($ret, $parent) = $this->fetchParent(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $parentPath) = $parent->fetchLogicalPath(); + if ($ret) { + return array($ret, null); + } + } else { + $parentPath = ''; + } + + $path = $parentPath . $this->getPathComponent(); + if ($this->isContainer()) { + $path .= '/'; + } + + return array(null, $path); + } + + /** + * Return the full path of this item. Note that this path is only valid as + * long as the entire tree is at least read locked. + * + * @return array a GalleryStatus status, string a path + */ + function fetchPath() { + global $gallery; + $absolutePath = $gallery->getConfig('data.gallery.albums'); + + if ($this->isLinked()) { + $linkedEntity = $this->getLinkedEntity(); + list ($ret, $logicalPath) = $linkedEntity->fetchLogicalPath(); + if ($ret) { + return array($ret, null); + } + } else { + list ($ret, $logicalPath) = $this->fetchLogicalPath(); + if ($ret) { + return array($ret, null); + } + } + + /* + * The album path ends with a slash, and the logical path starts with one (because the + * root path component is empty) so we'll have two slashes, unless we remove one of them. + */ + $logicalPath = substr($logicalPath, 1); + + /* + * Logical path is slash (/) delimited. Convert that to the platform's actual + * directory separator. + */ + $platform =& $gallery->getPlatform(); + if ($platform->getDirectorySeparator() != '/') { + $logicalPath = str_replace('/', $platform->getDirectorySeparator(), $logicalPath); + } + + return array(null, $absolutePath . $logicalPath); + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryFileSystemEntity'; + } + + function getPathComponent() { + return $this->pathComponent; + } + + function setPathComponent($pathComponent) { + $this->pathComponent = $pathComponent; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryGroup.class b/Source/gallery2/modules/core/classes/GalleryGroup.class new file mode 100644 index 0000000..dc83365 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryGroup.class @@ -0,0 +1,182 @@ +GalleryGroup + * @g2 GalleryEntity + * @g2 + * @g2 1 + * @g2 1 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15534 $ + */ +class GalleryGroup extends GalleryEntity { + + /** + * The group type + * @var int + * + * @g2 + * @g2 groupType + * @g2 INTEGER + * @g2 + * @g2 + */ + var $groupType; + + /** + * The group name + * @var string + * + * @g2 + * @g2 groupName + * @g2 STRING + * @g2 MEDIUM + * @g2 + * @g2 READ + * @g2 + */ + var $groupName; + + + /** + * Create a new instance of this GalleryGroup in the persistent store + * + * @param string $groupName the name of the new group + * @param int $groupType the type of group + * @return object GalleryStatus a status code + */ + function create($groupName, $groupType=GROUP_NORMAL) { + global $gallery; + + /* Check to see if we have a collision */ + $query = ' + SELECT + [GalleryGroup::id] + FROM + [GalleryGroup] + WHERE + [GalleryGroup::groupName] = ? + '; + list ($ret, $results) = + $gallery->search($query, array($groupName), + array('limit' => array('count' => 1))); + if ($ret) { + return $ret; + } + + $result = $results->nextResult(); + if ($result[0] > 0) { + return GalleryCoreApi::error(ERROR_COLLISION); + } + + $ret = parent::create(); + if ($ret) { + return $ret; + } + + $this->setGroupName($groupName); + $this->setGroupType($groupType); + + return null; + } + + /** + * Delete this GalleryGroup. + * Do some bookkeeping, like removing any user/group mappings. + * + * @return object GalleryStatus a status code + */ + function delete() { + /* Don't allow to delete the special groups (admin, registered, everybody) */ + if ($this->getGroupType() != GROUP_NORMAL) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + 'Special groups cannot be deleted!'); + } + + $ret = GalleryCoreApi::removeAllUsersFromGroup($this->getId()); + if ($ret) { + return $ret; + } + + /* Delete all permissions from the permissions map table */ + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryAccessMap', array('userOrGroupId' => $this->getId())); + if ($ret) { + return $ret; + } + + $ret = parent::delete(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function itemTypeName($localized = true) { + if ($localized) { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if (! $ret) { + return array($core->translate('Group'), $core->translate('group')); + } + } + return array('Group', 'group'); + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryGroup'; + } + + function getGroupType() { + return $this->groupType; + } + + function setGroupType($groupType) { + $this->groupType = $groupType; + } + + function getGroupName() { + return $this->groupName; + } + + function setGroupName($groupName) { + $this->groupName = $groupName; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryItem.class b/Source/gallery2/modules/core/classes/GalleryItem.class new file mode 100644 index 0000000..30df4da --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryItem.class @@ -0,0 +1,536 @@ +GalleryItem + * @g2 GalleryFileSystemEntity + * @g2 + * @g2 1 + * @g2 2 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15628 $ + * @abstract + */ +class GalleryItem extends GalleryFileSystemEntity { + + /** + * Can this item contain children? + * @var boolean + * + * @g2 + * @g2 canContainChildren + * @g2 BOOLEAN + * @g2 + * @g2 READ + * @g2 + */ + var $canContainChildren; + + /** + * The (long) description of this item + * @var string + * + * @g2 + * @g2 description + * @g2 TEXT + * @g2 SMALL + * @g2 FULL + * @g2 + */ + var $description; + + /** + * A set of keywords that describe this item + * @var string + * + * @g2 + * @g2 keywords + * @g2 STRING + * @g2 LARGE + * @g2 + * @g2 FULL + * @g2 + */ + var $keywords; + + /** + * The id of the User who owns this item + * @var int + * + * @g2 + * @g2 ownerId + * @g2 INTEGER + * @g2 + * @g2 + * @g2 + */ + var $ownerId; + + /** + * The renderer for drawing this item + * @var string + * + * @g2 + * @g2 renderer + * @g2 STRING + * @g2 MEDIUM + * @g2 + */ + var $renderer; + + /** + * The summary of this item + * @var string + * + * @g2 + * @g2 summary + * @g2 STRING + * @g2 LARGE + * @g2 + * @g2 FULL + * @g2 + */ + var $summary; + + /** + * The (short) title of this item + * @var string + * + * @g2 + * @g2 title + * @g2 STRING + * @g2 MEDIUM + * @g2 + * @g2 FULL + * @g2 + */ + var $title; + + /** + * Date and time marking the beginning of the view count + * @var int + * + * @g2 + * @g2 viewedSinceTimestamp + * @g2 INTEGER + * @g2 + * @g2 READ + * @g2 + */ + var $viewedSinceTimestamp; + + /** + * Date and time when this item was originally captured (i.e. photographed, filmed, etc) + * @var int + * + * @g2 + * @g2 originationTimestamp + * @g2 INTEGER + * @g2 + * @g2 FULL + * @g2 + */ + var $originationTimestamp; + + + /** + * Create a new instance of this GalleryEntity in the persistent store. + * Let the parent do its work, then add any initialization specific to this class. + * + * @param int $parentId the id of the GalleryEntity parent of this object + * @param string $path the path component of this new object + * @return object GalleryStatus a status code + */ + function create($parentId, $path) { + global $gallery; + + if (!isset($path) || !isset($parentId)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($parentId); + if ($ret) { + return $ret; + } + + if (!$parent->getCanContainChildren()) { + return GalleryCoreApi::error(ERROR_ILLEGAL_CHILD); + } + + $ret = parent::create($parentId, $path); + if ($ret) { + return $ret; + } + + /* Record the owner */ + $this->setOwnerId($gallery->getActiveUserId()); + + /* Initialize the viewedSince timestamp */ + $this->setViewedSinceTimestamp(time()); + + /* By default, items can't contain children */ + $this->setCanContainChildren(false); + + /* Origination timestamp defaults to now */ + $this->setOriginationTimestamp(time()); + + /* Init other fields */ + $this->setTitle(null); + $this->setSummary(null); + $this->setDescription(null); + $this->setKeywords(null); + $this->setRenderer(null); + + return null; + } + + /** + * Create a root level instance of this GalleryEntity in the persistent store. + * Let the parent do its work, then add any initialization specific to this class. + * + * @return object GalleryStatus a status code + */ + function createRoot() { + global $gallery; + + $ret = parent::createRoot(); + if ($ret) { + return $ret; + } + + /* Record the owner */ + $this->setOwnerId($gallery->getActiveUserId()); + + /* Initialize the viewedSince timestamp */ + $this->setViewedSinceTimestamp(time()); + + /* Origination timestamp defaults to now */ + $this->setOriginationTimestamp(time()); + + return null; + } + + /** + * @see GalleryEntity::createLink + */ + function createLink($entity, $parentId) { + global $gallery; + + $ret = parent::createLink($entity, $parentId); + if ($ret) { + return $ret; + } + + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($parentId); + if ($ret) { + return $ret; + } + + if (!$parent->getCanContainChildren()) { + return GalleryCoreApi::error(ERROR_ILLEGAL_CHILD); + } + + /* Record the owner */ + $this->setOwnerId($gallery->getActiveUserId()); + + /* Initialize the viewedSince timestamp */ + $this->setViewedSinceTimestamp(time()); + + /* By default, items can't contain children */ + $this->setCanContainChildren(false); + + /* Copy over anything else from the target entity */ + $this->setDescription($entity->getDescription()); + $this->setKeywords($entity->getKeywords()); + $this->setSummary($entity->getSummary()); + $this->setTitle($entity->getTitle()); + $this->setOriginationTimestamp($entity->getOriginationTimestamp()); + $this->setRenderer($entity->getRenderer()); + + return null; + } + + /** + * Delete this GalleryEntity. Delete all of its children also, if it has any. + * @return object GalleryStatus a status code + */ + function delete() { + global $gallery; + $storage =& $gallery->getStorage(); + + /* Delete any children */ + $query = ' + SELECT + [GalleryChildEntity::id] + FROM + [GalleryChildEntity] + WHERE + [GalleryChildEntity::parentId] = ? + '; + list ($ret, $searchResults) = $gallery->search($query, array($this->getId())); + if ($ret) { + return $ret; + } + + $i = 0; + while ($result = $searchResults->nextResult()) { + $ret = GalleryCoreApi::deleteEntityById($result[0]); + /* + * Deletes can cascade in interesting ways. For example, deleting a derivative will + * get rid of any other derivatives that are sourced to it, so it's possible that + * deleting children here can lead to a MISSING_OBJECT result unless we re-run the + * parent/child query each time. Easier to just ignore the MISSING_OBJECT error + * since we only care that it's gone. + */ + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return $ret; + } + if (!(++$i % 30)) { + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + } + } + + /* Delete myself */ + $ret = parent::delete(); + if ($ret) { + return $ret; + } + + /* Remove all my attributes */ + $ret = GalleryCoreApi::removeItemAttributes($this->getId()); + if ($ret) { + return $ret; + } + + if ($this->getParentId()) { + $event = GalleryCoreApi::newEvent('Gallery::ViewableTreeChange'); + $event->setData(array('userId' => null, 'itemId' => $this->getParentId())); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + + /* Instruct G2 to "touch" modification timestamp of parent album at end of request */ + $gallery->addShutdownAction(array('GalleryCoreApi', 'updateModificationTimestamp'), + array($this->getParentId())); + } + + return null; + } + + /** + * Move item to a new parent + * + * @param int $newParentId the id of the new parent GalleryItem + * @return object GalleryStatus a status code + */ + function move($newParentId) { + $parentId = $this->getParentId(); + $ret = parent::move($newParentId); + if ($ret) { + return $ret; + } + + $event = GalleryCoreApi::newEvent('Gallery::ViewableTreeChange'); + $event->setData(array('userId' => null, 'itemId' => + empty($parentId) ? $this->getParentId() : array($parentId, $this->getParentId()))); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + + /* Set the new parent sequence */ + list ($ret, $newParentSequence) = GalleryCoreApi::fetchParentSequence($this->getParentId()); + if ($ret) { + return $ret; + } + $newParentSequence[] = $this->getParentId(); + $ret = GalleryCoreApi::setParentSequence($this->getId(), $newParentSequence); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Save the changes to this GalleryItem. + * + * @return object GalleryStatus a status code + */ + function save($postEvent=true) { + global $gallery; + $isNew = $this->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED); + + $changedParent = $this->isModified('parentId'); + if ($changedParent) { + $oldParentId = $this->getOriginalValue('parentId'); + } + + $setAclId = 0; + if ($isNew && $this->getParentId()) { + list ($ret, $setAclId) = GalleryCoreApi::fetchAccessListId($this->getParentId()); + if ($ret) { + return $ret; + } + } + + /* Save myself */ + $ret = parent::save($postEvent, $setAclId); + if ($ret) { + return $ret; + } + + if ($isNew) { + if ($this->getParentId()) { + list ($ret, $parentSequence) = + GalleryCoreApi::fetchParentSequence($this->getParentId()); + if ($ret) { + return $ret; + } + $parentSequence[] = $this->getParentId(); + } else { + $parentSequence = array(); + } + + /* Create an empty attribute entry */ + $ret = GalleryCoreApi::createItemAttributes($this->getId(), $parentSequence); + if ($ret) { + return $ret; + } + + if ($this->getParentId()) { + $event = GalleryCoreApi::newEvent('Gallery::ViewableTreeChange'); + $event->setData(array('userId' => null, 'itemId' => $this->getParentId())); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + } + } + if (($isNew || $changedParent) && $this->getParentId()) { + /* Instruct G2 to "touch" modification timestamp of parent album at end of request */ + $gallery->addShutdownAction(array('GalleryCoreApi', 'updateModificationTimestamp'), + array($this->getParentId())); + } + if (!empty($oldParentId)) { + $gallery->addShutdownAction(array('GalleryCoreApi', 'updateModificationTimestamp'), + array($oldParentId)); + } + + return null; + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryItem'; + } + + function getCanContainChildren() { + return $this->canContainChildren; + } + + function setCanContainChildren($canContainChildren) { + $this->canContainChildren = $canContainChildren; + } + + function getDescription() { + return $this->description; + } + + function setDescription($description) { + $this->description = $description; + } + + function getKeywords() { + return $this->keywords; + } + + function setKeywords($keywords) { + $this->keywords = $keywords; + } + + function getOwnerId() { + return $this->ownerId; + } + + function setOwnerId($ownerId) { + $this->ownerId = $ownerId; + } + + function getRenderer() { + return $this->renderer; + } + + function setRenderer($renderer) { + $this->renderer = $renderer; + } + + function getSummary() { + return $this->summary; + } + + function setSummary($summary) { + $this->summary = $summary; + } + + function getTitle() { + return $this->title; + } + + function setTitle($title) { + $this->title = $title; + } + + function getViewedSinceTimestamp() { + return $this->viewedSinceTimestamp; + } + + function setViewedSinceTimestamp($viewedSinceTimestamp) { + $this->viewedSinceTimestamp = $viewedSinceTimestamp; + } + + function getOriginationTimestamp() { + return $this->originationTimestamp; + } + + function setOriginationTimestamp($originationTimestamp) { + $this->originationTimestamp = $originationTimestamp; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryLockSystem.class b/Source/gallery2/modules/core/classes/GalleryLockSystem.class new file mode 100644 index 0000000..3a58ebc --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryLockSystem.class @@ -0,0 +1,363 @@ + + * @author Alan Harder + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryLockSystem { + + /** + * Information about all the locks we currently hold. + * array of (lockId => array('lockId' => lock id, 'type' => LOCK_READ or LOCK_WRITE, + * 'ids' => array of locked object id => additional data)) + * @var array + * @access protected + */ + var $_locks; + + /** + * List of locks that are pending release. + * array of (lockId => array('lockId' => lock id, 'type' => LOCK_READ or LOCK_WRITE, + * 'ids' => array of locked object id => additional data)) + * @var array + * @access protected + */ + var $_releaseQueue; + + + function GalleryLockSystem() { + $this->_locks = $this->_releaseQueue = array(); + } + + /** + * Read lock one or more objects + * + * @param mixed $ids array of ids to lock, or single int id + * @param int $timeout (optional) how many seconds to wait for the lock before giving up + * @return array object GalleryStatus a status code + * mixed the lock id + */ + function acquireReadLock($ids, $timeout=10) { + if (!is_array($ids)) { + $ids = array($ids); + } + + /* + * Close out write locks pending release that cover any of these ids + * (this does leave a window where another request could grab a lock) + */ + foreach ($this->_releaseQueue as $lockId => $lock) { + if ($lock['type'] != LOCK_WRITE) { + continue; + } + $foundIds = array_intersect(array_keys($lock['ids']), $ids); + if (count($foundIds) == count($lock['ids'])) { + /* Release this entire lock */ + $ret = $this->_releaseLocksNow(array($lockId => $lock)); + if ($ret) { + return array($ret, null); + } + unset($this->_releaseQueue[$lockId]); + } else if (!empty($foundIds)) { + /* Remove ids from this lock */ + $ret = $this->_removeObjectsFromLock($this->_releaseQueue[$lockId], $foundIds); + if ($ret) { + return array($ret, null); + } + } + } + + list ($ret, $lockId) = $this->_acquireLock($ids, $timeout, LOCK_READ); + if ($ret) { + return array($ret, null); + } + + return array(null, $lockId); + } + + /** + * Write lock one or more objects + * + * @param mixed $ids array of ids to lock, or single int id + * @param int $timeout (optional) how many seconds to wait for the lock before giving up + * @return array object GalleryStatus a status code + * mixed the lock id + */ + function acquireWriteLock($ids, $timeout=10) { + if (!is_array($ids)) { + $ids = array($ids); + } + + /* + * Check for locks pending release that cover any of these ids. + * Move write locks between lockIds to keep lock in place; close out read locks + * (so read->write does leave a window where another request could grab a lock) + */ + $relock = array(); + foreach ($this->_releaseQueue as $lockId => $lock) { + $foundIds = array_intersect(array_keys($lock['ids']), $ids); + if (empty($foundIds)) { + continue; + } + if ($lock['type'] == LOCK_WRITE) { + $relock[$lockId] = $foundIds; + $ids = array_diff($ids, $foundIds); + } else if (count($foundIds) == count($lock['ids'])) { + /* Release this entire read lock */ + $ret = $this->_releaseLocksNow(array($lockId => $lock)); + if ($ret) { + return array($ret, null); + } + unset($this->_releaseQueue[$lockId]); + } else if (!empty($foundIds)) { + /* Remove ids from this read lock */ + $ret = $this->_removeObjectsFromLock($this->_releaseQueue[$lockId], $foundIds); + if ($ret) { + return array($ret, null); + } + } + } + + if (!empty($ids)) { + list ($ret, $lockId) = $this->_acquireLock($ids, $timeout, LOCK_WRITE); + if ($ret) { + return array($ret, null); + } + } else { + list ($ret, $lockId) = $this->_newLockId(); + if ($ret) { + return array($ret, null); + } + $this->_locks[$lockId] = array('lockId' => $lockId, 'type' => LOCK_WRITE); + } + + if (!empty($relock)) { + $ret = $this->_moveObjectsBetweenLocks($relock, $lockId); + if ($ret) { + return array($ret, null); + } + } + return array(null, $lockId); + } + + /** + * Extending class must implement this function to actually acquire a lock. + * + * @param array $ids of object ids + * @param int $timeout how many seconds to wait for the lock before giving up + * @param int $lockType LOCK_READ or LOCK_WRITE + * @return array object GalleryStatus a status code + * int the lock id + * @access protected + * @abstract + */ + function _acquireLock($ids, $timeout, $lockType) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } + + /** + * Return true if the given id is read locked or write locked + * + * @param int $id an object id + * @return boolean true if the object is read locked + */ + function isReadLocked($id) { + foreach ($this->_locks as $lockId => $lock) { + if (isset($lock['ids'][$id])) { + return true; + } + } + + return false; + } + + /** + * Return true if the given id is write locked + * + * @param int $id an object id + * @return boolean true if the object is write locked + */ + function isWriteLocked($id) { + foreach ($this->_locks as $lockId => $lock) { + if ($lock['type'] == LOCK_WRITE && isset($lock['ids'][$id])) { + return true; + } + } + + return false; + } + + /** + * Release the given lock(s) + * (queue the specified locks for later release on transactional databases or release them + * immediately if transactions are not supported) + * + * @param mixed $lockIds array of lock ids, or a single lock id + * @return object GalleryStatus a status code + */ + function releaseLocks($lockIds) { + global $gallery; + $storage =& $gallery->getStorage(); + + if (!is_array($lockIds)) { + $lockIds = array($lockIds); + } + + /* Remove any empty or invalid elements */ + foreach ($lockIds as $key => $lockId) { + if (empty($lockId) || !isset($this->_locks[$lockId])) { + unset($lockIds[$key]); + } + } + /* Queue locks for release */ + foreach ($lockIds as $lockId) { + $this->_releaseQueue[$lockId] = $this->_locks[$lockId]; + unset($this->_locks[$lockId]); + } + + if (!$storage->isTransactional()) { + $ret = $this->releaseQueue(); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Cleanup any locks queued for release + * + * @return object GalleryStatus a status code + */ + function releaseQueue() { + if (!empty($this->_releaseQueue)) { + $ret = $this->_releaseLocksNow($this->_releaseQueue); + if ($ret) { + return $ret; + } + $this->_releaseQueue = array(); + } + return null; + } + + /** + * Release the given locks now + * + * @param array $locks of lockId => lock + * @return object GalleryStatus a status code + * @access protected + * @abstract + */ + function _releaseLocksNow($locks) { + return GalleryCoreApi::error(ERROR_UNIMPLEMENTED); + } + + /** + * Remove some object ids from the given lock. + * + * @param array $lock + * @param array $ids ids to remove + * @return object GalleryStatus a status code + * @access protected + * @abstract + */ + function _removeObjectsFromLock(&$lock, $ids) { + return GalleryCoreApi::error(ERROR_UNIMPLEMENTED); + } + + /** + * Move ids from givens locks into a new lock. + * Remove any locks that now have no objects remaining. + * + * @param array $relock of (lockId => array of ids) + * @param int $newLockId move ids into this lock + * @return object GalleryStatus a status code + * @access protected + */ + function _moveObjectsBetweenLocks($relock, $newLockId) { + foreach ($relock as $lockId => $ids) { + foreach ($ids as $id) { + $this->_locks[$newLockId]['ids'][$id] = + $this->_releaseQueue[$lockId]['ids'][$id]; + unset($this->_releaseQueue[$lockId]['ids'][$id]); + } + if (empty($this->_releaseQueue[$lockId]['ids'])) { + unset($this->_releaseQueue[$lockId]); + } + } + return null; + } + + /** + * Generate an id for a new lock. + * + * @return array object GalleryStatus a status code + * mixed lockId + * @access protected + * @abstract + */ + function _newLockId() { + return GalleryCoreApi::error(ERROR_UNIMPLEMENTED); + } + + /** + * Release any locks that we're holding + * + * @return object GalleryStatus a status code + */ + function releaseAllLocks() { + $ret = $this->releaseLocks(array_keys($this->_locks)); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Refresh all the locks that we hold so that they aren't accidentally considered expired + * + * @param int $freshUntil the new "fresh until" timestamp + * @return object GalleryStatus a status code + * @abstract + */ + function refreshLocks($freshUntil) { + return GalleryCoreApi::error(ERROR_UNIMPLEMENTED); + } + + /** + * Return the ids of all the locks we hold + * + * @return array lock ids + */ + function getLockIds() { + return array_keys($this->_locks); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryModule.class b/Source/gallery2/modules/core/classes/GalleryModule.class new file mode 100644 index 0000000..a2814d5 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryModule.class @@ -0,0 +1,648 @@ + + * @version $Revision: 16630 $ + */ +class GalleryModule extends GalleryPlugin { + + /** + * The module group (optional). + * Used to better organize site admin pages; array('group' => string, 'groupLabel' => string) + * @var array + * @access private + */ + var $_group; + + /** + * This module's callbacks. This is a pipe (|) delimited string containing + * one or more of the following values: + * registerEventListeners + * getSiteAdminViews + * getItemAdminViews + * getUserAdminViews + * getSystemLinks + * getItemLinks + * getItemSummaries + * + * eg. getItemAdminViews|getSystemLinks|getItemLinks + * + * @var string + * @access private + */ + var $_callbacks = ''; + + /** + * The version of the GalleryModule API required by this module + * @var array + * @access private + */ + var $_requiredModuleApi; + + + /** + * Return the major and minor version of the GalleryModule API. + * + * This follows the same rules as the core API. + * @see GalleryCoreApi::getApiVersion + * + * @todo for next major version bump: + * - Change GalleryDataItem::render to match GalleryRenderer::render and + * consider dropping the format, since it's always HTML. + * - Drop the redirect url from GalleryPlugin::deactivate() (also requires a + * major bump in GalleryTheme) + * - Remove TYPE=DB_TABLE_TYPE replacement in MySqlStorage::_getSqlReplacements + * - change signature of getItemlinks() in all modules (add new parameter) + * - Remove rewrite v1.1.8 version checks in webdav, watermark, httpauth, ... (look for todo) + * + * @return array major number, minor number + */ + function getApiVersion() { + return array(3, 5); + } + + /** + * Register any event listeners that this module requires. Each module will get a chance to + * register its event listeners before any events are posted. + */ + function registerEventListeners() { + } + + /** + * Perform the module installation or upgrade, whatever is required. + * + * It will do the following: + * 1. Get the current version of the module (if its already installed) + * 2. Request that the storage subsystem install this module's database + * tables (which will also upgrade any tables that require it) + * 3. Let the module perform any necessary upgrade tasks. + * 4. Set the new module version and api requirements into the database + * + * Modules should not need to override this method. Instead they should + * override the upgrade method and put all their module specific logic there. + * + * @return object GalleryStatus a status code + */ + function installOrUpgrade($bootstrap=false, $statusMonitor=null) { + global $gallery; + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryModule::installOrUpgrade %s module', $this->getId())); + } + + if (!GalleryCoreApi::isPluginCompatibleWithApis($this)) { + return GalleryCoreApi::error(ERROR_PLUGIN_VERSION_MISMATCH, __FILE__, __LINE__, + sprintf('incompatible %s %s', $this->getPluginType(), $this->getId())); + } + + if ($bootstrap) { + $gallery->debug('In bootstrap mode (core module)'); + /* + * If we're in bootstrap mode, then we may not even have a version table. If we try + * to query it, we will cause our current transaction to abort on some databases. + * So, just assume that there's no installed version. + */ + $installedVersion = null; + } else { + list ($ret, $installedVersion) = $this->getParameter('_version'); + if ($ret) { + return $ret; + } + } + + if ($installedVersion != $this->getVersion()) { + if ($gallery->getDebug()) { + if (!$bootstrap) { + $gallery->debug('Old version: ' . $installedVersion + . ' New version: ' . $this->getVersion()); + } + $gallery->debug(sprintf('Configure store for %s module', $this->getId())); + } + /* The store requires configuration. */ + $storage =& $gallery->getStorage(); + $ret = $storage->configureStore($this->getId()); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to configure the persistent store, ' . + 'this is the error stack trace: %s', + $ret->getAsText())); + } + return $ret; + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Upgrade (or install) %s module', $this->getId())); + } + + $ret = $this->upgrade($installedVersion, $statusMonitor); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to upgrade the %s module, this ' . + 'is the error stack trace: %s', $this->getId(), + $ret->getAsText())); + } + return $ret; + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Update module paramater for the %s module', + $this->getId())); + } + + $data = array('_version' => $this->getVersion(), + '_callbacks' => $this->getCallbacks(), + '_requiredCoreApi' => join(',', $this->getRequiredCoreApi()), + '_requiredModuleApi' => join(',', $this->getRequiredModuleApi())); + + foreach ($data as $key => $value) { + $ret = $this->setParameter($key, $value); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to update the module parameter %s, ' + . 'this is the error stack trace: %s', $key, + $ret->getAsText())); + } + return $ret; + } + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('ConfigureStoreCleanup for %s module', $this->getId())); + } + $ret = $storage->configureStoreCleanup($this->getId()); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to clean up the persistent store, ' . + 'this is the error stack trace: %s', + $ret->getAsText())); + } + return $ret; + } + + /* + * Reactivate myself so that any activate based tasks like registering factory + * implementations, toolkit operations, etc can happen. Note that it's possible for + * this to successfully deactivate and then fail to activate again. upgrade() should + * get the module read properly but it may fail under some edge cases. + */ + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Reactivate %s module', $this->getId())); + } + list ($ret, $redirect) = $this->reactivate(); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to reactivate the module, this' . + ' is the error stack trace: %s', $ret->getAsText())); + } + return $ret; + } + + /* Optimize and analyze altered tables */ + $cacheKey = 'GalleryStorage::configureStore::alter'; + if (GalleryDataCache::containsKey($cacheKey)) { + /* + * The changes must be committed before the non-transactional optimize() can be + * executed. + */ + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + + $altered = GalleryDataCache::get($cacheKey); + $storage->optimize($altered); + if ($ret) { + return $ret; + } + GalleryDataCache::remove($cacheKey); + } + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Successfully finished installOrUpgrade %s module', + $this->getId())); + } + + return null; + } + + /** + * Remove this module's plugin parameters and all of its database tables. + * + * @return object GalleryStatus a status code + */ + function uninstall() { + global $gallery; + + /* Find and remove all module permissions */ + $ret = GalleryCoreApi::unregisterModulePermissions($this->getId()); + if ($ret) { + return $ret; + } + + /* Remove onLoadHandlers */ + $ret = GalleryCoreApi::removeOnLoadHandlers($this->getOnLoadHandlerIds()); + if ($ret) { + return $ret; + } + + /* Delete entities for types registered by this module */ + $ret = $this->_deleteModuleEntities(); + if ($ret) { + return $ret; + } + + /* Remove all tables */ + $storage =& $gallery->getStorage(); + $ret = $storage->unconfigureStore($this->getId()); + if ($ret) { + return $ret; + } + + /* Remove this plugin */ + return parent::uninstall(); + } + + /** + * Delete all entities with a type registered by this module. + * @return object GalleryStatus a status code + * @access private + */ + function _deleteModuleEntities() { + global $gallery; + $types = $this->getModuleEntityTypes(); + if (empty($types)) { + return null; + } + + $query = ' + SELECT [GalleryEntity::id] + FROM [GalleryEntity] + WHERE [GalleryEntity::entityType] IN (' . GalleryUtilities::makeMarkers($types) . ') + '; + $gallery->guaranteeTimeLimit(120); + list ($ret, $searchResults) = $gallery->search($query, $types); + if ($ret) { + return $ret; + } + $i = 0; + $storage =& $gallery->getStorage(); + while ($result = $searchResults->nextResult()) { + $ret = GalleryCoreApi::deleteEntityById($result[0]); + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return $ret; + } + if (!(++$i % 20)) { + $gallery->guaranteeTimeLimit(120); + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + } + } + return null; + } + + /** + * @see GalleryPlugin::deactivate + */ + function deactivate($postDeactivationEvent=true) { + list ($ret, $redirect) = parent::deactivate($postDeactivationEvent); + if ($ret) { + return array($ret, null); + } + + if (!empty($redirect)) { + return array(null, $redirect); + } + + $ret = GalleryCoreApi::unregisterToolkitsByModuleId($this->getId()); + if ($ret) { + return array($ret, null); + } + + $ret = GalleryCoreApi::unregisterFactoryImplementationsByModuleId($this->getId()); + if ($ret) { + return array($ret, null); + } + + return array(null, array()); + } + + /** + * @see GalleryPlugin::activate + * + * Note: if you add something here, consider adding the same functionality + * to installOrUpgrade (see the TODO there). + */ + function activate($postActivationEvent=true) { + global $gallery; + $storage =& $gallery->getStorage(); + + if (!GalleryCoreApi::isPluginCompatibleWithApis($this)) { + return array(GalleryCoreApi::error(ERROR_PLUGIN_VERSION_MISMATCH, __FILE__, __LINE__, + sprintf('incompatible %s %s', $this->getPluginType(), $this->getId())), null); + } + + /* Make sure that we don't need configuration before we allow activation. */ + list ($ret, $needs) = $this->needsConfiguration(); + if ($ret) { + return array($ret, null); + } + if ($needs) { + return array(GalleryCoreApi::error(ERROR_CONFIGURATION_REQUIRED), + null); + } + + $ret = $storage->updateTableInfo($this->getId()); + if ($ret) { + return array($ret, null); + } + + $ret = $this->performFactoryRegistrations(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $redirect) = parent::activate($postActivationEvent); + if ($ret) { + return array($ret, null); + } + + if (!empty($redirect)) { + return array(null, $redirect); + } + + return array(null, array()); + } + + /** + * Does this module require configuration before it can be activated? + * + * @return array object GalleryStatus a status code + * boolean + */ + function needsConfiguration() { + return array(null, false); + } + + /** + * Allow this module to autoconfigure itself. It should only autoconfigure if it is + * marked as needing configuration (see GalleryModule::needsConfiguration) and it should + * do its best to choose a reasonable configuration. Return true upon success, + * even if nothing has to be done to get a successful configuration. This method + * should accept all the module's defaults wherever possible. + * + * @return array object GalleryStatus a status code + * boolean was module able to autoconfigure + */ + function autoConfigure() { + /* By default we don't need any configuration */ + return array(null, true); + } + + /** + * Get the name of the GalleryView containing the various site administration views for this + * module. Note that the text value is localized since they will be displayed directly to the + * user. Include group/groupLabel in data to override the values from getGroup(). + * + * @return array object GalleryStatus a status code + * array( array('name' => name, 'view' => view, + * [optional: 'group' => group, 'groupLabel' => localized label]), ...) + */ + function getSiteAdminViews() { + return array(null, array()); + } + + /** + * Get the list of GalleryViews containing the various item administration views for this + * module. The module should check permissions and item type to determine which views are + * applicable for the authenticated user. As with getSiteAdminViews(), the view title text + * must be localized. + * + * @param object GalleryItem $item + * @return array object GalleryStatus a status code + * array( array('name' => name, 'view' => view), ...) + */ + function getItemAdminViews($item) { + return array(null, array()); + } + + /** + * Get the list of GalleryViews containing the various user administration views for this + * module. The module should check permissions and item type to determine which views are + * applicable for the authenticated user. As with getSiteAdminViews(), the view title text + * must be localized. + * + * @param object GalleryUser $user + * @return array object GalleryStatus a status code + * array( array('name' => name, 'view' => view), ...) + */ + function getUserAdminViews($user) { + return array(null, array()); + } + + /** + * Get the name of the GalleryView containing the administration view specifically for + * configuring this module. It may be one that is also listed in getSiteAdminViews(). + * + * @return array string view name + */ + function getConfigurationView() { + return null; + } + + /** + * Return 0 or more system-specific links to an arbitrary module view. Get the name of the + * GalleryView containing the administration view specifically for configuring this module. + * It may be one that is also listed in getSiteAdminViews(). As with getSiteAdminViews(), + * the view title text must be localized. + * + * @return array object GalleryStatus a status code + * array(string linkId => array('text' => 'localized text', + * 'params' => array(key => value, key => value)) + * ...) + */ + function getSystemLinks() { + return array(null, array()); + } + + /** + * Return 0 or more item-specific links to an arbitrary module view. + * These are links to item specific module views. For example, the + * comments module uses this to link to the "add comments" view. + * + * @param array $items array of object GalleryItem + * @param array $wantsDetailedLinks (id => 1, id => 1) we want detailed links for these ids + * @param array $permissions id => array(permission => 1, ...) of item permissions + * @param int $userId id of user viewing links + * @return array object GalleryStatus a status code + * array(itemId => array(array('text' => 'localized text', + * 'params' => array(key => value, key => value)) + * ...)) + */ + function getItemLinks($items, $wantsDetailedLinks, $permissions, $userId) { + return array(null, array()); + } + + /** + * Return module-specific summary content about the item + * + * @param array $items array of object GalleryItem + * @param array $permissions id => array(permission => 1, ...) of item permissions + * @param object GalleryTemplate $template the master template instance + * @return array object GalleryStatus a status code + * array (id => string HTML content, ..) + */ + function getItemSummaries($items, $permissions, &$template) { + return array(null, array()); + } + + /** + * Register any factory implementations. This is called at module activation time. + * All implementations are unregistered when the module is deactivated. + * + * @return object GalleryStatus a status code + */ + function performFactoryRegistrations() { + return null; + } + + /** + * Get ids of all onLoadHandlers this module may register. + * These will be removed from all entities upon module uninstall. + * + * @return array of factory impl ids + */ + function getOnLoadHandlerIds() { + return array(); + } + + /** + * Get names of all GalleryEntity types this module may register. + * Entities of these types will be deleted upon module uninstall. + * + * @return array of class names + */ + function getModuleEntityTypes() { + return array(); + } + + /** + * Returns a set of short URL rules. Array structure: + * + * $rule['match'] An array of view => viewName, subView => subViewName to match + * when generating the short URLs. + * $rule['pattern'] Proposed short URL style (ie 'v/%path%'). + * $rule['keywords'] Pattern keywords should have the same name as its coresponding + * url parameter key. This is an array of additional keywords + * defined keyword => array(pattern => regex, ignored => 1). If ignored + * is set, the this keyword wont be appended to the queryString. + * $rule['queryString'] Additional queryString parameters to append. + * $rule['locked'] If this is set, the user may not change the pattern. + * $rule['comment'] This should be a localized comment. + * return array($rule, ...); + * + * @return array of short URL rules. + */ + function getRewriteRules() { + return array(); + } + + /* Getters and setters below */ + + function setGroup($group, $groupLabel) { + $this->_group = array('group' => $group, 'groupLabel' => $groupLabel); + } + + function getGroup() { + if (empty($this->_group)) { + $groupLabel = 'Other'; + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if (!$ret) { + $groupLabel = $core->translate('Other'); + } + return array('group' => 'other', 'groupLabel' => $groupLabel); + } + return array('group' => $this->_group['group'], + 'groupLabel' => $this->translate($this->_group['groupLabel'])); + } + + function getCallbacks() { + return $this->_callbacks; + } + + function setCallbacks($callbacks) { + $this->_callbacks = $callbacks; + } + + /** + * @see GalleryPlugin::getPluginType + */ + function getPluginType() { + return 'module'; + } + + function setRequiredModuleApi($requirement) { + $this->_requiredModuleApi = $requirement; + } + + function getRequiredModuleApi() { + return $this->_requiredModuleApi; + } + + /** + * Translate string. Results are cached. + * @param mixed $params string or array for translation + * @param string $postSprintf (optional) attempt to translate post-sprintf string using this + * value. This allows specific translation of strings like "Edit Album" or "Edit Photo" + * with a fallback to translation of "Edit %s" for other %s values. + * Currently only input string with single % token is supported. + * @return translated string + * @access protected + */ + function _translate($params, $postSprintf=null) { + if (isset($postSprintf)) { + $string = sprintf($params['text'], $postSprintf); + } else if (is_string($params)) { + $string = $params; + } + if (isset($string) && GalleryDataCache::containsKey('_translate ' . $string)) { + return GalleryDataCache::get('_translate ' . $string); + } + if (isset($postSprintf)) { + $result = $this->translate($string); + } + if (!isset($result) || $result == $string) { + $result = $this->translate($params); + } + if (isset($string)) { + GalleryDataCache::put('_translate ' . $string, $result); + } + return $result; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryMovieItem.class b/Source/gallery2/modules/core/classes/GalleryMovieItem.class new file mode 100644 index 0000000..8475410 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryMovieItem.class @@ -0,0 +1,329 @@ +GalleryMovieItem + * @g2 GalleryDataItem + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15559 $ + */ +class GalleryMovieItem extends GalleryDataItem { + + /** + * The width of this movie. + * @var int + * + * @g2 + * @g2 width + * @g2 INTEGER + * @g2 + * @g2 FULL + * @g2 + */ + var $width; + + /** + * The height of this movie. + * @var int + * + * @g2 + * @g2 height + * @g2 INTEGER + * @g2 + * @g2 FULL + * @g2 + */ + var $height; + + /** + * The duration of the movie in seconds + * @var int + * + * @g2 + * @g2 duration + * @g2 INTEGER + * @g2 + * @g2 FULL + * @g2 + */ + var $duration; + + + /** + * @see GalleryDataItem::canBeViewedInline + */ + function canBeViewedInline() { + /* The mimeTypes listed here should provide a render() output */ + static $mimeList = array( + 'video/quicktime', + 'video/mpeg', + 'video/mp4', + 'video/x-msvideo', + 'video/x-ms-wmv', + 'video/x-ms-asf', + 'video/x-ms-asx', + ); + return $this->_canBeViewedInline( + ($this->getWidth() > 0 && $this->getHeight() > 0) ? $mimeList : null); + } + + /** + * Create a new GalleryMovieItem from a video file + * + * @param int $parentId the id of the parent GalleryItem + * @param string $videoFileName the path to the source video + * @param string $mimeType + * @param string $targetName the desired name of the new item + * @param boolean $symlink (optional) a boolean true if we should symlink instead + * of copy (default is false). + * @return object GalleryStatus a status code + */ + function create($parentId, $videoFileName, $mimeType, $targetName=null, $symlink=false) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Validate the input filename */ + if (empty($videoFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + if (!$platform->file_exists($videoFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PATH); + } + + /* Create our data item */ + $ret = parent::create($parentId, $videoFileName, $mimeType, $targetName, $symlink); + if ($ret) { + return $ret; + } + + /* Default to empty dimensions */ + $this->setWidth(0); + $this->setHeight(0); + $this->setDuration(0); + + /* We're linkable */ + $this->setIsLinkable(true); + + /* Detect our dimensions, if possible */ + $ret = $this->rescan(); + if ($ret) { + /* Cleanup our datafile on failure */ + list ($ret2, $path) = $this->fetchPath(); + if (!$ret2) { + @$platform->unlink($path); + } + return $ret; + } + + return null; + } + + /** + * @see GalleryDataItem::rescan + */ + function rescan() { + global $gallery; + + $ret = parent::rescan(); + if ($ret) { + return $ret; + } + + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + + $mimeType = $this->getMimeType(); + list ($ret, $toolkit) = + GalleryCoreApi::getToolkitByProperty($mimeType, 'dimensions-and-duration'); + if ($ret) { + return $ret; + } + + if (isset($toolkit)) { + list ($ret, $dimensions) = + $toolkit->getProperty($mimeType, 'dimensions-and-duration', $path); + if ($ret) { + if (!($ret->getErrorCode() & ERROR_STORAGE_FAILURE)) { + /* + * We can't get the dimensions. It may be a bad movie, or the graphics toolkit + * may be broken. We can't tell, so set everything to zero for now. + * + * TODO: trapping everything but storage failures is too broad. Trap only + * toolkit failures after we refactor all toolkits to set the + * ERROR_TOOLKIT_FAILURE bit on every error that they generate or pass + * through. + */ + $dimensions = array(0, 0, 0); + } else { + return $ret; + } + } + + $this->setWidth($dimensions[0]); + $this->setHeight($dimensions[1]); + $this->setDuration(round($dimensions[2])); + } + + return null; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function itemTypeName($localized = true) { + global $gallery; + if ($localized) { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if (! $ret) { + return array($core->translate('Movie'), $core->translate('movie')); + } + } + return array('Movie', 'movie'); + } + + /** + * @see GalleryDataItem::render + */ + function render($format, $params) { + global $gallery; + + $fallback = trim(preg_replace("/[\r\n]/", '', $params['fallback'])); + + switch ($format) { + case 'HTML': + $urlGenerator =& $gallery->getUrlGenerator(); + $src = $urlGenerator->generateUrl( + array('view' => 'core.DownloadItem', 'itemId' => $this->getId(), + 'serialNumber' => $this->getSerialNumber()), + array('forceFullUrl' => true, 'forceSessionId' => true)); + + list ($width, $height) = array($this->getWidth(), $this->getHeight()); + switch ($this->getMimeType()) { + case 'video/quicktime': + return sprintf( + ' + + + + + + %s + ', + + $width, $height + 16, + !empty($params['id']) ? $params['id'] : 'movie', + !empty($params['class']) ? ' class="' . $params['class'] . '"' : '', + $src, $src, + $width, $height + 16, + $this->getMimeType(), + $fallback); + + case 'video/mpeg': + case 'video/mp4': + case 'video/x-msvideo': + case 'video/x-ms-wmv': + $classId = 'CLSID:05589FA1-C356-11CE-BF01-00AA0055595A'; + case 'video/x-ms-asf': + case 'video/x-ms-asx': + if (!isset($classId)) { + $classId = 'CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95'; + } + return sprintf( + ' + + + + + + + + %s + ', + + $classId, $width, $height + 50, + !empty($params['id']) ? $params['id'] : 'movie', + !empty($params['class']) ? ' class="' . $params['class'] . '"' : '', + $src, $src, + $width, $height + 50, + $this->getMimeType(), + $fallback); + + default: + return $fallback; + } + + default: + return null; + } + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryMovieItem'; + } + + function getWidth() { + return $this->width; + } + + function setWidth($width) { + $this->width = $width; + } + + function getHeight() { + return $this->height; + } + + function setHeight($height) { + $this->height = $height; + } + + function getDuration() { + return $this->duration; + } + + function setDuration($duration) { + $this->duration = $duration; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPersistent.class b/Source/gallery2/modules/core/classes/GalleryPersistent.class new file mode 100644 index 0000000..4091292 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPersistent.class @@ -0,0 +1,151 @@ + + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryPersistent { + + /** + * Keep track of which internal values are persistant and which ones aren't + * so that we'll know when and what to save to the database. + * @var array + * @access private + */ + var $_persistentStatus; + + + function GalleryPersistent() { + /* Initialize our persistent info tracker */ + $this->_persistentStatus['flags'] = 0; + $this->_persistentStatus['originalValue'] = array(); + } + + /** + * Have we modified any data in this class? + * @param string $member (optional) check just this field + * @return boolean true if modified, false if not. + */ + function isModified($member=null) { + if ($member) { + return $this->_persistentStatus['originalValue'][$member] !== $this->$member; + } else { + $target = $this->entityType; + foreach (array_keys($this->_persistentStatus['originalValue']) as $key) { + if ($this->_persistentStatus['originalValue'][$key] != $this->$key) { + return true; + } + } + return false; + } + } + + /** + * Return the original value of the given member. + * @return mixed the value, or null if it was not defined. + */ + function getOriginalValue($member) { + if (!isset($this->_persistentStatus['originalValue'][$member])) { + return null; + } + return $this->_persistentStatus['originalValue'][$member]; + } + + /** + * Reset all original values to the current values in the entity (or null if so specified). + * + * @param boolean $resetToNull (optional) reset all original values to null if true + * @return object GalleryStatus a status code + */ + function resetOriginalValues($resetToNull=false) { + list ($ret, $data) = GalleryCoreApi::describeEntity($this->entityType); + if ($ret) { + return null; + } + + $this->_persistentStatus['originalValue'] = array(); + $target = $this->entityType; + while ($target) { + foreach (array_keys($data[$target]['members']) as $member) { + if ($resetToNull) { + $this->_persistentStatus['originalValue'][$member] = null; + } else { + $this->_persistentStatus['originalValue'][$member] = + isset($this->$member) ? $this->$member : null; + } + } + $target = $data[$target]['parent']; + } + + return null; + } + + /** + * Set a flag. + * The GalleryStorage strategy uses this to flag objects for its own internal purposes. + * + * @param int $flag a bit flag to set + */ + function setPersistentFlag($flag) { + $this->_persistentStatus['flags'] |= $flag; + } + + /** + * Clear a flag. + * The GalleryStorage strategy uses this to flag objects for its own internal purposes. + * + * @param int $flag a bit flag to clear + */ + function clearPersistentFlag($flag) { + $this->_persistentStatus['flags'] &= ~$flag; + } + + /** + * Test a flag. + * The GalleryStorage strategy uses this to flag objects for its own internal purposes. + * + * @param int $flag a bit flag to test + * @return bool true if the bit is on, false otherwise + */ + function testPersistentFlag($flag) { + return $this->_persistentStatus['flags'] & $flag; + } + + /** + * Return the relative path to the class for this entity + * + * @return array object GalleryStatus a status code + * string a path like modules/core/classes/GalleryUser.class + */ + function getClassFile() { + list ($ret, $data) = GalleryCoreApi::describeEntity($this->entityType); + if ($ret) { + return array($ret, null); + } + return array( + null, "modules/{$data[$this->entityType]['module']}/classes/{$this->entityType}.class"); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPhotoItem.class b/Source/gallery2/modules/core/classes/GalleryPhotoItem.class new file mode 100644 index 0000000..edd1961 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPhotoItem.class @@ -0,0 +1,277 @@ +GalleryPhotoItem + * @g2 GalleryDataItem + * @g2 + * @g2 1 + * @g2 0 + * @g2 + * @g2 + * + * @package GalleryCore + * @subpackage Classes + * @author Bharat Mediratta + * @version $Revision: 15534 $ + */ +class GalleryPhotoItem extends GalleryDataItem { + + /** + * The width of this image. + * @var int + * + * @g2 + * @g2 width + * @g2 INTEGER + * @g2 + * @g2 READ + * @g2 + */ + var $width; + + /** + * The height of this image. + * @var int + * + * @g2 + * @g2 height + * @g2 INTEGER + * @g2 + * @g2 READ + * @g2 + */ + var $height; + + + /** + * @see GalleryDataItem::canBeViewedInline + */ + function canBeViewedInline() { + static $mimeList = array('image/jpeg', 'image/pjpeg', 'image/png', + 'image/gif', 'image/vnd.wap.wbmp'); + return $this->_canBeViewedInline($mimeList); + } + + /** + * Create a new GalleryPhotoItem from an image file + * + * @param int $parentId the id of the parent GalleryItem + * @param string $imageFileName the path to the source image + * @param string $mimeType + * @param string $targetName the desired name of the new item + * @param boolean $symlink (optional) a boolean true if we should symlink instead + * of copy (default is false). + * @return object GalleryStatus a status code + */ + function create($parentId, $imageFileName, $mimeType, $targetName=null, $symlink=false) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Validate the input filename */ + if (empty($imageFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + if (!$platform->file_exists($imageFileName)) { + return GalleryCoreApi::error(ERROR_BAD_PATH, __FILE__, __LINE__, $imageFileName); + } + + /* Create our data item */ + $ret = parent::create($parentId, $imageFileName, + $mimeType, $targetName, $symlink); + if ($ret) { + return $ret; + } + + /* We're linkable */ + $this->setIsLinkable(true); + + /* Default to empty dimensions */ + $this->setWidth(0); + $this->setHeight(0); + + /* Detect our dimensions, if possible */ + $ret = $this->rescan(); + if ($ret) { + /* Cleanup our datafile on failure */ + list ($ret2, $path) = $this->fetchPath(); + if (!$ret2) { + @$platform->unlink($path); + } + return $ret; + } + + return null; + } + + /** + * @see GalleryDataItem::rescan + */ + function rescan() { + $ret = parent::rescan(); + if ($ret) { + return $ret; + } + + list ($ret, $path) = $this->fetchPath(); + if ($ret) { + return $ret; + } + $mimeType = $this->getMimeType(); + + /* Check for CMYK colorspace and alter mime type if detected */ + list ($ret, $toolkit) = GalleryCoreApi::getToolkitByProperty($mimeType, 'colorspace'); + if ($ret) { + return $ret; + } + if (isset($toolkit)) { + list ($ret, $colorspace) = $toolkit->getProperty($mimeType, 'colorspace', $path); + if ($ret) { + $ret->addErrorCode(ERROR_BAD_DATA_TYPE); /* See BAD_DATA_TYPE comment below */ + return $ret; + } + if ($colorspace[0] == 'CMYK') { + $this->setMimeType($mimeType .= '-cmyk'); + } + $toolkit = null; + } + + list ($ret, $toolkit) = GalleryCoreApi::getToolkitByProperty($mimeType, 'dimensions'); + if ($ret) { + return $ret; + } + + if (isset($toolkit)) { + list ($ret, $dimensions) = $toolkit->getProperty($mimeType, 'dimensions', $path); + if ($ret) { + + /* + * If we can't get the dimensions, it may be a bad image + * Or our graphics code is broken. Hard to tell which at this point. + */ + $ret->addErrorCode(ERROR_BAD_DATA_TYPE); + return $ret; + } + + $this->setWidth($dimensions[0]); + $this->setHeight($dimensions[1]); + } + + return null; + } + + /** + * @see GalleryEntity::itemTypeName + */ + function itemTypeName($localized = true) { + if ($localized) { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if (! $ret) { + return array($core->translate('Photo'), $core->translate('photo')); + } + } + return array('Photo', 'photo'); + } + + /** + * @see GalleryDataItem::render + */ + function render($format, $params) { + global $gallery; + + switch($format) { + case 'HTML': + $urlGenerator =& $gallery->getUrlGenerator(); + $src = $urlGenerator->generateUrl( + array('view' => 'core.DownloadItem', 'itemId' => $this->getId(), + 'serialNumber' => $this->getSerialNumber()), + array('forceFullUrl' => !empty($params['forceFullUrl']))); + list ($width, $height) = array($this->getWidth(), $this->getHeight()); + + /* Shrink our dimensions if necessary */ + if (isset($params['maxSize'])) { + list ($width, $height) = + GalleryUtilities::shrinkDimensionsToFit($width, $height, $params['maxSize']); + unset($params['maxSize']); + } + + $sizeStr = ''; + if ($width > 0 && $height > 0) { + $sizeStr = sprintf(' width="%s" height="%s"', $width, $height); + } + if (!isset($params['alt'])) { + $params['alt'] = + $this->getTitle() ? GalleryUtilities::markup($this->getTitle(), 'strip') + : $this->getPathComponent(); + } + if (!isset($params['longdesc'])) { + $longdesc = preg_replace('/[\r\n]+/', ' ', + GalleryUtilities::markup($this->getDescription(), 'strip')); + if (!empty($longdesc)) { + $params['longdesc'] = $longdesc; + } + } + + $html = sprintf(' $value) { + if (isset($value)) { + $html .= " $attr=\"$value\""; + } + } + return $html . '/>'; + + default: + return null; + } + } + + /** + * @see GalleryEntity::getClassName + */ + function getClassName() { + return 'GalleryPhotoItem'; + } + + function getWidth() { + return $this->width; + } + + function setWidth($width) { + $this->width = $width; + } + + function getHeight() { + return $this->height; + } + + function setHeight($height) { + $this->height = $height; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPhpVm.class b/Source/gallery2/modules/core/classes/GalleryPhpVm.class new file mode 100644 index 0000000..87e4679 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPhpVm.class @@ -0,0 +1,270 @@ + + * @version $Revision: 15988 $ + */ +class GalleryPhpVm { + + /** + * Return true if the given function has been defined. + * + * @param string $functionName + * @return boolean + */ + function function_exists($functionName) { + return function_exists($functionName); + } + + /** + * Return true if the given extension is loaded. + * @param string $name + * @return boolean + */ + function extension_loaded($name) { + return extension_loaded($name); + } + + /** + * iconv -- Convert string to requested character encoding + * + * @param string $inCharset source character set + * @param string $outCharset target character set + * @param string $string data + * @return string result + */ + function iconv($inCharset, $outCharset, $string) { + return iconv($inCharset, $outCharset, $string); + } + + /** + * mb_convert_encoding -- Convert character encoding + * + * @param string $string data + * @param string $outCharset target character set + * @param string $inCharset source character set + * @return string result + */ + function mb_convert_encoding($string, $outCharset, $inCharset) { + return mb_convert_encoding($string, $outCharset, $inCharset); + } + + /** + * recode_string -- Recode a string according to a recode request + * + * @param string $request source..target character set + * @param string $string data + * @return string result + */ + function recode_string($request, $string) { + return recode_string($request, $string); + } + + /** + * Return the 32-byte md5 hash of the given string + * + * @param string $string string to be hashed + * @return string hashed string value + */ + function md5($string) { + return md5($string); + } + + /** + * Calculates the crc32 polynomial of a string + * + * @param string $string the value to be checksummed + * @return a signed integer checksum + */ + function crc32($string) { + return crc32($string); + } + + /** + * Query language and locale information + * + * @param int $item + */ + function nl_langinfo($item) { + return nl_langinfo($item); + } + + /** + * Set locale information. Passing multiple locales isn't avialable until PHP 4.3.0 so it's not + * supported here (yet). + * + * @param mixed $category + * @param string $locale + */ + function setlocale($category, $locale) { + return setlocale($category, $locale); + } + + /** + * Send a raw HTTP header + * + * PHP 4.1 compatible header() function. The second optional parameter http_response_code was + * introduced in PHP 4.3.0 and is therefore not supported in Gallery. + * + * @param string $string + * @param boolean $replace (optional) + */ + function header($string, $replace=null) { + if (!GalleryUtilities::isSafeHttpHeader($string)) { + return; + } + + return header($string, $replace); + } + + /** + * Checks if or where headers have been sent + * + * PHP 4.1 compatible headers_sent() function. The optional parameters were introduced in PHP + * 4.3.0 and are therefore not supported in Gallery. + * + * @return boolean whether headers are already sent + */ + function headers_sent() { + return headers_sent(); + } + + /** + * Gets the current configuration setting of magic quotes gpc + * + * @return integer 0 for off, 1 for on + */ + function get_magic_quotes_gpc() { + return get_magic_quotes_gpc(); + } + + /** + * Get configuration parameter + * + * @param string $varname + * @return string + */ + function ini_get($varname) { + return ini_get($varname); + } + + /** + * Set configuration parameter + * + * @param string $varname + * @param string $newvalue + * @return string + */ + function ini_set($varname, $newvalue) { + return ini_set($varname, $newvalue); + } + + /** + * Return current Unix timestamp + * + * @return int + */ + function time() { + return time(); + } + + /** + * Output a message and terminate the current script + * + * @param mixed $status (optional) + */ + function exit_($status=null) { + if (isset($status)) { + exit($status); + } else { + exit; + } + } + + /** + * Generate random integer + * + * @param int $min (optional) + * @param int $max (optional) + */ + function rand($min=null, $max=null) { + if (isset($min) && isset($max)) { + return rand($min, $max); + } else { + return rand(); + } + } + + /** + * Fetch all HTTP request headers + * + * @return array + */ + function getAllHeaders() { + return getallheaders(); + } + + /** + * Send mail + * + * @param string $to + * @param string $subject + * @param string $message + * @param string $additionalHeaders addition headers (optional) + * @param string $additionalParameters additional parameters (optional) + * @return boolean true if the mail was successfully accepted for delivery + */ + function mail($to, $subject, $message, $additionalHeaders=null, $additionalParameters=null) { + return mail($to, $subject, $message, $additionalHeaders, $additionalParameters); + } + + /** + * Inflate a deflated string + * + * @param string data compresed by gzdeflate + * @param int (optional) maximum length to decode + * @return string uncompressed data + */ + function gzinflate($data, $length=null) { + if (isset($length)) { + return gzinflate($data, $length); + } else { + return gzinflate($data); + } + } + + /** + * Checks if the class has been defined + * @param string $class_name + * @return bool true if $class_name is a defined class, false otherwise. + */ + function class_exists($class_name) { + return class_exists($class_name); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPlatform.class b/Source/gallery2/modules/core/classes/GalleryPlatform.class new file mode 100644 index 0000000..6cd0289 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPlatform.class @@ -0,0 +1,1224 @@ + + * @version $Revision: 15872 $ + * @abstract + */ +class GalleryPlatform { + + /** + * Copy a file. + * @param string $source the source file + * @param string $dest the destination file + * @return boolean true if the copy succeeded, false otherwise + */ + function copy($source, $dest) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("copy($source, $dest)"); + } + + if (is_uploaded_file($source)) { + $results = move_uploaded_file($source, $dest); + if (!$results) { + return $results; + } + $results = $this->chmod($dest); + } else { + if (!isset($this->_umask)) { + $this->_loadPermissionPreferences(); + } + $umask = umask($this->_umask); + $results = copy($source, $dest); + umask($umask); + } + + return $results; + } + + /** + * Symlink a file. + * @param string $source the source file + * @param string $dest the destination file + * @return boolean true if the copy succeeded, false otherwise + */ + function symlink($source, $dest) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("symlink($source, $dest)"); + } + + if (!isset($this->_umask)) { + $this->_loadPermissionPreferences(); + } + $umask = umask($this->_umask); + $results = symlink($source, $dest); + umask($umask); + + return $results; + } + + /** + * Move an uploaded file to a new location and return the new location. If the second filename + * is not provided, a new file is created in the Gallery temporary directory. + * @return string the new file name, if the move was successful + */ + function move_uploaded_file($filename, $newFilename=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("move_uploaded_file($filename, $newFilename)"); + } + + if (empty($newFilename)) { + $tmpDir = $gallery->getConfig('data.gallery.tmp'); + $newFilename = tempnam($tmpDir, 'MUF_'); + if ($newFilename == null) { + return null; + } + if ($gallery->getDebug()) { + $gallery->debug("chose new file name: $newFilename"); + } + } + + if (move_uploaded_file($filename, $newFilename)) { + return $newFilename; + } else { + return null; + } + } + + /** + * Create a file with a unique file name. + * @param string $dir target dir + * @param string $prefix file prefix + */ + function tempnam($dir, $prefix) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("tempnam($dir, $prefix)"); + } + + return tempnam($dir, $prefix); + } + + /** + * Does the given file exist? + * @param string $filename full filesystem path to a file + * @return boolean true if the file exists, false otherwise + */ + function file_exists($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("file_exists($filename)"); + } + + return is_uploaded_file($filename) || @file_exists($filename); + } + + /** + * Is the given path a symbolic link? + * @param string $filename a filesystem path + * @return boolean true if the file is a link, false otherwise + */ + function is_link($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_link($filename)"); + } + + return is_link($filename); + } + + /** + * Is the given path a directory? + * @param string $filename a filesystem path + * @return boolean true if the path is a directory, false otherwise + */ + function is_dir($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_dir($filename)"); + } + + return is_dir($filename); + } + + /** + * Is the given path a normal file? + * @param string $filename a filesystem path + * @return boolean true if the path is a file, false otherwise + */ + function is_file($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_file($filename)"); + } + + return @file_exists($filename) && @is_file($filename); + } + + /** + * Is the given path a writeable file? + * @param string $filename a filesystem path + * @return boolean true if the path is writeable, false otherwise + */ + function is_writeable($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_writeable($filename)"); + } + + return is_writeable($filename); + } + + /** + * Is the given path a readable file? + * @param string $filename a filesystem path + * @return boolean true if the path is readable, false otherwise + */ + function is_readable($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_readable($filename)"); + } + + return is_readable($filename); + } + + /** + * Is the given path an uploaded file? + * @param string $filename a filesystem path + * @return boolean true if the path is an uploaded file, false otherwise + */ + function is_uploaded_file($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_uploaded_file($filename)"); + } + + return is_uploaded_file($filename); + } + + /** + * Is the given path an executable file? + * @param string $filename a filesystem path + * @return boolean true if the path is an executable file, false otherwise + */ + function is_executable($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("is_executable($filename)"); + } + + return is_executable($filename); + } + + /** + * How large is the given file? + * @param string $filename full filesystem path to a file + * @return int the size in bytes + */ + function filesize($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("filesize($filename)"); + } + + return filesize($filename); + } + + /** + * Clear the stat cache. + */ + function clearstatcache() { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug('clearstatcache()'); + } + + return clearstatcache(); + } + + /** + * Return a file as an array. + * @param string $filename a file path or URL + * @param int $use_include_path if this is set to 1, search the include path also + * @return array of lines + */ + function file($filename, $use_include_path=false) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("file($filename, $use_include_path)"); + } + + return file($filename, $use_include_path); + } + + /** + * Output a file. + * @param string $filename a file path or URL + * @param int $use_include_path if this is set to 1, search the include path also + * @return int the number of bytes read from the file + */ + function readfile($filename, $use_include_path=false) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("readfile($filename, $use_include_path)"); + } + return readfile($filename, $use_include_path); + } + + /** + * Reads the entire contents of the specified file into a string. + * @param string $path file path + * @return string file contents or boolean false on failure + */ + function file_get_contents($path) { + return file_get_contents($path); + } + + /** + * Open a file or URL. + * @param string $filename a file path or URL + * @param string $mode a file mode + * @param int $use_include_path if this is set to 1, search the include path also + * @return resource a file descriptor + */ + function fopen($filename, $mode, $use_include_path=0) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fopen($filename, $mode, $use_include_path)"); + } + + return fopen($filename, $mode, $use_include_path); + } + + /** + * flock -- Portable advisory file locking. + * @param resource $handle a file handle + * @param int $operation (LOCK_SH, LOCK_EX, LOCK_UN) [ | LOCK_NB] + * @param boolean $wouldblock set to true if the operation would have blocked + * @return true or false + */ + function flock($handle, $operation, &$wouldblock) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("flock($handle, $operation, $wouldblock)"); + } + + return flock($handle, $operation, $wouldblock); + } + + /** + * Perform an atomic write to a file. This guarantees that the data written is not corrupted + * (but it does not prevent another process from immediately replacing the file with its own + * version). + * @param string $filename + * @param string $data data to be written + * @return boolean success or failure + */ + function atomicWrite($filename, $data) { + list ($success, $ignored) = GalleryUtilities::guaranteeDirExists(dirname($filename)); + if (!$success) { + global $gallery; + $gallery->debug("atomicWrite($filename): parent directory could not be created"); + return false; + } + + $tempFile = tempnam(dirname($filename), basename($filename)); + $fd = fopen($tempFile, 'wb'); + $success = false; + if ($fd) { + if (!isset($this->_filePerms)) { + $this->_loadPermissionPreferences(); + } + chmod($tempFile, $this->_filePerms); + $bytesWritten = fwrite($fd, $data); + if ($bytesWritten == strlen($data)) { + $success = true; + } + fclose($fd); + } + + if ($success) { + return $this->rename($tempFile, $filename); + } else { + @unlink($tempFile); + return false; + } + } + + /** + * Open a file or URL. + * @param string $path a file path + * @return resource a directory descriptor + */ + function opendir($path) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("opendir($path)"); + } + + return opendir($path); + } + + /** + * Return the next file resource from a directory. + * @param resource $resource a directory resource + */ + function readdir($resource) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("readdir($resource)"); + } + + return readdir($resource); + } + + /** + * Close a directory resource. + * @param resource $resource a directory resource + */ + function closedir($resource) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("closedir($resource)"); + } + + return closedir($resource); + } + + /** + * Rename a file/dir. + * + * As a side bonus, create a backup of the original file. + * + * @param string $oldname original file/dir name + * @param string $newname new file/dir name + * @return boolean true on success, false on failure + */ + function rename($oldname, $newname) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("rename($oldname, $newname)"); + } + + return rename($oldname, $newname); + } + + /** + * Get information about a file. + * @param string $filename file/dir name + * @return array the statistics of the file + */ + function stat($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("stat($filename)"); + } + + return stat($filename); + } + + /** + * Get size information about an image. + * @param string $filename the image file name + * @return array with 4 elements. Index 0 contains the width of the image in pixels. Index 1 + * contains the height. Index 2 is a flag indicating the type of the image: 1 = GIF, 2 + * = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF(intel byte order), 8 = + * TIFF(motorola byte order), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF. + * These values correspond to the IMAGETYPE constants that were added in PHP 4.3. Index + * 3 is a text string with the correct height="yyy" width="xxx" string that can be used + * directly in an IMG tag. + */ + function getimagesize($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("getimagesize($filename)"); + } + + /* + * getimagesize() returns an E_WARNING if the file is unreadable or not an image. We'd + * rather that it just returned false without the warning. + */ + return @getimagesize($filename); + } + + /** + * Delete a file. + * @param string $filename + * @return boolean true on success, false on failure + */ + function unlink($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("unlink($filename)"); + } + + return unlink($filename); + } + + /** + * Delete a directory. + * @param string $filename directory name + * @return boolean true on success, false on failure + */ + function rmdir($filename) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("rmdir($filename)"); + } + + return rmdir($filename); + } + + /** + * Delete a directory, and all its contents. + * @param string $dirname directory name + * @return boolean true on success, false on failure + */ + function recursiveRmdir($dirname) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("recursiveRmdir($dirname)"); + } + + if ($dirname{strlen($dirname)-1} != $this->getDirectorySeparator()) { + $dirname .= $this->getDirectorySeparator(); + } + + if (!($fd = $this->opendir($dirname))) { + return false; + } + + while (($filename = $this->readdir($fd)) !== false) { + if (!strcmp($filename, '.') || !strcmp($filename, '..')) { + continue; + } + $path = $dirname . $filename; + + if ($this->is_dir($path)) { + $ret = $this->recursiveRmdir($path); + } else { + $ret = $this->unlink($path); + } + + if ($ret == false) { + return false; + } + } + closedir($fd); + + return $this->rmdir($dirname); + } + + /** + * Create a new directory. + * @param string $path a filesystem path + * @param string $stringPerms permissions of the newly created directory + * @return boolean true on success, false on failure + */ + function mkdir($path, $stringPerms='755') { + global $gallery; + + /* Convert string permission representation to octal */ + $octalPerms = octdec($stringPerms); + if ($gallery->getDebug()) { + $gallery->debug(sprintf("mkdir(%s, %o)", $path, $octalPerms)); + } + + $umask = umask(0); + $results = mkdir($path, $octalPerms); + umask($umask); + return $results; + } + + /** + * Return true if the path component specified is composed of legal characters. + * @param string $component the path component (must not contain path separators) + * @return true if yes + */ + function isLegalPathComponent($component) { + return !strcmp($this->legalizePathComponent($component), $component); + } + + /** + * Legal characters on all systems: A-Z a-z 0-9 # _ . - + * + * Specific platform implementations can override this. + * + * @return string a string composed of all legal path characters + */ + function getLegalPathCharacters() { + /* + * Keep the hyphen at the end of this string, else ereg() functions will complain if you use + * this in a bracket expression. + */ + return 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789# _.-'; + } + + /** + * Remove any illegal characters from the path component. + */ + function legalizePathComponent($component) { + global $gallery; + $legalChars = $this->getLegalPathCharacters(); + + /* Scrub out all the illegal characters */ + $component = ereg_replace("[^$legalChars]", '_', $component); + + /* Break it into filebase and extension */ + list ($fileBase, $extension) = GalleryUtilities::getFileNameComponents($component); + + /* + * Convert all dots to underscores in the fileBase. This prevents malicious users from + * uploading files like 'foo.php.jpg' which will be treated like a JPEG by Gallery, but + * could be treated like a .php file by Apache opening a security hole. + */ + $fileBase = str_replace('.', '_', $fileBase); + + /* + * If we don't know exactly what type this file is, we have to assume that it's something + * malicious. In that case, it might be a server side script of some kind and we don't want + * that to wind up in the albums directory in a pure state because it may open up a security + * hole on systems that have placed the gallery data directory inside the document root. So + * mangle the extension to make sure that the webserver doesn't execute it. + */ + list ($ret, $tmp) = GalleryCoreApi::convertExtensionToMime($extension); + if ($ret && $gallery->getDebug()) { + $gallery->debug('Error: convertExtensionToMime in ' . + 'GalleryPlatform::legalizePathComponent'); + } + if (($ret || $tmp == 'application/unknown') && !empty($extension)) { + $fileBase = $fileBase . '_' . $extension; + $extension = null; + } + + /* Rebuild the baseName according to our transforms above */ + if (!empty($extension)) { + $fileBase .= '.' . $extension; + } + + return $fileBase; + } + + /** + * Execute a command and record the results and status. + * @param array $cmdArray array(array('cmd', 'arg'), ...) + * @return array(boolean true if the command succeeded, false otherwise, + * array standard output from the command + * array error output from the command) + */ + function exec($cmdArray) { + /* This must be implemented in a platform specific way */ + assert(false); + } + + /** + * Return the filesystem specific directory separator. + * @return string directory separator + */ + function getDirectorySeparator() { + return DIRECTORY_SEPARATOR; + } + + /** + * Return true if the path provided is not allowed by the current open_basedir configuration. + * @return true if the path is restricted + */ + function isRestrictedByOpenBaseDir($path) { + /* + * This must be implemented in a platform specific way due to the fact that different PHP + * platforms use different separators in the basedir path, and since case sensitivity of + * path elements is not relevant on all platforms. + */ + assert(false); + } + + /** + * Check if path is allowed by open_basedir, given platform path separator & case sensitivity. + * @access protected + */ + function _isRestrictedByOpenBaseDir($path, $separator, $caseSensitive) { + global $gallery; + $slash = $this->getDirectorySeparator(); + $phpVm = $gallery->getPhpVm(); + $openBasedir = $phpVm->ini_get('open_basedir'); + if (empty($openBasedir)) { + return false; + } + + if (($realpath = $this->realpath($path)) === false) { + /* + * PHP's open_basedir will actually take an invalid path, resolve relative paths, parse + * out .. and . and then check against the dir list. Here we do an ok job of doing the + * same, though it isn't perfect. + */ + $s = '\\\/'; /* Do this by hand because preg_quote() isn't reliable */ + if (!preg_match("{^([a-zA-Z]+:)?[$s]}", $path)) { + $path = $this->getcwd() . $slash . $path; + } + for ($realpath = $path, $lastpath = ''; $realpath != $lastpath;) { + $realpath = preg_replace("#[$s]\.([$s]|\$)#", $slash, $lastpath = $realpath); + } + + for ($lastpath = ''; $realpath != $lastpath;) { + $realpath = preg_replace("#[$s][^$s]+[$s]\.\.([$s]|\$)#", + $slash, $lastpath = $realpath); + } + } + + $function = $caseSensitive ? 'strncmp' : 'strncasecmp'; + foreach (explode($separator, $openBasedir) as $baseDir) { + if (($baseDirMatch = $this->realpath($baseDir)) === false) { + $baseDirMatch = $baseDir; + } else if (substr($baseDir, -1) == $slash && substr($baseDirMatch, -1) != $slash) { + /* Realpath will remove a trailing slash, add it back to avoid prefix match */ + $baseDirMatch .= $slash; + } + /* Add slash on path so /dir is accepted if /dir/ is a valid basedir */ + if (!$function($baseDirMatch, $realpath . $slash, strlen($baseDirMatch))) { + return false; + } + } + + return true; + } + + /** + * Initiates a socket connection to the resource specified by target. + * @param string $target the hostname + * @param int $port the port + * @param int $errno the error number (out) + * @param string $errstr the error string (out) + * @param int $timeout the timeout + * @return resource a file descriptor + * @see http://php.net/fsockopen + */ + function fsockopen($target, $port, &$errno, &$errstr, $timeout) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fsockopen($target, $port, $errno, $errstr, $timeout)"); + } + + return fsockopen($target, $port, $errno, $errstr, $timeout); + } + + /** + * Write the contents of string to the file stream pointed to by handle. + * @param resource $handle the handle + * @param string $string the buffer + * @param int $length how many bytes to write (optional) + * @return int the number of bytes written + */ + function fwrite($handle, $string, $length=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fwrite($handle, ..., $length)"); + } + + if (isset($length)) { + return fwrite($handle, $string, $length); + } else { + return fwrite($handle, $string); + } + } + + /** + * Writes specified data to file. Uses PHP's file_put_contents() function if it is available. + * @param string $path output file path + * @param string $data data to write + * @return boolean true on success, false on failure + */ + function file_put_contents($path, $data) { + if (function_exists('file_put_contents')) { + return file_put_contents($path, $data); + } + + if (false === ($file = fopen($path, 'w')) || false === fwrite($file, $data)) { + return false; + } + fclose($file); + return true; + } + + /** + * Closes an open file pointer. + * @param resource $handle + * @return boolean true on success, false on failure + */ + function fclose($handle) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fclose($handle)"); + } + + return fclose($handle); + } + + /** + * Flush an open file pointer. + * @param resource $handle + * @return boolean true on success, false on failure + */ + function fflush($handle) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fflush($handle)"); + } + + return fflush($handle); + } + + /** + * Tests for end-of-file on a file pointer. + * @param resource $handle + * @return boolean true if the file pointer is at EOF + */ + function feof($handle) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("feof($handle)"); + } + + return feof($handle); + } + + /** + * Reads data from an open file handle. + * @param resource $handle + * @param int $length + * @return string the bytes read + */ + function fread($handle, $length) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fread($handle, $length)"); + } + + return fread($handle, $length); + } + + /** + * Seeks on a file pointer. + * @param resource $handle + * @param int $offset + * @param int $whence + * @return int 0 upon success, otherwise -1 + */ + function fseek($handle, $offset, $whence = SEEK_SET) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fseek($handle, $offset, $whence)"); + } + + return fseek($handle, $offset, $whence); + } + + /** + * Truncates a file to a given length. + * @param resource $handle + * @param int $size + * @return boolean success? + */ + function ftruncate($handle, $size) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("ftruncate($handle, $size)"); + } + + $ret = ftruncate($handle, $size); + if ($ret === 1) { + /* + * Prior to PHP 4.3.3, ftruncate() returns an integer value of 1 on success, instead of + * boolean true. We correct this here. + */ + return true; + } + return $ret; + } + + /** + * Gets line from file pointer. + * @param resource $handle + * @param int $length the optional max line length + * @return the string or false on eof + */ + function fgets($handle, $length=0) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("fgets($handle, $length)"); + } + + return fgets($handle, $length); + } + + /** + * Expand all symbolic links and resolve references to '/./', '/../' and extra '/' characters in + * the input path and return the canonicalized absolute pathname. The resulting path will have + * no symbolic link, '/./' or '/../' components. [cribbed from http://php.net/realpath] + * @return false on failure, eg. if the file does not exists + */ + function realpath($file) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("realpath($file)"); + } + + return realpath($file); + } + + /** + * touch -- Sets access and modification time of file. + * + * Attempts to set the access and modification time of the file named by filename to the value + * given by time. If the option time is not given, uses the present time. This is equivalent to + * what utime (sometimes referred to as utimes) does. If the third option atime is present, the + * access time of the given filename is set to the value of atime. Note that the access time is + * always modified, regardless of the number of parameters. + * + * @param string $file the file path + * @param int $time (optional) the modification time + * @param int $atime (optional) the access time + */ + function touch($file, $time=null, $atime=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("touch($file, $time, $atime)"); + } + + if (isset($atime)) { + touch($file, $time, $atime); + } else if (isset($time)) { + touch($file, $time); + } else { + touch($file); + } + } + + /** + * mail -- Send an email. Lines in the headers and body should be terminated with \r\n in + * accordance with RFC2821. + * @param string $to to address(es) (comma separated) + * @param string $subject + * @param string $body + * @param string $headers (optional) additional headers (\r\n separated) + * @return boolean true on success + */ + function mail($to, $subject, $body, $headers=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("mail($to, $subject, $body, $headers)"); + } + + $config = array(); + list ($ret, $params) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); + if (!$ret) { + foreach ($params as $key => $value) { + if (strncmp($key, 'smtp.', 5) == 0) { + $config[$key] = $value; + } + } + } + + if (!empty($config['smtp.host'])) { + GalleryCoreApi::requireOnce('lib/smtp/smtp.php'); + $ret = smtpmail($config, $to, $subject, $body, $headers); + if ($ret && $gallery->getDebug()) { + $gallery->debug("smtpmail error: " . $ret->getAsText()); + } + return !$ret; + } else { + $phpVm = $gallery->getPhpVm(); + /* Convert \r\n to the appropriate line ending style */ + if ($this->getLineEnding() == "\n") { + if (isset($headers)) { + $headers = preg_replace("#\r\n#s", "\n", $headers); + } + $body = preg_replace("#\r\n#s", "\n", $body); + } + + if (isset($headers)) { + return $phpVm->mail($to, $subject, $body, $headers); + } else { + return $phpVm->mail($to, $subject, $body); + } + } + } + + /** + * Split path into component elements. Include root path for absolute paths. + * eg. /tmp -> array('/', 'tmp') + * rela/tive/path -> array('rela', 'tive', 'path') + * C:\Test\File.txt -> array('C:\', 'Test', 'File.txt') + * + * @param string $path + * @return array (path elements) first item is "root" if path is absolute + */ + function splitPath($path) { + /* This must be implemented in a platform specific way */ + assert(false); + } + + + /** + * Return a boolean specifying whether or not this platform can perform a symbolic link + * (symlink) command. + * @return boolean true if the platform supports symlinks + */ + function isSymlinkSupported() { + /* This must be implemented in a platform specific way */ + assert(false); + } + + /** + * Return the string of characters which represent the line ending on this platform. + * @return string Line ending + */ + function getLineEnding() { + /* This must be implemented in a platform specific way */ + assert(false); + } + + /** + * chdir -- change working directory. + * @param string $path directory + * @return boolean true on success + */ + function chdir($path) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("chdir($path)"); + } + return chdir($path); + } + + /** + * getcwd -- gets the current working directory. + * @return the current working directory, or false on failure. + */ + function getcwd() { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("getcwd()"); + } + return getcwd(); + } + + /** + * Load preferences for file/dir permissions and calculate umask. + * @access private + */ + function _loadPermissionPreferences() { + $this->_filePerms = 0644; + list ($ret, $filePerms) = + GalleryCoreApi::getPluginParameter('module', 'core', 'permissions.file'); + if (!$ret && !empty($filePerms)) { + $this->_filePerms = octdec($filePerms); + } + $this->_umask = 0777 - $this->_filePerms; + $this->_dirPerms = 0755; + list ($ret, $dirPerms) = + GalleryCoreApi::getPluginParameter('module', 'core', 'permissions.directory'); + if (!$ret && !empty($dirPerms)) { + $this->_dirPerms = octdec($dirPerms); + } + } + + /** + * Set filesystem permissions; mode defaults to system preference for file/dir permissions. + * @param string $path path to file or directory + * @param int $mode (optional) mode; defaults to system preference + * @return boolean true on success + */ + function chmod($path, $mode=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("chmod($path, $mode)"); + } + + if (!isset($mode)) { + if (!isset($this->_filePerms) || !isset($this->_dirPerms)) { + $this->_loadPermissionPreferences(); + } + $mode = $this->is_dir($path) ? $this->_dirPerms : $this->_filePerms; + } + return chmod($path, $mode); + } + + /** + * Recursively set filesystem permissions. Modes default to system preferences for file/dir + * permissions. + * @param string $path path to directory + * @param int $dirMode (optional) mode for dirs or -1 to skip chmod of dirs + * @param int $fileMode (optional) mode for files or -1 to skip chmod of files + * @return boolean true on success + */ + function recursiveChmod($path, $dirMode=null, $fileMode=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("recursiveChmod($path, $dirMode, $fileMode)"); + } + + if (!isset($this->_filePerms) || !isset($this->_dirPerms)) { + $this->_loadPermissionPreferences(); + } + if (!isset($dirMode)) { + $dirMode = $this->_dirPerms; + } + if (!isset($fileMode)) { + $fileMode = $this->_filePerms; + } + return $this->_recursiveChmod($path, $dirMode, $fileMode); + } + + /** + * Helper for recursiveChmod. + * @access private + */ + function _recursiveChmod($path, $dirMode, $fileMode) { + if ($this->is_dir($path)) { + if ($dirMode >= 0 && !$this->chmod($path, $dirMode)) { + return false; + } + if (!($dir = $this->opendir($path))) { + return false; + } + $slash = $this->getDirectorySeparator(); + $list = array(); + while ($file = $this->readdir($dir)) { + if ($file != '.' && $file != '..') { + $list[] = $path . $slash . $file; + } + } + $this->closedir($dir); + foreach ($list as $path) { + if (!$this->_recursiveChmod($path, $dirMode, $fileMode)) { + return false; + } + } + } else if ($fileMode >= 0 && !$this->chmod($path, $fileMode)) { + return false; + } + return true; + } + + /** + * Fixes the directory permissions (as eg. unzip creates them with file permissions because of + * the umask). + * @param string $path $path the directory which should be fixed + * @return boolean true if all went well, false if there was an error. + * @deprecated -- TODO: remove at the next major version bump of core API + */ + function recursiveFixDirPermissions($path) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("recursiveFixDirPermissions($path)"); + } + + if (!$this->is_dir($path)) { + return true; + } else if (!$this->chmod($path)) { + return false; + } + $dir = $this->opendir($path); + if (!$dir) { + return false; + } + $slash = $this->getDirectorySeparator(); + while ($file = $this->readdir($dir)) { + if ($file != '.' && $file != '..' && + !$this->recursiveFixDirPermissions($path . $slash . $file)) { + return false; + } + } + $this->closedir($dir); + return true; + } + + /** + * Format a local time/date according to locale settings. Converts any text output from + * strftime tokens to UTF-8. + * @param string $format + * @param int $timestamp (optional) + * @return string + */ + function strftime($format, $timestamp=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("strftime($format, $timestamp)"); + } + + $i = 0; + $newFormat = ''; + $textPieces = array(); + /* Separate text and tokens so we can convert only token output to UTF-8 */ + foreach (preg_split('{(%.)}', $format, -1, PREG_SPLIT_DELIM_CAPTURE) as $piece) { + if (++$i % 2) { + $textPieces[] = $piece; + $newFormat .= '&%%&s'; + } else { + $newFormat .= $piece; + } + } + /* Call strftime and convert to UTF-8; escape % characters before sprintf */ + $newFormat = str_replace(array('%', '&%%&'), array('%%', '%'), + GalleryCoreApi::convertToUtf8( + isset($timestamp) ? strftime($newFormat, $timestamp) : strftime($newFormat))); + return vsprintf($newFormat, $textPieces); + } + + /** + * The glob() function searches for all the pathnames matching pattern according to the rules + * used by the libc glob() function, which is similar to the rules used by common shells. No + * tilde expansion or parameter substitution is done. + * @param string pattern + * @param int flags (optional) + * @return array containing the matched files/directories or FALSE on error. + */ + function glob($pattern, $flags=null) { + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug("glob($pattern, $flags)"); + } + + if (isset($flags)) { + return glob($pattern, $flags); + } else { + return glob($pattern); + } + } + + /** + * Clear any cached saved state in this platform. + */ + function resetPlatform() { + unset($this->_umask); + unset($this->_filePerms); + unset($this->_dirPerms); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPlatform/UnixPlatform.class b/Source/gallery2/modules/core/classes/GalleryPlatform/UnixPlatform.class new file mode 100644 index 0000000..4d5a0d7 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPlatform/UnixPlatform.class @@ -0,0 +1,172 @@ + + * @version $Revision: 16471 $ + */ +class UnixPlatform extends GalleryPlatform { + + /** + * @see GalleryPlatform::exec + */ + function exec($cmdArray) { + global $gallery; + $gallery->guaranteeTimeLimit(5); + + if (!isset($this->_beNice)) { + list ($ret, $this->_beNice) = + GalleryCoreApi::getPluginParameter('module', 'core', 'exec.beNice'); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug('Unable to look up core.exec.beNice param'); + } + $this->_beNice = 0; + } + } + + if ($this->_beNice) { + $preamble = 'nice '; + } else { + $preamble = ''; + } + + /* Assemble the command array into a pipeline */ + $command = $preamble; + foreach ($cmdArray as $cmdAndArgs) { + if (strlen($command) && $command != $preamble) { + $command .= ' | ' . $preamble; + } + + foreach ($cmdAndArgs as $arg) { + if ($arg === '>') { + $command .= '>'; + } else { + $command .= ' "' . $arg . '" '; + } + } + } + + /* Redirect STDERR to a file */ + $tmpDir = $gallery->getConfig('data.gallery.tmp'); + $debugFile = tempnam($tmpDir, 'g2dbg'); + $command = "($command) 2>\"$debugFile\""; + + if ($gallery->getDebug()) { + $gallery->debug("Executing: $command"); + } + /* + * It is the responsibility of exec'ers to chmod output files to preferred perms. + * Set a default umask here in case any code forgets this. + */ + $umask = umask(022); + $results = array(); + exec($command, $results, $status); + umask($umask); + + if (!isset($this->_execExpectedStatus)) { + list ($ret, $this->_execExpectedStatus) = + GalleryCoreApi::getPluginParameter('module', 'core', 'exec.expectedStatus'); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug('Unable to look up core.exec.expectedStatus param'); + } + $this->_execExpectedStatus = 0; + } + } + + $stderr = array(); + if ($this->file_exists($debugFile)) { + if ($this->filesize($debugFile) > 0) { + if ($fd = $this->fopen($debugFile, "r")) { + while (!$this->feof($fd)) { + $buf = $this->fgets($fd, 4096); + $buf = rtrim($buf); + if (!empty($buf)) { + $stderr[] = $buf; + } + } + $this->fclose($fd); + } + } + $this->unlink($debugFile); + } + + /* Dump any output we have */ + if ($gallery->getDebug()) { + $gallery->debug("Regular Output:"); + foreach ($results as $line) { + $gallery->debug($line); + } + + $gallery->debug("Error Output:"); + foreach ($stderr as $line) { + $gallery->debug($line); + } + $gallery->debug("Status: $status (expected " . $this->_execExpectedStatus . ')'); + } + + return array($status == $this->_execExpectedStatus, $results, $stderr); + } + + /** + * @see GalleryPlatform::isRestrictedByOpenBaseDir + */ + function isRestrictedByOpenBaseDir($path) { + return $this->_isRestrictedByOpenBaseDir($path, ':', true); + } + + /** + * @see GalleryPlatform::splitPath + */ + function splitPath($path) { + $slash = $this->getDirectorySeparator(); + $list = array(); + foreach (explode($slash, $path) as $element) { + if (!empty($element)) { + $list[] = $element; + } else if (empty($list)) { + $list[] = $slash; + } + } + return $list; + } + + /** + * @see GalleryPlatform::isSymlinkSupported + * symlink may have been disabled so make sure it still exists + */ + function isSymlinkSupported() { + return function_exists('symlink'); + } + + /** + * @see GalleryPlatform::getLineEnding + */ + function getLineEnding() { + return "\n"; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPlatform/WinNtPlatform.class b/Source/gallery2/modules/core/classes/GalleryPlatform/WinNtPlatform.class new file mode 100644 index 0000000..539b909 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPlatform/WinNtPlatform.class @@ -0,0 +1,205 @@ + + * @version $Revision: 15513 $ + */ +class WinNtPlatform extends GalleryPlatform { + + /** + * @see GalleryPlatform::rename + */ + function rename($oldname, $newname) { + /* + * Windows gets upset if the new file already exists. If that's + * the case, remove the new file before renaming. + */ + if ($this->file_exists($newname)) { + @$this->unlink($newname); + } + return parent::rename($oldname, $newname); + } + + /** + * @see GalleryPlatform::exec + */ + function exec($cmdArray, $returnErrorOutput=false) { + global $gallery; + $gallery->guaranteeTimeLimit(5); + + /* Assemble the command array into a pipeline */ + $command = ''; + foreach ($cmdArray as $cmdAndArgs) { + + if (!empty($command)) { + $command .= ' | '; + } + + foreach ($cmdAndArgs as $arg) { + if ($arg === '>') { + $command .= '>'; + } else { + $command .= ' "' . $arg . '" '; + } + } + } + + /* We're going to redirect STDERR to a file */ + $tmpDir = $gallery->getConfig('data.gallery.tmp'); + $debugFile = tempnam($tmpDir, 'g2dbg'); + + /* + * Ok, this is screwy, but for some reason these + * don't work: + * + * cmd /c "c:\path with\spaces\binary" "arg" + * cmd /c " c:\path\\ with\spaces\binary arg " + * cmd /c " 'c:\path\ with\spaces\binary' 'arg' " + * + * But this does: + * + * cmd /c " "c:\path with\spaces\binary" "arg" " + * + * Turns out that this is a documented feature of cmd.exe. + * See "cmd.exe /help" for more details + * + */ + $command = 'cmd /c "' . $command . ' 2> "' . $debugFile . '" "'; + + if ($gallery->getDebug()) { + $gallery->debug("Executing: $command"); + } + $results = array(); + exec($command, $results, $status); + + list ($ret, $expected) = + GalleryCoreApi::getPluginParameter('module', 'core', 'exec.expectedStatus'); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug('Unable to look up core.exec.expectedStatus param'); + } + $expected = 0; + } + + $stderr = array(); + if ($this->file_exists($debugFile)) { + if ($this->filesize($debugFile) > 0) { + if ($fd = $this->fopen($debugFile, "r")) { + while (!$this->feof($fd)) { + $buf = $this->fgets($fd, 4096); + $buf = rtrim($buf); + if (!empty($buf)) { + $stderr[] = $buf; + } + } + $this->fclose($fd); + } + } + $this->unlink($debugFile); + } + + /* Dump any output we have */ + if ($gallery->getDebug()) { + $gallery->debug("Regular Output:"); + foreach ($results as $line) { + $gallery->debug($line); + } + + $gallery->debug("Error Output:"); + foreach ($stderr as $line) { + $gallery->debug($line); + } + $gallery->debug("Status: $status (expected $expected)"); + } + + return array($status == $expected, $results, $stderr); + } + + /** + * @see GalleryPlatform::isRestrictedByOpenBaseDir + */ + function isRestrictedByOpenBaseDir($path) { + return $this->_isRestrictedByOpenBaseDir($path, ';', false); + } + + /** + * @see GalleryPlatform::is_executable + */ + function is_executable($filename) { + /* Any existing file is considered executable on Windows */ + return $this->file_exists($filename); + } + + /** + * @see GalleryPlatform::splitPath + */ + function splitPath($path) { + $list = array(); + if (preg_match('|^([A-Za-z]:)?[\\\/]|', $path, $match)) { + $list[] = $match[0]; + $path = substr($path, strlen($match[0])); + } + foreach (preg_split('|[\\\/]|', $path) as $element) { + if (!empty($element)) { + $list[] = $element; + } + } + return $list; + } + + /** + * @see GalleryPlatform::isSymlinkSupported + */ + function isSymlinkSupported() { + return false; + } + + /** + * @see GalleryPlatform::getLineEnding + */ + function getLineEnding() { + return "\r\n"; + } + + /** + * @see GalleryPlatform::strftime + */ + function strftime($format, $timestamp=null) { + /* Windows doesn't have %e but has %#d, same thing but without leading space for 1-9 */ + if (($pos = strpos($format, '%e')) !== false) { + /* %#d doesn't work on 2 out of 2 tested WinXP platforms */ + $replacement = parent::strftime('%d', $timestamp); + /* + * %d returns always 2 digits, 01 - 31 + * Replace leading 0 for single digit months with a space + */ + $format{$pos} = ($replacement{0} == '0') ? ' ' : $replacement{0}; + $format{$pos+1} = $replacement{1}; + } + return parent::strftime($format, $timestamp); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryPlugin.class b/Source/gallery2/modules/core/classes/GalleryPlugin.class new file mode 100644 index 0000000..1188a6f --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryPlugin.class @@ -0,0 +1,556 @@ + + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryPlugin { + + /** + * The id of this plugin + * @var string + * @access private + */ + var $_id; + + /** + * The name of this plugin + * @var string + * @access private + */ + var $_name; + + /** + * The description of this plugin + * @var string + * @access private + */ + var $_description; + + /** + * The version of this plugin + * @var string + * @access private + */ + var $_version; + + /** + * The version of the Core API required by this plugin + * @var array + * @access private + */ + var $_requiredCoreApi; + + /** + * The localization domain for this plugin + * @var string + * @access private + */ + var $_l10Domain; + + + /** + * Localize the given content. + * + * Gallery uses GNU gettext for internationalization (i18n) and localization (l10n) of + * text presented to the user. Gettext needs to know about all places involving strings, + * that must be translated. Mark any place, where localization at runtime shall take place + * by using this function. + * + * E.g. instead of: + * print 'TEST to be displayed in different languages'; + * use (in any modules subclass of GalleryPlugin): + * print $this->translate('TEST to be displayed in different languages'); + * and you are all set for pure literals. The translation teams will receive that literal + * string as a job to translate and will translate it (when the message is clear enough). + * At runtime the message is then localized when printed. + * The input string can contain a hint to assist translators: + * print $this->translate('TT '); + * The hint portion of the string will not be printed. + * + * But consider this case: + * $message_to_be_localized = 'TEST to be displayed in different languages'; + * print $this->translate($message_to_be_localized); + * + * The translate() method is called in the right place for runtime handling, but there + * is no message at gettext preprocessing time to be given to the translation teams, + * just a variable name. Translation of the variable name would break the code! So all + * places potentially feeding this variable have to be marked to be given to translation + * teams, but not translated at runtime! + * + * The (noop) method Gallery::i18n() is there to resolve all such cases (including storing + * the original string in, say, the database). Simply mark the candidates: + * $message_to_be_localized = $gallery->i18n('TEST to be displayed in different languages'); + * print $this->translate($message_to_be_localized); + * + * The i18n() method does nothing, but feeding translators with that new string. + * This method does the runtime job, thanks to GNU gettext. + * + * @param mixed $params a single string, or an array of parameters + * @param boolean $cFormat (optional) hint for gettext whether to use c-format + * @return string the localized value + * @see Gallery::i18n + */ + function translate($params, $cFormat=null) { + global $gallery; + $translator =& $gallery->getTranslator(); + if (!isset($translator)) { + /* No translator! (could be an old module calling translate() from constructor) */ + return 'Translation error: ' . print_r($params, true); + } + list ($ret, $content) = + $translator->translateDomain($this->getPluginType() . 's_' . $this->getId(), $params); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug($ret->getAsHtml()); + } + return 'Translation error: ' . print_r($params, true); + } else { + return $content; + } + } + + /** + * Activate this plugin + * + * @param boolean $postActivationEvent should we post an activation event? Normally true, + * but the upgrader may choose to suppress this event so that it can + * reactivate a module without causing a ripple effect. + * @return array object GalleryStatus a status code + * array redirect info for error page (empty for success) + */ + function activate($postActivationEvent=true) { + global $gallery; + + $pluginType = $this->getPluginType(); + $pluginId = $this->getId(); + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::activate %s plugin', $pluginId)); + } + + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus($pluginType); + if ($ret) { + return array($ret, null); + } + + if (isset($pluginStatus[$pluginId]['active'])) { + $ret = GalleryCoreApi::updateMapEntry( + 'GalleryPluginMap', + array('pluginType' => $pluginType, + 'pluginId' => $pluginId), + array('active' => 1)); + } else { + $ret = GalleryCoreApi::addMapEntry( + 'GalleryPluginMap', + array('pluginType' => $pluginType, + 'pluginId' => $pluginId, + 'active' => 1)); + } + if ($ret) { + return array($ret, null); + } + + /* Flush the cache */ + GalleryDataCache::remove("GalleryPluginHelper::fetchPluginStatus($pluginType)"); + GalleryDataCache::removeFromDisk(array('type' => $pluginType, + 'itemId' => 'GalleryPluginHelper_fetchPluginStatus', + 'id' => '_all')); + + GalleryDataCache::remove("GalleryPluginHelper::fetchPluginList($pluginType)"); + + if ($postActivationEvent) { + if ($gallery->getDebug()) { + $gallery->debug('GalleryPlugin::activate post activation event'); + } + + $event = GalleryCoreApi::newEvent('Gallery::ActivatePlugin'); + $event->setData(array('pluginType' => $this->getPluginType(), + 'pluginId' => $this->getId())); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return array($ret, null); + } + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::activate %s plugin successfully activated', + $pluginId)); + } + + return array(null, array()); + } + + /** + * Deactivate this plugin. + * + * Note that modules and themes should not override this method to do anything critical. + * Modules and themes can be forcibly deactivated during the upgrade process and it's + * important that this doesn't leave the app in a broken state. + * + * @param bool $postDeactivationEvent should we post a deactivation event? Normally true, + * but the upgrader may choose to suppress this event so that it can + * reactivate a module without causing a ripple effect. + * @return array object GalleryStatus a status code + * array redirect info for error page (empty for success) + */ + function deactivate($postDeactivationEvent=true) { + $pluginType = $this->getPluginType(); + $pluginId = $this->getId(); + + $ret = GalleryCoreApi::updateMapEntry( + 'GalleryPluginMap', + array('pluginType' => $pluginType, + 'pluginId' => $pluginId), + array('active' => 0)); + if ($ret) { + return array($ret, null); + } + + /* Flush the cache */ + GalleryDataCache::remove("GalleryPluginHelper::fetchPluginStatus($pluginType)"); + GalleryDataCache::removeFromDisk(array('type' => $pluginType, + 'itemId' => 'GalleryPluginHelper_fetchPluginStatus', + 'id' => '_all')); + GalleryDataCache::remove("GalleryPluginHelper::fetchPluginList($pluginType)"); + + if ($postDeactivationEvent) { + $ret = $this->_postDeactivationEvent(); + if ($ret) { + return array($ret, null); + } + } + + return array(null, array()); + } + + /** + * Reactivate this plugin. The plugin is already active, so call deactivate() and then + * activate(). Perform the deactivation without sending an event because the activation will + * immediately follow and we don't want other plugins to sense this deactivation and + * deactivate themselves. If the plugin isn't currently active, don't do anything. + * + * @return array object GalleryStatus a status code + * array redirect info for error page (empty for success) + */ + function reactivate() { + global $gallery; + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::reactivate %s plugin', $this->getId())); + } + + list ($ret, $isActive) = $this->isActive(); + if ($ret) { + return array($ret, null); + } + if (!$isActive) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::reactivate %s plugin, plugin is ' . + 'not active, nothing to do', $this->getId())); + } + return array(null, null); + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::reactivate %s plugin, deactivate', + $this->getId())); + } + + list ($ret, $redirect) = $this->deactivate(false); + if ($ret) { + return array($ret, null); + } + if (!empty($redirect)) { + return array(null, $redirect); + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::reactivate %s plugin, activate again', + $this->getId())); + } + + list ($ret, $redirect) = $this->activate(false); + if ($ret) { + /* Try to send the deactivation event before failing completely. */ + $this->_postDeactivationEvent(); + return array($ret, null); + } + + if (!empty($redirect)) { + return array(null, $redirect); + } + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryPlugin::reactivate %s plugin, successfully ' . + 'reactivated', $this->getId())); + } + + return array(null, array()); + } + + /** + * Post a deactivation event for this plugin. Used by deactivate and reactivate. + * + * @return object GalleryStatus a status code + * @access private + */ + function _postDeactivationEvent() { + $event = GalleryCoreApi::newEvent('Gallery::DeactivatePlugin'); + $event->setData(array('pluginType' => $this->getPluginType(), + 'pluginId' => $this->getId())); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Remove this plugin's parameters + * + * @return object GalleryStatus a status code + */ + function uninstall() { + global $gallery; + + /* Remove this plugin */ + $ret = GalleryCoreApi::removePlugin($this->getPluginType(), $this->getId()); + if ($ret) { + return $ret; + } + + /* Remove data directory for this plugin */ + $platform =& $gallery->getPlatform(); + $dataDir = $gallery->getConfig('data.gallery.plugins_data') . $this->getPluginType() . + 's' . $platform->getDirectorySeparator() . $this->getId(); + if ($platform->is_dir($dataDir)) { + $platform->recursiveRmdir($dataDir); + } + + $event = GalleryCoreApi::newEvent('Gallery::UninstallPlugin'); + $event->setData(array('pluginType' => $this->getPluginType(), + 'pluginId' => $this->getId())); + list ($ret) = GalleryCoreApi::postEvent($event); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Perform the plugin installation or upgrade, whatever is required. + * + * Plugins should not need to override this method. Instead they should + * override the upgrade method and put all their plugin specific logic + * there. + * + * @return object GalleryStatus a status code + */ + function installOrUpgrade() { + return null; + } + + /** + * Is this plugin active? + * + * @return array object GalleryStatus a status code + * boolean true if active + */ + function isActive() { + global $gallery; + + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus($this->getPluginType()); + if ($ret) { + return array($ret, null); + } + + if (empty($pluginStatus[$this->getId()])) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + sprintf("No such %s: %s", $this->getPluginType(), $this->getId())), + null); + } + + return array(null, + empty($pluginStatus[$this->getId()]['active']) ? false : true); + } + + /** + * Convenience method to get a plugin parameter + * + * @param string $parameterName + * @param int $itemId (optional) + * @return array object GalleryStatus a status code + * mixed value + */ + function getParameter($parameterName, $itemId=0) { + list ($ret, $value) = GalleryCoreApi::getPluginParameter( + $this->getPluginType(), $this->getId(), $parameterName, $itemId); + if ($ret) { + return array($ret, null); + } + + return array(null, $value); + } + + /** + * Convenience method to set a plugin parameter + * + * @param string $parameterName + * @param string $parameterValue + * @param int $itemId (optional) + * @return object GalleryStatus a status code + */ + function setParameter($parameterName, $parameterValue, $itemId=0) { + $ret = GalleryCoreApi::setPluginParameter( + $this->getPluginType(), $this->getId(), $parameterName, $parameterValue, $itemId); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Convenience method to remove a plugin parameter + * + * @param string $parameterName + * @param int $itemId (optional) + * @return object GalleryStatus a status code + */ + function removeParameter($parameterName, $itemId=0) { + $ret = GalleryCoreApi::removePluginParameter( + $this->getPluginType(), $this->getId(), $parameterName, $itemId); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Fetch all plugin specific parameters for the given item. The results will contain + * a mixture of global parameters and item specific parameters, where the + * item specific ones ones override the global ones. + * + * @param int $itemId (optional) + * @return array object GalleryStatus a status code + * array parameters in key => value form + */ + function fetchParameters($itemId=null) { + $order = array(null); + if ($itemId) { + $order[] = $itemId; + } + + $results = array(); + /* TODO: we should do this in one database query, ordered by id. */ + foreach ($order as $id) { + list ($ret, $params) = GalleryCoreApi::fetchAllPluginParameters( + $this->getPluginType(), $this->getId(), $id); + if ($ret) { + return array($ret, null); + } + $results = array_merge($results, $params); + } + + return array(null, $results); + } + + /** + * Perform any upgrade tasks required at this point. This method is called + * if the plugin version in the code does not match the version number in + * the database. For modules, the framework will upgrade database tables as + * necessary, but it is the responsibility of the module to: + * + * 1. Register/unregister permissions + * 2. Move or massage data as required by the upgrade + * + * This method will be called with a null version on an initial install. + * @param string $currentVersion the current version (null if this is an initial install) + * @return object GalleryStatus a status code + * @access protected + */ + function upgrade($currentVersion) { + return null; + } + + /* Getters and setters below */ + + function setId($id) { + $this->_id = $id; + } + + function getId() { + return $this->_id; + } + + function setName($name) { + $this->_name = $name; + } + + function getName() { + return $this->_name; + } + + function setDescription($description) { + $this->_description = $description; + } + + function getDescription() { + return $this->_description; + } + + function setVersion($version) { + $this->_version = $version; + } + + function getVersion() { + return $this->_version; + } + + function getL10Domain() { + return $this->getPluginType() . 's_' . $this->getId(); + } + + function setRequiredCoreApi($requirement) { + $this->_requiredCoreApi = $requirement; + } + + function getRequiredCoreApi() { + return $this->_requiredCoreApi; + } + + /** + * @access protected + */ + function getPluginType() { + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryRenderer.class b/Source/gallery2/modules/core/classes/GalleryRenderer.class new file mode 100644 index 0000000..7625081 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryRenderer.class @@ -0,0 +1,61 @@ + + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryRenderer { + + /** + * Can this renderer display the given item? + * + * @param object GalleryDataItem $item + * @return boolean true if this data item can be viewed inline + */ + function canBeViewedInline($item) { + return false; + } + + /** + * Render the given GalleryItem in the given output format. For example, you can render a + * GalleryPhotoItem with an tag in the HTML format, whereas GalleryMovieItem would use + * or . + * + * This method takes an entity to render, and the item which has its metadata. In some cases, + * these will be the same thing (like when rendering the original of a GalleryPhotoItem). In + * other cases, it will be different, like when you're rendering a resize. In that case, the + * entity would be a GalleryDerivative and the item would be the GalleryPhotoItem. + * + * @param string $format the format (eg. "HTML") + * @param object GalleryEntity $entity the entity to render + * @param object GalleryItem $item the parent item + * @param array $params format specific key value pairs + * @return string formatted output + */ + function render($format, $entity, $item, $params) { + return null; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryRepository.class b/Source/gallery2/modules/core/classes/GalleryRepository.class new file mode 100644 index 0000000..d674503 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryRepository.class @@ -0,0 +1,922 @@ + + * @version $Revision: 16127 $ + */ +class GalleryRepository { + + /** + * Repository utilities. + * @var object GalleryRepositoryUtilities + * @access private + */ + var $_utilities; + + /** + * Local repository index. + * @var object RepositoryIndex + * @access private + */ + var $_index; + + /** + * The source of this index (released, experimental, community) + * @var string + * @access private + */ + var $_source; + + /** + * Return a set of all the repositories that are currently active. The error count indicates + * the number of repositories that failed to initialize for some reason (perhaps from a + * malformed local copy of the index). The fix for this is to download a new version of the + * repository. + * + * @param array $sources (optional) an array of source names, eg 'official', 'community' + * If this is left empty, use the value stored in core.repositories. + * @param string $repositoryClassName (optional) the name of the repository class to use. + * should be GalleryRepository, except for test code. + * @return array object GalleryStatus a status code + * array repository name => object GalleryRepository the repository + * int error count (repositories that failed to load for some reason) + * @static + */ + function getRepositories($sources=array(), $repositoryClassName='GalleryRepository') { + if (empty($sources)) { + list ($ret, $sources) = + GalleryCoreApi::getPluginParameter('module', 'core', 'core.repositories'); + if ($ret) { + return array($ret, null, null); + } + $sources = array_keys(unserialize($sources)); + } + + $repositories = array(); + $errorCount = 0; + foreach ($sources as $source) { + $repositories[$source] = new $repositoryClassName; + $ret = $repositories[$source]->init($source); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + unset($repositories[$source]); + $errorCount++; + } else { + return array($ret, null, null); + } + } + } + + return array(null, $repositories, $errorCount); + } + + /** + * Initializes the repository index and utilities. + * + * @return GalleryStatus a status code + */ + function init($source) { + $this->_source = $source; + $this->_index = new GalleryRepositoryIndex($source); + $this->_utilities = new GalleryRepositoryUtilities(); + + if ($this->_index->existsInCache()) { + $ret = $this->_index->load(); + if ($ret) { + return $ret; + } + } + return null; + } + + /** + * Determines whether a core module upgrade is available. + * + * @return array object GalleryStatus a status code + * boolean availability + * array repository core and plugin api versions + */ + function isCoreUpgradeAvailable() { + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + list ($ret, $header) = $this->_index->getPluginHeader('module', 'core'); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + /* + * No header for the core module. Maybe the core package isn't available in any + * this repository. + */ + return array(null, false, array()); + } + return array($ret, null, null); + } + $repositoryVersion = $header['version']; + + /* + * We only compare versions, not builds, because upgrading the core module isn't something + * that's done very often, at least until it's done manually. + */ + list ($ret, $relation) = + $this->_utilities->compareVersions($repositoryVersion, $core->getVersion()); + if ($ret) { + return array($ret, null, null); + } + + $apiVersions = array(); + if ($relation == 'newer') { + $apiVersions['core'] = implode('.', $header['coreApiVersion']); + $apiVersions['module'] = implode('.', $header['moduleApiVersion']); + $apiVersions['theme'] = implode('.', $header['themeApiVersion']); + $isAvailable = true; + } else { + $apiVersions = array(); + $isAvailable = false; + } + + return array(null, $isAvailable, $apiVersions); + } + + /** + * Determines which packages of the specified packages are newer in the repository. + * + * @return array object GalleryStatus a status code + * array package list + */ + function getPluginUpgradeInfo($pluginType, $pluginId) { + global $gallery; + $upgradeInfo = array('upgradeable' => false); + + /* Get installed packages meta data. */ + list ($ret, $installedPackages) = + $this->_utilities->getPluginPackages($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + /* Get version info from repository index for base files. */ + list ($ret, $header) = $this->_index->getPluginHeader($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + $repositoryDataVersion = $header['version']; + $repositoryDataBuild = $header['buildTimestamp']; + $upgradeInfo['base']['newVersion'] = $repositoryDataVersion; + $upgradeInfo['base']['newBuild'] = $repositoryDataBuild; + $upgradeInfo['base']['isCompatible'] = $this->_utilities->isPluginCompatible( + $pluginType, $header['requiredCoreApi'], $header['requiredPluginApi']); + + /* Check if this plugin's base files are installed. */ + if (isset($installedPackages['base'])) { + $dataVersion = $installedPackages['base']['version']; + $dataBuild = $installedPackages['base']['build']; + $locked = $installedPackages['base']['locked']; + } else { + $dataVersion = null; + $dataBuild = null; + $locked = 0; + } + + /* Compare local base version with the one in the repository. */ + list ($ret, $upgradeInfo['base']['relation']) = $this->_utilities->compareVersions( + $dataVersion, $repositoryDataVersion, $dataBuild, $repositoryDataBuild); + if ($ret) { + return array($ret, null); + } + + if ($upgradeInfo['base']['relation'] == 'older') { + $upgradeInfo['upgradeable'] = $upgradeInfo['base']['isCompatible']; + } + $upgradeInfo['base']['currentVersion'] = $dataVersion; + $upgradeInfo['base']['currentBuild'] = $dataBuild; + $upgradeInfo['base']['locked'] = $locked; + + /* Check if any languages have been updated. */ + list ($ret, $languages) = + $this->_index->getAvailableLanguagesInPlugin($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + $upgradeInfo['languages'] = array(); + $upgradeInfo['complete'] = isset($upgradeInfo['base']['currentVersion']); + foreach ($languages as $language => $revision) { + list ($ret, $languageDescription) = + $this->_utilities->getLanguageDescription($language); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + /* Unsupported language .. ignore it. */ + continue; + } + return array($ret, null); + } + + if (isset($installedPackages['lang-' . $language])) { + $currentBuild = $installedPackages['lang-' . $language]['build']; + $locked = $installedPackages['lang-' . $language]['locked']; + } else { + $currentBuild = null; + $locked = 0; + } + + + $relation = $this->_utilities->compareRevisions($currentBuild, $revision); + $upgradeInfo['languages'][$language] = array( + 'name' => $languageDescription, + 'currentBuild' => $currentBuild, + 'newBuild' => $revision, + 'relation' => $relation, + 'locked' => $locked); + + if ($relation == 'older' && $currentBuild) { + $upgradeInfo['upgradeable'] = $upgradeInfo['base']['isCompatible']; + } + + $upgradeInfo['complete'] &= !empty($currentBuild); + } + + return array(null, $upgradeInfo); + } + + /** + * Returns a list of plugins of the specified type. + * + * It can return a list of compatible plugins with specific core APIs. By default, compatibility + * is determined by comparing the repository plugin requirements with the currently installed + * APIs, but API versions can be specified, so it is possible to, for example, get a + * compatibility list based on future API versions. + * + * @param string $pluginType + * @param boolean $showAllPlugins show incompatible plugins + * @param array $coreApis core APIs to base compatibility check on + * 'core'/'module'/'theme' => array(versionMajor, versionMinor) + * @return array object GalleryStatus a status code + * array plugin list + */ + function getRepositoryPluginList($pluginType, $showAllPlugins=false, $coreApis=null) { + global $gallery; + + list ($ret, $repositoryPluginList) = + $this->_index->getPlugins($pluginType, $showAllPlugins, $coreApis); + if ($ret) { + return array($ret, null); + } + + $pluginList = array(); + foreach ($repositoryPluginList[$pluginType] as $pluginId => $plugin) { + $localVersion = ''; + + /* Get active language. */ + list ($ret, $language) = $gallery->getActiveLanguageCode(); + if ($ret) { + return array($ret, null); + } + + /* Load the core module for translation */ + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + /* Fall back to en_US if there are no descriptions in the active language. */ + if (!isset($plugin['descriptions'][$language])) { + $language = 'en_US'; + } + + $isAvailable = isset($plugin['localVersion']); + $locked = 0; + if ($isAvailable) { + /* + * For locally available plugins we check if they can be upgraded and present + * an 'upgrade' action. Maybe we can show some additional info, such as + * '3 languages updated' or 'base data upgrade available'. + */ + list ($ret, $upgradeInfo) = $this->getPluginUpgradeInfo($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + $localVersion = $plugin['localVersion']; + $locked = $upgradeInfo['base']['locked']; + $isUpgradeable = $upgradeInfo['upgradeable']; + } else { + $isUpgradeable = false; + } + + if (isset($plugin['descriptions'][$language]['groupLabel'])) { + $groupLabel = $plugin['descriptions'][$language]['groupLabel']; + } else if ($pluginType == 'theme') { + $groupLabel = $core->translate('Themes'); + } else { + $groupLabel = $core->translate('General'); + } + + list ($providedCoreApiVersion, $providedPluginApiVersion) = + $this->_utilities->getProvidedApis($pluginType, $coreApis); + $pluginList[$pluginId] = array( + 'type' => $pluginType, + 'name' => $plugin['descriptions'][$language]['name'], + 'description' => $plugin['descriptions'][$language]['description'], + 'groupLabel' => $groupLabel, + 'repositoryVersion' => $plugin['header']['version'], + 'localVersion' => $localVersion, + 'isCompatible' => $plugin['isCompatible'], + 'api' => array( + 'required' => array( + 'core' => implode('.', $plugin['header']['requiredCoreApi']), + 'plugin' => implode('.', $plugin['header']['requiredPluginApi'])), + 'provided' => array( + 'core' => implode('.', $providedCoreApiVersion), + 'plugin' => implode('.', $providedPluginApiVersion))), + 'locked' => $locked, + 'isUpgradeable' => $isUpgradeable); + } + + /* Sort plugins by name. */ + if (!uasort($pluginList, array('GalleryRepository', 'comparePluginListEntries'))) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + 'Error sorting plugin list.'), + null); + } + + return array(null, $pluginList); + } + + /** + * Compares two plugin list entries. + * + * A plugin list entry is an element of the array returned by getRepositoryPluginList. This + * is a callback for sorting the plugin list by (group label, plugin name). + * + * @param array $plugin1 first plugin list entry + * @param array $plugin2 second plugin list entry + * @return boolean see strcmp() + */ + function comparePluginListEntries($plugin1, $plugin2) { + global $gallery; + + if (isset($plugin1['groupLabel'])) { + $group1 = $plugin1['groupLabel']; + $group2 = $plugin2['groupLabel']; + if ($group1 != $group2) { + return strcmp($group1, $group2); + } + } + + $name1 = $plugin1['name']; + $name2 = $plugin2['name']; + return strcmp($name1, $name2); + } + + /** + * Creates a list of all upgradeable packages. + * + * It goes through all installed plugins and checks if an update is available to any of their + * packages and adds it to a list if it is. + * + * @return array object GalleryStatus a status code + * array package list + */ + function getAllUpgradeablePackages() { + $packages = array(); + foreach (array('module', 'theme') as $pluginType) { + list ($ret, $plugins) = GalleryCoreApi::getAllPluginIds($pluginType); + if ($ret) { + return array($ret, null); + } + + foreach ($plugins as $pluginId) { + if ($pluginId == 'core' && $pluginType == 'module') { + continue; + } + + list ($ret, $upgradeInfo) = $this->getPluginUpgradeInfo($pluginType, $pluginId); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + continue; + } + return array($ret, null); + } + + if ($upgradeInfo['base']['locked'] || !$upgradeInfo['base']['isCompatible']) { + continue; + } + + if ($upgradeInfo['base']['relation'] == 'older' && + $upgradeInfo['base']['currentVersion']) { + $packages[$pluginType][$pluginId]['base'] = 1; + } + + if (isset($upgradeInfo['languages'])) { + foreach ($upgradeInfo['languages'] as $code => $pack) { + if ($pack['relation'] == 'older' && $pack['currentBuild']) { + $packages[$pluginType][$pluginId]['lang-' . $code] = 1; + } + } + } + } + } + + return array(null, $packages); + } + + /** + * Saves the specified package meta data into the database. + * + * @param string $pluginType + * @param string $pluginId + * @param string $packageName + * @param string $packageVersion + * @param string $packageBuild + * @return object GalleryStatus a status code + */ + function updatePackageMetaData( + $pluginType, $pluginId, $packageName, $packageVersion, $packageBuild, $locked) { + + /* Check if specified package exists in the database. */ + list ($ret, $searchResults) = GalleryCoreApi::getMapEntry('GalleryPluginPackageMap', + array('packageVersion', 'packageBuild'), + array('pluginType' => $pluginType, 'pluginId' => $pluginId, + 'packageName' => $packageName)); + if ($ret) { + return $ret; + } + + if ($searchResults->resultCount() > 1) { + return GalleryCoreApi::error( + ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + "Multiple records found [$pluginType] [$pluginId] [$package]"); + } + $existsInDatabase = $searchResults->resultCount() > 0; + + /* Add or update package data. */ + if ($existsInDatabase) { + $ret = GalleryCoreApi::updateMapEntry( + 'GalleryPluginPackageMap', + array('pluginType' => $pluginType, 'pluginId' => $pluginId, + 'packageName' => $packageName), + array('packageVersion' => $packageVersion, 'packageBuild' => $packageBuild, + 'locked' => $locked)); + } else { + $ret = GalleryCoreApi::addMapEntry( + 'GalleryPluginPackageMap', + array('pluginType' => $pluginType, 'pluginId' => $pluginId, + 'packageName' => $packageName, 'packageVersion' => $packageVersion, + 'packageBuild' => $packageBuild, 'locked' => $locked)); + } + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Checks if the plugins directory exists and creates a subdirectory for each plugin type. + * + * @return boolean indicates whether the plugins directory is correctly set up + * string user-friendly error message + */ + function createPluginsDirectory() { + global $gallery; + + /* Create repository cache directory if it doesn't exist. */ + $repositoryCachePath = $gallery->getConfig('repository.cache'); + $platform =& $gallery->getPlatform(); + + list ($success, $created) = GalleryUtilities::guaranteeDirExists($repositoryCachePath); + if (!$success) { + return array(false, $gallery->i18n('Couldn\'t create repository cache path.')); + } + + /* Create repository cache subdirectories. */ + foreach (array('modules', 'themes') as $cacheDir) { + $cacheDirectory = $repositoryCachePath . $cacheDir; + if (!@$platform->is_dir($cacheDirectory) && !@$platform->mkdir($cacheDirectory)) { + return array(false, $gallery->i18n('Couldn\'t create cache subdirectory. ' + . 'Make sure the web server has write permissions in it.')); + } + } + + return array(true, ''); + } + + /** + * Creates a list of URLs that + * + * @param array $pluginData array(pluginType => array(pluginId => array(packages))) + * @return array object GalleryStatus a status code + * array list of packages with corresponding URLs + */ + function getDownloadFileList($pluginData) { + $files = array(); + foreach ($pluginData as $pluginType => $plugin) { + foreach ($plugin as $pluginId => $packages) { + list ($ret, $pluginName) = $this->_index->getPluginName($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + list ($ret, $descriptorUrl) = + $this->_index->getDescriptorUrl($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + $files[$pluginType][$pluginId]['name'] = $pluginName; + $files[$pluginType][$pluginId]['files']['descriptor'] = $descriptorUrl; + foreach ($packages as $package => $value) { + list ($ret, $packageUrl) = + $this->_index->getPackageUrl($pluginType, $pluginId, $package); + if ($ret) { + print($ret->getAsHtml()); + return array($ret, null); + } + + $files[$pluginType][$pluginId]['files'][$package] = $packageUrl; + } + } + } + + return array(null, $files); + } + + /** + * Downloads a file from the repository. + * + * If the file is a package, it will be put in the local cache and unpacked in the plugins/ + * directory. If it is a descriptor, it will be deserialized and returned to the calling + * function. + * + * @todo Split this into two separate functions, one that downloads the file, the other that + * returns the descriptor. The function that downloads the file should take the + * descriptor so that it can verify that the file that got downloaded is the right + * length. + * + * @param string $pluginType + * @param string $pluginId + * @param string $packageName + * @param string $relativePackageUrl URL of the package to download relative to repository URL + * @return array object GalleryStatus a status code + * array descriptor + */ + function downloadAndUnpack($pluginType, $pluginId, $packageName, $relativePackageUrl) { + global $gallery; + $platform =& $gallery->getPlatform(); + $phpVm = $gallery->getPhpVm(); + + /* Download package from the Gallery server. */ + $packageUrl = + $gallery->getConfig('repository.url') . $this->_source . '/' . $relativePackageUrl; + + list ($wasDownloaded, $packageContents) = $this->_utilities->downloadFile($packageUrl); + if (!$wasDownloaded) { + return array(GalleryCoreApi::error( + ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + "Error downloading package from '$packageUrl'."), null); + } + + /* Make sure output directory exists. */ + $pluginOutputDir = sprintf( + '%s/%ss/%s/', dirname(dirname(dirname(dirname(__FILE__)))), $pluginType, $pluginId); + if (!$platform->file_exists($pluginOutputDir) + && !$platform->mkdir($pluginOutputDir)) { + $ret = GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "Couldn't create directory [$pluginOutputDir]"); + return array($ret, null); + } + + /* Write package to the local repository cache directory. */ + $absolutePackagePath = + $gallery->getConfig('repository.cache') . $this->_source . '/' . $relativePackageUrl; + if (false === $platform->file_put_contents($absolutePackagePath, $packageContents)) { + return array(GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "Error writing package [$absolutePackagePath]"), + null); + } + + $descriptor = array(); + if (preg_match('/^.*package$/', $relativePackageUrl)) { + /* Unpack files from package. */ + include($absolutePackagePath); + call_user_func($unpackFunction, $pluginOutputDir); + } else { + /* Unserialize descriptor. */ + $descriptor = array('pluginId' => $pluginId, 'pluginType' => $pluginType, + 'contents' => unserialize($packageContents)); + } + + return array(null, $descriptor); + } + + /** + * Verify that a package will install cleanly by examining all of its paths and making sure + * that any file operations that we intend to make will be successful. + * + * @param string $packageName name of the package to check + * @param array $descriptor descriptor of the plugin the package belongs to + * @return array of files that can't be overwritten (empty array if everything is ok) + */ + function preVerifyPackage($packageName, $descriptor) { + global $gallery; + $platform =& $gallery->getPlatform(); + + $errorMessages = array(); + + $pluginType = $descriptor['pluginType']; + $pluginId = $descriptor['pluginId']; + $pluginOutputDir = sprintf( + '%s/%ss/%s/', dirname(dirname(dirname(dirname(__FILE__)))), $pluginType, $pluginId); + + if ($platform->file_exists($pluginOutputDir)) { + if (!$platform->is_writeable($pluginOutputDir) || + !$platform->is_dir($pluginOutputDir)) { + return array($pluginOutputDir); + } + } else { + return array(); + } + + foreach ($descriptor['contents']['files'] as $relativePath => $metaData) { + foreach ($metaData['packages'] as $descriptorPackage) { + $gallery->guaranteeTimeLimit(10); + + if ($descriptorPackage == $packageName) { + $filePath = $pluginOutputDir . $relativePath; + + if ($platform->file_exists($filePath)) { + if (!$platform->is_writeable($filePath)) { + $errorMessages[$filePath] = 1; + } + } else { + $checkPath = dirname($filePath) . '/'; + while ($checkPath != $pluginOutputDir && $checkPath != '.') { + if ($platform->file_exists($checkPath) && + (!$platform->is_writeable($checkPath) || + !$platform->is_dir($checkPath))) { + $errorMessages[$filePath] = 1; + break; + } + $checkPath = dirname($checkPath) . '/'; + } + } + } + } + } + + return array_keys($errorMessages); + } + + /** + * Verifies the integrity of the specified packages' unpacked files. + * + * @param string $packageName name of the package to check + * @param array $descriptor descriptor of the plugin the package belongs to + * @return object GalleryStatus a status code + */ + function verifyPackageIntegrity($packageName, $descriptor) { + global $gallery; + $errorMessages = array(); + + $pluginType = $descriptor['pluginType']; + $pluginId = $descriptor['pluginId']; + $pluginOutputDir = sprintf( + '%s/%ss/%s/', dirname(dirname(dirname(dirname(__FILE__)))), $pluginType, $pluginId); + + $platform =& $gallery->getPlatform(); + foreach ($descriptor['contents']['files'] as $filePath => $metaData) { + foreach ($metaData['packages'] as $descriptorPackage) { + if ($descriptorPackage == $packageName) { + $filePath = $pluginOutputDir . $filePath; + + if (!$platform->file_exists($filePath)) { + $errorMessage = "'$filePath' doesn't exist."; + } + + if ($platform->filesize($filePath) != $metaData['bytes']) { + $errorMessage = "Size of '$filePath' not {$metaData['bytes']}."; + } + + if (false === ($contents = $platform->file_get_contents($filePath))) { + $errorMessage = "Couldn't read '$filePath'."; + } + + $checksum = strlen($metaData['hash']) == 32 + ? md5($contents) + : sprintf("%u", crc32($contents)); + if ($checksum != $metaData['hash']) { + $errorMessage = "Integrity check failed for '$filePath'."; + } + + if (!empty($errorMessage)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + $errorMessage); + } + } + } + } + + return null; + } + + /** + * Scan one plugin and update its entries in the GalleryPluginPackageMap. + * + * @param $pluginType the plugin type ('module' or 'theme') + * @param $pluginId the plugin id (eg 'albumselect' or 'cart') + * @return object GalleryStatus a status code + */ + function scanPlugin($pluginType, $pluginId) { + global $gallery; + + /* Erase all data for this plugin */ + $ret = GalleryCoreApi::removeMapEntry( + 'GalleryPluginPackageMap', array('pluginType' => $pluginType, 'pluginId' => $pluginId)); + if ($ret) { + return $ret; + } + + $platform =& $gallery->getPlatform(); + $g2base = dirname(dirname(dirname(dirname(__FILE__)))); + $pluginDir = sprintf('%s/%ss/%s', $g2base, $pluginType, $pluginId); + $manifestPath = "$pluginDir/MANIFEST"; + + if (!$platform->file_exists($manifestPath)) { + /* + * We won't know the revision of this module, so ignore it. TODO: perhaps we should + * fall back on the revision of the module.inc file? But if this is a user-written or + * a contrib module, then it is probably not in svn which means that isn't valid + * anyway. Ignoring it is probably safest. + */ + return null; + } + + list($ret, $plugin) = GalleryCoreApi::loadPlugin($pluginType, $pluginId, true); + if ($ret) { + return $ret; + } + + list ($ret, $tag) = $this->_utilities->getFirstBytesFromFile($manifestPath, 128); + if ($ret) { + return $ret; + } + + list ($ret, $revision) = $this->_utilities->extractRevision($tag); + if ($ret) { + return $ret; + } + + $locked = $platform->is_writeable($manifestPath) ? 0 : 1; + $ret = GalleryCoreApi::addMapEntry( + 'GalleryPluginPackageMap', + array('pluginType' => $pluginType, + 'pluginId' => $pluginId, + 'packageName' => 'base', + 'packageVersion' => $plugin->getVersion(), + 'packageBuild' => $revision, + 'locked' => $locked)); + if ($ret) { + return $ret; + } + + $stringsRawFile = "$pluginDir/po/strings.raw"; + if ($platform->file_exists($stringsRawFile)) { + list ($ret, $tag) = $this->_utilities->getFirstBytesFromFile($stringsRawFile, 128); + if ($ret) { + return $ret; + } + list ($ret, $stringsRevision) = $this->_utilities->extractRevision($tag); + if ($ret) { + return $ret; + } + + $poFiles = $platform->glob("$pluginDir/po/*.po"); + if ($poFiles) { + foreach ($poFiles as $file) { + list ($ret, $tag) = $this->_utilities->getFirstBytesFromFile($file, 128); + if ($ret) { + return $ret; + } + + list ($ret, $revision) = $this->_utilities->extractRevision($tag); + if ($ret) { + return $ret; + } + $ret = GalleryCoreApi::addMapEntry( + 'GalleryPluginPackageMap', + array('pluginType' => $pluginType, + 'pluginId' => $pluginId, + 'packageName' => ( + 'lang-' . GalleryUtilities::getFileBase(basename($file))), + 'packageVersion' => $stringsRevision, + 'packageBuild' => $revision, + 'locked' => $platform->is_writeable($file) ? 0 : 1)); + if ($ret) { + return $ret; + } + } + } + } + + return null; + } + + /** + * Translate the repository tag to its localized name + * + * @param $source string the name (released, experimental, community) + * @return array object GalleryStatus a status code + * string the localized name + * @static + * @public + */ + function translateRepositoryName($source) { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null); + } + + switch($source) { + case 'released': + return array(null, $module->translate('Official Release Repository')); + + case 'experimental': + return array(null, $module->translate('Experimental Repository')); + + case 'community': + return array(null, $module->translate('Community Repository')); + + default: + return array(null, ''); + } + } + + /** + * @see GalleryRepositoryIndex::existsInCache + */ + function localIndexExists() { + return $this->_index->existsInCache(); + } + + /** + * @see GalleryRepositoryIndex::update + */ + function downloadIndex() { + return $this->_index->update(); + } + + /** + * @see GalleryRepositoryIndex::containsPlugin + */ + function pluginExistsInIndex($pluginType, $pluginId) { + return $this->_index->containsPlugin($pluginType, $pluginId); + } + + /** + * @see GalleryRepositoryIndex::getMetaData + */ + function getIndexMetaData() { + return $this->_index->getMetaData(); + } + + /** + * @see GalleryRepositoryIndex::getPackageVersionAndBuild + */ + function getPackageVersionAndBuild($pluginType, $pluginId, $packageName) { + return $this->_index->getPackageVersionAndBuild($pluginType, $pluginId, $packageName); + } + + /** + * @see GalleryRepositoryIndex::getPluginName + */ + function getPluginName($pluginType, $pluginId) { + return $this->_index->getPluginName($pluginType, $pluginId); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryRepositoryIndex.class b/Source/gallery2/modules/core/classes/GalleryRepositoryIndex.class new file mode 100644 index 0000000..283f02a --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryRepositoryIndex.class @@ -0,0 +1,484 @@ + + * @version $Revision: 15731 $ + */ +class GalleryRepositoryIndex { + + /** + * Indicates whether the index has been loaded from the filesystem. + * @var boolean + * @access private + */ + var $_isLoaded; + + /** + * Repository index. + * @var array + * @access private + */ + var $_index; + + /** + * The source of this index (released, experimental, community) + * @var string + * @access private + */ + var $_source; + + /** + * Repository utilities. + * @var object GalleryRepositoryUtilities + * @access private + */ + var $_utilities; + + + function GalleryRepositoryIndex($source) { + $this->_utilities = new GalleryRepositoryUtilities(); + $this->_source = $source; + } + + /** + * Downloads the repostory index from the Gallery server and + * writes it to the local repository cache. + * @return object GalleryStatus a status code + */ + function update() { + global $gallery; + $platform =& $gallery->getPlatform(); + + $indexUrl = $gallery->getConfig('repository.url') . $this->_source . '/index'; + $indexHashUrl = $indexUrl . '.hash'; + + $path = $this->getRepositoryCacheDir(); + list ($success1, $ignored) = GalleryUtilities::guaranteeDirExists($path . 'modules'); + list ($success2, $ignored) = GalleryUtilities::guaranteeDirExists($path . 'themes'); + if (!$success1 || !$success2) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, null, null, + 'Unable to create repository cached paths'); + } + + /* Download index from the Gallery server and verify its integrity. */ + list ($wasDownloaded, $indexContents) = $this->_utilities->downloadFile($indexUrl); + if (!$wasDownloaded) { + $errorMessage = $gallery->i18n('Error downloading index from \'%s\'.'); + return GalleryCoreApi::error( + ERROR_STORAGE_FAILURE, __FILE__, __LINE__, sprintf($errorMessage, $indexUrl)); + } + + list ($wasDownloaded, $indexHash) = $this->_utilities->downloadFile($indexHashUrl, true); + if (!$wasDownloaded) { + $errorMessage = $gallery->i18n('Error downloading index hash from \'%s\'.'); + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + sprintf($errorMessage, $indexHashUrl)); + } + + if (md5($indexContents) != $indexHash) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + $gallery->i18n('Index integrity check failed.')); + } + + /* Write index to the filesystem. */ + $indexPath = $this->getRepositoryCacheDir() . 'index.repository'; + if (false === $platform->file_put_contents($indexPath, $indexContents)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + 'Error writing index to the filesystem.'); + } + + /* Save update time and unserialize the index. */ + $ret = GalleryCoreApi::setPluginParameter('module', 'core', + 'repository.updateTime', time()); + if ($ret) { + return $ret; + } + + $ret = $this->unserializeIndex($indexContents); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + $ret = GalleryCoreApi::error( + ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Error unserializing index [$indexPath]"); + } + return $ret; + } + return null; + } + + /** + * Gets index meta data, which currently includes the local index timestamp (set when the index + * has been downloaded) and each plugin type count. + * + * @return array object GalleryStatus a status code + * array 'timestamp' => integer (Unix timestamp) + * 'moduleCount' => integer + * 'themeCount' => integer + */ + function getMetaData() { + if (!$this->_isLoaded) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Index must be loaded.'), + null); + } + + /* Get timestamp */ + list ($ret, $timestamp) = + GalleryCoreApi::getPluginParameter('module', 'core', 'repository.updateTime'); + if ($ret) { + return array($ret, null); + } + + return array(null, array('timestamp' => $timestamp, + 'moduleCount' => count($this->_index['modules']), + 'themeCount' => count($this->_index['themes']))); + } + + /** + * Checks whether an index file exists in the local repository cache. + * @return boolean + */ + function existsInCache() { + global $gallery; + $platform =& $gallery->getPlatform(); + return $platform->file_exists($this->getRepositoryCacheDir() . 'index.repository'); + } + + /** + * Loads and unserializes the index from the local filesystem into memory. + * @return object GalleryStatus a status code + */ + function load() { + global $gallery; + $platform =& $gallery->getPlatform(); + + $indexPath = $this->getRepositoryCacheDir() . 'index.repository'; + if (false === ($index = $platform->file_get_contents($indexPath))) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, sprintf( + 'Error reading index [%s]', $indexPath)); + } + + $ret = $this->unserializeIndex($index); + if ($ret) { + if ($ret->getErrorCode() & ERROR_BAD_PARAMETER) { + /* Remove the broken index so that a subsequent download will fix it */ + $platform->unlink($indexPath); + $ret = GalleryCoreApi::error( + ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Error unserializing index [$indexPath]"); + } + return $ret; + } + return null; + } + + /** + * Unserializes the index into memory. + * @return object GalleryStatus a status code + */ + function unserializeIndex(&$index) { + if (false === ($this->_index = @unserialize($index))) { + $this->_index = array('modules' => array(), 'themes' => array()); + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + $this->_isLoaded = true; + return null; + } + + /** + * Returns the specified plugin's build. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * string plugin build + */ + function getPluginHeader($pluginType, $pluginId) { + if (!$this->_isLoaded) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Index must be loaded.'), + null); + } + + if (!isset($this->_index[$pluginType . 's'][$pluginId]['header'])) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "No header found for [$pluginId] [$pluginType]"), + null); + } + return array(null, + $this->_index[$pluginType . 's'][$pluginId]['header']); + } + + /** + * Returns available languages for the specified plugin. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * array languageCode => revision + */ + function getAvailableLanguagesInPlugin($pluginType, $pluginId) { + if (!$this->_isLoaded) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Index must be loaded.'), + null); + } + + list ($ret, $isAvailable) = $this->_utilities->isPluginAvailable($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + /* + * Return the latest set of translations from the repository. However, since we know the + * revision of the strings.raw file we could in the future check to make sure that the + * language packs are going to be compatible. We used to do this, but it was deemed too + * complex so it got axed. + */ + $data = $this->_index[$pluginType . 's'][$pluginId]; + if (!empty($data['header']['stringsRevision'])) { + return array(null, $data['languages'][$data['header']['stringsRevision']]); + } else { + return array(null, array()); + } + } + + /** + * Determines if the specified plugin exists in the index. + * + * @param string $pluginType + * @param string $pluginId + * @return boolean + */ + function containsPlugin($pluginType, $pluginId) { + return isset($this->_index[$pluginType . 's'][$pluginId]); + } + + /** + * Returns the specified plugin's name in the active language. + * If it's not available in the active language, fall back to 'en_US'. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * string the plugin name + */ + function getPluginName($pluginType, $pluginId) { + global $gallery; + + if (!$this->_isLoaded) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Index must be loaded.'), + null); + } + + /* Make sure description exists in current language. */ + list ($ret, $language) = $gallery->getActiveLanguageCode(); + if ($ret) { + return array($ret, null); + } + + /* Fall back to en_US if the description is not available in the active language. */ + if (!isset($this->_index[$pluginType . 's'][$pluginId]['descriptions'][$language])) { + $language = 'en_US'; + } + + if (!isset($this->_index[$pluginType . 's'][$pluginId] + ['descriptions'][$language]['name'])) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Name attribute missing from meta data [$language]"), + null); + } + + return array(null, + $this->_index[$pluginType . 's'][$pluginId]['descriptions'][$language]['name']); + } + + /** + * Returns the specified plugin's descriptor URL relative to the repository root URL. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * string descriptor URL + */ + function getDescriptorUrl($pluginType, $pluginId) { + if (!$this->_isLoaded) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Index must be loaded.'), + null); + } + + list ($ret, $header) = $this->getPluginHeader($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + return array(null, sprintf('%ss/%s-%s-%s.descriptor', + $pluginType, $pluginId, $header['version'], $header['buildTimestamp'])); + } + + /** + * Returns the specified plugin package's URL relative to the repository root URL. + * + * @param string $pluginType + * @param string $pluginId + * @param string $package package name + * @return array object GalleryStatus a status code + * string package URL + */ + function getPackageUrl($pluginType, $pluginId, $package) { + list ($ret, $version, $build) = + $this->getPackageVersionAndBuild($pluginType, $pluginId, $package); + if ($ret) { + return array($ret, null); + } + + if (preg_match('/^lang-(.*)$/', $package)) { + $packageUrl = sprintf( + '%ss/%s-%s-%s-%s.package', $pluginType, $pluginId, $package, $version, $build); + } else { + $packageUrl = sprintf( + '%ss/%s-%s-%s-%s.package', $pluginType, $pluginId, $version, $build, $package); + } + + return array(null, $packageUrl); + } + + /** + * Returns the version and build of the specified plugin package. + * + * If a language package is specified, the strings.raw and po revision are returned. + * + * @param string $pluginType + * @param string $pluginId + * @param string $package package name + * @return array object GalleryStatus a status code + * string version/revision + * string build/revision + */ + function getPackageVersionAndBuild($pluginType, $pluginId, $package) { + if (!$this->_isLoaded) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Index must be loaded.'), + null, null); + } + + list ($ret, $header) = $this->getPluginHeader($pluginType, $pluginId); + if ($ret) { + return array($ret, null, null); + } + + if (preg_match('/^lang-(.*)$/', $package, $languageCode)) { + /* + * At some future date we may have more than one set of revisions in an index, at + * which point we could return the set of languages that match what we have installed, + * instead of just returning the latest version from the repository. + */ + $languages = $this->_index[$pluginType . 's'][$pluginId]['languages']; + $version = $header['stringsRevision']; + $build = $languages[$header['stringsRevision']][$languageCode[1]]; + } else { + $version = $header['version']; + $build = $header['buildTimestamp']; + } + + return array(null, $version, $build); + } + + /** + * Returns a list of plugins from the index of the specified type. + * + * The list can include only plugins that are compatible with the specified core APIs + * (core and theme/module) if the second parameter is set. If no APIs are specified for the + * compatibility check, the currently installed API versions are used. + * + * @param string $pluginType 'module' or 'theme' + * @param boolean $showAllPlugins return all plugins, even incompatible ones + * @param array $coreApis core APIs to base compatibility check on + * 'core'/'module'/'theme' => array(versionMajor, versionMinor) + * @return array plugin list + */ + function getPlugins($pluginType, $showAllPlugins = false, $coreApis = null) { + $pluginList = array(); + + foreach ($this->_index[$pluginType . 's'] as $pluginId => $plugin) { + /* Skip core module. */ + if ($pluginType == 'module' && $pluginId == 'core') { + continue; + } + + /* Check compatibility. */ + $isCompatible = $this->_utilities->isPluginCompatible($pluginType, + $plugin['header']['requiredCoreApi'], $plugin['header']['requiredPluginApi'], + $coreApis); + + if ($showAllPlugins || $isCompatible) { + $pluginList[$pluginType][$pluginId] = $plugin; + $pluginList[$pluginType][$pluginId]['isCompatible'] = $isCompatible; + + /* If plugin is locally available, get its version. */ + list ($ret, $isPluginAvailable) = + $this->_utilities->isPluginAvailable($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + + if ($isPluginAvailable) { + list ($ret, $version) = + $this->_utilities->getPluginVersion($pluginType, $pluginId); + if ($ret) { + return array($ret, null); + } + $pluginList[$pluginType][$pluginId]['localVersion'] = $version; + } + } + } + + return array(null, $pluginList); + } + + /** + * Returns the complete index array. Used for testing purposes. + * + * @return array the index + * @access private + */ + function &getRawData() { + return $this->_index; + } + + /** + * Returns the path of the local repository cache. + * + * @return string index path + */ + function getRepositoryCacheDir() { + global $gallery; + return $gallery->getConfig('repository.cache') . $this->_source . '/'; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryRepositoryUtilities.class b/Source/gallery2/modules/core/classes/GalleryRepositoryUtilities.class new file mode 100644 index 0000000..1fbbe57 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryRepositoryUtilities.class @@ -0,0 +1,383 @@ + + * @version $Revision: 16127 $ + */ +class GalleryRepositoryUtilities { + + /** + * Extracts the revision number from a string generated by CVS' Id tag. + * + * The pattern is one of: + * Id: it.po 13690 2006-05-19 18:01:46Z mindless + * Revision: 13690 + * + * @param string $string to exract revision from + * @return array object GalleryStatus a status code + * string revision + */ + function extractRevision($string) { + if (preg_match('/Id: \S+ (\d+) \d.*/U', $string, $revision)) { + $revision = $revision[1]; + } else if (preg_match('/Revision: (\d+) /U', $string, $revision)) { + $revision = $revision[1]; + } else if (preg_match('/Id: \S+,v (.*?) .*/U', $string, $revision)) { + /* support 2.1.2 pre-svn strings.raw */ + $revision = 10212; + } else if (preg_match('/crc32 crc32/', $string)) { + /* support 2.1.2 pre-svn MANIFEST files*/ + $revision = 10212; + } else { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "No revision found in [$string]"), + null); + } + return array(null, $revision); + } + + /** + * Compares two specified versions and, optionally, build numbers (timestamps). Returns the + * relation between the first and second specified versions. + * + * @param string $version1 first version (x[.y][.z][...]) + * @param string $version2 second version + * @param int $build1 first build (yyyymmddhhmmss) + * @param int $build2 second build + * @return array object GalleryStatus a status code + * string 'older', 'equal', 'newer' + */ + function compareVersions($version1, $version2, $build1=null, $build2=null) { + $relation = ''; + + /* Compare versions if they're different. */ + if ($version1 != $version2) { + $relation = $this->compareRevisions($version1, $version2); + } + + /* Compare builds if they're specified and if versions are identical. */ + if (!empty($build1) && !empty($build2) && empty($relation)) { + if ($build1 != $build2) { + $relation = $build1 > $build2 ? 'newer' : 'older'; + } + } + + /* If no differences have been found, versions/builds are equal. */ + if (empty($relation)) { + $relation = 'equal'; + } + + return array(null, $relation); + } + + /** + * Compares two specified revisions. + * + * @param string $revision1 first revision (x[.y][.z][...]) + * @param string $revision2 second revision + * @return string 'equal', 'older' or 'newer' + */ + function compareRevisions($revision1, $revision2) { + if ($revision1 == $revision2) { + return 'equal'; + } + + $revision1 = explode('.', $revision1); + $revision2 = explode('.', $revision2); + + $subRevisions = count($revision1) > count($revision2) ? count($revision1) + : count($revision2); + for ($i = 0; $i < $subRevisions; $i ++) { + if (!isset($revision2[$i])) { + $relation = 'newer'; + break; + } + if (!isset($revision1[$i])) { + $relation = 'older'; + break; + } + if ($revision1[$i] != $revision2[$i]) { + $relation = $revision1[$i] > $revision2[$i] ? 'newer' : 'older'; + break; + } + } + return $relation; + } + + /** + * Reads specified number of bytes from the file's beginning. + * + * @param string $path file path + * @param int $bytes bytes to read + * @return array object GalleryStatus a status code + * string first line from file + */ + function getFirstBytesFromFile($path, $bytes) { + global $gallery; + $platform =& $gallery->getPlatform(); + + if ($file = $platform->fopen($path, 'r')) { + $data = $platform->fread($file, $bytes); + $platform->fclose($file); + } else { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Error reading file [$path]"), + ''); + } + return array(null, $data); + } + + /** + * Reads the strings.raw revision of the specified plugin. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * string strings.raw timestamp + */ + function getLanguageBaseRevision($pluginType, $pluginId) { + global $gallery; + + /* Make sure that strings.raw exists where we expect it. */ + $platform =& $gallery->getPlatform(); + $pluginBaseDir = GalleryCoreApi::getPluginBaseDir($pluginType, $pluginId, true); + $pluginLanguageBasePath = + sprintf('%s%ss/%s/po/strings.raw', $pluginBaseDir, $pluginType, $pluginId); + if (!$platform->file_exists($pluginLanguageBasePath)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "strings.raw not found [$pluginLanguageBasePath]"), + null); + } + + /* Get the strings.raw file's first line which contains the timestamp. */ + list ($ret, $line) = $this->getFirstBytesFromFile($pluginLanguageBasePath, 128); + if ($ret) { + return array($ret, null); + } + + list ($ret, $revision) = $this->extractRevision($line); + if ($ret) { + return array($ret, null); + } + + return array(null, $revision); + } + + /** + * Determines whether the specified plugin is available in the local Gallery. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * boolean availability + */ + function isPluginAvailable($pluginType, $pluginId) { + list ($ret, $plugins) = GalleryCoreApi::getAllPluginIds($pluginType); + if ($ret) { + return array($ret, null); + } + + $isAvailable = in_array($pluginId, $plugins); + return array(null, $isAvailable); + } + + /** + * Checks plugin compatibility with a certain version of Gallery. + * + * Determines whether the specified plugin type's required APIs are compatible with specified + * provided APIs. If provided APIs are omitted, currently installed API versions will be + * used. + * + * @param string $pluginType + * @param array $requiredCoreApi required core API version + * @param array $requiredPluginApi required theme/module API version + * @param array $providedApis provided core API versions + * ('core', 'module', 'theme' => array(Major, Minor)) + * @return boolean compatibility + */ + function isPluginCompatible($pluginType, $requiredCoreApi, $requiredPluginApi, + $providedApis=null) { + + /* + * We must explicitly convert version numbers to integers because + * GalleryUtilities::isCompatibleWithApi only works with integers. + */ + $requiredCoreApi[0] = (int)$requiredCoreApi[0]; + $requiredCoreApi[1] = (int)$requiredCoreApi[1]; + $requiredPluginApi[0] = (int)$requiredPluginApi[0]; + $requiredPluginApi[1] = (int)$requiredPluginApi[1]; + + /* If no provided core API versions were specified, get versions from installed core. */ + list ($providedCoreApi, $providedPluginApi) = + $this->getProvidedApis($pluginType, $providedApis); + + return (GalleryUtilities::isCompatibleWithApi($requiredCoreApi, $providedCoreApi) + && GalleryUtilities::isCompatibleWithApi($requiredPluginApi, $providedPluginApi)); + } + + /** + * Returns the provided APIs relevant to the specified plugin type. + * + * If no provided APIs are specified, currently installed API versions will be used. + * + * @param string $pluginType + * @param array $providedApis provided core API versions + * ('core', 'module', 'theme' => array(Major, Minor)) + * @return array array provided core API version + * array provided plugin (based on its type) API version + */ + function getProvidedApis($pluginType, $providedApis=null) { + if (empty($providedApis)) { + $providedCoreApi = GalleryCoreApi::getApiVersion(); + /* + * GalleryModule will be loaded, but GalleryTheme may not be, yet because this + * is typically called from controller code. + */ + GalleryCoreApi::requireOnce('modules/core/classes/GalleryTheme.class'); + $providedPluginApi = $pluginType == 'module' ? GalleryModule::getApiVersion() + : GalleryTheme::getApiVersion(); + } else { + $providedCoreApi[0] = (int)$providedApis['core'][0]; + $providedCoreApi[1] = (int)$providedApis['core'][1]; + $providedPluginApi[0] = $pluginType == 'module' ? (int)$providedApis['module'][0] + : (int)$providedApis['theme'][0]; + $providedPluginApi[1] = $pluginType == 'module' ? (int)$providedApis['module'][1] + : (int)$providedApis['theme'][1]; + } + + return array($providedCoreApi, $providedPluginApi); + } + + /** + * Gets version and build information about the installed packages of the specified plugin. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * array[$packageName] => array('version' => $version, 'build' => $build) + */ + function getPluginPackages($pluginType, $pluginId) { + if (empty($pluginType) || empty($pluginId)) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Missing plugin type [$pluginType] and/or ID [$pluginId]"), + null); + } + list ($ret, $searchResults) = GalleryCoreApi::getMapEntry('GalleryPluginPackageMap', + array('locked', 'packageVersion', 'packageBuild', 'packageName'), + array('pluginType' => $pluginType, 'pluginId' => $pluginId)); + if ($ret) { + return array($ret, null); + } + + $data = array(); + while ($result = $searchResults->nextResult()) { + $data[$result[3]] = + array('locked' => $result[0], 'version' => $result[1], 'build' => $result[2]); + } + + return array(null, $data); + } + + /** + * Returns the language description of the specified language-country code. + * eg. en_US => English (US) + * + * @param string $languageCode + * @return array object GalleryStatus a status code + * string language description + */ + function getLanguageDescription($languageCode) { + global $gallery; + $translator =& $gallery->getTranslator(); + + list ($newLanguageCode, $languageData) = + $translator->getSupportedLanguageCode($languageCode, false); + if (!$newLanguageCode) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Invalid language code specified [$languageCode]"), + null); + } + + if (!isset($languageData['description'])) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Language not supported [{$language}_{$country}]"), + null); + } + + return array(null, $languageData['description']); + } + + /** + * Returns the version of the specified plugin. + * + * @param string $pluginType + * @param string $pluginId + * @return array object GalleryStatus a status code + * string version + */ + function getPluginVersion($pluginType, $pluginId) { + list ($ret, $plugin) = GalleryCoreApi::loadPlugin($pluginType, $pluginId, true); + if ($ret) { + return array($ret, null); + } + + return array(null, $plugin->getVersion()); + } + + /** + * Downloads a file from the specified URL. + * + * It currently calls GalleryCoreApi::fetchWebPage to do all the work. If the gzinflate() + * function is available, then download the gzipped version of the file and unpack it locally + * to save bandwidth. + * + * @param string $url url to download from + * @param string $ignoreCompression don't try to get the compressed version of the file + * @return array boolean file was successfully downloaded + * string file contents + */ + function downloadFile($url, $ignoreCompression=false) { + global $gallery; + + $phpVm = $gallery->getPhpVm(); + $needsInflation = false; + if (!$ignoreCompression && $phpVm->function_exists('gzinflate')) { + $url .= '.gz'; + $needsInflation = true; + } + + list ($successful, $contents, $response, $headers, $actualUrl) = + GalleryCoreApi::fetchWebPage($url); + if (empty($contents) || !$successful) { + return array(false, null); + } + + if ($needsInflation) { + $contents = $phpVm->gzinflate($contents); + } + return array(true, $contents); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GallerySession.class b/Source/gallery2/modules/core/classes/GallerySession.class new file mode 100644 index 0000000..0a5fee6 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GallerySession.class @@ -0,0 +1,1530 @@ + + * @version $Revision: 15641 $ + */ + +/** + * Define gallery session key for this install. + */ +define('SESSION_ID_PARAMETER', 'GALLERYSID'); + +/** + * Define a temporary session id for new guest user sessions. If the guest needs a session, all + * HTML already generated will be scanned to replace this temporary id with the correct id. + */ +define('SESSION_TEMP_ID', 'TMP_SESSION_ID_DI_NOISSES_PMT'); + +/** + * Container for session related data. + */ +class GallerySession { + + /** + * The time this session was created. + * @var int + * @access private + */ + var $_creationTime; + + /** + * The time this session was last modified. + * @var int + * @access private + */ + var $_modificationTime; + + /** + * The id of this session. + * @var string + * @access private + */ + var $_sessionId; + + /** + * Is it OK to rely on cookies for this session? + * @var boolean + * @access private + */ + var $_isUsingCookies = false; + + /** + * The id of the session's user. + * @var int + * @access private + */ + var $_userId; + + /** + * The serialized session data as loaded from database. + * @var string + * @access private + */ + var $_loadedSessionData; + + /** + * The session data. + * @var array + * @access private + */ + var $_sessionData; + + /** + * The domain for our cookie. + * @var string + * @access private + */ + var $_cookieDomain; + + /** + * A set of identifying values that we can use to verify that the session is coming from the + * same browser as it used to (to prevent session hijacking). + * @var array + * @access private + */ + var $_remoteIdentifier; + + /** + * Whether the session has been saved in the persistent store during the current request + * handling. Used to determine whether we need to "touch" the session to prevent it from + * expiring in case the session data hasn't changed anyway. + * @var boolean + * @access private + */ + var $_isSessionSaved; + + /** + * Whether this is a session for a search engine. + * @var boolean + * @access private + */ + var $_isSearchEngineSession; + + /** + * Whether a persistent session has been created (not updated) in this request. + * @var boolean + * @access private + */ + var $_isPersistentSessionNew; + + /** + * Whether no pseudo/temporary session id should be returned on getId() if there is no real + * session id yet. + * @var boolean + * @access private + */ + var $_doNotUseTempId; + + /** + * Whether this is a persistent session or just a session for this single request. + * @var boolean + * @access private + */ + var $_isPersistent; + + /** + * Whether a persistent session is allowed to be created in this request. + * @var boolean + * @access private + */ + var $_isPersistentSessionAllowedForRequest; + + /** + * Whether a persistent session should be forced to be created. + * @var boolean + * @access private + */ + var $_forceSaveSession; + + /** + * How many sessions to delete per expireSessions() call. + * @var int + * @access private + */ + var $_expirationLimit = 500; + + /** + * Authentication token to verify genuine requests. + * @var string + * @access private + */ + var $_authToken = ''; + + /** + * Either create a new session, or attach to an existing one. + * @return object GalleryStatus a status code + */ + function init() { + global $gallery; + + /* Check to see if we have an existing session */ + $this->_sessionId = ''; + $this->_isSearchEngineSession = $this->_isSessionSaved = $this->_isPersistent = false; + $this->_isPersistentSessionNew = false; + + if (!empty($_COOKIE[SESSION_ID_PARAMETER])) { + /* Fix PHP HTTP_COOKIE header bug http://bugs.php.net/bug.php?id=32802 */ + GalleryUtilities::fixCookieVars(); + + /* If we get id parameter as a cookie, then it also means cookies are functioning */ + $this->_sessionId = $_COOKIE[SESSION_ID_PARAMETER]; + $this->_isUsingCookies = true; + + /* Allow the URL to override the cookie, in rare occasions */ + $sessionId = GalleryUtilities::getRequestVariables(SESSION_ID_PARAMETER); + if ($sessionId) { + $this->_sessionId = $sessionId; + } + } else { + /* + * Many search engine crawlers don't use cookies. Normally this leads to us putting the + * session id in the URL. But doing so causes the search engine to do a lot of extra + * work to weed out the session id, which they may not do very well. So if we detect + * that this is a search engine, don't create a session under all circumstances and + * don't send cookies / don't append the sessionId to URLs. + */ + $searchEngineId = GalleryUtilities::identifySearchEngine(); + if (isset($searchEngineId)) { + $this->_isUsingCookies = true; + $this->doNotUseTempId(); + $this->_isSearchEngineSession = true; + } else { + /* When logging out (resetting the session), we already know if cookies are used */ + if (!$this->isUsingCookies()) { + $this->_isUsingCookies = false; + } + $this->_sessionId = GalleryUtilities::getRequestVariables(SESSION_ID_PARAMETER); + } + } + + /* Sanitize the session id */ + $this->_sessionId = is_string($this->_sessionId) ? $this->_sessionId : ''; + $this->_sessionId = preg_replace('/[^a-fA-F0-9]/', '', $this->_sessionId); + /* Prevent from querying the DB for sessionIds that are incorrect anyway */ + if (strlen($this->_sessionId) != 32) { + $this->_sessionId = ''; + } + $this->_sessionId = GalleryUtilities::strToLower($this->_sessionId); + + /* Load session data if a session with that id exists and expire the session if necessary */ + $ret = $this->_loadSessionData(); + if ($ret) { + return $ret; + } + + $this->_forceSaveSession = false; + + /* Only need to check for session hijacking if the session is not new */ + if ($this->_isPersistent) { + + /* Verify the remote address to avoid casual session hijacking */ + $currentRemoteIdentifier = $this->getRemoteIdentifier(); + + if (!isset($this->_remoteIdentifier)) { + /* + * Initialize remoteIdentifier if not yet set (via initEmpty(true) from a previous + * request when creating a session for a 3rd party) + */ + $this->_remoteIdentifier = $currentRemoteIdentifier; + $this->_forceSaveSession = true; + } else if ($this->compareIdentifiers($this->_remoteIdentifier, + $currentRemoteIdentifier) == 0) { + /* If we upgrade, allowSessionAccess could be missing */ + $allowFrom = @$gallery->getConfig('allowSessionAccess'); + if (!$allowFrom || $currentRemoteIdentifier[0] != $allowFrom) { + if ($gallery->getDebug()) { + $gallery->debug('Session hijack detected: saved vs. current below'); + $gallery->debug_r($this->_remoteIdentifier); + $gallery->debug_r($currentRemoteIdentifier); + } + + /* + * The session was not created from this browser address, so reset our data to + * prevent hijacking + */ + $this->_sessionId = ''; + $ret = $this->_emptySessionData(); + if ($ret) { + return $ret; + } + } + } + } /* End for existing persistent sessions */ + + return null; + } + + /** + * Start session by ensuring we've got a valid, unique sessionId and send cookie if necessary. + * @return object GalleryStatus a status code + */ + function start() { + if (!$this->_isPersistentSessionAllowedForRequest() && !$this->_forceSaveSession) { + /* No need to send a cookie or to get a new sessionId */ + return null; + } + + /* If session hasn't any important data/attributes, we don't need a persistent session */ + list ($ret, $isRequired) = $this->_isPersistentSessionRequired(); + if ($ret) { + return $ret; + } + if (!$isRequired) { + return null; + } + + /* For new sessions (no sessionId in DB yet), first get a new, collision-free sessionId */ + if (!$this->_isPersistent) { + /* + * Since getting a new collision-free sessionId requires a DB query anyway, we save the + * whole session in this case. In all typical cases (main.php), there won't be any + * session changes after start() was called, thus we actually save the session only once + * per request. + */ + $ret = $this->_acquireNewPersistentSession(); + if ($ret) { + return $ret; + } + } /* Else: not a new session */ + + /* + * Send a cookie to the browser, if necessry ( this must be done before we start outputting + * HTML because the DownloadItem requests might come in before we reach $session->save() ) + */ + + /* Don't save session / send cookie for DownloadItem, CSS, migrate.Redirect requests */ + if (!isset($_COOKIE[SESSION_ID_PARAMETER]) + || $this->_forceSaveSession + || $_COOKIE[SESSION_ID_PARAMETER] != $this->_sessionId) { + $ret = $this->_setCookie(); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Save any session changes to the store. Does not save sessions that don't have a sessionId + * yet. Triggers the expiration of existing persistent sessions in 2% of all calls. + * @return object GalleryStatus a status code + */ + function save() { + global $gallery; + $phpVm = $gallery->getPhpVm(); + $dieRoll = $phpVm->rand(1, 100); + + if (!empty($this->_sessionId) + && ($this->_isPersistentSessionAllowedForRequest() || $this->_forceSaveSession)) { + $this->_sessionId = GalleryUtilities::strtolower($this->_sessionId); + if (empty($this->_userId)) { + return GalleryCoreApi::error(ERROR_MISSING_VALUE); + } + + /* Only bother saving if we've been modified at all */ + $serialized = $this->_getSerializedSession(); + if ($serialized != $this->_loadedSessionData) { + if (!$this->_isPersistent) { + $ret = $this->_acquireNewPersistentSession(); + } else { + $this->_modificationTime = $phpVm->time(); + $ret = GalleryCoreApi::updateMapEntry('GallerySessionMap', + array('id' => $this->_sessionId), array('userId' => $this->_userId, + 'remoteIdentifier' => serialize($this->_remoteIdentifier), + 'creationTimestamp' => $this->_creationTime, + 'modificationTimestamp' => $this->_modificationTime, + 'data' => serialize($this->_sessionData))); + } + if ($ret) { + return $ret; + } + $this->_isSessionSaved = true; + } else if (!$this->_isSessionSaved) { + /* + * 5% of the time touch the session file so that it doesn't get expired. We can't + * count on the atime being set, since you can disable that on some operating + * systems to get performance gains. + */ + if ($dieRoll <= 5) { + $this->_modificationTime = $phpVm->time(); + $ret = GalleryCoreApi::updateMapEntry('GallerySessionMap', + array('id' => $this->_sessionId), + array('modificationTimestamp' => $this->_modificationTime)); + if ($ret) { + return $ret; + } + $this->_isSessionSaved = true; + } + } + + $this->_loadedSessionData = $this->_getSerializedSession(); + $this->_isPersistent = true; + } + + /* Perform garbage collection 2% of the time when a new session was created */ + if ($this->_isPersistentSessionNew && $dieRoll <= 2 ) { + $ret = $this->_expireSessions(); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Set a new/unused sessionid. + * @param boolean $emptyRemoteId (optional) if true don't initialize remoteIdentifier + * @param int $userId (optional) user for session, defaults to anonymous + * @return object GalleryStatus a status code + */ + function initEmpty($emptyRemoteId=false, $userId=null) { + $this->_emptySessionData(); + $this->_sessionId = ''; + + if ($emptyRemoteId) { + $this->_remoteIdentifier = null; + } + + if (empty($userId)) { + list ($ret, $userId) = GalleryCoreApi::getAnonymousUserId(); + if ($ret) { + return $ret; + } + } + $this->_userId = (int)$userId; + + /* Get a sessionId, don't send cookies */ + $ret = $this->_acquireNewPersistentSession(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Clean/remove and reinitialize a session. + * @return object GalleryStatus a status code + */ + function reset() { + global $gallery; + if (!empty($this->_sessionId)) { + $this->_sessionId = GalleryUtilities::strToLower($this->_sessionId); + $ret = GalleryCoreApi::removeMapEntry('GallerySessionMap', + array('id' => $this->_sessionId)); + if ($ret) { + return $ret; + } + } + $this->_sessionId = ''; + $this->_userId = null; + + /* Unset the cookie and any request variables so that we'll regenerate a new id in init() */ + GalleryUtilities::removeRequestVariable(SESSION_ID_PARAMETER); + unset($_COOKIE[SESSION_ID_PARAMETER]); + + /* Reset 'cached' variables */ + $this->_cookieDomain = null; + + /* Delete the cookie on the browser */ + $ret = $this->_setCookie(true); + if ($ret) { + return $ret; + } + + $ret = $this->init(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Regenerate the session id to prevent a session fixation attack by a hostile website. + * @return object GalleryStatus a status code + */ + function regenerate() { + /* Store the current session data */ + $localSessionData = $this->_sessionData; + $localLoadedSessionData = $this->_loadedSessionData; + $userId = $this->getUserId(); + + /* Reset the session data to create a new session id */ + $ret = $this->reset(); + if ($ret) { + return $ret; + } + + /* Restore the stored session data */ + $this->_sessionData = $localSessionData; + $this->_loadedSessionData = $localLoadedSessionData; + $this->setUserId($userId); + + /* Start the session again (create a session in the DB, ...) */ + $ret = $this->start(); + if ($ret) { + return $ret; + } + + /* Replace old session id with new one in any return or navigation URLs */ + $key = GalleryUtilities::prefixFormVariable($this->getKey()) . '='; + $match = '/' . $key . '[a-fA-F0-9]+/'; + $replace = $key . $this->getId(); + + foreach (array('return', 'formUrl') as $key) { + if (GalleryUtilities::hasRequestVariable($key)) { + GalleryUtilities::putRequestVariable($key, + preg_replace($match, $replace, GalleryUtilities::getRequestVariables($key))); + } + } + + if ($this->exists('core.navigation')) { + $navigation = $this->get('core.navigation'); + foreach (array_keys($navigation) as $navId) { + if (isset($navigation[$navId]['data']['returnUrl'])) { + $navigation[$navId]['data']['returnUrl'] = + preg_replace($match, $replace, $navigation[$navId]['data']['returnUrl']); + } + } + $this->put('core.navigation', $navigation); + } + + return null; + } + + /** + * Send back a cookie to the browser. + * @param boolean $delete (optional) whether to delete the cookie + * @return object GalleryStatus a status code + * @access private + */ + function _setCookie($delete=false) { + global $gallery; + $phpVm = $gallery->getPhpVm(); + + /* + * Send back a cookie + * + * TODO: Need to be able to decide for certain that the browser isn't accepting cookies so + * that we can stop sending them. We can do this by recording how many times we've sent a + * cookie, and how many times that we've received one back in return. Leave that for later. + */ + + if (!$delete) { + $cookie = 'Set-Cookie: ' . SESSION_ID_PARAMETER . '=' . $this->_sessionId; + } else { + $cookie = 'Set-Cookie: ' . SESSION_ID_PARAMETER . '='; + } + + /* + * As part of the session/cookie management, we are forced to append the SID to all + * DownloadItem URLs in embedded Gallery if cookie path/domain are not configured + */ + list ($ret, $this->_cookieDomain) = $this->getCookieDomain(); + if ($ret) { + return $ret; + } + $urlGenerator =& $gallery->getUrlGenerator(); + list ($ret, $cookiePath) = $urlGenerator->getCookiePath(); + if ($ret) { + return $ret; + } + + list ($ret, $sessionLifetime) = + GalleryCoreApi::getPluginParameter('module', 'core', 'session.lifetime'); + if ($ret) { + if ($ret->getErrorCode() & ERROR_STORAGE_FAILURE) { + /* During installation it's possible the database isn't around yet. Keep going. */ + $sessionLifetime = 0; + } else { + return $ret; + } + } + + if ($delete) { + /* Expires in the past instructs the browser to delete the cookie */ + $expirationDate = GalleryUtilities::getHttpDate($phpVm->time() - (365 * 24 * 3600)); + $cookie .= '; expires=' . $expirationDate; + } else if ($sessionLifetime > 0) { + $expirationDate = GalleryUtilities::getHttpDate($phpVm->time() + $sessionLifetime); + $cookie .= '; expires=' . $expirationDate; + } + + /* Because of short URLs, the cookie path must always be set explicitly */ + $cookie .= '; path=' . $cookiePath; + + /* + * Set the cookie domain only if needed, ie. embedded multi-subdomain installs that is when + * Gallery is installed on a different subdomain than the embedding application. + * + * Q: Why not set the cookie domain to .example.com (omitting the subdomains) and the cookie + * path to /? + * A: This is actually a perfect fix (we had it in cvs between beta 3 and beta 4), because + * the case where a browser sends back multiple cookies is completely avoided. But it has a + * major flaw: security! When people share a common domain name, eg. by + * example.com/~accountName/ or by accountName.example.com, they will all have cookies with + * .example.com and /. To differentiate the cookies, we introduced the cookieId, ie. each + * Gallery install had its own unique cookie name. But when a user accessed multiple + * accounts on this shared domain, the Gallery cookie is sent to all accounts which opens + * the door for session hijacking. This single reason, security, made us not choose this + * approach. + * + * Q: Why not set the cookie domain to the actual host string (ie. .www.example.com when + * Gallery is accessed like that or .example.com in other requests, ...)? + * A: Because in RFC 2965, there is no rule in what order the browser should send back the + * cookies. And thus, PHP/Gallery wouldn't know which is the right cookie. + * + * Q: Why not just omit the cookie domain in the set cookie calls? + * A: Actually, this is a good solution. Because if no cookie domain was set, the browser + * sends only cookies back that match the requested domain exactly. So it won't return a + * example.com cookie for www.example.com and the other way around. But, and this is a big + * but, Internet Explorer doesn't conform to the RFC 2965. IE sends back example.com and + * www.example.com cookies when it shouldn't. Together with the php bug (least, most + * specific cookie match in HTTP_COOKIE), this results in an unpredictable behavior for + * various php version / IE scenarios. Luckily we can fix this manually with + * fixCookieVars(). That's why we chose this approach. + * + * Q: Why append the session id in embedded Gallery to all DownloadItem URLs? + * A: In embedded Gallery, all DownloadItem requests still go directly to Gallery and not + * through the emApp for performance reasons. If we set the cookie path in embedded Gallery + * to a path that matches embedded and standalone Gallery, then the standalone Gallery + * cookies always have precendence over the cookies from embedded Gallery. This leads to + * cookie conflicts, if the two cookies correspond to different sessions. That's why we are + * forced to append the session id to embedded URLs that require session management and go + * directly to standalone Gallery. DownloadItem is the only request that falls into this + * category. + * + * Q: Why force the Gallery base (standalone) path for Java applet cookies? + * A: Because the applets talk to Gallery directly. If the cookie path was set to the + * embedded Gallery path, then it would not be selected for the HTTP requests of the applet + * to Gallery, because it wouldn't path-match. + * + * Therefore we don't set the cookie domain by default and offer the option to set it to a + * configured value if it is required (embedded multi-subdomain G2). In embedded Gallery, + * we have to append the session id to all DownloadItem unless the cookie path is configured + * such that standalone and embedded Gallery set the same cookie path. + */ + if (!empty($this->_cookieDomain)) { + $cookie .= '; domain=' . $this->_cookieDomain; + } + + /* + * Tag on the HttpOnly modifier. IE 6.0 SP1 will prevent any cookies with this in it from + * being visible to JavaScript, which mitigates XSS attacks. + */ + $cookie .= '; HttpOnly=1'; + + /* + * Init may be called multiple times (from unit tests) but don't send headers more than + * once. Use our PhpVm for testability. + */ + $phpVm = $gallery->getPhpVm(); + if (!$phpVm->headers_sent()) { + GalleryUtilities::setResponseHeader($cookie); + } + + return null; + } + + /** + * Acquire a new persistent session and guarantee we've got a valid, unqiue sessionId. + * @return object GalleryStatus a status code + */ + function _acquireNewPersistentSession() { + global $gallery; + $phpVm = $gallery->getPhpVm(); + $storage =& $gallery->getStorage(); + + /* Assemble the data */ + $this->_modificationTime = $phpVm->time(); + $data = array('userId' => $this->_userId, + 'remoteIdentifier' => serialize($this->_remoteIdentifier), + 'creationTimestamp' => $this->_creationTime, + 'modificationTimestamp' => $this->_modificationTime, + 'data' => serialize($this->_sessionData)); + + /* Get new sessionId, there's a 1:2^128 probability of collision (md5), try it 5 times */ + $remoteHost = $this->_remoteIdentifier[0]; + $attempt = 0; + $success = false; + do { + /* If there's sessionId given, first try it with this, else generate a new one */ + if ($attempt != 0 || empty($this->_sessionId)) { + $this->_sessionId = + $phpVm->md5(uniqid(substr($remoteHost . microtime() . rand(1, 32767), 0, 114))); + } + $this->_sessionId = $data['id'] = GalleryUtilities::strToLower($this->_sessionId); + + $ret = @GalleryCoreApi::addMapEntry('GallerySessionMap', $data); + if ($ret) { + if (!($ret->getErrorCode() & ERROR_STORAGE_FAILURE)) { + /* No luck after x attempts, give up, stop hitting the server with DB queries */ + return $ret; + } + } else { + $success = true; + } + /* + * Make sure the session exists before other requests (DownloadItem, printing shops, + * ...) arrive that rely on it + */ + $ret = $storage->checkPoint(); + if ($ret) { + return $ret; + } + } while (!$success && $attempt++ < 4); + + if (!$success) { + return GalleryCoreApi::error(ERROR_COLLISION); + } + + $this->_isPersistent = true; + /* Make sure we don't save the session a 2nd time for vain */ + $this->_loadedSessionData = $this->_getSerializedSession(); + /* Also prevent from doing a "touch" */ + $this->_isSessionSaved = true; + /* To remember to replace SESSION_TEMP_ID with the real id in the generated HTML */ + $this->_isPersistentSessionNew = true; + + return null; + } + + /** + * Check whether this session should be persistent or not. + * + * For guest users, we don't create sessions, unless their session has non-default data. Also, + * the session based permission cache and the navigation isn't regarded important enough to + * create a session. + * + * @return array object GalleryStatus a status code, boolean session is necessary + * @access private + */ + function _isPersistentSessionRequired() { + /* For existing sessions, the session is necessary */ + if ($this->_isPersistent || $this->_forceSaveSession) { + return array(null, true); + } + + if (!empty($this->_isSearchEngineSession) || empty($this->_userId)) { + return array(null, false); + } + + list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser($this->_userId); + if ($ret) { + return array($ret, null); + } + + if ($isAnonymous) { + $sessionDataCopy = $this->_sessionData; + /* + * - lastViewed: We don't care about viewed count, we can check that less strict with + * HTTP modified since headers + * - permissionCache: we don't care about the permission cache (session based + * permissions are stored as ACLs in another session data entry) + * - navigation: no, we don't need navigation + * - language: only useful if it's different from what we'd have set anyway + * - embed.id.externalUser: not important if mapped to the anonymousUser, else the + * userId is not == anonymousUserId + * - authToken: we only check the authToken for persistent sessions + */ + unset($sessionDataCopy['core.lastViewed']); + unset($sessionDataCopy['permissionCache']); + unset($sessionDataCopy['core.navigation']); + unset($sessionDataCopy['embed.id.externalUser']); + unset($sessionDataCopy['core.authToken']); + list ($ret, $detectedLanguageCode) = GalleryTranslator::getDefaultLanguageCode(); + if ($ret) { + return array($ret, null); + } + + if (isset($sessionDataCopy['core.language']) && + $sessionDataCopy['core.language'] == $detectedLanguageCode) { + unset($sessionDataCopy['core.language']); + } + + /* If there's anything left in the session data, we should probably create a session */ + return array(null, !empty($sessionDataCopy)); + } else { + return array(null, true); + } + } + + /** + * Whether this controller/view request generally allows creating a session. + * + * Don't save session in core.DownloadItem, migrate.Redirect, ... requests + * Reason: In these requests we don't need to save the session or create a new one because + * a) the session is not modified (DownloadItem, CSS) + * b) we return an image / css and not a HTML page (DownloadItem, CSS) + * c) there will be either a DownloadItem / ShowItem request anyway (migrate.Redirect) + * d) in migrate.Redirect requests, the cookie path we would set would most certainly + * be wrong, because the internal mod_rewrite redirect doesn't change all PHP SERVER + * variables + * + * And if we stored the session, it would result in *a lot* unneeded sessions, + * eg. for migrate redirects or hotlinked images. + * + * @return boolean true if a persistent session can be created in this request + * @access private + */ + function _isPersistentSessionAllowedForRequest() { + if (!isset($this->_isPersistentSessionAllowedForRequest)) { + $flag = true; /* Default to true */ + list ($view, $controller) = GalleryUtilities::getRequestVariables('view', 'controller'); + + if (!empty($controller)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryController.class'); + list ($ret, $controller) = GalleryController::loadController($controller); + if (!$ret && !$controller->shouldSaveSession()) { + $flag = false; + } + } else if (!empty($view)) { + GalleryCoreApi::requireOnce('modules/core/classes/GalleryView.class'); + list ($ret, $view) = GalleryView::loadView($view); + if (!$ret && !$view->shouldSaveSession()) { + $flag = false; + } + } + + $this->_isPersistentSessionAllowedForRequest = $flag; + } + + return $this->_isPersistentSessionAllowedForRequest; + } + + /** + * Load the session data or generate a new session with new data. Also sets + * $this->_isPersistent to true if loaded from persistent store. + * @return object GalleryStatus a status code + * @access private + */ + function _loadSessionData() { + global $gallery; + + if (!empty($this->_sessionId)) { + $this->_sessionId = GalleryUtilities::strToLower($this->_sessionId); + + /* Check if the session has expired */ + list ($ret, $lifetime) = + GalleryCoreApi::getPluginParameter('module', 'core', 'session.lifetime'); + if ($ret) { + return $ret; + } + list ($ret, $inactivityTimeout) = + GalleryCoreApi::getPluginParameter('module', 'core', + 'session.inactivityTimeout'); + if ($ret) { + return $ret; + } + + $phpVm = $gallery->getPhpVm(); + $lifetimeCutoff = $phpVm->time() - $lifetime; + $inactiveCutoff = $phpVm->time() - $inactivityTimeout; + + list ($ret, $results) = GalleryCoreApi::getMapEntry('GallerySessionMap', + array('userId', 'remoteIdentifier', 'creationTimestamp', + 'modificationTimestamp', 'data'), + array('id' => $this->_sessionId)); + if ($ret) { + /* When upgrading from versions before 1.0.22, there's no DB table yet */ + list ($ret2, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret2) { + return $ret; + } + $instVersions = $module->getInstalledVersions(); + if (!empty($instVersions['core']) && + version_compare($instVersions['core'], '1.0.22', '<')) { + $this->_emptySessionData(); + return null; + } + return $ret; + } + + if ($results->resultCount()) { + $pSession = $results->nextResult(); + if ($pSession[3] > $inactiveCutoff && $pSession[2] > $lifetimeCutoff) { + /* A session exists and it's valid */ + $this->_userId = (int)$pSession[0]; + $this->_remoteIdentifier = unserialize($pSession[1]); + $this->_creationTime = (int)$pSession[2]; + $this->_modificationTime = (int)$pSession[3]; + $this->_sessionData = unserialize($pSession[4]); + $this->_loadedSessionData = $this->_getSerializedSession(); + + $this->_isPersistent = true; + } else { + /* The session has timed out, remove it */ + $ret = GalleryCoreApi::removeMapEntry('GallerySessionMap', + array('id' => $this->_sessionId)); + if ($ret) { + return $ret; + } + + /* Get a new sessionId + session meta data (later) */ + $this->_sessionId = ''; + } + } else { /* There's no session with this sessionId in the database */ + $this->_sessionId = ''; + } + + if (!$this->_isPersistent) { + /* + * The sessionId was invalid. If we got the sessionId from the cookie, delete the + * cookie or we'll try to load the session on each request again. + */ + if (isset($_COOKIE[SESSION_ID_PARAMETER])) { + unset($_COOKIE[SESSION_ID_PARAMETER]); + $ret = $this->_setCookie(true); + if ($ret) { + return $ret; + } + } + } + } /* Else: no sessionId specified, thus we've no session yet */ + + if (!$this->_isPersistent) { + $this->_emptySessionData(); + } + + return null; + } + + /** + * Get rid of all session data. + * @access private + */ + function _emptySessionData() { + /* Don't (re-)set sessionId since we can't ensure a collision-free id without DB queries */ + global $gallery; + $phpVm = $gallery->getPhpVm(); + $this->_sessionData = array(); + $this->_loadedSessionData = ''; + $this->_creationTime = $phpVm->time(); + $this->_userId = null; + $this->_modificationTime = $phpVm->time(); + $this->_remoteIdentifier = $this->getRemoteIdentifier(); + /* Don't change userId or isUsingCookies */ + + $this->_isPersistentSessionNew = false; + $this->_isSessionSaved = false; + } + + /** + * If we started this request without a sessionId, then we used SESSION_TEMP_ID in all generated + * URLs etc as a placeholder. If we still have no sessionId, remove + * g2_GALLERYSID=SESSION_TEMP_SID from all generated URLs and remove SESSION_TEMP_ID from the + * HTML. If a session was created (saved in the persistent store) during the request, replace + * the SESSION_TEMP_ID with the new/real session id. + * @param string $html HTML + * @return string same HTML with replaced or removed sessionId + */ + function replaceTempSessionIdIfNecessary($html) { + global $gallery; + + if ($this->_isPersistentSessionNew) { + /* + * Session was created during request, probably need to replace temporary session id + * with real session id + */ + + /* Replace temp session id with real/new one */ + $html = str_replace(SESSION_TEMP_ID, $this->_sessionId, $html); + } else if (empty($this->_sessionId)) { + /* Remove sessionId from URLs for guests that have no session (normal case) */ + $sessionString = + GalleryUtilities::prefixFormVariable($this->getKey()) . '=' . SESSION_TEMP_ID; + /* + * Handling only most cases here, still leaving &&, ?& but handling trailing ? and & + * Experimented a lot with str_replace and preg_replace. A perfect solution would be + * again 40% slower (e.g. 12 instead of 8.5ms on a slow box for a lot of data). + */ + /* sessionString normal and URL encoded */ + $regexp = GalleryUtilities::prefixFormVariable($this->getKey()) . '(?:=|%3D)' . + SESSION_TEMP_ID; + /* + * Remove trailing & and ? from URLs, also handle JavaScript (no HTML entities) and + * URL encoded (return URL) versions of & and ? + * This preg_replace takes about the same time as the str_replace that follows + */ + $html = preg_replace('/(?:\\?|%3F|&|&|%26amp%3B|%26)' . $regexp . '(["\'])/S', + '\\1', $html); + /* Remove sessionStrings that are not at the end of URLs and sessionIds in the HTML */ + $html = str_replace(array($sessionString, + urlencode($sessionString), + SESSION_TEMP_ID), + '', $html); + } + + return $html; + } + + /** + * Replaces the session id in all string members of an object or in all elements of an array. + * + * Applies replaceTempSessionIdIfNecessary to all strings if $search and $replace are omitted. + * Else it applies str_replace($search, $replace, $subject) on all strings. + * + * Examples: + * $themeData = $session->replaceSessionIdInData($themeData, $sessionId, SESSION_TEMP_ID); + * + * $themeData = $session->replaceSessionIdInData($themeData); + * + * @param mixed $subject array, object or string that should be modified + * @param string $search (optional) string to be replaced + * @param string $replace (optional) replacement string + * @return mixed converted subject + */ + function replaceSessionIdInData($subject, $search=null, $replace=null) { + if (($isArray = is_array($subject)) || is_object($subject)) { + foreach ($subject as $key => $value) { + $value = $this->replaceSessionIdInData($value, $search, $replace); + if ($isArray) { + $subject[$key] = $value; + } else { + $subject->$key = $value; + } + } + } else if (is_string($subject)) { + if ($search !== null) { + return str_replace($search, $replace, $subject); + } else { + return $this->replaceTempSessionIdIfNecessary($subject); + } + } else { + return $subject; + } + + return $subject; + } + + /** + * Get rid of any sessions that have not been accessed within our inactivity timeout or have + * exceeded the max lifetime. + * @return object GalleryStatus a status code + * @access private + */ + function _expireSessions() { + global $gallery; + $storage =& $gallery->getStorage(); + + list ($ret, $sessionInactivityTimeout) = + GalleryCoreApi::getPluginParameter('module', 'core', 'session.inactivityTimeout'); + if ($ret) { + return $ret; + } + + list ($ret, $lifetime) = + GalleryCoreApi::getPluginParameter('module', 'core', 'session.lifetime'); + if ($ret) { + return $ret; + } + + $phpVm = $gallery->getPhpVm(); + $inactiveCutoff = $phpVm->time() - $sessionInactivityTimeout; + $lifetimeCutoff = $phpVm->time() - $lifetime; + $lastWeek = $phpVm->time() - 86400 * 7; + + /* Only delete in small chunks, else we may lock the whole Gallery for too long */ + $where = ' + WHERE [GallerySessionMap::creationTimestamp] < ? + OR [GallerySessionMap::modificationTimestamp] < ?'; + $data[] = (int)$lifetimeCutoff; + $data[] = (int)$inactiveCutoff; + if ($lastWeek > $lifetimeCutoff) { + /* Delete guest user sessions more aggressively than other sessions */ + list ($ret, $anonymousUserId) = GalleryCoreApi::getAnonymousUserId(); + if ($ret) { + return $ret; + } + /* Delete all sessions of guest users that are older than a week*/ + $where .= ' OR + ([GallerySessionMap::userId] = ? AND [GallerySessionMap::creationTimestamp] < ?)'; + $data[] = (int)$anonymousUserId; + $data[] = (int)$lastWeek; + } + /* TODO: Make this more OO, eg. by adding function canLimitDelete() to GalleryStorage */ + if ($storage->getType() == 'mysql') { + /* + * MySQL supports the LIMIT clause in DELETE statements, other DBMS' don't Since SELECT + * 500 sessionIds + DELETE those sessionIds is more expensive we optimize for MySQL by + * using DELETE ... LIMIT 500 + */ + $query = ' + DELETE FROM [GallerySessionMap] + ' . $where . ' + LIMIT ' . (int)$this->_expirationLimit; + list ($ret, $results) = $storage->execute($query, $data); + if ($ret) { + return $ret; + } + } else { + /* + * For other DBMS first SELECT the sessionIds with a LIMIT clause then DELETE + * ADOdb can't implement the LIMIT clause in subqueries DB independently! + */ + $query = ' + SELECT [GallerySessionMap::id] + FROM [GallerySessionMap]' . $where; + $option['limit']['count'] = $this->_expirationLimit; + list ($ret, $results) = $gallery->search($query, $data, $option); + if ($ret) { + return $ret; + } + if ($results->resultCount()) { + $ids = array(); + while ($row = $results->nextResult()) { + $ids[] = $row[0]; + } + /* Delete the selected sessions */ + $query = sprintf(' + DELETE FROM [GallerySessionMap] + WHERE [GallerySessionMap::id] IN (%s)', + GalleryUtilities::makeMarkers(count($ids))); + list ($ret, $results) = $storage->execute($query, $ids); + if ($ret) { + return $ret; + } + } + } + + return null; + } + + /** + * The session key parameter used in URLs and the cookie. + * @return string + */ + function getKey() { + return SESSION_ID_PARAMETER; + } + + /** + * The session id. + * @return string an id (like "A124DFE7A90") + */ + function getId() { + if (empty($this->_sessionId) && empty($this->_doNotUseTempId)) { + return SESSION_TEMP_ID; + } else { + return $this->_sessionId; + } + } + + /** + * Instruct the session to not return a pseudo temporary session id on getId() calls Makes sure + * that the URL generator and other componennts don't use a pseudo session id for guest users + * without a real session. Call this method before starting to output immediate views the + * progress bar. + */ + function doNotUseTempId() { + $this->_doNotUseTempId = true; + } + + /** + * Return the user id of the active user of this sesison. + * @return int the user id + */ + function getUserId() { + return $this->_userId; + } + + /** + * Set the active user id for this session. + * @param int $userId + */ + function setUserId($userId) { + return $this->_userId = $userId; + } + + /* + * Returns the cookie domain. + * + * By default, don't set the cookie domain. Only set it, if Gallery is configured to set it + * (eg. because it is a) embedded AND b) different subdomains are involved) + * + * @return array (object GalleryStatus a status code, + * string the cookie domain, or '' if no cookie domain should be set) + */ + function getCookieDomain() { + if (!isset($this->_cookieDomain)) { + list ($ret, $this->_cookieDomain) = GalleryCoreApi::getPluginParameter('module', 'core', + 'cookie.domain'); + if ($ret) { + return array($ret, null); + } + if (!isset($this->_cookieDomain)) { + $this->_cookieDomain = ''; + } + } + + return array(null, $this->_cookieDomain); + } + + /** + * Is this transaction known to be using cookies? + * @return boolean + */ + function isUsingCookies() { + return $this->_isUsingCookies; + } + + /** + * Get a value from the session data. + * @param string $key + * @return string the value or null if it doesn't exist + */ + function &get($key) { + if (isset($this->_sessionData[$key])) { + return $this->_sessionData[$key]; + } + + $null = null; + return $null; + } + + /** + * Store a value in the session. + * @param string $key + * @param string $value + */ + function put($key, $value) { + $this->_sessionData[$key] = $value; + } + + /** + * Remove a value from the session. + * @param string $key + */ + function remove($key) { + unset($this->_sessionData[$key]); + } + + /** + * Check to see if a value exists in the session. + * @param string $key + */ + function exists($key) { + return isset($this->_sessionData[$key]); + } + + /** + * Return a value that we can use to identify the client. We can't tie it to the IP address + * because that changes too frequently (dialup users, users behind proxies) so we have to be + * creative. Changing this algorithm will cause all existing sessions to be discarded. + * @return array + * @static + */ + function getRemoteIdentifier() { + $httpUserAgent = GalleryUtilities::getServerVar('HTTP_USER_AGENT'); + return array(GalleryUtilities::getRemoteHostAddress(), + isset($httpUserAgent) ? md5($httpUserAgent) : null); + } + + /** + * Get the serialized session for comparing purposes. + * @return string serialized session + * @access private + */ + function _getSerializedSession() { + return serialize(array($this->_sessionId, $this->_userId, + serialize($this->_remoteIdentifier), $this->_creationTime, $this->_modificationTime, + serialize($this->_sessionData))); + } + + /** + * Compare two arrays and return score consisting of 1 point for each matching element. + * Example input: + * $a = array(0, 'x', 2); + * $b = array(0, 'y', 2); + * Example output: + * 2 + * (Indexes 0 and 2 match, index 1 does not) + * + * @return int a score + */ + function compareIdentifiers($a, $b) { + $score = 0; + if (is_array($a) && is_array($b)) { + for ($i = 0; $i < sizeof($a); $i++) { + if (sizeof($b) > $i && $a[$i] == $b[$i]) { + $score++; + } + } + } + return $score; + } + + /** + * Store a status message. + * @param array $statusData + * @return string the status id + */ + function putStatus($statusData) { + $tod = gettimeofday(); + /* + * Prefix the status id with a character so that it doesn't wind up being entirely numeric + * because PHP will renumber numeric keys in associative arrays when you run it through + * functions like array_splice() + */ + $statusId = 'x' . substr(md5($tod['usec'] + rand(1, 1000)), 0, 8); + + $status =& $this->get('core.status'); + if (!isset($status)) { + $status = array(); + } + + $status[$statusId] = $statusData; + + /* Prune extra status messages */ + $maxStatusMessages = 5; + if (sizeof($status) > $maxStatusMessages) { + $status = array_splice($status, -$maxStatusMessages); + } + $this->put('core.status', $status); + + return $statusId; + } + + /** + * Get a status message. + * @param string $statusId + * @param boolean $remove (optional) + * @return array the status message + */ + function getStatus($statusId, $remove=true) { + $status = $this->get('core.status'); + $statusData = null; + if (isset($status) && isset($status[$statusId])) { + $statusData = $status[$statusId]; + if ($remove) { + unset($status[$statusId]); + $this->put('core.status', $status); + } + } + + return $statusData; + } + + /** + * Return the session id. + * @return string the session id + * @deprecated + * @todo will be removed in the next API branch + */ + function getSessionId() { + return $this->getId(); + } + + /** + * Start new navigation. + * @param array $navigationData data for this new navigation: + * array('returnName' => ... + * 'returnUrl' => ... + * ['returnNavId' => ...]) + * @return string the navigation id + */ + function addToNavigation($navigationData) { + $tod = gettimeofday(); + $navId = 'x' . substr(md5($tod['usec'] + rand(1, 1000)), 0, 8); + + $navigation =& $this->get('core.navigation'); + if (!isset($navigation)) { + $navigation = array(); + } + $navigation[$navId] = array(); + $navigation[$navId]['data'] = $navigationData; + $navigation[$navId]['nextIds'] = array(); + + /* Tell our predecessor that he's got a new successor */ + if (isset($navigationData['returnNavId'])) { + $returnNavId = $navigationData['returnNavId']; + $navigation[$returnNavId]['nextIds'][$navId] = true; + } + + /* Prune oldest navigation branches */ + $maxNavBranches = 10; + if (sizeof($navigation) > $maxNavBranches) { + $navigation = array_splice($navigation, -$maxNavBranches); + } + + $this->put('core.navigation', $navigation); + + return $navId; + } + + /** + * Get data for a specific navigation id. + * @param string $navId the navigation id + * @return array the navigation data + */ + function getNavigation($navId) { + $navigation = $this->get('core.navigation'); + $navigationData = array(); + if (isset($navigation[$navId]['data'])) { + $navigationData[] = $navigation[$navId]['data']; + /* Add data from our predecessors, if available */ + while (isset($navigation[$navId]['data']['returnNavId']) + && isset($navigation[$navigation[$navId]['data']['returnNavId']]['data'])) { + $navId = $navigation[$navId]['data']['returnNavId']; + $navigationData[] = $navigation[$navId]['data']; + } + } + + return $navigationData; + } + + /** + * Jump back from one navigation point to one of its predecessors. + * @param string $fromNavId the source navigation id + * @param string $destNavId the destination navigation id. If empty, go back to root. + */ + function jumpNavigation($fromNavId, $destNavId = '') { + global $gallery; + $gallery->debug("navigation: Jumping back from $fromNavId to $destNavId"); + + $navigation = $this->get('core.navigation'); + $currentId = $fromNavId; + /* + * Iterate back to root, deleting everything, until we reach destNavId or an navId that has + * other successors + */ + while (true) { + $gallery->debug("navigation: deleting $currentId"); + $returnNavId = null; + if (isset($navigation[$currentId]['data']['returnNavId'])) { + $returnNavId = $navigation[$currentId]['data']['returnNavId']; + } + unset($navigation[$currentId]); + if ($returnNavId == null) { + break; + } + unset($navigation[$returnNavId]['nextIds'][$currentId]); + if (count($navigation[$returnNavId]['nextIds']) > 0) { + break; + } + if ($returnNavId == $destNavId) { + break; + } + $currentId = $returnNavId; + } + $this->put('core.navigation', $navigation); + } + + /** + * Return the Unix timestamp from when this session was created. + * @return int the creation time + */ + function getCreationTime() { + return $this->_creationTime; + } + + /** + * Return the Unix timestamp from when this session was last modified. + * @return int the modification time + */ + function getModificationTime() { + return $this->_modificationTime; + } + + /** + * Whether this session is a persistent session (= stored on the server) or just a session for + * this single request. Note that a non-persistent session can become persistent at the end of + * the request when we evaluate the conditions whether to create a persistent session or not. + * @return boolean true if the session is persistent, else false + */ + function isPersistent() { + return $this->_isPersistent; + } + + /** + * Return true if this session is identified as one coming from a search engine. + * @return bool true if this is a search engine session + */ + function isSearchEngineSession() { + return $this->_isSearchEngineSession; + } + + /** + * Returns the authentication token associated with this session. + * @return string the authentication token + */ + function getAuthToken() { + $authToken = $this->get('core.authToken'); + if (empty($authToken)) { + global $gallery; + $phpVm = $gallery->getPhpVm(); + $authToken = substr($phpVm->md5(uniqid(microtime() . mt_rand())), 0, 12); + $this->put('core.authToken', $authToken); + } + return $authToken; + } + + /** + * Checks the given authentication token and resets the internal token on failure. + * @param string $authToken Authentication token to be verified + * @return bool true if the given + */ + function isCorrectAuthToken($authToken) { + $internalAuthToken = $this->get('core.authToken'); + if (empty($authToken) || empty($internalAuthToken) + || strcmp($internalAuthToken, $authToken)) { + $this->put('core.authToken', null); + return false; + } else { + return true; + } + } +} + +/** + * Get the active user from the session's user id. + * @package GalleryCore + * @subpackage Classes + */ +class SessionAuthPlugin /* extends GalleryAuthPlugin */ { + + /** + * @see GalleryAuthPlugin::getUser + */ + function getUser() { + global $gallery; + $session =& $gallery->getSession(); + + $userId = $session->getUserId(); + if (!empty($userId)) { + list ($ret, $user) = GalleryCoreApi::loadEntitiesById($userId); + + /* ERROR_MISSING_OBJECT check to suppress error if user id doesn't exist */ + if ($ret && !($ret->getErrorCode() & ERROR_MISSING_OBJECT)) { + return array($ret, null); + } + + return array(null, $user); + } + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GallerySmarty.class b/Source/gallery2/modules/core/classes/GallerySmarty.class new file mode 100644 index 0000000..3989a19 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GallerySmarty.class @@ -0,0 +1,80 @@ + + * @version $Revision: 15513 $ + */ +class GallerySmarty extends Smarty { + + /** + * A GalleryStatus object from the last called fetch + * @var object GalleryStatus + * @access private + */ + var $_firstGalleryStatus; + + + /** + * Fetch should also return a GalleryStatus object + * + * @see Smarty::fetch + * @return array object GalleryStatus the return status + * string the output from the template + */ + function fetch($_smarty_tpl_file, $_smarty_cache_id = null, + $_smarty_compile_id = null, $_smarty_display = false) { + $this->_firstGalleryStatus = null; + + /* This could change the value of _firstError: */ + $result = parent::fetch($_smarty_tpl_file, + $_smarty_cache_id, + $_smarty_compile_id, + $_smarty_display); + + return array($this->_firstGalleryStatus, $result); + } + + /** + * Make trigger_error behave more Gallery-like + * + * @see Smarty::trigger_error + */ + function trigger_error($error_msg, $error_type = E_USER_WARNING) { + /* Store this error for later usage */ + if (!$this->_firstGalleryStatus) { + $this->_firstGalleryStatus = + GalleryCoreApi::error(ERROR_BAD_PARAMETER, null, null, + sprintf('Smarty error: %s', $error_msg, $error_type)); + } + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GallerySortInterface_1_2.class b/Source/gallery2/modules/core/classes/GallerySortInterface_1_2.class new file mode 100644 index 0000000..c801fd8 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GallerySortInterface_1_2.class @@ -0,0 +1,127 @@ + + * @version $Revision: 15513 $ + * @abstract + */ +class GallerySortInterface_1_2 { + + /** + * Return information about this sort + * + * @return array object GalleryStatus a status code + * string localized name + * boolean true for presort + */ + function getSortInfo() { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Get the query fragments used to perform this sort. + * Order by clause may contain %1%, %2% or %3% to reference the corresponding + * items in the select clause. + * A join should be of the form: JOIN [Class] ON [BASE::ID] = [Class::Column] + * Replace "Class" and "Column" with appropriate values, but BASE::ID is literal. + * This references the base table and id column in the query. + * + * @param string $direction either '' for ascending or ' DESC' for descending + * @return array object GalleryStatus a status code + * string order by clause + * string select clause, + * string optional row matching condition + * string optional join clause + */ + function getSortOrder($direction) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null, null, null); + } + + /** + * Get information about available sort orders + * + * @param boolean $includeDefault (optional) false to omit "default sort order" selection + * @return array object GalleryStatus a status code + * array of orderBy => localized name for sort orders + * array of orderBy => localized name for presorts + * array of orderDirection => localized name for direction + * @static + */ + function getAllSortOrders($includeDefault=true) { + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null, null); + } + + $orderByList = array( '' => $module->translate('« default sort order »'), + 'orderWeight' => $module->translate('Manual sort order'), + 'title' => $module->translate('Title'), + 'summary' => $module->translate('Summary'), + 'originationTimestamp' => $module->translate('Origination Date'), + 'creationTimestamp' => $module->translate('Creation Date'), + 'modificationTimestamp' => $module->translate('Last Changed Date'), + 'description' => $module->translate('Description'), + 'keywords' => $module->translate('Keywords'), + 'pathComponent' => $module->translate('Name'), + 'viewCount' => $module->translate('View Count'), + 'random' => $module->translate('Random')); + if (!$includeDefault) { + array_shift($orderByList); + } + + $presortList = array( '' => $module->translate('« no presort »'), + 'albumsFirst' => $module->translate('Albums First'), + 'viewedFirst' => $module->translate('Most Viewed First')); + + list ($ret, $implIds) = + GalleryCoreApi::getAllFactoryImplementationIds('GallerySortInterface_1_2'); + if ($ret) { + return array($ret, null, null, null); + } + + foreach ($implIds as $sortId => $className) { + list ($ret, $sort) = + GalleryCoreApi::newFactoryInstance('GallerySortInterface_1_2', $className); + if ($ret) { + return array($ret, null, null, null); + } + list ($ret, $sortName, $isPresort) = $sort->getSortInfo(); + if ($ret) { + return array($ret, null, null, null); + } + if ($isPresort) { + $presortList[$sortId] = $sortName; + } else { + $orderByList[$sortId] = $sortName; + } + } + + $orderDirectionList = array( + ORDER_ASCENDING => $module->translate('Ascending'), + ORDER_DESCENDING => $module->translate('Descending')); + + return array(null, $orderByList, $presortList, $orderDirectionList); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStatus.class b/Source/gallery2/modules/core/classes/GalleryStatus.class new file mode 100644 index 0000000..8fecfbd --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStatus.class @@ -0,0 +1,246 @@ + + * @version $Revision: 15596 $ + */ +class GalleryStatus { + + /** + * The stack trace, if possible. + * @var array + * @access private + */ + var $_stack; + + /** + * The actual error code + * @var int + * @access private + */ + var $_errorCode; + + /** + * A descriptive message of the error + * @var string + * @access private + */ + var $_errorMessage; + + + /** + * Constructor + * @param int $errorCode an error code + * @param string $errorMessage (optional) descriptive message of the error + */ + function GalleryStatus($errorCode, $errorMessage=null) { + $this->_errorCode = $errorCode; + $this->_errorMessage = $errorMessage; + } + + /** + * Set the stack trace + * @param array $trace (array, array) + */ + function setStackTrace($trace) { + $this->_stackTrace = $trace; + } + + /** + * Return the actual error code + * @return int + */ + function getErrorCode() { + return $this->_errorCode; + } + + /** + * Return the error message + * @return string + */ + function getErrorMessage() { + return $this->_errorMessage; + } + + /** + * Add a new code to our set of codes + * @param int $code an error code + */ + function addErrorCode($code) { + $this->_errorCode |= $code; + } + + /** + * Deprecated. Remove in the next major API bump. + * + * Add a new file name and line number to our stack trace + * @return object GalleryStatus the new status object + * @deprecated + */ + function wrap() { + return $this; + } + + /** + * Return the error as an HTML string + * + * @param boolean $showMessage (optional) false to omit errorMessage + * @return string + */ + function getAsHtml($showMessage=true) { + list ($codes, $trace) = $this->_getAsArray(); + + $message = $showMessage ? $this->_errorMessage : ''; + $buf = 'Error (' . join(', ', $codes) . ')'; + if (!is_null($message)) { + $buf .= ' : ' . htmlentities($message) . ' '; + } + $buf .= '
      '; + foreach ($trace as $traceEntry) { + $buf .= sprintf("
    • in %s at line %d", + $traceEntry['file'], $traceEntry['line']); + if (isset($traceEntry['class']) && isset($traceEntry['function'])) { + $buf .= " ($traceEntry[class]::$traceEntry[function]) "; + } else if (isset($traceEntry['class'])) { + $buf .= " ($traceEntry[function]) "; + } + $buf .= '
    • '; + } + $buf .= '
    '; + + return $buf; + } + + /** + * Return the error as a plain text string delimited by newlines + * + * @param boolean $showMessage (optional) false to omit errorMessage + * @return string + */ + function getAsText($showMessage=true) { + list ($codes, $trace) = $this->_getAsArray(); + + $message = $showMessage ? $this->_errorMessage : ''; + $buf = 'Error (' . join(', ', $codes) . ')'; + if (!is_null($message)) { + $buf .= ' : ' . htmlentities($message) . ' '; + } + foreach ($trace as $traceEntry) { + $buf .= sprintf("in %s at line %d", + $traceEntry['file'], $traceEntry['line']); + if (isset($traceEntry['class']) && isset($traceEntry['function'])) { + $buf .= " ($traceEntry[class]::$traceEntry[function]) "; + } else if (isset($traceEntry['class'])) { + $buf .= " ($traceEntry[function]) "; + } + $buf .= "\n"; + } + return $buf; + } + + /** + * Store error in session for reporting after a redirect + */ + function putInSession() { + global $gallery; + $session =& $gallery->getSession(); + + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + $isAdmin = !$ret && $isAdmin; + + $session->put('core.error.code', $this->getErrorCode()); + $session->put('core.error.trace', $this->getAsHtml($isAdmin)); + } + + /** + * Break down an error code into a list of constants + * @return array of strings + */ + function getErrorCodeConstants($errorCode) { + if ($errorCode == 0) { + $codes = array('GALLERY_SUCCESS'); + } else { + $codes = array(); + foreach (get_defined_constants() as $constantName => $constantValue) { + if (strpos($constantName, 'ERROR_') === 0) { + if ($errorCode & $constantValue) { + $codes[] = $constantName; + } + } + } + if (empty($codes)) { + /* No specific error specified */ + $codes = array('GALLERY_ERROR'); + } + } + + return $codes; + } + + /** + * Internal function collect error code and stack trace info + * @access private + */ + function _getAsArray() { + global $gallery; + + $codes = $this->getErrorCodeConstants($this->_errorCode); + $trace = array(); + $basePaths = array(); + if (!class_exists('GalleryTestCase')) { + $platform =& $gallery->getPlatform(); + $basePaths[] = $platform->realpath(dirname(__FILE__) . '/../../../') . + $platform->getDirectorySeparator(); + /* The codebase isn't necessarily the config dir (multisites) */ + $basePaths[] = $platform->realpath(GALLERY_CONFIG_DIR . '/') . + $platform->getDirectorySeparator(); + } + if (empty($this->_stackTrace)) { + for ($i = 0; $i < count($this->_fileName); $i++) { + $trace[] = array('file' => str_replace($base, '', $this->_fileName[$i]), + 'line' => $this->_lineNumber[$i], + 'class' => null, + 'function' => null); + } + } else { + foreach ($this->_stackTrace as $traceEntry) { + if (empty($traceEntry['file'])) { + $traceEntry['file'] = '???'; + } + if (empty($traceEntry['line'])) { + $traceEntry['line'] = '???'; + } + $trace[] = + array('file' => str_replace($basePaths, '', $traceEntry['file']), + 'line' => $traceEntry['line'], + 'class' => empty($traceEntry['class']) ? null : $traceEntry['class'], + 'function' => empty($traceEntry['function']) ? + null : $traceEntry['function']); + } + } + + return array($codes, $trace); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage.class b/Source/gallery2/modules/core/classes/GalleryStorage.class new file mode 100644 index 0000000..8519458 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage.class @@ -0,0 +1,1780 @@ + + * @version $Revision: 16630 $ + */ + +/* Require the ADOdb libraries */ +GalleryCoreApi::requireOnce('lib/adodb/adodb.inc.php'); + +/** + * This will let ADOdb know which error handler function we want to use. + * (if embedded in an application also using ADOdb it may be defined already) + */ +if (!defined('ADODB_ERROR_HANDLER')) { + define('ADODB_ERROR_HANDLER', 'GalleryAdodbErrorHandler'); +} + +/** + * Name of the sequence we'll use for GalleryEntity ids + */ +define('DATABASE_SEQUENCE_ID', 'SequenceId'); + +/** + * Name of the sequence we'll use for lock ids + */ +define('DATABASE_SEQUENCE_LOCK', 'SequenceLock'); + +/** + * Default prefix to prepend to table names + */ +define('DATABASE_TABLE_PREFIX', 'g2_'); + +/** + * Default prefix to prepend to column names + */ +define('DATABASE_COLUMN_PREFIX', 'g_'); + +/** + * Database storage mechanism. This object provides the hooks for saving and restoring objects in + * the persistent store. + */ +class GalleryStorage { + + /** + * Internal pointer to ADOdb database object + * @var object ADOdb + * @access protected + */ + var $_db; + + /** + * Internal pointer to a non-transactional ADOdb database object + * @var object ADOdb + * @access protected + */ + var $_nonTransactionalDb; + + /** + * Internal pointer to our DatabaseStorageExtras object + * @var object DatabaseStorageExtras + * @access protected + */ + var $_extras; + + /** + * Database type (ADOdb driver name) + * @var string + * @access protected + */ + var $_type; + + /** + * Name of the database user + * @var string + * @access protected + */ + var $_username; + + /** + * Password for the database user + * @var string + * @access protected + */ + var $_password; + + /** + * Name of the database to use + * @var string + * @access protected + */ + var $_database; + + /** + * Host the database runs on + * @var string + * @access protected + */ + var $_hostname; + + /** + * Are we attempting to be transactional? + * @var boolean + * @access protected + */ + var $_isTransactional; + + /** + * A string to prepend to table names + * @var string + * @access protected + */ + var $_tablePrefix; + + /** + * A string to prepend to column names + * @var string + * @access protected + */ + var $_columnPrefix; + + /** + * A cache of member info that we've discovered about various classes + * @var array + * @access protected + */ + var $_entityInfoCache; + + /** + * Whether or not we should use persistent database connections + * @var boolean + * @access protected + */ + var $_usePersistentConnections; + + /** + * Whether this storage accepts empty (string) values for NOT NULL columns. Some DBMS + * implicitly converts empty values to NULL on INSERT/UPDATE and then the value would violate a + * NOT NULL condition. + * @var boolean + * @access protected + */ + var $_isEmptyAllowedForNotNullColumn; + + + /** + * @param array $config database configuration values + */ + function GalleryStorage($config) { + $this->_type = $config['type']; + $this->_username = $config['username']; + $this->_password = $config['password']; + $this->_hostname = $config['hostname']; + $this->_database = $config['database']; + $this->_isTransactional = false; + $this->_isEmptyAllowedForNotNullColumn = true; + $this->_entityInfoCache = array(); + + /* We use persistent connections if the value is left out, or if it's non empty. */ + $this->_usePersistentConnections = !isset($config['usePersistentConnections']) + || !empty($config['usePersistentConnections']); + + $this->_tablePrefix = isset($config['tablePrefix']) ? $config['tablePrefix'] + : DATABASE_TABLE_PREFIX; + $this->_columnPrefix = isset($config['columnPrefix']) ? $config['columnPrefix'] + : DATABASE_COLUMN_PREFIX; + } + + /** + * Connect to the database + * + * @return array object GalleryStatus a status code + * object a database resource + * @access protected + */ + function _getConnection($forceNew=false) { + global $gallery; + + $this->_traceStart(); + $db =& ADONewConnection($this->getAdoDbType()); + $this->_traceStop(); + if (empty($db)) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + /* Turn on debugging in the database connection if Gallery is in debug mode */ + if ($gallery->getDebug()) { + $db->debug = true; + } + + /* Configure transliteration for COM based DB drivers */ + if (defined('CP_UTF8')) { + $db->charPage = CP_UTF8; + } + + $this->_traceStart(); + $connectMethod = ($forceNew || !$this->_usePersistentConnections) ? 'NConnect' : 'PConnect'; + $ret = $db->$connectMethod($this->_hostname, + $this->_username, + $this->_password, + $this->_database); + $this->_traceStop(); + + if (!$ret) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + if ($gallery->isProfiling('sql')) { + $this->_traceStart(); + $db->LogSQL(); + $this->_traceStop(); + } + + $ret = $this->_setConnectionSettings($db); + if ($ret) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + return array(null, $db); + } + + /** + * Return the type of this database (ADOdb driver name) + * + * @return string + */ + function getAdoDbType() { + return $this->_type; + } + + /** + * Set runtime settings for the given database connection. + * Set the connection/client/server encoding and other parameters + * + * @param object adodb $db database handle + * @return object GalleryStatus a status code + * @access protected + */ + function _setConnectionSettings(&$db) { + return null; + } + + /** + * Get the reference to our GalleryStorageExtras instance where we put less frequently used code + * (most code that's used to modify the database). + * + * @return object GalleryStorageExtras + * @access protected + */ + function &_getExtras() { + if (!isset($this->_extras)) { + GalleryCoreApi::requireOnce( + 'modules/core/classes/GalleryStorage/GalleryStorageExtras.class', true); + $this->_extras =& new GalleryStorageExtras($this); + } + return $this->_extras; + } + + /** + * Is the database transactional? + * + * @return boolean true if transactional + */ + function isTransactional() { + return $this->_isTransactional; + } + + /** + * Load the GalleryEntities with the ids specified + * + * @param mixed $ids array of ids of the GalleryEntities to load or a single int id + * @return array object GalleryStatus a status code, + * mixed one GalleryEntity or an array of GalleryEntities + */ + function loadEntities($ids) { + $extras =& $this->_getExtras(); + return $extras->loadEntities($ids); + } + + /** + * Save the changes to the GalleryEntity + * + * @param object GalleryEntity $entity the GalleryEntity to save + * @return object GalleryStatus a status code + */ + function saveEntity(&$entity) { + $extras =& $this->_getExtras(); + return $extras->saveEntity($entity); + } + + /** + * Delete the GalleryEntity + * + * @param object GalleryEntity $entity the GalleryEntity to delete + * @return object GalleryStatus a status code + */ + function deleteEntity(&$entity) { + $extras =& $this->_getExtras(); + return $extras->deleteEntity($entity); + } + + /** + * Create a new GalleryEntity + * + * @param object GalleryEntity $entity the GalleryEntity to put the data in + * @return object GalleryStatus a status code + */ + function newEntity(&$entity) { + $extras =& $this->_getExtras(); + return $extras->newEntity($entity); + } + + /** + * Get a new, unique id + * + * @return array object GalleryStatus a status code + * int an id + */ + function getUniqueId() { + $extras =& $this->_getExtras(); + return $extras->getUniqueId(); + } + + /** + * Refresh a GalleryEntity from the database if it has changed + * + * @param object GalleryEntity $entity the object to refresh + * @return array object GalleryStatus a status code, + * object GalleryEntity the fresh entity + */ + function refreshEntity($entity) { + $extras =& $this->_getExtras(); + return $extras->refreshEntity($entity); + } + + /** + * Acquire read locks on the given items + * + * @param mixed $entityIds array of ids or single int id + * @param int $timeout timeout before giving up on the lock + * @return array object GalleryStatus a status code + * array lock data + */ + function acquireReadLock($entityIds, $timeout) { + $extras =& $this->_getExtras(); + return $extras->acquireReadLock($entityIds, $timeout); + } + + /** + * Acquire write locks on the given items + * + * @param mixed $entityIds array of ids or single int id + * @param int $timeout timeout before giving up on the lock + * @return array object GalleryStatus a status code + * array lock data + */ + function acquireWriteLock($entityIds, $timeout) { + $extras =& $this->_getExtras(); + return $extras->acquireWriteLock($entityIds, $timeout); + } + + /** + * Refresh all the locks that we hold so that they aren't accidentally considered expired + * + * @param array $lockIds the lock ids + * @param int $freshUntil the new "fresh until" timestamp + * @return object GalleryStatus a status code + */ + function refreshLocks($lockIds, $freshUntil) { + $extras =& $this->_getExtras(); + return $extras->refreshLocks($lockIds, $freshUntil); + } + + /** + * Release the given locks. + * + * @param mixed $lockIds array of lock ids or single id + * @return object GalleryStatus a status code + */ + function releaseLocks($lockIds) { + $extras =& $this->_getExtras(); + return $extras->releaseLocks($lockIds); + } + + /** + * Remove ids from a lock. + * + * @param array $lock lock data + * @param array $ids ids to remove + * @return object GalleryStatus a status code + */ + function removeIdsFromLock($lock, $ids) { + $extras =& $this->_getExtras(); + return $extras->removeIdsFromLock($lock, $ids); + } + + /** + * Move ids between locks. + * + * @param array $relock of lockId => object ids + * @param int $newLockId the new lockId + * @param int $lockType LOCK_READ or LOCK_WRITE + * @return object GalleryStatus a status code + */ + function moveIdsBetweenLocks($relock, $newLockId, $lockType) { + $extras =& $this->_getExtras(); + return $extras->moveIdsBetweenLocks($relock, $newLockId, $lockType); + } + + /** + * Generate a new lock id. + * + * @return array object GalleryStatus a status code + * int lock id + */ + function newLockId() { + $extras =& $this->_getExtras(); + return $extras->newLockId(); + } + + /** + * Search the persistent store for the target values matching the given criteria + * + * @param string $query the search query + * @param array $data any explicit data values required by the query + * @param array $optional optional arguments (eg. limits) + * @return array object GalleryStatus a status code, + * object GallerySearchResults the result values + */ + function search($query, $data=array(), $optional=array()) { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + if ($ret) { + return array($ret, null); + } + } + + $query = $this->_translateQuery($query); + + /* Run it with the right limits and return the results */ + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + if (!empty($optional['limit'])) { + $count = empty($optional['limit']['count']) ? -1 : $optional['limit']['count']; + $offset = empty($optional['limit']['offset']) ? -1 : $optional['limit']['offset']; + + $this->_traceStart(); + $recordSet = $this->_db->SelectLimit($query, $count, $offset, $data); + $this->_traceStop(); + } else { + $this->_traceStart(); + $recordSet = $this->_db->Execute($query, $data); + $this->_traceStop(); + } + + if ($recordSet) { + return array(null, new GallerySearchResults($recordSet)); + } else { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + } + + /** + * Execute a database statement + * + * @param string $statement the SQL statement + * @param array $data any explicit data values required by the query + * @return object GalleryStatus a status code, + */ + function execute($statement, $data=array()) { + $extras =& $this->_getExtras(); + return $extras->execute($statement, $data); + } + + /** + * Add a new entry to a map + * + * @param string $mapName the map we're working on + * @param array $entry an associative array of data about the entry + * @return object GalleryStatus a status code + */ + function addMapEntry($mapName, $entry) { + $extras =& $this->_getExtras(); + return $extras->addMapEntry($mapName, $entry); + } + + /** + * Remove entries from a map + * + * @param string $mapName the map we're working on + * @param array $entry an associative array of data about the entries to match + * @return object GalleryStatus a status code + */ + function removeMapEntry($mapName, $entry) { + $extras =& $this->_getExtras(); + return $extras->removeMapEntry($mapName, $entry); + } + + /** + * Remove ALL entries from a map. Use with caution! + * + * @param string $mapName the map we're working on + * @return object GalleryStatus a status code + */ + function removeAllMapEntries($mapName) { + $extras =& $this->_getExtras(); + return $extras->removeAllMapEntries($mapName); + } + + /** + * Get entries in a map that match a criteria and return selected fields + * + * @param string $mapName the map we're working on + * @param array $select the columns to return + * @param array $match the entries to match + * @param array $optional optional arguments (eg. limit, orderBy) + * array('limit' => array('count' => #, 'offset' => #), + * 'orderBy' => array(columnName => ORDER_ASCENDING|ORDER_DESCENDING, ...)) + * @return array object GalleryStatus a status code + * object GallerySearchResults the results + */ + function getMapEntry($mapName, $select, $match=array(), $optional=array()) { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + if ($ret) { + return array($ret, null); + } + } + + /* Get Map information to check against */ + list ($ret, $mapInfo) = $this->describeMap($mapName); + if ($ret) { + return array($ret, null); + } + list ($tableName, $unused) = $this->_translateTableName($mapName); + $data = $selectColumns = $where = $wheredata = $orderBy = array(); + + /* SELECT */ + foreach ($select as $columnName) { + if (!array_key_exists($columnName, $mapInfo)) { + break; + } + $selectColumns[] = $this->_translateColumnName($columnName); + } + + /* WHERE */ + foreach ($match as $columnName => $matchValue) { + if (!array_key_exists($columnName, $mapInfo)) { + break; + } + $this->_getWhereSql($columnName, $mapInfo[$columnName], $matchValue, + $where, $wheredata); + } + + /* ORDER BY */ + if (!empty($optional['orderBy'])) { + foreach ($optional['orderBy'] as $columnName => $orderDirection) { + if (!array_key_exists($columnName, $mapInfo)) { + break; + } + $orderDirection = ($orderDirection == ORDER_DESCENDING) ? 'DESC' : 'ASC'; + $orderBy[] = $this->_translateColumnName($columnName) . ' ' . $orderDirection; + } + } + + /* Check if all parameters are correct */ + if (empty($selectColumns) || count($selectColumns) != count($select) + || count($where) != count($match) + || (!empty($optional['orderBy']) + && count($optional['orderBy']) != count($orderBy))) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + /* Generate SQL query */ + $query = 'SELECT ' . implode(', ', $selectColumns) . ' FROM ' . $tableName; + if (!empty($where)) { + $query .= ' WHERE ' . implode(' AND ', $where); + $data = array_merge($data, $wheredata); + } + if (!empty($orderBy)) { + $query .= ' ORDER BY ' . implode(', ', $orderBy); + } + + /* Run it with the right limits and return the results */ + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + if (!empty($optional['limit'])) { + $count = empty($optional['limit']['count']) ? -1 : $optional['limit']['count']; + $offset = empty($optional['limit']['offset']) ? -1 : $optional['limit']['offset']; + + $this->_traceStart(); + $recordSet = $this->_db->SelectLimit($query, $count, $offset, $data); + $this->_traceStop(); + } else { + $this->_traceStart(); + $recordSet = $this->_db->Execute($query, $data); + $this->_traceStop(); + } + + if ($recordSet) { + return array(null, new GallerySearchResults($recordSet, $select, $mapInfo)); + } else { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + } + + /** + * Update entries in a map + * + * @param string $mapName the map we're working on + * @param array $match the entries to match + * @param array $change the values to change + * @return object GalleryStatus a status code + */ + function updateMapEntry($mapName, $match, $change) { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + if ($ret) { + return $ret; + } + } + + $ret = $this->_guaranteeTransaction(); + if ($ret) { + return $ret; + } + + list ($ret, $mapInfo) = $this->describeMap($mapName); + if ($ret) { + return $ret; + } + list ($tableName, $unused) = $this->_translateTableName($mapName); + $data = $set = $where = $wheredata = array(); + + foreach ($mapInfo as $memberName => $memberData) { + if (array_key_exists($memberName, $match)) { + $this->_getWhereSql($memberName, $memberData, $match[$memberName], + $where, $wheredata); + } + + if (array_key_exists($memberName, $change)) { + if (GalleryUtilities::isA($change[$memberName], 'GallerySqlFragment')) { + $set[] = $this->_translateColumnName($memberName) . ' ' . + $this->_translateQuery($change[$memberName]->getFragment()); + foreach ($change[$memberName]->getValues() as $value) { + $setdata[] = $value; + } + } else { + $set[] = $this->_translateColumnName($memberName) . '=?'; + $setdata[] = $this->_normalizeValue($change[$memberName], $memberData); + } + } + } + + if (count($set) == 0 || count($where) == 0) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER); + } + + $query = 'UPDATE ' . $tableName . ' SET ' . implode(', ', $set) . ' '; + $data = array_merge($data, $setdata); + + $query .= 'WHERE ' . implode(' AND ', $where); + $data = array_merge($data, $wheredata); + + $this->_traceStart(); + $recordSet = $this->_db->Execute($query, $data); + $this->_traceStop(); + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + return null; + } + + /** + * Accepts a $mapInfo pair and $match value to add match information to supplied array. + * + * @param string $memberName Name of map field + * @param array $memberData Data about map field + * @param mixed $matchValue Values that the map should match on + * @param array $where All match keys + * @param array $wheredata All match values + */ + function _getWhereSql($memberName, $memberData, $matchValue, &$where, &$wheredata) { + if (GalleryUtilities::isA($matchValue, 'GallerySqlFragment')) { + $where[] = $this->_translateColumnName($memberName) . ' ' . + $this->_translateQuery($matchValue->getFragment()); + foreach ($matchValue->getValues() as $value) { + $wheredata[] = $value; + } + } else if (is_array($matchValue)) { + $qs = array(); + foreach ($matchValue as $value) { + $qs[] = '?'; + $wheredata[] = $this->_normalizeValue($value, $memberData); + } + $where[] = $this->_translateColumnName($memberName) . ' IN (' + . implode(',', $qs) . ')'; + } else { + $value = $this->_normalizeValue($matchValue, $memberData); + if (is_null($value)) { + $where[] = $this->_translateColumnName($memberName) . ' IS NULL'; + } else { + $where[] = $this->_translateColumnName($memberName) . '=?'; + $wheredata[] = $value; + } + } + } + + /** + * Configure the persistent store for this strategy, for the given module. + * + * @param string $moduleId + * @param array $upgradeInfo (optional) of (classname => old schema version) + * @return object GalleryStatus a status code + */ + function configureStore($moduleId, $upgradeInfo=array()) { + $extras =& $this->_getExtras(); + return $extras->configureStore($moduleId, $upgradeInfo); + } + + /** + * Perform any cleanup necessary after installing or upgrading the given module. + * + * @param string $moduleId + * @return object GalleryStatus a status code + */ + function configureStoreCleanup($moduleId) { + $extras =& $this->_getExtras(); + return $extras->configureStoreCleanup($moduleId); + } + + /** + * Uninstall the database schema for the given module + * + * @return object GalleryStatus a status code + */ + function unconfigureStore($moduleId) { + $extras =& $this->_getExtras(); + return $extras->unconfigureStore($moduleId); + } + + /** + * Clean out and reset the persistent store for this strategy. + * + * @return object GalleryStatus a status code + */ + function cleanStore() { + $extras =& $this->_getExtras(); + return $extras->cleanStore(); + } + + /** + * Begin a new transaction, if the storage layer supports them. + * + * @return object GalleryStatus a status code + */ + function beginTransaction() { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + if ($ret) { + return $ret; + } + } + + if ($this->_isTransactional) { + $this->_traceStart(); + $ok = $this->_db->BeginTrans(); + $this->_traceStop(); + + if (!$ok) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + return null; + } + + /** + * Commit our transaction, if the storage layer supports them. + * + * @return object GalleryStatus a status code + */ + function commitTransaction() { + if ($this->_isTransactional && isset($this->_db) && $this->_db->transCnt > 0) { + $this->_traceStart(); + $ok = $this->_db->CommitTrans(); + $this->_traceStop(); + + if (!$ok) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + if ($this->_isTransactional) { + /* Release any queued locks */ + global $gallery; + $result =& $gallery->getLockSystem(false); + $ret = $result[0]; + if ($ret) { + return $ret; + } + $lockSystem =& $result[1]; + if (isset($lockSystem)) { + $ret = $lockSystem->releaseQueue(); + if ($ret) { + return $ret; + } + } + } + + return null; + } + + /** + * Mark a storage checkpoint, which will commit pending transactions and perform any future + * tied-tasks + * + * @return object GalleryStatus a status code + */ + function checkPoint() { + if (!isset($this->_db)) { + return null; + } + + $ret = $this->commitTransaction(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * Rollback our transaction, if the storage layer supports them. + * + * @return object GalleryStatus a status code + */ + function rollbackTransaction() { + if ($this->_isTransactional && isset($this->_db) && $this->_db->transCnt > 0) { + $this->_traceStart(); + $ok = $this->_db->RollbackTrans(); + $this->_traceStop(); + + if (!$ok) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + if ($this->_isTransactional) { + /* Release any queued locks */ + global $gallery; + $result =& $gallery->getLockSystem(false); + $ret = $result[0]; + if ($ret) { + return $ret; + } + $lockSystem =& $result[1]; + if (isset($lockSystem)) { + $ret = $lockSystem->releaseQueue(); + if ($ret) { + return $ret; + } + } + } + + return null; + } + + /** + * Begin transaction if not already in one. + * + * @return object GalleryStatus a status code + * @access protected + */ + function _guaranteeTransaction() { + if ($this->_isTransactional && !$this->_db->transCnt) { + $ret = $this->beginTransaction(); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Convert an integer into something that the database will accept into a bit column + * + * @param int $intVal integer value + * @return mixed bit value + */ + function convertIntToBits($intVal) { + return $intVal; + } + + /** + * Convert value from a database bit column into an integer + * + * @param mixed $bitsVal bit value + * @return int integer value + */ + function convertBitsToInt($bitsVal) { + return $bitsVal; + } + + /** + * Return database specific syntax to replace in schema SQL + * + * @return array (string => replacement) + * @access protected + */ + function _getSqlReplacements() { + return array(); + } + + /** + * Get sql to optimize a table + * + * @return array(string sql statement with %s token for table name, ...) + * @access protected + */ + function _getOptimizeStatements() { + return array(); + } + + /** + * Return a customized function for this database platform + * + * @param string $functionName + * @param array $args mixed the function arguments + * @return array GalleryStatus a status code + * string the function SQL + */ + function getFunctionSql($functionName, $args) { + return array(GalleryCoreApi::error(ERROR_NOT_IMPLEMENTED), null); + } + + /** + * Extracts the class names from a given query + * + * Query should be something like + * '[GalleryItem::id] = ? AND [GalleryPhotoItem::id] = ?' + * Results would be: array('[GalleryItem]', '[GalleryPhotoItem]') + * + * @param string $query + * @return array GalleryStatus a status code + * array strings table names + */ + function extractClasses($query) { + preg_match_all('/\[([^:]*)::[^\]]*\]/', $query, $matches, PREG_PATTERN_ORDER); + $classes = array(); + foreach ($matches[1] as $match) { + $classes['[' . $match . ']'] = 1; + } + return array(null, array_keys($classes)); + } + + /** + * Return storage profiling information in HTML format + * @return string HTML + */ + function getProfilingHtml() { + $extras =& $this->_getExtras(); + return $extras->getProfilingHtml(); + } + + /** + * Return true if enough of this storage system is installed that there'll be a conflict if you + * try to do another install. + * + * @return array object GalleryStatus a status code + * boolean true if the tables are installed + */ + function isInstalled() { + $extras =& $this->_getExtras(); + return $extras->isInstalled(); + } + + /** + * Optimize the database. + * @param array $tableNames (optional) of string tableName 1, tableName 2. Leave null to + * optimize all tables. + * @return object GalleryStatus a status code + */ + function optimize($tableNames=null) { + $extras =& $this->_getExtras(); + return $extras->optimize($tableNames); + } + + /** + * Return the number of rows that were affected by the last UPDATE/DELETE. Note that MySQL + * treats this a little differently than other databases; if you do an UPDATE operation and + * nothing is actually changed (eg. in the situation where the SET clauses in your UPDATE match + * the existing values) then mysql will return 0 affected rows. + * + * @return array object GalleryStatus a status code + * int the number of affected rows + */ + function getAffectedRows() { + $extras =& $this->_getExtras(); + return $extras->getAffectedRows(); + } + + /** + * Describe the members, modules and parent of an entity + * + * @param string $entityName a class name + * @param boolean $tryAllModules true if we should scan all modules, not just the active ones + * @return array object GalleryStatus a status code + * entity associative array + */ + function describeEntity($entityName, $tryAllModules=false) { + $extras =& $this->_getExtras(); + return $extras->describeEntity($entityName); + } + + /** + * Execute a given SQL file against the database. Prefix table and column names as necessary. + * Split multiple commands in the file into separate Execute() calls. + * + * @param string $fileName absolute path of the sql file + * @return object GalleryStatus a status code + * @access protected + */ + function _executeSqlFile($fileName) { + $extras =& $this->_getExtras(); + return $extras->executeSqlFile($fileName); + } + + /** + * Translate all table and column names from [Entity::member] notation to table.column notation. + * + * @param string $query the raw query + * @return string the translated query + * @access protected + */ + function _translateQuery($query) { + /* Change '[Class::member]' to 'table.column' or 'alias.column' */ + while (ereg('\[([[:alnum:]_=]*)::([[:alnum:]_]*)\]', $query, $regs)) { + $class = $regs[1]; + $member = $regs[2]; + list ($table, $alias) = $this->_translateTableName($class); + + $column = $this->_translateColumnName($member); + if ($alias) { + $query = str_replace("[${class}::${member}]", "$alias.$column", $query); + } else if ($class) { + $query = str_replace("[${class}::${member}]", "$table.$column", $query); + } else { + $query = str_replace("[::${member}]", "$column", $query); + } + } + + /* Change '[Class]' to 'table' */ + while (ereg('\[([[:alnum:]_=]*)\]', $query, $regs)) { + $class = $regs[1]; + list ($table, $alias) = $this->_translateTableName($class); + if ($alias == null) { + $query = str_replace("[${class}]", "$table", $query); + } else { + list ($ret, $as) = $this->getFunctionSql('AS', array()); + if ($ret) { + /* XXX TODO: propagate this back up as a GalleryStatus */ + return 'QUERY ERROR'; + } + $query = str_replace("[${class}]", "$table $as $alias", $query); + } + } + + return $query; + } + + /** + * Translate a potentially unsafe column name into a safe one + * + * @param string $columnName the name of a column + * @return string a safe column name + * @access protected + */ + function _translateColumnName($columnName) { + return $this->_columnPrefix . $columnName; + } + + /** + * Translate a potentially unsafe table name into a safe one by adding a prefix or suffix to + * avoid conflicting with a reserved word. + * + * eg: + * Comment => array(g2_Comment, null, Comment) + * Comment=1 => array(g2_Comment, C0, Comment) + * + * @param string $tableName the name of a table + * @return array string a safe table name + * an alias for this table + * the unsafe, but translated, table name + * @access protected + */ + function _translateTableName($tableName) { + /* + * Remove the the ubiquitous "Gallery" prefix, since it's not part of the schema name. For + * now we automatically translate the class name into the schema name by doing this. If + * this ever becomes a problem, we should start hand-writing the schema name instead and + * then pushing that into the interface classes so that we don't have to automatically + * generate the schema name (and get it wrong). + */ + $tableName = str_replace('Gallery', '', $tableName); + + /* Other abbreviations to keep table names under Oracle's 30 character limit. */ + $tableName = str_replace('Preferences', 'Prefs', $tableName); + $tableName = str_replace('Toolkit', 'Tk', $tableName); + $tableName = str_replace('TkOperation', 'TkOperatn', $tableName); + + /* + * Deal with aliases, which will be in the form of "table=1", "table=2", + * etc. Translate "1" into "A", "2" into "B", etc. + */ + $split = explode('=', $tableName); + $alias = ''; + if (count($split) > 1) { + list ($tableName, $number) = $split; + for ($i = 0; $i < strlen($tableName); $i++) { + $chr = $tableName[$i]; + if ($chr >= 'A' && $chr <= 'Z') { + $alias .= $chr; + } + } + $alias = GalleryUtilities::strToLower($alias) . ($number - 1); + } else { + $tableName = $split[0]; + $alias = null; + } + + return array($this->_tablePrefix . $tableName, $alias, $tableName); + } + + /** + * Describe all the members of a map + * + * @param string $mapName a map name + * @param boolean $tryAllModules try all modules, not just active ones + * @return array GalleryStatus a status code, + * array member name => member type + */ + function describeMap($mapName, $tryAllModules=false) { + global $gallery; + + /* Note: keep these cache keys in sync with _clearMapMemberCache() */ + $cacheKey = "GalleryStorage::describeMap()"; + $cacheParams = array('type' => 'module', + 'itemId' => 'GalleryStorage_describeMap', + 'id' => '_all'); + + /* We only cache the results for active modules */ + if (!$tryAllModules) { + if (!GalleryDataCache::containsKey($cacheKey)) { + $mapInfo =& GalleryDataCache::getFromDisk($cacheParams); + if (!empty($mapInfo)) { + GalleryDataCache::put($cacheKey, $mapInfo); + } + } else { + $mapInfo = GalleryDataCache::get($cacheKey); + } + } + + if (!isset($mapInfo)) { + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return array($ret, null); + } + + $mapInfo = array(); + foreach ($moduleStatus as $moduleId => $moduleInfo) { + if (!$tryAllModules && empty($moduleInfo['active'])) { + continue; + } + + /* + * Don't use GalleryPlatform here because it can cause difficult-to-eliminate issues + * in the testing code when we use mock platforms. Once we have an abstraction layer + * around GalleryCoreApi we can change this. + */ + $moduleDir = GalleryCoreApi::getPluginBaseDir('module', $moduleId); + if ($ret) { + return array($ret, null); + } + + $mapsFile = sprintf('%smodules/%s/classes/Maps.inc', $moduleDir, $moduleId); + if (file_exists($mapsFile)) { + include($mapsFile); + } + } + + if (!$tryAllModules) { + GalleryDataCache::putToDisk($cacheParams, $mapInfo); + GalleryDataCache::put($cacheKey, $mapInfo); + } + } + + if (!$tryAllModules && !isset($mapInfo[$mapName])) { + list ($ret, $mapInfo[$mapName]) = $this->describeMap($mapName, true); + if ($ret) { + return array($ret, null); + } + } + + if (!isset($mapInfo[$mapName])) { + return array(GalleryCoreApi::error(ERROR_MISSING_VALUE, __FILE__, __LINE__, + "Undefined map: $mapName"), + null); + } + + return array(null, $mapInfo[$mapName]); + } + + /** + * Encode a blob of binary data into a form that's safe for a varchar column + * + * @param string $blob binary data + * @return database safe string + */ + function encodeBlob($blob) { + return $blob; + } + + /** + * Decode a blob of binary data into a form that's safe for a varchar column + * + * @param string $blob database safe string + * @return binary data + */ + function decodeBlob($blob) { + return $blob; + } + + /** + * Start tracing. If Gallery is in debug, this method will begin storing all output and routing + * it into Gallery's debug system. + * @access protected + */ + function _traceStart() { + global $gallery; + if ($gallery->getDebug()) { + ob_start(); + } + } + + /** + * Stop tracing. If Gallery is in debug, this will method will stop tracing. + * @access protected + */ + function _traceStop() { + global $gallery; + if ($gallery->getDebug()) { + $buf = ob_get_contents(); + ob_end_clean(); + $gallery->debug($buf); + } + } + + /** + * Set Adodb debug mode. + * @param bool $debug + */ + function setDebug($debug) { + if (isset($this->_db)) { + $this->_db->debug = $debug; + } + if (isset($this->_nonTransactionalDb)) { + $this->_nonTransactionalDb->debug = $debug; + } + } + + /** + * Cast the value to the proper member type when interacting with the database. Optionally also + * perform a UTF-8-safe truncation for strings. + * + * @todo CAST empty to NULL ? values from DB too? + * + * @param mixed $value the value + * @param array $memberData ('type' => STORAGE_TYPE_XXX constant, + * 'size' => STORAGE_SIZE_XXX constant) + * @param boolean $fromDb (optional) false if value is for SQL, true if value is from the DB + * @return mixed correctly typed value + */ + function _normalizeValue($value, $memberData, $fromDb=false) { + $notNull = !empty($memberData['notNull']) || + ( !empty($memberData['notNullEmptyAllowed']) && $this->_isEmptyAllowedForNotNullColumn); + + if (is_null($value) && !$notNull) { + return $value; + } + + $type = $memberData['type']; + if ($type & STORAGE_TYPE_BOOLEAN) { + /* Convert booleans to 1 : 0 */ + return (int)!empty($value); + } else if ($type & STORAGE_TYPE_TIMESTAMP) { + /* Convert timestamps to the database representation */ + return $this->_db->DBTimeStamp($value); + } else if ($type & STORAGE_TYPE_INTEGER) { + return (int)$value; + } else if ($type & STORAGE_TYPE_STRING) { + if (isset($value) && !$fromDb) { + $value = $this->_truncateString($value, $memberData['size']); + } + return (string)$value; + } else if ($type & STORAGE_TYPE_TEXT) { + return (string)$value; + } else if ($type & STORAGE_TYPE_BIT) { + if ($fromDb) { + return (int)$this->convertBitsToInt($value); + } else { + return $this->convertIntToBits((int)$value); + } + } else { + return $value; + } + } + + /** + * Perform a UTF-8-safe truncation of the string to a size + * + * @param string $value the value + * @param int $size (as a STORAGE_SIZE_XXX constant) + * @param bool $lengthInBytes (optional) whether to interpret the size in bytes or in characters + * @return the truncated string + */ + function _truncateString($value, $size, $lengthInBytes=false) { + switch ($size) { + case STORAGE_SIZE_SMALL: + $size = 32; + break; + + case STORAGE_SIZE_MEDIUM: + $size = 128; + break; + + case STORAGE_SIZE_LARGE: + $size = 255; + break; + } + if ($lengthInBytes) { + return GalleryCoreApi::utf8Strcut($value, 0, $size); + } else { + return GalleryCoreApi::utf8Substring($value, 0, $size); + } + } + + /** + * Load the Maps.inc and Entities.inc into the schema table for the specified module + * @param string $moduleId + * @return object GalleryStatus a status code + */ + function updateTableInfo($moduleId) { + $extras =& $this->_getExtras(); + return $extras->_updateTableInfo($moduleId); + } +} + +/** + * Container for database result set + * @package GalleryCore + * @subpackage Storage + */ +class GallerySearchResults { + + /** + * Internal record set object + * + * @access private + * @var object ADORecordSet $_recordSet + */ + var $_recordSet; + + /** + * Field names describing the record set + * + * @access private + * @var array(string name of field 1, ...) $fieldNames + */ + var $_fieldNames; + + /** + * Gallery data type info array + * + * @access private + * @var array (string columnName => array data type info, ...) $mapInfo + */ + var $_mapInfo; + + function GallerySearchResults($recordSet, $fieldNames=null, $mapInfo=null) { + $this->_recordSet = $recordSet; + $this->_fieldNames = $fieldNames; + $this->_mapInfo = $mapInfo; + } + + /** + * The number of results from this search + * + * @return int the number of results + */ + function resultCount() { + return $this->_recordSet->RecordCount(); + } + + /** + * Return the next search result, as an associative array + * + * @return array the next result or false if EOF + */ + function nextResult() { + $row =& $this->_recordSet->FetchRow(); + if (!empty($row) && !empty($this->_fieldNames) && !empty($this->_mapInfo)) { + /* Normalize fetched values */ + global $gallery; + $storage =& $gallery->getStorage(); + for ($i = 0; $i < count($row) && $i < count($this->_fieldNames); $i++) { + $field = $this->_fieldNames[$i]; + $row[$i] = $storage->_normalizeValue($row[$i], $this->_mapInfo[$field], true); + } + } + return $row; + } +} + +/** + * Container to store an sql fragment that can be passed to the db abstraction layer. + * @package GalleryCore + * @subpackage Storage + */ +class GallerySqlFragment { + + /** + * Internal sql fragment + * @var string + * @access private + */ + var $_fragment; + + /** + * Internal sql values + * @var array + * @access private + */ + var $_values; + + + /** + * @param string $fragment sql fragment + * @param array $values values.. variable number of parameters must match + * number of ? markers in sql fragment + */ + function GallerySqlFragment($fragment, $values) { + $this->_values = func_get_args(); + $this->_fragment = array_shift($this->_values); + } + + /** + * The sql fragment + * @return string + */ + function getFragment() { + return $this->_fragment; + } + + /** + * Return the values that map into the sql fragment's ? markers + * @return array + */ + function getValues() { + return $this->_values; + } +} + +/** + * Default Error Handler for ADOdb. Derived from adodb-errorhandler.inc.php which is + * (c) 2000, 2001 John Lim (jlim@natsoft.com.my). All rights reserved. + * + * @param string $dbms the RDBMS you are connecting to + * @param string $fn the name of the calling function (in uppercase) + * @param int $errno the native error number from the database + * @param string $errmsg the native error msg from the database + * @param mixed $p1 $fn specific parameter - see below + * @param mixed $p2 $fn specific parameter - see below + */ +function GalleryAdodbErrorHandler($dbms, $fn, $errno, $errmsg, $p1=false, $p2=false) { + switch($fn) { + case 'EXECUTE': + $sql = $p1; + $inputparams = $p2; + $s = "$dbms error: [$errno: $errmsg] in $fn(\"$sql\")\n"; + break; + + case 'PCONNECT': + case 'CONNECT': + $host = $p1; + $database = $p2; + $s = "$dbms error: [$errno: $errmsg] in $fn($host, ?, ?, $database)\n"; + break; + + default: + $s = "$dbms error: [$errno: $errmsg] in $fn($p1, $p2)\n"; + break; + } + + /* + * Log connection error somewhere + * 0 message is sent to PHP's system logger, using the Operating System's system + * logging mechanism or a file, depending on what the error_log configuration + * directive is set to. + * 1 message is sent by email to the address in the destination parameter. + * This is the only message type where the fourth parameter, extra_headers is used. + * This message type uses the same internal function as mail() does. + * 2 message is sent through the PHP debugging connection. + * This option is only available if remote debugging has been enabled. + * In this case, the destination parameter specifies the host name or IP address + * and optionally, port number, of the socket receiving the debug information. + * 3 message is appended to the file destination + */ + if (defined('ADODB_ERROR_LOG_TYPE')) { + $t = date('Y-m-d H:i:s'); + if (defined('ADODB_ERROR_LOG_DEST')) + error_log("($t) $s", ADODB_ERROR_LOG_TYPE, ADODB_ERROR_LOG_DEST); + else + error_log("($t) $s", ADODB_ERROR_LOG_TYPE); + } + + global $gallery; + if ($gallery->getDebug()) { + $gallery->debug($s); + } +} + +/** + * MySQL extension of the GalleryStorage class. + * This object implements the hooks for saving and restoring objects in a MySQL database. + * + * @package GalleryCore + * @subpackage Storage + */ +class MySqlStorage extends GalleryStorage { + + function MySqlStorage($config) { + $this->GalleryStorage($config); + if ($this->_type != 'mysql' /* mysqlt and mysqli are transactional */) { + $this->_isTransactional = true; + } + } + + /** + * Return the type of this database + * @return string + */ + function getType() { + return 'mysql'; + } + + /** + * @see GalleryStorage::_setConnectionSettings + */ + function _setConnectionSettings(&$db) { + /* MySQL 4.1.0+ support UTF-8, for details, see: http://drupal.org/node/40515 */ + $this->_serverInfo = ($this->_type == 'mysqli') + ? mysqli_get_server_info($db->_connectionID) : mysql_get_server_info(); + if ($this->_serverInfo && version_compare($this->_serverInfo, '4.1.0', '>=')) { + $this->_traceStart(); + $recordSet = $db->execute('SET NAMES "utf8"'); + $this->_traceStop(); + + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + return null; + } + + /** + * @see GalleryStorage::_getSqlReplacements + */ + function _getSqlReplacements() { + /* 3.23.0-4.0.17 used TYPE, 5.1+ only accepts ENGINE, between accepts either */ + $typeKeyword = ($this->_serverInfo && version_compare($this->_serverInfo, '4.0.18', '>=')) + ? 'ENGINE' : 'TYPE'; + + /* Use InnoDB for transactional tables */ + $tableType = $this->_isTransactional ? 'InnoDB' : 'MyISAM'; + + /** + * @todo On next major bump of Module API, remove 'TYPE=DB_TABLE_TYPE' entry below. + * In revision 14158, we switched from replacing DB_TABLE_TYPE with the tableType to + * replacing it with {ENGINE|TYPE}=tableType. Handle both cases else installing older + * modules will fail. + */ + return array('TYPE=DB_TABLE_TYPE' => $typeKeyword . '=' . $tableType, + 'DB_TABLE_TYPE' => $typeKeyword . '=' . $tableType); + } + + /** + * @see GalleryStorage::getFunctionsSql + */ + function getFunctionSql($functionName, $args) { + switch($functionName) { + case 'CONCAT': + $sql = sprintf('CONCAT(%s)', implode(', ', $args)); + break; + + case 'BITAND': + $sql = $args[0] . ' & ' . $args[1]; + break; + + case 'BIT_OR': + $sql = 'BIT_OR(' . $args[0] . ')'; + break; + + case 'UNIX_TIMESTAMP': + $sql = sprintf('UNIX_TIMESTAMP(%s)', $args[0]); + break; + + case 'AS': + $sql = 'AS'; + break; + + case 'SUBSTRING': + $sql = sprintf('SUBSTRING(%s)', implode(', ', $args)); + break; + + case 'RAND': + $sql = sprintf('RAND(%s)', empty($args) ? '' : $args[0]); + break; + + case 'LIMIT': + $sql = $args[1] . ' LIMIT ' . $args[0]; + break; + + case 'CASE': // condition value (condition value)* else-value + if (count($args) == 3) { + $sql = sprintf('IF(%s)', implode(', ', $args)); + } else { + $sql = array(); + while (count($args) > 1) { + $sql[] = 'WHEN ' . array_shift($args) . ' THEN ' . array_shift($args); + } + $sql = 'CASE ' . implode(' ', $sql) . ' ELSE ' . $args[0] . ' END'; + } + break; + + case 'LIKE': + $sql = $args[0] . ' LIKE ' . $args[1]; + break; + + case 'MULTI_INSERT': + /* + * 0 - table name + * 1 - array of column names + * 2 - number of rows + */ + $markers = GalleryUtilities::makeMarkers(sizeof($args[1])); + $rowList = rtrim(str_repeat('(' . $markers . '), ', $args[2]), ', '); + $sql = 'INSERT INTO ' . $args[0] . ' ('; + $sql .= join(', ', $args[1]); + $sql .= ') VALUES ' . $rowList; + break; + + case 'AVG': + $sql = sprintf('AVG(%s)', $args[0]); + break; + + default: + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED, __FILE__, __LINE__, + $functionName . ' ' . implode(' ', $args)), null); + } + + return array(null, $sql); + } + + /** + * @see GalleryStorage::encodeBlob + */ + function encodeBlob($blob) { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + } + if ($this->_serverInfo && version_compare($this->_serverInfo, '4.1.0', '>=')) { + /* See: http://www.postgresql.org/docs/8.1/interactive/datatype-binary.html */ + $blob = addcslashes($blob, "\000..\037\047\134\177..\377"); + } + + return $blob; + } + + /** + * @see GalleryStorage::decodeBlob + */ + function decodeBlob($blob) { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + } + if ($this->_serverInfo && version_compare($this->_serverInfo, '4.1.0', '>=')) { + $blob = stripcslashes($blob); + } + + return $blob; + } + + /** + * Get database version. + * @return string version + */ + function getVersion() { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + if ($ret) { + return ($this->_type == 'mysqli' + ? mysqli_get_client_info() : mysql_get_client_info()) . ' client'; + } + } + return $this->_serverInfo; + } + + /** + * @see GalleryStorage::_getOptimizeStatements + */ + function _getOptimizeStatements() { + return array('OPTIMIZE TABLE `%s`;', 'ANALYZE TABLE `%s`;'); + } + + /** + * @see GalleryStorage::getUniqueId + */ + function getUniqueId() { + /* Make sure we're using a non-transactional connection to avoid duplicating sequence ids */ + $extras =& $this->_getExtras(); + list ($ret, $db) = $extras->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return array($ret, null); + } + + return $extras->_getUniqueIdWithConnection($db); + } + + /** + * Truncate UTF-8 strings either to given character or to byte length depending on the MySQL + * version. + * @see GalleryStorage::_truncateString + */ + function _truncateString($value, $size, $lengthInBytes=false) { + static $lengthInBytes; + + if (!isset($lengthInBytes)) { + $lengthInBytes = + $this->_serverInfo && version_compare($this->_serverInfo, '4.1.0', '<'); + } + + return parent::_truncateString($value, $size, $lengthInBytes); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/Db2CreateUdfs.sql b/Source/gallery2/modules/core/classes/GalleryStorage/Db2CreateUdfs.sql new file mode 100644 index 0000000..85e3959 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/Db2CreateUdfs.sql @@ -0,0 +1,242 @@ +CREATE FUNCTION BIT_AND (X SMALLINT, Y SMALLINT) RETURNS INTEGER +BEGIN ATOMIC +-- Author: Larry Menard, 11/2005 +-- AND two bits +IF x = 1 AND y = 1 THEN + RETURN 1; +ELSE + RETURN 0; +END IF; +END; + +CREATE FUNCTION G2_BIT_AND (BITSTRING1 CHAR(32), BITSTRING2 CHAR(32)) RETURNS CHAR(32) +BEGIN ATOMIC +-- Author: Larry Menard, 11/2005 +-- Bitwise AND (two streams of 32 bits) +-- Declarations +DECLARE counter INTEGER; +DECLARE tempint INTEGER; +DECLARE retval CHAR(32); +-- AND bit by bit +SET counter = 1; +WHILE counter <= 32 DO + SET tempint = BIT_AND(CAST(SUBSTR(BITSTRING1, counter, 1) AS SMALLINT), + CAST(SUBSTR(BITSTRING2, counter, 1) AS SMALLINT)); + IF counter = 1 THEN + SET retval = CAST(tempint AS CHAR(1)); + ELSE + SET retval = SUBSTR(retval, 1, counter - 1) || CAST (tempint AS CHAR(1)); + END IF; + SET counter = counter + 1; +END WHILE; +RETURN retval; +END; + +CREATE FUNCTION G2_LIKE (subject VARCHAR(8000), pattern VARCHAR(8000)) RETURNS INTEGER +BEGIN ATOMIC +-- +-- Author: Larry Menard, 11/2005 +-- +-- G2_LIKE() +-- +-- A UDF to perform LIKE() processing unencumbered by the limitations of DB2's LIKE(). +-- DB2's LIKE() doesn't support column values or concatenation of non-literals. +-- +-- This UDF assumes the concatenation of the pattern parts is done on the invocation of +-- this function. Alternatively, this function would have to be able to handle varying +-- numbers of args. +-- +-- This UDF doesn't currently support escape character. +-- +-- Wildcards supported: +-- +-- '%' = 0 or more characters +-- +-- '_' = 1 character +-- +DECLARE subject_position, pattern_position, + percent_position, underscore_position, + pattern_chunk_end, rc, character_required INTEGER; +DECLARE next_chunk VARCHAR(8000); +-- Get rid of a few oddball cases (when no subject string provided) right off the bat +IF LENGTH(subject) = 0 AND LENGTH(pattern) = 0 -- ('', '') +THEN + RETURN 1; +END IF; +IF (LENGTH(subject) = 0) AND (SUBSTR(pattern, 1, 1) != '%') -- ('', 'x%') +THEN + RETURN 0; +END IF; +-- Oddballs are out of the way, we know that a subject line exists. Let's rock. +SET subject_position = 1; +SET pattern_position = 1; +WHILE (pattern_position <= LENGTH(pattern)) DO + IF subject_position > LENGTH(subject) -- We've reached the end of the subject line, + AND SUBSTR(pattern, pattern_position, 1) != '%' -- and remainder of pattern starts with anything + THEN -- other than '%' + RETURN 0; + END IF; + IF (SUBSTR(pattern, pattern_position, 1) = '_') OR + (SUBSTR(pattern, pattern_position, 1) = SUBSTR(subject, subject_position, 1)) + THEN -- Current two characters match (including '_' wildcard) + -- nop; + ELSE -- Current two characters do not match + IF SUBSTR(pattern, pattern_position, 1) = '%' + THEN -- start processing a 'chunk' + -- + -- Is there more pattern after the current '%'? + -- + IF LENGTH(pattern) > pattern_position + THEN + -- Are there any more wildcards ('%' or '_') in the pattern after this one? + SET percent_position = LOCATE('%', pattern, pattern_position + 1); + SET underscore_position = LOCATE('_', pattern, pattern_position + 1); + -- + -- There is another wildcard later in the pattern, + -- + IF (percent_position > 0) OR (underscore_position > 0) + THEN -- Either one or both of them are non-0 + -- get the position of the nearest wildcard + IF percent_position = 0 -- Percent is 0, so next wildcard must be '_' + THEN -- Don't include the wildcard in the chunk + SET pattern_chunk_end = underscore_position - 1; + ELSE + IF underscore_position = 0 -- Underscore is 0, so next wildcard must be '%' + THEN -- Don't include the wildcard in the chunk + SET pattern_chunk_end = percent_position - 1; + ELSE -- Neither are 0 + IF percent_position < underscore_position -- '%' is closer than '_' + THEN -- Don't include the wildcard in the chunk + SET pattern_chunk_end = percent_position - 1; -- '_' is closer than '%' + ELSE -- Don't include the wildcard + SET pattern_chunk_end = underscore_position - 1; -- in the chunk + END IF; + END IF; + END IF; + ELSE + -- + -- There are no more wildcards in the pattern, + -- + SET pattern_chunk_end = LENGTH(pattern); + END IF; + -- If there's another wildcard immediately following this one, there isn't really a chunk + -- to process. If that next wildcard is a '_', we want to simply increment the pattern and + -- subject positions. If that next wildcard is a '%', we want to increment only the pattern + -- pointer. But if that next wildcard is '_' and occurs at the very end of the pattern,that + -- puts us out of the WHILE loop, so we can't confirm that a valid character follows in the + -- source.So we set a 'character_required' variable here and test it after the WHILE loop. + IF pattern_chunk_end = pattern_position + THEN + IF SUBSTR(pattern, pattern_position + 1, 1) = '_' + THEN + IF pattern_position + 1 = LENGTH(pattern) + THEN + SET character_required = 1; + ELSE + -- nop; + END IF; + ELSE + IF SUBSTR(pattern, pattern_position + 1, 1) = '%' + THEN + -- Since it will be incremented at the end of the while loop, the way + -- to defeat the incrementing is to decrement it now + SET subject_position = subject_position - 1; + END IF; + END IF; + ELSE + -- Do a LOCATE() of the next chunk of the pattern + -- up to that next wildcard, or if no wildcard, the end of the subject string. + -- If that LOCATE() returns 0, match obviously failed, so return false. + SET next_chunk = SUBSTR(pattern, + pattern_position + 1, + pattern_chunk_end - pattern_position); + SET rc = LOCATE(next_chunk, subject, subject_position); + IF rc = 0 + THEN + RETURN 1; + ELSE + -- set subject_position to the end of the 'next_chunk' string in the subject string + SET subject_position = LOCATE(next_chunk, subject, subject_position) -- (then -1) + + LENGTH(next_chunk) + - 1; -- it will be incremented at the bottom of the loop + SET pattern_position = pattern_chunk_end; + END IF; -- LOCATE() of chunk = 0 + END IF; -- consecutive wildcards y/n + ELSE + RETURN 1; -- no more pattern after current '%' + END IF; -- more characters after current wildcard + ELSE + RETURN 0; + END IF; -- if current pattern char is '%' + END IF; -- current characters match + SET subject_position = subject_position + 1; + SET pattern_position = pattern_position + 1; +END WHILE; +-- We've reached the end of the pattern +IF (subject_position - 1) < LENGTH(subject) -- there are more characters in the subject +THEN + IF (character_required = 1) + THEN -- See that really horrible case where there are two consecutive wildcards and + RETURN 1; -- the second wildcard is '_' and that '_' is the last character in the pattern + ELSE -- if there is more subject left, that's bad + RETURN 0; + END IF; +END IF; +RETURN 1; +-- +-- Testcases for G2_LIKE +-- +-- +-- Successful 'should match' scenarios +-- +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick % fox jumped over the lazy dog') +-- values g2_like ('The quick brown fox jumped over the lazy dog', '%') +-- values g2_like ('F', '%')@ +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick % fox jum_ed over the lazy dog') +-- values g2_like ('The quick brown fox jumped over the lazy do', +-- 'The quick ' || '%' || ' fox jum_ed %ver the lazy dog') +-- values g2_like ('The quick brown fox jumped over the lazy d', +-- 'The quick ' || '%' || ' fox jum_ed %ver the lazy dog') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick % fox jum_ed %ver the lazy dog') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick ' || '%' || ' fox jum_ed %ver the lazy dog') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick ' || '%' || ' fox jum_ed %ver the lazy do%') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- '%The quick%jumped over the lazy dog') +-- values g2_like ('', '') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick % fox jumped over the lazy dog%') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- '%The quick%jumped over the lazy dog%') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick % fox jumped ___r__he lazy dog%') +-- values g2_like ('The quick brown fox jumped over the lazy dog', '_%_') +-- +-- Successful 'should not match' scenarios +-- +-- values g2_like ('The quick brown fox jumped over the lazy dog', '__') +-- values g2_like ('The quick brown fox jumped over the lazy dog', '') +-- values g2_like ('F', 'Bar') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- '_The quick%jumped over the lazy dog') +-- values g2_like ('', 'Bar') +-- values g2_like ('The quick brown fox jumped over the lazy dog', +-- 'The quick%jumped over the lazy dog_') +END; + +CREATE FUNCTION G2_BIT_OR (INTEGER, VARCHAR(32)) + EXTERNAL NAME 'g2_db2_jar:g2_db2_bit_or!g2_db2_bit_or' + RETURNS VARCHAR(32) FOR BIT DATA + RETURNS NULL ON NULL INPUT + FENCED + NOT VARIANT + NO SQL + PARAMETER STYLE DB2GENERAL + LANGUAGE JAVA + NO EXTERNAL ACTION + FINAL CALL + DISALLOW PARALLEL diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/Db2Storage.class b/Source/gallery2/modules/core/classes/GalleryStorage/Db2Storage.class new file mode 100644 index 0000000..069f069 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/Db2Storage.class @@ -0,0 +1,310 @@ +GalleryStorage($config); + $this->_isTransactional = true; + } + + /** + * Return the type of this database + * @return string + */ + function getType() { + return 'db2'; + } + + /** + * @see GalleryStorage::cleanStore + */ + function cleanStore() { + $ret = parent::cleanStore(); + if ($ret) { + return $ret; + } + + /* Create a temporary database connection and install our custom aggregate function */ + list ($ret, $tmpDb) = $this->_getConnection(true); + if ($ret) { + return $ret; + } + + $statements = array(); + $statements[] = 'DROP FUNCTION G2_BIT_AND(CHAR(32), CHAR(32))'; + $statements[] = 'DROP FUNCTION BIT_AND(SMALLINT, SMALLINT)'; + $statements[] = 'DROP FUNCTION G2_LIKE(VARCHAR(8000), VARCHAR(8000))'; + $statements[] = 'DROP FUNCTION G2_BIT_OR(INTEGER, VARCHAR(32))'; + /* + * Unregister the Jar file; use ODBC delimiters, see + * http://gallery.menalto.com/node/37648?from=850#comment-172690 + */ + $statements[] = "{CALL SQLJ.REMOVE_JAR('g2_db2_jar')}"; + foreach ($statements as $sql) { + $this->_traceStart(); + $recordSet = $tmpDb->Execute($sql); + $this->_traceStop(); + if (empty($recordSet)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + $tmpDb->Close(); + + return null; + } + + /** + * @see GalleryStorage::configureStore + */ + function configureStore($moduleId, $upgradeInfo=array()) { + if ($moduleId == 'core') { + global $gallery; + + /* + * Create our user-defined DB2 functions + * 1) Create a temporary database connection + * 2) Register the Jar file + * 3) Create/Catalog the UDFs + * 4) Disconnect from the database + */ + $platform =& $gallery->getPlatform(); + $slash = $platform->getDirectorySeparator(); + + /* 1) Create a temporary database connection */ + list ($ret, $tmpDb) = $this->_getConnection(true); + if ($ret) { + return $ret; + } + + /* + * 2) Register the Jar file (use ODBC delimiters, see + * http://gallery.menalto.com/node/37648?from=850#comment-172690) + */ + $sql = "{CALL SQLJ.INSTALL_JAR('file:" . dirname(__FILE__) . $slash . + "g2_db2.jar', 'g2_db2_jar')}"; + $this->_traceStart(); + $recordSet = $tmpDb->Execute($sql); + $this->_traceStop(); + if (empty($recordSet)) { + /* + * XXX: At some point figure out a way to detect if the UDFs are + * already there before trying to install them again. + */ + if ($gallery->getDebug()) { + $gallery->debug('Failed to install g2_db2.jar .. continuing ' . + 'under the assumption that this is an upgrade'); + } + } else { + /* 3) Create/Catalog the UDFs */ + $ret = $this->_executeSqlFile(dirname(__FILE__) . $slash . 'Db2CreateUdfs.sql'); + if ($ret) { + return $ret; + } + } + + /* 4) Disconnect from the database */ + $tmpDb->Close(); + + } + + $ret = parent::configureStore($moduleId, $upgradeInfo); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryStorage::convertIntToBits + */ + function convertIntToBits($intVal) { + return sprintf("%032b", $intVal); + } + + /** + * @see GalleryStorage::convertBitsToInt + */ + function convertBitsToInt($bitsVal) { + return bindec($bitsVal); + } + + /** + * @see GalleryStorage::getFunctionsSql + */ + function getFunctionSql($functionName, $args) { + switch($functionName) { + case 'CONCAT': + /* + * CHAR($value) creates a string of length 11 for large and a string of length 4 for + * smaller integer values. Thus we need to trim the string to the actual length of the + * string representation of the integer + */ + foreach ($args as $key => $value) { + $args[$key] = 'RTRIM(CHAR(' . $value . '))'; + } + $sql = implode(' || ', $args); + break; + + case 'BITAND': + $sql = 'G2_BIT_AND (CAST(' . $args[0] . ' AS CHAR(32)), ' . + 'CAST(' . $args[1] . ' AS CHAR(32)))'; + break; + + case 'BIT_OR': + /* + * Emulation of a user-defined aggregate function by using a UDF that always operates + * on 2 operands (last result from scratchpad and current row) and outputs the result, + * plus it stores the result in the DB2 scratchpad. We use the built-in aggregate + * function MAX() to select the last "intermediate" result of the BIT_OR + */ + + /* + * arg 0 is the column over which we do the BIT_OR, arg 1 is the GROUP BY column + * (or a constant number if no GROUP BY clause is used) + */ + $sql = 'MAX(G2_BIT_OR (' . $args[1] . ', ' . $args[0] . '))'; + break; + + case 'UNIX_TIMESTAMP': + $sql = 'date_part(\'epoch\', ' . $args[0] . ')'; + break; + + case 'AS': + $sql = 'AS'; + break; + + case 'SUBSTRING': + $sql = sprintf('SUBSTR(%s)', implode(', ', $args)); + break; + + case 'RAND': + /* Add random parameter to seed DB2 random number generator */ + $sql = sprintf('RAND(%s)', empty($args) ? mt_rand(0, 2147483647) : $args[0]); + break; + + case 'LIMIT': + $sql = $args[1] . ' FETCH FIRST ' . $args[0] . ' ROWS ONLY'; + break; + + case 'CASE': + $sql = array(); + while (count($args) > 1) { + $sql[] = 'WHEN ' . array_shift($args) . ' THEN ' . array_shift($args); + } + $sql = 'CASE ' . implode(' ', $sql) . ' ELSE ' . $args[0] . ' END'; + break; + + case 'LIKE': + /* DB2's LIKE predicate support is very restrictive. No non-strings, no SQL UDFs. */ + $sql = 'G2_LIKE(' . $args[0] . ', ' . $args[1] . ') = 1'; + break; + + case 'MULTI_INSERT': + /* + * 0 - table name + * 1 - array of column names + * 2 - number of rows + */ + $markers = GalleryUtilities::makeMarkers(sizeof($args[1])); + $rowList = rtrim(str_repeat('(' . $markers . '), ', $args[2]), ', '); + $sql = 'INSERT INTO ' . $args[0] . ' ('; + $sql .= join(', ', $args[1]); + $sql .= ') VALUES ' . $rowList; + break; + + case 'AVG': + /* + * DB2's AVG's return value is of the same type as the input value. To get the same + * behavior that we expect from MySQL and PostgreSQL, cast the input to double + */ + $sql = sprintf('AVG(double(%s))', $args[0]); + break; + + default: + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED, __FILE__, __LINE__, + $functionName . ' ' . implode(' ', $args)), null); + } + + return array(null, $sql); + } + + /** + * Get database version. + * @return string version + */ + function getVersion() { + global $gallery; + $platform =& $gallery->getPlatform(); + + list ($success, $results) = $platform->exec(array(array('db2level'))); + if ($success && is_array($results)) { + return implode("\n", $results); + } else { + return ''; + } + } + + /** + * @see GalleryStorage::_getOptimizeStatements + */ + function _getOptimizeStatements() { + return array('CALL ADMIN_CMD (\'REORG TABLE ' . $this->_username . '.%s\')', + 'CALL ADMIN_CMD (\'RUNSTATS ON TABLE ' . $this->_username . + '.%s WITH DISTRIBUTION ON ALL COLUMNS AND INDEXES ALL\')'); + + } + + /** + * Truncate UTF-8 strings to given byte length rather than character length since DB2 interprets + * string lengths in bytes. + * @see GalleryStorage::_truncateString + */ + function _truncateString($value, $size, $lengthInBytes=false) { + return parent::_truncateString($value, $size, true); + } + + /** + * @see GalleryStorage::encodeBlob + */ + function encodeBlob($blob) { + return addcslashes($blob, "\000\134\377"); + } + + /** + * @see GalleryStorage::decodeBlob + */ + function decodeBlob($blob) { + return stripcslashes($blob); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/GNUmakefile b/Source/gallery2/modules/core/classes/GalleryStorage/GNUmakefile new file mode 100644 index 0000000..e07cccd --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/GNUmakefile @@ -0,0 +1 @@ +include ../../../../lib/tools/bin/GNUmakefile.GalleryStorage diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/GallerySqlFragment.class b/Source/gallery2/modules/core/classes/GalleryStorage/GallerySqlFragment.class new file mode 100644 index 0000000..aed9927 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/GallerySqlFragment.class @@ -0,0 +1,25 @@ + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/GalleryStorageExtras.class b/Source/gallery2/modules/core/classes/GalleryStorage/GalleryStorageExtras.class new file mode 100644 index 0000000..ad7b2ee --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/GalleryStorageExtras.class @@ -0,0 +1,2202 @@ + + * @version $Revision: 16630 $ + */ +class GalleryStorageExtras /* the other half of GalleryStorage */ { + /** + * @param object GalleryStorage $galleryStorage the database storage instance + */ + function GalleryStorageExtras(&$galleryStorage) { + $this->_gs =& $galleryStorage; + } + + /** + * Return a non transactional database connection. + * On occasion we'll need a non-transactional connection to do things like locking and + * sequence handling, since they have to be consistent across may concurrent requests. + * @return array object GalleryStatus a status code + * object ADOdb a database connection + */ + function _getNonTransactionalDatabaseConnection() { + if ($this->_gs->_isTransactional) { + if (empty($this->_gs->_nonTransactionalDb)) { + list ($ret, $this->_gs->_nonTransactionalDb) = $this->_gs->_getConnection(true); + if ($ret) { + return array($ret, null); + } + } + return array(null, $this->_gs->_nonTransactionalDb); + } else { + $ret = $this->_dbInit(); + if ($ret) { + return array($ret, null); + } + return array(null, $this->_gs->_db); + } + } + + /** + * Connect to database if needed and optionally guarantee db transaction. + * @return object GalleryStatus a status code + * @access private + */ + function _dbInit($transaction=false) { + if (!isset($this->_gs->_db)) { + list ($ret, $this->_gs->_db) = $this->_gs->_getConnection(); + if ($ret) { + return $ret; + } + } + if ($transaction) { + $ret = $this->_gs->_guaranteeTransaction(); + if ($ret) { + return $ret; + } + } + return null; + } + + /** + * @see GalleryStorage::loadEntities + */ + function loadEntities($ids) { + global $gallery; + $ret = $this->_dbInit(); + if ($ret) { + return array($ret, null); + } + + foreach ($ids as $idx => $id) { + $ids[$idx] = (int)$id; + } + + /* Identify all the ids at once */ + list ($ret, $types) = $this->_identifyEntities($ids); + if ($ret) { + return array($ret, null); + } + + /* Separate the ids by type */ + $classNames = array(); + $gallery->guaranteeTimeLimit(5); + for ($i = 0; $i < count($ids); $i++) { + if (empty($types[$i])) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT, __FILE__, __LINE__, + "Missing object for id $ids[$i]"), null); + } + $classNames[$types[$i]][$ids[$i]] = 1; + } + + /* Load them in groups */ + foreach ($classNames as $className => $targetIdHash) { + $gallery->guaranteeTimeLimit(5); + + /* Get unique target ids */ + $targetIds = array_keys($targetIdHash); + + /* Get our member info for this class */ + list ($ret, $memberInfo) = $this->describeEntity($className); + if ($ret) { + return array($ret, null); + } + + $idCol = $this->_gs->_translateColumnName('id'); + + /* Build up our query */ + $columns = $tables = $where = $memberData = $callbacks = array(); + $markers = GalleryUtilities::makeMarkers(count($targetIds)); + $target = $className; + while ($target) { + foreach ($memberInfo[$target]['members'] as $columnName => $columnInfo) { + list ($tableName, $unused) = $this->_gs->_translateTableName($target); + $memberData[] = $columnInfo; + $callbacks[] = $columnName; + $columns[$tableName . '.' . $this->_gs->_translateColumnName($columnName)] = 1; + $tables[$tableName] = 1; + } + $target = $memberInfo[$target]['parent']; + } + $tables = array_keys($tables); + $columns = array_keys($columns); + + for ($i = 0; $i < count($tables); $i++) { + if ($i == 0) { + $where[] = $tables[$i] . '.' . $idCol . ' IN (' . $markers . ')'; + } else { + $where[] = $tables[$i] . '.' . $idCol . '=' . $tables[0] . '.' . $idCol; + } + } + + $query = 'SELECT '; + $query .= implode(', ', $columns); + $query .= ' FROM '; + $query .= implode(', ', $tables); + $query .= ' WHERE '; + $query .= implode(' AND ', $where); + + /* Execute the query */ + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $targetIds); + $this->_gs->_traceStop(); + if ($recordSet) { + if ($recordSet->RecordCount() != count($targetIds)) { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT), + null); + } + + /* Process all the results */ + $j = 0; + while ($row = $recordSet->FetchRow()) { + if (++$j % 20 == 0) { + $gallery->guaranteeTimeLimit(5); + } + + if (!class_exists($className)) { + GalleryCoreApi::requireOnce( + "modules/{$memberInfo[$className]['module']}/classes/$className.class"); + } + $entity = new $className; + + if (empty($entity)) { + return array(GalleryCoreApi::error(ERROR_BAD_DATA_TYPE), + null); + } + + for ($i = 0; $i < count($callbacks); $i++) { + $value = $this->_gs->_normalizeValue($row[$i], $memberData[$i], true); + + /* Store the value in the object */ + $entity->$callbacks[$i] = $value; + $entity->_persistentStatus['originalValue'][$callbacks[$i]] = $value; + } + + $entity->resetOriginalValues(); + $entities[$entity->id] = $entity; + } + + $recordSet->Close(); + } else { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + } + + /* Assemble the entities in the right order and return them */ + $result = array(); + foreach ($ids as $id) { + $result[] = $entities[$id]; + } + + return array(null, $result); + } + + /** + * @see GalleryStorage::saveEntity + */ + function saveEntity(&$entity) { + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + /* Update the serial number, but remember the original one */ + $originalSerialNumber = (int)$entity->serialNumber++; + + /* Get our member info for this class */ + list ($ret, $memberInfo) = $this->describeEntity($entity->entityType); + if ($ret) { + return $ret; + } + $idColumn = null; + + /* + * Build up a complete picture of all the various changed fields, so + * that we can do an insert or update. + */ + $dataTable = array(); + $id = array(); + $target = $entity->getEntityType(); + + while ($target) { + foreach ($memberInfo[$target]['members'] as $memberName => $memberData) { + $type = $memberData['type']; + list ($tableName, $unused) = $this->_gs->_translateTableName($target); + + /* If the member is modified, record the new value in our table */ + if ($entity->isModified($memberName)) { + $value = $entity->$memberName; + + $entity->$memberName = $value = + $this->_gs->_normalizeValue($value, $memberData); + + $columnName = $this->_gs->_translateColumnName($memberName); + $dataTable[$tableName][$columnName] = $value; + } else { + /* + * If we haven't set up a table for this class, do so now. + * Otherwise we don't have a complete list of tables that we + * need to insert into in order for this class to be completely + * serialized. + */ + if (!isset($dataTable[$tableName])) { + $dataTable[$tableName] = array(); + } + } + + if ($type & STORAGE_TYPE_ID) { + $value = $entity->$memberName; + + $id['column'] = $this->_gs->_translateColumnName($memberName); + $id['value'] = $value; + } + } + $target = $memberInfo[$target]['parent']; + } + + if ($entity->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED)) { + /* + * Iterate through the data table and make up an INSERT statement + * for each table that requires one. + */ + foreach ($dataTable as $tableName => $columnChanges) { + + /* Make sure that the id column is set for each table */ + if (empty($columnChanges[$id['column']])) { + $columnChanges[$id['column']] = $id['value']; + } + + $columns = array_keys($columnChanges); + $data = array_values($columnChanges); + $markers = GalleryUtilities::makeMarkers(count($columnChanges)); + $query = 'INSERT INTO ' . $tableName . ' ('; + $query .= implode(', ', $columns); + $query .= ') VALUES (' . $markers . ')'; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $data); + $this->_gs->_traceStop(); + + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + } else { + /* + * Iterate through the data table and make an UPDATE statement for + * each table that requires one. Make sure that we do the table + * that has the serial number in it first, as we use the serial + * number to make sure that we're not hitting a concurrency issue. + */ + list ($serialNumberTable) = $this->_gs->_translateTableName('GalleryEntity'); + + $queryList = array(); + foreach ($dataTable as $tableName => $columnChanges) { + $changeList = array(); + $data = array(); + + foreach ($columnChanges as $columnName => $value) { + $changeList[] = $columnName . '=?'; + $data[] = $value; + } + + if (count($changeList)) { + $query = 'UPDATE ' . $tableName . ' SET'; + $query .= ' ' . implode(',', $changeList); + $query .= ' WHERE ' . $id['column'] . '=?'; + $data[] = $id['value']; + + if (!strcmp($tableName, $serialNumberTable)) { + $query .= ' AND ' . + $this->_gs->_translateColumnName('serialNumber') . + '=?'; + $data[] = $originalSerialNumber; + array_unshift($queryList, array($query, $data)); + } else { + array_push($queryList, array($query, $data)); + } + } + } + + /* + * Now apply each UPDATE statement in turn. Make sure that we're + * only affecting one row each time. + */ + foreach ($queryList as $queryAndData) { + list ($query, $data) = $queryAndData; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $data); + $this->_gs->_traceStop(); + + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } else { + $this->_gs->_traceStart(); + $affectedRows = $this->_gs->_db->Affected_Rows(); + $this->_gs->_traceStop(); + if ($affectedRows == 0) { + return GalleryCoreApi::error(ERROR_OBSOLETE_DATA, __FILE__, __LINE__, + "$query (" . implode('|', $data) . ')'); + } else if ($affectedRows > 1) { + /* We just updated more than one row! What do we do now? */ + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + "$query (" . implode('|', $data) . ") $affectedRows"); + } + } + } + } + + $entity->clearPersistentFlag(STORAGE_FLAG_NEWLY_CREATED); + $entity->resetOriginalValues(); + $ret = $entity->onSave(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryStorage::deleteEntity + */ + function deleteEntity(&$entity) { + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + /* If this object has not yet been saved in the database, don't bother saving it. */ + if ($entity->testPersistentFlag(STORAGE_FLAG_NEWLY_CREATED)) { + $entity->clearPersistentFlag(STORAGE_FLAG_NEWLY_CREATED); + $entity->setPersistentFlag(STORAGE_FLAG_DELETED); + return null; + } + + /* Get our persistent and member info for this class */ + list ($ret, $memberInfo) = $this->describeEntity($entity->entityType); + if ($ret) { + return $ret; + } + + $idCol = $this->_gs->_translateColumnName('id'); + + $tables = array(); + $target = $entity->entityType; + while ($target) { + foreach ($memberInfo[$target]['members'] as $columnName => $columnInfo) { + list ($tableName, $unused) = $this->_gs->_translateTableName($target); + $tables[$tableName] = 1; + } + $target = $memberInfo[$target]['parent']; + } + + /* + * XXX OPT: Override this for specific database implementations that + * allow multi-table delete. + */ + foreach ($tables as $tableName => $junk) { + $query = 'DELETE FROM ' . $tableName . ' WHERE ' . $idCol . '=?'; + $data = array((int)$entity->getId()); + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + $entity->setPersistentFlag(STORAGE_FLAG_DELETED); + + return null; + } + + /** + * @see GalleryStorage::newEntity + */ + function newEntity(&$entity) { + $ret = $this->_dbInit(); + if ($ret) { + return $ret; + } + + list ($ret, $id) = $this->_gs->getUniqueId(); + if ($ret) { + return $ret; + } + + $entity->id = $id; + $entity->serialNumber = 0; + $entity->setPersistentFlag(STORAGE_FLAG_NEWLY_CREATED); + + return null; + } + + /** + * @see GalleryStorage::getUniqueId + */ + function getUniqueId() { + $ret = $this->_dbInit(); + if ($ret) { + return array($ret, null); + } + + /* + * Wrap _getUniqueIdWithConnection with the current connection. This allows + * subclasses to use a different connection if necessary, like MySQL which + * wants a non-transactional connection. + */ + return $this->_getUniqueIdWithConnection($this->_gs->_db); + } + + /** + * @see GalleryStorage::getUniqueId + */ + function _getUniqueIdWithConnection($dbConn) { + /* In case we're embedded in an app that sets adodb hasGenID to false (xaraya/postnuke) */ + if (isset($dbConn->hasGenID) && !$dbConn->hasGenID) { + $dbConn->hasGenID = $setGenID = true; + } + + /* Get the id of the next object from our sequence */ + $this->_gs->_traceStart(); + $id = (int)$dbConn->GenId($this->_gs->_tablePrefix . DATABASE_SEQUENCE_ID); + $this->_gs->_traceStop(); + if (empty($id)) { + return array(GalleryCoreApi::error( + ERROR_STORAGE_FAILURE, __FILE__, __LINE__, 'Empty sequence id!'), + null); + } + + if (isset($setGenID)) { + $dbConn->hasGenID = false; + } + + return array(null, $id); + } + + /** + * @see GalleryStorage::refreshEntity + */ + function refreshEntity($entity) { + $ret = $this->_dbInit(); + if ($ret) { + return array($ret, null); + } + + /* + * We could check the serial number against the database, or check to + * see if the entity is modified in order to figure out whether or not + * we should refresh. But either way that requires a database hit so we + * might as well just retrieve the record every time + */ + list ($ret, list ($freshEntity)) = $this->_gs->loadEntities(array($entity->id)); + if ($ret) { + return array($ret, null); + } + + /* Let entity do its post-load procedure */ + $ret = $freshEntity->onLoad(); + if ($ret) { + return array($ret, null); + } + + return array(null, $freshEntity); + } + + /** + * @see GalleryStorage::acquireReadLock + */ + function acquireReadLock($entityIds, $timeout) { + /* It's ok to pass in a single id */ + if (!is_array($entityIds)) { + $entityIds = array($entityIds); + } + + foreach ($entityIds as $idx => $id) { + $entityIds[$idx] = (int)$id; + } + + /* Acquire a non-transactional connection to use for this request */ + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return array($ret, null); + } + + /* Know when to call it quits */ + $cutoffTime = time() + $timeout; + + /* Get the true name of the lock table */ + list ($lockTable, $unused) = $this->_gs->_translateTableName('Lock'); + + /* + * Algorithm: + * 1. Get clearance to acquire locks (and get the lock id) + * 2. If any of the entities that we want to lock are currently write + * locked, then clear the request and go back to step 1. + * 3. Acquire our read locks + */ + while (true) { + list ($ret, $lockId) = $this->_getLockClearance($cutoffTime); + if ($ret) { + return array($ret, null); + } + + /* Check to see if any of the ids that we care about are write locked */ + $writeEntityIdCol = $this->_gs->_translateColumnName('writeEntityId'); + $markers = GalleryUtilities::makeMarkers(count($entityIds)); + $query = 'SELECT COUNT(*) FROM ' . $lockTable + . ' WHERE ' . $writeEntityIdCol . ' IN (' . $markers . ')'; + $data = $entityIds; + + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + $row = $recordSet->FetchRow(); + if ($row[0] == 0 ) { + /* Success */ + break; + } else { + /* An entity that we want is write locked */ + $this->releaseLocks($lockId); + + if (time() > $cutoffTime) { + return array(GalleryCoreApi::error(ERROR_LOCK_TIMEOUT), + null); + } + + /* Wait a second and try again */ + sleep(1); + + /* Expire any bogus locks */ + $ret = $this->_expireLocks(); + if ($ret) { + return array($ret, null); + } + } + } + + /* Put in a read lock for every entity id */ + $lockIdCol = $this->_gs->_translateColumnName('lockId'); + $readEntityIdCol = $this->_gs->_translateColumnName('readEntityId'); + $freshUntilCol = $this->_gs->_translateColumnName('freshUntil'); + $freshUntil = time() + 30; + $lockInfo = array(); + foreach ($entityIds as $entityId) { + $query = sprintf('INSERT INTO %s (%s, %s, %s) VALUES (?, ?, ?)', + $lockTable, $lockIdCol, $readEntityIdCol, $freshUntilCol); + $data = array($lockId, $entityId, $freshUntil); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + $lockInfo[$entityId] = true; + } + + /* Drop the lock request, now that we've got the read locks */ + $requestCol = $this->_gs->_translateColumnName('request'); + $query = 'DELETE FROM ' . $lockTable + . ' WHERE ' . $lockIdCol . '=? AND ' . $requestCol . '=1'; + $data = array($lockId); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + return array(null, + array('lockId' => $lockId, 'type' => LOCK_READ, 'ids' => $lockInfo)); + } + + /** + * @see GalleryStorage::acquireWriteLock + */ + function acquireWriteLock($entityIds, $timeout) { + /* It's ok to pass in a single id */ + if (!is_array($entityIds)) { + $entityIds = array($entityIds); + } + + foreach ($entityIds as $idx => $id) { + $entityIds[$idx] = (int)$id; + } + + /* Acquire a non-transactional connection to use for this request */ + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return array($ret, null); + } + + /* Know when to call it quits */ + $cutoffTime = time() + $timeout; + + /* Get the true name of the lock table */ + list ($lockTable, $unused) = $this->_gs->_translateTableName('Lock'); + + /* + * Algorithm: + * 1. Get clearance to acquire locks (and get the lock id) + * 2. If any of the entities that we want to lock are currently locked, + * then clear the request and go back to step 1. + * 3. Acquire our write locks + */ + while (true) { + list ($ret, $lockId) = $this->_getLockClearance($cutoffTime); + if ($ret) { + return array($ret, null); + } + $lockId = (int)$lockId; + + /* Check to see if any of the ids that we care about are locked */ + $readEntityIdCol = $this->_gs->_translateColumnName('readEntityId'); + $writeEntityIdCol = $this->_gs->_translateColumnName('writeEntityId'); + $markers = GalleryUtilities::makeMarkers(count($entityIds)); + $query = 'SELECT COUNT(*) FROM ' . $lockTable . ' ' . + 'WHERE ' . $readEntityIdCol . ' IN (' . $markers . ') ' . + 'OR ' . $writeEntityIdCol . ' IN (' . $markers . ')'; + $data = $entityIds; + $data = array_merge($data, $entityIds); + + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + $row = $recordSet->FetchRow(); + if ($row[0] == 0 ) { + /* Success */ + break; + } else { + /* An entity that we want is still locked */ + $this->releaseLocks($lockId); + + if (time() > $cutoffTime) { + return array(GalleryCoreApi::error(ERROR_LOCK_TIMEOUT), + null); + } + + /* Wait a second and try again */ + sleep(1); + + /* Expire any bogus locks */ + $ret = $this->_expireLocks(); + if ($ret) { + return array($ret, null); + } + } + } + + /* We are approved to acquire our write locks */ + $lockIdCol = $this->_gs->_translateColumnName('lockId'); + $writeEntityIdCol = $this->_gs->_translateColumnName('writeEntityId'); + $freshUntilCol = $this->_gs->_translateColumnName('freshUntil'); + $freshUntil = time() + 30; + $lockInfo = array(); + foreach ($entityIds as $entityId) { + $query = sprintf('INSERT INTO %s (%s, %s, %s) VALUES (?, ?, ?)', + $lockTable, $lockIdCol, $writeEntityIdCol, $freshUntilCol); + $data = array($lockId, $entityId, $freshUntil); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + $lockInfo[$entityId] = true; + } + + /* Drop the lock request, now that we've got the write locks */ + $requestCol = $this->_gs->_translateColumnName('request'); + $query = 'DELETE FROM ' . $lockTable + . ' WHERE ' . $lockIdCol . '=? AND ' . $requestCol . '=1'; + $data = array($lockId); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + return array(null, + array('lockId' => $lockId, 'type' => LOCK_WRITE, 'ids' => $lockInfo)); + } + + /** + * @see GalleryStorage::refreshLocks + */ + function refreshLocks($lockIds, $freshUntil) { + if (!empty($lockIds)) { + foreach ($lockIds as $idx => $id) { + $lockIds[$idx] = (int)$id; + } + + /* Acquire a non-transactional connection to use for this request */ + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return $ret; + } + + list ($lockTable, $unused) = $this->_gs->_translateTableName('Lock'); + $lockIdCol = $this->_gs->_translateColumnName('lockId'); + $freshUntilCol = $this->_gs->_translateColumnName('freshUntil'); + $lockIdMarkers = GalleryUtilities::makeMarkers(count($lockIds)); + $query = sprintf('UPDATE %s SET %s = ? WHERE %s in (%s)', + $lockTable, $freshUntilCol, $lockIdCol, $lockIdMarkers); + + $this->_gs->_traceStart(); + $data = array_merge(array($freshUntil), $lockIds); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + return null; + } + + /** + * Delete all not-so-fresh locks. + * @return object GalleryStatus a status code + * @access private + */ + function _expireLocks() { + /* Acquire a non-transactional connection to use for this request */ + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return $ret; + } + + list ($lockTable, $unused) = $this->_gs->_translateTableName('Lock'); + $freshUntilCol = $this->_gs->_translateColumnName('freshUntil'); + $query = sprintf('DELETE FROM %s WHERE %s < ?', + $lockTable, $freshUntilCol); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, array(time())); + $this->_gs->_traceStop(); + + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + return null; + } + + /** + * @see GalleryStorage::releaseLocks + */ + function releaseLocks($lockIds) { + if (!is_array($lockIds)) { + $lockIds = array($lockIds); + } + foreach ($lockIds as $idx => $id) { + $lockIds[$idx] = (int)$id; + } + + /* Acquire a non-transactional connection to use for this request */ + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return $ret; + } + + /* Get the true name of the lock table */ + list ($lockTable, $unused) = $this->_gs->_translateTableName('Lock'); + + $lockIdCol = $this->_gs->_translateColumnName('lockId'); + $markers = GalleryUtilities::makeMarkers(count($lockIds)); + $query = 'DELETE FROM ' . $lockTable . ' WHERE ' . $lockIdCol . ' IN (' . $markers . ')'; + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $lockIds); + $this->_gs->_traceStop(); + if ($recordSet) { + return null; + } else { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + /** + * @see GalleryStorage::removeIdsFromLock + */ + function removeIdsFromLock($lock, $ids) { + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return $ret; + } + + $query = ' + DELETE FROM [Lock] + WHERE [::lockId] = ? + AND [::' . ($lock['type'] == LOCK_WRITE ? 'write' : 'read') . 'EntityId] IN (' + . GalleryUtilities::makeMarkers(count($ids)) . ')'; + $query = $this->_gs->_translateQuery($query); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, array_merge(array($lock['lockId']), $ids)); + $this->_gs->_traceStop(); + if ($recordSet) { + return null; + } else { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + /** + * @see GalleryStorage::moveIdsBetweenLocks + */ + function moveIdsBetweenLocks($relock, $newLockId, $lockType) { + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return $ret; + } + + $query = ' + UPDATE [Lock] SET [::lockId] = ? WHERE [::lockId] = ? AND [::' + . ($lockType == LOCK_WRITE ? 'write' : 'read') . 'EntityId] IN ('; + $query = $this->_gs->_translateQuery($query); + foreach ($relock as $lockId => $ids) { + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query . GalleryUtilities::makeMarkers(count($ids)) . ')', + array_merge(array($newLockId, $lockId), $ids)); + $this->_gs->_traceStop(); + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + return null; + } + + /** + * @see GalleryStorage::newLockId + */ + function newLockId() { + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return array($ret, null); + } + + $this->_gs->_traceStart(); + $lockId = $db->GenId($this->_gs->_tablePrefix . DATABASE_SEQUENCE_LOCK); + $this->_gs->_traceStop(); + + if (empty($lockId)) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, + __FILE__, __LINE__, 'Empty lock sequence id!'), + null); + } + + return array(null, (int)$lockId); + } + + /** + * @see GalleryStorage::execute + */ + function execute($statement, $data=array()) { + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + $statement = $this->_gs->_translateQuery($statement); + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($statement, $data); + $this->_gs->_traceStop(); + + /* Direct SQL commands can undermine our memory cache, so reset it */ + GalleryDataCache::reset(); + + return $recordSet ? null + : GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + /** + * @see GalleryStorage::addMapEntry + */ + function addMapEntry($mapName, $entry) { + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + list ($ret, $mapInfo) = $this->_gs->describeMap($mapName); + if ($ret) { + return $ret; + } + list ($tableName) = $this->_gs->_translateTableName($mapName); + $data = $columns = array(); + foreach ($mapInfo as $memberName => $memberData) { + if (!array_key_exists($memberName, $entry)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + 'Missing parameter: ' . $memberName); + } + + if (is_array($entry[$memberName])) { + return $this->_addMapEntries($mapInfo, $tableName, $entry); + } + $columns[] = $this->_gs->_translateColumnName($memberName); + $data[] = $this->_gs->_normalizeValue($entry[$memberName], $memberData); + } + + $markers = GalleryUtilities::makeMarkers(count($columns)); + $query = 'INSERT INTO ' . $tableName . ' ('; + $query .= implode(', ', $columns); + $query .= ') VALUES (' . $markers . ')'; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $data); + $this->_gs->_traceStop(); + if ($recordSet === false) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + return null; + } + + /** + * Add new entries to a map. This utility takes the values from entry array + * e.g., (parm1 => (p1val1, p1val2, p1val3), parm2 => (p2val1, p2val2, p2val3)) + * and inserts them into the map similar to the following: + * INSERT INTO ... (PARM1, PARM2) VALUES (p1val1, p2val1), (p1val2, p2val2) ... + * + * @param array $mapInfo map we're working on + * @param string $tableName the translated table name + * @param array $entry an associative array of data about the entry + * each data element is an array of values + * @return object GalleryStatus a status code + * @access private + */ + function _addMapEntries($mapInfo, $tableName, $entry) { + $columns = array(); + foreach ($mapInfo as $memberName => $memberData) { + $columns[$memberName] = $this->_gs->_translateColumnName($memberName); + } + + /* Now we transpose the entry matrix */ + $rows = count($entry[$memberName]); + $data = array(); + for ($ind = 0; $ind < $rows; $ind++) { + foreach ($mapInfo as $memberName => $memberData) { + $data[] = $this->_gs->_normalizeValue($entry[$memberName][$ind], $memberData); + } + } + + list ($ret, $query) = + $this->_gs->getFunctionSql('MULTI_INSERT', array($tableName, $columns, $rows)); + if ($ret) { + return $ret; + } + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $data); + $this->_gs->_traceStop(); + if ($recordSet === false) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + return null; + } + + /** + * @see GalleryStorage::removeMapEntry + */ + function removeMapEntry($mapName, $match) { + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + list ($ret, $mapInfo) = $this->_gs->describeMap($mapName); + if ($ret) { + return $ret; + } + list ($tableName, $unused) = $this->_gs->_translateTableName($mapName); + $data = $where = array(); + + foreach ($mapInfo as $memberName => $memberData) { + if (array_key_exists($memberName, $match)) { + if (GalleryUtilities::isA($match[$memberName], 'GallerySqlFragment')) { + $where[] = $this->_gs->_translateColumnName($memberName) . ' ' + . $this->_gs->_translateQuery($match[$memberName]->getFragment()); + foreach ($match[$memberName]->getValues() as $value) { + $data[] = $value; + } + } else if (is_array($match[$memberName])) { + $qs = array(); + foreach ($match[$memberName] as $value) { + $qs[] = '?'; + $data[] = $this->_gs->_normalizeValue($value, $memberData); + } + $where[] = $this->_gs->_translateColumnName($memberName) . ' IN (' + . implode(',', $qs) . ')'; + } else { + $value = $this->_gs->_normalizeValue($match[$memberName], $memberData); + if (is_null($value)) { + $where[] = $this->_gs->_translateColumnName($memberName) . ' IS NULL'; + } else { + $where[] = $this->_gs->_translateColumnName($memberName) . '=?'; + $data[] = $value; + } + } + } + } + + if (empty($where)) { + return GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + 'Missing where clause'); + } + + $query = 'DELETE FROM ' . $tableName . ' WHERE ' . implode(' AND ', $where); + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + return null; + } + + /** + * @see GalleryStorage::removeAllMapEntries + */ + function removeAllMapEntries($mapName) { + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + list ($tableName) = $this->_gs->_translateTableName($mapName); + $query = 'DELETE FROM ' . $tableName; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query); + $this->_gs->_traceStop(); + if ($recordSet === false) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + + return null; + } + + /* + * Load up the table creation and alteration SQL files for the given module + * @access private + */ + function _getModuleSql($moduleId) { + global $gallery; + $platform =& $gallery->getPlatform(); + $sqlFile = sprintf('%smodules/%s/classes/GalleryStorage/schema.tpl', + GalleryCoreApi::getPluginBaseDir('module', $moduleId), $moduleId); + + if ($platform->file_exists($sqlFile)) { + $sqlData = $platform->file($sqlFile); + $moduleSql = GalleryStorageExtras::parseSqlTemplate($sqlData, $this->_gs->getType()); + } else { + $moduleSql = array('table' => array(), 'alter' => array(), + 'remove' => array(), 'test' => array()); + } + + return array(null, $moduleSql); + } + + /** + * Parse the SQL template file and break it down by database and sql file type and return the + * results in an array. The best way to see how this is supposed to work is to look in the + * unit test. + * + * @param array $sqlData the raw template data + * @param string $dbType the database type + * @return array the parsed results + * @static + */ + function parseSqlTemplate($sqlData, $dbType) { + $info = array('table' => array(), 'alter' => array(), + 'remove' => array(), 'test' => array()); + $dbname = $tablename = null; + $record = false; + foreach ($sqlData as $line) { + $line = rtrim($line); + if (preg_match('/^## (.*)$/', $line, $matches)) { + $record = ($matches[1] == $dbType); + continue; + } + if (!$record) { + continue; + } + + if (preg_match('/^# (.*)$/', $line, $matches)) { + $tablename = $matches[1]; + if (preg_match('/^T_(.*)_(\d+)/', $tablename, $matches)) { + if (!isset($info['test'][$matches[1]][$matches[2]])) { + $info['test'][$matches[1]][$matches[2]] = ''; + } + $insertPointer =& $info['test'][$matches[1]][$matches[2]]; + } else if (preg_match('/^A_(.*)_(\d+)\.(\d+)/', $tablename, $matches)) { + if (!isset($info['alter'][$matches[1]][$matches[2]][$matches[3]])) { + $info['alter'][$matches[1]][$matches[2]][$matches[3]] = ''; + } + $insertPointer =& $info['alter'][$matches[1]][$matches[2]][$matches[3]]; + } else if (preg_match('/^R_(.*)_(\d+)\.(\d+)/', $tablename, $matches)) { + if (!isset($info['remove'][$matches[1]][$matches[2]][$matches[3]])) { + $info['remove'][$matches[1]][$matches[2]][$matches[3]] = ''; + } + $insertPointer =& $info['remove'][$matches[1]][$matches[2]][$matches[3]]; + } else { + if (!isset($info['table'][$tablename])) { + $info['table'][$tablename] = ''; + } + $insertPointer =& $info['table'][$tablename]; + } + continue; + } + $insertPointer .= $line . "\n"; + } + + return $info; + } + + /** + * @see GalleryStorage::configureStore + */ + function configureStore($moduleId, $upgradeInfo=array()) { + global $gallery; + $gallery->guaranteeTimeLimit(20); + + $this->_clearEntityAndMapCache(); + + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + list ($ret, $moduleSql) = $this->_getModuleSql($moduleId); + if ($ret) { + return $ret; + } + + /* Get the metabase info about this database */ + $this->_gs->_traceStart(); + $metatables = $this->_gs->_db->MetaTables(); + $this->_gs->_traceStop(); + + /* + * Some databases (notably MySQL on Win32) don't support mixed case + * table names. So, when we get the meta table list back, it's lower + * case. Force all metatable listings to lower case and then expect + * them to be lowercase so that we're consistent. + */ + for ($i = 0; $i < count($metatables); $i++) { + $metatables[$i] = strtolower($metatables[$i]); + } + + /* Do the schema table first */ + list ($schemaTableName, $unused, $unused2) = $this->_gs->_translateTableName('Schema'); + if (!in_array(strtolower($schemaTableName), $metatables)) { + $ret = $this->_executeSql($moduleSql['table']['Schema']); + if ($ret) { + return $ret; + } + + $ret = $this->_updateSchemaTableInfo( + 'Schema', $moduleSql['table']['Schema'], $moduleId, null, null, true); + if ($ret) { + return $ret; + } + unset($moduleSql['table']['Schema']); + + /* Create our sequences now */ + foreach (array(DATABASE_SEQUENCE_LOCK, DATABASE_SEQUENCE_ID) as $sequenceId) { + $this->_gs->_traceStart(); + $result = $this->_gs->_db->CreateSequence($this->_gs->_tablePrefix . $sequenceId); + $this->_gs->_traceStop(); + if (empty($result)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + } + + /* Load all table versions */ + list ($ret, $tableVersions) = $this->_loadTableVersions(); + if ($ret) { + return $ret; + } + + list ($major, $minor) = $tableVersions['Schema']; + $canStoreSql = version_compare("$major.$minor", '1.1', '>='); + $canStoreTableInfo = version_compare("$major.$minor", '1.2', '>='); + + if ($canStoreTableInfo) { + $mapInfo = $this->_getTableInfo($moduleId, 'map'); + $entityInfo = $this->_getTableInfo($moduleId, 'entity'); + } + + /* + * Now take care of the rest of the tables. If the table doesn't exist, apply the current + * table definition. If it already exists, check to see if there is an upgrade available + * for the given table version that we should apply based on $upgradeInfo. + */ + foreach ($moduleSql['table'] as $rawTableName => $sql) { + $gallery->guaranteeTimeLimit(20); + list ($tableName, $unused, $tableNameInSchema) = + $this->_gs->_translateTableName($rawTableName); + + $type = $info = null; + if ($canStoreTableInfo) { + if (isset($mapInfo[$rawTableName])) { + $type = 'map'; + $info = serialize(array($rawTableName => $mapInfo[$rawTableName])); + } else if (isset($entityInfo[$rawTableName])) { + $type = 'entity'; + $info = serialize(array($rawTableName => $entityInfo[$rawTableName])); + } else { + if (!in_array($tableNameInSchema, array('Schema', 'Lock'))) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + "No map or entity description for: $tableNameInSchema"); + } + } + } + if (!in_array(GalleryUtilities::strToLower($tableName), $metatables)) { + $ret = $this->_executeSql($sql); + if ($ret) { + return $ret; + } + + if ($canStoreSql) { + $ret = $this->_updateSchemaTableInfo($tableNameInSchema, $sql, $moduleId, $type, + $info, $canStoreTableInfo); + if ($ret) { + return $ret; + } + } + } else { + while (1) { + /* The table exists -- see if we have an upgrade for it */ + if (empty($tableVersions[$tableNameInSchema])) { + /* + * We've found a SQL file that matches a table in the + * database, but has no matching version info in the + * schema table. How can this be? Leave it alone. + */ + if ($gallery->getDebug()) { + $gallery->debug("Table $rawTableName: missing entry in Schema table"); + } + break; + } + + /* If we locate an appropriate upgrade, apply it. */ + list ($major, $minor) = $tableVersions[$tableNameInSchema]; + if (!empty($moduleSql['alter'][$rawTableName][$major][$minor]) && + in_array("$rawTableName:$major.$minor", $upgradeInfo)) { + $sql = $moduleSql['alter'][$rawTableName][$major][$minor]; + $ret = $this->_executeSql($sql); + if ($ret) { + return $ret; + } + + if ($canStoreSql) { + /* + * Note: this puts the end-state sql into the createSql column, so + * there is a tiny possibility of getting a mismatch with the db if + * this upgrade involves multiple alters and the upgrade fails before + * executing the last one. + */ + $ret = $this->_updateSchemaTableInfo($tableNameInSchema, + $moduleSql['table'][$rawTableName], $moduleId, $type, $info, + $canStoreTableInfo); + if ($ret) { + return $ret; + } + } + /* Remember altered tables for post-upgrade optimizations */ + $altered = array($rawTableName); + $cacheKey = 'GalleryStorage::configureStore::alter'; + if (GalleryDataCache::containsKey($cacheKey)) { + $altered = array_merge(GalleryDataCache::get($cacheKey), $altered); + } + GalleryDataCache::put($cacheKey, $altered, true); + + /* Reload all table versions, cause one has now changed */ + list ($ret, $tableVersions) = $this->_loadTableVersions(true); + if ($ret) { + return $ret; + } + } else { + /* No upgrade available */ + break; + } + } + } + } + + return null; + } + + /** + * Load the Entities or Maps.inc file. + * @param string $moduleId The module for which to retrieve the table information for. + * @param string $type String to describe the file to load. ('map' | 'entity') + * @return array An array describing either the maps or entities for the module + * @access private + */ + function _getTableInfo($moduleId, $type) { + global $gallery; + $platform =& $gallery->getPlatform(); + + $fileBase = $type == 'map' ? 'Maps' : 'Entities'; + $tableInfoFile = dirname(dirname(dirname(dirname(dirname(__FILE__))))) + . "/modules/$moduleId/classes/$fileBase.inc"; + $mapInfo = array(); + $entityInfo = array(); + if ($platform->file_exists($tableInfoFile)) { + include($tableInfoFile); + } + + return $type == 'map' ? $mapInfo : $entityInfo; + } + + /** + * Convenience function to update the Schema table with the creation SQL for a table. + * @param string $tableNameInSchema The name of the table in the schema. + * @param string $tableSql The sql that is used to create the table. + * @param string $moduleId + * @param string $type (optional) An indicator for table type ('map' | 'entity'). + * @param string $info The serialized description of the map or entity. + * @param bool $canStoreTableInfo (optional) + * @return object GalleryStatus + */ + function _updateSchemaTableInfo($tableNameInSchema, $tableSql, $moduleId, $type=null, + $info=null, $canStoreTableInfo=false) { + $data = array($tableSql); + $query = 'UPDATE [GallerySchema] SET [::createSql] = ?'; + if ($canStoreTableInfo) { + $query .= ', [::pluginId] = ?'; + $data[] = $moduleId; + } + if ($canStoreTableInfo && isset($type)) { + $query .= ', [::type] = ?'; + $data[] = $type; + } + if ($canStoreTableInfo && isset($info)) { + $query .= ', [::info] = ?'; + $data[] = $info; + } + $query .= ' WHERE [::name] = ?'; + $data[] = $tableNameInSchema; + + $ret = $this->execute($query, $data); + if ($ret) { + return $ret; + } + return null; + } + + /** + * @see GalleryStorage::updateTableInfo + */ + function _updateTableInfo($moduleId) { + list ($ret, $sql) = $this->_getModuleSql($moduleId); + if ($ret) { + return $ret; + } + + if (empty($sql['table'])){ + return null; + } + + list ($ret, $tableVersions) = $this->_loadTableVersions(false); + if ($ret) { + return $ret; + } + + $mapInfo = $this ->_getTableInfo($moduleId, 'map'); + $entityInfo = $this ->_getTableInfo($moduleId, 'entity'); + + foreach ($sql['table'] as $tableName => $tableSql) { + list ($unused, $unused, $nameInSchema) = $this->_gs->_translateTableName($tableName); + + if (!array_key_exists($nameInSchema, $tableVersions)) { + continue; + } + + /* + * Check if there is a pending alter for the table and skip if there is. + * Column will be populated when/if that module is upgraded. + */ + list ($major, $minor) = $tableVersions[$nameInSchema]; + if (!empty($sql['alter'][$tableName][$major][$minor])) { + continue; + } + + $data = array(); + $query = 'UPDATE [Schema] SET '; + + if (isset($mapInfo[$tableName])) { + $query .= '[::info] = ?, [::type] = ?,'; + $data[] = serialize(array($tableName => $mapInfo[$tableName])); + $data[] = 'map'; + } else if (isset($entityInfo[$tableName])) { + $query .= '[::info] = ?, [::type] = ?,'; + $data[] = serialize(array($tableName => $entityInfo[$tableName])); + $data[] = 'entity'; + } else { + /* Some tables don't have a map description (i.e. Lock). */ + if (!in_array($nameInSchema, array('Schema', 'Lock'))) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + "No map or entity description for: $nameInSchema"); + } + } + + $query .= '[::pluginId] = ? WHERE [::name] = ?'; + $data = array_merge($data, array($moduleId, $nameInSchema)); + + $ret = $this->execute($query, $data); + if ($ret) { + return $ret; + } + } + return null; + } + + /** + * @see GalleryStorage::configureStoreCleanup + */ + function configureStoreCleanup($moduleId) { + global $gallery; + + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + list ($ret, $moduleSql) = $this->_getModuleSql($moduleId); + if ($ret) { + return $ret; + } + + /* Get the metabase info about this database */ + $this->_gs->_traceStart(); + $metatables = $this->_gs->_db->MetaTables(); + $this->_gs->_traceStop(); + + /* + * Some databases (notably MySQL on Win32) don't support mixed case + * table names. So, when we get the meta table list back, it's lower + * case. Force all metatable listings to lower case and then expect + * them to be lowercase so that we're consistent. + */ + for ($i = 0; $i < count($metatables); $i++) { + $metatables[$i] = strtolower($metatables[$i]); + } + + /* Load all table versions */ + list ($ret, $tableVersions) = $this->_loadTableVersions(); + if ($ret) { + return $ret; + } + + /* Now locate any existing tables that should be removed and drop them. */ + foreach (array_keys($moduleSql['remove']) as $rawTableName) { + if ($rawTableName == 'Schema') { + continue; + } + + list ($tableName, $unused, $tableNameInSchema) = + $this->_gs->_translateTableName($rawTableName); + if (in_array(strtolower($tableName), $metatables)) { + /* The table exists -- see if we should delete it */ + if (empty($tableVersions[$tableNameInSchema])) { + /* + * We've found a SQL file that matches a table in the + * database, but has no matching version info in the + * schema table. How can this be? Leave it alone. + */ + if ($gallery->getDebug()) { + $gallery->debug("Table $rawTableName: missing entry in Schema table"); + } + } else { + $gallery->guaranteeTimeLimit(20); + list ($major, $minor) = $tableVersions[$tableNameInSchema]; + if (!empty($moduleSql['remove'][$rawTableName][$major][$minor])) { + $ret = $this->_executeSql( + $moduleSql['remove'][$rawTableName][$major][$minor]); + if ($ret) { + return $ret; + } + } + } + } + } + + return null; + } + + /** + * @see GalleryStorage::unconfigureStore + */ + function unconfigureStore($moduleId) { + global $gallery; + $gallery->guaranteeTimeLimit(20); + + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + list ($ret, $moduleSql) = $this->_getModuleSql($moduleId); + if ($ret) { + return $ret; + } + + /* Get the metabase info about this database */ + $this->_gs->_traceStart(); + $metatables = $this->_gs->_db->MetaTables(); + $this->_gs->_traceStop(); + + /* + * Some databases (notably MySQL on Win32) don't support mixed case + * table names. So, when we get the meta table list back, it's lower + * case. Force all metatable listings to lower case and then expect + * them to be lowercase so that we're consistent. + */ + for ($i = 0; $i < count($metatables); $i++) { + $metatables[$i] = strtolower($metatables[$i]); + } + + /* + * Now take care of the rest of the tables. If the table doesn't + * exist, apply the current table definition. If it already exists, + * check to see if there is an upgrade available for the given table + * version. If so, apply it. + */ + list ($schemaTableName, $unused) = $this->_gs->_translateTableName('Schema'); + $schemaColumnName = $this->_gs->_translateColumnName('name'); + foreach ($moduleSql['table'] as $rawTableName => $ignored) { + /* Don't drop the schema table, it's part of the core. */ + if ($rawTableName == 'Schema') { + continue; + } + + $this->_gs->_traceStart(); + list ($tableName, $unused, $tableNameInSchema) = + $this->_gs->_translateTableName($rawTableName); + if (in_array(strtolower($tableName), $metatables)) { + /* Drop the table and yank it from the schema table */ + $dropQuery = sprintf('DROP TABLE %s', $tableName); + $recordSet = $this->_gs->_db->Execute($dropQuery); + if (empty($recordSet)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + $cleanQuery = sprintf('DELETE FROM %s where %s=?', + $schemaTableName, $schemaColumnName); + $recordSet = $this->_gs->_db->Execute($cleanQuery, array($tableNameInSchema)); + if (empty($recordSet)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + $this->_gs->_traceStop(); + } + + return null; + } + + /** + * Examine the schema table and return the version of all the Gallery tables + * + * @return array object GalleryStatus a status code + * array (name => (major, minor)) + * @access private + */ + function _loadTableVersions($ignoreCache=true) { + $cacheKey = 'GalleryStorageExtras::_loadTableVersions()'; + + /* If reset requested then ignore the cache and retrieve it again */ + if (!$ignoreCache && GalleryDataCache::containsKey($cacheKey)) { + return array(null, GalleryDataCache::get($cacheKey)); + } + + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + list ($schemaTableName) = $this->_gs->_translateTableName('Schema'); + $query = 'SELECT ' . $this->_gs->_translateColumnName('name') . ', ' + . $this->_gs->_translateColumnName('major') . ', ' + . $this->_gs->_translateColumnName('minor') . ' FROM ' . $schemaTableName; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query); + $this->_gs->_traceStop(); + + if (empty($recordSet)) { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + 'Error reading schema table'), null); + } + + $tableVersions = array(); + while ($row = $recordSet->FetchRow()) { + $tableVersions[$row[0]] = array($row[1], $row[2]); + } + + GalleryDataCache::put($cacheKey, $tableVersions); + + return array(null, $tableVersions); + } + + /** + * Execute a given SQL against the database. Prefix table and column names + * as necessary. Split multiple commands in the file into separate Execute() calls. + * + * @return object GalleryStatus a status code + * @access private + */ + function _executeSql($buffer) { + /* + * Split the file where semicolons are followed by a blank line.. + * PL/SQL blocks will have other semicolons, so we can't split on every one. + */ + foreach (preg_split('/; *\r?\n *\r?\n/s', $buffer) as $query) { + $query = trim($query); + if (!empty($query)) { + $query = str_replace('DB_TABLE_PREFIX', $this->_gs->_tablePrefix, $query); + $query = str_replace('DB_COLUMN_PREFIX', $this->_gs->_columnPrefix, $query); + + /* Perform database specific replacements */ + $query = strtr($query, $this->_gs->_getSqlReplacements()); + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query); + $this->_gs->_traceStop(); + if (empty($recordSet)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE, __FILE__, __LINE__, + "Error trying to run query: $query"); + } + } + } + + return null; + } + + /** + * @see GalleryStorage::executeSqlFile + */ + function executeSqlFile($fileName) { + global $gallery; + $platform =& $gallery->getPlatform(); + + if (!$platform->file_exists($fileName)) { + return GalleryCoreApi::error(ERROR_BAD_PATH, __FILE__, __LINE__, + "File $fileName does not exist"); + } + + if (($buffer = $platform->file_get_contents($fileName)) === false) { + return GalleryCoreApi::error(ERROR_BAD_PATH, __FILE__, __LINE__, + "Unable to read file $fileName"); + } + + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + $ret = $this->_executeSql($buffer); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryStorage::cleanStore + */ + function cleanStore() { + global $gallery; + $gallery->guaranteeTimeLimit(20); + + $ret = $this->_dbInit(true); + if ($ret) { + return $ret; + } + + /* Get the metabase info about this database */ + $this->_gs->_traceStart(); + $metatables = $this->_gs->_db->MetaTables(); + $this->_gs->_traceStop(); + + /* + * Some databases (notably MySQL on Win32) don't support mixed case + * table names. So, when we get the meta table list back, it's lower + * case. Force all metatable listings to lower case and then expect + * them to be lowercase so that we're consistent. + */ + for ($i = 0; $i < count($metatables); $i++) { + $metatables[$i] = strtolower($metatables[$i]); + } + + /* If the schema table exists then delete all the tables it lists */ + list ($schemaTableName, $unused) = $this->_gs->_translateTableName('Schema'); + if (in_array(strtolower($schemaTableName), $metatables)) { + /* Load all table versions */ + list ($ret, $tableVersions) = $this->_loadTableVersions(); + if ($ret) { + return $ret; + } + + foreach (array_keys($tableVersions) as $rawTableName) { + list ($tableName, $unused) = $this->_gs->_translateTableName($rawTableName); + $query = sprintf('DROP TABLE %s', $tableName); + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query); + $this->_gs->_traceStop(); + if (empty($recordSet)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + + /* Get rid of our sequences */ + foreach (array(DATABASE_SEQUENCE_LOCK, DATABASE_SEQUENCE_ID) as $sequenceId) { + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->DropSequence($this->_gs->_tablePrefix . $sequenceId); + $this->_gs->_traceStop(); + if (empty($recordSet)) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + } + + return null; + } + + /** + * @see GalleryStorage::getProfilingHtml + */ + function getProfilingHtml() { + if (!isset($this->_gs->_db)) { + return ''; + } + $this->_gs->_traceStart(); + $perf =& NewPerfMonitor($this->_gs->_db); + $buf = $perf->SuspiciousSQL(); + $buf .= $perf->ExpensiveSQL(); + $this->_gs->_traceStop(); + return $buf; + } + + /** + * @see GalleryStorage::isInstalled + */ + function isInstalled() { + $ret = $this->_dbInit(); + if ($ret) { + return array($ret, null); + } + + /* Get the metabase info about this database */ + $this->_gs->_traceStart(); + $metatables = $this->_gs->_db->MetaTables(); + $this->_gs->_traceStop(); + + list ($schemaTableName) = $this->_gs->_translateTableName('Schema'); + $isInstalled = preg_match("/\b$schemaTableName\b/i", implode(' ', $metatables)); + return array(null, $isInstalled); + } + + /** + * @see GalleryStorage::optimize + */ + function optimize($tableNames=null) { + global $gallery; + + $ret = $this->_dbInit(); + if ($ret) { + return $ret; + } + + /* Load all table versions */ + list ($ret, $tableVersions) = $this->_loadTableVersions(); + if ($ret) { + return $ret; + } + + /* Filter the list of tables if requested */ + $tables = array_keys($tableVersions); + if (is_array($tableNames)) { + $tables = array(); + foreach ($tableNames as $rawTableName) { + list ($tableName, $unused, $tableNameInSchema) = + $this->_gs->_translateTableName($rawTableName); + if (isset($tableVersions[$tableNameInSchema])) { + $tables[] = $tableNameInSchema; + } + } + } + + $statements = $this->_gs->_getOptimizeStatements(); + if (!empty($statements)) { + foreach ($statements as $statement) { + foreach ($tables as $tableName) { + $query = sprintf($statement, $this->_gs->_tablePrefix . $tableName); + $gallery->guaranteeTimeLimit(300); + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query); + $this->_gs->_traceStop(); + + if (!$recordSet) { + return GalleryCoreApi::error(ERROR_STORAGE_FAILURE); + } + } + } + } + + return null; + } + + /** + * @see GalleryStorage::getAffectedRows + */ + function getAffectedRows() { + $ret = $this->_dbInit(true); + if ($ret) { + return array($ret, null); + } + + $this->_gs->_traceStart(); + $affectedRows = $this->_gs->_db->Affected_Rows(); + $this->_gs->_traceStop(); + + return array(null, $affectedRows); + } + + /** + * Internal function to get clearance to acquire locks + * + * Request clearance to acquire locks and then wait until it's our turn. + * + * @param int $cutoffTime the time to stop trying to get clearance + * @return object GalleryStatus a status code + */ + function _getLockClearance($cutoffTime) { + /* Get the true name of the lock table */ + list ($lockTable, $unused) = $this->_gs->_translateTableName('Lock'); + + /* Acquire a non-transactional connection to use for this request */ + list ($ret, $db) = $this->_getNonTransactionalDatabaseConnection(); + if ($ret) { + return array($ret, null); + } + + /* Get a new lock id */ + $this->_gs->_traceStart(); + $lockId = $db->GenId($this->_gs->_tablePrefix . DATABASE_SEQUENCE_LOCK); + $this->_gs->_traceStop(); + if (empty($lockId)) { + return array(GalleryCoreApi::error( + ERROR_STORAGE_FAILURE, __FILE__, __LINE__, 'Empty sequence id!'), + null); + } + $lockId = (int)$lockId; + + /* Put in a lock request */ + $lockIdCol = $this->_gs->_translateColumnName('lockId'); + $requestCol = $this->_gs->_translateColumnName('request'); + $freshUntilCol = $this->_gs->_translateColumnName('freshUntil'); + $query = sprintf('INSERT INTO %s (%s, %s, %s) VALUES(?, 1, ?)', + $lockTable, $lockIdCol, $requestCol, $freshUntilCol); + $data = array($lockId, time() + 30); + + $this->_gs->_traceStart(); + $recordSet = $db->Execute($query, $data); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), null); + } + + /* Wait till it's our turn */ + while (true) { + $query = 'SELECT ' . $lockIdCol . ' FROM ' . $lockTable + . ' WHERE ' . $requestCol . '=1 ORDER BY ' . $lockIdCol . ' ASC'; + + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + $this->_gs->_traceStart(); + $recordSet = $db->SelectLimit($query, 1); + $this->_gs->_traceStop(); + if (!$recordSet) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), + null); + } + + $row = $recordSet->FetchRow(); + if ($row[0] == $lockId) { + break; + } + + /* Wait a second and try again */ + sleep(1); + + /* Expire any bogus locks */ + $ret = $this->_expireLocks(); + if ($ret) { + return array($ret, null); + } + + if (time() > $cutoffTime) { + $this->releaseLocks($lockId); + return array(GalleryCoreApi::error(ERROR_LOCK_TIMEOUT), null); + } + } + + return array(null, $lockId); + } + + /** + * Identify the type of entity associated with the id provided + * + * @param mixed $ids array of ids or single int id + * @return array a GalleryStatus and a string class name + */ + function _identifyEntities($ids) { + assert('!empty($ids)'); + + if (!is_array($ids)) { + $ids = array($ids); + $returnArray = false; + } else { + $returnArray = true; + } + + $checkIds = array(); + foreach ($ids as $id) { + if (!GalleryDataCache::containsKey("GalleryStorage::_identifyEntities($id)")) { + $checkIds[] = $id; + } + } + + $local = array(); + if (!empty($checkIds)) { + $idCol = $this->_gs->_translateColumnName('id'); + $entityTypeCol = $this->_gs->_translateColumnName('entityType'); + list ($table, $unused) = $this->_gs->_translateTableName('GalleryEntity'); + $markers = GalleryUtilities::makeMarkers(count($checkIds)); + $query = 'SELECT ' . $idCol . ', ' . $entityTypeCol + . ' FROM ' . $table . ' WHERE ' . $idCol . ' IN (' . $markers . ')'; + + $GLOBALS['ADODB_FETCH_MODE'] = ADODB_FETCH_NUM; + + $this->_gs->_traceStart(); + $recordSet = $this->_gs->_db->Execute($query, $checkIds); + $this->_gs->_traceStop(); + + if ($recordSet) { + while ($row = $recordSet->FetchRow()) { + if (empty($row[1])) { + return array( + GalleryCoreApi::error(ERROR_MISSING_OBJECT), null); + } else { + /* + * Save a copy locally, in case the global cache is disabled + * (like in the upgrader) + */ + $local[$row[0]] = $row[1]; + GalleryDataCache::put("GalleryStorage::_identifyEntities($row[0])", + $row[1], true); + } + } + } else { + return array(GalleryCoreApi::error(ERROR_STORAGE_FAILURE), + null); + } + } + + if ($returnArray) { + $results = array(); + foreach ($ids as $id) { + if (isset($local[$id])) { + $results[] = $local[$id]; + } else if (GalleryDataCache::containsKey( + "GalleryStorage::_identifyEntities($id)")) { + $results[] = GalleryDataCache::get("GalleryStorage::_identifyEntities($id)"); + } else { + return array(GalleryCoreApi::error(ERROR_MISSING_OBJECT, __FILE__, __LINE__, + "Missing object for $id"), null); + } + } + } else { + $results = GalleryDataCache::get("GalleryStorage::_identifyEntities($ids[0])"); + } + + return array(null, $results); + } + + /** + * Describe the members, modules and parent of an entity + * + * @param string $entityName a class name + * @param boolean $tryAllModules true if we should scan all modules, not just the active ones + * @access protected + * @return array object GalleryStatus a status code + * entity associative array + */ + function describeEntity($entityName, $tryAllModules=false) { + global $gallery; + + /* Note: keep these cache keys in sync with _clearEntityAndMapCache() */ + $cacheKey = "GalleryStorage::describeEntity()"; + $cacheParams = array('type' => 'module', + 'itemId' => 'GalleryStorage_describeEntity', + 'id' => '_all'); + + /* We only cache the results for active modules */ + if (!$tryAllModules) { + if (!GalleryDataCache::containsKey($cacheKey)) { + $entityInfo =& GalleryDataCache::getFromDisk($cacheParams); + if (!empty($entityInfo)) { + GalleryDataCache::put($cacheKey, $entityInfo); + } + } else { + $entityInfo = GalleryDataCache::get($cacheKey); + } + } + + if (!isset($entityInfo)) { + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return array($ret, null); + } + + $entityInfo = array(); + foreach ($moduleStatus as $moduleId => $moduleInfo) { + if (!$tryAllModules && empty($moduleInfo['active'])) { + continue; + } + + /* + * Don't use GalleryPlatform here because it can cause difficult-to-eliminate + * issues in the testing code when we use mock platforms. Once we have an + * abstraction layer around GalleryCoreApi we can use the platform here. + */ + $moduleDir = GalleryCoreApi::getPluginBaseDir('module', $moduleId); + if ($ret) { + return array($ret, null); + } + + $entitiesFile = sprintf('%smodules/%s/classes/Entities.inc', $moduleDir, $moduleId); + if (file_exists($entitiesFile)) { + include($entitiesFile); + } + } + + if (!$tryAllModules) { + GalleryDataCache::putToDisk($cacheParams, $entityInfo); + GalleryDataCache::put($cacheKey, $entityInfo); + } + } + + /* Fall back to all available modules */ + if (!$tryAllModules && !isset($entityInfo[$entityName])) { + list ($ret, $entityInfo) = $this->describeEntity($entityName, true); + if ($ret) { + return array($ret, null); + } + } + + /* + * Fall back on the parent class for any entities we don't recognize. This is mainly so + * that tests can create lightweight subclasses. Because PHP4 doesn't have case sensitive + * class names we have to do a linear time lookup. + * Don't use strcasecmp or strtolower because they are affected by locale. + */ + if (!isset($entityInfo[$entityName])) { + $parentClass = get_parent_class($entityName); + foreach (array_keys($entityInfo) as $candidate) { + if ($parentClass == $candidate || $parentClass == strtr($candidate, + 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijlkmnopqrstuvwxyz')) { + $entityInfo[$entityName] = array( + 'members' => array(), + 'parent' => $candidate, + 'module' => 'unknown'); + break; + } + } + } + + if (!isset($entityInfo[$entityName])) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER, __FILE__, __LINE__, + "Unknown entity type: $entityName"), null); + } + + return array(null, $entityInfo); + } + + /** + * Clear out the entity and map caches, which we should do any time we add or remove a table. + */ + function _clearEntityAndMapCache() { + /* Note: keep these cache keys in sync with describeMap() */ + GalleryDataCache::remove("GalleryStorage::describeMap()"); + GalleryDataCache::removeFromDisk(array('type' => 'module', + 'itemId' => 'GalleryStorage_describeMap', + 'id' => '_all')); + + /* Note: keep these cache keys in sync with describeEntity() */ + GalleryDataCache::remove("GalleryStorage::describeEntity()"); + GalleryDataCache::removeFromDisk(array('type' => 'module', + 'itemId' => 'GalleryStorage_describeEntity', + 'id' => '_all')); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/MSSqlStorage.class b/Source/gallery2/modules/core/classes/GalleryStorage/MSSqlStorage.class new file mode 100644 index 0000000..b9f1c5d --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/MSSqlStorage.class @@ -0,0 +1,205 @@ + + * @version $Revision: 15513 $ + */ +class MSSqlStorage extends GalleryStorage { + + /** + * Version info of database server + * @var string + * @access protected + */ + var $_serverInfo; + + function MSSqlStorage($config) { + $this->GalleryStorage($config); + $this->_isTransactional = true; + $this->_isEmptyAllowedForNotNullColumn = true; + + /* ADO_MSSql driver has different connection parameters.. set values it expects */ + $this->_hostname = 'PROVIDER=MSDASQL;DRIVER={SQL Server};SERVER=' . $this->_hostname + . ';DATABASE=' . $this->_database; + $this->_database = 'MSDASQL'; + } + + /** + * Return the type of this database + * @return string + */ + function getType() { + return 'mssql'; + } + + /** + * @see GalleryStorage::_getSqlReplacements + */ + function _getSqlReplacements() { + /* For SQL Server versions pre-2005, use type NTEXT. For 2005+, use NVARCHAR(MAX). */ + if (!$this->_serverInfo) { + if (preg_match("/(\d+(\.\d+)+)/", $this->getVersion(), $matches)) { + $this->_serverInfo = $matches[0]; + } else { + return array(); + } + } + + if (version_compare($this->_serverInfo, '9.0', '<')) { + return array('NVARCHAR(MAX)' => 'NTEXT'); + } else { + return array(); + } + } + + /** + * @see GalleryStorage::getFunctionsSql + */ + function getFunctionSql($functionName, $args) { + switch($functionName) { + case 'CONCAT': + foreach ($args as $key => $value) { + $args[$key] = 'CAST(' . $value . ' AS NVARCHAR)'; + } + $sql = implode(' + ', $args); + break; + + case 'BITAND': + /* Cast any input values as the 'bit' type */ + $sql = $args[0] . ' & ' . $args[1]; + break; + + case 'BIT_OR': + return array(GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION), null); + + case 'UNIX_TIMESTAMP': + $sql = 'DATEDIFF(s,1970-01-01 00:00:00, ' . $args[0] . ')'; + break; + + case 'AS': + $sql = 'AS'; + break; + + case 'SUBSTRING': + if (count($args) == 2) { + $args[2] = 'LEN(' . $args[0] . ') - ' . $args[1] . ' + 1'; + } + $sql = sprintf('SUBSTRING(%s)', implode(', ', $args)); + break; + + case 'RAND': + $sql = sprintf('NEWID()'); + break; + + case 'LIMIT': + $sql = preg_replace('/^(\s*SELECT)(\s)/i', '$1 TOP ' . $args[0] . '$2', $args[1]); + break; + + case 'CASE': + $sql = array(); + while (count($args) > 1) { + $sql[] = 'WHEN ' . array_shift($args) . ' THEN ' . array_shift($args); + } + $sql = 'CASE ' . implode(' ', $sql) . ' ELSE ' . $args[0] . ' END'; + break; + + case 'LIKE': + $sql = $args[0] . ' LIKE ' . $args[1]; + break; + + case 'MULTI_INSERT': + /* + * 0 - table name + * 1 - array of column names + * 2 - number of rows + */ + $markers = GalleryUtilities::makeMarkers(sizeof($args[1])); + $rowList = array_fill(0, $args[2], 'SELECT ' . $markers); + $sql = 'INSERT INTO ' . $args[0] . ' ('; + $sql .= implode(', ', $args[1]); + $sql .= ') ' . implode(' UNION ALL ', $rowList); + break; + + case 'AVG': + $sql = sprintf('AVG(CAST(%s AS FLOAT))', $args[0]); + break; + + default: + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED, __FILE__, __LINE__, + $functionName . ' ' . implode(' ', $args)), null); + } + + return array(null, $sql); + } + + /** + * Get database version. + * @return string version + */ + function getVersion() { + list ($ret, $tmpDb) = $this->_getConnection(true); + if ($ret) { + return $ret; + } + + $sql = 'SELECT @@VERSION'; + $this->_traceStart(); + $arr =& $tmpDb->GetArray($sql); + $this->_traceStop(); + + $tmpDb->Close(); + if (!empty($arr[0][0])) { + return rtrim($arr[0][0]); + } else { + return ''; + } + } + + /** + * @see GalleryStorage::_getOptimizeStatements + */ + function _getOptimizeStatements() { + return array('UPDATE STATISTICS %s'); + } + + /** + * @see GalleryStorage::encodeBlob + */ + function encodeBlob($blob) { + return addcslashes($blob, "\000..\037\047\134\177..\377"); + } + + /** + * @see GalleryStorage::decodeBlob + */ + function decodeBlob($blob) { + return stripcslashes($blob); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/OracleCreateBitOr.sql b/Source/gallery2/modules/core/classes/GalleryStorage/OracleCreateBitOr.sql new file mode 100644 index 0000000..8cec4a4 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/OracleCreateBitOr.sql @@ -0,0 +1,46 @@ + +-- Create BIT_OR aggregate function (requires Oracle 9i or higher) +-- Optional in a G2 Oracle instllation.. see BIT_OR comments in OracleStorage.class + +create or replace type BIT_OR_IMPL as object ( + val NUMBER, + static function ODCIAggregateInitialize(sctx IN OUT BIT_OR_IMPL) + return number, + member function ODCIAggregateIterate(self IN OUT BIT_OR_IMPL, + value IN number) return number, + member function ODCIAggregateTerminate(self IN OUT BIT_OR_IMPL, + returnValue OUT number, flags IN number) return number, + member function ODCIAggregateMerge(self IN OUT BIT_OR_IMPL, + ctx2 IN BIT_OR_IMPL) return number +); + +create or replace type body BIT_OR_IMPL is + static function ODCIAggregateInitialize(sctx IN OUT BIT_OR_IMPL) + return number is + begin + sctx := BIT_OR_IMPL(0); + return ODCIConst.Success; + end; + member function ODCIAggregateIterate(self IN OUT BIT_OR_IMPL, + value IN number) return number is + begin + self.val := (self.val + value) - BitAND(self.val, value); + return ODCIConst.Success; + end; + member function ODCIAggregateTerminate(self IN OUT BIT_OR_IMPL, + returnValue OUT number, flags IN number) return number is + begin + returnValue := self.val; + return ODCIConst.Success; + end; + member function ODCIAggregateMerge(self IN OUT BIT_OR_IMPL, + ctx2 IN BIT_OR_IMPL) return number is + begin + self.val := (self.val + ctx2.val) - BitAND(self.val, ctx2.val); + return ODCIConst.Success; + end; +end; +/ + +create or replace function BIT_OR(input number) return number + parallel_enable aggregate using BIT_OR_IMPL; diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/OracleStorage.class b/Source/gallery2/modules/core/classes/GalleryStorage/OracleStorage.class new file mode 100644 index 0000000..ae82bb1 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/OracleStorage.class @@ -0,0 +1,193 @@ + + * @version $Revision: 15513 $ + */ +class OracleStorage extends GalleryStorage { + + function OracleStorage($config) { + $this->GalleryStorage($config); + $this->_isTransactional = true; + $this->_isEmptyAllowedForNotNullColumn = false; + } + + /** + * Return the type of this database + * @return string + */ + function getType() { + return 'oracle'; + } + + /** + * @see GalleryStorage::_setConnectionSettings + */ + function _setConnectionSettings(&$db) { + /* May cause "ORA-12705: Cannot access NLS data files or invalid environment specified" */ + /* @putenv("NLS_LANG=UTF8"); */ + + return null; + } + + /** + * @see GalleryStorage::getFunctionsSql + */ + function getFunctionSql($functionName, $args) { + switch($functionName) { + case 'CONCAT': + $sql = implode(' || ', $args); + break; + + case 'BITAND': + $sql = 'BITAND(' . $args[0] . ',' . $args[1] . ')'; + break; + + case 'BIT_OR': + /* + * By default don't use BIT_OR aggregate, but OR together values in PHP. + * Performing BIT_OR in the database may boost performance a bit; to do + * this, see OracleCreateBitOr.sql in this directory and run the statements + * with sqlplus. Then uncomment the line below: + */ + /* return array(null, 'BIT_OR(' . $args[0] . ')'); */ + return array(GalleryCoreApi::error(ERROR_UNSUPPORTED_OPERATION), null); + break; + + case 'AS': + $sql = ''; + break; + + case 'SUBSTRING': + $sql = sprintf('SUBSTR(%s)', implode(', ', $args)); + break; + + case 'RAND': + if (!empty($args)) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED, __FILE__, __LINE__, + $functionName . ' ' . implode(' ', $args)), null); + } + $sql = 'DBMS_RANDOM.RANDOM'; + break; + + case 'LIMIT': + $sql = 'SELECT * FROM (' . $args[1] . ') WHERE ROWNUM <= ' . $args[0]; + break; + + case 'CASE': + $sql = array(); + while (count($args) > 1) { + $sql[] = 'WHEN ' . array_shift($args) . ' THEN ' . array_shift($args); + } + $sql = 'CASE ' . implode(' ', $sql) . ' ELSE ' . $args[0] . ' END'; + break; + + case 'LIKE': + $sql = $args[0] . ' LIKE ' . $args[1]; + break; + + case 'MULTI_INSERT': + /* + * 0 - table name + * 1 - array of column names + * 2 - number of rows + */ + $markers = GalleryUtilities::makeMarkers(sizeof($args[1])); + $rowList = array_fill(0, $args[2], 'SELECT ' . $markers . ' FROM DUAL'); + $sql = 'INSERT INTO ' . $args[0] . ' ('; + $sql .= implode(', ', $args[1]); + $sql .= ') ' . implode(' UNION ALL ', $rowList); + break; + + case 'AVG': + $sql = sprintf('AVG(%s)', $args[0]); + break; + + default: + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED, __FILE__, __LINE__, + $functionName . ' ' . implode(' ', $args)), null); + } + + return array(null, $sql); + } + + /** + * Get database version. + * @return string version + */ + function getVersion() { + if (function_exists('oci_server_version')) { + if (!isset($this->_db)) { + list ($ret, $this->_db) = $this->_getConnection(); + if ($ret) { + /* Try to fallback */ + return ociserverversion(); + } + } + return oci_server_version($this->_db->_connectionID); + } + return ociserverversion(); + } + + /** + * @see GalleryStorage::_getOptimizeStatements + */ + function _getOptimizeStatements() { + /* Is this the right command to use? */ + return array('ANALYZE TABLE %s COMPUTE STATISTICS'); + } + + /** + * @see GalleryStorage::_normalizeValue + */ + function _normalizeValue($value, $memberData, $fromDb=false) { + if ($fromDb && is_null($value) && ($memberData['type'] == STORAGE_TYPE_STRING + || $memberData['type'] == STORAGE_TYPE_TEXT)) { + return ''; + } else { + return parent::_normalizeValue($value, $memberData, $fromDb); + } + } + + /** + * Derived from PostgreSqlStorage::encodeBlob and adjusted for Oracle (based on experiments). + * @see GalleryStorage::decodeBlob + */ + function encodeBlob($blob) { + /* See: http://www.postgresql.org/docs/8.1/interactive/datatype-binary.html */ + return addcslashes($blob, "\000..\037\134\177..\377"); + } + + /** + * @see GalleryStorage::decodeBlob + */ + function decodeBlob($blob) { + return stripcslashes($blob); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/PostgreSqlStorage.class b/Source/gallery2/modules/core/classes/GalleryStorage/PostgreSqlStorage.class new file mode 100644 index 0000000..695d832 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/PostgreSqlStorage.class @@ -0,0 +1,243 @@ + + * @version $Revision: 15513 $ + */ +class PostgreSqlStorage extends GalleryStorage { + + function PostgreSqlStorage($config) { + $this->GalleryStorage($config); + $this->_isTransactional = true; + } + + /** + * Return the type of this database + * @return string + */ + function getType() { + return 'postgres'; + } + + /** + * @see GalleryStorage::cleanStore + */ + function cleanStore() { + $ret = parent::cleanStore(); + if ($ret) { + return $ret; + } + + /* + * Use a temporary database connection such that possible errors when dropping the bit_or + * function don't affect the main transaction. + */ + list ($ret, $tmpDb) = $this->_getConnection(true); + if ($ret) { + return $ret; + } + + /* Ignore errors when trying to drop the bit_or function */ + $this->_traceStart(); + $recordSet = $tmpDb->Execute('DROP AGGREGATE BIT_OR(bit)'); + $tmpDb->Close(); + $this->_traceStop(); + + return null; + } + + /** + * @see GalleryStorage::configureStore + */ + function configureStore($moduleId, $upgradeInfo=array()) { + if ($moduleId == 'core') { + $query = ' + CREATE AGGREGATE BIT_OR + ( + basetype = bit, + sfunc = bitor, + stype = bit + )'; + + /* Create a temporary database connection and install our custom aggregate function */ + list ($ret, $tmpDb) = $this->_getConnection(true); + if ($ret) { + return $ret; + } + + $this->_traceStart(); + $recordSet = $tmpDb->Execute($query); + $tmpDb->Close(); + $this->_traceStop(); + + /* + * Ignore errors here, since we'll get them every time we try to + * install the aggregate, which will happen every time we upgrade core + * or install in a database with another Gallery already present. + * + * XXX: At some point figure out a way to detect if the aggregate is + * already there before trying to install it again. + */ + } + + $ret = parent::configureStore($moduleId, $upgradeInfo); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryStorage::convertIntToBits + */ + function convertIntToBits($intVal) { + return sprintf("%032b", $intVal); + } + + /** + * @see GalleryStorage::convertBitsToInt + */ + function convertBitsToInt($bitsVal) { + return bindec($bitsVal); + } + + /** + * @see GalleryStorage::getFunctionsSql + */ + function getFunctionSql($functionName, $args) { + switch($functionName) { + case 'CONCAT': + $sql = implode(' || ', $args); + break; + + case 'BITAND': + /* Cast any input values as the 'bit' type */ + $args = str_replace('?', '?', $args); + $sql = $args[0] . ' & ' . $args[1]; + break; + + case 'BIT_OR': + $sql = 'BIT_OR(' . $args[0] . ')'; + break; + + case 'UNIX_TIMESTAMP': + $sql = 'date_part(\'epoch\', ' . $args[0] . ')'; + break; + + case 'AS': + $sql = 'AS'; + break; + + case 'SUBSTRING': + $sql = sprintf('SUBSTRING(%s)', implode(', ', $args)); + break; + + case 'RAND': + $sql = sprintf('RANDOM(%s)', empty($args) ? '' : $args[0]); + break; + + case 'LIMIT': + $sql = $args[1] . ' LIMIT ' . $args[0]; + break; + + case 'CASE': + $sql = array(); + while (count($args) > 1) { + $sql[] = 'WHEN ' . array_shift($args) . ' THEN ' . array_shift($args); + } + $sql = 'CASE ' . implode(' ', $sql) . ' ELSE ' . $args[0] . ' END'; + break; + + case 'LIKE': + $sql = $args[0] . ' LIKE ' . $args[1]; + break; + + case 'MULTI_INSERT': + /* + * 0 - table name + * 1 - array of column names + * 2 - number of rows + */ + $markers = GalleryUtilities::makeMarkers(sizeof($args[1])); + $rowList = rtrim(str_repeat('SELECT ' . $markers . ' UNION ALL ', $args[2]), + 'UNION ALL '); + $sql = 'INSERT INTO ' . $args[0] . ' ('; + $sql .= join(', ', $args[1]); + $sql .= ') ' . $rowList; + break; + + case 'AVG': + $sql = sprintf('AVG(%s)', $args[0]); + break; + + default: + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED, __FILE__, __LINE__, + $functionName . ' ' . implode(' ', $args)), null); + } + + return array(null, $sql); + } + + /** + * Get database version. + * @return string version + */ + function getVersion() { + if (function_exists('pg_version')) { + return implode(' ', pg_version()); + } + return null; + } + + /** + * @see GalleryStorage::_getOptimizeStatements + */ + function _getOptimizeStatements() { + return array('VACUUM ANALYZE VERBOSE %s'); + } + + /** + * @see GalleryStorage::encodeBlob + * + * Note: pg_escape_bytea is only available in PHP 4.2.0+ and is even a little + * slower than addcslashes. + */ + function encodeBlob($blob) { + /* See: http://www.postgresql.org/docs/8.1/interactive/datatype-binary.html */ + return addcslashes($blob, "\000..\037\047\134\177..\377"); + } + + /** + * @see GalleryStorage::decodeBlob + */ + function decodeBlob($blob) { + return stripcslashes($blob); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/g2_db2.jar b/Source/gallery2/modules/core/classes/GalleryStorage/g2_db2.jar new file mode 100644 index 0000000..a0ec994 Binary files /dev/null and b/Source/gallery2/modules/core/classes/GalleryStorage/g2_db2.jar differ diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/schema.tpl b/Source/gallery2/modules/core/classes/GalleryStorage/schema.tpl new file mode 100644 index 0000000..c3e14ad --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/schema.tpl @@ -0,0 +1,5018 @@ +## mysql +# A_GalleryAccessMap_1.0 +ALTER TABLE DB_TABLE_PREFIXAccessMap + DROP INDEX DB_COLUMN_PREFIXaccessListId, + ADD COLUMN DB_COLUMN_PREFIXuserOrGroupId int(11) NOT NULL DEFAULT '0'; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryAccessMap_1.1 +ALTER TABLE DB_TABLE_PREFIXAccessMap + DROP COLUMN DB_COLUMN_PREFIXuserId, + DROP COLUMN DB_COLUMN_PREFIXgroupId, + ADD PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId), + ADD INDEX DB_TABLE_PREFIXAccessMap_48775(DB_COLUMN_PREFIXuserOrGroupId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryAccessMap_1.2 +ALTER TABLE DB_TABLE_PREFIXAccessMap + ADD INDEX DB_TABLE_PREFIXAccessMap_83732(DB_COLUMN_PREFIXaccessListId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GalleryAlbumItem_1.0 +ALTER TABLE DB_TABLE_PREFIXAlbumItem + DROP COLUMN DB_COLUMN_PREFIXlayout; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AlbumItem' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryCacheMap_1.0 +ALTER TABLE DB_TABLE_PREFIXCacheMap + DROP INDEX DB_TABLE_PREFIXCacheMap_81545, + DROP INDEX DB_TABLE_PREFIXCacheMap_24286, + DROP INDEX DB_TABLE_PREFIXCacheMap_69068, + ADD COLUMN DB_COLUMN_PREFIXisEmpty int(1), + ADD INDEX DB_TABLE_PREFIXCacheMap_21979(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='CacheMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryDerivative_1.0 +ALTER TABLE DB_TABLE_PREFIXDerivative + ADD COLUMN DB_COLUMN_PREFIXisBroken int(1); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Derivative' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.0 +ALTER TABLE DB_TABLE_PREFIXEntity + ADD COLUMN DB_COLUMN_PREFIXonLoadHandlers varchar(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.1 +ALTER TABLE DB_TABLE_PREFIXEntity + ADD INDEX DB_TABLE_PREFIXEntity_44738(DB_COLUMN_PREFIXlinkId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryGroup_1.0 +ALTER TABLE DB_TABLE_PREFIXGroup + MODIFY COLUMN DB_COLUMN_PREFIXgroupName varchar(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Group' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.0 +ALTER TABLE DB_TABLE_PREFIXItem + ADD COLUMN DB_COLUMN_PREFIXoriginationTimestamp int(11); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.1 +ALTER TABLE DB_TABLE_PREFIXItem + ADD COLUMN DB_COLUMN_PREFIXrenderer varchar(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginMap + MODIFY COLUMN DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL, + MODIFY COLUMN DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginPackageMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap + ADD COLUMN DB_COLUMN_PREFIXlocked int(1) NOT NULL DEFAULT '0'; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginPackageMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap + MODIFY COLUMN DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL, + MODIFY COLUMN DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.1 +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginParameterMap_1.2 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap + MODIFY COLUMN DB_COLUMN_PREFIXparameterValue text NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GallerySessionMap_1.0 +ALTER TABLE DB_TABLE_PREFIXSessionMap + MODIFY COLUMN DB_COLUMN_PREFIXdata longtext; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='SessionMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.0 +ALTER TABLE DB_TABLE_PREFIXUser + MODIFY COLUMN DB_COLUMN_PREFIXemail varchar(255); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.1 +ALTER TABLE DB_TABLE_PREFIXUser + ADD COLUMN DB_COLUMN_PREFIXlocked int(1) DEFAULT '0'; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_Schema_1.0 +ALTER TABLE DB_TABLE_PREFIXSchema + ADD COLUMN DB_COLUMN_PREFIXcreateSql text; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_Schema_1.1 +ALTER TABLE DB_TABLE_PREFIXSchema + ADD COLUMN DB_COLUMN_PREFIXpluginId varchar(32), + ADD COLUMN DB_COLUMN_PREFIXtype varchar(32), + ADD COLUMN DB_COLUMN_PREFIXinfo text; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# ExternalIdMap +CREATE TABLE DB_TABLE_PREFIXExternalIdMap( + DB_COLUMN_PREFIXexternalId varchar(128) NOT NULL, + DB_COLUMN_PREFIXentityType varchar(32) NOT NULL, + DB_COLUMN_PREFIXentityId int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ExternalIdMap', 1, 0); + +# FailedLoginsMap +CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap( + DB_COLUMN_PREFIXuserName varchar(32) NOT NULL, + DB_COLUMN_PREFIXcount int(11) NOT NULL, + DB_COLUMN_PREFIXlastAttempt int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXuserName) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FailedLoginsMap', 1, 0); + +# GalleryAccessMap +CREATE TABLE DB_TABLE_PREFIXAccessMap( + DB_COLUMN_PREFIXaccessListId int(11) NOT NULL, + DB_COLUMN_PREFIXuserOrGroupId int(11) NOT NULL, + DB_COLUMN_PREFIXpermission int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId), + INDEX DB_TABLE_PREFIXAccessMap_83732(DB_COLUMN_PREFIXaccessListId), + INDEX DB_TABLE_PREFIXAccessMap_48775(DB_COLUMN_PREFIXuserOrGroupId), + INDEX DB_TABLE_PREFIXAccessMap_18058(DB_COLUMN_PREFIXpermission) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessMap', 1, 3); + +# GalleryAccessSubscriberMap +CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap( + DB_COLUMN_PREFIXitemId int(11) NOT NULL, + DB_COLUMN_PREFIXaccessListId int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXitemId), + INDEX DB_TABLE_PREFIXAccessSubscriberMap_83732(DB_COLUMN_PREFIXaccessListId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessSubscriberMap', 1, 0); + +# GalleryAlbumItem +CREATE TABLE DB_TABLE_PREFIXAlbumItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXtheme varchar(32), + DB_COLUMN_PREFIXorderBy varchar(128), + DB_COLUMN_PREFIXorderDirection varchar(32), + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AlbumItem', 1, 1); + +# GalleryAnimationItem +CREATE TABLE DB_TABLE_PREFIXAnimationItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXwidth int(11), + DB_COLUMN_PREFIXheight int(11), + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AnimationItem', 1, 0); + +# GalleryCacheMap +CREATE TABLE DB_TABLE_PREFIXCacheMap( + DB_COLUMN_PREFIXkey varchar(32) NOT NULL, + DB_COLUMN_PREFIXvalue longtext, + DB_COLUMN_PREFIXuserId int(11) NOT NULL, + DB_COLUMN_PREFIXitemId int(11) NOT NULL, + DB_COLUMN_PREFIXtype varchar(32) NOT NULL, + DB_COLUMN_PREFIXtimestamp int(11) NOT NULL, + DB_COLUMN_PREFIXisEmpty int(1), + PRIMARY KEY(DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype), + INDEX DB_TABLE_PREFIXCacheMap_75985(DB_COLUMN_PREFIXitemId), + INDEX DB_TABLE_PREFIXCacheMap_21979(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('CacheMap', 1, 1); + +# GalleryChildEntity +CREATE TABLE DB_TABLE_PREFIXChildEntity( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXparentId int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXid), + INDEX DB_TABLE_PREFIXChildEntity_52718(DB_COLUMN_PREFIXparentId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ChildEntity', 1, 0); + +# GalleryDataItem +CREATE TABLE DB_TABLE_PREFIXDataItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXmimeType varchar(128), + DB_COLUMN_PREFIXsize int(11), + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DataItem', 1, 0); + +# GalleryDerivative +CREATE TABLE DB_TABLE_PREFIXDerivative( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXderivativeSourceId int(11) NOT NULL, + DB_COLUMN_PREFIXderivativeOperations varchar(255), + DB_COLUMN_PREFIXderivativeOrder int(11) NOT NULL, + DB_COLUMN_PREFIXderivativeSize int(11), + DB_COLUMN_PREFIXderivativeType int(11) NOT NULL, + DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL, + DB_COLUMN_PREFIXpostFilterOperations varchar(255), + DB_COLUMN_PREFIXisBroken int(1), + PRIMARY KEY(DB_COLUMN_PREFIXid), + INDEX DB_TABLE_PREFIXDerivative_85338(DB_COLUMN_PREFIXderivativeSourceId), + INDEX DB_TABLE_PREFIXDerivative_25243(DB_COLUMN_PREFIXderivativeOrder), + INDEX DB_TABLE_PREFIXDerivative_97216(DB_COLUMN_PREFIXderivativeType) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Derivative', 1, 1); + +# GalleryDerivativeImage +CREATE TABLE DB_TABLE_PREFIXDerivativeImage( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXwidth int(11), + DB_COLUMN_PREFIXheight int(11), + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativeImage', 1, 0); + +# GalleryDerivativePreferencesMap +CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap( + DB_COLUMN_PREFIXitemId int(11), + DB_COLUMN_PREFIXorder int(11), + DB_COLUMN_PREFIXderivativeType int(11), + DB_COLUMN_PREFIXderivativeOperations varchar(255), + INDEX DB_TABLE_PREFIXDerivativePrefsMap_75985(DB_COLUMN_PREFIXitemId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativePrefsMap', 1, 0); + +# GalleryDescendentCountsMap +CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap( + DB_COLUMN_PREFIXuserId int(11) NOT NULL, + DB_COLUMN_PREFIXitemId int(11) NOT NULL, + DB_COLUMN_PREFIXdescendentCount int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DescendentCountsMap', 1, 0); + +# GalleryEntity +CREATE TABLE DB_TABLE_PREFIXEntity( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp int(11) NOT NULL, + DB_COLUMN_PREFIXisLinkable int(1) NOT NULL, + DB_COLUMN_PREFIXlinkId int(11), + DB_COLUMN_PREFIXmodificationTimestamp int(11) NOT NULL, + DB_COLUMN_PREFIXserialNumber int(11) NOT NULL, + DB_COLUMN_PREFIXentityType varchar(32) NOT NULL, + DB_COLUMN_PREFIXonLoadHandlers varchar(128), + PRIMARY KEY(DB_COLUMN_PREFIXid), + INDEX DB_TABLE_PREFIXEntity_76255(DB_COLUMN_PREFIXcreationTimestamp), + INDEX DB_TABLE_PREFIXEntity_35978(DB_COLUMN_PREFIXisLinkable), + INDEX DB_TABLE_PREFIXEntity_44738(DB_COLUMN_PREFIXlinkId), + INDEX DB_TABLE_PREFIXEntity_63025(DB_COLUMN_PREFIXmodificationTimestamp), + INDEX DB_TABLE_PREFIXEntity_60702(DB_COLUMN_PREFIXserialNumber) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Entity', 1, 2); + +# GalleryFactoryMap +CREATE TABLE DB_TABLE_PREFIXFactoryMap( + DB_COLUMN_PREFIXclassType varchar(128), + DB_COLUMN_PREFIXclassName varchar(128), + DB_COLUMN_PREFIXimplId varchar(128), + DB_COLUMN_PREFIXimplPath varchar(128), + DB_COLUMN_PREFIXimplModuleId varchar(128), + DB_COLUMN_PREFIXhints varchar(255), + DB_COLUMN_PREFIXorderWeight varchar(255) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FactoryMap', 1, 0); + +# GalleryFileSystemEntity +CREATE TABLE DB_TABLE_PREFIXFileSystemEntity( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXpathComponent varchar(128), + PRIMARY KEY(DB_COLUMN_PREFIXid), + INDEX DB_TABLE_PREFIXFileSystemEntity_3406(DB_COLUMN_PREFIXpathComponent) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FileSystemEntity', 1, 0); + +# GalleryGroup +CREATE TABLE DB_TABLE_PREFIXGroup( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXgroupType int(11) NOT NULL, + DB_COLUMN_PREFIXgroupName varchar(128), + PRIMARY KEY(DB_COLUMN_PREFIXid), + UNIQUE (DB_COLUMN_PREFIXgroupName) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Group', 1, 1); + +# GalleryItem +CREATE TABLE DB_TABLE_PREFIXItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXcanContainChildren int(1) NOT NULL, + DB_COLUMN_PREFIXdescription text, + DB_COLUMN_PREFIXkeywords varchar(255), + DB_COLUMN_PREFIXownerId int(11) NOT NULL, + DB_COLUMN_PREFIXrenderer varchar(128), + DB_COLUMN_PREFIXsummary varchar(255), + DB_COLUMN_PREFIXtitle varchar(128), + DB_COLUMN_PREFIXviewedSinceTimestamp int(11) NOT NULL, + DB_COLUMN_PREFIXoriginationTimestamp int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXid), + INDEX DB_TABLE_PREFIXItem_99070(DB_COLUMN_PREFIXkeywords), + INDEX DB_TABLE_PREFIXItem_21573(DB_COLUMN_PREFIXownerId), + INDEX DB_TABLE_PREFIXItem_54147(DB_COLUMN_PREFIXsummary), + INDEX DB_TABLE_PREFIXItem_90059(DB_COLUMN_PREFIXtitle) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Item', 1, 2); + +# GalleryItemAttributesMap +CREATE TABLE DB_TABLE_PREFIXItemAttributesMap( + DB_COLUMN_PREFIXitemId int(11) NOT NULL, + DB_COLUMN_PREFIXviewCount int(11), + DB_COLUMN_PREFIXorderWeight int(11), + DB_COLUMN_PREFIXparentSequence varchar(255) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXitemId), + INDEX DB_TABLE_PREFIXItemAttributesMap_95270(DB_COLUMN_PREFIXparentSequence) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ItemAttributesMap', 1, 0); + +# GalleryMaintenanceMap +CREATE TABLE DB_TABLE_PREFIXMaintenanceMap( + DB_COLUMN_PREFIXrunId int(11) NOT NULL, + DB_COLUMN_PREFIXtaskId varchar(128) NOT NULL, + DB_COLUMN_PREFIXtimestamp int(11), + DB_COLUMN_PREFIXsuccess int(1), + DB_COLUMN_PREFIXdetails text, + PRIMARY KEY(DB_COLUMN_PREFIXrunId), + INDEX DB_TABLE_PREFIXMaintenanceMap_21687(DB_COLUMN_PREFIXtaskId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MaintenanceMap', 1, 0); + +# GalleryMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXMimeTypeMap( + DB_COLUMN_PREFIXextension varchar(32) NOT NULL, + DB_COLUMN_PREFIXmimeType varchar(32) NOT NULL, + DB_COLUMN_PREFIXviewable int(1), + PRIMARY KEY(DB_COLUMN_PREFIXextension) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MimeTypeMap', 1, 0); + +# GalleryMovieItem +CREATE TABLE DB_TABLE_PREFIXMovieItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXwidth int(11), + DB_COLUMN_PREFIXheight int(11), + DB_COLUMN_PREFIXduration int(11), + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MovieItem', 1, 0); + +# GalleryPermissionSetMap +CREATE TABLE DB_TABLE_PREFIXPermissionSetMap( + DB_COLUMN_PREFIXmodule varchar(128) NOT NULL, + DB_COLUMN_PREFIXpermission varchar(128) NOT NULL, + DB_COLUMN_PREFIXdescription varchar(255), + DB_COLUMN_PREFIXbits int(11) NOT NULL, + DB_COLUMN_PREFIXflags int(11) NOT NULL, + UNIQUE (DB_COLUMN_PREFIXpermission) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PermissionSetMap', 1, 0); + +# GalleryPhotoItem +CREATE TABLE DB_TABLE_PREFIXPhotoItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXwidth int(11), + DB_COLUMN_PREFIXheight int(11), + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PhotoItem', 1, 0); + +# GalleryPluginMap +CREATE TABLE DB_TABLE_PREFIXPluginMap( + DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL, + DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL, + DB_COLUMN_PREFIXactive int(1) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginMap', 1, 1); + +# GalleryPluginPackageMap +CREATE TABLE DB_TABLE_PREFIXPluginPackageMap( + DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL, + DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL, + DB_COLUMN_PREFIXpackageName varchar(32) NOT NULL, + DB_COLUMN_PREFIXpackageVersion varchar(32) NOT NULL, + DB_COLUMN_PREFIXpackageBuild varchar(32) NOT NULL, + DB_COLUMN_PREFIXlocked int(1) NOT NULL, + INDEX DB_TABLE_PREFIXPluginPackageMap_80596(DB_COLUMN_PREFIXpluginType) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginPackageMap', 1, 1); + +# GalleryPluginParameterMap +CREATE TABLE DB_TABLE_PREFIXPluginParameterMap( + DB_COLUMN_PREFIXpluginType varchar(32) NOT NULL, + DB_COLUMN_PREFIXpluginId varchar(32) NOT NULL, + DB_COLUMN_PREFIXitemId int(11) NOT NULL, + DB_COLUMN_PREFIXparameterName varchar(128) NOT NULL, + DB_COLUMN_PREFIXparameterValue text NOT NULL, + UNIQUE (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName), + INDEX DB_TABLE_PREFIXPluginParameterMap_80596(DB_COLUMN_PREFIXpluginType), + INDEX DB_TABLE_PREFIXPluginParameterMap_12808(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginParameterMap', 1, 3); + +# GalleryRecoverPasswordMap +CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap( + DB_COLUMN_PREFIXuserName varchar(32) NOT NULL, + DB_COLUMN_PREFIXauthString varchar(32) NOT NULL, + DB_COLUMN_PREFIXrequestExpires int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXuserName) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('RecoverPasswordMap', 1, 1); + +# GallerySessionMap +CREATE TABLE DB_TABLE_PREFIXSessionMap( + DB_COLUMN_PREFIXid varchar(32) NOT NULL, + DB_COLUMN_PREFIXuserId int(11) NOT NULL, + DB_COLUMN_PREFIXremoteIdentifier varchar(128) NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp int(11) NOT NULL, + DB_COLUMN_PREFIXmodificationTimestamp int(11) NOT NULL, + DB_COLUMN_PREFIXdata longtext, + PRIMARY KEY(DB_COLUMN_PREFIXid), + INDEX DB_TABLE_PREFIXSessionMap_53500(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('SessionMap', 1, 1); + +# GalleryToolkitOperationMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMap( + DB_COLUMN_PREFIXname varchar(128) NOT NULL, + DB_COLUMN_PREFIXparametersCrc varchar(32) NOT NULL, + DB_COLUMN_PREFIXoutputMimeType varchar(128), + DB_COLUMN_PREFIXdescription varchar(255), + PRIMARY KEY(DB_COLUMN_PREFIXname) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMap', 1, 0); + +# GalleryToolkitOperationMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap( + DB_COLUMN_PREFIXoperationName varchar(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId varchar(128) NOT NULL, + DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL, + DB_COLUMN_PREFIXpriority int(11) NOT NULL, + INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_2014(DB_COLUMN_PREFIXoperationName), + INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_79463(DB_COLUMN_PREFIXmimeType) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMimeTypeMap', 1, 0); + +# GalleryToolkitOperationParameterMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap( + DB_COLUMN_PREFIXoperationName varchar(128) NOT NULL, + DB_COLUMN_PREFIXposition int(11) NOT NULL, + DB_COLUMN_PREFIXtype varchar(128) NOT NULL, + DB_COLUMN_PREFIXdescription varchar(255), + INDEX DB_TABLE_PREFIXTkOperatnParameterMap_2014(DB_COLUMN_PREFIXoperationName) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnParameterMap', 1, 0); + +# GalleryToolkitPropertyMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMap( + DB_COLUMN_PREFIXname varchar(128) NOT NULL, + DB_COLUMN_PREFIXtype varchar(128) NOT NULL, + DB_COLUMN_PREFIXdescription varchar(128) NOT NULL +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMap', 1, 0); + +# GalleryToolkitPropertyMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap( + DB_COLUMN_PREFIXpropertyName varchar(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId varchar(128) NOT NULL, + DB_COLUMN_PREFIXmimeType varchar(128) NOT NULL, + INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_52881(DB_COLUMN_PREFIXpropertyName), + INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_79463(DB_COLUMN_PREFIXmimeType) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMimeTypeMap', 1, 0); + +# GalleryUnknownItem +CREATE TABLE DB_TABLE_PREFIXUnknownItem( + DB_COLUMN_PREFIXid int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXid) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UnknownItem', 1, 0); + +# GalleryUser +CREATE TABLE DB_TABLE_PREFIXUser( + DB_COLUMN_PREFIXid int(11) NOT NULL, + DB_COLUMN_PREFIXuserName varchar(32) NOT NULL, + DB_COLUMN_PREFIXfullName varchar(128), + DB_COLUMN_PREFIXhashedPassword varchar(128), + DB_COLUMN_PREFIXemail varchar(255), + DB_COLUMN_PREFIXlanguage varchar(128), + DB_COLUMN_PREFIXlocked int(1) DEFAULT '0', + PRIMARY KEY(DB_COLUMN_PREFIXid), + UNIQUE (DB_COLUMN_PREFIXuserName) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('User', 1, 2); + +# GalleryUserGroupMap +CREATE TABLE DB_TABLE_PREFIXUserGroupMap( + DB_COLUMN_PREFIXuserId int(11) NOT NULL, + DB_COLUMN_PREFIXgroupId int(11) NOT NULL, + INDEX DB_TABLE_PREFIXUserGroupMap_69068(DB_COLUMN_PREFIXuserId), + INDEX DB_TABLE_PREFIXUserGroupMap_89328(DB_COLUMN_PREFIXgroupId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UserGroupMap', 1, 0); + +# Lock +CREATE TABLE DB_TABLE_PREFIXLock( + DB_COLUMN_PREFIXlockId int(11), + DB_COLUMN_PREFIXreadEntityId int(11), + DB_COLUMN_PREFIXwriteEntityId int(11), + DB_COLUMN_PREFIXfreshUntil int(11), + DB_COLUMN_PREFIXrequest int(11), + INDEX DB_TABLE_PREFIXLock_11039(DB_COLUMN_PREFIXlockId) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Lock', 1, 0); + +# R_GalleryCache_1.0 +DROP TABLE DB_TABLE_PREFIXCache; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='Cache'; + +# R_GalleryItemPropertiesMap_1.0 +DROP TABLE DB_TABLE_PREFIXItemPropertiesMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='ItemPropertiesMap'; + +# R_GalleryPermissionMap_1.0 +DROP TABLE DB_TABLE_PREFIXPermissionMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='PermissionMap'; + +# Schema +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname varchar(128) NOT NULL, + DB_COLUMN_PREFIXmajor int(11) NOT NULL, + DB_COLUMN_PREFIXminor int(11) NOT NULL, + DB_COLUMN_PREFIXcreateSql text, + DB_COLUMN_PREFIXpluginId varchar(32), + DB_COLUMN_PREFIXtype varchar(32), + DB_COLUMN_PREFIXinfo text, + PRIMARY KEY(DB_COLUMN_PREFIXname) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 2); + +# T_InstallerTest_1 +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname varchar(128) NOT NULL, + DB_COLUMN_PREFIXmajor int(11) NOT NULL, + DB_COLUMN_PREFIXminor int(11) NOT NULL, + PRIMARY KEY(DB_COLUMN_PREFIXname) +) DB_TABLE_TYPE +/*!40100 DEFAULT CHARACTER SET utf8 */; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 0); + +# T_InstallerTest_2 +ALTER TABLE DB_TABLE_PREFIXSchema + ADD COLUMN DB_COLUMN_PREFIXtestCol varchar(128), + ADD INDEX DB_TABLE_PREFIXSchema_18169(DB_COLUMN_PREFIXtestCol); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# T_InstallerTest_3 +ALTER TABLE DB_TABLE_PREFIXSchema + DROP INDEX DB_TABLE_PREFIXSchema_18169; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# T_InstallerTest_4 +DROP TABLE DB_TABLE_PREFIXSchema; + +## postgres +# A_GalleryAccessMap_1.0 +DROP INDEX DB_TABLE_PREFIXAccessMap_33666; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD COLUMN DB_COLUMN_PREFIXuserOrGroupId INTEGER; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ALTER COLUMN DB_COLUMN_PREFIXuserOrGroupId SET DEFAULT '0'; + +UPDATE DB_TABLE_PREFIXAccessMap SET DB_COLUMN_PREFIXuserOrGroupId = '0'; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ALTER DB_COLUMN_PREFIXuserOrGroupId SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryAccessMap_1.1 +ALTER TABLE DB_TABLE_PREFIXAccessMap DROP COLUMN DB_COLUMN_PREFIXuserId; + +ALTER TABLE DB_TABLE_PREFIXAccessMap DROP COLUMN DB_COLUMN_PREFIXgroupId; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_48775 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryAccessMap_1.2 +CREATE INDEX DB_TABLE_PREFIXAccessMap_83732 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GalleryAlbumItem_1.0 +ALTER TABLE DB_TABLE_PREFIXAlbumItem DROP COLUMN DB_COLUMN_PREFIXlayout; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AlbumItem' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryCacheMap_1.0 +DROP INDEX DB_TABLE_PREFIXCacheMap_81545; + +DROP INDEX DB_TABLE_PREFIXCacheMap_24286; + +DROP INDEX DB_TABLE_PREFIXCacheMap_69068; + +ALTER TABLE DB_TABLE_PREFIXCacheMap ADD COLUMN DB_COLUMN_PREFIXisEmpty SMALLINT; + +CREATE INDEX DB_TABLE_PREFIXCacheMap_21979 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='CacheMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryDerivative_1.0 +ALTER TABLE DB_TABLE_PREFIXDerivative ADD COLUMN DB_COLUMN_PREFIXisBroken SMALLINT; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Derivative' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.0 +ALTER TABLE DB_TABLE_PREFIXEntity ADD COLUMN DB_COLUMN_PREFIXonLoadHandlers VARCHAR(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.1 +CREATE INDEX DB_TABLE_PREFIXEntity_44738 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryGroup_1.0 +ALTER TABLE DB_TABLE_PREFIXGroup ADD COLUMN DB_COLUMN_PREFIXgroupNameTemp VARCHAR(128); + +UPDATE DB_TABLE_PREFIXGroup SET DB_COLUMN_PREFIXgroupNameTemp = CAST(DB_COLUMN_PREFIXgroupName AS VARCHAR(128)); + +ALTER TABLE DB_TABLE_PREFIXGroup DROP DB_COLUMN_PREFIXgroupName; + +ALTER TABLE DB_TABLE_PREFIXGroup RENAME DB_COLUMN_PREFIXgroupNameTemp to DB_COLUMN_PREFIXgroupName; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Group' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.0 +ALTER TABLE DB_TABLE_PREFIXItem ADD COLUMN DB_COLUMN_PREFIXoriginationTimestamp INTEGER; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.1 +ALTER TABLE DB_TABLE_PREFIXItem ADD COLUMN DB_COLUMN_PREFIXrenderer VARCHAR(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD COLUMN DB_COLUMN_PREFIXpluginTypeTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginTypeTemp = CAST(DB_COLUMN_PREFIXpluginType AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginMap RENAME DB_COLUMN_PREFIXpluginTypeTemp to DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ALTER DB_COLUMN_PREFIXpluginType SET NOT NULL; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD COLUMN DB_COLUMN_PREFIXpluginIdTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginIdTemp = CAST(DB_COLUMN_PREFIXpluginId AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginMap RENAME DB_COLUMN_PREFIXpluginIdTemp to DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ALTER DB_COLUMN_PREFIXpluginId SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginPackageMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap ADD COLUMN DB_COLUMN_PREFIXlocked SMALLINT; + +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap ALTER COLUMN DB_COLUMN_PREFIXlocked SET DEFAULT '0'; + +UPDATE DB_TABLE_PREFIXPluginPackageMap SET DB_COLUMN_PREFIXlocked = '0'; + +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap ALTER DB_COLUMN_PREFIXlocked SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginPackageMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXpluginTypeTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginTypeTemp = CAST(DB_COLUMN_PREFIXpluginType AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap RENAME DB_COLUMN_PREFIXpluginTypeTemp to DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER DB_COLUMN_PREFIXpluginType SET NOT NULL; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXpluginIdTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginIdTemp = CAST(DB_COLUMN_PREFIXpluginId AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap RENAME DB_COLUMN_PREFIXpluginIdTemp to DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER DB_COLUMN_PREFIXpluginId SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.1 +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginParameterMap_1.2 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXparameterValueTemp text; + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXparameterValueTemp = CAST(DB_COLUMN_PREFIXparameterValue AS text); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP DB_COLUMN_PREFIXparameterValue; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap RENAME DB_COLUMN_PREFIXparameterValueTemp to DB_COLUMN_PREFIXparameterValue; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER DB_COLUMN_PREFIXparameterValue SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GallerySessionMap_1.0 +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD COLUMN DB_COLUMN_PREFIXdataTemp text; + +UPDATE DB_TABLE_PREFIXSessionMap SET DB_COLUMN_PREFIXdataTemp = CAST(DB_COLUMN_PREFIXdata AS text); + +ALTER TABLE DB_TABLE_PREFIXSessionMap DROP DB_COLUMN_PREFIXdata; + +ALTER TABLE DB_TABLE_PREFIXSessionMap RENAME DB_COLUMN_PREFIXdataTemp to DB_COLUMN_PREFIXdata; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='SessionMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.0 +ALTER TABLE DB_TABLE_PREFIXUser ADD COLUMN DB_COLUMN_PREFIXemailTemp VARCHAR(255); + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXemailTemp = CAST(DB_COLUMN_PREFIXemail AS VARCHAR(255)); + +ALTER TABLE DB_TABLE_PREFIXUser DROP DB_COLUMN_PREFIXemail; + +ALTER TABLE DB_TABLE_PREFIXUser RENAME DB_COLUMN_PREFIXemailTemp to DB_COLUMN_PREFIXemail; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.1 +ALTER TABLE DB_TABLE_PREFIXUser ADD COLUMN DB_COLUMN_PREFIXlocked SMALLINT; + +ALTER TABLE DB_TABLE_PREFIXUser ALTER COLUMN DB_COLUMN_PREFIXlocked SET DEFAULT '0'; + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXlocked = '0'; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_Schema_1.0 +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXcreateSql text; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_Schema_1.1 +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXpluginId VARCHAR(32); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXtype VARCHAR(32); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXinfo text; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# ExternalIdMap +CREATE TABLE DB_TABLE_PREFIXExternalIdMap( + DB_COLUMN_PREFIXexternalId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXentityType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXentityId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXExternalIdMap ADD PRIMARY KEY (DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ExternalIdMap', 1, 0); + +# FailedLoginsMap +CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap( + DB_COLUMN_PREFIXuserName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXcount INTEGER NOT NULL, + DB_COLUMN_PREFIXlastAttempt INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXFailedLoginsMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FailedLoginsMap', 1, 0); + +# GalleryAccessMap +CREATE TABLE DB_TABLE_PREFIXAccessMap( + DB_COLUMN_PREFIXaccessListId INTEGER NOT NULL, + DB_COLUMN_PREFIXuserOrGroupId INTEGER NOT NULL, + DB_COLUMN_PREFIXpermission BIT(32) NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD PRIMARY KEY (DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_83732 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_48775 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_18058 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXpermission); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessMap', 1, 3); + +# GalleryAccessSubscriberMap +CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap( + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXaccessListId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAccessSubscriberMap ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXAccessSubscriberMap_83732 ON DB_TABLE_PREFIXAccessSubscriberMap(DB_COLUMN_PREFIXaccessListId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessSubscriberMap', 1, 0); + +# GalleryAlbumItem +CREATE TABLE DB_TABLE_PREFIXAlbumItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXtheme VARCHAR(32), + DB_COLUMN_PREFIXorderBy VARCHAR(128), + DB_COLUMN_PREFIXorderDirection VARCHAR(32) +); + +ALTER TABLE DB_TABLE_PREFIXAlbumItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AlbumItem', 1, 1); + +# GalleryAnimationItem +CREATE TABLE DB_TABLE_PREFIXAnimationItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXAnimationItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AnimationItem', 1, 0); + +# GalleryCacheMap +CREATE TABLE DB_TABLE_PREFIXCacheMap( + DB_COLUMN_PREFIXkey VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXvalue text, + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXtimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXisEmpty SMALLINT +); + +ALTER TABLE DB_TABLE_PREFIXCacheMap ADD PRIMARY KEY (DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_75985 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_21979 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('CacheMap', 1, 1); + +# GalleryChildEntity +CREATE TABLE DB_TABLE_PREFIXChildEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXparentId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXChildEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXChildEntity_52718 ON DB_TABLE_PREFIXChildEntity(DB_COLUMN_PREFIXparentId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ChildEntity', 1, 0); + +# GalleryDataItem +CREATE TABLE DB_TABLE_PREFIXDataItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128), + DB_COLUMN_PREFIXsize INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXDataItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DataItem', 1, 0); + +# GalleryDerivative +CREATE TABLE DB_TABLE_PREFIXDerivative( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeSourceId INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeOperations VARCHAR(255), + DB_COLUMN_PREFIXderivativeOrder INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeSize INTEGER, + DB_COLUMN_PREFIXderivativeType INTEGER NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpostFilterOperations VARCHAR(255), + DB_COLUMN_PREFIXisBroken SMALLINT +); + +ALTER TABLE DB_TABLE_PREFIXDerivative ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXDerivative_85338 ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeSourceId); + +CREATE INDEX DB_TABLE_PREFIXDerivative_25243 ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeOrder); + +CREATE INDEX DB_TABLE_PREFIXDerivative_97216 ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Derivative', 1, 1); + +# GalleryDerivativeImage +CREATE TABLE DB_TABLE_PREFIXDerivativeImage( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXDerivativeImage ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativeImage', 1, 0); + +# GalleryDerivativePreferencesMap +CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap( + DB_COLUMN_PREFIXitemId INTEGER, + DB_COLUMN_PREFIXorder INTEGER, + DB_COLUMN_PREFIXderivativeType INTEGER, + DB_COLUMN_PREFIXderivativeOperations VARCHAR(255) +); + +CREATE INDEX DB_TABLE_PREFIXDerivativePrefsMap_75985 ON DB_TABLE_PREFIXDerivativePrefsMap(DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativePrefsMap', 1, 0); + +# GalleryDescendentCountsMap +CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap( + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXdescendentCount INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDescendentCountsMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DescendentCountsMap', 1, 0); + +# GalleryEntity +CREATE TABLE DB_TABLE_PREFIXEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXisLinkable SMALLINT NOT NULL, + DB_COLUMN_PREFIXlinkId INTEGER, + DB_COLUMN_PREFIXmodificationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXserialNumber INTEGER NOT NULL, + DB_COLUMN_PREFIXentityType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXonLoadHandlers VARCHAR(128) +); + +ALTER TABLE DB_TABLE_PREFIXEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXEntity_76255 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXcreationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntity_35978 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXisLinkable); + +CREATE INDEX DB_TABLE_PREFIXEntity_44738 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +CREATE INDEX DB_TABLE_PREFIXEntity_63025 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXmodificationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntity_60702 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXserialNumber); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Entity', 1, 2); + +# GalleryFactoryMap +CREATE TABLE DB_TABLE_PREFIXFactoryMap( + DB_COLUMN_PREFIXclassType VARCHAR(128), + DB_COLUMN_PREFIXclassName VARCHAR(128), + DB_COLUMN_PREFIXimplId VARCHAR(128), + DB_COLUMN_PREFIXimplPath VARCHAR(128), + DB_COLUMN_PREFIXimplModuleId VARCHAR(128), + DB_COLUMN_PREFIXhints VARCHAR(255), + DB_COLUMN_PREFIXorderWeight VARCHAR(255)); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FactoryMap', 1, 0); + +# GalleryFileSystemEntity +CREATE TABLE DB_TABLE_PREFIXFileSystemEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXpathComponent VARCHAR(128) +); + +ALTER TABLE DB_TABLE_PREFIXFileSystemEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXFileSystemEntity_3406 ON DB_TABLE_PREFIXFileSystemEntity(DB_COLUMN_PREFIXpathComponent); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FileSystemEntity', 1, 0); + +# GalleryGroup +CREATE TABLE DB_TABLE_PREFIXGroup( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupType INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupName VARCHAR(128) +); + +ALTER TABLE DB_TABLE_PREFIXGroup ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXGroup_19099 ON DB_TABLE_PREFIXGroup(DB_COLUMN_PREFIXgroupName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Group', 1, 1); + +# GalleryItem +CREATE TABLE DB_TABLE_PREFIXItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXcanContainChildren SMALLINT NOT NULL, + DB_COLUMN_PREFIXdescription text, + DB_COLUMN_PREFIXkeywords VARCHAR(255), + DB_COLUMN_PREFIXownerId INTEGER NOT NULL, + DB_COLUMN_PREFIXrenderer VARCHAR(128), + DB_COLUMN_PREFIXsummary VARCHAR(255), + DB_COLUMN_PREFIXtitle VARCHAR(128), + DB_COLUMN_PREFIXviewedSinceTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXoriginationTimestamp INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXItem_99070 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXkeywords); + +CREATE INDEX DB_TABLE_PREFIXItem_21573 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXownerId); + +CREATE INDEX DB_TABLE_PREFIXItem_54147 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXsummary); + +CREATE INDEX DB_TABLE_PREFIXItem_90059 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXtitle); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Item', 1, 2); + +# GalleryItemAttributesMap +CREATE TABLE DB_TABLE_PREFIXItemAttributesMap( + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXviewCount INTEGER, + DB_COLUMN_PREFIXorderWeight INTEGER, + DB_COLUMN_PREFIXparentSequence VARCHAR(255) NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXItemAttributesMap ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXItemAttributesMap_95270 ON DB_TABLE_PREFIXItemAttributesMap(DB_COLUMN_PREFIXparentSequence); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ItemAttributesMap', 1, 0); + +# GalleryMaintenanceMap +CREATE TABLE DB_TABLE_PREFIXMaintenanceMap( + DB_COLUMN_PREFIXrunId INTEGER NOT NULL, + DB_COLUMN_PREFIXtaskId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtimestamp INTEGER, + DB_COLUMN_PREFIXsuccess SMALLINT, + DB_COLUMN_PREFIXdetails text +); + +ALTER TABLE DB_TABLE_PREFIXMaintenanceMap ADD PRIMARY KEY (DB_COLUMN_PREFIXrunId); + +CREATE INDEX DB_TABLE_PREFIXMaintenanceMap_21687 ON DB_TABLE_PREFIXMaintenanceMap(DB_COLUMN_PREFIXtaskId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MaintenanceMap', 1, 0); + +# GalleryMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXMimeTypeMap( + DB_COLUMN_PREFIXextension VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXviewable SMALLINT +); + +ALTER TABLE DB_TABLE_PREFIXMimeTypeMap ADD PRIMARY KEY (DB_COLUMN_PREFIXextension); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MimeTypeMap', 1, 0); + +# GalleryMovieItem +CREATE TABLE DB_TABLE_PREFIXMovieItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER, + DB_COLUMN_PREFIXduration INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXMovieItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MovieItem', 1, 0); + +# GalleryPermissionSetMap +CREATE TABLE DB_TABLE_PREFIXPermissionSetMap( + DB_COLUMN_PREFIXmodule VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpermission VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(255), + DB_COLUMN_PREFIXbits BIT(32) NOT NULL, + DB_COLUMN_PREFIXflags INTEGER NOT NULL +); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXPermissionSetMap_18058 ON DB_TABLE_PREFIXPermissionSetMap(DB_COLUMN_PREFIXpermission); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PermissionSetMap', 1, 0); + +# GalleryPhotoItem +CREATE TABLE DB_TABLE_PREFIXPhotoItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXPhotoItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PhotoItem', 1, 0); + +# GalleryPluginMap +CREATE TABLE DB_TABLE_PREFIXPluginMap( + DB_COLUMN_PREFIXpluginType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXactive SMALLINT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD PRIMARY KEY (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginMap', 1, 1); + +# GalleryPluginPackageMap +CREATE TABLE DB_TABLE_PREFIXPluginPackageMap( + DB_COLUMN_PREFIXpluginType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageVersion VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageBuild VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXlocked SMALLINT NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXPluginPackageMap_80596 ON DB_TABLE_PREFIXPluginPackageMap(DB_COLUMN_PREFIXpluginType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginPackageMap', 1, 1); + +# GalleryPluginParameterMap +CREATE TABLE DB_TABLE_PREFIXPluginParameterMap( + DB_COLUMN_PREFIXpluginType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXparameterName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXparameterValue text NOT NULL +); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXPluginParameterMap_26955 ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName); + +CREATE INDEX DB_TABLE_PREFIXPluginParameterMap_80596 ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType); + +CREATE INDEX DB_TABLE_PREFIXPluginParameterMap_12808 ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginParameterMap', 1, 3); + +# GalleryRecoverPasswordMap +CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap( + DB_COLUMN_PREFIXuserName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXauthString VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXrequestExpires INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXRecoverPasswordMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('RecoverPasswordMap', 1, 1); + +# GallerySessionMap +CREATE TABLE DB_TABLE_PREFIXSessionMap( + DB_COLUMN_PREFIXid VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXremoteIdentifier VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXmodificationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXdata text +); + +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXSessionMap_53500 ON DB_TABLE_PREFIXSessionMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('SessionMap', 1, 1); + +# GalleryToolkitOperationMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMap( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXparametersCrc VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXoutputMimeType VARCHAR(128), + DB_COLUMN_PREFIXdescription VARCHAR(255) +); + +ALTER TABLE DB_TABLE_PREFIXTkOperatnMap ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMap', 1, 0); + +# GalleryToolkitOperationMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap( + DB_COLUMN_PREFIXoperationName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpriority INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_2014 ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXoperationName); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_79463 ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMimeTypeMap', 1, 0); + +# GalleryToolkitOperationParameterMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap( + DB_COLUMN_PREFIXoperationName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXposition INTEGER NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(255) +); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnParameterMap_2014 ON DB_TABLE_PREFIXTkOperatnParameterMap(DB_COLUMN_PREFIXoperationName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnParameterMap', 1, 0); + +# GalleryToolkitPropertyMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMap( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(128) NOT NULL); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMap', 1, 0); + +# GalleryToolkitPropertyMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap( + DB_COLUMN_PREFIXpropertyName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128) NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_52881 ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXpropertyName); + +CREATE INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_79463 ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMimeTypeMap', 1, 0); + +# GalleryUnknownItem +CREATE TABLE DB_TABLE_PREFIXUnknownItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXUnknownItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UnknownItem', 1, 0); + +# GalleryUser +CREATE TABLE DB_TABLE_PREFIXUser( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXuserName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXfullName VARCHAR(128), + DB_COLUMN_PREFIXhashedPassword VARCHAR(128), + DB_COLUMN_PREFIXemail VARCHAR(255), + DB_COLUMN_PREFIXlanguage VARCHAR(128), + DB_COLUMN_PREFIXlocked SMALLINT DEFAULT '0' +); + +ALTER TABLE DB_TABLE_PREFIXUser ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXUser_16233 ON DB_TABLE_PREFIXUser(DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('User', 1, 2); + +# GalleryUserGroupMap +CREATE TABLE DB_TABLE_PREFIXUserGroupMap( + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupId INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXUserGroupMap_69068 ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXuserId); + +CREATE INDEX DB_TABLE_PREFIXUserGroupMap_89328 ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXgroupId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UserGroupMap', 1, 0); + +# Lock +CREATE TABLE DB_TABLE_PREFIXLock( + DB_COLUMN_PREFIXlockId INTEGER, + DB_COLUMN_PREFIXreadEntityId INTEGER, + DB_COLUMN_PREFIXwriteEntityId INTEGER, + DB_COLUMN_PREFIXfreshUntil INTEGER, + DB_COLUMN_PREFIXrequest INTEGER +); + +CREATE INDEX DB_TABLE_PREFIXLock_11039 ON DB_TABLE_PREFIXLock(DB_COLUMN_PREFIXlockId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Lock', 1, 0); + +# R_GalleryCache_1.0 +DROP TABLE DB_TABLE_PREFIXCache; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='Cache'; + +# R_GalleryItemPropertiesMap_1.0 +DROP TABLE DB_TABLE_PREFIXItemPropertiesMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='ItemPropertiesMap'; + +# R_GalleryPermissionMap_1.0 +DROP TABLE DB_TABLE_PREFIXPermissionMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='PermissionMap'; + +# Schema +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmajor INTEGER NOT NULL, + DB_COLUMN_PREFIXminor INTEGER NOT NULL, + DB_COLUMN_PREFIXcreateSql text, + DB_COLUMN_PREFIXpluginId VARCHAR(32), + DB_COLUMN_PREFIXtype VARCHAR(32), + DB_COLUMN_PREFIXinfo text +); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 2); + +# T_InstallerTest_1 +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmajor INTEGER NOT NULL, + DB_COLUMN_PREFIXminor INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 0); + +# T_InstallerTest_2 +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXtestCol VARCHAR(128); + +CREATE INDEX DB_TABLE_PREFIXSchema_18169 ON DB_TABLE_PREFIXSchema(DB_COLUMN_PREFIXtestCol); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# T_InstallerTest_3 +DROP INDEX DB_TABLE_PREFIXSchema_18169; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# T_InstallerTest_4 +DROP TABLE DB_TABLE_PREFIXSchema; + +## oracle +# A_GalleryAccessMap_1.0 +ALTER TABLE DB_TABLE_PREFIXAccessMap + DROP UNIQUE (DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXgroupId); + +ALTER TABLE DB_TABLE_PREFIXAccessMap + ADD (DB_COLUMN_PREFIXuserOrGroupId INTEGER DEFAULT '0' NOT NULL); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryAccessMap_1.1 +ALTER TABLE DB_TABLE_PREFIXAccessMap + DROP (DB_COLUMN_PREFIXuserId); + +ALTER TABLE DB_TABLE_PREFIXAccessMap + DROP (DB_COLUMN_PREFIXgroupId); + +ALTER TABLE DB_TABLE_PREFIXAccessMap + ADD PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_48775 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryAccessMap_1.2 +CREATE INDEX DB_TABLE_PREFIXAccessMap_83732 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GalleryAlbumItem_1.0 +ALTER TABLE DB_TABLE_PREFIXAlbumItem + DROP (DB_COLUMN_PREFIXlayout); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AlbumItem' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryCacheMap_1.0 + DROP INDEX DB_TABLE_PREFIXCacheMap_81545; + + DROP INDEX DB_TABLE_PREFIXCacheMap_24286; + + DROP INDEX DB_TABLE_PREFIXCacheMap_69068; + +ALTER TABLE DB_TABLE_PREFIXCacheMap + ADD (DB_COLUMN_PREFIXisEmpty NUMBER(1)); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_21979 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='CacheMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryDerivative_1.0 +ALTER TABLE DB_TABLE_PREFIXDerivative + ADD (DB_COLUMN_PREFIXisBroken NUMBER(1)); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Derivative' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.0 +ALTER TABLE DB_TABLE_PREFIXEntity + ADD (DB_COLUMN_PREFIXonLoadHandlers VARCHAR2(128)); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.1 +CREATE INDEX DB_TABLE_PREFIXEntity_44738 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryGroup_1.0 +ALTER TABLE DB_TABLE_PREFIXGroup ADD (DB_COLUMN_PREFIXgroupNameTemp VARCHAR2(128)); + +UPDATE DB_TABLE_PREFIXGroup SET DB_COLUMN_PREFIXgroupNameTemp = DB_COLUMN_PREFIXgroupName; + +ALTER TABLE DB_TABLE_PREFIXGroup DROP (DB_COLUMN_PREFIXgroupName); + +ALTER TABLE DB_TABLE_PREFIXGroup RENAME COLUMN DB_COLUMN_PREFIXgroupNameTemp TO DB_COLUMN_PREFIXgroupName; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Group' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.0 +ALTER TABLE DB_TABLE_PREFIXItem + ADD (DB_COLUMN_PREFIXoriginationTimestamp INTEGER); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.1 +ALTER TABLE DB_TABLE_PREFIXItem + ADD (DB_COLUMN_PREFIXrenderer VARCHAR2(128)); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD (DB_COLUMN_PREFIXpluginTypeTemp VARCHAR2(32)); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginTypeTemp = DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP (DB_COLUMN_PREFIXpluginType); + +ALTER TABLE DB_TABLE_PREFIXPluginMap RENAME COLUMN DB_COLUMN_PREFIXpluginTypeTemp TO DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginMap MODIFY (DB_COLUMN_PREFIXpluginType NOT NULL); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD (DB_COLUMN_PREFIXpluginIdTemp VARCHAR2(32)); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginIdTemp = DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP (DB_COLUMN_PREFIXpluginId); + +ALTER TABLE DB_TABLE_PREFIXPluginMap RENAME COLUMN DB_COLUMN_PREFIXpluginIdTemp TO DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginMap MODIFY (DB_COLUMN_PREFIXpluginId NOT NULL); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginPackageMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap + ADD (DB_COLUMN_PREFIXlocked NUMBER(1) DEFAULT '0' NOT NULL); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginPackageMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD (DB_COLUMN_PREFIXpluginTypeTemp VARCHAR2(32)); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginTypeTemp = DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP (DB_COLUMN_PREFIXpluginType); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap RENAME COLUMN DB_COLUMN_PREFIXpluginTypeTemp TO DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap MODIFY (DB_COLUMN_PREFIXpluginType NOT NULL); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD (DB_COLUMN_PREFIXpluginIdTemp VARCHAR2(32)); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginIdTemp = DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP (DB_COLUMN_PREFIXpluginId); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap RENAME COLUMN DB_COLUMN_PREFIXpluginIdTemp TO DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap MODIFY (DB_COLUMN_PREFIXpluginId NOT NULL); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.1 +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginParameterMap_1.2 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD (DB_COLUMN_PREFIXparameterValueTemp VARCHAR2(4000)); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXparameterValueTemp = DB_COLUMN_PREFIXparameterValue; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP (DB_COLUMN_PREFIXparameterValue); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap RENAME COLUMN DB_COLUMN_PREFIXparameterValueTemp TO DB_COLUMN_PREFIXparameterValue; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GallerySessionMap_1.0 +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD (DB_COLUMN_PREFIXdataTemp CLOB); + +UPDATE DB_TABLE_PREFIXSessionMap SET DB_COLUMN_PREFIXdataTemp = DB_COLUMN_PREFIXdata; + +ALTER TABLE DB_TABLE_PREFIXSessionMap DROP (DB_COLUMN_PREFIXdata); + +ALTER TABLE DB_TABLE_PREFIXSessionMap RENAME COLUMN DB_COLUMN_PREFIXdataTemp TO DB_COLUMN_PREFIXdata; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='SessionMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.0 +ALTER TABLE DB_TABLE_PREFIXUser ADD (DB_COLUMN_PREFIXemailTemp VARCHAR2(255)); + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXemailTemp = DB_COLUMN_PREFIXemail; + +ALTER TABLE DB_TABLE_PREFIXUser DROP (DB_COLUMN_PREFIXemail); + +ALTER TABLE DB_TABLE_PREFIXUser RENAME COLUMN DB_COLUMN_PREFIXemailTemp TO DB_COLUMN_PREFIXemail; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.1 +ALTER TABLE DB_TABLE_PREFIXUser + ADD (DB_COLUMN_PREFIXlocked NUMBER(1) DEFAULT '0'); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_Schema_1.0 +ALTER TABLE DB_TABLE_PREFIXSchema + ADD (DB_COLUMN_PREFIXcreateSql VARCHAR2(4000)); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_Schema_1.1 +ALTER TABLE DB_TABLE_PREFIXSchema + ADD (DB_COLUMN_PREFIXpluginId VARCHAR2(32)); + +ALTER TABLE DB_TABLE_PREFIXSchema + ADD (DB_COLUMN_PREFIXtype VARCHAR2(32)); + +ALTER TABLE DB_TABLE_PREFIXSchema + ADD (DB_COLUMN_PREFIXinfo CLOB); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# ExternalIdMap +CREATE TABLE DB_TABLE_PREFIXExternalIdMap( + DB_COLUMN_PREFIXexternalId VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXentityType VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXentityId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXExternalIdMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ExternalIdMap', 1, 0); + +# FailedLoginsMap +CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap( + DB_COLUMN_PREFIXuserName VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXcount INTEGER NOT NULL, + DB_COLUMN_PREFIXlastAttempt INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXFailedLoginsMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FailedLoginsMap', 1, 0); + +# GalleryAccessMap +CREATE TABLE DB_TABLE_PREFIXAccessMap( + DB_COLUMN_PREFIXaccessListId INTEGER NOT NULL, + DB_COLUMN_PREFIXuserOrGroupId INTEGER NOT NULL, + DB_COLUMN_PREFIXpermission INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_83732 + ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_48775 + ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_18058 + ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXpermission); + +ALTER TABLE DB_TABLE_PREFIXAccessMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessMap', 1, 3); + +# GalleryAccessSubscriberMap +CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap( + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXaccessListId INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXAccessSubscriberMap_83732 + ON DB_TABLE_PREFIXAccessSubscriberMap(DB_COLUMN_PREFIXaccessListId); + +ALTER TABLE DB_TABLE_PREFIXAccessSubscriberMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessSubscriberMap', 1, 0); + +# GalleryAlbumItem +CREATE TABLE DB_TABLE_PREFIXAlbumItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXtheme VARCHAR2(32), + DB_COLUMN_PREFIXorderBy VARCHAR2(128), + DB_COLUMN_PREFIXorderDirection VARCHAR2(32) +); + +ALTER TABLE DB_TABLE_PREFIXAlbumItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AlbumItem', 1, 1); + +# GalleryAnimationItem +CREATE TABLE DB_TABLE_PREFIXAnimationItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXAnimationItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AnimationItem', 1, 0); + +# GalleryCacheMap +CREATE TABLE DB_TABLE_PREFIXCacheMap( + DB_COLUMN_PREFIXkey VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXvalue CLOB, + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXtimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXisEmpty NUMBER(1) +); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_75985 + ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_21979 + ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +ALTER TABLE DB_TABLE_PREFIXCacheMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('CacheMap', 1, 1); + +# GalleryChildEntity +CREATE TABLE DB_TABLE_PREFIXChildEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXparentId INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXChildEntity_52718 + ON DB_TABLE_PREFIXChildEntity(DB_COLUMN_PREFIXparentId); + +ALTER TABLE DB_TABLE_PREFIXChildEntity + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ChildEntity', 1, 0); + +# GalleryDataItem +CREATE TABLE DB_TABLE_PREFIXDataItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR2(128), + DB_COLUMN_PREFIXsize INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXDataItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DataItem', 1, 0); + +# GalleryDerivative +CREATE TABLE DB_TABLE_PREFIXDerivative( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeSourceId INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeOperations VARCHAR2(255), + DB_COLUMN_PREFIXderivativeOrder INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeSize INTEGER, + DB_COLUMN_PREFIXderivativeType INTEGER NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXpostFilterOperations VARCHAR2(255), + DB_COLUMN_PREFIXisBroken NUMBER(1) +); + +CREATE INDEX DB_TABLE_PREFIXDerivative_85338 + ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeSourceId); + +CREATE INDEX DB_TABLE_PREFIXDerivative_25243 + ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeOrder); + +CREATE INDEX DB_TABLE_PREFIXDerivative_97216 + ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeType); + +ALTER TABLE DB_TABLE_PREFIXDerivative + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Derivative', 1, 1); + +# GalleryDerivativeImage +CREATE TABLE DB_TABLE_PREFIXDerivativeImage( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXDerivativeImage + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativeImage', 1, 0); + +# GalleryDerivativePreferencesMap +CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap( + DB_COLUMN_PREFIXitemId INTEGER, + DB_COLUMN_PREFIXorder INTEGER, + DB_COLUMN_PREFIXderivativeType INTEGER, + DB_COLUMN_PREFIXderivativeOperations VARCHAR2(255) +); + +CREATE INDEX DB_TABLE_PREFIXDerivativePrefsMap_75985 + ON DB_TABLE_PREFIXDerivativePrefsMap(DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativePrefsMap', 1, 0); + +# GalleryDescendentCountsMap +CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap( + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXdescendentCount INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDescendentCountsMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DescendentCountsMap', 1, 0); + +# GalleryEntity +CREATE TABLE DB_TABLE_PREFIXEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXisLinkable NUMBER(1) NOT NULL, + DB_COLUMN_PREFIXlinkId INTEGER, + DB_COLUMN_PREFIXmodificationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXserialNumber INTEGER NOT NULL, + DB_COLUMN_PREFIXentityType VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXonLoadHandlers VARCHAR2(128) +); + +CREATE INDEX DB_TABLE_PREFIXEntity_76255 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXcreationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntity_35978 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXisLinkable); + +CREATE INDEX DB_TABLE_PREFIXEntity_44738 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +CREATE INDEX DB_TABLE_PREFIXEntity_63025 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXmodificationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntity_60702 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXserialNumber); + +ALTER TABLE DB_TABLE_PREFIXEntity + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Entity', 1, 2); + +# GalleryFactoryMap +CREATE TABLE DB_TABLE_PREFIXFactoryMap( + DB_COLUMN_PREFIXclassType VARCHAR2(128), + DB_COLUMN_PREFIXclassName VARCHAR2(128), + DB_COLUMN_PREFIXimplId VARCHAR2(128), + DB_COLUMN_PREFIXimplPath VARCHAR2(128), + DB_COLUMN_PREFIXimplModuleId VARCHAR2(128), + DB_COLUMN_PREFIXhints VARCHAR2(255), + DB_COLUMN_PREFIXorderWeight VARCHAR2(255)); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FactoryMap', 1, 0); + +# GalleryFileSystemEntity +CREATE TABLE DB_TABLE_PREFIXFileSystemEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXpathComponent VARCHAR2(128) +); + +CREATE INDEX DB_TABLE_PREFIXFileSystemEntity_3406 + ON DB_TABLE_PREFIXFileSystemEntity(DB_COLUMN_PREFIXpathComponent); + +ALTER TABLE DB_TABLE_PREFIXFileSystemEntity + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FileSystemEntity', 1, 0); + +# GalleryGroup +CREATE TABLE DB_TABLE_PREFIXGroup( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupType INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupName VARCHAR2(128) +); + +ALTER TABLE DB_TABLE_PREFIXGroup + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) + ADD UNIQUE (DB_COLUMN_PREFIXgroupName) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Group', 1, 1); + +# GalleryItem +CREATE TABLE DB_TABLE_PREFIXItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXcanContainChildren NUMBER(1) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR2(4000), + DB_COLUMN_PREFIXkeywords VARCHAR2(255), + DB_COLUMN_PREFIXownerId INTEGER NOT NULL, + DB_COLUMN_PREFIXrenderer VARCHAR2(128), + DB_COLUMN_PREFIXsummary VARCHAR2(255), + DB_COLUMN_PREFIXtitle VARCHAR2(128), + DB_COLUMN_PREFIXviewedSinceTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXoriginationTimestamp INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXItem_99070 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXkeywords); + +CREATE INDEX DB_TABLE_PREFIXItem_21573 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXownerId); + +CREATE INDEX DB_TABLE_PREFIXItem_54147 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXsummary); + +CREATE INDEX DB_TABLE_PREFIXItem_90059 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXtitle); + +ALTER TABLE DB_TABLE_PREFIXItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Item', 1, 2); + +# GalleryItemAttributesMap +CREATE TABLE DB_TABLE_PREFIXItemAttributesMap( + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXviewCount INTEGER, + DB_COLUMN_PREFIXorderWeight INTEGER, + DB_COLUMN_PREFIXparentSequence VARCHAR2(255) +); + +CREATE INDEX DB_TABLE_PREFIXItemAttributesMap_95270 + ON DB_TABLE_PREFIXItemAttributesMap(DB_COLUMN_PREFIXparentSequence); + +ALTER TABLE DB_TABLE_PREFIXItemAttributesMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ItemAttributesMap', 1, 0); + +# GalleryMaintenanceMap +CREATE TABLE DB_TABLE_PREFIXMaintenanceMap( + DB_COLUMN_PREFIXrunId INTEGER NOT NULL, + DB_COLUMN_PREFIXtaskId VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXtimestamp INTEGER, + DB_COLUMN_PREFIXsuccess NUMBER(1), + DB_COLUMN_PREFIXdetails VARCHAR2(4000) +); + +CREATE INDEX DB_TABLE_PREFIXMaintenanceMap_21687 + ON DB_TABLE_PREFIXMaintenanceMap(DB_COLUMN_PREFIXtaskId); + +ALTER TABLE DB_TABLE_PREFIXMaintenanceMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXrunId) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MaintenanceMap', 1, 0); + +# GalleryMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXMimeTypeMap( + DB_COLUMN_PREFIXextension VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXviewable NUMBER(1) +); + +ALTER TABLE DB_TABLE_PREFIXMimeTypeMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXextension) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MimeTypeMap', 1, 0); + +# GalleryMovieItem +CREATE TABLE DB_TABLE_PREFIXMovieItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER, + DB_COLUMN_PREFIXduration INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXMovieItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MovieItem', 1, 0); + +# GalleryPermissionSetMap +CREATE TABLE DB_TABLE_PREFIXPermissionSetMap( + DB_COLUMN_PREFIXmodule VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXpermission VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR2(255), + DB_COLUMN_PREFIXbits INTEGER NOT NULL, + DB_COLUMN_PREFIXflags INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXPermissionSetMap + ADD UNIQUE (DB_COLUMN_PREFIXpermission) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PermissionSetMap', 1, 0); + +# GalleryPhotoItem +CREATE TABLE DB_TABLE_PREFIXPhotoItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXPhotoItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PhotoItem', 1, 0); + +# GalleryPluginMap +CREATE TABLE DB_TABLE_PREFIXPluginMap( + DB_COLUMN_PREFIXpluginType VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXactive NUMBER(1) NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXPluginMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginMap', 1, 1); + +# GalleryPluginPackageMap +CREATE TABLE DB_TABLE_PREFIXPluginPackageMap( + DB_COLUMN_PREFIXpluginType VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXpackageName VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXpackageVersion VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXpackageBuild VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXlocked NUMBER(1) NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXPluginPackageMap_80596 + ON DB_TABLE_PREFIXPluginPackageMap(DB_COLUMN_PREFIXpluginType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginPackageMap', 1, 1); + +# GalleryPluginParameterMap +CREATE TABLE DB_TABLE_PREFIXPluginParameterMap( + DB_COLUMN_PREFIXpluginType VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXparameterName VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXparameterValue VARCHAR2(4000) +); + +CREATE INDEX DB_TABLE_PREFIXPluginParameterMap_80596 + ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType); + +CREATE INDEX DB_TABLE_PREFIXPluginParameterMap_12808 + ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap + ADD UNIQUE (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginParameterMap', 1, 3); + +# GalleryRecoverPasswordMap +CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap( + DB_COLUMN_PREFIXuserName VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXauthString VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXrequestExpires INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXRecoverPasswordMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('RecoverPasswordMap', 1, 1); + +# GallerySessionMap +CREATE TABLE DB_TABLE_PREFIXSessionMap( + DB_COLUMN_PREFIXid VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXremoteIdentifier VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXmodificationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXdata CLOB +); + +CREATE INDEX DB_TABLE_PREFIXSessionMap_53500 + ON DB_TABLE_PREFIXSessionMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp); + +ALTER TABLE DB_TABLE_PREFIXSessionMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('SessionMap', 1, 1); + +# GalleryToolkitOperationMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMap( + DB_COLUMN_PREFIXname VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXparametersCrc VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXoutputMimeType VARCHAR2(128), + DB_COLUMN_PREFIXdescription VARCHAR2(255) +); + +ALTER TABLE DB_TABLE_PREFIXTkOperatnMap + ADD PRIMARY KEY (DB_COLUMN_PREFIXname) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMap', 1, 0); + +# GalleryToolkitOperationMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap( + DB_COLUMN_PREFIXoperationName VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXpriority INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_2014 + ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXoperationName); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_79463 + ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMimeTypeMap', 1, 0); + +# GalleryToolkitOperationParameterMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap( + DB_COLUMN_PREFIXoperationName VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXposition INTEGER NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR2(255) +); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnParameterMap_2014 + ON DB_TABLE_PREFIXTkOperatnParameterMap(DB_COLUMN_PREFIXoperationName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnParameterMap', 1, 0); + +# GalleryToolkitPropertyMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMap( + DB_COLUMN_PREFIXname VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR2(128) NOT NULL); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMap', 1, 0); + +# GalleryToolkitPropertyMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap( + DB_COLUMN_PREFIXpropertyName VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR2(128) NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_52881 + ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXpropertyName); + +CREATE INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_79463 + ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMimeTypeMap', 1, 0); + +# GalleryUnknownItem +CREATE TABLE DB_TABLE_PREFIXUnknownItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXUnknownItem + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UnknownItem', 1, 0); + +# GalleryUser +CREATE TABLE DB_TABLE_PREFIXUser( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXuserName VARCHAR2(32) NOT NULL, + DB_COLUMN_PREFIXfullName VARCHAR2(128), + DB_COLUMN_PREFIXhashedPassword VARCHAR2(128), + DB_COLUMN_PREFIXemail VARCHAR2(255), + DB_COLUMN_PREFIXlanguage VARCHAR2(128), + DB_COLUMN_PREFIXlocked NUMBER(1) DEFAULT '0' +); + +ALTER TABLE DB_TABLE_PREFIXUser + ADD PRIMARY KEY (DB_COLUMN_PREFIXid) + ADD UNIQUE (DB_COLUMN_PREFIXuserName) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('User', 1, 2); + +# GalleryUserGroupMap +CREATE TABLE DB_TABLE_PREFIXUserGroupMap( + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupId INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXUserGroupMap_69068 + ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXuserId); + +CREATE INDEX DB_TABLE_PREFIXUserGroupMap_89328 + ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXgroupId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UserGroupMap', 1, 0); + +# Lock +CREATE TABLE DB_TABLE_PREFIXLock( + DB_COLUMN_PREFIXlockId INTEGER, + DB_COLUMN_PREFIXreadEntityId INTEGER, + DB_COLUMN_PREFIXwriteEntityId INTEGER, + DB_COLUMN_PREFIXfreshUntil INTEGER, + DB_COLUMN_PREFIXrequest INTEGER +); + +CREATE INDEX DB_TABLE_PREFIXLock_11039 + ON DB_TABLE_PREFIXLock(DB_COLUMN_PREFIXlockId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Lock', 1, 0); + +# R_GalleryCache_1.0 +DROP TABLE DB_TABLE_PREFIXCache; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='Cache'; + +# R_GalleryItemPropertiesMap_1.0 +DROP TABLE DB_TABLE_PREFIXItemPropertiesMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='ItemPropertiesMap'; + +# R_GalleryPermissionMap_1.0 +DROP TABLE DB_TABLE_PREFIXPermissionMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='PermissionMap'; + +# Schema +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXmajor INTEGER NOT NULL, + DB_COLUMN_PREFIXminor INTEGER NOT NULL, + DB_COLUMN_PREFIXcreateSql VARCHAR2(4000), + DB_COLUMN_PREFIXpluginId VARCHAR2(32), + DB_COLUMN_PREFIXtype VARCHAR2(32), + DB_COLUMN_PREFIXinfo CLOB +); + +ALTER TABLE DB_TABLE_PREFIXSchema + ADD PRIMARY KEY (DB_COLUMN_PREFIXname) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 2); + +# T_InstallerTest_1 +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname VARCHAR2(128) NOT NULL, + DB_COLUMN_PREFIXmajor INTEGER NOT NULL, + DB_COLUMN_PREFIXminor INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXSchema + ADD PRIMARY KEY (DB_COLUMN_PREFIXname) +; + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 0); + +# T_InstallerTest_2 +ALTER TABLE DB_TABLE_PREFIXSchema + ADD (DB_COLUMN_PREFIXtestCol VARCHAR2(128)); + +CREATE INDEX DB_TABLE_PREFIXSchema_18169 ON DB_TABLE_PREFIXSchema(DB_COLUMN_PREFIXtestCol); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# T_InstallerTest_3 + DROP INDEX DB_TABLE_PREFIXSchema_18169; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# T_InstallerTest_4 +DROP TABLE DB_TABLE_PREFIXSchema; + +## db2 +# A_GalleryAccessMap_1.0 +DROP INDEX DB_TABLE_PREFIXAccessMap_33666; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD COLUMN DB_COLUMN_PREFIXuserOrGroupId INTEGER NOT NULL DEFAULT 0; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryAccessMap_1.1 +ALTER TABLE DB_TABLE_PREFIXAccessMap DROP COLUMN DB_COLUMN_PREFIXuserId; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXAccessMap'); + +ALTER TABLE DB_TABLE_PREFIXAccessMap DROP COLUMN DB_COLUMN_PREFIXgroupId; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXAccessMap'); + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAcces69_48775 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryAccessMap_1.2 +CREATE INDEX DB_TABLE_PREFIXAcces69_83732 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GalleryAlbumItem_1.0 +ALTER TABLE DB_TABLE_PREFIXAlbumItem DROP COLUMN DB_COLUMN_PREFIXlayout; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXAlbumItem'); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AlbumItem' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryCacheMap_1.0 +DROP INDEX DB_TABLE_PREFIXCacheff_81545; + +DROP INDEX DB_TABLE_PREFIXCacheff_24286; + +DROP INDEX DB_TABLE_PREFIXCacheff_69068; + +ALTER TABLE DB_TABLE_PREFIXCacheMap ADD COLUMN DB_COLUMN_PREFIXisEmpty SMALLINT; + +CREATE INDEX DB_TABLE_PREFIXCacheff_21979 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='CacheMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryDerivative_1.0 +ALTER TABLE DB_TABLE_PREFIXDerivative ADD COLUMN DB_COLUMN_PREFIXisBroken SMALLINT; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Derivative' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.0 +ALTER TABLE DB_TABLE_PREFIXEntity ADD COLUMN DB_COLUMN_PREFIXonLoadHandlers VARCHAR(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.1 +CREATE INDEX DB_TABLE_PREFIXEntit6f_44738 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryGroup_1.0 +ALTER TABLE DB_TABLE_PREFIXGroup ADD COLUMN DB_COLUMN_PREFIXgroupNameTemp VARCHAR(128); + +UPDATE DB_TABLE_PREFIXGroup SET DB_COLUMN_PREFIXgroupNameTemp = CAST(DB_COLUMN_PREFIXgroupName AS VARCHAR(128)); + +ALTER TABLE DB_TABLE_PREFIXGroup DROP COLUMN DB_COLUMN_PREFIXgroupName; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXGroup'); + +ALTER TABLE DB_TABLE_PREFIXGroup ADD COLUMN DB_COLUMN_PREFIXgroupName VARCHAR(128); + +UPDATE DB_TABLE_PREFIXGroup SET DB_COLUMN_PREFIXgroupName = DB_COLUMN_PREFIXgroupNameTemp; + +ALTER TABLE DB_TABLE_PREFIXGroup DROP COLUMN DB_COLUMN_PREFIXgroupNameTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXGroup'); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Group' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.0 +ALTER TABLE DB_TABLE_PREFIXItem ADD COLUMN DB_COLUMN_PREFIXoriginationTimestamp INTEGER; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.1 +ALTER TABLE DB_TABLE_PREFIXItem ADD COLUMN DB_COLUMN_PREFIXrenderer VARCHAR(128); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD COLUMN DB_COLUMN_PREFIXpluginTypeTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginTypeTemp = CAST(DB_COLUMN_PREFIXpluginType AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginType; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD COLUMN DB_COLUMN_PREFIXpluginType VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginType = DB_COLUMN_PREFIXpluginTypeTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginTypeTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ALTER DB_COLUMN_PREFIXpluginType SET NOT NULL; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD COLUMN DB_COLUMN_PREFIXpluginIdTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginIdTemp = CAST(DB_COLUMN_PREFIXpluginId AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginId; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD COLUMN DB_COLUMN_PREFIXpluginId VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginId = DB_COLUMN_PREFIXpluginIdTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginIdTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ALTER DB_COLUMN_PREFIXpluginId SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginPackageMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap ADD COLUMN DB_COLUMN_PREFIXlocked SMALLINT NOT NULL DEFAULT 0; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginPackageMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXpluginTypeTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginTypeTemp = CAST(DB_COLUMN_PREFIXpluginType AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginType; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginParameterMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXpluginType VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginType = DB_COLUMN_PREFIXpluginTypeTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginTypeTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginParameterMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER DB_COLUMN_PREFIXpluginType SET NOT NULL; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXpluginIdTemp VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginIdTemp = CAST(DB_COLUMN_PREFIXpluginId AS VARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginId; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginParameterMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXpluginId VARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginId = DB_COLUMN_PREFIXpluginIdTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginIdTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginParameterMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER DB_COLUMN_PREFIXpluginId SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.1 +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginParameterMap_1.2 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXparameterValueTemp VARCHAR(10000); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXparameterValueTemp = CAST(DB_COLUMN_PREFIXparameterValue AS VARCHAR(10000)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXparameterValue; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginParameterMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD COLUMN DB_COLUMN_PREFIXparameterValue VARCHAR(10000); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXparameterValue = DB_COLUMN_PREFIXparameterValueTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXparameterValueTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXPluginParameterMap'); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER DB_COLUMN_PREFIXparameterValue SET NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GallerySessionMap_1.0 +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD COLUMN DB_COLUMN_PREFIXdataTemp CLOB(2G) NOT LOGGED; + +UPDATE DB_TABLE_PREFIXSessionMap SET DB_COLUMN_PREFIXdataTemp = DB_COLUMN_PREFIXdata; + +ALTER TABLE DB_TABLE_PREFIXSessionMap DROP COLUMN DB_COLUMN_PREFIXdata; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXSessionMap'); + +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD COLUMN DB_COLUMN_PREFIXdata CLOB(2G) NOT LOGGED; + +UPDATE DB_TABLE_PREFIXSessionMap SET DB_COLUMN_PREFIXdata = DB_COLUMN_PREFIXdataTemp; + +ALTER TABLE DB_TABLE_PREFIXSessionMap DROP COLUMN DB_COLUMN_PREFIXdataTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXSessionMap'); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='SessionMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.0 +ALTER TABLE DB_TABLE_PREFIXUser ADD COLUMN DB_COLUMN_PREFIXemailTemp VARCHAR(255); + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXemailTemp = CAST(DB_COLUMN_PREFIXemail AS VARCHAR(255)); + +ALTER TABLE DB_TABLE_PREFIXUser DROP COLUMN DB_COLUMN_PREFIXemail; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXUser'); + +ALTER TABLE DB_TABLE_PREFIXUser ADD COLUMN DB_COLUMN_PREFIXemail VARCHAR(255); + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXemail = DB_COLUMN_PREFIXemailTemp; + +ALTER TABLE DB_TABLE_PREFIXUser DROP COLUMN DB_COLUMN_PREFIXemailTemp; + +CALL ADMIN_CMD ('REORG TABLE DB_TABLE_PREFIXUser'); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.1 +ALTER TABLE DB_TABLE_PREFIXUser ADD COLUMN DB_COLUMN_PREFIXlocked SMALLINT DEFAULT 0; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_Schema_1.0 +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXcreateSql VARCHAR(10000); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_Schema_1.1 +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXpluginId VARCHAR(32); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXtype VARCHAR(32); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXinfo VARCHAR(15000); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# ExternalIdMap +CREATE TABLE DB_TABLE_PREFIXExternalIdMap( + DB_COLUMN_PREFIXexternalId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXentityType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXentityId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXExternalIdMap ADD PRIMARY KEY (DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ExternalIdMap', 1, 0); + +# FailedLoginsMap +CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap( + DB_COLUMN_PREFIXuserName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXcount INTEGER NOT NULL, + DB_COLUMN_PREFIXlastAttempt INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXFailedLoginsMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FailedLoginsMap', 1, 0); + +# GalleryAccessMap +CREATE TABLE DB_TABLE_PREFIXAccessMap( + DB_COLUMN_PREFIXaccessListId INTEGER NOT NULL, + DB_COLUMN_PREFIXuserOrGroupId INTEGER NOT NULL, + DB_COLUMN_PREFIXpermission VARCHAR(32) FOR BIT DATA NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD PRIMARY KEY (DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAcces69_83732 + ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +CREATE INDEX DB_TABLE_PREFIXAcces69_48775 + ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAcces69_18058 + ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXpermission); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessMap', 1, 3); + +# GalleryAccessSubscriberMap +CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap( + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXaccessListId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAccessSubscriberMap ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXAccesca_83732 + ON DB_TABLE_PREFIXAccessSubscriberMap(DB_COLUMN_PREFIXaccessListId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessSubscriberMap', 1, 0); + +# GalleryAlbumItem +CREATE TABLE DB_TABLE_PREFIXAlbumItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXtheme VARCHAR(32), + DB_COLUMN_PREFIXorderBy VARCHAR(128), + DB_COLUMN_PREFIXorderDirection VARCHAR(32) +); + +ALTER TABLE DB_TABLE_PREFIXAlbumItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AlbumItem', 1, 1); + +# GalleryAnimationItem +CREATE TABLE DB_TABLE_PREFIXAnimationItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXAnimationItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AnimationItem', 1, 0); + +# GalleryCacheMap +CREATE TABLE DB_TABLE_PREFIXCacheMap( + DB_COLUMN_PREFIXkey VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXvalue CLOB(2G) NOT LOGGED, + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXtimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXisEmpty SMALLINT +); + +ALTER TABLE DB_TABLE_PREFIXCacheMap ADD PRIMARY KEY (DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype); + +CREATE INDEX DB_TABLE_PREFIXCacheff_75985 + ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXCacheff_21979 + ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('CacheMap', 1, 1); + +# GalleryChildEntity +CREATE TABLE DB_TABLE_PREFIXChildEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXparentId INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXChildEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXChild93_52718 + ON DB_TABLE_PREFIXChildEntity(DB_COLUMN_PREFIXparentId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ChildEntity', 1, 0); + +# GalleryDataItem +CREATE TABLE DB_TABLE_PREFIXDataItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128), + DB_COLUMN_PREFIXsize INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXDataItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DataItem', 1, 0); + +# GalleryDerivative +CREATE TABLE DB_TABLE_PREFIXDerivative( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeSourceId INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeOperations VARCHAR(255), + DB_COLUMN_PREFIXderivativeOrder INTEGER NOT NULL, + DB_COLUMN_PREFIXderivativeSize INTEGER, + DB_COLUMN_PREFIXderivativeType INTEGER NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpostFilterOperations VARCHAR(255), + DB_COLUMN_PREFIXisBroken SMALLINT +); + +ALTER TABLE DB_TABLE_PREFIXDerivative ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXDerivfd_85338 + ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeSourceId); + +CREATE INDEX DB_TABLE_PREFIXDerivfd_25243 + ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeOrder); + +CREATE INDEX DB_TABLE_PREFIXDerivfd_97216 + ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Derivative', 1, 1); + +# GalleryDerivativeImage +CREATE TABLE DB_TABLE_PREFIXDerivativeImage( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXDerivativeImage ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativeImage', 1, 0); + +# GalleryDerivativePreferencesMap +CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap( + DB_COLUMN_PREFIXitemId INTEGER, + DB_COLUMN_PREFIXorder INTEGER, + DB_COLUMN_PREFIXderivativeType INTEGER, + DB_COLUMN_PREFIXderivativeOperations VARCHAR(255) +); + +CREATE INDEX DB_TABLE_PREFIXDeriv94_75985 + ON DB_TABLE_PREFIXDerivativePrefsMap(DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativePrefsMap', 1, 0); + +# GalleryDescendentCountsMap +CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap( + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXdescendentCount INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDescendentCountsMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DescendentCountsMap', 1, 0); + +# GalleryEntity +CREATE TABLE DB_TABLE_PREFIXEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXisLinkable SMALLINT NOT NULL, + DB_COLUMN_PREFIXlinkId INTEGER, + DB_COLUMN_PREFIXmodificationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXserialNumber INTEGER NOT NULL, + DB_COLUMN_PREFIXentityType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXonLoadHandlers VARCHAR(128) +); + +ALTER TABLE DB_TABLE_PREFIXEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXEntit6f_76255 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXcreationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntit6f_35978 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXisLinkable); + +CREATE INDEX DB_TABLE_PREFIXEntit6f_44738 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +CREATE INDEX DB_TABLE_PREFIXEntit6f_63025 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXmodificationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntit6f_60702 + ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXserialNumber); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Entity', 1, 2); + +# GalleryFactoryMap +CREATE TABLE DB_TABLE_PREFIXFactoryMap( + DB_COLUMN_PREFIXclassType VARCHAR(128), + DB_COLUMN_PREFIXclassName VARCHAR(128), + DB_COLUMN_PREFIXimplId VARCHAR(128), + DB_COLUMN_PREFIXimplPath VARCHAR(128), + DB_COLUMN_PREFIXimplModuleId VARCHAR(128), + DB_COLUMN_PREFIXhints VARCHAR(255), + DB_COLUMN_PREFIXorderWeight VARCHAR(255)); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FactoryMap', 1, 0); + +# GalleryFileSystemEntity +CREATE TABLE DB_TABLE_PREFIXFileSystemEntity( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXpathComponent VARCHAR(128) +); + +ALTER TABLE DB_TABLE_PREFIXFileSystemEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXFileS56_3406 + ON DB_TABLE_PREFIXFileSystemEntity(DB_COLUMN_PREFIXpathComponent); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FileSystemEntity', 1, 0); + +# GalleryGroup +CREATE TABLE DB_TABLE_PREFIXGroup( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupType INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupName VARCHAR(128) +); + +ALTER TABLE DB_TABLE_PREFIXGroup ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXGroupa0_19099 + ON DB_TABLE_PREFIXGroup(DB_COLUMN_PREFIXgroupName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Group', 1, 1); + +# GalleryItem +CREATE TABLE DB_TABLE_PREFIXItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXcanContainChildren SMALLINT NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(10000), + DB_COLUMN_PREFIXkeywords VARCHAR(255), + DB_COLUMN_PREFIXownerId INTEGER NOT NULL, + DB_COLUMN_PREFIXrenderer VARCHAR(128), + DB_COLUMN_PREFIXsummary VARCHAR(255), + DB_COLUMN_PREFIXtitle VARCHAR(128), + DB_COLUMN_PREFIXviewedSinceTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXoriginationTimestamp INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXItem79_99070 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXkeywords); + +CREATE INDEX DB_TABLE_PREFIXItem79_21573 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXownerId); + +CREATE INDEX DB_TABLE_PREFIXItem79_54147 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXsummary); + +CREATE INDEX DB_TABLE_PREFIXItem79_90059 + ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXtitle); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Item', 1, 2); + +# GalleryItemAttributesMap +CREATE TABLE DB_TABLE_PREFIXItemAttributesMap( + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXviewCount INTEGER, + DB_COLUMN_PREFIXorderWeight INTEGER, + DB_COLUMN_PREFIXparentSequence VARCHAR(255) NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXItemAttributesMap ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXItemAca_95270 + ON DB_TABLE_PREFIXItemAttributesMap(DB_COLUMN_PREFIXparentSequence); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ItemAttributesMap', 1, 0); + +# GalleryMaintenanceMap +CREATE TABLE DB_TABLE_PREFIXMaintenanceMap( + DB_COLUMN_PREFIXrunId INTEGER NOT NULL, + DB_COLUMN_PREFIXtaskId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtimestamp INTEGER, + DB_COLUMN_PREFIXsuccess SMALLINT, + DB_COLUMN_PREFIXdetails VARCHAR(10000) +); + +ALTER TABLE DB_TABLE_PREFIXMaintenanceMap ADD PRIMARY KEY (DB_COLUMN_PREFIXrunId); + +CREATE INDEX DB_TABLE_PREFIXMaintb2_21687 + ON DB_TABLE_PREFIXMaintenanceMap(DB_COLUMN_PREFIXtaskId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MaintenanceMap', 1, 0); + +# GalleryMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXMimeTypeMap( + DB_COLUMN_PREFIXextension VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXviewable SMALLINT +); + +ALTER TABLE DB_TABLE_PREFIXMimeTypeMap ADD PRIMARY KEY (DB_COLUMN_PREFIXextension); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MimeTypeMap', 1, 0); + +# GalleryMovieItem +CREATE TABLE DB_TABLE_PREFIXMovieItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER, + DB_COLUMN_PREFIXduration INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXMovieItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MovieItem', 1, 0); + +# GalleryPermissionSetMap +CREATE TABLE DB_TABLE_PREFIXPermissionSetMap( + DB_COLUMN_PREFIXmodule VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpermission VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(255), + DB_COLUMN_PREFIXbits VARCHAR(32) FOR BIT DATA NOT NULL, + DB_COLUMN_PREFIXflags INTEGER NOT NULL +); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXPermi6a_18058 + ON DB_TABLE_PREFIXPermissionSetMap(DB_COLUMN_PREFIXpermission); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PermissionSetMap', 1, 0); + +# GalleryPhotoItem +CREATE TABLE DB_TABLE_PREFIXPhotoItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXwidth INTEGER, + DB_COLUMN_PREFIXheight INTEGER +); + +ALTER TABLE DB_TABLE_PREFIXPhotoItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PhotoItem', 1, 0); + +# GalleryPluginMap +CREATE TABLE DB_TABLE_PREFIXPluginMap( + DB_COLUMN_PREFIXpluginType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXactive SMALLINT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD PRIMARY KEY (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginMap', 1, 1); + +# GalleryPluginPackageMap +CREATE TABLE DB_TABLE_PREFIXPluginPackageMap( + DB_COLUMN_PREFIXpluginType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageVersion VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageBuild VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXlocked SMALLINT NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXPlugied_80596 + ON DB_TABLE_PREFIXPluginPackageMap(DB_COLUMN_PREFIXpluginType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginPackageMap', 1, 1); + +# GalleryPluginParameterMap +CREATE TABLE DB_TABLE_PREFIXPluginParameterMap( + DB_COLUMN_PREFIXpluginType VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXitemId INTEGER NOT NULL, + DB_COLUMN_PREFIXparameterName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXparameterValue VARCHAR(10000) NOT NULL +); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXPlugia2_26955 + ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName); + +CREATE INDEX DB_TABLE_PREFIXPlugia2_80596 + ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType); + +CREATE INDEX DB_TABLE_PREFIXPlugia2_12808 + ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginParameterMap', 1, 3); + +# GalleryRecoverPasswordMap +CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap( + DB_COLUMN_PREFIXuserName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXauthString VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXrequestExpires INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXRecoverPasswordMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('RecoverPasswordMap', 1, 1); + +# GallerySessionMap +CREATE TABLE DB_TABLE_PREFIXSessionMap( + DB_COLUMN_PREFIXid VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXremoteIdentifier VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXmodificationTimestamp INTEGER NOT NULL, + DB_COLUMN_PREFIXdata CLOB(2G) NOT LOGGED +); + +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXSessibc_53500 + ON DB_TABLE_PREFIXSessionMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('SessionMap', 1, 1); + +# GalleryToolkitOperationMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMap( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXparametersCrc VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXoutputMimeType VARCHAR(128), + DB_COLUMN_PREFIXdescription VARCHAR(255) +); + +ALTER TABLE DB_TABLE_PREFIXTkOperatnMap ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMap', 1, 0); + +# GalleryToolkitOperationMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap( + DB_COLUMN_PREFIXoperationName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpriority INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkOpe98_2014 + ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXoperationName); + +CREATE INDEX DB_TABLE_PREFIXTkOpe98_79463 + ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMimeTypeMap', 1, 0); + +# GalleryToolkitOperationParameterMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap( + DB_COLUMN_PREFIXoperationName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXposition INTEGER NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(255) +); + +CREATE INDEX DB_TABLE_PREFIXTkOpee1_2014 + ON DB_TABLE_PREFIXTkOperatnParameterMap(DB_COLUMN_PREFIXoperationName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnParameterMap', 1, 0); + +# GalleryToolkitPropertyMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMap( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtype VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription VARCHAR(128) NOT NULL); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMap', 1, 0); + +# GalleryToolkitPropertyMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap( + DB_COLUMN_PREFIXpropertyName VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmimeType VARCHAR(128) NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkProcf_52881 + ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXpropertyName); + +CREATE INDEX DB_TABLE_PREFIXTkProcf_79463 + ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMimeTypeMap', 1, 0); + +# GalleryUnknownItem +CREATE TABLE DB_TABLE_PREFIXUnknownItem( + DB_COLUMN_PREFIXid INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXUnknownItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UnknownItem', 1, 0); + +# GalleryUser +CREATE TABLE DB_TABLE_PREFIXUser( + DB_COLUMN_PREFIXid INTEGER NOT NULL, + DB_COLUMN_PREFIXuserName VARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXfullName VARCHAR(128), + DB_COLUMN_PREFIXhashedPassword VARCHAR(128), + DB_COLUMN_PREFIXemail VARCHAR(255), + DB_COLUMN_PREFIXlanguage VARCHAR(128), + DB_COLUMN_PREFIXlocked SMALLINT DEFAULT 0 +); + +ALTER TABLE DB_TABLE_PREFIXUser ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXUser75_16233 + ON DB_TABLE_PREFIXUser(DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('User', 1, 2); + +# GalleryUserGroupMap +CREATE TABLE DB_TABLE_PREFIXUserGroupMap( + DB_COLUMN_PREFIXuserId INTEGER NOT NULL, + DB_COLUMN_PREFIXgroupId INTEGER NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXUserGa7_69068 + ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXuserId); + +CREATE INDEX DB_TABLE_PREFIXUserGa7_89328 + ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXgroupId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UserGroupMap', 1, 0); + +# Lock +CREATE TABLE DB_TABLE_PREFIXLock( + DB_COLUMN_PREFIXlockId INTEGER, + DB_COLUMN_PREFIXreadEntityId INTEGER, + DB_COLUMN_PREFIXwriteEntityId INTEGER, + DB_COLUMN_PREFIXfreshUntil INTEGER, + DB_COLUMN_PREFIXrequest INTEGER +); + +CREATE INDEX DB_TABLE_PREFIXLock59_11039 + ON DB_TABLE_PREFIXLock(DB_COLUMN_PREFIXlockId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Lock', 1, 0); + +# R_GalleryCache_1.0 +DROP TABLE DB_TABLE_PREFIXCache; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='Cache'; + +# R_GalleryItemPropertiesMap_1.0 +DROP TABLE DB_TABLE_PREFIXItemPropertiesMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='ItemPropertiesMap'; + +# R_GalleryPermissionMap_1.0 +DROP TABLE DB_TABLE_PREFIXPermissionMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='PermissionMap'; + +# Schema +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmajor INTEGER NOT NULL, + DB_COLUMN_PREFIXminor INTEGER NOT NULL, + DB_COLUMN_PREFIXcreateSql VARCHAR(10000), + DB_COLUMN_PREFIXpluginId VARCHAR(32), + DB_COLUMN_PREFIXtype VARCHAR(32), + DB_COLUMN_PREFIXinfo VARCHAR(15000) +); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 2); + +# T_InstallerTest_1 +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname VARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmajor INTEGER NOT NULL, + DB_COLUMN_PREFIXminor INTEGER NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 0); + +# T_InstallerTest_2 +ALTER TABLE DB_TABLE_PREFIXSchema ADD COLUMN DB_COLUMN_PREFIXtestCol VARCHAR(128); + +CREATE INDEX DB_TABLE_PREFIXSchem9a_18169 ON DB_TABLE_PREFIXSchema(DB_COLUMN_PREFIXtestCol); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# T_InstallerTest_3 +DROP INDEX DB_TABLE_PREFIXSchem9a_18169; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# T_InstallerTest_4 +DROP TABLE DB_TABLE_PREFIXSchema; + +## mssql +# A_GalleryAccessMap_1.0 +DROP INDEX DB_TABLE_PREFIXAccessMap_33666; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD DB_COLUMN_PREFIXuserOrGroupId INT DEFAULT '0' NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryAccessMap_1.1 +ALTER TABLE DB_TABLE_PREFIXAccessMap DROP COLUMN DB_COLUMN_PREFIXuserId; + +ALTER TABLE DB_TABLE_PREFIXAccessMap DROP COLUMN DB_COLUMN_PREFIXgroupId; + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD PRIMARY KEY(DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_48775 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryAccessMap_1.2 +CREATE INDEX DB_TABLE_PREFIXAccessMap_83732 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='AccessMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GalleryAlbumItem_1.0 +ALTER TABLE DB_TABLE_PREFIXAlbumItem DROP COLUMN DB_COLUMN_PREFIXlayout; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='AlbumItem' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryCacheMap_1.0 +DROP INDEX DB_TABLE_PREFIXCacheMap.DB_TABLE_PREFIXCacheMap_81545; + +DROP INDEX DB_TABLE_PREFIXCacheMap.DB_TABLE_PREFIXCacheMap_24286; + +DROP INDEX DB_TABLE_PREFIXCacheMap.DB_TABLE_PREFIXCacheMap_69068; + +ALTER TABLE DB_TABLE_PREFIXCacheMap ADD DB_COLUMN_PREFIXisEmpty BIT NULL; + +CREATE INDEX DB_TABLE_PREFIXCacheMap_21979 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='CacheMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryDerivative_1.0 +ALTER TABLE DB_TABLE_PREFIXDerivative ADD DB_COLUMN_PREFIXisBroken BIT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Derivative' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.0 +ALTER TABLE DB_TABLE_PREFIXEntity ADD DB_COLUMN_PREFIXonLoadHandlers NVARCHAR(128) NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryEntity_1.1 +CREATE INDEX DB_TABLE_PREFIXEntity_44738 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Entity' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryGroup_1.0 +ALTER TABLE DB_TABLE_PREFIXGroup ADD DB_COLUMN_PREFIXgroupNameTemp NVARCHAR(128); + +UPDATE DB_TABLE_PREFIXGroup SET DB_COLUMN_PREFIXgroupNameTemp = CAST(DB_COLUMN_PREFIXgroupName AS NVARCHAR(128)); + +ALTER TABLE DB_TABLE_PREFIXGroup DROP COLUMN DB_COLUMN_PREFIXgroupName; + +ALTER TABLE DB_TABLE_PREFIXGroup ADD DB_COLUMN_PREFIXgroupName NVARCHAR(128); + +UPDATE DB_TABLE_PREFIXGroup SET DB_COLUMN_PREFIXgroupName = DB_COLUMN_PREFIXgroupNameTemp; + +ALTER TABLE DB_TABLE_PREFIXGroup DROP COLUMN DB_COLUMN_PREFIXgroupNameTemp; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Group' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.0 +ALTER TABLE DB_TABLE_PREFIXItem ADD DB_COLUMN_PREFIXoriginationTimestamp INT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryItem_1.1 +ALTER TABLE DB_TABLE_PREFIXItem ADD DB_COLUMN_PREFIXrenderer NVARCHAR(128) NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Item' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD DB_COLUMN_PREFIXpluginTypeTemp NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginTypeTemp = CAST(DB_COLUMN_PREFIXpluginType AS NVARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD DB_COLUMN_PREFIXpluginType NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginType = DB_COLUMN_PREFIXpluginTypeTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginTypeTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ALTER COLUMN DB_COLUMN_PREFIXpluginType NVARCHAR(32) NOT NULL; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD DB_COLUMN_PREFIXpluginIdTemp NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginIdTemp = CAST(DB_COLUMN_PREFIXpluginId AS NVARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD DB_COLUMN_PREFIXpluginId NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginMap SET DB_COLUMN_PREFIXpluginId = DB_COLUMN_PREFIXpluginIdTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginMap DROP COLUMN DB_COLUMN_PREFIXpluginIdTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginMap ALTER COLUMN DB_COLUMN_PREFIXpluginId NVARCHAR(32) NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginPackageMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginPackageMap ADD DB_COLUMN_PREFIXlocked BIT DEFAULT '0' NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginPackageMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.0 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD DB_COLUMN_PREFIXpluginTypeTemp NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginTypeTemp = CAST(DB_COLUMN_PREFIXpluginType AS NVARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginType; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD DB_COLUMN_PREFIXpluginType NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginType = DB_COLUMN_PREFIXpluginTypeTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginTypeTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER COLUMN DB_COLUMN_PREFIXpluginType NVARCHAR(32) NOT NULL; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD DB_COLUMN_PREFIXpluginIdTemp NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginIdTemp = CAST(DB_COLUMN_PREFIXpluginId AS NVARCHAR(32)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginId; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD DB_COLUMN_PREFIXpluginId NVARCHAR(32); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXpluginId = DB_COLUMN_PREFIXpluginIdTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXpluginIdTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER COLUMN DB_COLUMN_PREFIXpluginId NVARCHAR(32) NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryPluginParameterMap_1.1 +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_GalleryPluginParameterMap_1.2 +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD DB_COLUMN_PREFIXparameterValueTemp NVARCHAR(MAX); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXparameterValueTemp = CAST(DB_COLUMN_PREFIXparameterValue AS NVARCHAR(MAX)); + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXparameterValue; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ADD DB_COLUMN_PREFIXparameterValue NVARCHAR(MAX); + +UPDATE DB_TABLE_PREFIXPluginParameterMap SET DB_COLUMN_PREFIXparameterValue = DB_COLUMN_PREFIXparameterValueTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap DROP COLUMN DB_COLUMN_PREFIXparameterValueTemp; + +ALTER TABLE DB_TABLE_PREFIXPluginParameterMap ALTER COLUMN DB_COLUMN_PREFIXparameterValue NVARCHAR(MAX) NOT NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=3 + WHERE DB_COLUMN_PREFIXname='PluginParameterMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=2; + +# A_GallerySessionMap_1.0 +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD DB_COLUMN_PREFIXdataTemp NVARCHAR(MAX); + +UPDATE DB_TABLE_PREFIXSessionMap SET DB_COLUMN_PREFIXdataTemp = CAST(DB_COLUMN_PREFIXdata AS NVARCHAR(MAX)); + +ALTER TABLE DB_TABLE_PREFIXSessionMap DROP COLUMN DB_COLUMN_PREFIXdata; + +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD DB_COLUMN_PREFIXdata NVARCHAR(MAX); + +UPDATE DB_TABLE_PREFIXSessionMap SET DB_COLUMN_PREFIXdata = DB_COLUMN_PREFIXdataTemp; + +ALTER TABLE DB_TABLE_PREFIXSessionMap DROP COLUMN DB_COLUMN_PREFIXdataTemp; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='SessionMap' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.0 +ALTER TABLE DB_TABLE_PREFIXUser ADD DB_COLUMN_PREFIXemailTemp NVARCHAR(255); + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXemailTemp = CAST(DB_COLUMN_PREFIXemail AS NVARCHAR(255)); + +ALTER TABLE DB_TABLE_PREFIXUser DROP COLUMN DB_COLUMN_PREFIXemail; + +ALTER TABLE DB_TABLE_PREFIXUser ADD DB_COLUMN_PREFIXemail NVARCHAR(255); + +UPDATE DB_TABLE_PREFIXUser SET DB_COLUMN_PREFIXemail = DB_COLUMN_PREFIXemailTemp; + +ALTER TABLE DB_TABLE_PREFIXUser DROP COLUMN DB_COLUMN_PREFIXemailTemp; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_GalleryUser_1.1 +ALTER TABLE DB_TABLE_PREFIXUser ADD DB_COLUMN_PREFIXlocked BIT DEFAULT '0' NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='User' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# A_Schema_1.0 +ALTER TABLE DB_TABLE_PREFIXSchema ADD DB_COLUMN_PREFIXcreateSql NVARCHAR(MAX) NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# A_Schema_1.1 +ALTER TABLE DB_TABLE_PREFIXSchema ADD DB_COLUMN_PREFIXpluginId NVARCHAR(32) NULL; + +ALTER TABLE DB_TABLE_PREFIXSchema ADD DB_COLUMN_PREFIXtype NVARCHAR(32) NULL; + +ALTER TABLE DB_TABLE_PREFIXSchema ADD DB_COLUMN_PREFIXinfo NVARCHAR(MAX) NULL; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# ExternalIdMap +CREATE TABLE DB_TABLE_PREFIXExternalIdMap( + DB_COLUMN_PREFIXexternalId NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXentityType NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXentityId INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXExternalIdMap ADD PRIMARY KEY (DB_COLUMN_PREFIXexternalId, DB_COLUMN_PREFIXentityType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ExternalIdMap', 1, 0); + +# FailedLoginsMap +CREATE TABLE DB_TABLE_PREFIXFailedLoginsMap( + DB_COLUMN_PREFIXuserName NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXcount INT NOT NULL, + DB_COLUMN_PREFIXlastAttempt INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXFailedLoginsMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FailedLoginsMap', 1, 0); + +# GalleryAccessMap +CREATE TABLE DB_TABLE_PREFIXAccessMap( + DB_COLUMN_PREFIXaccessListId INT NOT NULL, + DB_COLUMN_PREFIXuserOrGroupId INT NOT NULL, + DB_COLUMN_PREFIXpermission INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAccessMap ADD PRIMARY KEY (DB_COLUMN_PREFIXaccessListId, DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_83732 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXaccessListId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_48775 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXuserOrGroupId); + +CREATE INDEX DB_TABLE_PREFIXAccessMap_18058 ON DB_TABLE_PREFIXAccessMap(DB_COLUMN_PREFIXpermission); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessMap', 1, 3); + +# GalleryAccessSubscriberMap +CREATE TABLE DB_TABLE_PREFIXAccessSubscriberMap( + DB_COLUMN_PREFIXitemId INT NOT NULL, + DB_COLUMN_PREFIXaccessListId INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAccessSubscriberMap ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXAccessSubscriberMap_83732 ON DB_TABLE_PREFIXAccessSubscriberMap(DB_COLUMN_PREFIXaccessListId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AccessSubscriberMap', 1, 0); + +# GalleryAlbumItem +CREATE TABLE DB_TABLE_PREFIXAlbumItem( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXtheme NVARCHAR(32) NULL, + DB_COLUMN_PREFIXorderBy NVARCHAR(128) NULL, + DB_COLUMN_PREFIXorderDirection NVARCHAR(32) NULL +); + +ALTER TABLE DB_TABLE_PREFIXAlbumItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AlbumItem', 1, 1); + +# GalleryAnimationItem +CREATE TABLE DB_TABLE_PREFIXAnimationItem( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXwidth INT NULL, + DB_COLUMN_PREFIXheight INT NULL +); + +ALTER TABLE DB_TABLE_PREFIXAnimationItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('AnimationItem', 1, 0); + +# GalleryCacheMap +CREATE TABLE DB_TABLE_PREFIXCacheMap( + DB_COLUMN_PREFIXkey NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXvalue NVARCHAR(MAX) NULL, + DB_COLUMN_PREFIXuserId INT NOT NULL, + DB_COLUMN_PREFIXitemId INT NOT NULL, + DB_COLUMN_PREFIXtype NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXtimestamp INT NOT NULL, + DB_COLUMN_PREFIXisEmpty BIT NULL +); + +ALTER TABLE DB_TABLE_PREFIXCacheMap ADD PRIMARY KEY (DB_COLUMN_PREFIXkey, DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXtype); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_75985 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXCacheMap_21979 ON DB_TABLE_PREFIXCacheMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXtimestamp, DB_COLUMN_PREFIXisEmpty); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('CacheMap', 1, 1); + +# GalleryChildEntity +CREATE TABLE DB_TABLE_PREFIXChildEntity( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXparentId INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXChildEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXChildEntity_52718 ON DB_TABLE_PREFIXChildEntity(DB_COLUMN_PREFIXparentId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ChildEntity', 1, 0); + +# GalleryDataItem +CREATE TABLE DB_TABLE_PREFIXDataItem( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXmimeType NVARCHAR(128) NULL, + DB_COLUMN_PREFIXsize INT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDataItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DataItem', 1, 0); + +# GalleryDerivative +CREATE TABLE DB_TABLE_PREFIXDerivative( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXderivativeSourceId INT NOT NULL, + DB_COLUMN_PREFIXderivativeOperations NVARCHAR(255) NULL, + DB_COLUMN_PREFIXderivativeOrder INT NOT NULL, + DB_COLUMN_PREFIXderivativeSize INT NULL, + DB_COLUMN_PREFIXderivativeType INT NOT NULL, + DB_COLUMN_PREFIXmimeType NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpostFilterOperations NVARCHAR(255) NULL, + DB_COLUMN_PREFIXisBroken BIT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDerivative ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXDerivative_85338 ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeSourceId); + +CREATE INDEX DB_TABLE_PREFIXDerivative_25243 ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeOrder); + +CREATE INDEX DB_TABLE_PREFIXDerivative_97216 ON DB_TABLE_PREFIXDerivative(DB_COLUMN_PREFIXderivativeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Derivative', 1, 1); + +# GalleryDerivativeImage +CREATE TABLE DB_TABLE_PREFIXDerivativeImage( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXwidth INT NULL, + DB_COLUMN_PREFIXheight INT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDerivativeImage ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativeImage', 1, 0); + +# GalleryDerivativePreferencesMap +CREATE TABLE DB_TABLE_PREFIXDerivativePrefsMap( + DB_COLUMN_PREFIXitemId INT NULL, + DB_COLUMN_PREFIXorder INT NULL, + DB_COLUMN_PREFIXderivativeType INT NULL, + DB_COLUMN_PREFIXderivativeOperations NVARCHAR(255) NULL +); + +CREATE INDEX DB_TABLE_PREFIXDerivativePrefsMap_75985 ON DB_TABLE_PREFIXDerivativePrefsMap(DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DerivativePrefsMap', 1, 0); + +# GalleryDescendentCountsMap +CREATE TABLE DB_TABLE_PREFIXDescendentCountsMap( + DB_COLUMN_PREFIXuserId INT NOT NULL, + DB_COLUMN_PREFIXitemId INT NOT NULL, + DB_COLUMN_PREFIXdescendentCount INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXDescendentCountsMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('DescendentCountsMap', 1, 0); + +# GalleryEntity +CREATE TABLE DB_TABLE_PREFIXEntity( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INT NOT NULL, + DB_COLUMN_PREFIXisLinkable BIT NOT NULL, + DB_COLUMN_PREFIXlinkId INT NULL, + DB_COLUMN_PREFIXmodificationTimestamp INT NOT NULL, + DB_COLUMN_PREFIXserialNumber INT NOT NULL, + DB_COLUMN_PREFIXentityType NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXonLoadHandlers NVARCHAR(128) NULL +); + +ALTER TABLE DB_TABLE_PREFIXEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXEntity_76255 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXcreationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntity_35978 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXisLinkable); + +CREATE INDEX DB_TABLE_PREFIXEntity_44738 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXlinkId); + +CREATE INDEX DB_TABLE_PREFIXEntity_63025 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXmodificationTimestamp); + +CREATE INDEX DB_TABLE_PREFIXEntity_60702 ON DB_TABLE_PREFIXEntity(DB_COLUMN_PREFIXserialNumber); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Entity', 1, 2); + +# GalleryFactoryMap +CREATE TABLE DB_TABLE_PREFIXFactoryMap( + DB_COLUMN_PREFIXclassType NVARCHAR(128) NULL, + DB_COLUMN_PREFIXclassName NVARCHAR(128) NULL, + DB_COLUMN_PREFIXimplId NVARCHAR(128) NULL, + DB_COLUMN_PREFIXimplPath NVARCHAR(128) NULL, + DB_COLUMN_PREFIXimplModuleId NVARCHAR(128) NULL, + DB_COLUMN_PREFIXhints NVARCHAR(255) NULL, + DB_COLUMN_PREFIXorderWeight NVARCHAR(255) NULL); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FactoryMap', 1, 0); + +# GalleryFileSystemEntity +CREATE TABLE DB_TABLE_PREFIXFileSystemEntity( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXpathComponent NVARCHAR(128) NULL +); + +ALTER TABLE DB_TABLE_PREFIXFileSystemEntity ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXFileSystemEntity_3406 ON DB_TABLE_PREFIXFileSystemEntity(DB_COLUMN_PREFIXpathComponent); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('FileSystemEntity', 1, 0); + +# GalleryGroup +CREATE TABLE DB_TABLE_PREFIXGroup( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXgroupType INT NOT NULL, + DB_COLUMN_PREFIXgroupName NVARCHAR(128) NULL +); + +ALTER TABLE DB_TABLE_PREFIXGroup ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXGroup_19099 ON DB_TABLE_PREFIXGroup(DB_COLUMN_PREFIXgroupName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Group', 1, 1); + +# GalleryItem +CREATE TABLE DB_TABLE_PREFIXItem( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXcanContainChildren BIT NOT NULL, + DB_COLUMN_PREFIXdescription NVARCHAR(MAX) NULL, + DB_COLUMN_PREFIXkeywords NVARCHAR(255) NULL, + DB_COLUMN_PREFIXownerId INT NOT NULL, + DB_COLUMN_PREFIXrenderer NVARCHAR(128) NULL, + DB_COLUMN_PREFIXsummary NVARCHAR(255) NULL, + DB_COLUMN_PREFIXtitle NVARCHAR(128) NULL, + DB_COLUMN_PREFIXviewedSinceTimestamp INT NOT NULL, + DB_COLUMN_PREFIXoriginationTimestamp INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXItem_99070 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXkeywords); + +CREATE INDEX DB_TABLE_PREFIXItem_21573 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXownerId); + +CREATE INDEX DB_TABLE_PREFIXItem_54147 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXsummary); + +CREATE INDEX DB_TABLE_PREFIXItem_90059 ON DB_TABLE_PREFIXItem(DB_COLUMN_PREFIXtitle); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Item', 1, 2); + +# GalleryItemAttributesMap +CREATE TABLE DB_TABLE_PREFIXItemAttributesMap( + DB_COLUMN_PREFIXitemId INT NOT NULL, + DB_COLUMN_PREFIXviewCount INT NULL, + DB_COLUMN_PREFIXorderWeight INT NULL, + DB_COLUMN_PREFIXparentSequence NVARCHAR(255) NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXItemAttributesMap ADD PRIMARY KEY (DB_COLUMN_PREFIXitemId); + +CREATE INDEX DB_TABLE_PREFIXItemAttributesMap_95270 ON DB_TABLE_PREFIXItemAttributesMap(DB_COLUMN_PREFIXparentSequence); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('ItemAttributesMap', 1, 0); + +# GalleryMaintenanceMap +CREATE TABLE DB_TABLE_PREFIXMaintenanceMap( + DB_COLUMN_PREFIXrunId INT NOT NULL, + DB_COLUMN_PREFIXtaskId NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtimestamp INT NULL, + DB_COLUMN_PREFIXsuccess BIT NULL, + DB_COLUMN_PREFIXdetails NVARCHAR(MAX) NULL +); + +ALTER TABLE DB_TABLE_PREFIXMaintenanceMap ADD PRIMARY KEY (DB_COLUMN_PREFIXrunId); + +CREATE INDEX DB_TABLE_PREFIXMaintenanceMap_21687 ON DB_TABLE_PREFIXMaintenanceMap(DB_COLUMN_PREFIXtaskId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MaintenanceMap', 1, 0); + +# GalleryMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXMimeTypeMap( + DB_COLUMN_PREFIXextension NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXmimeType NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXviewable BIT NULL +); + +ALTER TABLE DB_TABLE_PREFIXMimeTypeMap ADD PRIMARY KEY (DB_COLUMN_PREFIXextension); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MimeTypeMap', 1, 0); + +# GalleryMovieItem +CREATE TABLE DB_TABLE_PREFIXMovieItem( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXwidth INT NULL, + DB_COLUMN_PREFIXheight INT NULL, + DB_COLUMN_PREFIXduration INT NULL +); + +ALTER TABLE DB_TABLE_PREFIXMovieItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('MovieItem', 1, 0); + +# GalleryPermissionSetMap +CREATE TABLE DB_TABLE_PREFIXPermissionSetMap( + DB_COLUMN_PREFIXmodule NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpermission NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription NVARCHAR(255) NULL, + DB_COLUMN_PREFIXbits INT NOT NULL, + DB_COLUMN_PREFIXflags INT NOT NULL +); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXPermissionSetMap_18058 ON DB_TABLE_PREFIXPermissionSetMap(DB_COLUMN_PREFIXpermission); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PermissionSetMap', 1, 0); + +# GalleryPhotoItem +CREATE TABLE DB_TABLE_PREFIXPhotoItem( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXwidth INT NULL, + DB_COLUMN_PREFIXheight INT NULL +); + +ALTER TABLE DB_TABLE_PREFIXPhotoItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PhotoItem', 1, 0); + +# GalleryPluginMap +CREATE TABLE DB_TABLE_PREFIXPluginMap( + DB_COLUMN_PREFIXpluginType NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXactive BIT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXPluginMap ADD PRIMARY KEY (DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginMap', 1, 1); + +# GalleryPluginPackageMap +CREATE TABLE DB_TABLE_PREFIXPluginPackageMap( + DB_COLUMN_PREFIXpluginType NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageName NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageVersion NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpackageBuild NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXlocked BIT NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXPluginPackageMap_80596 ON DB_TABLE_PREFIXPluginPackageMap(DB_COLUMN_PREFIXpluginType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginPackageMap', 1, 1); + +# GalleryPluginParameterMap +CREATE TABLE DB_TABLE_PREFIXPluginParameterMap( + DB_COLUMN_PREFIXpluginType NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXpluginId NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXitemId INT NOT NULL, + DB_COLUMN_PREFIXparameterName NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXparameterValue NVARCHAR(MAX) NOT NULL +); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXPluginParameterMap_26955 ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId, DB_COLUMN_PREFIXparameterName); + +CREATE INDEX DB_TABLE_PREFIXPluginParameterMap_80596 ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType); + +CREATE INDEX DB_TABLE_PREFIXPluginParameterMap_12808 ON DB_TABLE_PREFIXPluginParameterMap(DB_COLUMN_PREFIXpluginType, DB_COLUMN_PREFIXpluginId, DB_COLUMN_PREFIXitemId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('PluginParameterMap', 1, 3); + +# GalleryRecoverPasswordMap +CREATE TABLE DB_TABLE_PREFIXRecoverPasswordMap( + DB_COLUMN_PREFIXuserName NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXauthString NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXrequestExpires INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXRecoverPasswordMap ADD PRIMARY KEY (DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('RecoverPasswordMap', 1, 1); + +# GallerySessionMap +CREATE TABLE DB_TABLE_PREFIXSessionMap( + DB_COLUMN_PREFIXid NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXuserId INT NOT NULL, + DB_COLUMN_PREFIXremoteIdentifier NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXcreationTimestamp INT NOT NULL, + DB_COLUMN_PREFIXmodificationTimestamp INT NOT NULL, + DB_COLUMN_PREFIXdata NVARCHAR(MAX) NULL +); + +ALTER TABLE DB_TABLE_PREFIXSessionMap ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE INDEX DB_TABLE_PREFIXSessionMap_53500 ON DB_TABLE_PREFIXSessionMap(DB_COLUMN_PREFIXuserId, DB_COLUMN_PREFIXcreationTimestamp, DB_COLUMN_PREFIXmodificationTimestamp); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('SessionMap', 1, 1); + +# GalleryToolkitOperationMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMap( + DB_COLUMN_PREFIXname NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXparametersCrc NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXoutputMimeType NVARCHAR(128) NULL, + DB_COLUMN_PREFIXdescription NVARCHAR(255) NULL +); + +ALTER TABLE DB_TABLE_PREFIXTkOperatnMap ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMap', 1, 0); + +# GalleryToolkitOperationMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnMimeTypeMap( + DB_COLUMN_PREFIXoperationName NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmimeType NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXpriority INT NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_2014 ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXoperationName); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnMimeTypeMap_79463 ON DB_TABLE_PREFIXTkOperatnMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnMimeTypeMap', 1, 0); + +# GalleryToolkitOperationParameterMap +CREATE TABLE DB_TABLE_PREFIXTkOperatnParameterMap( + DB_COLUMN_PREFIXoperationName NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXposition INT NOT NULL, + DB_COLUMN_PREFIXtype NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription NVARCHAR(255) NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkOperatnParameterMap_2014 ON DB_TABLE_PREFIXTkOperatnParameterMap(DB_COLUMN_PREFIXoperationName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkOperatnParameterMap', 1, 0); + +# GalleryToolkitPropertyMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMap( + DB_COLUMN_PREFIXname NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtype NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXdescription NVARCHAR(128) NOT NULL); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMap', 1, 0); + +# GalleryToolkitPropertyMimeTypeMap +CREATE TABLE DB_TABLE_PREFIXTkPropertyMimeTypeMap( + DB_COLUMN_PREFIXpropertyName NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXtoolkitId NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmimeType NVARCHAR(128) NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_52881 ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXpropertyName); + +CREATE INDEX DB_TABLE_PREFIXTkPropertyMimeTypeMap_79463 ON DB_TABLE_PREFIXTkPropertyMimeTypeMap(DB_COLUMN_PREFIXmimeType); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('TkPropertyMimeTypeMap', 1, 0); + +# GalleryUnknownItem +CREATE TABLE DB_TABLE_PREFIXUnknownItem( + DB_COLUMN_PREFIXid INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXUnknownItem ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UnknownItem', 1, 0); + +# GalleryUser +CREATE TABLE DB_TABLE_PREFIXUser( + DB_COLUMN_PREFIXid INT NOT NULL, + DB_COLUMN_PREFIXuserName NVARCHAR(32) NOT NULL, + DB_COLUMN_PREFIXfullName NVARCHAR(128) NULL, + DB_COLUMN_PREFIXhashedPassword NVARCHAR(128) NULL, + DB_COLUMN_PREFIXemail NVARCHAR(255) NULL, + DB_COLUMN_PREFIXlanguage NVARCHAR(128) NULL, + DB_COLUMN_PREFIXlocked BIT DEFAULT '0' NULL +); + +ALTER TABLE DB_TABLE_PREFIXUser ADD PRIMARY KEY (DB_COLUMN_PREFIXid); + +CREATE UNIQUE INDEX DB_TABLE_PREFIXUser_16233 ON DB_TABLE_PREFIXUser(DB_COLUMN_PREFIXuserName); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('User', 1, 2); + +# GalleryUserGroupMap +CREATE TABLE DB_TABLE_PREFIXUserGroupMap( + DB_COLUMN_PREFIXuserId INT NOT NULL, + DB_COLUMN_PREFIXgroupId INT NOT NULL +); + +CREATE INDEX DB_TABLE_PREFIXUserGroupMap_69068 ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXuserId); + +CREATE INDEX DB_TABLE_PREFIXUserGroupMap_89328 ON DB_TABLE_PREFIXUserGroupMap(DB_COLUMN_PREFIXgroupId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('UserGroupMap', 1, 0); + +# Lock +CREATE TABLE DB_TABLE_PREFIXLock( + DB_COLUMN_PREFIXlockId INT NULL, + DB_COLUMN_PREFIXreadEntityId INT NULL, + DB_COLUMN_PREFIXwriteEntityId INT NULL, + DB_COLUMN_PREFIXfreshUntil INT NULL, + DB_COLUMN_PREFIXrequest INT NULL +); + +CREATE INDEX DB_TABLE_PREFIXLock_11039 ON DB_TABLE_PREFIXLock(DB_COLUMN_PREFIXlockId); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Lock', 1, 0); + +# R_GalleryCache_1.0 +DROP TABLE DB_TABLE_PREFIXCache; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='Cache'; + +# R_GalleryItemPropertiesMap_1.0 +DROP TABLE DB_TABLE_PREFIXItemPropertiesMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='ItemPropertiesMap'; + +# R_GalleryPermissionMap_1.0 +DROP TABLE DB_TABLE_PREFIXPermissionMap; + +DELETE FROM DB_TABLE_PREFIXSchema WHERE DB_COLUMN_PREFIXname='PermissionMap'; + +# Schema +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmajor INT NOT NULL, + DB_COLUMN_PREFIXminor INT NOT NULL, + DB_COLUMN_PREFIXcreateSql NVARCHAR(MAX) NULL, + DB_COLUMN_PREFIXpluginId NVARCHAR(32) NULL, + DB_COLUMN_PREFIXtype NVARCHAR(32) NULL, + DB_COLUMN_PREFIXinfo NVARCHAR(MAX) NULL +); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 2); + +# T_InstallerTest_1 +CREATE TABLE DB_TABLE_PREFIXSchema( + DB_COLUMN_PREFIXname NVARCHAR(128) NOT NULL, + DB_COLUMN_PREFIXmajor INT NOT NULL, + DB_COLUMN_PREFIXminor INT NOT NULL +); + +ALTER TABLE DB_TABLE_PREFIXSchema ADD PRIMARY KEY (DB_COLUMN_PREFIXname); + +INSERT INTO DB_TABLE_PREFIXSchema ( + DB_COLUMN_PREFIXname, + DB_COLUMN_PREFIXmajor, + DB_COLUMN_PREFIXminor +) VALUES('Schema', 1, 0); + +# T_InstallerTest_2 +ALTER TABLE DB_TABLE_PREFIXSchema ADD DB_COLUMN_PREFIXtestCol NVARCHAR(128) NULL; + +CREATE INDEX DB_TABLE_PREFIXSchema_18169 ON DB_TABLE_PREFIXSchema(DB_COLUMN_PREFIXtestCol); + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=1 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=0; + +# T_InstallerTest_3 +DROP INDEX DB_TABLE_PREFIXSchema.DB_TABLE_PREFIXSchema_18169; + +UPDATE DB_TABLE_PREFIXSchema + SET DB_COLUMN_PREFIXmajor=1, DB_COLUMN_PREFIXminor=2 + WHERE DB_COLUMN_PREFIXname='Schema' AND DB_COLUMN_PREFIXmajor=1 AND DB_COLUMN_PREFIXminor=1; + +# T_InstallerTest_4 +DROP TABLE DB_TABLE_PREFIXSchema; + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.0.xml new file mode 100644 index 0000000..bf1e821 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.0.xml @@ -0,0 +1,30 @@ + + + + + AccessMap + + 1 + 0 + + + 1 + 1 + + + + accessListId + userId + groupId + + + + + userOrGroupId + INTEGER + + 0 + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.1.xml new file mode 100644 index 0000000..708e1c6 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.1.xml @@ -0,0 +1,32 @@ + + + + + AccessMap + + 1 + 1 + + + 1 + 2 + + + userId + + + groupId + + + + accessListId + userOrGroupId + + + + + userOrGroupId + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.2.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.2.xml new file mode 100644 index 0000000..16d6596 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAccessMap_1.2.xml @@ -0,0 +1,20 @@ + + + + + AccessMap + + 1 + 2 + + + 1 + 3 + + + + accessListId + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAlbumItem_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAlbumItem_1.0.xml new file mode 100644 index 0000000..0cad5bd --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryAlbumItem_1.0.xml @@ -0,0 +1,19 @@ + + + + + AlbumItem + + 1 + 0 + + + 1 + 1 + + + layout + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryCacheMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryCacheMap_1.0.xml new file mode 100644 index 0000000..d7c5eaa --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryCacheMap_1.0.xml @@ -0,0 +1,43 @@ + + + + + CacheMap + + 1 + 0 + + + 1 + 1 + + + + type + + + + + timestamp + + + + + userId + + + + + isEmpty + BOOLEAN + + + + + userId + timestamp + isEmpty + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryDerivative_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryDerivative_1.0.xml new file mode 100644 index 0000000..dd7a7be --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryDerivative_1.0.xml @@ -0,0 +1,21 @@ + + + + + Derivative + + 1 + 0 + + + 1 + 1 + + + + isBroken + BOOLEAN + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.0.xml new file mode 100644 index 0000000..53654ff --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.0.xml @@ -0,0 +1,22 @@ + + + + + Entity + + 1 + 0 + + + 1 + 1 + + + + onLoadHandlers + STRING + MEDIUM + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.1.xml new file mode 100644 index 0000000..3fe39e5 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryEntity_1.1.xml @@ -0,0 +1,20 @@ + + + + + Entity + + 1 + 1 + + + 1 + 2 + + + + linkId + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryGroup_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryGroup_1.0.xml new file mode 100644 index 0000000..f38909e --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryGroup_1.0.xml @@ -0,0 +1,22 @@ + + + + + Group + + 1 + 0 + + + 1 + 1 + + + + groupName + STRING + MEDIUM + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.0.xml new file mode 100644 index 0000000..e97597a --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.0.xml @@ -0,0 +1,21 @@ + + + + + Item + + 1 + 0 + + + 1 + 1 + + + + originationTimestamp + INTEGER + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.1.xml new file mode 100644 index 0000000..bc4b286 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryItem_1.1.xml @@ -0,0 +1,22 @@ + + + + + Item + + 1 + 1 + + + 1 + 2 + + + + renderer + STRING + MEDIUM + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginMap_1.0.xml new file mode 100644 index 0000000..31bc49d --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginMap_1.0.xml @@ -0,0 +1,29 @@ + + + + + PluginMap + + 1 + 0 + + + 1 + 1 + + + + pluginType + STRING + SMALL + + + + pluginId + STRING + SMALL + + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginPackageMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginPackageMap_1.0.xml new file mode 100644 index 0000000..c2331c5 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginPackageMap_1.0.xml @@ -0,0 +1,23 @@ + + + + + PluginPackageMap + + 1 + 0 + + + 1 + 1 + + + + locked + BOOLEAN + + 0 + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.0.xml new file mode 100644 index 0000000..4ab5ccd --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.0.xml @@ -0,0 +1,29 @@ + + + + + PluginParameterMap + + 1 + 0 + + + 1 + 1 + + + + pluginType + STRING + SMALL + + + + pluginId + STRING + SMALL + + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.1.xml new file mode 100644 index 0000000..19bef17 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.1.xml @@ -0,0 +1,15 @@ + + + + + PluginParameterMap + + 1 + 1 + + + 1 + 2 + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.2.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.2.xml new file mode 100644 index 0000000..26b5227 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryPluginParameterMap_1.2.xml @@ -0,0 +1,23 @@ + + + + + PluginParameterMap + + 1 + 2 + + + 1 + 3 + + + + parameterValue + TEXT + SMALL + + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GallerySessionMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GallerySessionMap_1.0.xml new file mode 100644 index 0000000..ff3f912 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GallerySessionMap_1.0.xml @@ -0,0 +1,22 @@ + + + + + SessionMap + + 1 + 0 + + + 1 + 1 + + + + data + TEXT + LARGE + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.0.xml new file mode 100644 index 0000000..0610a26 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.0.xml @@ -0,0 +1,22 @@ + + + + + User + + 1 + 0 + + + 1 + 1 + + + + email + STRING + LARGE + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.1.xml new file mode 100644 index 0000000..dc2da69 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_GalleryUser_1.1.xml @@ -0,0 +1,22 @@ + + + + + User + + 1 + 1 + + + 1 + 2 + + + + locked + BOOLEAN + 0 + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_Schema_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_Schema_1.0.xml new file mode 100644 index 0000000..5edc833 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_Schema_1.0.xml @@ -0,0 +1,22 @@ + + + + + Schema + + 1 + 0 + + + 1 + 1 + + + + createSql + TEXT + SMALL + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_Schema_1.1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_Schema_1.1.xml new file mode 100644 index 0000000..0f13fd9 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/A_Schema_1.1.xml @@ -0,0 +1,32 @@ + + + + + Schema + + 1 + 1 + + + 1 + 2 + + + + pluginId + STRING + SMALL + + + type + STRING + SMALL + + + info + TEXT + MEDIUM + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/Lock.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/Lock.xml new file mode 100644 index 0000000..5fc53ef --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/Lock.xml @@ -0,0 +1,39 @@ + + + + + Lock + + 1 + 0 + + + lockId + INTEGER + LARGE + + + readEntityId + INTEGER + LARGE + + + writeEntityId + INTEGER + LARGE + + + freshUntil + INTEGER + LARGE + + + request + INTEGER + LARGE + + + lockId + +
    \ No newline at end of file diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryCache_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryCache_1.0.xml new file mode 100644 index 0000000..39ff290 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryCache_1.0.xml @@ -0,0 +1,11 @@ + + + + + Cache + + 1 + 0 + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryItemPropertiesMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryItemPropertiesMap_1.0.xml new file mode 100644 index 0000000..bb5aa40 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryItemPropertiesMap_1.0.xml @@ -0,0 +1,11 @@ + + + + + ItemPropertiesMap + + 1 + 0 + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryPermissionMap_1.0.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryPermissionMap_1.0.xml new file mode 100644 index 0000000..b9c8a0a --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/R_GalleryPermissionMap_1.0.xml @@ -0,0 +1,11 @@ + + + + + PermissionMap + + 1 + 0 + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/Schema.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/Schema.xml new file mode 100644 index 0000000..a0a658d --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/Schema.xml @@ -0,0 +1,52 @@ + + + + + Schema + + 1 + 2 + + + name + STRING + MEDIUM + + + + major + INTEGER + MEDIUM + + + + minor + INTEGER + MEDIUM + + + + createSql + TEXT + SMALL + + + pluginId + STRING + SMALL + + + type + STRING + SMALL + + + info + TEXT + MEDIUM + + + name + +
    \ No newline at end of file diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_1.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_1.xml new file mode 100644 index 0000000..7b865e5 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_1.xml @@ -0,0 +1,31 @@ + + + + Schema + + 1 + 0 + + + name + STRING + MEDIUM + + + + major + INTEGER + MEDIUM + + + + minor + INTEGER + MEDIUM + + + + name + +
    diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_2.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_2.xml new file mode 100644 index 0000000..b7130b3 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_2.xml @@ -0,0 +1,26 @@ + + + + Schema + + 1 + 0 + + + 1 + 1 + + + + testCol + STRING + MEDIUM + + + + + testCol + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_3.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_3.xml new file mode 100644 index 0000000..663cf81 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_3.xml @@ -0,0 +1,19 @@ + + + + Schema + + 1 + 1 + + + 1 + 2 + + + + testCol + + + diff --git a/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_4.xml b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_4.xml new file mode 100644 index 0000000..0c2eb7d --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryStorage/xml-src/T_InstallerTest_4.xml @@ -0,0 +1,11 @@ + + + + Schema + + 1 + 2 + + + diff --git a/Source/gallery2/modules/core/classes/GalleryTemplate.class b/Source/gallery2/modules/core/classes/GalleryTemplate.class new file mode 100644 index 0000000..f102d6c --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryTemplate.class @@ -0,0 +1,433 @@ + + * @version $Revision: 15513 $ + */ + +/** + * The current protocol version of the template data. Whenever the template library changes, + * bump this number to trigger a complete rebuild of all compiled templates. + */ +define('TEMPLATE_DATA_VERSION', 12); + +/** + * This is Gallery's templating class. It hides the details of the implementation (eg, Smarty) + * and provides a unified means of handling internationalization. + */ +class GalleryTemplate { + + /** + * The Smarty instance + * @var object Smarty + * @access private + */ + var $_smarty; + + /** + * The directory containing our template files + * @var string + * @access private + */ + var $_templateDir; + + /** + * A directory where the templates will be written into. + * @var string + * @access private + */ + var $_compiledTemplateDir; + + + function GalleryTemplate($templateDir, $initSmarty=true, $trimWhitespace=true) { + global $gallery; + $this->_templateDir = $templateDir; + + /* This will be the place to put the compiled templates */ + $this->_compiledTemplateDir = $gallery->getConfig('data.smarty.templates_c') . + '%%' . sprintf("%u", crc32($templateDir)); + if ($initSmarty) { + $this->_smarty = GalleryTemplate::_getSmarty($trimWhitespace); + } + } + + /** + * Assign a template key/value pair + * + * @param string $key + * @param mixed $value + */ + function setVariable($key, $value=null) { + $this->_smarty->assign($key, $value); + } + + /** + * Retrieve a template value + * + * @param string $key + * @return mixed value + */ + function getVariable($key) { + $templateVars = $this->_smarty->get_template_vars(); + return $templateVars[$key]; + } + + /** + * Retrieve a reference to a template value + * + * @param string $key + * @return mixed value + */ + function &getVariableByReference($key) { + $templateVars =& $this->_smarty->get_template_vars(); + return $templateVars[$key]; + } + + /** + * Return true if the given variable is set + * + * @param string $key + * @return boolean + */ + function hasVariable($key) { + $templateVars = $this->_smarty->get_template_vars(); + return isset($templateVars[$key]); + } + + /** + * Assign a template key/value pair + * + * @param string $key + * @param mixed $value + */ + function setVariableByReference($key, &$value) { + $this->_smarty->assign_by_ref($key, $value); + } + + /** + * Add a template to include in the section + * @param string $tpl template path + * @param string $l10Domain (optional) localization domain + * default={1stdir}_{2nddir} from template path + */ + function head($tpl, $l10Domain=null) { + $head =& $this->getVariableByReference('head'); + if (!isset($l10Domain)) { + list ($type, $id, $junk) = explode('/', $tpl, 3); + $l10Domain = $type . '_' . $id; + } + $head['tpl'][$tpl] = $l10Domain; + } + + /** + * Set the title to include in the section + * @param string $title localized title + */ + function title($title) { + $head =& $this->getVariableByReference('head'); + $head['title'] = $title; + } + + /** + * Add a stylesheet to include in the section + * @param string $path stylesheet path relative to gallery2 dir + */ + function style($path) { + $head =& $this->getVariableByReference('head'); + $head['style'][] = $path; + } + + /** + * Add a JavaScript to include in the section + * @param string $path script path relative to gallery2 dir + */ + function javascript($path) { + $head =& $this->getVariableByReference('head'); + $head['javascript'][] = $path; + } + + /** + * Render the properly localized template + * + * @param string $templateName + * @return array object GalleryStatus the status of the call + * string the HTML content + */ + function fetch($templateName) { + $this->_smarty->template_dir = $this->_templateDir; + + $ret = $this->_initCompiledTemplateDir(); + if ($ret) { + return array($ret, null); + } + $this->_smarty->compile_dir = $this->_compiledTemplateDir; + + list ($ret, $html) = $this->_smarty->fetch($templateName); + if ($ret) { + return array($ret, null); + } + + return array(null, $html); + } + + /** + * Display the properly localized template + * + * @param string $templateName + * @return object GalleryStatus the status of the call + */ + function display($templateName) { + $this->_smarty->template_dir = $this->_templateDir; + + $ret = $this->_initCompiledTemplateDir(); + if ($ret) { + return $ret; + } + $this->_smarty->compile_dir = $this->_compiledTemplateDir; + + list ($ret, $junk) = $this->_smarty->fetch($templateName, null, null, true); + if ($ret) { + return $ret; + } + return null; + } + + /** + * Initializes the directory where compiled templates will be saved + * for this specific template directory + * + * Each module should have its own directory for compiled Smarty + * templates so that no name clashes occur. This subdirectory will be + * created on demand here. + * + * @return array object GalleryStatus a status code + */ + function _initCompiledTemplateDir() { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Make a unique subdirectory for compiled templates for this templates dir */ + $dir = $this->_compiledTemplateDir; + if ($platform->file_exists($dir) && !$platform->is_dir($dir)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + + $templateVersionFile = $dir . '/v_' . TEMPLATE_DATA_VERSION; + if (!$platform->file_exists($dir)) { + list ($success) = GalleryUtilities::guaranteeDirExists($dir); + if (!$success) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "Unable to mkdir($dir)"); + } + if ($fd = $platform->fopen($templateVersionFile, 'w')) { + $platform->fclose($fd); + } else { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + sprintf('Unable to write to %s', $templateVersionFile)); + } + } else { + if (!$platform->is_writeable($dir)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE); + } + + $rebuild = false; + if (!$platform->file_exists($templateVersionFile)) { + $rebuild = true; + } + + if ($rebuild) { + /* Get rid of the current dir and start again. */ + if (!$platform->recursiveRmDir($dir)) { + return GalleryCoreApi::error(ERROR_PLATFORM_FAILURE, __FILE__, __LINE__, + "Unable to remove dir $dir"); + } + $this->_initCompiledTemplateDir(); + } + } + + return null; + } + + /** + * Return a properly configured instance of Smarty. This used to be a single shared static + * instance of Smarty, but now we build it every time we need it. Theoretically we shouldn't + * be creating more than one GalleryTemplate and hence, more than one Smarty instance per + * request. However, having it as a static object makes it less testable. + * + * @return object Smarty + * @static + * @access private + */ + function _getSmarty($trimWhitespace) { + global $gallery; + + GalleryCoreApi::requireOnce('modules/core/classes/GallerySmarty.class'); + $smarty = new GallerySmarty(); + + /* Compiled templates go here */ + $smarty->compile_dir = $gallery->getConfig('data.smarty.templates_c'); + + /* Don't let Smarty change the error reporting level */ + $smarty->error_reporting = error_reporting(); + + /* We have our own plugins */ + $platform =& $gallery->getPlatform(); + $slash = $platform->getDirectorySeparator(); + $smarty->plugins_dir[] = dirname(__FILE__) . '/../../../lib/smarty_plugins'; + + if ($gallery->getDebug()) { + $smarty->debugging = true; + } + $smarty->use_sub_dirs = false; + + $templateAdapter =& $gallery->getTemplateAdapter(); + $smarty->register_object('g', $templateAdapter, array(), true, + array('addToTrailer', 'autoComplete', 'container')); + + $smarty->register_resource('gallery', + array('GalleryTemplate', + 'resourceGetTemplate', + 'resourceGetTimestamp', + 'resourceGetSecure', + 'resourceGetTrusted')); + + if ($trimWhitespace) { + $smarty->register_prefilter(array('GalleryTemplate', 'preFilter')); + } + + $smarty->assign('head', array('tpl' => array(), 'style' => array())); + + return $smarty; + } + + /** + * Remove leading whitespace when compiling tpl to produce smaller html page sizes. + * @param string $source tpl content + * @param object GallerySmarty smarty + * @return string processed tpl content ready for compilation + * @static + */ + function preFilter($source, &$smarty) { + return preg_replace('/^\s+/m', '', $source); + } + + /** + * Returns the base directory of the specified template. This is required + * to support loading templates from g2data/plugins. + * + * @author Jozef Selesi (selesi at gmail dot com) + * + * @param string $templateName Template to get base directory for. + * @param object Smarty $smarty + */ + function resourceGetTemplateBaseDir($templateName, &$smarty) { + if (preg_match('/^(module|theme)s\/(.+)(\/.+)/iU', $templateName, $pluginId)) { + return GalleryCoreApi::getPluginBaseDir($pluginId[1], $pluginId[2]) . '/'; + } else { + return $smarty->template_dir . '/'; + } + } + + /** + * @see http://smarty.php.net/manual/en/template.resources.php + * + * This is basically the same as the file: resource except that we look for a template + * called "local/foo.tpl" first and use that instead, if it exists. This allows users to + * override templates with our own copies without modifying the original. + */ + function resourceGetTemplate($templateName, &$templateSource, &$smarty) { + $templateName = GalleryTemplate::_getActualTemplateName( + GalleryTemplate::resourceGetTemplateBaseDir($templateName, $smarty) . $templateName); + + $templateSource = $smarty->_read_file($templateName); + + return true; + } + + /** + * @see http://smarty.php.net/manual/en/template.resources.php + * + * This is basically the same as the file: resource except that we look for a template + * called "local/foo.tpl" first and use that instead, if it exists. This allows users to + * override templates with our own copies without modifying the original. + */ + function resourceGetTimestamp($templateName, &$templateTimestamp, &$smarty) { + global $gallery; + $platform =& $gallery->getPlatform(); + + $templateName = GalleryTemplate::_getActualTemplateName( + GalleryTemplate::resourceGetTemplateBaseDir($templateName, $smarty) . $templateName); + + if ($platform->file_exists($templateName)) { + $stat = $platform->stat($templateName); + $templateTimestamp = $stat[9]; + + return true; + } else { + return false; + } + } + + /** + * Given a template name (/foo/bar.tpl), return one of the following + * strings (in order of precedence). + * 1. /foo/local/bar.tpl (if it exists) + * 2. /foo/bar.tpl (whether or not it exists) + * + * @param string $templateName base template name + * @return string template to use + * @static + * @access private + */ + function _getActualTemplateName($templateName) { + global $gallery; + $platform =& $gallery->getPlatform(); + + /* Check for override: local/file.ext */ + $localTemplateName = dirname($templateName) . '/local/' . basename($templateName); + if ($platform->file_exists($localTemplateName) && + $platform->is_readable($localTemplateName)) { + return $localTemplateName; + } + + /* Stick with whatever they gave us */ + return $templateName; + } + + /** + * @see http://smarty.php.net/manual/en/template.resources.php + */ + function resourceGetSecure($templateName, &$smarty) { + /* Assume all templates are secure */ + return true; + } + + /** + * @see http://smarty.php.net/manual/en/template.resources.php + */ + function resourceGetTrusted($templateName, &$smarty) { + /* Not used for templates */ + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryTemplateAdapter.class b/Source/gallery2/modules/core/classes/GalleryTemplateAdapter.class new file mode 100644 index 0000000..0ec9e27 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryTemplateAdapter.class @@ -0,0 +1,1059 @@ + + * @version $Revision: 16107 $ + */ +class GalleryTemplateAdapter { + + /** + * The number of times our block callbacks have been executed + * @var array + * @access private + */ + var $_callCount; + + /** + * The active theme + * @var object GalleryTheme + * @access private + */ + var $_theme; + + /** + * Aggregation of text that we want to output at the bottom of the page, + * useful for when we need to put javascript at the bottom. + * @var string + * @access private + */ + var $_trailer; + + /** + * Registered callbacks that will get executed during the trailer. + * @var array + * @access private + */ + var $_trailerCallbacks = array(); + + /** + * Current state of the progress bar. + * @var array + * @access private + */ + var $_progressBarStats; + + + function GalleryTemplateAdapter() { + $this->_callCount = array(); + $this->_theme = null; + $this->_trailer = null; + $this->_progressBarStats = null; + } + + /** + * Set the theme + * @param object GalleryTheme $theme + */ + function setTheme($theme) { + $this->_theme = $theme; + } + + /************************************************************* + * Special purpose template callback methods. + *************************************************************/ + + /** + * Return a valid Gallery URL, standalone or embedded. + * @see GalleryUrlGenerator::generateUrl + * + * @param array $params data in key/value pairs + * @param object Smarty $smarty the smarty instance + * @return string a URL + */ + function url($params, &$smarty) { + global $gallery; + + /* Allow the user to pass in bulk params */ + $urlParams = isset($params['params']) ? $params['params'] : array(); + unset($params['params']); + + /* Search for args and add them to the params */ + for ($i = 1; ($arg = "arg$i") && isset($params[$arg]); $i++) { + list ($key, $value) = explode('=', $params[$arg], 2); + $urlParams[$key] = $value; + unset($params[$arg]); + } + + /* Add special 'href' key to the params */ + if (isset($params['href'])) { + $urlParams['href'] = $params['href']; + unset($params['href']); + } + + /* Allow the user to pass in bulk options */ + if (isset($params['options'])) { + $params = array_merge($params['options'], $params); + unset($params['options']); + } + + $urlGenerator =& $gallery->getUrlGenerator(); + return $urlGenerator->generateUrl($urlParams, $params); + } + + /** + * Return any hidden form variables that we want to embed in this form based on the + * current session and request context. We use this to pass the special "return" variable + * forward, for example. + * + * @param array $params data in key/value pairs + * @param object Smarty $smarty the smarty instance + * @return a series of XHTML 1.0 compliant elements + */ + function hiddenFormVars($params, &$smarty) { + global $gallery; + $urlGenerator =& $gallery->getUrlGenerator(); + $session =& $gallery->getSession(); + $vars = array(); + + /* The 'return' url */ + if (GalleryUtilities::hasRequestVariable('return')) { + $vars['return'] = GalleryUtilities::getRequestVariables('return'); + } + + /* Remember the current url for getting back to where we came from */ + if (empty($vars['return'])) { + $currentView = $gallery->getCurrentView(); + list ($ret, $view) = GalleryView::loadView($currentView); + if ($ret) { + $viewDescription = ''; + } else { + list ($ret, $viewDescription) = $view->getViewDescription(); + if ($ret) { + $viewDescription = ''; + } + } + $vars['returnName'] = $viewDescription; + $vars['return'] = $urlGenerator->getNavigationReturnUrl(); + } + + /* Our navigation id */ + $navigationId = $urlGenerator->getNavigationId(); + if (!empty($navigationId)) { + $vars['navId'] = $navigationId; + unset($vars['return']); + } + + /* Remember the original URL where this form was first shown */ + $vars['formUrl'] = GalleryUtilities::getRequestVariables('formUrl'); + if (empty($vars['formUrl'])) { + /* First time we load this form */ + $vars['formUrl'] = $urlGenerator->getNavigationReturnUrl(); + } + + /* Add the auth token to all controller requests */ + $vars['authToken'] = $session->getAuthToken(); + + $out = ''; + foreach ($vars as $key => $value) { + $out .= sprintf('' . "\n", + GalleryUtilities::prefixFormVariable($key), + $value); + } + return $out; + } + + /** + * Return a valid Gallery date. + * @todo This needs to be refactored. + * + * @param array $params data in key/value pairs + * @param object Smarty $smarty the smarty instance + * @return string date + */ + function date($params, &$smarty) { + global $gallery; + static $defaultFormat; + $platform =& $gallery->getPlatform(); + + if (empty($params['format'])) { + if (!isset($defaultFormat)) { + $defaultFormat = array('date' => '%x', 'time' => '%X', 'datetime' => '%c'); + list ($ret, $core) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); + if (!$ret) { + $defaultFormat = array('date' => $core['format.date'], + 'time' => $core['format.time'], + 'datetime' => $core['format.datetime']); + } + } + + $params['format'] = + (!empty($params['style']) && isset($defaultFormat[$params['style']])) + ? $defaultFormat[$params['style']] : $defaultFormat['date']; + } + + return $platform->strftime($params['format'], + !empty($params['timestamp']) ? $params['timestamp'] : null); + } + + /** + * @see GalleryTranslator::translate + */ + function text($params, &$smarty) { + global $gallery; + + if (isset($params['l10Domain'])) { + $domain = $params['l10Domain']; + } else if (isset($smarty->_tpl_vars['viewL10domain'])) { + $domain = $smarty->_tpl_vars['viewL10domain']; + } else { + $domain = $smarty->_tpl_vars['l10Domain']; + } + $translator =& $gallery->getTranslator(); + list ($ret, $text) = $translator->translateDomain($domain, $params); + if ($ret) { + return '[Translation error: ' . print_r($params, true) . ']'; + } + + if (!empty($params['forJavascript'])) { + GalleryCoreApi::requireOnce('lib/smarty/plugins/modifier.escape.php'); + $text = smarty_modifier_escape($text, 'javascript', 'UTF-8'); + } + + return $text; + } + + /** + * Return a checkbox asking whether to chenge the value in descendents. + * Useful when we are trying to change a value recursively. + * + * @param array $params key => value attributes + * @param object Smarty $smarty the smarty instance + * @return HTML content + */ + function changeInDescendents($params, &$smarty) { + global $gallery; + + if (isset($params['l10Domain'])) { + $domain = $params['l10Domain']; + } else { + $domain = $smarty->_tpl_vars['l10Domain']; + } + $translator =& $gallery->getTranslator(); + list ($ret, $text) = $translator->translateDomain($domain, $params); + if ($ret) { + return '[Translation error: ' . print_r($params, true) . ']'; + } + + return ' '; + } + + /** + * Return a transformed element name. + * + * @param array $params key => value attributes + * @return HTML content + */ + function formVar($params) { + return GalleryUtilities::prefixFormVariable($params['var']); + } + + /** + * Delegate to the appropriate item class to render an image. + * @todo Figure out a more graceful way to deal with errors here. + * + * @param array $params containing item, image, maxSize, fallback, and any img attributes + * @param object Smarty $smarty the smarty instance + * @return string HTML content + */ + function image($params, &$smarty) { + list ($ret, $html) = $this->_image($params, $smarty); + if ($ret) { + return '[Render error]'; + } + + return $html; + } + + /** + * Implementation of image() that can return an error. + * @see GalleryTemplateAdapter::image + * @access private + */ + function _image($params, &$smarty) { + /* + * Cases: + * - Item can render itself + * - Entity can render itself (with info from the item) + * - Renderer can render the entity (with info from the item) + */ + if ($params['item']['id'] == $params['image']['id']) { + list ($ret, $item) = GalleryCoreApi::loadEntitiesById($params['item']['id']); + if ($ret) { + return array($ret, null); + } + $entity = null; + } else { + list ($ret, $results) = GalleryCoreApi::loadEntitiesById( + array($params['item']['id'], $params['image']['id'])); + if ($ret) { + return array($ret, null); + } + list ($item, $entity) = $results; + } + + unset($params['item']); + unset($params['image']); + if (isset($params['fallback'])) { + $fallback = $params['fallback']; + } else { + $fallback = $params['fallback'] = null; + } + + $rendererClass = $item->getRenderer(); + if ($rendererClass) { + list ($ret, $renderer) = + GalleryCoreApi::newFactoryInstanceById('GalleryRenderer', $rendererClass); + if ($ret) { + return array($ret, null); + } + } else { + $renderer = null; + } + + /* TODO: Normalize these 3 different APIs */ + $html = null; + if (isset($renderer)) { + $html = $renderer->render('HTML', $entity ? $entity : $item, $item, $params); + } + + if ($html === null) { + if ($entity) { + $html = $entity->render('HTML', $item, $params); + } else { + $html = $item->render('HTML', $params); + } + } + + if (empty($html)) { + $html = $fallback; + } + + return array(null, $html); + } + + /** + * Render head content + * + * @param array $params + * @param object Smarty $smarty the smarty instance + * @return string HTML content + */ + function head($params, &$smarty) { + global $gallery; + $urlGenerator =& $gallery->getUrlGenerator(); + $templateVars =& $smarty->get_template_vars(); + $head = $templateVars['head']; + $output = array("\n"); + + /* Title */ + if (isset($head['title'])) { + $output[] = '' . $head['title'] . "\n"; + } + + /* Style */ + foreach ($head['style'] as $path) { + $output[] = sprintf('' . "\n", + $urlGenerator->generateUrl(array('href' => $path))); + } + + /* Javascript */ + if (isset($head['javascript'])) { + foreach ($head['javascript'] as $path) { + $output[] = sprintf('' . "\n", + $urlGenerator->generateUrl(array('href' => $path))); + } + } + + /* Tpl to include. */ + foreach ($head['tpl'] as $path => $l10Domain) { + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include( + array('smarty_include_tpl_file' => "gallery:$path", + 'smarty_include_vars' => array('l10Domain' => $l10Domain))); + $smarty->_tpl_vars = $save; + } + + /* This should help out users whose browsers are confused about the character set */ + $output[] = ''; + + return implode('', $output); + } + + /** + * Include our AutoCompletion template. + * + * @param array $params params + * @param string $content content + * @param object Smarty $smarty the smarty instance + */ + function autoComplete($params, $content, &$smarty) { + global $gallery; + $session =& $gallery->getSession(); + + if (!isset($content)) { + return; + } + + if (!isset($this->_callCount['autoComplete'])) { + $this->_callCount['autoComplete'] = 0; + } + + $url = trim($content); + /* Add the auth token to the URL */ + if (strstr($url, 'authToken') === false) { + $url = GalleryUrlGenerator::appendParamsToUrl($url, + array('authToken' => $session->getAuthToken())); + $url = str_replace('&', '&', $url); + } + + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include( + array('smarty_include_tpl_file' => 'gallery:modules/core/templates/AutoComplete.tpl', + 'smarty_include_vars' => + array('element' => $params['element'], + 'url' => $url, + 'callCount' => ++$this->_callCount['autoComplete']))); + $smarty->_tpl_vars = $save; + } + + /** + * Include form inputs for dimensions. + * + * @param array $params params + * @param object Smarty $smarty the smarty instance + */ + function dimensions($params, &$smarty) { + if (!isset($this->_callCount['dimensions'])) { + $this->_callCount['dimensions'] = 0; + } + + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include( + array('smarty_include_tpl_file' => 'gallery:modules/core/templates/Dimensions.tpl', + 'smarty_include_vars' => array( + 'formVar' => $params['formVar'], + 'formVarId' => strtr($params['formVar'], '[]', '__'), + 'width' => isset($params['width']) ? $params['width'] : null, + 'height' => isset($params['height']) ? $params['height'] : null, + 'callCount' => ++$this->_callCount['dimensions']))); + $smarty->_tpl_vars = $save; + } + + /** + * Add hidden form elements to select a default submit button + * that is used if enter is pressed in a text input. + * Include this before any submit buttons are added to the form. + * + * @param array $params params + * @param object Smarty $smarty the smarty instance + */ + function defaultButton($params, &$smarty) { + if (!isset($this->_callCount['defaultButton'])) { + $this->_callCount['defaultButton'] = 0; + } + + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include( + array('smarty_include_tpl_file' => 'gallery:modules/core/templates/DefaultButton.tpl', + 'smarty_include_vars' => array( + 'name' => $params['name'], + 'callCount' => ++$this->_callCount['defaultButton']))); + $smarty->_tpl_vars = $save; + } + + /** + * This takes an array and looks for view, subview, and controller to make + * a linkid (being used as a css classname) + * + * @param array $params the items to make a css class out of + * @return string the id of the css class + */ + function linkId($params) { + $linkId = 'gbLink'; + if (!empty($params['urlParams']['controller'])) { + $linkId .= '-' . $params['urlParams']['controller']; + } + if (!empty($params['view'])) { + $linkId .= '-' . $params['view']; + } elseif (!empty($params['urlParams']['view'])) { + $linkId .= '-' . $params['urlParams']['view']; + } + if (!empty($params['urlParams']['subView'])) { + $linkId .= '-' . ($subView = $params['urlParams']['subView']); + if (preg_match('{^core\.Item(?:Edit|Move|Delete|CreateLink)(?:Single)?$}', $subView) && + !empty($params['urlParams']['itemId'])) { + /* Append item type for a few subViews, with fallback class without type */ + list ($ret, $item) = + GalleryCoreApi::loadEntitiesById($params['urlParams']['itemId']); + if (!$ret) { + $type = $item->itemTypeName(false); + $fallbackLinkId = $linkId; + $linkId .= '-' . $type[1]; + } + } + } + return 'gbAdminLink ' . GalleryTemplateAdapter::_safeCssName($linkId) . + (isset($fallbackLinkId) ? + ' ' . GalleryTemplateAdapter::_safeCssName($fallbackLinkId) : ''); + } + + /** + * This removes unsafe characters from a string so they can be used as a class + * name or id in html and be addressed via css + * + * Purpose: Removes characters from a string so that it can be used for an + * html class name or id and be addressed via css + * + * @param string $string the input string + * @return string + * @access private + */ + function _safeCssName($string) { + $string = ereg_replace("[^-A-Za-z0-9_]", "_", $string); + $string = ereg_replace('__+', '_', $string); + $string = ereg_replace('[-_][-_]+', '-', $string); + return $string; + } + + /** + * Return attributes for container of all Gallery content. + */ + function mainDivAttributes($params, &$smarty) { + global $gallery; + + $classes = array(); + $userAgent = + GalleryUtilities::strToLower(GalleryUtilities::getServerVar('HTTP_USER_AGENT')); + if (strpos($userAgent, 'safari') !== false) { + $classes[] = 'safari'; + } else if (strpos($userAgent, 'opera') !== false) { + $classes[] = 'opera'; + } else if (strpos($userAgent, 'msie') !== false) { + $classes[] = 'IE'; + } else if (strpos($userAgent, 'gecko/') !== false) { + $classes[] = 'gecko'; + } + + $translator =& $gallery->getTranslator(); + if ($translator->isRightToLeft()) { + $classes[] = 'rtl'; + } + + $classes = empty($classes) ? '' : ' class="' . implode(' ', $classes) . '"'; + return 'id="gallery"' . $classes; + } + + /** + * Return active language code in format used with HTML lang attribute. + */ + function language($params, &$smarty) { + global $gallery; + list ($ret, $languageCode) = $gallery->getActiveLanguageCode(); + if ($ret || empty($languageCode)) { + return ''; + } + return strtr($languageCode, '_', '-'); + } + + /** + * Render logo button image. + * @param array $params ('type' => logo type) + * @param object Smarty $smarty the smarty instance + * @return HTML content + */ + function logoButton($params, &$smarty) { + global $gallery; + $urlGenerator =& $gallery->getUrlGenerator(); + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core', true); + if ($ret) { + return; + } + + list ($ret, $isAdmin) = + GalleryCoreApi::isUserInSiteAdminGroup($smarty->_tpl_vars['theme']['actingUserId']); + if ($ret) { + return; + } + $linkTarget = empty($params['target']) ? '' : (' target="' . $params['target'] . '"'); + $isAdminOrShowAll = $isAdmin || (isset($params['showToAll']) && $params['showToAll']); + $useLink = !isset($params['link']) || $params['link']; + + switch($params['type']) { + case 'gallery2': + $installedVersions = $core->getInstalledVersions(); + if (!$isAdmin) { + /* Don't show exact patch release to non-admins */ + $installedVersions['gallery'] = + preg_replace('/^(\d+\.\d+).*$/', '$1', $installedVersions['gallery']); + } + $version = $core->translate( + array('text' => "Powered by Gallery v%s", 'arg1' => $installedVersions['gallery'])); + return sprintf( + '%s%s%s', + $useLink ? ('') + : '', + $urlGenerator->generateUrl(array('href' => 'images/gallery.gif')), + $version, $version, 'border-style: none', + $useLink ? '' : ''); + + case 'validation': + if (!$isAdminOrShowAll) { + return; + } + if ($useLink && $gallery->getConfig('allowSessionAccess')) { + /* Calculate a URI that we can use for the validation link */ + $validationUri = $urlGenerator->getCurrentUrl(); + $session =& $gallery->getSession(); + if ($session->isUsingCookies()) { + $validationUri = $urlGenerator->appendParamsToUrl( + $validationUri, array($session->getKey() => $session->getId())); + } + $validationUri = sprintf( + 'http://validator.w3.org/check?uri=%s&ss=1', + urlencode(str_replace('&', '&', $validationUri))); + } else if ($useLink) { + $validationUri = sprintf( + 'javascript:alert(\'%s\');', + $core->translate( + 'Validation disabled until you set allowSessionAccess in config.php')); + } + return sprintf( + '%s%s%s', + $useLink ? ('') : '', + $urlGenerator->generateUrl(array('href' => 'images/xhtml10.png')), + $core->translate('This page is valid XHTML 1.0'), + $core->translate('This page is valid XHTML 1.0'), + 'border-style: none', + $useLink ? '' : ''); + + case 'donate': + if (!$isAdminOrShowAll) { + return; + } + $installedVersions = $core->getInstalledVersions(); + return sprintf( + '%s%s%s', + $useLink ? ('') : '', + $urlGenerator->generateUrl(array('href' => 'modules/core/data/donate.png')), + $core->translate('Donate to the Gallery project'), + $core->translate('Donate to the Gallery project'), + 'border-style: none', + $useLink ? '' : ''); + + case 'gallery2-version': + if (!$isAdminOrShowAll) { + return; + } + return sprintf( + '%s%s%s', + $useLink ? '' : '', + $urlGenerator->generateUrl( + array('href' => 'modules/core/data/g22-double_double.png')), + $core->translate('G2.2: Double Double'), + $core->translate('G2.2: Double Double'), + 'border-style: none', + $useLink ? '' : ''); + } + } + + /** + * Show debug output. + */ + function debug($params, &$smarty) { + global $gallery; + $debug = $gallery->getDebug(); + $profiling = $gallery->isProfiling('sql'); + + $buf = ''; + if ($debug == 'buffered' || $profiling) { + /* don't worry about localizing this -- it's only debug output */ + $buf .= '

    Debug Output

    '; + if ($debug == 'buffered') { + $buf .= $gallery->getDebugBuffer(); + } + + if ($profiling) { + $storage =& $gallery->getStorage(); + $buf .= '' . $storage->getProfilingHtml() . ''; + } + $buf .= '
    '; + } + if ($debug) { + /* Smarty debug console */ + GalleryCoreApi::requireOnce('lib/smarty/plugins/function.debug.php'); + $buf .= smarty_function_debug($params, $smarty); + } + return $buf; + } + + /** + * Perform a theme related function. Possible parameters are + * include => file to include inside the theme's templates/ dir + * url => url to a file inside the themes dir + * + * @param array $params ('include' => ..., 'url' => ...) + * @param object Smarty $smarty the smarty instance + */ + function theme($params, &$smarty) { + global $gallery; + + if (isset($params['include'])) { + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include(array( + 'smarty_include_tpl_file' => + 'gallery:themes/' . $this->_theme->getId(). '/templates/' . $params['include'], + 'smarty_include_vars' => $params)); + $smarty->_tpl_vars = $save; + } else if (isset($params['url'])) { + /* + * Use this combo of dirname and '..' in g2Dir to avoid creating paths in the unit + * test that won't be Windows compatible. + */ + $g2Dir = dirname(dirname(__FILE__)) . '/../../'; + $base = 'themes/' . $this->_theme->getId() . '/'; + if (($dirname = dirname($params['url'])) == '.') { + $localVersion = 'local/' . $params['url']; + } else { + $localVersion = $dirname . '/local/' . basename($params['url']); + } + $platform =& $gallery->getPlatform(); + $urlGenerator =& $gallery->getUrlGenerator(); + if ($platform->file_exists($g2Dir . $base . $localVersion) && + $platform->is_readable($g2Dir . $base . $localVersion)) { + $target = $localVersion; + } else { + $target = $params['url']; + } + return $urlGenerator->generateUrl(array('href' => $base . $target)); + } + } + + /** + * Include a module's block into the current smarty page. The only + * required param is 'type' which should be of the form . + * eg: "core.LoginBlock". Any other parameters get passed on to the block itself. + * + * @param array $params ('type' => , ...) + * @param object Smarty $smarty the smarty instance + */ + function block($params, &$smarty) { + list ($module, $file) = explode('.', $params['type']); + $class = empty($params['class']) ? '' : ' ' . $params['class']; + + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + /* What can we do here? */ + return '[error fetching blocks]'; + } + + if (empty($pluginStatus[$module]['active'])) { + return; + } + + if (isset($params['params'])) { + $params = $params['params']; + } + + $params['class'] = "block-$module-$file$class"; + $params['l10Domain'] = "modules_$module"; + + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include( + array('smarty_include_tpl_file' => "gallery:modules/$module/templates/blocks/$file.tpl", + 'smarty_include_vars' => $params)); + $smarty->_tpl_vars = $save; + } + + /** + * Include a module's container into the current smarty page. The only + * required param is 'type' which should be of the form . + * eg: "core.LoginBlock". Any other parameters get passed on to the block itself. + * + * This is like block() except it wraps actual content. + * + * @param array $params ('type' => , ...) + * @param string $content + * @param object Smarty $smarty the smarty instance + */ + function container($params, $content, &$smarty) { + if (!isset($content)) { + return; + } + + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + /* What can we do here? */ + return '[container error]'; + } + + list ($module, $file) = explode('.', $params['type']); + if (empty($pluginStatus[$module]['active'])) { + return $content; + } + + /* Guard template vars so that the include doesn't pollute our namespace */ + $save = $smarty->_tpl_vars; + $smarty->_smarty_include( + array('smarty_include_tpl_file' => + "gallery:modules/$module/templates/containers/$file.tpl", + 'smarty_include_vars' => array_merge(array('content' => $content), + $params))); + $smarty->_tpl_vars = $save; + } + + /** + * Call back to a module to get it to preload some data for the template. The only required + * param is 'type' which should be of the form . eg: "core.LoginBlock". + * Any other parameters get passed on to the block itself. + * + * @param array $params ('type' => , ...) + * @param object Smarty $smarty the smarty instance + */ + function callback($params, &$smarty) { + global $gallery; + static $moduleStatus; + if (empty($status)) { + list ($ret, $status) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + /* What can we do with this error? */ + $gallery->debug("Error performing $params[type] callback"); + $gallery->debug($ret->getAsHtml()); + } + } + + list ($module, $file) = explode('.', $params['type']); + + if (!empty($status[$module]['active'])) { + GalleryCoreApi::requireOnce("modules/$module/Callbacks.inc"); + + $userId = $smarty->_tpl_vars['theme']['actingUserId']; + $className = "${module}Callbacks"; + $class = new $className; + $ret = $class->callback($params, $smarty, $file, $userId); + if ($ret) { + /* What can we do with this error? */ + $gallery->debug("Error performing $params[type] callback"); + $gallery->debug($ret->getAsHtml()); + } + } + } + + /** + * Add the content to our trailer block + * + * @param array $params + * @param string $content + * @param object Smarty $smarty the smarty instance + */ + function addToTrailer($params, $content, &$smarty) { + if (!isset($content)) { + return; + } + $this->_trailer .= $content; + } + + /** + * Register a callback function to be executed when we run the trailer. + * + * @param callback $callback suitable to be used as an input for call_user_func() + * @param array $args for callback + */ + function registerTrailerCallback($callback, $args) { + $this->_trailerCallbacks[] = array('function' => $callback, 'args' => $args); + } + + /** + * Render trailer output + */ + function trailer($params, &$smarty) { + print $this->_trailer; + + foreach ($this->_trailerCallbacks as $callback) { + $ret = call_user_func_array($callback['function'], $callback['args']); + if (is_array($ret)) { + $ret = $ret[0]; + } + if ($ret) { + /* If progress bar is in use, report error via its interface */ + global $gallery; + if ($gallery->getCurrentView() == 'core.ProgressBar') { + $this->errorProgressBar($ret); + } + } + } + } + + /** + * Use GalleryUtilities::shrinkDimensionsToFit to scale template vars to new target size. + * + * @param array $params args; should contain widthVar, heightVar, maxSize keys + * @param object Smarty $smarty the smarty instance + */ + function shrinkDimensions($params, &$smarty) { + if (!isset($params['widthVar']) || !isset($params['heightVar']) || + !isset($params['maxSize'])) { + return; + } + $widthVar = $params['widthVar']; + $heightVar = $params['heightVar']; + if (!isset($smarty->_tpl_vars[$widthVar]) || !isset($smarty->_tpl_vars[$heightVar])) { + return; + } + list ($smarty->_tpl_vars[$widthVar], $smarty->_tpl_vars[$heightVar]) = + GalleryUtilities::shrinkDimensionsToFit( + $smarty->_tpl_vars[$widthVar], $smarty->_tpl_vars[$heightVar], $params['maxSize']); + } + + /** + * Update progress bar + * @param string $title top heading + * @param string $description subheading + * @param float $percentComplete from 0 to 1 + */ + function updateProgressBar($title, $description, $percentComplete) { + static $coreModule; + if (!isset($coreModule)) { + list ($ret, $coreModule) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + /* + * Unlikely this will ever be used.. but do update it if exact form of + * translate() calls (with text+arg1+arg2) in this function ever change. + */ + eval('class GalleryTemplateAdapterFallbackCoreModule { + function translate($x) { + return sprintf($x[\'text\'], $x[\'arg1\'], $x[\'arg2\']); + } + }'); + $coreModule = new GalleryTemplateAdapterFallbackCoreModule(); + } + } + + if (empty($this->_progressBarStats)) { + $this->_progressBarStats['startTime'] = time(); + } + + /* + * Calculate the time remaining + * + * TODO: Use a weighted measurement to provide a balanced estimate. Consider the case + * where the first 50% goes really quickly and the second 50% goes really slowly; the + * estimate will be wildly inaccurate at the transition. + */ + if ($percentComplete > 0 && + $percentComplete < 1 && time() > $this->_progressBarStats['startTime']) { + $elapsed = (int)(time() - $this->_progressBarStats['startTime']); + $timeRemaining = ($elapsed / $percentComplete) - $elapsed; + $timeRemaining = $coreModule->translate( + array('text' => 'Estimated time remaining: %d:%02d', + 'arg1' => (int)($timeRemaining / 60), + 'arg2' => $timeRemaining % 60)); + } else { + $timeRemaining = ''; + } + + /* it is possible to not have this function compiled into php */ + $memoryUsed = (function_exists('memory_get_usage')) ? memory_get_usage() : 0; + + /* A disabled memory_limit is -1, 0 crashes php */ + $memoryTotal = (0 < ini_get('memory_limit')) ? ini_get('memory_limit') : 0; + + /* + * Ensure that percentComplete is in a dotted-decimal format. Since the immediateView + * is dealing in percentages, anything beyond two decimal places is unnecessary. + */ + $percentComplete = GalleryUtilities::roundToString($percentComplete, 2); + + /* Need to escape for javascript (backslash, ..) */ + GalleryCoreApi::requireOnce('lib/smarty/plugins/modifier.escape.php'); + $title = smarty_modifier_escape($title, 'javascript'); + $description = smarty_modifier_escape($description, 'javascript'); + + $memoryInfo = $coreModule->translate( + array('text' => 'Memory used: %s, total: %s', + 'arg1' => $memoryUsed, + 'arg2' => $memoryTotal)); + /* Newline needed or Opera 9.02 won't show updates */ + printf('%s', + $title, $description, $percentComplete, $timeRemaining, $memoryInfo, "\n"); + flush(); + } + + /** + * Reset progress bar timing stats. + */ + function resetProgressBarStats() { + $this->_progressBarStats = array(); + } + + /** + * Display error progress bar. + * @param object GalleryStatus $status + */ + function errorProgressBar($status) { + global $gallery; + list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); + if ($ret) { + $isAdmin = false; + } + if ($gallery->getDebug() || $isAdmin) { + $status = $status->getAsHtml($isAdmin); + } else { + $status = 'Error (' + . implode(', ', $status->getErrorCodeConstants($status->getErrorCode())) . ')'; + } + printf('', $status); + } + + /** + * Complete progress bar. + */ + function completeProgressBar($continueUrl) { + $continueUrl = str_replace('&', '&', $continueUrl); + printf('', $continueUrl); + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryTheme.class b/Source/gallery2/modules/core/classes/GalleryTheme.class new file mode 100644 index 0000000..4bd336d --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryTheme.class @@ -0,0 +1,1958 @@ + + * @author Alan Harder + * @version $Revision: 15712 $ + * @abstract + */ +class GalleryTheme extends GalleryPlugin { + + /** + * The version of the GalleryTheme API required by this theme. + * @var array + * @access private + */ + var $_requiredThemeApi; + + /** + * Which of the standard theme settings this theme supports. + * @var array + * @access private + */ + var $_standardSettings = array(); + + /** + * Is the page we're rendering cacheable? + * @var boolean + * @access private + */ + var $_cacheablePage = false; + + + /** + * Constructor to prevent PHP Notices in upgrader and AdminThemes.inc when old themes with a + * theme.inc are still in the themes folder. The old themes call $this->GalleryTheme() in their + * constructor. + */ + function GalleryTheme() { + } + + /** + * Return the major and minor version of the GalleryTheme API. + * This follows the same rules as the core API + * @see GalleryCoreApi::getApiVersion + * + * @todo On the next major API bump: + * - Remove backwards compatible CSS from lib/javascript/AutoComplete.js + * + * @return array major number, minor number + */ + function getApiVersion() { + return array(2, 5); + } + + /** + * Return whether the theme uses simple or advanced settings. To support simple settings the + * theme needs to implement getSettings and validateSettings To support advanced settings the + * theme must implement loadSettingsTemplate and handleSettingsRequest. + * + * @return boolean true for advanced settings, false for simple + */ + function isAdvancedSettings() { + return false; /* Default to simple */ + } + + /** + * Return the possible settings that a theme can specify on a global or per item basis. Used + * for theme with simple settings (@see isAdvancedSettings) + * + * Each setting contains: + * key: a unique identifier + * name: a localized, displayable text string + * type: single-select, multiple-select, text-field + * choices: [only valid for single-select, multiple-select type] + * array of: + * keys: unique identifier within this set of choices + * values: localized displayable text string + * value: the current value for this setting + * + * @param int $itemId (optional) + * @return array object GalleryStatus a status code + * settings array + * params array (useful for a theme overriding this function) + */ + function getSettings($itemId=null) { + list ($ret, $params) = $this->fetchParameters($itemId); + if ($ret) { + return array($ret, null, null); + } + + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return array($ret, null, null); + } + + /* + * For simplicity in upgrading, we don't require themes to delete their old settings. So + * any item may be carting around extra settings that are no longer valid. We could fix + * this in the future, but for now, just leave those out of the settings list + */ + $standard = $this->getStandardSettings(); + $params = array_merge($standard, $params); + + $settings = array(); + if (isset($params['rows']) && isset($standard['rows'])) { + $settings[] = array('key' => 'rows', + 'name' => $core->translate('Rows per album page'), + 'type' => 'text-field', + 'typeParams' => array('size' => 2), + 'value' => $params['rows']); + } + + if (isset($params['columns']) && isset($standard['columns'])) { + $settings[] = array('key' => 'columns', + 'name' => $core->translate('Columns per album page'), + 'type' => 'text-field', + 'typeParams' => array('size' => 2), + 'value' => $params['columns']); + } + + if (isset($params['perPage']) && isset($standard['perPage'])) { + $settings[] = array('key' => 'perPage', + 'name' => $core->translate('Number of items to show per page'), + 'type' => 'text-field', + 'typeParams' => array('size' => 2), + 'value' => $params['perPage']); + } + + if (isset($params['rowHeight']) && isset($standard['rowHeight'])) { + $settings[] = array('key' => 'rowHeight', + 'name' => $core->translate('Row height (pixels)'), + 'type' => 'text-field', + 'typeParams' => array('size' => 3), + 'value' => $params['rowHeight']); + } + + if (isset($params['columnWidth']) && isset($standard['columnWidth'])) { + $settings[] = array('key' => 'columnWidth', + 'name' => $core->translate('Column width (pixels)'), + 'type' => 'text-field', + 'typeParams' => array('size' => 3), + 'value' => $params['columnWidth']); + } + + if (isset($params['showImageOwner']) && isset($standard['showImageOwner'])) { + $settings[] = array('key' => 'showImageOwner', + 'name' => $core->translate('Show image owners'), + 'type' => 'checkbox', + 'value' => $params['showImageOwner']); + } + + if (isset($params['showAlbumOwner']) && isset($standard['showAlbumOwner'])) { + $settings[] = array('key' => 'showAlbumOwner', + 'name' => $core->translate('Show album owners'), + 'type' => 'checkbox', + 'value' => $params['showAlbumOwner']); + } + + if (isset($params['showMicroThumbs']) && isset($standard['showMicroThumbs'])) { + $settings[] = array('key' => 'showMicroThumbs', + 'name' => $core->translate('Show micro navigation thumbnails'), + 'type' => 'checkbox', + 'value' => $params['showMicroThumbs']); + } + + if (isset($params['sidebarBlocks']) && isset($standard['sidebarBlocks'])) { + $settings[] = array('key' => 'sidebarBlocks', + 'name' => $core->translate('Blocks to show in the sidebar'), + 'type' => 'block-list', + 'typeParams' => array('packType' => 'block-list'), + 'value' => $params['sidebarBlocks']); + } + + if (isset($params['albumBlocks']) && isset($standard['albumBlocks'])) { + $settings[] = array('key' => 'albumBlocks', + 'name' => $core->translate('Blocks to show on album pages'), + 'type' => 'block-list', + 'typeParams' => array('packType' => 'block-list'), + 'value' => $params['albumBlocks']); + } + + if (isset($params['photoBlocks']) && isset($standard['photoBlocks'])) { + $settings[] = array('key' => 'photoBlocks', + 'name' => $core->translate('Blocks to show on photo pages'), + 'type' => 'block-list', + 'typeParams' => array('packType' => 'block-list'), + 'value' => $params['photoBlocks']); + } + + if (isset($params['dynamicLinks']) && isset($standard['dynamicLinks'])) { + $settings[] = array('key' => 'dynamicLinks', + 'name' => $core->translate('Thumbnail links in dynamic albums'), + 'type' => 'single-select', + 'choices' => array( + 'browse' => $core->translate('Browse dynamic album'), + 'jump' => $core->translate('Jump to original album'), + 'jumplink' => $core->translate( + 'Separate link to original album')), + 'value' => $params['dynamicLinks']); + } + + /* ImageFrame settings, if available */ + list ($ret, $imageframe) = GalleryCoreApi::newFactoryInstance('ImageFrameInterface_1_1'); + if ($ret) { + return array($ret, null, null); + } + + if (isset($imageframe) && + (isset($params['albumFrame']) || + isset($params['itemFrame']) || + isset($params['photoFrame']))) { + list ($ret, $list) = $imageframe->getImageFrameList(); + if ($ret) { + return array($ret, null, null); + } + list ($ret, $sampleUrl) = $imageframe->getSampleUrl($itemId); + if ($ret) { + return array($ret, null, null); + } + $sample = ' (' + . $core->translate('View Samples') . ')'; + + if (isset($params['albumFrame']) && isset($standard['albumFrame'])) { + $settings[] = array('key' => 'albumFrame', + 'name' => $core->translate('Album Frame') . $sample, + 'type' => 'single-select', + 'choices' => $list, + 'value' => $params['albumFrame']); + } + + if (isset($params['itemFrame']) && isset($standard['itemFrame'])) { + $settings[] = array('key' => 'itemFrame', + 'name' => $core->translate('Item Frame') . $sample, + 'type' => 'single-select', + 'choices' => $list, + 'value' => $params['itemFrame']); + } + + if (isset($params['photoFrame']) && isset($standard['photoFrame'])) { + $settings[] = array('key' => 'photoFrame', + 'name' => $core->translate('Photo Frame') . $sample, + 'type' => 'single-select', + 'choices' => $list, + 'value' => $params['photoFrame']); + } + } + + /* ColorPack setting, if available */ + list ($ret, $colorpack) = GalleryCoreApi::newFactoryInstance('ColorPackInterface_1_0'); + if ($ret) { + return array($ret, null, null); + } + + if (isset($colorpack) && isset($params['colorpack'])) { + list ($ret, $list) = $colorpack->getColorPacks(); + if ($ret) { + return array($ret, null, null); + } + $settings[] = array('key' => 'colorpack', + 'name' => $core->translate('Color Pack'), + 'type' => 'single-select', + 'choices' => $list, + 'value' => $params['colorpack']); + } + + return array(null, $settings, $params); + } + + /** + * Check the values of the settings for legality. If there are errors, return an array of + * localized error messages to display for each invalid setting. Used for theme with simple + * settings (@see isAdvancedSettings) + * + * @param array $settings array('key' => array(value, ...), ...) + * @return array errors in the form of array('key' => 'translated text', ...) + */ + function validateSettings($settings) { + global $gallery; + $error = array(); + $standard = $this->getStandardSettings(); + + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + $core = $this; + } + + if (isset($standard['rows']) + && (empty($settings['rows']) || !is_numeric($settings['rows']))) { + $error['rows'] = $core->translate('You must enter a number greater than 0'); + } + if (isset($standard['columns']) + && (empty($settings['columns']) || !is_numeric($settings['columns']))) { + $error['columns'] = $core->translate('You must enter a number greater than 0'); + } + if (isset($standard['perPage']) + && (empty($settings['perPage']) || !is_numeric($settings['perPage']))) { + $error['perPage'] = $core->translate('You must enter a number greater than 0'); + } + + if (!empty($settings['rowHeight']) && !is_numeric($settings['rowHeight'])) { + $error['rowHeight'] = $core->translate('You must enter a number greater than 0'); + } + if (!empty($settings['columnWidth']) && !is_numeric($settings['columnWidth'])) { + $error['columnWidth'] = $core->translate('You must enter a number greater than 0'); + } + + foreach (array('sidebarBlocks', 'albumBlocks', 'photoBlocks') as $blockKey) { + if (isset($standard[$blockKey])) { + if (!empty($settings[$blockKey])) { + list ($success, $newValue) = + $this->packSetting('block-list', $settings[$blockKey]); + if (!$success) { + if ($gallery->getDebug()) { + $gallery->debug('Unable to parse block-list: ' . $settings[$blockKey]); + } + $error[$blockKey] = $core->translate( + 'Error reading block settings. Clear your browser cache and try again.'); + } + } + } + } + return $error; + } + + /** + * Convert a setting from a string format into a PHP native format. The string format is + * something that could be passed to the browser, like: + * [I like [eggs bacon]] + * The packed format might be: + * array("I like", array("eggs", "bacon")) + * + * The specific packing depends on the packType variable. + * + * @param string $packType + * @param string $value the input value + * @return mixed the packed form + */ + function packSetting($packType, $value) { + $success = true; + + switch ($packType) { + case 'block-list': + /* + * Expecting format (without line breaks): + * [["module.BlockName",{"param1":"value1",...}], + * ["module.BlockName",{"param1":"value1",...}], + * ["module.BlockName2"]] + * + * Output is a serialized array of the format: + * array( + * array('module.BlockName', array('param1' => 'value1')), + * array('module.BlockName', array('param1' => 'value1')), + * array('module.BlockName2', array())) + * + * The value can be empty. There can be any number of blocks. Blocks can be repeated. + * There can be any number of parameters + */ + $results = array(); + if (empty($value) || $value == '[]') { + /* success */ + } else { + GalleryCoreApi::requireOnce('lib/JSON/JSON.php'); + $json = new Services_JSON(SERVICES_JSON_LOOSE_TYPE); + + /* The sanitizer will escape quotes, so unescape them */ + $value = str_replace('"', '"', $value); + + $results = $json->decode($value); + + if (empty($results) || !isset($results[0])) { + $success = false; + $results = array(); + } else { + for ($i = 0; $i < count($results); $i++) { + if (count($results[$i]) == 1) { + array_push($results[$i], array()); + } + } + } + } + + $value = serialize($results); + } + + return array($success, $value); + } + + /** + * Unpack a packed setting. + * @see GalleryTheme::packSetting + * + * @param string $packType + * @param mixed $value the packed value + * @return string the unpacked value + */ + function unpackSetting($packType, $value) { + $success = true; + + switch ($packType) { + case 'block-list': + /* + * Convert to this format: + * [["module.BlockName", {"param1":"value1",...}] + * ["module.BlockName", {"param1":"value1",...}]] + * + * Input is: + * array('module.BlockName', array('param1' => 'value1'), + * 'module.BlockName', array('param1' => 'value1')) + */ + $result = ''; + $input = @unserialize($value); + if (!is_array($input)) { + $success = false; + } else if (empty($input)) { + $success = true; + $value = '[]'; + } else { + GalleryCoreApi::requireOnce('lib/JSON/JSON.php'); + $json = new Services_JSON(); + for ($i = 0; $i < count($input); $i++) { + if (empty($input[$i]) || !is_array($input[$i])) { + return array(false, ''); + } + if (count($input[$i]) == 1) { + array_push($input[$i], array()); + } + } + $value = $json->encode($input); + /* + * JSON can't distinguish between regular arrays and assoc arrays if the array is + * empty, so fix it up here. This isn't essential, but it keeps our interchange + * format cleaner (and we enforce this behaviour in our tests). + */ + $value = str_replace('[]', '{}', $value); + $success = true; + } + } + return array($success, $value); + } + + /** + * Load the template with data to define the theme settings. Used for theme with advanced + * settings. + * + * @see isAdvancedSettings + * + * @param object GalleryTemplate $template + * @param array $form array the form values + * @param int $itemId the item id or null for site wide settings + * @return array object GalleryStatus a status code + * string path to the body template + */ + function loadSettingsTemplate(&$template, &$form, $itemId=null) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } + + /** + * Let the theme handle the incoming request. Used for theme with advanced settings. + * + * @see isAdvancedSettings + * @see GalleryController::handleRequest + * + * @param array $form the form values + * @param int $itemId the item id or null for site wide settings + * @return array object GalleryStatus a status code + * array error messages + * string status message (itemId!=null) or status key (itemId==null) + */ + function handleSettingsRequest($form, $itemId=null) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * @see GalleryPlugin::activate + */ + function activate($postActivationEvent=true) { + if (!GalleryCoreApi::isPluginCompatibleWithApis($this)) { + return array(GalleryCoreApi::error(ERROR_PLUGIN_VERSION_MISMATCH, __FILE__, __LINE__, + sprintf('incompatible %s %s', $this->getPluginType(), $this->getId())), null); + } + + list ($ret, $redirect) = parent::activate($postActivationEvent); + if ($ret) { + return array($ret, null); + } + + if (!empty($redirect)) { + return array(null, $redirect); + } + + /* Set the default value for all settings that don't have values */ + list ($ret, $settings) = $this->getSettings(); + if ($ret) { + return array($ret, null); + } + + list ($ret, $currentParameters) = + GalleryCoreApi::fetchAllPluginParameters('theme', $this->getId()); + if ($ret) { + return array($ret, null); + } + + /* + * Settings will have the correct value for all parameters, so if it's not in the map yet we + * should store it now + */ + foreach ($settings as $setting) { + if (!isset($currentParameters[$setting['key']])) { + $ret = $this->setParameter($setting['key'], $setting['value']); + if ($ret) { + return array($ret, null); + } + } + } + + return array(null, array()); + } + + /** + * Perform the module installation or upgrade, whatever is required. It will do the + * following: + * 1. Get the current version of the theme (if its already installed) + * 2. Let the theme perform any necessary upgrade tasks. + * 3. Set the new theme version and api requirements into the database + * + * Themes should not need to override this method. Instead they should override the upgrade + * method and put all their theme specific logic there + * + * @return object GalleryStatus a status code + */ + function installOrUpgrade() { + global $gallery; + + if ($gallery->getDebug()) { + $gallery->debug(sprintf('GalleryTheme::installOrUpgrade %s theme', $this->getId())); + } + + if (!GalleryCoreApi::isPluginCompatibleWithApis($this)) { + return GalleryCoreApi::error(ERROR_PLUGIN_VERSION_MISMATCH, __FILE__, __LINE__, + sprintf('incompatible %s %s', $this->getPluginType(), $this->getId())); + } + + list ($ret, $installedVersion) = $this->getParameter('_version'); + if ($ret) { + return $ret; + } + + if ($gallery->getDebug()) { + $gallery->debug('GalleryTheme::installOrUpgrade compare versions'); + } + + if ($installedVersion != $this->getVersion()) { + if ($gallery->getDebug()) { + $gallery->debug('Old version: ' . $installedVersion + . ' New version: ' . $this->getVersion()); + } + + $ret = $this->upgrade($installedVersion); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to upgrade the %s theme, this ' . + 'is the error stack trace: %s', $this->getId(), + $ret->getAsText())); + } + return $ret; + } + + if ($gallery->getDebug()) { + $gallery->debug('GalleryTheme::installOrUpgrade set new theme version etc.'); + } + + $data = array('_version' => $this->getVersion(), + '_requiredCoreApi' => join(',', $this->getRequiredCoreApi()), + '_requiredThemeApi' => join(',', $this->getRequiredThemeApi())); + foreach ($data as $key => $value) { + $ret = $this->setParameter($key, $value); + if ($ret) { + return $ret; + } + } + + /* Reactivate myself to perform any activate based tasks like adding new parameters */ + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Reactivate %s theme', $this->getId())); + } + list ($ret, $redirect) = $this->reactivate(); + if ($ret) { + if ($gallery->getDebug()) { + $gallery->debug(sprintf('Error: Failed to reactivate the theme, this' . + ' is the error stack trace: %s', $ret->getAsText())); + } + return $ret; + } + } + + if ($gallery->getDebug()) { + $gallery->debug('GalleryTheme::installOrUpgrade finished successfully'); + } + + return null; + } + + /** + * Remove this theme from all albums. + * + * @return object GalleryStatus a status code + */ + function uninstall() { + global $gallery; + + list ($ret, $searchResults) = $gallery->search( + 'SELECT [GalleryAlbumItem::id] FROM [GalleryAlbumItem] WHERE ' . + '[GalleryAlbumItem::theme] = ?', array($this->getId())); + if ($ret) { + return $ret; + } + + for ($ids = array(); $result = $searchResults->nextResult();) { + $ids[] = $result[0]; + } + if (!empty($ids)) { + /* Reset albums to default theme */ + list ($ret, $defaultTheme) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + return $ret; + } + list ($ret, $lockId) = GalleryCoreApi::acquireWriteLock($ids); + if ($ret) { + return $ret; + } + list ($ret, $albums) = GalleryCoreApi::loadEntitiesById($ids); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + foreach ($albums as $album) { + $album->setTheme($defaultTheme); + $album->save(); + if ($ret) { + GalleryCoreApi::releaseLocks($lockId); + return $ret; + } + } + $ret = GalleryCoreApi::releaseLocks($lockId); + if ($ret) { + return $ret; + } + } + + /* Remove this plugin */ + $ret = parent::uninstall(); + if ($ret) { + return $ret; + } + + return null; + } + + /** + * @see GalleryPlugin::deactivate + */ + function deactivate($postDeactivationEvent=true) { + list ($ret, $defaultTheme) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.theme'); + if ($ret) { + return array($ret, null); + } + if ($defaultTheme == $this->getId() && $postDeactivationEvent) { + /* + * Can't deactivate default theme. UI doesn't offer this option, so we should only + * reach this code if default theme needs to be upgraded. loadPlugin will see a + * redirect URL is returned and jump to upgrader (the actual redirect returned below + * isn't used). Allow this deactivate if $postDeactivationEvent is false (during + * reactivate) + */ + return array(null, array('href' => 'upgrade/')); + } + + list ($ret, $redirect) = parent::deactivate($postDeactivationEvent); + if ($ret) { + return array($ret, null); + } + + return array(null, $redirect); + } + + /** + * Load the template with data from this view. + * + * @param object GalleryView $view + * @param object GalleryTemplate $template + * @param object GalleryItem $item the item to display + * @param array $params theme parameters + * @param array $viewResults results from the view + * @return array object GalleryStatus a status code + * array ('body' => string template or 'redirect' => array) + */ + function loadTemplate($view, &$template, $item, $params, $viewResults) { + global $gallery; + $theme =& $template->getVariableByReference('theme'); + + $urlGenerator =& $gallery->getUrlGenerator(); + $theme['themeUrl'] = + $urlGenerator->generateUrl(array('href' => 'themes/' . $this->getId())); + if (!isset($theme['pageUrl'])) { + $theme['pageUrl'] = array('view' => 'core.ShowItem', 'itemId' => $item->getId()); + } + + list ($ret, $theme['markupType']) = + GalleryCoreApi::getPluginParameter('module', 'core', 'misc.markup'); + if ($ret) { + $theme['markupType'] = 'none'; + } + + $theme['params'] = $params; + $theme['useFullScreen'] = !empty($viewResults['useFullScreen']); + + /* Unserialize our blocks and preload them if necessary */ + $seen = array(); + foreach ($theme['params'] as $key => $value) { + if (substr($key, -6) != 'Blocks') { + continue; + } + $theme['params'][$key] = unserialize($value); + + if ($theme['params'][$key]) { + foreach ($theme['params'][$key] as $block) { + $seen[$block[0]][] = $block[1]; + } + } + } + foreach ($seen as $blockId => $paramSet) { + $ret = $this->preloadBlock($template, $blockId, $paramSet); + if ($ret) { + return array($ret, null); + } + } + + if ($this->getId() == 'fallbackTheme') { + /* If theme failed to load then we're done */ + $theme['isFallback'] = true; + $theme['fallbackTemplate'] = $viewResults['body']; + return array(null, array('body' => 'modules/core/templates/FallbackTheme.tpl')); + } + + if (!$gallery->getConfig('showSidebarBlocks') && !empty($params['sidebarBlocks'])) { + $extractedSidebarBlocks = $theme['params']['sidebarBlocks']; + $theme['params']['sidebarBlocks'] = array(); + } + + /* Load icon pack if available */ + list ($ret, $iconpack) = GalleryCoreApi::newFactoryInstance('IconsInterface_1_0'); + if ($ret) { + return array($ret, null); + } + if (isset($iconpack)) { + $ret = $iconpack->init($template); + if ($ret) { + return array($ret, null); + } + } + + /* Load color pack if the theme supports them (and they're available) */ + if (!empty($params['colorpack'])) { + list ($ret, $colorpack) = GalleryCoreApi::newFactoryInstance('ColorPackInterface_1_0'); + if ($ret) { + return array($ret, null); + } + if (isset($colorpack)) { + $ret = $colorpack->selectColorPack($template, $params['colorpack']); + if ($ret) { + return array($ret, null); + } + } + } + + /* + * Figure out what type of view we've got. This is lame and not very OO. We should create + * a view hierarchy that lets them implement their own showPage() method + */ + switch ($view->getViewType()) { + case VIEW_TYPE_ADMIN: + $theme['pageType'] = 'admin'; + $theme['adminTemplate'] = $viewResults['body']; + $theme['adminL10Domain'] = $view->getL10Domain(); + list ($ret, $result) = $this->showAdminPage( + $template, $item, $params, $viewResults['body']); + if ($ret) { + return array($ret, null); + } + break; + + case VIEW_TYPE_SHOW_ITEM: + $this->_cacheablePage = true; + $session =& $gallery->getSession(); + + /* Albums page or Photo page */ + if ($item->getCanContainChildren()) { + $theme['pageType'] = 'album'; + + /* If we care about pagination, then figure out the current page and total pages */ + $perPage = $this->getPageSize($params); + $page = GalleryUtilities::getRequestVariables('page'); + if ($perPage == 0) { + $page = 1; + } else if (empty($page)) { + /* + * We don't have a page number. If we have a highlight id, then figure out what + * page that id is on and redirect to that page. + */ + $highlightId = GalleryUtilities::getRequestVariables('highlightId'); + if (!empty($highlightId)) { + if (isset($theme['allChildIds'])) { + $childIds = $theme['allChildIds']; + } else { + list ($ret, $childIds) = GalleryCoreApi::fetchChildItemIds($item); + if ($ret) { + return array($ret, null); + } + } + + $page = 1; + for ($i = 0; $i < count($childIds); $i++) { + if ($childIds[$i] == $highlightId) { + /* Found it */ + $page = ceil(($i+1) / $perPage); + break; + } + } + + /* Redirect to the new page */ + $redirect = $theme['pageUrl']; + if ($page != 1) { + $redirect['page'] = $page; + } + return array(null, array('redirect' => $redirect)); + } else { + $page = 1; + } + } + + if (isset($theme['allChildIds'])) { + /* Dynamic album has already loaded child ids */ + $isDynamicAlbum = true; + $this->_cacheablePage = false; + } + + if (!empty($perPage)) { + /* Use the pagination to calculate the child item ids to load */ + $start = $perPage * ($page - 1); + if (isset($isDynamicAlbum)) { + $childIds = array_slice($theme['allChildIds'], $start, $perPage); + $theme['totalPages'] = ceil(count($theme['allChildIds']) / $perPage); + } else { + list ($ret, $childIds) = GalleryCoreApi::fetchChildItemIds( + $item, $start, $perPage, $theme['actingUserId']); + if ($ret) { + return array($ret, null); + } + + /* + * Load up our child count so that we can figure out the max pages. We do + * this after we get the child ids because the 'childCount' common template + * data also gets the child counts for the child albums. + */ + $ret = $this->loadCommonTemplateData( + $template, $item, $params, array('childCount'), $childIds, false); + if ($ret) { + return array($ret, null); + } + + /* Store the total pages in the theme */ + $theme['totalPages'] = ceil($theme['childCount'] / $perPage); + } + $theme['currentPage'] = $page; + + /* If our page is over the max, redirect the user to the max page */ + if ($page > $theme['totalPages'] && $theme['totalPages'] > 0) { + $redirect = $theme['pageUrl']; + if ($theme['totalPages'] != 1) { + $redirect['page'] = $theme['totalPages']; + } + return array(null, array('redirect' => $redirect)); + } + } else { + /* + * No pagination; load all children. This isn't going to scale, but the theme + * is the boss. + */ + if (isset($isDynamicAlbum)) { + $childIds = $theme['allChildIds']; + } else { + list ($ret, $childIds) = GalleryCoreApi::fetchChildItemIds( + $item, null, null, $theme['actingUserId']); + if ($ret) { + return array($ret, null); + } + } + } + + list ($ret, $result) = $this->showAlbumPage($template, $item, $params, $childIds); + if ($ret) { + return array($ret, null); + } + } else { + $theme['pageType'] = 'photo'; + list ($ret, $result) = $this->showPhotoPage($template, $item, $params); + if ($ret) { + return array($ret, null); + } + } + + /* Load image frames if the theme supports them (and they're available) */ + if (!empty($params['albumFrame']) || + !empty($params['itemFrame']) || + !empty($params['photoFrame'])) { + list ($ret, $imageframe) = + GalleryCoreApi::newFactoryInstance('ImageFrameInterface_1_1'); + if ($ret) { + return array($ret, null); + } + if (isset($imageframe)) { + $frameIds = array(); + if ($item->getCanContainChildren()) { + foreach (array('albumFrame', 'itemFrame') as $key) { + if (!empty($params[$key])) { + $frameIds[] = $theme['params'][$key] = $params[$key]; + } + } + } else { + if (!empty($params['photoFrame'])) { + $frameIds[] = $theme['photoFrame'] = $params['photoFrame']; + } + } + if (!empty($frameIds)) { + $ret = $imageframe->init($template, $frameIds); + if ($ret) { + return array($ret, null); + } + } + } else { + /* Not available; unset params so theme won't try to use imageframe */ + unset($theme['params']['albumFrame']); + unset($theme['params']['itemFrame']); + unset($theme['params']['photoFrame']); + } + } + break; + + case VIEW_TYPE_PROGRESS_BAR: + /* We only use this for progressbar views (for now) */ + $theme['pageType'] = 'progressbar'; + list ($ret, $result) = $this->showProgressBarPage($template, $item, $params); + if ($ret) { + return array($ret, null); + } + break; + + case VIEW_TYPE_ERROR: + $theme['pageType'] = 'error'; + $theme['errorTemplate'] = $viewResults['body']; + list ($ret, $result) = $this->showErrorPage($template); + if ($ret) { + return array($ret, null); + } + break; + + + default: /* VIEW_TYPE_MODULE */ + $theme['pageType'] = 'module'; + $theme['moduleTemplate'] = $viewResults['body']; + $theme['moduleL10Domain'] = $view->getL10Domain(); + list ($ret, $result) = $this->showModulePage( + $template, $item, $params, $viewResults['body']); + if ($ret) { + return array($ret, null); + } + break; + } + + if (!is_array($result)) { + $result = array('body' => sprintf('themes/%s/templates/%s', $this->getId(), $result), + 'cacheable' => $this->_cacheablePage ? $item->getId() : false); + } + + if (isset($extractedSidebarBlocks)) { + $templateAdapter =& $gallery->getTemplateAdapter(); + + /* Render the sidebar blocks and save them */ + foreach ($extractedSidebarBlocks as $block) { + $template->setVariable( + 'SidebarBlock', array('type' => $block[0], 'params' => $block[1])); + list ($ret, $result['sidebarBlocksHtml'][]) = + $template->fetch('gallery:modules/core/templates/SidebarBlock.tpl'); + if ($ret) { + return array($ret, null); + } + } + } + + return array(null, $result); + } + + /** + * Call preload for given block if the module is active and a preload exists. + * + * @param object GalleryTemplate $template + * @param string $blockId (module.blockName) + * @param array $blockParams (optional) block parameters + * @return object GalleryStatus a status code + */ + function preloadBlock(&$template, $blockId, $blockParams=array()) { + global $gallery; + static $g2Base; + static $pluginStatus; + if (!isset($g2Base)) { + $g2Base = dirname(dirname(dirname(dirname(__FILE__)))); + list ($ret, $pluginStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return $ret; + } + } + + list ($module, $blockName) = explode('.', $blockId); + if (empty($pluginStatus[$module]['active'])) { + return null; + } + + $path = "modules/$module/Preloads.inc"; + $platform =& $gallery->getPlatform(); + if ($platform->file_exists("$g2Base/$path")) { + GalleryCoreApi::requireOnce($path); + $className = $module . 'Preloads'; + $instance = new $className; + $ret = $instance->preload($template, $blockName, $blockParams); + if ($ret) { + return $ret; + } + } + + return null; + } + + /** + * Load commonly used data into theme template. + * Always loaded: + * item item data + * children array of child item data + * Available keys to include in $dataToLoad parameter: + * owner = item owner data + * ^if childIds non-empty also fill ownerMap with array of ownerId => owner data + * viewCount = number of views for item + * ^if childIds non-empty also set viewCount on each child item + * childCount = number of children for item + * ^if childIds non-empty also set childCount on each child item that canContainChildren + * descendentCount = number of descendents for item + * ^if childIds non-empty also set descendentCount on each child that canContainChildren + * parents = array of ancestor data; also set parent key (direct parent data) + * systemLinks = array of array('text'=>.., 'params'=>.., 'moduleId'=>..) + * itemLinks = array of id => array('text'=>.., 'params'=>.., 'moduleId'=>..) + * ^if childIds non-empty also set itemLinks on each child item + * childItemLinksDetailed = boolean. true if you want detailed item links for children. + * you always get detailed item links for the current item + * itemSummaries = set itemSummaries (array of moduleId => html) on each child item + * thumbnails = if childIds non-empty then set thumbnail on each child item + * pageNavigator = calculate URLs for first/back/next/last links for album page navigation + * itemNavigator = calculate URLs for first/back/next/last links for photo navigation + * navThumbnails = load the thumbnails for itemNavigator items + * jumpRange = calculate page URLs for inter-album navigation (eg, "page: 1, 2 .. 7, 8") + * Include 'pageWindowSize'=># in $params to override default of 6 + * imageViews = loads entity data for resizes and source images, suitable for display + * when viewing a single image: + * 'imageViews' => derivatives, + * 'sourceImage' => data item, + * ^ contains 'viewInline' boolean, specifying if it can be displayed inline + * ^ contains 'itemTypeName' string, the type of item + * ^ contains 'isSource' member + * 'imageViewsIndex' => index to the resize currently displayed + * 'sourceImageViewIndex' => index to the source currently displayed + * 'fullSizeDimensions' => a string with dimensions of the orig. (eg, "640x480") + * permissions array of item permissions, respecting the guest mode flag. + * Periods in permissions have been converted to underscores + * to make them more Smarty friendly, so if you want to check + * a permission in smarty you'd do: + * {if isset($theme.permissions.core_addDataItem)} + * + * @param object GalleryTemplate $template + * @param object GalleryItem $item the item to display + * @param array $params theme parameters + * @param array $dataToLoad (string data key, ..) data to load into template + * @param array $childIds (optional) ids of child items to display + * @param boolean $useCache (optional) + * @return object GalleryStatus a status code + */ + function loadCommonTemplateData(&$template, $item, $params, $dataToLoad, + $childIds=array(), $useCache=true) { + global $gallery; + + $imageViewsIndex = GalleryUtilities::getRequestVariables('imageViewsIndex'); + $imageViewsIndex = is_numeric($imageViewsIndex) ? abs((int)$imageViewsIndex) : null; + if ($useCache && $this->_cacheablePage) { + list ($ret, $shouldCache) = GalleryDataCache::shouldCache('read', 'partial'); + if ($ret) { + return $ret; + } + + if ($shouldCache) { + list ($ret, $serializedData) = GalleryDataCache::getPageData( + 'template', array($item->getId(), $params, $dataToLoad, + $childIds, $imageViewsIndex)); + if ($ret) { + return $ret; + } + } + + if (!empty($serializedData)) { + $template->_smarty->_tpl_vars = unserialize($serializedData); + return null; + } + } + + list ($ret, $core) = GalleryCoreApi::loadPlugin('module', 'core'); + if ($ret) { + return $ret; + } + + /* + * -------------------------------------------------------------------------------------- + * Initialize + */ + $theme =& $template->getVariableByReference('theme'); + $load = $childItems = $childData = array(); + + foreach ($dataToLoad as $key) { + $load[$key] = true; + } + if (!empty($childIds)) { + list ($ret, $childItems) = GalleryCoreApi::loadEntitiesById($childIds); + if ($ret) { + return $ret; + } + } + $itemId = $item->getId(); + $allItems = array_merge($itemId ? array($item) : array(), $childItems); + $allItemIds = array_merge($itemId ? array($itemId) : array(), $childIds); + $allAlbumIds = array(); + foreach ($allItems as $it) { + if ($it->getCanContainChildren()) { + $allAlbumIds[] = $it->getId(); + } + } + $perPage = $this->getPageSize($params); + + if (!empty($childIds)) { + /* + * Study all permissions at once so that individual permission checks later don't lead + * to multiple database queries + */ + $ret = GalleryCoreApi::studyPermissions($childIds, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } + + /* + * -------------------------------------------------------------------------------------- + * Load additional required entities + */ + $ids = array(); + if (isset($load['owner'])) { + $ids[$item->getOwnerId()] = true; + $childOwnerIds = array(); + foreach ($childItems as $child) { + $ids[$child->getOwnerId()] = true; + $childOwnerIds[$child->getOwnerId()] = true; + } + $childOwnerIds = array_keys($childOwnerIds); + } + if (isset($load['parents'])) { + /* + * TODO: Should we have this obey the acting user permission? It may make navigation + * strange for the active user. + */ + if ($itemId && !isset($item->parent)) { + list ($ret, $parentSequence) = GalleryCoreApi::fetchParentSequence($itemId, true); + if ($ret) { + return $ret; + } + } else { + list ($ret, $rootId) = GalleryCoreApi::getDefaultAlbumId(); + if ($ret) { + return $ret; + } + $parentSequence = array($rootId); + } + if (!empty($parentSequence)) { + $ret = GalleryCoreApi::studyPermissions($parentSequence, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } + foreach ($parentSequence as $id) { + $ids[$id] = true; + } + } + if (isset($load['itemNavigator'])) { + $navigator = array(); + $canViewParent = false; + if (isset($item->parent->getChildrenFunction)) { + list ($ret, $peerDataItemIds) = + call_user_func($item->parent->getChildrenFunction, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } else if ($item->getParentId()) { + list ($ret, $canViewParent) = GalleryCoreApi::hasItemPermission( + $item->getParentId(), 'core.view', $theme['actingUserId']); + if ($ret) { + return $ret; + } + if ($canViewParent) { + list ($ret, $parent) = GalleryCoreApi::loadEntitiesById($item->getParentId()); + if ($ret) { + return $ret; + } + list ($ret, $peerDataItemIds) = GalleryCoreApi::fetchChildDataItemIds( + $parent, null, null, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } + } + if (!empty($peerDataItemIds)) { + foreach ($peerDataItemIds as $i => $id) { + if ($id == $itemId) { + $dataItemIndex = $i; + break; + } + } + if (isset($dataItemIndex)) { + if ($dataItemIndex > 0) { + $navigator['first'] = $peerDataItemIds[0]; + $navigator['back'] = $peerDataItemIds[$dataItemIndex - 1]; + } + $lastIndex = count($peerDataItemIds) - 1; + if ($dataItemIndex < $lastIndex) { + $navigator['next'] = $peerDataItemIds[$dataItemIndex + 1]; + $navigator['last'] = $peerDataItemIds[$lastIndex]; + } + foreach ($navigator as $id) { + $ids[$id] = true; + } + } + } + if (empty($navigator)) { + unset($load['itemNavigator']); + } + } + if (!empty($ids)) { + list ($ret, $list) = GalleryCoreApi::loadEntitiesById(array_keys($ids)); + if ($ret) { + return $ret; + } + foreach ($list as $it) { + $entities[$it->getId()] = $it; + } + } + + /* + * -------------------------------------------------------------------------------------- + * Always load 'item' and 'children' + */ + $theme['item'] = (array)$item; + if (!isset($theme['children'])) { + $theme['children'] = array(); + foreach ($childItems as $child) { + $tmp = (array)$child; + $theme['children'][] = $tmp; + } + } + + /* + * -------------------------------------------------------------------------------------- + * 'owner' + */ + if (isset($load['owner'])) { + $theme['item']['owner'] = (array)$entities[$item->getOwnerId()]; + for ($i = 0; $i < count($theme['children']); $i++) { + $theme['children'][$i]['owner'] = + (array)$entities[$theme['children'][$i]['ownerId']]; + } + } + + /* + * -------------------------------------------------------------------------------------- + * 'viewCount' + */ + if (isset($load['viewCount'])) { + if (!empty($allItemIds)) { + list ($ret, $viewCount) = GalleryCoreApi::fetchItemViewCounts($allItemIds); + if ($ret) { + return $ret; + } + } + $theme['item']['viewCount'] = isset($viewCount[$itemId]) ? $viewCount[$itemId] : 0; + $childData[] = 'viewCount'; + } + + /* + * -------------------------------------------------------------------------------------- + * 'childCount' + */ + if (isset($load['childCount']) && !isset($theme['childCount'])) { + if (!empty($allAlbumIds)) { + list ($ret, $childCount) = + GalleryCoreApi::fetchChildCounts($allAlbumIds, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } + foreach ($allAlbumIds as $id) { + if (!isset($childCount[$id])) { + $childCount[$id] = 0; + } + } + $theme['childCount'] = isset($childCount[$itemId]) ? $childCount[$itemId] + : (isset($theme['allChildIds']) ? count($theme['allChildIds']) : 0); + $childData[] = 'childCount'; + } + if (isset($theme['childCount'])) { + $theme['item']['childCount'] = $theme['childCount']; + } + + /* + * -------------------------------------------------------------------------------------- + * 'descendentCount' + */ + if (isset($load['descendentCount'])) { + if (!empty($allAlbumIds)) { + list ($ret, $descendentCount) = + GalleryCoreApi::fetchDescendentCounts($allAlbumIds, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } + foreach ($allAlbumIds as $id) { + if (!isset($descendentCount[$id])) { + $descendentCount[$id] = 0; + } + } + $theme['descendentCount'] = + isset($descendentCount[$itemId]) ? $descendentCount[$itemId] : 0; + $theme['item']['descendentCount'] = $theme['descendentCount']; + $childData[] = 'descendentCount'; + } + + /* + * -------------------------------------------------------------------------------------- + * 'parents' + */ + if (isset($load['parents'])) { + $theme['parents'] = array(); + foreach ($parentSequence as $id) { + list ($ret, $canSee) = + GalleryCoreApi::hasItemPermission($id, 'core.view', $theme['actingUserId']); + if ($ret) { + return $ret; + } + if ($canSee) { + $theme['parents'][] = (array)$entities[$id]; + } + } + if (isset($item->parent)) { + $theme['parents'][] = (array)$item->parent; + } + foreach ($theme['parents'] as $i => $parent) { + if (!isset($parent['urlParams'])) { + $urlParams = array('view' => 'core.ShowItem', 'itemId' => $parent['id']); + if (!empty($theme['parents'][$i + 1]['id'])) { + $urlParams['highlightId'] = $theme['parents'][$i + 1]['id']; + } else if ($itemId && ($i + 1) == count($theme['parents'])) { + $urlParams['highlightId'] = $itemId; + } + $theme['parents'][$i]['urlParams'] = $urlParams; + } + } + $theme['parent'] = empty($theme['parents']) ? null : + $theme['parents'][count($theme['parents']) - 1]; + } + + /* + * -------------------------------------------------------------------------------------- + * 'systemLinks', 'itemLinks', 'itemSummaries' + * Load links and content from all active modules + */ + if (isset($load['systemLinks']) + || isset($load['itemLinks']) || isset($load['itemSummaries'])) { + if (!empty($allItemIds)) { + list ($ret, $permissions) = + GalleryCoreApi::fetchPermissionsForItems($allItemIds, $theme['actingUserId']); + if ($ret) { + return $ret; + } + } + + if (isset($load['systemLinks'])) { + $theme['systemLinks'] = array(); + } + if (isset($load['itemLinks'])) { + $itemLinks = array($itemId => array()); + foreach ($childIds as $id) { + $itemLinks[$id] = array(); + } + } + if (isset($load['itemSummaries']) && !empty($childIds)) { + foreach ($childIds as $id) { + $itemSummaries[$id] = array(); + } + $childData[] = 'itemSummaries'; + } + + list ($ret, $moduleStatus) = GalleryCoreApi::fetchPluginStatus('module'); + if ($ret) { + return $ret; + } + + if (empty($load['childItemLinksDetailed'])) { + /* We always want detailed links for the current item */ + $wantsDetailedLinks = array($itemId => 1); + } else { + /* We want detailed links for everybody */ + $wantsDetailedLinks = array_flip($allItemIds); + } + + foreach ($moduleStatus as $moduleId => $status) { + if (empty($status['active'])) { + continue; + } + $callbacks = array_flip(explode('|', $status['callbacks'])); + + $required = false; + foreach (array('systemLinks' => 'getSystemLinks', + 'itemLinks' => 'getItemLinks', + 'itemSummaries' => 'getItemSummaries') as $key => $callbackKey) { + if (isset($load[$key]) && isset($callbacks[$callbackKey])) { + $required = true; + break; + } + } + + if (!$required) { + /* This module doesn't have anything we need. Don't bother with it */ + continue; + } + + list ($ret, $module) = GalleryCoreApi::loadPlugin('module', $moduleId); + if ($ret) { + if ($ret->getErrorCode() & ERROR_PLUGIN_VERSION_MISMATCH) { + continue; + } + return $ret; + } + + if (isset($load['systemLinks']) && isset($callbacks['getSystemLinks'])) { + /* We don't use the acting user for system links -- it's too confusing */ + list ($ret, $links) = $module->getSystemLinks(); + if ($ret) { + return $ret; + } + /* Add URL/moduleId keys */ + foreach ($links as $key => $value) { + $theme['systemLinks'][$moduleId . '.' . $key] = $value; + } + } + + if (isset($itemLinks) && isset($callbacks['getItemLinks']) && !empty($allItems)) { + list ($ret, $links) = $module->getItemLinks( + $allItems, $wantsDetailedLinks, $permissions, $theme['actingUserId']); + if ($ret) { + return $ret; + } + + /* Add URL/moduleId keys */ + foreach ($links as $id => $list) { + foreach ($list as $link) { + $link['moduleId'] = $moduleId; + $itemLinks[$id][] = $link; + } + } + } + + if (isset($itemSummaries) && isset($callbacks['getItemSummaries'])) { + list ($ret, $content) = + $module->getItemSummaries($childItems, $permissions, $template); + if ($ret) { + return $ret; + } + foreach ($content as $id => $html) { + if (!empty($html)) { + $itemSummaries[$id][$moduleId] = $html; + } + } + } + } + + if (isset($itemLinks)) { + foreach (array_keys($itemLinks) as $id) { + usort($itemLinks[$id], array('GalleryTheme', '_sortItemLinks')); + } + $theme['itemLinks'] = $itemLinks[$itemId]; + $childData[] = 'itemLinks'; + } + } + + /* + * -------------------------------------------------------------------------------------- + * 'thumbnails' + */ + if (isset($load['thumbnails']) && !empty($childIds)) { + list ($ret, $thumbnail) = GalleryCoreApi::fetchThumbnailsByItemIds($childIds); + if ($ret) { + return $ret; + } + foreach (array_keys($thumbnail) as $id) { + if (!($thumbnail[$id]->getWidth() && $thumbnail[$id]->getHeight())) { + list ($ret, $thumbnail[$id]) = + GalleryCoreApi::rebuildDerivativeCache($thumbnail[$id]->getId()); + if ($ret) { + return $ret; + } + } + $thumbnail[$id] = (array)$thumbnail[$id]; + } + $childData[] = 'thumbnail'; + } + + /* + * -------------------------------------------------------------------------------------- + * Populate data in children list + */ + if (!empty($childData)) { + foreach (array_keys($theme['children']) as $i) { + $id = $theme['children'][$i]['id']; + foreach ($childData as $key) { + if (isset(${$key}[$id])) { + $theme['children'][$i][$key] = ${$key}[$id]; + } + } + } + } + + /* + * -------------------------------------------------------------------------------------- + * 'pageNavigator' + */ + if (isset($load['pageNavigator']) && isset($theme['totalPages'])) { + $page = GalleryUtilities::getRequestVariables('page'); + if (empty($page)) { + $page = 1; + } + + /* Set up the navigator */ + $navigator = array(); + if ($page > 1) { + $navigator['first']['urlParams'] = $navigator['back']['urlParams'] = + $theme['pageUrl']; + if ($page - 1 != 1) { + $navigator['back']['urlParams']['page'] = $page - 1; + } + } + if ($page < $theme['totalPages']) { + $navigator['next']['urlParams'] = $navigator['last']['urlParams'] = + $theme['pageUrl']; + $navigator['next']['urlParams']['page'] = $page + 1; + $navigator['last']['urlParams']['page'] = $theme['totalPages']; + } + $theme['navigator'] = $navigator; + } + + /* + * -------------------------------------------------------------------------------------- + * 'itemNavigator', 'navThumbnails' + */ + if (isset($load['itemNavigator'])) { + $thumbTable = array(); + if (isset($load['navThumbnails'])) { + list ($ret, $thumbTable) = GalleryCoreApi::fetchThumbnailsByItemIds($navigator); + if ($ret) { + return $ret; + } + } + foreach ($navigator as $key => $id) { + $navigator[$key] = array('urlParams' => $theme['pageUrl'], + 'item' => (array)$entities[$id]); + $navigator[$key]['urlParams']['itemId'] = $id; + if (isset($thumbTable[$id])) { + $navigator[$key]['thumbnail'] = (array)$thumbTable[$id]; + } + } + $theme['navigator'] = $navigator; + } + + /* + * -------------------------------------------------------------------------------------- + * 'jumpRange' + */ + if (isset($load['jumpRange']) && isset($theme['totalPages'])) { + $page = GalleryUtilities::getRequestVariables('page'); + if (empty($page)) { + $page = 1; + } + $windowSize = isset($params['pageWindowSize']) ? $params['pageWindowSize'] : 6; + $jumpRange = array(); + $lowerPage = max($page - (int)($windowSize / 2), 1); + $upperPage = min($page + (int)($windowSize / 2), $theme['totalPages']); + if ($upperPage == 0) { + $upperPage = 1; + } + if ($upperPage == $theme['totalPages']) { + $lowerPage = max($upperPage - $windowSize, 1); + } else if ($lowerPage == 1) { + $upperPage = min($lowerPage + ($windowSize-1), $theme['totalPages']); + } + for ($i = $lowerPage; $i <= $upperPage; $i++) { + $jumpRange[] = $i; + } + if ($lowerPage > 1) { + array_unshift($jumpRange, 1); + } + if ($upperPage < $theme['totalPages']) { + $jumpRange[] = $theme['totalPages']; + } + $theme['jumpRange'] = $jumpRange; + } + + /* + * -------------------------------------------------------------------------------------- + * 'imageViews' + */ + if (isset($load['imageViews'])) { + /* + * Figure out all possible views of this item that the user can see and get them into an + * acceptable format for the template engine + */ + $imageViews = array(); + $can = array(); + list ($ret, $permissions) = + GalleryCoreApi::getPermissions($itemId, $theme['actingUserId']); + if ($ret) { + return $ret; + } + + /* If the user can see resized versions, add those to the list */ + if (isset($permissions['core.viewResizes'])) { + /* Load the resizes */ + list ($ret, $resizes) = GalleryCoreApi::fetchResizesByItemIds(array($itemId)); + if ($ret) { + return $ret; + } + + if (!empty($resizes)) { + foreach ($resizes[$itemId] as $resize) { + /* Rebuild the derivative if we don't have its dimensions */ + if ($resize->getWidth() == 0 || $resize->getHeight() == 0) { + list ($ret, $resize) = + GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent( + $resize->getId()); + if ($ret) { + return $ret; + } + } + + $tmp = (array)$resize; + $tmp['viewInline'] = 1; + $imageViews[] = $tmp; + } + } + } + + /* If the user can see the full version, add it to the list */ + $sourceImage = null; + if (isset($permissions['core.viewSource'])) { + /* Add the full version */ + list ($ret, $preferred) = GalleryCoreApi::fetchPreferredsByItemIds(array($itemId)); + if ($ret) { + return $ret; + } + + /* Show the preferred item, if it's there */ + if (empty($preferred)) { + $sourceImage = (array)$item; + $sourceImage['viewInline'] = $item->canBeViewedInline(); + } else { + $sourceImage = (array)$preferred[$itemId]; + $sourceImage['viewInline'] = true; + } + $sourceImage['itemTypeName'] = $item->itemTypeName(); + $sourceImage['isSource'] = true; + $imageViews[] = $sourceImage; + $sourceImageViewIndex = sizeof($imageViews)-1; + } + + /* If all else fails, just show the thumbnail */ + if (empty($imageViews)) { + /* Load the thumbnail */ + list ($ret, $thumbnails) = GalleryCoreApi::fetchThumbnailsByItemIds(array($itemId)); + if ($ret) { + return $ret; + } + + if (!empty($thumbnails)) { + $tmp = (array)$thumbnails[$itemId]; + $tmp['viewInline'] = true; + $imageViews[] = $tmp; + } + } + + if (empty($imageViewsIndex)) { + $imageViewsIndex = 0; + } + + if (empty($sourceImage['width'])) { + $fullSizeDimensions = $sourceImage['itemTypeName'][0]; + } else { + $fullSizeDimensions = $core->translate( + array('text' => '%dx%d', + 'arg1' => $sourceImage['width'], + 'arg2' => $sourceImage['height'])); + } + + /* Don't let the index overflow the images array */ + $imageViewsIndex = min($imageViewsIndex, count($imageViews) - 1); + $imageViewsIndex = max(0, $imageViewsIndex); + if (isset($sourceImageViewIndex)) { + $theme['sourceImageViewIndex'] = $sourceImageViewIndex; + } + $theme['imageViews'] = $imageViews; + $theme['sourceImage'] = $sourceImage; + $theme['imageViewsIndex'] = $imageViewsIndex; + $theme['fullSizeDimensions'] = $fullSizeDimensions; + } + + /* -------------------------------------------------------------------------------------- */ + if (isset($load['permissions']) && !isset($theme['permissions']) && $itemId) { + list ($ret, $permissions) = + GalleryCoreApi::getPermissions($itemId, $theme['actingUserId']); + if ($ret) { + return $ret; + } + + foreach (array_keys($permissions) as $perm) { + $theme['permissions'][str_replace('.', '_', $perm)] = 1; + } + } + + if ($useCache && $this->_cacheablePage) { + list ($ret, $shouldCache) = GalleryDataCache::shouldCache('write', 'partial'); + if ($ret) { + return $ret; + } + + if ($shouldCache) { + $ret = GalleryDataCache::putPageData( + 'template', $item->getId(), + array($item->getId(), $params, $dataToLoad, $childIds, $imageViewsIndex), + serialize($template->_smarty->_tpl_vars)); + if ($ret) { + return $ret; + } + } + } + + return null; + } + + /** + * Sort an array of associative arrays on the 'text' key. + * @access private + */ + function _sortItemLinks($a, $b) { + return strcmp($a['text'], $b['text']); + } + + /** + * Return the number of items per page, or 0 if there is no pagination in this theme. + * + * @param array $params the theme parameters + * @return int + */ + function getPageSize($params) { + if (!empty($params['rows']) && !empty($params['columns'])) { + return $params['rows'] * $params['columns']; + } + + if (!empty($params['perPage'])) { + return $params['perPage']; + } + + return 0; + } + + /** + * Load all the necessary template data to render a page for an album. + * + * @param object GalleryTemplate $template + * @param object GalleryAlbumItem $item the album item to render + * @param array $params the theme parameters + * @param int $childIds the child item ids + * @return array object GalleryStatus a status code + * string path to a template file or array(html/redirect) + * @access private + */ + function showAlbumPage(&$template, $item, $params, $childIds) { + return array(null, null); + } + + /** + * Load all the necessary template data to render a page for a single item. + * + * @param object GalleryTemplate $template + * @param object GalleryItem $item the item to render, can be any subclass of GalleryItem + * @param array $params the theme parameters + * @return array object GalleryStatus a status code + * string path to a template file or array(html/redirect) + * @access private + */ + function showPhotoPage(&$template, $item, $params) { + return array(null, null); + } + + /** + * Load all the necessary template data to render a page for an administrative (or other) view. + * + * @param object GalleryTemplate $template + * @param object GalleryItem $item the item to render + * @param array $params the theme parameters + * @param string $templateFile the body template file from the view + * @return array object GalleryStatus a status code + * string path to a template file or array(html/redirect) + * @access private + */ + function showAdminPage(&$template, $item, $params, $templateFile) { + return array(null, null); + } + + /** + * Load all the necessary template data to render a page for a module view (any views that + * aren't user, site, or item admin eg slideshow or members list). + * + * @param object GalleryTemplate $template + * @param object GalleryItem $item the item to render + * @param array $params the theme parameters + * @param string $templateFile the body template file from the view + * @return array object GalleryStatus a status code + * string path to a template file or array(html/redirect) + * @access private + */ + function showModulePage(&$template, $item, $params, $templateFile) { + return array(null, null); + } + + /** + * Load all the necessary template data to render an error page. + * + * @param object GalleryTemplate $template + * @return array object GalleryStatus a status code + * string path to a template file or array(html/redirect) + * @access private + */ + function showErrorPage(&$template) { + return array(null, null); + } + + /** + * Load all the necessary template data to render a progress bar page. + * + * @param object GalleryTemplate $template + * @param object GalleryItem $item the item to render + * @param array $params the theme parameters + * @return array object GalleryStatus a status code + * string path to a template file or array(html/redirect) + * @access private + */ + function showProgressBarPage(&$template, $item, $params) { + return array(null, null); + } + + /** + * Split the HTML content into its various component pieces. + * + * @param string $mainHtml the main html (, , etc) + * @param array $extraHtml any extra html that we've generated, like sidebar HTML + * @return array('headHtml' => ..., 'bodyHtml' => ...) + */ + function splitHtml($mainHtml, $extraHtml) { + if (preg_match('|(.*).*?(.*)|s', $mainHtml, $matches) == 1) { + $results = array('headHtml' => $matches[1], 'bodyHtml' => $matches[2]); + } else { + $results = array('bodyHtml' => $mainHtml); + } + + /* If we extracted the sidebar, it'll be in our extra html, so move that over */ + if (isset($extraHtml['sidebarBlocksHtml'])) { + $results['sidebarBlocksHtml'] = $extraHtml['sidebarBlocksHtml']; + } + + return $results; + } + + /** + * @see GalleryPlugin::getPluginType + */ + function getPluginType() { + return 'theme'; + } + + function setRequiredThemeApi($requirement) { + $this->_requiredThemeApi = $requirement; + } + + function getRequiredThemeApi() { + return $this->_requiredThemeApi; + } + + function setStandardSettings($standardSettings) { + $this->_standardSettings = $standardSettings; + } + + function getStandardSettings() { + return $this->_standardSettings; + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryToolkit.class b/Source/gallery2/modules/core/classes/GalleryToolkit.class new file mode 100644 index 0000000..c9b9e92 --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryToolkit.class @@ -0,0 +1,259 @@ + + * @author Bharat Mediratta + * @version $Revision: 15513 $ + * @abstract + */ +class GalleryToolkit { + + /** + * Get a certain property of a file + * + * @param string $mimeType + * @param string $propertyName + * @param string $sourceFilename + * @return array object GalleryStatus a status code, + * mixed the value of the property + */ + function getProperty($mimeType, $propertyName, $sourceFilename) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null); + } + + /** + * Perform a certain operation + * + * Perform the wanted operation on sourceFilename and write the results in + * destFilename. + * Note: Rules for 'width' and 'height' keys in $context.. + * If w/h are present in context and toolkit performs an operation that + * changes the w/h then it must update the context with the new values. + * (This is optional if the context previously had no w/h values) + * + * @param string $mimeType + * @param string $operationName + * @param string $sourceFilename the source file name + * @param string $destFilename the destination file name (it will be overwritten if it exists) + * @param array $parameters + * @param array $context (optional) context data + * @return array object GalleryStatus a status code + * string the output mime type + * array context data + */ + function performOperation($mimeType, $operationName, $sourceFilename, + $destFilename, $parameters, $context=array()) { + return array(GalleryCoreApi::error(ERROR_UNIMPLEMENTED), null, null); + } + + /** + * Apply the transform operation to the set of target operations. The transform operation + * will typically have happened upstream from the target operations, so we have to adjust + * the target operations to take it into account. For example, if the target operations + * include a crop operation and upstream we rotate|90 it, then you'd want to rotate the + * crop's parameters accordingly. + * + * @param string $transformOperation the upstream transform + * @param string $targetOperations the current set of operations + * @param boolean $reverse true if we should apply the transform in reverse + * @return array boolean success or failure + * string the new set of operations + */ + function applyTransform($transformOperation, $targetOperations, $reverse=false) { + $transformedOperations = $targetOperations; + + /* Right now, only the rotate operation will cause issues */ + if (!strncmp($transformOperation, 'rotate', 6)) { + /* And it will only cause issues to the crop operation */ + if (strstr($targetOperations, 'crop|') !== false) { + $rotationAmount = substr($transformOperation, 7); + if ($reverse) { + switch ($rotationAmount) { + case '90': + $rotationAmount = '270'; + break; + + case '-90': + case '270': + $rotationAmount = '90'; + break; + } + } + + $newOperations = array(); + foreach (split(';', $targetOperations) as $operation) { + if (!strncmp($operation, 'crop', 4)) { + list ($x, $y, $width, $height) = split(',', substr($operation, 5)); + + switch ($rotationAmount) { + case '90': + $newX = GalleryUtilities::roundToString( + 100.0 - GalleryUtilities::castToFloat($y) + - GalleryUtilities::castToFloat($height), 3); + $newY = $x; + $newWidth = $height; + $newHeight = $width; + break; + + case '-90': + case '270': + $newX = $y; + $newY = GalleryUtilities::roundToString( + 100.0 - GalleryUtilities::castToFloat($x) + - GalleryUtilities::castToFloat($width), 3); + $newWidth = $height; + $newHeight = $width; + break; + + case '180': + $newX = GalleryUtilities::roundToString( + 100.0 - GalleryUtilities::castToFloat($x) + - GalleryUtilities::castToFloat($width), 3); + $newY = GalleryUtilities::roundToString( + 100.0 - GalleryUtilities::castToFloat($y) + - GalleryUtilities::castToFloat($height), 3); + $newWidth = $width; + $newHeight = $height; + break; + + default: + /* What do we do now? Do nothing. */ + $newX = $x; + $newY = $y; + $newWidth = $width; + $newHeight = $height; + } + + $newOperations[] = sprintf('crop|%s,%s,%s,%s', + $newX, $newY, $newWidth, $newHeight); + } else { + $newOperations[] = $operation; + } + } + $transformedOperations = join(';', $newOperations); + } + } + + return array(true, $transformedOperations); + } + + + /** + * Merge two operations together in an intelligent way. The end result of + * the merge should be a new operation and arguments that would result if + * you applied the operations in sequence. For example, if the operations + * are 'rotate|90' and 'rotate|180', then the result would be 'rotate|270' + * (or 'rotate|-90'). The toolkit should only merge the operations if it + * can do so cleanly. + * + * @param string $operation1 the first operation + * @param array $args1 the first operation's arguments + * @param string $operation2 the second operation + * @param array $args2 the second operation's arguments + * @return array (true if the operation was success, + * $mergedOperation, + * $mergedArgs) + */ + function mergeOperations($operation1, $args1, $operation2, $args2) { + /* We can only merge like operations */ + if ($operation1 != $operation2) { + /* But not all like operations have the same name */ + $likeOperations = array('resize', 'scale', 'thumbnail'); + if (!(in_array($operation1, $likeOperations) + && in_array($operation2, $likeOperations))) { + return array(false, null, null); + } + } + + switch ($operation1) { + case 'crop': + case 'resize': + case 'scale': + case 'thumbnail': + /* For like operations, the second operation takes precedence */ + return array(true, $operation2, $args2); + break; + + case 'rotate': + /* Rotation is additive */ + $rotation = (360 + $args1[0] + $args2[0]) % 360; + + /* 0 rotation means the operation goes away */ + if ($rotation == 0) { + return array(true, null, null); + } + + if (abs($rotation) > 180) { + $rotation = $rotation - 360; + } + return array(true, $operation2, array($rotation)); + + default: + return array(false, null, null); + } + } + + /** + * Estimate the dimensions of a GalleryDerivativeImage from its operations and its source. + * + * @param object GalleryDerivativeImage $derivative + * @param object GalleryEntity $source (probably a GalleryPhotoItem or GalleryMovieItem) + * @static + */ + function estimateDimensions(&$derivative, $source) { + if (method_exists($source, 'getwidth') && method_exists($source, 'getheight')) { + $width = $source->getWidth(); + $height = $source->getHeight(); + if ($width && $height) { + $operations = $derivative->getDerivativeOperations(); + if (preg_match('/^(?:thumbnail|scale)\|(\d+)$/', $operations, $matches)) { + $target = $matches[1]; + if (!empty($target)) { + if (GalleryUtilities::isA($source, 'GalleryDerivativeImage')) { + /* + * If the source is also a derivative then assume the real source + * is larger and allow upscaling in this estimate. It's possible + * the real source is actually smaller than our $target size, but + * it will be corrected once the derivative is actually built. + */ + list ($newWidth, $newHeight) = + GalleryUtilities::scaleDimensionsToFit($width, $height, $target); + } else { + list ($newWidth, $newHeight) = + GalleryUtilities::shrinkDimensionsToFit($width, $height, $target); + } + $derivative->setWidth($newWidth); + $derivative->setHeight($newHeight); + } + } + } + } + } +} +?> diff --git a/Source/gallery2/modules/core/classes/GalleryTranslator.class b/Source/gallery2/modules/core/classes/GalleryTranslator.class new file mode 100644 index 0000000..517015d --- /dev/null +++ b/Source/gallery2/modules/core/classes/GalleryTranslator.class @@ -0,0 +1,555 @@ + + * @version $Revision: 15513 $ + */ +class GalleryTranslator { + + /** + * Keep track of the gettext domains we've already bound + * @var array + * @access private + */ + var $_boundDomains; + + /** + * Currently selected locale + * @var string + * @access private + */ + var $_languageCode; + + /** + * Does the active language read right-to-left? + * @var boolean + * @access private + */ + var $_isRightToLeft; + + + function GalleryTranslator() { + $this->_boundDomains = array(); + } + + /** + * Can we translate? + * @return boolean + * @static + */ + function canTranslate() { + return function_exists('dgettext'); + } + + /** + * Can we make plural translations? + * @return boolean + * @static + */ + function canTranslatePlural() { + return function_exists('dngettext'); + } + + /** + * Does the active language read right-to-left? + * @return boolean + */ + function isRightToLeft() { + return $this->_isRightToLeft; + } + + /** + * Return our language data. + * @todo Move this information into a configuration file + * + * @return array array['language code']['country code'] = array('description', 'right-to-left'?) + * array array('country' => 'default language code', + * 'country' => 'default language code', + * ...) + * @static + */ + function getLanguageData() { + static $supportedLanguages = array(); + static $defaultCountry = array(); + + if (empty($supportedLanguages)) { + /* English */ + $supportedLanguages['en']['US']['description'] = 'English (US)'; + $supportedLanguages['en']['GB']['description'] = 'English (UK)'; + $defaultCountry['en'] = 'US'; + + /* Afrikaans */ + $supportedLanguages['af']['ZA']['description'] = 'Afrikaans'; + $defaultCountry['af'] = 'ZA'; + + /* Catalan */ + $supportedLanguages['ca']['ES']['description'] = 'Catalan'; + $defaultCountry['ca'] = 'ES'; + + /* Czech */ + $supportedLanguages['cs']['CZ']['description'] = 'Česky'; + $defaultCountry['cs'] = 'CZ'; + + /* Danish */ + $supportedLanguages['da']['DK']['description'] = 'Dansk'; + $defaultCountry['da'] = 'DK'; + + /* German */ + $supportedLanguages['de']['DE']['description'] = 'Deutsch'; + $defaultCountry['de'] = 'DE'; + + /* Spanish */ + $supportedLanguages['es']['ES']['description'] = 'Español'; + $supportedLanguages['es']['MX']['description'] = 'Español (MX)'; + $supportedLanguages['es']['AR']['description'] = 'Español (AR)'; + $defaultCountry['es'] = 'ES'; + + /* Estonian */ + $supportedLanguages['et']['EE']['description'] = 'Eesti'; + $defaultCountry['et'] = 'EE'; + + /* Basque */ + $supportedLanguages['eu']['ES']['description'] = 'Euskara'; + $defaultCountry['eu'] = 'ES'; + + /* French */ + $supportedLanguages['fr']['FR']['description'] = 'Français'; + $defaultCountry['fr'] = 'FR'; + + /* Irish */ + $supportedLanguages['ga']['IE']['description'] = 'Gaeilge'; + $defaultCountry['ga'] = 'IE'; + + /* Greek */ + $supportedLanguages['el']['GR']['description'] = 'Greek'; + $defaultCountry['el'] = 'GR'; + + /* Icelandic */ + $supportedLanguages['is']['IS']['description'] = 'Icelandic'; + $defaultCountry['is'] = 'IS'; + + /* Italian */ + $supportedLanguages['it']['IT']['description'] = 'Italiano'; + $defaultCountry['it'] = 'IT'; + + /* Latvian */ + $supportedLanguages['lv']['LV']['description'] = 'Latviešu'; + $defaultCountry['lv'] = 'LV'; + + /* Lithuanian */ + $supportedLanguages['lt']['LT']['description'] = 'Lietuvių'; + $defaultCountry['lt'] = 'LT'; + + /* Hungarian */ + $supportedLanguages['hu']['HU']['description'] = 'Magyar'; + $defaultCountry['hu'] = 'HU'; + + /* Dutch */ + $supportedLanguages['nl']['NL']['description'] = 'Nederlands'; + $defaultCountry['nl'] = 'NL'; + + /* Norwegian */ + $supportedLanguages['no']['NO']['description'] = 'Norsk bokmål'; + $defaultCountry['no'] = 'NO'; + + /* Polish */ + $supportedLanguages['pl']['PL']['description'] = 'Polski'; + $defaultCountry['pl'] = 'PL'; + + /* Portuguese */ + $supportedLanguages['pt']['BR']['description'] = 'Português Brasileiro'; + $supportedLanguages['pt']['PT']['description'] = 'Português'; + $defaultCountry['pt'] = 'BR'; + + /* Romanian */ + $supportedLanguages['ro']['RO']['description'] = 'Română'; + $defaultCountry['ro'] = 'RO'; + + /* Slovak */ + $supportedLanguages['sk']['SK']['description'] = 'Slovenčina'; + $defaultCountry['sk'] = 'SK'; + + /* Slovenian */ + $supportedLanguages['sl']['SI']['description'] = 'Slovenščina'; + $defaultCountry['sl'] = 'SI'; + + /* Serbian */ + $supportedLanguages['sr']['YU']['description'] = 'Srpski'; + $defaultCountry['sr'] = 'YU'; + + /* Finnish */ + $supportedLanguages['fi']['FI']['description'] = 'Suomi'; + $defaultCountry['fi'] = 'FI'; + + /* Swedish */ + $supportedLanguages['sv']['SE']['description'] = 'Svenska'; + $defaultCountry['sv'] = 'SE'; + + /* Thai */ + $supportedLanguages['th']['TH']['description'] = 'Thai'; + $defaultCountry['th'] = 'TH'; + + /* Ukrainian */ + $supportedLanguages['uk']['UA']['description'] = 'Українська'; + $defaultCountry['uk'] = 'UA'; + + /* Vietnamese */ + $supportedLanguages['vi']['VN']['description'] = 'Tiếng Việt'; + $defaultCountry['vi'] = 'VN'; + + /* Turkish */ + $supportedLanguages['tr']['TR']['description'] = 'Türkçe'; + $defaultCountry['tr'] = 'TR'; + + /* Bulgarian */ + $supportedLanguages['bg']['BG']['description'] = + 'Български'; + $defaultCountry['bg'] = 'BG'; + + /* Russian */ + $supportedLanguages['ru']['RU']['description'] = + 'Русский'; + $defaultCountry['ru'] = 'RU'; + + /* Chinese */ + $supportedLanguages['zh']['CN']['description'] = '简体中文'; + $supportedLanguages['zh']['TW']['description'] = '繁體中文'; + $defaultCountry['zh'] = 'CN'; + + /* Korean */ + $supportedLanguages['ko']['KR']['description'] = '한국말'; + $defaultCountry['ko'] = 'KR'; + + /* Japanese */ + $supportedLanguages['ja']['JP']['description'] = '日本語'; + $defaultCountry['ja'] = 'JP'; + + /* Arabic */ + $supportedLanguages['ar']['SA']['description'] = + 'العربية'; + $supportedLanguages['ar']['SA']['right-to-left'] = true; + $defaultCountry['ar'] = 'SA'; + + /* Hebrew */ + $supportedLanguages['he']['IL']['description'] = 'עברית'; + $supportedLanguages['he']['IL']['right-to-left'] = true; + $defaultCountry['he'] = 'IL'; + + /* Farsi */ + $supportedLanguages['fa']['IR']['description'] = 'فارسي'; + $supportedLanguages['fa']['IR']['right-to-left'] = true; + $defaultCountry['fa'] = 'IR'; + } + + return array($supportedLanguages, $defaultCountry); + } + + /** + * Return the list of languages that we support. + * + * @return array['language code']['country code'] = + * array('description', 'right-to-left'?) + */ + function getSupportedLanguages() { + /* Get our language data */ + list ($supportedLanguages, $defaultCountry) = GalleryTranslator::getLanguageData(); + return $supportedLanguages; + } + + /** + * Initialize the translator with the specified language code hint + * + * @param string $languageCode the language code hint (eg. 'en_US' or 'zh_CN') + * @param boolean $dontUseDatabase (optional) true if we should not use the database + * @return array object GalleryStatus a status code + * string language code + */ + function init($languageCode=null, $dontUseDatabase=false) { + if (empty($languageCode) && !$dontUseDatabase) { + list ($ret, $languageCode) = GalleryTranslator::getDefaultLanguageCode(); + if ($ret) { + return array($ret, null); + } + } + + list ($languageCode, $data) = GalleryTranslator::getSupportedLanguageCode($languageCode); + + /* If we're using gettext, try to bind to a language */ + if (function_exists('dgettext')) { + $this->_isRightToLeft = isset($data['right-to-left']); + /* Some systems only require LANG, some (like Mandrake) seem to require LANGUAGE also */ + putenv("LANG=${languageCode}"); + putenv("LANGUAGE=${languageCode}"); + + GalleryTranslator::_setlocale(LC_ALL, $languageCode); + } + + $this->_languageCode = $languageCode; + return array(null, $languageCode); + } + + /** + * Attempt to set the requested locale. Try fallbacks and character sets if needed to find a + * valid locale. + * + * @param mixed $category + * @param string $locale + * @return string locale selected or boolean false if none + * @static + * @access private + */ + function _setlocale($category, $locale) { + global $gallery; + + if (($ret = setlocale($category, $locale)) !== false) { + return $ret; + } + /* Try just selecting the language */ + if (($i = strpos($locale, '_')) !== false + && ($ret = setlocale($category, substr($locale, 0, $i))) !== false) { + return $ret; + } + /* + * Try appending some character set names; some systems (like FreeBSD) need this. Some + * require a format with hyphen (eg. Gentoo) and others without (eg. FreeBSD). + */ + foreach (array('UTF-8', 'UTF8', 'utf8', + 'ISO8859-1', 'ISO8859-2', 'ISO8859-5', 'ISO8859-7', 'ISO8859-9', + 'ISO-8859-1', 'ISO-8859-2', 'ISO-8859-5', 'ISO-8859-7', 'ISO-8859-9', + 'EUC', 'Big5') as $charset) { + if (($ret = setlocale($category, $locale . '.' . $charset)) !== false) { + return $ret; + } + } + /* For Norwegian try nb language code in addition to no */ + if (substr($locale, 0, 2) == 'no') { + return GalleryTranslator::_setlocale($category, 'nb' . substr($locale, 2)); + } + $gallery->debug("Warning: Unable to select locale $locale"); + return false; + } + + /** + * Get default language code for this request. + * + * @return array object GalleryStatus a status code + * string language code + * @static + */ + function getDefaultLanguageCode() { + list ($ret, $useBrowserPref) = + GalleryCoreApi::getPluginParameter('module', 'core', 'language.useBrowserPref'); + if ($ret) { + return array($ret, null); + } + + if ($useBrowserPref) { + /* Check the user-agent's preferences */ + $languageCode = GalleryTranslator::getLanguageCodeFromRequest(); + } + + if (empty($languageCode)) { + /* Use the site-wide default language */ + list ($ret, $languageCode) = + GalleryCoreApi::getPluginParameter('module', 'core', 'default.language'); + if ($ret) { + return array($ret, null); + } + } + + return array(null, $languageCode); + } + + /** + * Find a supported locale from given string. + * + * @param string $languageCode the language code hint + * @param boolean $fallback (optional) if false, return array(null,null) for no match + * instead of en_US + * @return array (string a language code in _ format, + * array data about this language code (description,right-to-left?)) + * @static + */ + function getSupportedLanguageCode($languageCode, $fallback=true) { + static $supportedLanguages; + static $defaultCountry; + if (!isset($supportedLanguages)) { + list ($supportedLanguages, $defaultCountry) = GalleryTranslator::getLanguageData(); + } + + list ($language, $country) = preg_split('/[-_]/', "${languageCode}_"); + $country = strtoupper($country); + if ((empty($country) || !isset($supportedLanguages[$language][$country])) + && isset($defaultCountry[$language])) { + /* Use default country if none specified or particular country not supported */ + $country = $defaultCountry[$language]; + } + if (isset($supportedLanguages[$language][$country])) { + return array("${language}_${country}", $supportedLanguages[$language][$country]); + } + + if ($fallback) { + return array('en_US', $supportedLanguages['en']['US']); + } else { + return array(null, null); + } + } + + /** + * Examine the incoming request and try to figure out what languages the browser will accept. + * Take the first one that we can support. + * + * @return null or a language code in the _ format, eg: en_US + * @static + */ + function getLanguageCodeFromRequest() { + /* Take the first thing the browser accepts that we can use */ + $httpAcceptLanguage = GalleryUtilities::getServerVar('HTTP_ACCEPT_LANGUAGE'); + if (!empty($httpAcceptLanguage)) { + foreach (explode(',', $httpAcceptLanguage) as $code) { + list ($languageCode) = GalleryTranslator::getSupportedLanguageCode($code, false); + if (isset($languageCode)) { + return $languageCode; + } + } + } + + return null; + } + + /** + * Localize the given text. + * Expected inputs are of the form: + * + * Example 1: + * $data['text'] = 'Some %s text to localize with %d arguments' + * $data['arg1'] = 'fun'; + * $data['arg2'] = 2; or $data['args'] = array('fun', 2); + * + * localized: 'Some text to localize with 5 arguments' + * + * Example 2: + * $data['one'] = 'You have %d orange' + * $data['many'] = 'You have %d oranges' + * $data['count'] = $data['arg1'] = 3; (or 1) + * + * localized: 'You have 3 oranges' (or 'You have 1 orange') + * + * @param string $domain the domain (eg. pluginType . 's_' . pluginId) + * @param mixed $data a single string, or an array of parameters + * @return array object GalleryStatus a status code + * string the localized value + */ + function translateDomain($domain, $data) { + global $gallery; + if (!is_array($data)) { + $data = array('text' => $data); + } + + /* Validate our parameters */ + if (!(isset($data['text']) + || (isset($data['one']) && isset($data['many']) && isset($data['count'])))) { + return array(GalleryCoreApi::error(ERROR_BAD_PARAMETER), null); + } + + if (function_exists('dgettext') && $this->_languageCode != 'en_US') { + if (isset($domain) && !isset($this->_boundDomains[$domain])) { + $platform =& $gallery->getPlatform(); + list ($componentType, $componentName) = split('_', $domain); + $basePath = sprintf('%s/%s/%s/locale', + $platform->realpath(dirname(__FILE__) . '/../../..'), + $componentType, $componentName); + if ($gallery->getDebug()) { + $gallery->debug("Binding text domain: $domain -> $basePath"); + } + bindtextdomain($domain, $basePath); + textdomain($domain); + if (function_exists('bind_textdomain_codeset')) { + bind_textdomain_codeset($domain, 'UTF-8'); + } + $this->_boundDomains[$domain] = $basePath; + } + + /* + * We have to have dngettext (which is only available > PHP 4.2.0, according to the PHP + * manual) in order to do pluralization translations. If we don't have have dngettext() + * we try to gracefully degrade to using dgettext(). + */ + if (isset($data['one'])) { + if (function_exists('dngettext')) { + $localized = dngettext($domain, $data['one'], $data['many'], $data['count']); + } else { + /* + * It would make more sense to fall back to $data['many'] here, since the odds + * are better that it will be more applicable. However, due to the way that we + * do the pluralization, the keys will be organized by the $data['one'] entry so + * there won't be a $data['many'] key for dgettext() to use. :-( + */ + $localized = dgettext($domain, $data['one']); + } + } else { + $localized = dgettext($domain, $data['text']); + } + } else { + /* en_US is selected or the server doesn't have gettext */ + if (isset($data['text'])) { + $localized = $data['text']; + } else if ($data['count'] == 1) { + $localized = $data['one']; + } else { + $localized = $data['many']; + } + /* Strip out comment text used to assist translators */ + if (substr($localized, -3) == '-->' && $i = strpos($localized, ' " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lys" + +msgid "bullet" +msgstr "opsommingsteken" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "beeld" + +#, fuzzy +msgid "color" +msgstr "core" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "Konfigurasiefout: Vermiste Tema" + +msgid "Missing Theme" +msgstr "Vermiste Tema" + +#, fuzzy, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Die album is ingestel om gebruik te maak van die %s tema, maar dit is óf nie aktief " +"nie, óf nie geïnstalleer nie." + +#, fuzzy, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Die album is ingestel om gebruik te maak van die %s tema, maar dit is óf nie aktief " +"nie, óf nie geïnstalleer nie." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Om die probleem reg te stel kan u %sdie tema installeer of aktiveer%s of een ander standaard " +"tema selekteer." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Om die probleem reg te stel kan u %sas werfadministrateur inteken%s en daarna %sdie tema " +"installeer of aktiveer%s of 'n ander standaardtema te selekteer." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Om die probleem reg te stel kan u %s'n nuwe tema vir die album kies%s of %sdie tema " +"installeer of aktiveer%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Om die probleem reg te stel kan u of %s'n nuwe tema vir die album kies%s of %sas " +"werfadministrateur inteken%s en daarna %sdie tema installeer of aktiveer%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Om die probleem reg te stel kan u of %sinteken%s en daarna %s 'n nuwe tema vir die album kies" +"%s of %sas werfadministrateur inteken%s en daarna %sdie tema installeer of aktiveer%s." + +msgid "Admin Options" +msgstr "Admin Opsies" + +msgid "User Options" +msgstr "Gebruikerverstellings" + +msgid "Password changed successfully" +msgstr "Wagwoord is suksesvol aangepas" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"U moet u huidige wagwoord invoer om te bewys dat u is wie u beweer om te wees. Verskaf dan " +"die nuwe wagwoord twee maal om te voorkom dat u nie 'n fout gemaak het nie." + +msgid "Current Password" +msgstr "Huidige Wagwoord" + +msgid "You must enter your current password" +msgstr "U moet u huidige wagwoord verskaf" + +msgid "Incorrect password" +msgstr "Verkeerde wagwoord" + +msgid "New Password" +msgstr "Nuwe Wagwoord" + +msgid "You must enter a new password" +msgstr "U moet 'n nuwe wagwoord verskaf" + +msgid "Verify New Password" +msgstr "Bevestig Nuwe Wagwoord" + +msgid "You must enter your new password again!" +msgstr "U moet u nuwe wagwoord weereens insleutel!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "Teken in op u gebruikersnaam" + +msgid "Your password has been recovered, please login." +msgstr "U wagwoord is nuut ingestel, u kan nou inteken." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "U inligting waarmee u probeer inteken is foutief. Probeer weereens. " + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Verlore of vergete wagwoorde kan ontvang word deur gebruik te maak van die vergete wagwoordblad" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "Rekeningverstellings is suksesvol gestoor" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "U moet 'n epos adres verskaf" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "U moet u huidige wagwoord verskaf" + +msgid "Recover a lost or forgotten password" +msgstr "Aanvra van 'n verlore of vergete wagwoord" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Om u wagwoord van nuuts af op te stel word daar vereis dat u gebruikersrekening 'n epos-" +"adres daaraan toegewys het en dat u toegang tot hierdie epos-adres het. 'n Bevestiging sal " +"aan u gepos word wat 'n URL skakel bevat wat u moet besoek om 'n nuwe wagwoord vir u " +"rekening op te stel. Om misbruik te voorkom kan wagwoordhernuwings nie meer dikwels as elke " +"20 minute aangevra word nie. 'n Hernuwingsversoek is vir sewe dae geldig. As dit nie " +"gedurende hierdie tyd gebruik word nie sal dit deur die stelsel uitgevee word en moet 'n " +"nuwe versoek ingedien word." + +msgid "Your recovery request has been sent!" +msgstr "U hernuwingsversoek is gestuur!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Let daarop dat as die rekening geen epos-adres het nie, kan u die epos nie ontvang nie en " +"moet u met u stelseladministrateur in verbinding tree vir hulp." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Administrateurs kan die %sNoodHerstelblad%s gebruik om die administrateur se rekening te " +"herstel as hy geen herstel epos kan ontvang nie vanweë bedienerprobleme of 'n ongeldige " +"epos-adres." + +msgid "Recover" +msgstr "Herstel" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Om voort te gaan met die herstel van u wagwoord moet ons eers bevestig dat u wel is wie u " +"beweer om te wees. Die beste manier om hiervan seker te wees is deur u te vra om 'n klein " +"verandering in die Gallery directory te maak, waardeur u dan bewys dat u oor voldoende regte " +"beskik. Daarom gaan ons u vra om 'n nuwe tekslêer genaamd login.txt " +"te skep in die %s directory op u werfbediener (dit is dieselfde directory waar u " +"installasie hom bevind). Die lêer moet die volgende lukraak gegenereerde karakters " +"bevat:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Vir u gemak het ons 'n %skorrekte weergawe van login.txt%s vir u voorberei. Laai dit af en " +"kopiëer dit na u install directory en dan is u klaar." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "As u die lêer opgelaai het, kliek op herstel om verder te gaan." + +msgid "Emergency Administrator Password Reset" +msgstr "Administrateur Wagwoord NoodHerstel" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Hierdie blad kan deur 'n stelseladministrateur gebruik word om die wagwoord van enige " +"rekening veilig te herstel." + +msgid "Authorization Confirmed" +msgstr "Regte Bevestig" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"U regte is bevestig. Verskaf 'n nuwe wagwoord hieronder. Nadat u nuwe wagwoord opgestel is " +"sal u na die intekenblad geneem word." + +msgid "Recover Password for Username" +msgstr "Herstel Wagwoord vir Gebruikersnaam" + +msgid "You must enter a username to recover the password for." +msgstr "U moet 'n gebruikersnaam verskaf om die wagwoord te herstel." + +msgid "The username you entered does not exist." +msgstr "Die verskafde gebruikersnaam bestaan nie." + +msgid "Authorization Incorrect" +msgstr "Onvoldoende Regte" + +msgid "Recovery Instructions" +msgstr "Herstel Aanwysings" + +msgid "AuthFile Missing" +msgstr "AuthLêer Ontbreek" + +msgid "AuthFile Unreadable" +msgstr "AuthLêer Onleesbaar" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"U %s lêer is nie leesbaar nie. Verskaf assblief aan Gallery leesregte op hierdie " +"lêer." + +msgid "Refresh" +msgstr "Herlaai" + +msgid "This page will allow you to reset the password on your account." +msgstr "Hierdie blad sal ut toelaat om die wagwoord op u rekening te herstel." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Daar is geen versoek wat ooreenkom met die verskafde gebruikernaam en regte nie. Dien 'n " +"nuwe versoek om regte by die vergete wagwoordblad in." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Die versoek waartoe u toegang probeer verkry het verstryk. Dien weer 'n versoek om regte in " +"by die vergete wagwoordblad." + +msgid "Authorization missing" +msgstr "Regte ontbreek" + +msgid "Username missing" +msgstr "Gebruikersnaam ontbreek" + +msgid "Submit" +msgstr "Stuur" + +#, c-format +msgid "Hello %s," +msgstr "Hallo %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"U ontvang hierdie epos om dat 'n versoek ingedien is vir die herstel van 'n wagwoord vir %s " +"deur %s op %s" + +#, c-format +msgid "Your username is: %s" +msgstr "U gebruikersnaam is: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Om wagwoord herstelproses af te handel, kliek op die volgende skakel en verskaf die vereiste " +"inligting:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" +"As u hierdie epos vir die herstel van u wagwoord nie aangevra het nie, kan u dit met " +"veiligheid ignoreer." + +msgid "Thank you!" +msgstr "Dankie!" + +msgid "guest" +msgstr "gas" + +#, c-format +msgid "display mode: %s" +msgstr "Vertoningmodus: %s" + +#, c-format +msgid "Date: %s" +msgstr "Datum: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Eienaar: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Grootte: %d item" +msgstr[1] "Grootte: %d items" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d item totaal)" +msgstr[1] "(%d items totaal)" + +#, c-format +msgid "Views: %d" +msgstr "Besigtigings: %d" + +msgid "« album actions »" +msgstr "« album aksies »" + +msgid "« item actions »" +msgstr "« item aksies »" + +msgid "Go" +msgstr "Gaan" + +msgid "Navigation" +msgstr "Navigasie" + +msgid "next" +msgstr "volgende" + +msgid "last" +msgstr "laaste" + +#, c-format +msgid "Page %d of %d" +msgstr "Bladsy %d van %d" + +#, c-format +msgid "%d of %d" +msgstr "%d van %d" + +msgid "first" +msgstr "eerste" + +msgid "previous" +msgstr "vorige" + +msgid "Page:" +msgstr "Bladsy:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Grootte: " + +msgid "Unknown" +msgstr "Onbekend" + +msgid "Full size: " +msgstr "Volgrootte: " + +msgid "Setting" +msgstr "Verstelling" + +msgid "Use Global" +msgstr "Gebruik algemene instelling" + +msgid "Language selector" +msgstr "Taalkieser" + +msgid "Item actions" +msgstr "Item aksies" + +msgid "Use dropdown menu" +msgstr "Gebruik keuselys" + +msgid "Login block" +msgstr "Intekenblok" + +msgid "Links to album/photo peers" +msgstr "Skakel na album/foto op gelyke vlak" diff --git a/Source/gallery2/modules/core/po/ar.po b/Source/gallery2/modules/core/po/ar.po new file mode 100644 index 0000000..51eac73 --- /dev/null +++ b/Source/gallery2/modules/core/po/ar.po @@ -0,0 +1,3608 @@ +# $Id: ar.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 15:34+0100\n" +"Last-Translator: Mohammad Saleh \n" +"Language-Team: Arabic \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +msgid "Gallery Email Test" +msgstr "تجربة البريد الإلكتروني للجاليري" + +msgid "forever" +msgstr "إلى الأبد" + +msgid "High Priority (Me first!)" +msgstr "" + +msgid "Low Priority (I want to share!)" +msgstr "" + +msgid "No Markup" +msgstr "غير محدد" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML أصلي" + +msgid "Database" +msgstr "قاعدة البيانات" + +msgid "File" +msgstr "ملف" + +#, fuzzy, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d دقيقة" +msgstr[1] "" + +#, fuzzy, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ساعة" +msgstr[1] "" + +#, fuzzy, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d يوم" +msgstr[1] "" + +#, fuzzy, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d أسبوع" +msgstr[1] "" + +msgid "" +msgstr "<لا يوجد>" + +msgid "No acceleration" +msgstr "" + +msgid "Partial acceleration" +msgstr "" + +msgid "Full acceleration" +msgstr "" + +msgid "Themes" +msgstr "الثيمات" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "موديولات الجاليري" + +#, fuzzy +msgid "Done." +msgstr "تم" + +msgid "Updating Packages" +msgstr "" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "يتم التنفيذ....." + +#, c-format +msgid "Downloading %s" +msgstr "" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "عمليات" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "اللغة الأساسية" + +#, fuzzy +msgid "Update completed with errors." +msgstr "تم إكمال رفع الملفات" + +#, fuzzy +msgid "Update complete." +msgstr "تم إكمال رفع الملفات" + +msgid "install" +msgstr "تحميل" + +msgid "upgrade" +msgstr "ترقية" + +msgid "activate" +msgstr "تنشيط" + +msgid "uninstall" +msgstr "حذف" + +msgid "deactivate" +msgstr "إغلاق(غير منشط)" + +msgid "Inherit settings from parent album" +msgstr "إستخدام نفس إعدادات الألبوم الرئيسي" + +msgid "Use these settings" +msgstr "إستخدم هذه الأعدادات" + +#, fuzzy +msgid "Installing the core module" +msgstr "موديول البينة الرئيسية للجاليري" + +msgid "key" +msgstr "مفتاح" + +msgid "All access" +msgstr "جميع الصلاحيات" + +msgid "[core] View item" +msgstr "[البنية الرئيسية] عرض المادة" + +msgid "[core] View resized version(s)" +msgstr "[البنية الرئيسية] عرض النسخ المعدلة الأخرى" + +msgid "[core] View original version" +msgstr "[البنية الرئيسية] عرض النسخة الأصلية" + +msgid "[core] View all versions" +msgstr "[البنية الرئيسية] عرض جميع النسخ" + +msgid "[core] Add sub-album" +msgstr "[البنية الرئيسية] إضافة ألبوم فرعي" + +msgid "[core] Add sub-item" +msgstr "[البنية الرئيسية] إضافة مادة فرعية" + +msgid "[core] Edit item" +msgstr "[البنية الرئيسية] تعديل المادة" + +msgid "[core] Change item permissions" +msgstr "[البنية الرئيسية] تغيير صلاحيات المادة" + +msgid "[core] Delete item" +msgstr "[البنية الرئيسية] حذف المادة" + +msgid "Upgrading permissions" +msgstr "صلاحيات الترقية" + +msgid "Deleting old permission tables" +msgstr "حذف جداول الصلاحيات القديمة" + +msgid "Registered Users" +msgstr "المستخدمين المسجلين" + +msgid "All Users" +msgstr "جميع المستخدمين" + +msgid "Detecting broken derivatives" +msgstr "" + +msgid "Clearing fast-download cache" +msgstr "" + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "حذف جداول الصلاحيات القديمة" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "مدراء الموقع" + +msgid "Everybody" +msgstr "الجميع" + +msgid "Guest" +msgstr "زائر" + +msgid "Gallery" +msgstr "الجاليري" + +msgid "This is the main page of your Gallery" +msgstr "هذه هي الصفحة الرئيسية لألبومك" + +msgid "Converting MySQL data to UTF8" +msgstr "" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" + +#, fuzzy, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "حذف جداول الصلاحيات القديمة" + +msgid "add items" +msgstr "إضافة مواد" + +msgid "Album created successfully." +msgstr "تم انشاء الألبوم بنجاح" + +msgid "add sub-album" +msgstr "إضافة ألبوم فرعي" + +msgid "add items confirmation" +msgstr "تاكيد إضافة مواد" + +msgid "Base filename" +msgstr "قاعدة أسم الملف" + +msgid "Caption" +msgstr "العنوان" + +msgid "Blank" +msgstr "فارغ" + +msgid "From Web Browser" +msgstr "من متصفح الإنترنت" + +#, fuzzy, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d ميغا بايت" +msgstr[1] "" + +#, fuzzy, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d كيلو بايت" +msgstr[1] "" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "إدارة مادة جاليري" + +msgid "delete an item" +msgstr "حذف المادة" + +msgid "delete confirmation" +msgstr "تأكيد الحذف" + +#, c-format +msgid "delete %s" +msgstr "حذف %s" + +#, c-format +msgid "edit %s" +msgstr "تعديل %s" + +msgid "Settings saved successfully." +msgstr "تم حفظ الخيارات بنجاح." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "تم إستعادة إعدادات الثيم" + +#, fuzzy +msgid "Preparing..." +msgstr "يتم التنفيذ....." + +msgid "Apply thumbnail settings" +msgstr "" + +#, fuzzy +msgid "Rebuilding thumbnails..." +msgstr "إعادة إنشاء الصور المصغرة" + +msgid "Album" +msgstr "ألبوم" + +#, c-format +msgid "Processing image %d of %d" +msgstr "معالجة الصورة %d من %d" + +msgid "Changes saved successfully" +msgstr "التغييرات تم حفظها بنجاح" + +msgid "Animation Size" +msgstr "حجم العرض" + +msgid "edit captions" +msgstr "تعديل الشرح" + +msgid "General" +msgstr "عام" + +msgid "Movie Size" +msgstr "حجم الفلم" + +msgid "Photo" +msgstr "صورة" + +msgid "Thumbnail cropped successfully" +msgstr "تم تحديد جزء من الصورة المصغرة بنجاح" + +msgid "Thumbnail reset successfully" +msgstr "تم إعادة تعيين الصورة المصغرة بنجاح" + +msgid "Photo 5x3" +msgstr "صورة مقاس(5x3)" + +msgid "Photo 6x4" +msgstr "صورة مقاس (6x4)" + +msgid "Photo 7x5" +msgstr "صورة مقاس(7x5)" + +msgid "Photo 10x8" +msgstr "صورة مقاس(10x8)" + +msgid "Fullscreen 4x3" +msgstr "ملء الشاشة بنسبة(4x3)" + +msgid "Widescreen 16x9" +msgstr "صورة عريضة بنسبة (16x9)" + +msgid "CinemaScope 2.35x1" +msgstr "عرض سينمائي بنسبة(2.35x1)" + +msgid "Square 1x1" +msgstr "عرض مربع بنسبة(1x1)" + +msgid "As Image" +msgstr "كصورة" + +msgid "Landscape" +msgstr "صوره العرض" + +msgid "Portrait" +msgstr "صورة محسنة" + +msgid "Crop Thumbnail" +msgstr "قطع الصورة المصغرة" + +msgid "Reverted rotate and scale changes successfully" +msgstr "" + +msgid "Rotated photo successfully" +msgstr "تم تدوير الصورة بنجاح" + +msgid "Scaled photo successfully" +msgstr "تم ضبط المقاسات للصورة بنجاح" + +msgid "Modify Photo" +msgstr "تعديل صورة" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "تم تنشيط الثيم %s بنجاح" + +msgid "« default theme »" +msgstr "« القالب الافتراضي »" + +msgid "Theme" +msgstr "ثيم" + +msgid "make highlight" +msgstr "" + +msgid "move item" +msgstr "نقل مادة" + +#, c-format +msgid "move %s" +msgstr "نقل %s" + +#, c-format +msgid "edit %s permissions" +msgstr "تعديل صلاحيات %s" + +msgid "reorder items" +msgstr "إعادة ترتيب المواد" + +msgid "Maintenance" +msgstr "الصيانة" + +msgid "Gallery Site Administration" +msgstr "إدارة الموقع للجاليري" + +msgid "site admin" +msgstr "مدير الموقع" + +msgid "Gallery User Administration" +msgstr "إدارة مستخدمي الجاليري" + +msgid "change password" +msgstr "تغيير كلمة المرور" + +msgid "your account" +msgstr "حسابك الشخصي" + +msgid "Password Recovery" +msgstr "إسترداد كلمة المرور" + +msgid "Core" +msgstr "البنية الرئيسية" + +msgid "Gallery 2 Core Module" +msgstr "الموديول الرئيسي للجاليري 2" + +msgid "Add Items" +msgstr "أضف مواد" + +msgid "Edit Album" +msgstr "تعديل ألبوم" + +msgid "Edit Photo" +msgstr "تعديل صورة" + +msgid "Edit Movie" +msgstr "تعديل فلم" + +msgid "Add Album" +msgstr "أضف ألبوم" + +msgid "Edit Permissions" +msgstr "تعديل الصلاحيات" + +msgid "View Permissions" +msgstr "عرض الصلاحيات" + +msgid "Delete Album" +msgstr "حذف ألبوم" + +msgid "Delete Photo" +msgstr "حذف صورة" + +msgid "Delete Movie" +msgstr "حذف فلم" + +msgid "Move Album" +msgstr "نقل الألبوم" + +msgid "Move Photo" +msgstr "نقل الصورة" + +msgid "Move Movie" +msgstr "نقل الفلم" + +msgid "Edit Captions" +msgstr "تعديل العناوبن" + +msgid "Make Highlight" +msgstr "" + +msgid "Reorder Items" +msgstr "إعادة ترتيب المواد" + +msgid "Site Admin" +msgstr "إدارة الموقع" + +msgid "Login" +msgstr "دخول" + +msgid "Your Account" +msgstr "حسابك الشخصي" + +msgid "Logout" +msgstr "خروج" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "مستخدون" + +msgid "Groups" +msgstr "مجموعات" + +msgid "Performance" +msgstr "" + +msgid "Toolkit Priority" +msgstr "" + +msgid "Graphics Toolkits" +msgstr "" + +msgid "Account Settings" +msgstr "إعدادات الحساب الشخصي" + +msgid "Change Password" +msgstr "تغيير كلمة المرور" + +#, c-format +msgid "Edit %s" +msgstr "تعديل %s" + +#, c-format +msgid "Delete %s" +msgstr "حذف %s" + +#, c-format +msgid "Move %s" +msgstr "نقل %s" + +msgid "Build all thumbnails/resizes" +msgstr "بناء جميع الصور المصغرة / تعديل الحجم" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" + +msgid "Build All Thumbnails/Resizes" +msgstr "بناء جميع الصور المصغرة / تعديل الحجم" + +msgid "Debug output for failed items:" +msgstr "" + +#, c-format +msgid "Checked %d items" +msgstr "تم إختيار %d مادة" + +#, c-format +msgid "%d items built" +msgstr "تم إنشاء %d مادة" + +#, c-format +msgid "%d items failed" +msgstr "%d مادة فشلت" + +msgid "Convert MySQL database to UTF8" +msgstr "" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "تم حذف المادة بنجاح" + +msgid "No conversion required" +msgstr "" + +#, fuzzy +msgid "Delete user sessions" +msgstr "صلاحيات ملفات النظام" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "صلاحيات ملفات النظام" + +msgid "Delete database cache" +msgstr "حذف الكاش لقاعدة البينات" + +#, fuzzy +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"الجاليري يقوم بتخزين أكثر المعلومات المستخدمة من قاعدة البيانات على القرص الصلب لتحسين أداء " +"الجاليري. إذا قمت بتعديل قاعدة البيانات مباشرة , يجب عليك تشغيل هذه المهمة لمسح الملفات " +"المؤقتة و إجبار الجاليري على قراءة المعلومات من قاعدة البيانات." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "تم حذف المجلد :%s بنجاح" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "غير قادر على حذف المجلد : %s" + +msgid "Delete template cache" +msgstr "حذف الكاش للتمبليت" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"يقوم الجاليري بقراءة ملفات التمبلت و من ثم حفظها لرفع الأداء . إذا واجهتك مشكله تقول " +"Smarty error يمكنك محاولة تشغيل هذه المهمة لحلها. كذلك قم بتشغيل هذه المهمة عند حذفك " +"ملف local/*.tpl ليتمكن (سمارتي) من الرجوع إلى ملف الtpl الأصلي." + +msgid "Template cache deleted successfully" +msgstr "تم حذف الملفات المؤقتة للتمبلت بنجاح" + +msgid "album" +msgstr "ألبوم" + +msgid "Animation" +msgstr "أنيميشن" + +msgid "animation" +msgstr "أنيميشن" + +msgid "Gallery Core" +msgstr "البنية الرئيسية للجاليري" + +msgid "Gallery Core Module" +msgstr "موديول البينة الرئيسية للجاليري" + +msgid "Search descriptions" +msgstr "البحث من خلال الوصف" + +msgid "Search keywords" +msgstr "البحث من خلال مفاتيح البحث" + +msgid "Search summaries" +msgstr "البحث من خلال الملخصات" + +msgid "Search titles" +msgstr "البحث من خلال العناوين" + +msgid "Description" +msgstr "الوصف" + +msgid "Keywords" +msgstr "مفاتيح البحث" + +msgid "Summary" +msgstr "الملخص" + +msgid "Title" +msgstr "العنوان" + +msgid "Owner" +msgstr "المالك" + +#, fuzzy +msgid "Dynamic Album" +msgstr "تعديل ألبوم" + +#, fuzzy +msgid "dynamic album" +msgstr "تعديل ألبوم" + +msgid "Group" +msgstr "مجموعة" + +msgid "group" +msgstr "مجموعة" + +msgid "Other" +msgstr "أخرى" + +msgid "Movie" +msgstr " مقطع فيديو" + +msgid "movie" +msgstr "مقطع فيديو" + +msgid "photo" +msgstr "صورة" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +msgid "Experimental Repository" +msgstr "" + +msgid "Community Repository" +msgstr "" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "" + +msgid "Index integrity check failed." +msgstr "" + +msgid "« default sort order »" +msgstr "« الترتيب الإفتراضي »" + +msgid "Manual sort order" +msgstr "طلب الترتيب يدوياً" + +msgid "Origination Date" +msgstr "التاريخ الأصلي" + +msgid "Creation Date" +msgstr "تاريخ الإنشاء" + +msgid "Last Changed Date" +msgstr "تاريخ آخر تعديل" + +msgid "Name" +msgstr "الاسم" + +msgid "View Count" +msgstr "عرض العداد" + +msgid "Random" +msgstr "عشوائي" + +msgid "« no presort »" +msgstr "« الترتيب غير معرف »" + +msgid "Albums First" +msgstr "الألبومات في البداية" + +msgid "Most Viewed First" +msgstr "أكثر المشاهدات أولاً" + +msgid "Ascending" +msgstr "تصاعدي" + +msgid "Descending" +msgstr "تنازلي" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +msgid "This page is valid XHTML 1.0" +msgstr "هذه الصفحة مطابقة لـ XHTML 1.0" + +#, fuzzy +msgid "Donate to the Gallery project" +msgstr "العودة إلى الجاليري" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "تقدير الوقت المتبقي : %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "" + +msgid "Rows per album page" +msgstr "عدد الصفوف لصفحة الألبوم" + +msgid "Columns per album page" +msgstr "عدد الأعمدة لكل صفحة ألبوم" + +msgid "Number of items to show per page" +msgstr "عدد المواد التي يمكن عرضها لكل صفحة" + +msgid "Row height (pixels)" +msgstr "" + +msgid "Column width (pixels)" +msgstr "" + +msgid "Show image owners" +msgstr "عرض مالكو الصورة" + +msgid "Show album owners" +msgstr "عرض مالكو الألبوم" + +msgid "Show micro navigation thumbnails" +msgstr "" + +msgid "Blocks to show in the sidebar" +msgstr "" + +msgid "Blocks to show on album pages" +msgstr "" + +msgid "Blocks to show on photo pages" +msgstr "" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "تعديل ألبوم" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "عرض عينات" + +msgid "Album Frame" +msgstr "إطار الألبوم" + +msgid "Item Frame" +msgstr "إطار المادة" + +msgid "Photo Frame" +msgstr "إطار الصورة" + +msgid "Color Pack" +msgstr "" + +msgid "You must enter a number greater than 0" +msgstr "يجب إدخال الرقم أكبر من الصفر" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "ملف صوتي" + +msgid "audio" +msgstr "صوت" + +msgid "Archive" +msgstr "أرشيف" + +msgid "archive" +msgstr "أرشيف" + +msgid "Document" +msgstr "ملف" + +msgid "document" +msgstr "ملف" + +msgid "Spreadsheet" +msgstr "جدول حسابات" + +msgid "spreadsheet" +msgstr "جدول حسابي" + +#, fuzzy +msgid "file" +msgstr "ملف" + +msgid "Back" +msgstr "العودة" + +#, c-format +msgid "Back to %s" +msgstr "العودة إلى %s" + +msgid "User" +msgstr "المستخدم" + +msgid "user" +msgstr "مستخدم" + +msgid "Optimize database" +msgstr "تحسين أداء قاعدة البيانات" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"لتحسين أداء قاعدة بيناتك. النتيجة تعتمد بشكل كبير على نوع قاعدة البيانات اللتي تستخدمها. لكن " +"تكرار عملية الصيانة سوف يحسن من أداء الجاليري. خاصة بعد إضافة أو حذف عدد من المواد." + +msgid "Database optimized successfully" +msgstr "تم تحسين قاعدة البيانات بنجاح" + +msgid "Reset view counts" +msgstr "إعادة تعيين عدد المشاهدات" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"إعادة عدد المشاهدات لجميع الألبومات و المواد إلى صفر. هذه العملية سوف تقوم بحذف الملفات " +"المؤقتة لقاعدة البيانات كذلك" + +msgid "View counts reset successfully" +msgstr "تم إعادة تعيين عدد المشاهدات بنجاح." + +msgid "Refresh capture dates" +msgstr "تنشيط التواريخ المحددة" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"تحديث البيانات الموجودة في الجاليري لجميع المواد بالبيانات المتوفرة داخل الملفات الأصلية " +"(غالباً عن طريق معلومات Exif)." + +msgid "Processing..." +msgstr "يتم التنفيذ....." + +msgid "Refresh Capture Dates" +msgstr "تنشيط التواريخ المحددة" + +#, c-format +msgid "Processing item %d of %d" +msgstr "معالجة المادة %d من %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "تم تحديث %d من %d مادة" + +msgid "System information" +msgstr "معلومات النظام" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "الحصول على معلومات النظام : مفيد لنسخها و لصقها في منتديات الدعم الفني لجاليري 2" + +msgid "core" +msgstr "البنية الرئيسية" + +msgid "unknown" +msgstr "غير معروف" + +msgid "Gallery version" +msgstr "نسخة الجاليري" + +msgid "PHP version" +msgstr "نسخة PHP" + +msgid "Webserver" +msgstr "سيرفر الإنترنت" + +msgid "Toolkits" +msgstr "" + +#, fuzzy +msgid "Acceleration" +msgstr "عملية" + +msgid "Operating system" +msgstr "نظام التشغيل" + +msgid "Default theme" +msgstr "الثيم الأساسي" + +msgid "gettext" +msgstr "" + +#, fuzzy +msgid "enabled" +msgstr "%d مادة فشلت" + +#, fuzzy +msgid "disabled" +msgstr "%d مادة فشلت" + +#, fuzzy +msgid "Locale" +msgstr "تحديد المقاس" + +msgid "Browser" +msgstr "المتصفح" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "تم حفظ إعدادات الواجهة بنجاح" + +msgid "General Settings" +msgstr "الإعدادات الرئيسية" + +msgid "Settings saved successfully" +msgstr "تم حفظ الخيارات بنجاح" + +msgid "Added local upload directory successfully" +msgstr "أضيف مجلد تحميل بنجاح" + +msgid "Removed local upload directory successfully" +msgstr "تم حذف مجلد رفع الملفات المحلي بنجاح" + +msgid "Test email sent successfully" +msgstr "تم إرسال البريد التجريبي بنجاح" + +msgid "There was a problem processing your request, see below for details." +msgstr "" + +msgid "Error sending test email, see below for details." +msgstr "خطأ في تجربة إرسال البريد الإلكتروني ,أنظر أسفل للتفاصيل" + +msgid "Language Settings" +msgstr "إعدادات اللغة" + +#, fuzzy +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"أختر اللغة الأساسية للجاليري. المستخدم بإمكانه تغيير هذه الخاصية من إعدادات ملفه الشخصي له " +"فقط أو من خلال قائمة اللغة إذا تم تفعيلها للمستخدمين من الأسفل." + +msgid "Default language" +msgstr "اللغة الأساسية" + +msgid "Check Browser Preference" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"سيرفرك لا يدعم ال (localization). رجاءاً أخبر مدير النظام ليقوم بإعداة تعيين البي أتش بي و " +"تفعيل خاصية %s." + +#, fuzzy +msgid "Date Formats" +msgstr "التاريخ: %s" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" + +#, fuzzy +msgid "Style" +msgstr "تحديد المقاس" + +msgid "Format" +msgstr "" + +#, fuzzy +msgid "Sample" +msgstr "تحديد المقاس" + +#, fuzzy +msgid "Date" +msgstr "التاريخ :" + +#, fuzzy +msgid "Time" +msgstr "الوقت:" + +#, fuzzy +msgid "Date/Time" +msgstr "%s التاريخ والوقت" + +msgid "Filesystem Permissions" +msgstr "صلاحيات ملفات النظام" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"حدد الصلاحيات الرئيسية لملفات و المجلدات اللتي يقوم الجاليري بإنشائها. هذا لن يتم تحديده على " +"الملفات و المجلدات اللتي قام الجاليري بإنشائها مسبقاً." + +msgid "New directories" +msgstr "مجلدات جديدة" + +msgid "New files" +msgstr "ملفات جديدة" + +msgid "Session Settings" +msgstr "خيارات الجلسة" + +msgid "Session Lifetime" +msgstr "مدة حياة الجلسة" + +msgid "Inactivity Timeout" +msgstr "غير نشط لمدة طويلة" + +msgid "Embedded Markup" +msgstr "" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"أي نوع من التعليمات يجب أن نسمح بها للمستخدمين؟لأسباب أمنية لا نفضل السماح ب HTML. BBCode هو " +"نوع من التعليمات الآمنة لإستخدامها كالخط العريض و المائل و القوائم و الصور و العناوين " +"الإلكترونية." + +msgid "Markup" +msgstr "محدد" + +msgid "Email" +msgstr "البريد الإلكتروني" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" + +msgid "Server" +msgstr "سيرفر" + +msgid "Username" +msgstr "إسم المستخدم" + +msgid "Password" +msgstr "كلمة المرور" + +msgid "SMTP From Address" +msgstr "" + +msgid "Invalid email address" +msgstr "بريد إلكتروني غير صحيح" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"إرسال رسالة إلكترونية تجريبة لتأكد من صحة الإعدادات(عند إستخدام بريد البي أتش بي أو إعدادات " +"ال SMTP في الأسف). أدخل في الأسفل عنوان البريد الإلكتروني لإرسال الرسالة التجريبية إليه." + +msgid "Send Email" +msgstr "إرسال البريد الإلكتروني" + +msgid "Email Test Error" +msgstr "خطأ في تحربة البريد الإلكتروني" + +msgid "Cookies" +msgstr "" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "المسار" + +msgid "Invalid cookie path" +msgstr "" + +msgid "Domain" +msgstr "" + +msgid "Invalid cookie domain" +msgstr "" + +msgid "Locking System" +msgstr "يتم إقفال النظام" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"الجاليري يستخدم نظام للإقفال ليمنع تضارب التغييرات اللتي تحصل في نفس الوقت . يوجد نوعين " +"للإقفال , لكل نوع مميزات و عيوب. نظام Fileللإقفال سريع و فعال لكن لا يعمل إذا نوع " +"نظام الملفات NFS و غير معتمد على نظام التشغيل الويندوز. نظام الإقفال Database أبطأ " +"لكن يمكن الإعتماد عليه. إذا لم تكن متأكد من إختيار أي من النوعين ننصحك بإختيار نظام File. عند حصول الكثير من أوقات الإنتظار , بإمكانك التغيير لنظام Database للإقفال. " +"بإمكانك التغيير بين أي من النوعين أي وقت." + +msgid "Lock system" +msgstr "نظام الإقفال" + +msgid "Helper Processes" +msgstr "" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +#, fuzzy +msgid "Priority" +msgstr "صورة محسنة" + +msgid "Save" +msgstr "حفظ" + +msgid "Reset" +msgstr "إعادة التعيين" + +msgid "Create A New Group" +msgstr "إضافة مجموعة جديدة" + +msgid "Group Name" +msgstr "إسم المجموعة" + +msgid "(required)" +msgstr "(مطلوب)" + +msgid "You must enter a group name" +msgstr "يجب كتابة إسم المجموعة" + +#, c-format +msgid "Group '%s' already exists" +msgstr "المجموعة '%s' موجودة مسبقاً" + +msgid "Create Group" +msgstr "إنشاء مجموعة" + +msgid "Cancel" +msgstr "إلغاء" + +msgid "Create A New User" +msgstr "إضافة مستخدم جديد" + +msgid "You must enter a username" +msgstr "يجب كتابة إسم المستخدم" + +#, c-format +msgid "Username '%s' already exists" +msgstr "إسم المستخدم '%s' موجود مسبقاً" + +msgid "Full Name" +msgstr "الإسم الكامل" + +msgid "Email Address" +msgstr "عنوان البريد الإلكتروني" + +msgid "You must enter an email address" +msgstr "يجب كتابة البريد الإلكتروني" + +msgid "Language" +msgstr "اللغة" + +msgid "You must enter a password" +msgstr "يجب كتابة كلمة المرور" + +msgid "Verify Password" +msgstr "تأكيد كلمة المرور" + +msgid "You must enter the password a second time" +msgstr "يجب إدخال كلمة المرور مرة أخرى" + +msgid "The passwords you entered did not match" +msgstr "كلمتي المرور المدخله غير متطابقه" + +msgid "Create User" +msgstr "إضافة مستخدم" + +msgid "Delete A Group" +msgstr "حذف المجموعة" + +msgid "Are you sure?" +msgstr "هل أنت متأكد?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "سوف يقوم بحذف %s من الجاليري بشكل كامل. لا يوجد أي إمكانيه للتراجع!" + +msgid "Delete" +msgstr "حذف" + +msgid "Delete a User" +msgstr "حذف المستخدم" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "المستخدم %s يملك %s مادة." + +#, c-format +msgid "Delete user %s and..." +msgstr "حذف مستخدم %s و..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "إضافة مالك جديد لجميع المواد ل %s" + +#, fuzzy, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "حذف جميع المواد من %s ومنح مالك جديد جميع الألبومات المتبقية غير الفارغة" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "مالك جديد (تركها فارغة يعني أحد مدراء الموقع) :" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "المستخدم '%s' غير موجود! لا يمكنك إضافة مواد لمستخدم غير موجود." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "المالك الجديد يجب أن يكون مستخدم مختلف عن المستخدم الذي قمت بحذفه!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "المالك الجديد لا يمكن أن يكون ضيف أو مستخدم غير معرف!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "سوف يقوم بحذف %s من الجاليري بشكل كامل. لا يوجد أي إمكانيه للتراجع!" + +msgid "Edit a group" +msgstr "تعديل المحموعة" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "تعديل الأعضاء من مجموعة '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "أضيف المستخدم '%s' إلى مجموعة '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "تم حذف المستخدم '%s' من المجموعة '%s'" +msgstr[1] "تم حذف المستخدمون '%s' من المجموعة '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "هذه المجموعة تحتوي على مستخدم واحد." +msgstr[1] "هذه المجموعة تحتوي على %d مستخدم." + +msgid "Members" +msgstr "الأعضاء" + +msgid "« first" +msgstr "« الأول" + +msgid "« back" +msgstr "« العودة" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "عرض الصفحة %d من %d" + +msgid "next »" +msgstr "التالي »" + +msgid "last »" +msgstr "الأخير »" + +msgid "Filter" +msgstr "" + +msgid "Clear" +msgstr "مسح" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "مستخدم واحد طابق تحديداتك" +msgstr[1] "%d مستخدم طابق تحديداتك" + +msgid "Remove selected" +msgstr "" + +msgid "You must select a user to remove." +msgstr "يجب تحديد مستخدم لحذفه." + +msgid "You can't remove yourself from this group." +msgstr "لا يمكنك حذف نفسك من هذه المجموعة." + +msgid "Add Member" +msgstr "أضف عضو" + +msgid "Add" +msgstr "أضف" + +msgid "You must enter a username." +msgstr "يجب إدخال إسم المستخدم" + +#, c-format +msgid "User '%s' does not exist." +msgstr "المستخدم '%s' غير موجود." + +msgid "This user already is in this group." +msgstr "هذا المستخدم موجود مسبقاً في هذه المجموعة." + +msgid "Done" +msgstr "تم" + +msgid "Edit a user" +msgstr "تعديل المستخدم" + +msgid "That username is already in use" +msgstr "إسم المستخدم موجود مسبقاً" + +msgid "You must enter a new username" +msgstr "يجب كتابة إسم المستخدم الجديد" + +msgid "E-mail Address" +msgstr "عنوان البريد الإلكتروني" + +msgid "(suggested)" +msgstr "(مفضل)" + +msgid "Options" +msgstr "خيارات" + +#, fuzzy +msgid "Lock user." +msgstr "نظام الإقفال" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +#, fuzzy +msgid "Reset failed login count." +msgstr "إعادة تعيين عدد المشاهدات" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "إدارة الموجوعة" + +#, c-format +msgid "Removed group '%s'" +msgstr "تم حذف المجموعة '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "تمت إضافة '%s' مجموعة" + +#, c-format +msgid "Modified group '%s'" +msgstr "تم تعديل مجموعة '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "يوجد مجموعة واحدة في هذا النظام." +msgstr[1] "يوجد %d مجموعة في هذا النظام." + +msgid "Edit Group" +msgstr "تعديل مجموعة" + +msgid "Edit" +msgstr "تعديل" + +msgid "Add/Remove Users" +msgstr "اضافة / حذف الأعضاء" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "المجموعة '%s' غير موجودة" + +msgid "You cannot delete that group" +msgstr "لا يمكنك حذف هذه المجموعة" + +msgid "You cannot edit that group's users" +msgstr "لا يمكنك تعديل أعضاء هذه المجموعة" + +msgid "Edit Group (by list)" +msgstr "تعديل مجموعه (من القائمة)" + +msgid "Action" +msgstr "عملية" + +msgid "edit" +msgstr "تعديل" + +msgid "delete" +msgstr "حذف" + +msgid "members" +msgstr "أعضاء" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "مجموعة واحدة طابقت تحديداتك" +msgstr[1] "%d مجموعة طابقت تحديداتك" + +msgid "System Maintenance" +msgstr "صيانة النظام" + +#, c-format +msgid "Completed %s task successfully." +msgstr "تم إكمال %s عملية بنجاح" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "فشلت المهمة %s من إكمال المطلوب" + +msgid "Task name" +msgstr "إسم المهمة" + +msgid "Last run" +msgstr "آخر تشغيل" + +msgid "Success/Fail" +msgstr "نجاح/ فشل" + +msgid "Not run yet" +msgstr "لم يتم تشغيلها حتى الآن" + +msgid "Success" +msgstr "نجاح" + +msgid "Failed" +msgstr "فشل" + +msgid "run now" +msgstr "تشغيل الآن" + +msgid "Last Run Details:" +msgstr "تفاصيل آخر تشغيل:" + +msgid "Performance Tuning" +msgstr "" + +#, fuzzy +msgid "Updated performance settings successfully" +msgstr "تم إرسال البريد التجريبي بنجاح" + +#, fuzzy +msgid "Deleted all saved pages" +msgstr "حذف المستخدم" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +#, fuzzy +msgid "Medium acceleration" +msgstr "تعديل الشرح" + +msgid "High acceleration" +msgstr "" + +#, fuzzy +msgid "Guest Users" +msgstr "المستخدمين المسجلين" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "الحالة : غير نشط" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ إغلاق(غير منشط)" + +msgid "Status: Active" +msgstr "الحالة : نشط" + +msgid "__PLUGIN__ activated" +msgstr "" + +msgid "Status: Not Installed" +msgstr "الحالة : لم يتم التحميل" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "الحالة : الترقية مطلوبة (غير نشط)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "الحالة : الموديول غير متوافق(غير نشط)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ إغلاق(غير منشط)" + +msgid "Warning!" +msgstr "" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "هل أنت متأكد من حذف حذف الموديول __PLUGIN__ ؟" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "سوف يقوم كذلك بحذف جميع الصلاحيات و مسح أي معلومات مؤقتة قام هذا الموديول بإنشائها." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "هل أنت متأكد من حذف حذف الموديول __PLUGIN__ ؟" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "التاريخ : (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "حذف (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "(مطلوب) (__COUNT__)" + +#, fuzzy +msgid "incompatible(__COUNT__)" +msgstr "الموديول غير متوافق ! (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "موديولات الجاليري" + +#, fuzzy +msgid "Get More Plugins" +msgstr "موديولات الجاليري" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"خصائص الجاليري تأتي كموديولات منفصلة. بإمكانك تحميل و تخزين الموديولات لإضافة خصائص أكثر " +"للجاليري , أو يمكنك إغلاق الخصائص إذا لم تكن تريد أن تستخدمها. لإستخدام خاصية ، يجب أن تقوم " +"بتخزين إعداد (إذا طلب ذلك) و تفعيلها. إذا لم تكن تريد إستخدام الخاصية بإمكانك إغلاقها." + +#, fuzzy +msgid "Plugin Name" +msgstr "الإسم الكامل" + +msgid "Installed" +msgstr "تم تحميلها" + +msgid "Version" +msgstr "نسخة" + +msgid "Actions" +msgstr "عمليات" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +#, fuzzy +msgid "Incompatible plugin!" +msgstr "الموديول غير متوافق !" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "" + +msgid "configure" +msgstr "إعداد" + +#, fuzzy +msgid "up to date" +msgstr "التاريخ :" + +#, fuzzy +msgid "upgrade required" +msgstr "(مطلوب)" + +#, fuzzy +msgid "not installed" +msgstr "حذف" + +#, fuzzy +msgid "incompatible" +msgstr "الموديول غير متوافق !" + +msgid "Repository" +msgstr "" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +msgid "Repository Error" +msgstr "" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "يجب تحديد مستخدم لحذفه." + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +#, fuzzy +msgid "Continue" +msgstr "المتابعة ..." + +msgid "Download Plugin List" +msgstr "" + +msgid "Show Repository List" +msgstr "" + +#, fuzzy +msgid "Upgrade Gallery" +msgstr "الجاليري" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +#, fuzzy +msgid "upgrade available" +msgstr "الجاليري" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "إسم الثيم" + +msgid "Module Name" +msgstr "إسم الموديول" + +#, fuzzy +msgid "Latest" +msgstr "الأخير" + +msgid "Locked Plugin" +msgstr "" + +#, fuzzy +msgid "Incompatible Plugin" +msgstr "الموديول غير متوافق !" + +#, fuzzy +msgid "Upgrade Available" +msgstr "ترقية" + +#, fuzzy +msgid "download" +msgstr "أسفل" + +msgid "modify" +msgstr "" + +msgid "Upgrade All Plugins" +msgstr "" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +#, fuzzy +msgid "Upgrade All" +msgstr "ترقية" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "أسفل" + +msgid "No packages have been selected." +msgstr "" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "قاعدة أسم الملف" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "إعدادات اللغة" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "نسخة PHP" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +#, fuzzy +msgid "Update" +msgstr "التاريخ :" + +msgid "Gallery Themes" +msgstr "ثيمات الجاليري" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "تم تنشيط الثيم %s بنجاح" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "تم إغلاق الثيم %s بنجاح" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "تم تخزين الثيم %s بنجاح" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "تم حذف الثيم %s بنجاح" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "تم ترقية الثيم %s بنجاح" + +msgid "Successfully saved default album settings" +msgstr "تم حفظ إعدادات الألبوم الرئيسة بنجاح" + +msgid "Restored theme settings" +msgstr "تم إستعادة إعدادات الثيم" + +msgid "Defaults" +msgstr "أساسيات" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"هذه هي إعدادات العرض الرئيسية للألبومات في الجاليري. بإمكانك تغييرها لكل ألبوم على حده." + +msgid "Default sort order" +msgstr "طريقة الترتيب الأساسية" + +msgid "with" +msgstr "مع" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "ألبومات جديدة" + +#, fuzzy +msgid "Save Defaults" +msgstr "أساسيات" + +#, c-format +msgid "%s Theme Settings" +msgstr "" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "هذه هي الإعدادات العامة للثيم . بإمكانك تغييرها على مستوى الألبوم" + +msgid "Available" +msgstr "متاح" + +msgid "Choose a block" +msgstr "" + +msgid "Selected" +msgstr "" + +msgid "Remove" +msgstr "حذف" + +msgid "Move Up" +msgstr "" + +msgid "Move Down" +msgstr "" + +msgid "Parameter" +msgstr "" + +msgid "Value" +msgstr "قيمة" + +msgid "There are no settings for this theme" +msgstr "لا يوجد أي إعدادات لهذا الثيم" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "إستخدم هذه الأعدادات" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"الأدوات الظاهرة أسفل تملك بعض الزيادة في عمليات الدعم و أنواع MIME. رتب الأدوات هنا لتحديد " +"أي منها سوف ينجز هذه العمليات." + +msgid "Toolkit" +msgstr "" + +msgid "Order" +msgstr "ترتيب" + +msgid "up" +msgstr "أعلى" + +msgid "down" +msgstr "أسفل" + +msgid "User Management" +msgstr "إدارة المستخدم" + +#, c-format +msgid "Removed user '%s'" +msgstr "تم حذف المستخدم '%s'" + +#, c-format +msgid "Created user '%s'" +msgstr "تمت إضافة '%s' المستخدم" + +#, c-format +msgid "Modified user '%s'" +msgstr "تم تعديل المستخدم '%s'" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "يوجد مستخدم واحد في هذا النظام." +msgstr[1] "يوجد %d مستخدم في هذا النظام." + +msgid "Edit User" +msgstr "تعديل مستخدم" + +msgid "You cannot delete yourself!" +msgstr "لا يمكنك حذف نفسك !" + +msgid "You cannot delete the special guest user." +msgstr "لا يمكنك حذف المستخدم زائر(guest)." + +msgid "Edit User (by list)" +msgstr "تعديل المستخدم ( من القائمة)" + +#, fuzzy +msgid "Locked" +msgstr "تحديد المقاس" + +#, fuzzy +msgid "Failed Logins" +msgstr "فشل" + +msgid "Thumbnails" +msgstr "صور مصغرة" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"بإمكان الجاليري إنشاء صور مصغرة وقت رفع الملفات , أو إنشاء الملفات المصغرة عند تصفحها لأول " +"مرة .في كلا الطريقتين يتم إنشاء الصورة مرة واحدة و حفظها . لكن إذا أخترت إنشائها وقت رفع " +"الملفات سوف يكون التصفح لأول مرة أسرع لكن وقت رفع المواد يكون أطول ." + +msgid "Create thumbnails now" +msgstr "إنشاء صور مصغرة الآن" + +msgid "This is a test email from Gallery2" +msgstr "" + +msgid "Edit Conflict!" +msgstr "" + +msgid "Security Violation" +msgstr "إنتهاك أمني" + +msgid "Database Error" +msgstr "خطأ في قاعدة البيانات" + +msgid "Platform Error" +msgstr "" + +#, fuzzy +msgid "Authentication Failure" +msgstr "حجم العرض" + +msgid "Error" +msgstr "خطأ" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"لم يتم إكمال تغييراتك لقيام شخص آخر بالتغيير في نفس الوقت على نفس المادة. قم بالضغط على زر " +"تراجع داخل متصفحك و من ثم قم بإعادة طلب الصفحة و قم بتجربة التغييرات مرة أخرى." + +msgid "Go back and try again" +msgstr "إذهب للخلف و أعد المحاولة" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "حذف الكاش لقاعدة البينات" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "كذلك تستطيع الرجوع للصفحة الرئيسية ومتابعة العرض" + +msgid "The action you attempted is not permitted." +msgstr "العملية التي تحاول القيام بها غير مصرحه." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "حصل خطاء أثناء محاولة الإتصال بقاعدة البيانات" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"لا يمكن الحصول على أخطاء قاعدة البينات بالتحديد إلا إذا كانت حالة تصحيح أخطاء الجاليري مفعلة " +"داخل ملف config.php . قبل البحث عن مساعدة لحل هذه المشكلة قم بتفعيل (buffered debug output) " +"و قم بإعداة هذه العملية. قم بالبحث قرب نهاية تقرير الأخطاء الطويل لإيجاد تفاصيل الخطأ." + +#, fuzzy +msgid "An error has occurred while interacting with the platform." +msgstr "حصل خطاء أثناء محاولة الإتصال بقاعدة البيانات" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "حصل خطأ" + +msgid "Back to the Gallery" +msgstr "العودة إلى الجاليري" + +msgid "Error Detail" +msgstr "تفاصيل الخطأ" + +msgid "System Information" +msgstr "معلومات النظام" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"لا تملك أي أداة رسم مفعلة بإمكانها التحكم بصور ال JPEG. إذا قمت بإضافة صور لن يمكن الحصول " +"على صور مصغرة لها." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "قم بزيارة صفحة الموديولات لتفعيل أداة الرسم المطلوبة." + +msgid "Add Sub-Album" +msgstr "أضف ألبوم فرعي" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"إسم هذا الألبوم على القرص الصلب. يجب أن يكون الإسم فريد من نوعه لهذا الألبوم. بإمكانك " +"إستخدام الحروف و علامة (_) و علامة (-). بإمكانك تغيير الإسم لاحقاً." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "إسمك يحتوي على علامات غير مسموح بها . رجاءاً قم بإدخال غيرها." + +msgid "You must enter a name for this album." +msgstr "يجب كتابة إسم لهذا الألبوم." + +msgid "The name you entered is already in use. Please enter another." +msgstr "الإسم الذي قمت بإدخاله مستخدم مسبقاُ . الرجاء كتابة إسم آخر." + +msgid "This is the album title." +msgstr "هذا هو عنوان الألبوم" + +msgid "This is the album summary." +msgstr "هذا هو ملخص الألبوم" + +msgid "Keywords are not visible, but are searchable." +msgstr "مفاتيح البحث غير ظاهرة لكن بالإمكان البحث خلالها." + +msgid "This is the long description of the album." +msgstr "هذا هو الشرح الطويل للألبوم." + +msgid "Create" +msgstr "إنشاء" + +msgid "Upload Complete" +msgstr "تم إكمال رفع الملفات" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "تم إضافة ملف واحد بنجاح." +msgstr[1] "تم إضافة %d ملف بنجاح." + +msgid "No files added." +msgstr "لم يتم إضافة ملفات." + +#, c-format +msgid "Added %s" +msgstr "%s أضيف" + +#, c-format +msgid "Failed to add %s" +msgstr "" + +msgid "Add more files" +msgstr "أضف ملفات أخرى" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"سيرفرك تم إعداده لكي لا يدعم رفع الملفات عن طريق المتصفح . رجاءاً أتصل بمدير النظام للمساعدة." + +msgid "Upload files directly from your computer." +msgstr "رفع الملفات مباشرة من جهازك." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "أدخل المسار الكامل للملف و أي تعليقات إضافية أو عناوين في الخانات المتوفرة أسفل" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"ملاحظة: يمكنك تحميل %s في مرة واحدة. إذا رغبت في المزيد، يجب تحميل الملفات بشكل " +"منفصل، أو غير نوعية الملفات، أو اسأل المسؤول ليسمح لك بتحميل أكبر" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"ملاحظة: يمكنك تحميل %s في مرة واحدة. يجب أن لا يزيد حجم الملف الواحد عن %s.إذا رغبت " +"في المزيد، يجب تحميل الملفات بشكل منفصل، أو غير نوعية الملفات، أو اسأل المسؤول ليسمح لك " +"بتحميل أكبر" + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "" + +msgid "Assign caption to:" +msgstr "إضافة تعليق ل :" + +msgid "No Thumbnail" +msgstr "لا توجد صورة مصغرة" + +msgid "Delete Items" +msgstr "حذف المواد" + +msgid "No items were selected for deletion" +msgstr "لم يتم تحديد مواد لحذفها" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "تم حذف مادة واحدة بنجاح." +msgstr[1] "تم حذف %d مادة بنجاح." + +msgid "This album contains no items to delete" +msgstr "الألبوم لا يحتوي على مواد لحذفها" + +msgid "Choose the items you want to delete" +msgstr "أختر المواد التي تريد حذفها" + +#, c-format +msgid "(page %d of %d)" +msgstr "(الصفحة %d من %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "(معلومات)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "" +msgstr[1] "" + +msgid "(empty album)" +msgstr "(ألبوم فارغ)" + +msgid "Check All" +msgstr "إختيار الكل" + +msgid "Check None" +msgstr "عدم إختيار أي منها" + +msgid "Invert" +msgstr "عكس" + +msgid "Previous Page" +msgstr "الصفحة السابقة" + +msgid "Next Page" +msgstr "الصفحة التالية" + +msgid "Deletion Complete" +msgstr "تم إكمال الحذف" + +msgid "Item successfully deleted" +msgstr "تم حذف المادة بنجاح" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "هل أنت متأكد من حذف ال %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "لا يوجد تراجع!" + +msgid "There was a problem processing your request." +msgstr "توجد مشكلة عند تنفيذ طلبك." + +msgid "Sort order" +msgstr "طلب ترتيب" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"هذا سوف يحدد طريقة الترتيب لألبوم. سوف يتم تطبيقها على المواد الموجودة, و على أي مواد جديدة " +"يتم إضافتها." + +#, fuzzy +msgid "Apply to all subalbums" +msgstr "حدث المواد التابعة" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " كل مادة تحتاج لصورة مصغرة. حدد حجم الصورة بالبيكسل هنا" + +msgid "You must enter a number (greater than zero)" +msgstr "يجب كتابة الرقم (أكبر من الصفر)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "" + +msgid "Resized Images" +msgstr "تم تغيير حجم الصور" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "كل مادة موجوده في ألبومك تملك عدة مقاسات . أختر الحجم الأساسي من هنا ." + +msgid "Active" +msgstr "نشط" + +msgid "Target Size (pixels)" +msgstr "الحجم المطلوب (بكسل)" + +msgid "You must enter a valid size" +msgstr "يجب كتابة الحجم بصيغة صحيحة" + +msgid "Use these target sizes in all subalbums" +msgstr "" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "حدث المواد التابعة" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "حدث المواد التابعة" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "إعادة إنشاء الصور المصغرة" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "إعادة تغيير حجم الصورة" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"لكي يقوم الجاليري بعرض الأنيميشن بشكل مناسب, يجب معرفة عرض و طول الأنيمشن. إذا قمت بتخزين " +"graphics toolkit اللتي بإمكانها التحكم بأنواع الأنيميشن , إذن محتمل أنه تم تحديد القيم " +"مسبقاً. إذا لم تخزينها , بإمكانك تحديد القيم ب 0 . إذا لم تقم بتحديد القيم الصحيحة هنا , سوف " +"يقوم المتصفح بعرضها بشكل خاطيء. ملاحظة تغيير هذه القيم لا يؤثر على نفس الملفات الأصلية لذلك " +"تغيير القيم لن يسبب أي ضرر." + +msgid "Width" +msgstr "العرض" + +msgid "You must enter a value greater than or equal to 0" +msgstr "يجب إدخال القيمة أكبر أو تساوي 0" + +msgid "Height" +msgstr "الإرتفاع" + +#, fuzzy +msgid "There were errors saving some items" +msgstr "يوجد أخطاء عند حفظ بعض المواد" + +#, fuzzy +msgid "There were errors saving all items" +msgstr "يوجد أخطاء عند حفظ جميع المواد" + +msgid "Successfully saved all items" +msgstr "تم حفظ جميع المواد بنجاح" + +msgid "This album contains no items" +msgstr "الألبوم لا يحتوي على مواد" + +msgid "Saved successfully." +msgstr "تم الحفظ بنجاح" + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "هذه المادة تم تعديلها عن طريق شخص آخر في نفس الوقت .تغييراتك تم فقدانها." + +msgid "You do not have permissions to modify this item." +msgstr "لا تملك الصلاحية الازمة لتعديل هذه المادة." + +msgid "Save and Done" +msgstr "حفظ و إتمام" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "حفظ و تعديل السابق %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "حفظ و تعديل التالي %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"إسم هذه المادة على القرص الصلب. يجب أن يكون فريد من نوعه داخل هذه الألبوم. بإمكانك فقط " +"إستخدام الحروف و علامة (_) و علامة (-)." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "إسمك يحتوي على علامات غير مسموحة . رجاءاً قم بإختيار غيرها." + +msgid "You must enter a name for this item." +msgstr "يجب كتابة إسم لهذه المادة." + +msgid "The name you entered is already in use. Please choose another." +msgstr "الإسم الذي قمت بإدخاله مستخدم مسبقاً . رجاءاً أختر إسماً آخر." + +msgid "The title of this item." +msgstr "العنوان لهذه المادة." + +msgid "The root album must have a title." +msgstr "الألبوم الرئيسي يجب أن يكون له عنوان." + +msgid "The summary of this item." +msgstr "الملخص لهذه المادة." + +msgid "This is the long description of the item." +msgstr "هذا هو الشرح الطويل للمادة." + +#, c-format +msgid "%s Date and Time" +msgstr "%s التاريخ والوقت" + +msgid "Set the date and time when this image was captured." +msgstr "تعيين تاريخ و وقت تصوير هذه الصورة." + +msgid "Set the date and time to be displayed for this item." +msgstr "تعيين التاريخ و الوقت ليتم عرضها لهذا المادة." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "تعيين التاريخ و الوقت ليتم عرضها لهذا ال %s." + +msgid "Date:" +msgstr "التاريخ :" + +msgid "Time:" +msgstr "الوقت:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "إستخدام المعلومات المقروءة و الوقت من مادة الملف (مثاله Exif tag):" + +msgid "You must enter a valid date and time" +msgstr "يجب كتابة التاريخ و الوقت بشكل صحيح" + +msgid "Thumbnail" +msgstr "صورة مصغرة" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"حدد حجم الصورة المصغرة . الجهة الأكبر للصورة المصغرة لن تكون أكبر من هذه القيمة . أترك هذه " +"الخانة فارغة إذا لم ترد الصورة المصغرة." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"لا يوجد هنا أي أداة رسم مفعلة لدعم هذا النوع من المواد, لذلك لا يمكن إنشاء أو تعديل الصور " +"المصغرة." + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "يجب كتابة إسم لهذه المادة." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"لكي يقوم الجاليري بعرض الفيلم بشكل مناسب, يجب معرفة عرض و طول الفيلم. إذا قمت بتخزين " +"graphics toolkit اللتي بإمكانها التحكم بأنواع الأفلام , إذن محتمل أنه تم تحديد القيم مسبقاً. " +"إذا لم تخزينها , بإمكانك تحديد القيم ب 0 . إذا لم تقم بتحديد القيم الصحيحة هنا , سوف يقوم " +"المتصفح بعرضها بشكل خاطيء. ملاحظة تغيير هذه القيم لا يؤثر على نفس الملفات الأصلية لذلك تغيير " +"القيم لن يسبب أي ضرر." + +msgid "Resized Photos" +msgstr "تم تغيير حجم الصور" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "هذه الأحجام هي أحجام نسخ أخرى من النسخة الأصلية اللتي بإمكانك توفيرها للعرض." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"لا يوجد هنا أي أداة رسم مفعلة لدعم هذا النوع من الصور, لذلك لا يمكن إنشاء أو تعديل نسخ معدله." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"بإمكانك تحديد أي جزء من الصورة سوف يتم إستخدامه كصورة مصغرة. هذه العملية لن تؤثر على النسخة " +"أو الصورة الأصلية." + +msgid "Aspect Ratio: " +msgstr "النسبة المتوقعة:" + +msgid "Crop" +msgstr "قطع" + +#, fuzzy +msgid "Undo Changes" +msgstr "تغيير" + +msgid "Reset to default" +msgstr "إعادة التعيين إلى الأساسي" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"لا يوجد هنا أي أداة رسم مفعلة لدعم هذا النوع من الصور, لذلك لا يمكن إنشاء جزء من الصورة " +"المصغرة." + +msgid "Rotate" +msgstr "تدوير" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "بإمكانك فقط تدوير هذه الصورة بمقدار 90 درجة كزيادة." + +msgid "CC 90°" +msgstr "" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "لا يوجد هنا أي أداة رسم مفعلة لدعم هذا النوع من الصور, لذلك لا يمكن تدوير الصور." + +msgid "Scale" +msgstr "تحديد المقاس" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"صغر أو كبر الصورة الأصلية . عندما يقوم الجاليري بضبط مقاسات الصورة, سوف يقوم بالحفاظ على " +"تناسب الصورة (الطول و العرض)الأصلية ليمنع تشويهها. سوف يتم ضبط مقاسات الصورة حتى يتم ملء " +"الصندوق الذي قمت يتحديد حجمه هنا." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"لا يوجد هنا أي أداة رسم مفعلة لدعم هذا النوع من الصور, لذلك لا يمكن ضبط مقاسات جديدة للصور." + +msgid "You must enter a size" +msgstr "يجب كتابة الحجم" + +msgid "Preserve Original" +msgstr "الحفاظ على الأصل" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"الجاليري لا يقوم بالتعديل على الصورة الأصلية عند قيامك بتعديل الصورة أو تدويرها . بل يقوم " +"بنسخها و التعديل على النسخه. هذا يتطلب مساحه أكبر بقليل لكن يقوم بحماية الصورة الأصلية من " +"التعديل. إقفال هذه الخاصية سوف يسبب التعديل على الصورة الأصلية مباشرة عند التعديل أو " +"التدوير ." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "هذا الرابط لصورة أخرى , لذلك لا يمكنك تغيير الصورة الأصلية." + +msgid "There are links to this photo, so you cannot change the original" +msgstr "يوجد روابط لهذه الصورة , لذلك لا يمكنك تغيير الصورة الأصلية" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "الحفاظ على الصورة الأصلية" + +msgid "Modified Photo" +msgstr "تم تعديل صورة" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"أنت تستخدم نسخة من الصورة الأصلية , النسخة تم تدويرها أو تغيير مقاساتها. الصورة الأصلية " +"متوفرة لكن لن يتم إستخدامها بعد الآن. أي تغييرات تقوم بطلبها سوف يقوم بتطبيقها على النسخة ." + +msgid "Restore original" +msgstr "إستعادة الأصلي" + +#, fuzzy +msgid "Choose a theme" +msgstr "أختر ألبوم جديد للمواد" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "" + +msgid "Choose Theme" +msgstr "" + +#, c-format +msgid "Configure the %s theme" +msgstr "" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"تم إعداد هذا الألبوم ليستخدم الواجهة %s.هذه الإعدادات يتم فقط إستخدامها للواجهة لهذا " +"الألبوم." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" + +msgid "Album Highlight" +msgstr "" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "بإمكانك تحديد هذه المادة لتكون هي الصورة المصغرة لألبومها أو الألبوم الرئيسي لألبومها." + +msgid "Highlight for:" +msgstr "التعليم (تحديد)لـ :" + +msgid "Highlight" +msgstr "تعليم (تحديد)" + +msgid "Move an Item" +msgstr "نقل المادة" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "تم نقل مادة واحدة بنجاح" +msgstr[1] "تم نقل %d مادة بنجاح" + +msgid "This album contains no items to move." +msgstr "الألبوم لا يحتوي على مواد لنقلها." + +msgid "Source" +msgstr "المصدر" + +msgid "Choose the items you want to move" +msgstr "أختر المواد اللتي تريد تحريكها" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"الجهة المحددة اللتي قمت بتحديدها لا تقبل الألبومات الفرعية , لذلك جميع الألبومات الفرعية تم " +"إلغاء التحديد عنها." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"الجهة المحددة اللتي قمت بتحديدها تقبل فقط الألبومات الفرعية, لذلك جميع المواد الأخرى غير " +"الألبومات الفرعية تم إلغاء تحديدها." + +msgid "You are not allowed to move this item away from here." +msgstr "لا يمكنك نقل هذه المادة من هنا." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "لا يمكنك نقل الألبوم إلى الجهة المختارة." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "لا يمكنك نقل المادة إلى الجهة المختارة." + +msgid "You cannot move an album into its own subtree." +msgstr "لا يمكنك نقل الألبوم لألبوم داخله." + +msgid "Destination" +msgstr "الوجهة" + +msgid "Choose a new album for them" +msgstr "أختر ألبوم جديد للمواد" + +msgid "You don't have the permission to add items in this album" +msgstr "لا تملك الصلاحية المطلوبة لإضافة مواد لهذا الألبوم" + +msgid "No destination chosen" +msgstr "لم يتم إختيار وجهه" + +msgid "Move" +msgstr "نقل" + +msgid "Successfully moved" +msgstr "تم النقل بنجاح" + +msgid "Choose a destination album" +msgstr "اختر الألبوم المطلوب" + +msgid "Permissions" +msgstr "صلاحيات" + +msgid "Owner changed successfully" +msgstr "تم تغيير المالك بنجاح" + +msgid "Group permission added successfully" +msgstr "" + +msgid "User permission added successfully" +msgstr "" + +msgid "Group permission removed successfully" +msgstr "" + +msgid "User permission removed successfully" +msgstr "" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"أي مادة تملك مجموعة من الصلاحيات الخاصة بها. تغيير صلاحيات الملف الرئيسي للمادة لا يؤثر على " +"صلاحيات المادة . لذلك يمكنك تحديد صلاحية الدخول للملف الرئيسي , و في نفس الوقت تعطي صلاحية " +"دخول كاملة للمادة أو محدودة . أفضل طريقة لإستخدام نظام الصلاحيات هو هو إنشاء مجموعة و منحها " +"الصلاحيات المطلوبة , بعد ذلك يمكنك إضافة المستخدم للمجموعة المطلوبة. بإمكانك إضافة أو حذف " +"المستخدم من المجموعة المحددة." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "هذه المادة مملوكة للمستخدم : %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "هذه المادة مملوكة للمستخدم : %s (%s)" + +msgid "New owner" +msgstr "مالك جديد" + +msgid "Change" +msgstr "تغيير" + +msgid "Apply new owner to sub-items" +msgstr "تحديث المالك الجديد للألبوم الفرعي" + +msgid "You must enter a user name" +msgstr "يجب كتابة إسم المستخدم" + +msgid "The user name you entered is invalid" +msgstr "إسم المستخدم الذي قمت بإدخاله غير صحيح" + +msgid "Apply changes" +msgstr "تحديث التغييرات" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"هذه المادة تملك مادة فرعية. التغييرات التي قمت بطلبها هنا سوف تطبق على هذه المادة فقط , أو " +"يمكنك تطبيقها على جميع المواد الفرعية. ملاحظة تطبيق التغييرات على المواد الفرعية سوف يدمج " +"تغيراتك مع الصلاحيات الموجودة للمواد الفرعية و سوف يستغرق وقت طويل إذا كان لديك كثير من " +"المواد الفرعية. منح الصلاحيات لمجموعة و إضافة أو حذف المستخدمين منها هي طريقة فعالة أكثر. " +"التغييرات سوف يتم سوف يتم تطبيقها على الألبومات الفرعية بشكل رئيسي." + +msgid "Apply to sub-items" +msgstr "حدث المواد التابعة" + +msgid "Group Permissions" +msgstr "صلاحيات المجموعة" + +msgid "Group name" +msgstr "إسم المجموعة" + +msgid "Permission" +msgstr "صلاحية" + +msgid "New Group Permission" +msgstr "صلاحية جديدة لمجموعة" + +msgid "Add Permission" +msgstr "اضف صلاحية" + +msgid "The permission you chose is invalid" +msgstr "الصلاحية التي قمت بإختيارها غير صحيحة" + +msgid "The group name you entered is invalid" +msgstr "إسم المجموعة الذي قمت بإدخاله غير صحيح" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "المجموعة تملك هذه الصلاحية مسبقاً (تأكد من الصلاحيات الفرعية)" + +msgid "User Permissions" +msgstr "صلاحيات المستخدم" + +msgid "User name" +msgstr "إسم المستخدم" + +msgid "New User Permission" +msgstr "صلاحية جديدة لمستخدم" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "المستخدم يملك هذه الصلاحية (تأكد من الصلاحيات الفرعية)" + +msgid "Reorder Album" +msgstr "إعادة ترتيب الألبوم" + +#, fuzzy +msgid "Order saved successfully" +msgstr "التغييرات تم حفظها بنجاح" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"هذا الألبوم يستخدم طريقة أتوماتيكة للترتيب محددة مسبقاً, لذلك لا يمكن تغيير الترتيب لهذه " +"المواد يدوياً. يجب عليك إلغاء الترتيب الأتوماتيكي للمتابعة." + +msgid "change" +msgstr "تغيير" + +msgid "Change the order of the items in this album." +msgstr "تغيير ترتيب المواد داخل هذا الألبوم." + +msgid "Move this item" +msgstr "تحريك هذه المادة" + +msgid "before" +msgstr "قبل" + +msgid "after" +msgstr "بعد" + +msgid "Reorder" +msgstr "إعادة الترتيب" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +#, fuzzy +msgid "Admin Login" +msgstr "خيارات مدير الموقع" + +msgid "Enter a URL" +msgstr "أدخل العنوان الإلكتروني" + +msgid "Enter some text describing the URL" +msgstr "أدخل شرح للعنوان الإلكتروني" + +msgid "Enter an image URL" +msgstr "أدخل العنوان الإلكتروني للصورة" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "قائمة" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "عنوان إلكتروني" + +msgid "image" +msgstr "صورة" + +#, fuzzy +msgid "color" +msgstr "البنية الرئيسية" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "خطأ في الإعدادات : ثيم مفقود" + +msgid "Missing Theme" +msgstr "" + +#, fuzzy, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"تم إعداد هذا الألبوم ليستخدم الواجهة %s.هذه الإعدادات يتم فقط إستخدامها للواجهة لهذا " +"الألبوم." + +#, fuzzy, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"تم إعداد هذا الألبوم ليستخدم الواجهة %s.هذه الإعدادات يتم فقط إستخدامها للواجهة لهذا " +"الألبوم." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +msgid "Admin Options" +msgstr "خيارات مدير الموقع" + +msgid "User Options" +msgstr "خيارات المستخدم" + +msgid "Password changed successfully" +msgstr "تم تغيير كلمة المرور بنجاح" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"يجب عليك إدخال كلمة المرور الحالية لإثبات شخصيتك، بعد ذلك أدخل كلمة المرور الجديدة مرتين " +"للتأكد أنك قمت بإدخالها بشكل صحيح." + +msgid "Current Password" +msgstr "كلمة المرور الحالية" + +msgid "You must enter your current password" +msgstr "يجب كتابة كلمة المرور الحالية" + +msgid "Incorrect password" +msgstr "كلمة المرور غير صحيحة" + +msgid "New Password" +msgstr "كلمة مرور جديدة" + +msgid "You must enter a new password" +msgstr "يجب كتابة كلمة المرور الجديدة" + +msgid "Verify New Password" +msgstr "تأكيد كلمة المرور الجديدة" + +msgid "You must enter your new password again!" +msgstr "يجب كتابة كلمة المرور الجديدة مرة أخرى!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "الدخول لحسابك الشخصي" + +msgid "Your password has been recovered, please login." +msgstr "تم إستعادة كلمة المرور , رجاءاً قم بالدخول." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "معلومات الدخول غير صحيحة . رجاءاً أعد المحاولة." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"عند نسيان أو فقدان كلمة المرور بالإمكان إسترجاعها من خلال صفحة إسترجاع كلمة " +"المرور" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "تعديلات العضوية حفظت بنجاح" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "يجب كتابة البريد الإلكتروني" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "يجب كتابة كلمة المرور الحالية" + +msgid "Recover a lost or forgotten password" +msgstr "إستعادة كلمة المرور المفقودة أو المنسية" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"عملية إسترجاع كلمة المرور تتطلب بريد إلكتروني مسجل لحسابك الشخصي, و يكون لك صلاحية الدخول " +"للبريد الإلكتروني المسجل . عملية التأكيد سوف ترسل إليك عبر البريد الإلكتروني و تحتوي على " +"العنوان الإلكتروني اللتي تجب زيارتهلتحديد كلمة المرور الجديدة لحسابك.لمنع إساءة الإستخدام لا " +"يمكنك طلب إستعادة كلمة المرور إلا مرة واحدة كل 20 دقيقه. عملية تأكيد طلب كلمة المرور الجديدة " +"سوف تكون صحيحة خلال 7 أيام من الطلب فقط. إذا لم يتم إستخدام الطلب خلال هذه المدة 7 أيام سوف " +"يتم حذفه و يجب عليك طلب عملية تأكيد أخرى." + +msgid "Your recovery request has been sent!" +msgstr "طلب إستعادة كلمة المرور تم إرساله!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"ملاحظة إذا لم يملك الحساب عنوان بريدي , لا يمكنك إستقبال بريد إلكتروني , و يجب عليك مراسلة " +"مدير الموقع للمساعدة ." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +msgid "Recover" +msgstr "إستعادة" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" + +msgid "Recover Password for Username" +msgstr "" + +msgid "You must enter a username to recover the password for." +msgstr "" + +msgid "The username you entered does not exist." +msgstr "" + +msgid "Authorization Incorrect" +msgstr "" + +msgid "Recovery Instructions" +msgstr "" + +msgid "AuthFile Missing" +msgstr "" + +msgid "AuthFile Unreadable" +msgstr "" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" + +msgid "Refresh" +msgstr "" + +msgid "This page will allow you to reset the password on your account." +msgstr "هذه الصفحة سوف تمكنك من إعادة تعيين كلمة المرور لحسابك." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"لا يوجد أي طلب يطابق إسم المستخدم و التصريح المقدمة. أطلب تصريح جديد من صفحة " +"كلمة المرور المفقودة" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"الطلب الذي تحاول الدخول إليه منتهي الصلاحية. أطلب عملية تأكيد دخول جديدة من صفحة كلمة المرور المفقودة." + +msgid "Authorization missing" +msgstr "" + +msgid "Username missing" +msgstr "إسم المستخدم مفقود" + +msgid "Submit" +msgstr "تسليم" + +#, c-format +msgid "Hello %s," +msgstr "أهلا %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"إستلامك لهذا البريد الإلكتروني لأنه تم طلب إستعادة كلمة المرور لــ%s عن طريق %s خلال %s" + +#, c-format +msgid "Your username is: %s" +msgstr "" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"لإنهاء عملية إسترجاع كلمة المرور رجاءاً قم بالضغط على الرابط التالي و قم بإدخال جميع البيانات " +"المطلوبة:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "إذا لم تقم بطلب هذا الإيميل لإعادة تهيئة البريد الإلكتروني , بإمكانك تجاهله بأمان." + +msgid "Thank you!" +msgstr "شكراً لك!" + +msgid "guest" +msgstr "زائر" + +#, c-format +msgid "display mode: %s" +msgstr "" + +#, c-format +msgid "Date: %s" +msgstr "التاريخ: %s" + +#, c-format +msgid "Owner: %s" +msgstr "المالك: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "Views: %d" +msgstr "عدد المشاهدات: %d" + +msgid "« album actions »" +msgstr "« عمليات الألبوم »" + +msgid "« item actions »" +msgstr "« عمليات المادة »" + +msgid "Go" +msgstr "اذهب" + +msgid "Navigation" +msgstr "إستعراض" + +msgid "next" +msgstr "التالي" + +msgid "last" +msgstr "الأخير" + +#, c-format +msgid "Page %d of %d" +msgstr "الصفحة %d من %d" + +#, c-format +msgid "%d of %d" +msgstr "" + +msgid "first" +msgstr "الأول" + +msgid "previous" +msgstr "السابق" + +msgid "Page:" +msgstr "صفحة:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "الحجم: " + +msgid "Unknown" +msgstr "غير معروف" + +msgid "Full size: " +msgstr "الحجم الكامل :" + +msgid "Setting" +msgstr "خيارات" + +msgid "Use Global" +msgstr "" + +msgid "Language selector" +msgstr "" + +msgid "Item actions" +msgstr "عمليات المادة" + +msgid "Use dropdown menu" +msgstr "" + +msgid "Login block" +msgstr "" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/bg.po b/Source/gallery2/modules/core/po/bg.po new file mode 100644 index 0000000..4dde14f --- /dev/null +++ b/Source/gallery2/modules/core/po/bg.po @@ -0,0 +1,3496 @@ +# $Id: bg.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# +# # Bisser Dobrev , 2003-2005 +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 16:10+0100\n" +"Last-Translator: Bisser Dobrev \n" +"Language-Team: Bisser Dobrev \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Bulgarian\n" +"X-Poedit-Country: BULGARIA\n" + +msgid "Gallery Email Test" +msgstr "Тест на E-mail системата" + +msgid "forever" +msgstr "завинаги" + +msgid "High Priority (Me first!)" +msgstr "" + +msgid "Low Priority (I want to share!)" +msgstr "" + +msgid "No Markup" +msgstr "" + +msgid "BBCode" +msgstr "" + +msgid "Raw HTML" +msgstr "" + +msgid "Database" +msgstr "База Данни" + +msgid "File" +msgstr "Файл" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d минута" +msgstr[1] "%d минути" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d час" +msgstr[1] "%d часа" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d ден" +msgstr[1] "%d дни" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d седмица" +msgstr[1] "%d седмици" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "" + +msgid "Partial acceleration" +msgstr "" + +msgid "Full acceleration" +msgstr "" + +msgid "Themes" +msgstr "" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Модули на Галерията" + +msgid "Done." +msgstr "" + +msgid "Updating Packages" +msgstr "" + +#, c-format +msgid "Preparing %s" +msgstr "" + +#, c-format +msgid "Downloading %s" +msgstr "" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Действия" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Презададен език" + +msgid "Update completed with errors." +msgstr "" + +msgid "Update complete." +msgstr "" + +msgid "install" +msgstr "инсталиране" + +msgid "upgrade" +msgstr "обновяване" + +msgid "activate" +msgstr "активиране" + +msgid "uninstall" +msgstr "премахване" + +msgid "deactivate" +msgstr "деактивиране" + +msgid "Inherit settings from parent album" +msgstr "Използват се настройките на по-горния албум" + +msgid "Use these settings" +msgstr "Използват се следните настройки" + +#, fuzzy +msgid "Installing the core module" +msgstr "Модул 'Ядро' на Галерията" + +msgid "key" +msgstr "" + +msgid "All access" +msgstr "" + +msgid "[core] View item" +msgstr "" + +msgid "[core] View resized version(s)" +msgstr "" + +msgid "[core] View original version" +msgstr "" + +msgid "[core] View all versions" +msgstr "" + +msgid "[core] Add sub-album" +msgstr "[ядро] Добавяне на под-албум" + +msgid "[core] Add sub-item" +msgstr "[ядро] Добавяне на под-елемент" + +msgid "[core] Edit item" +msgstr "" + +msgid "[core] Change item permissions" +msgstr "" + +msgid "[core] Delete item" +msgstr "" + +msgid "Upgrading permissions" +msgstr "Обновяване на правата за достъп" + +msgid "Deleting old permission tables" +msgstr "" + +msgid "Registered Users" +msgstr "Регистрирани Потребители" + +msgid "All Users" +msgstr "Всички потребители" + +msgid "Detecting broken derivatives" +msgstr "" + +msgid "Clearing fast-download cache" +msgstr "" + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "Изтриите временните файлове на базата данни" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Администратори" + +msgid "Everybody" +msgstr "Всички" + +msgid "Guest" +msgstr "Гост" + +msgid "Gallery" +msgstr "Галерия" + +msgid "This is the main page of your Gallery" +msgstr "Това е началната страница на вашата Галерия" + +msgid "Converting MySQL data to UTF8" +msgstr "" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "" + +msgid "add items" +msgstr "добавете елементи" + +msgid "Album created successfully." +msgstr "Албума е успешно създаден." + +msgid "add sub-album" +msgstr "добавете под-албум" + +msgid "add items confirmation" +msgstr "" + +msgid "Base filename" +msgstr "" + +msgid "Caption" +msgstr "Надпис" + +msgid "Blank" +msgstr "" + +msgid "From Web Browser" +msgstr "Чрез Web Броузера" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d мегабайт" +msgstr[1] "%d мегабайта" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d килобайт" +msgstr[1] "%d килобайта" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "" + +msgid "delete an item" +msgstr "" + +msgid "delete confirmation" +msgstr "" + +#, c-format +msgid "delete %s" +msgstr "изтриите %s" + +#, c-format +msgid "edit %s" +msgstr "редактирайте %s" + +msgid "Settings saved successfully." +msgstr "" + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Настройките на стила са възстановени" + +msgid "Preparing..." +msgstr "" + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "" + +msgid "Album" +msgstr "Албум" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Oбработване на изображение %d от %d" + +msgid "Changes saved successfully" +msgstr "" + +msgid "Animation Size" +msgstr "Големина на Анимацията" + +msgid "edit captions" +msgstr "редактирайте надписите" + +msgid "General" +msgstr "Общи" + +msgid "Movie Size" +msgstr "Големина на Филма" + +msgid "Photo" +msgstr "Снимка" + +msgid "Thumbnail cropped successfully" +msgstr "" + +msgid "Thumbnail reset successfully" +msgstr "" + +msgid "Photo 5x3" +msgstr "Снимка 5x3" + +msgid "Photo 6x4" +msgstr "Снимка 6x4" + +msgid "Photo 7x5" +msgstr "Снимка 7x5" + +msgid "Photo 10x8" +msgstr "Снимка 10x8" + +msgid "Fullscreen 4x3" +msgstr "Екран формат 4x3" + +msgid "Widescreen 16x9" +msgstr "Екран формат 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Квадрат 1x1" + +msgid "As Image" +msgstr "" + +msgid "Landscape" +msgstr "" + +msgid "Portrait" +msgstr "" + +msgid "Crop Thumbnail" +msgstr "" + +msgid "Reverted rotate and scale changes successfully" +msgstr "" + +msgid "Rotated photo successfully" +msgstr "Снимката е успешно завъртяна" + +msgid "Scaled photo successfully" +msgstr "" + +msgid "Modify Photo" +msgstr "" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "Стила %s е успешно активиран" + +msgid "« default theme »" +msgstr "" + +msgid "Theme" +msgstr "Стил" + +msgid "make highlight" +msgstr "направете главна снимка" + +msgid "move item" +msgstr "преместете елемента" + +#, c-format +msgid "move %s" +msgstr "преместете %s" + +#, c-format +msgid "edit %s permissions" +msgstr "променете правата за достъп на %s" + +msgid "reorder items" +msgstr "пренаредете елементите (по-име)" + +msgid "Maintenance" +msgstr "Поддръжка" + +msgid "Gallery Site Administration" +msgstr "" + +msgid "site admin" +msgstr "администрацията" + +msgid "Gallery User Administration" +msgstr "" + +msgid "change password" +msgstr "смяна на парола" + +msgid "your account" +msgstr "потребителски настройки" + +msgid "Password Recovery" +msgstr "" + +msgid "Core" +msgstr "Ядро на Галерията" + +msgid "Gallery 2 Core Module" +msgstr "Модул Ядро на Галерия v2" + +msgid "Add Items" +msgstr "Добавете Елементи" + +msgid "Edit Album" +msgstr "Редактирайте Албума" + +msgid "Edit Photo" +msgstr "Редактирайте Снимката" + +msgid "Edit Movie" +msgstr "Редактирайте Филма" + +msgid "Add Album" +msgstr "Добавете Албум" + +msgid "Edit Permissions" +msgstr "Променете Правата за Достъп" + +msgid "View Permissions" +msgstr "Вижте Правата за Достъп" + +msgid "Delete Album" +msgstr "Изтриите Албума" + +msgid "Delete Photo" +msgstr "Изтриите Снимката" + +msgid "Delete Movie" +msgstr "Изтриите Филма" + +msgid "Move Album" +msgstr "Преместете Албума" + +msgid "Move Photo" +msgstr "Преместете Снимката" + +msgid "Move Movie" +msgstr "Преместете Филма" + +msgid "Edit Captions" +msgstr "Редактирайте Надписите" + +msgid "Make Highlight" +msgstr "" + +msgid "Reorder Items" +msgstr "Пренаредете Елементите (по име)" + +msgid "Site Admin" +msgstr "Администрация" + +msgid "Login" +msgstr "Вход" + +msgid "Your Account" +msgstr "Вашите Настройки" + +msgid "Logout" +msgstr "Изход" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "Потребители" + +msgid "Groups" +msgstr "Групи" + +msgid "Performance" +msgstr "" + +msgid "Toolkit Priority" +msgstr "Приоритети" + +msgid "Graphics Toolkits" +msgstr "Графични Програми" + +msgid "Account Settings" +msgstr "Потребителски Настройки" + +msgid "Change Password" +msgstr "Смяна на Парола" + +#, c-format +msgid "Edit %s" +msgstr "Редактирайте %sа" + +#, c-format +msgid "Delete %s" +msgstr "Изтриите %sа" + +#, c-format +msgid "Move %s" +msgstr "Преместете %sа" + +msgid "Build all thumbnails/resizes" +msgstr "" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" + +msgid "Build All Thumbnails/Resizes" +msgstr "" + +msgid "Debug output for failed items:" +msgstr "" + +#, c-format +msgid "Checked %d items" +msgstr "Проверени елементи: %d" + +#, c-format +msgid "%d items built" +msgstr "Изградени елементи: %d" + +#, c-format +msgid "%d items failed" +msgstr "Неуспешно изградени: %d" + +msgid "Convert MySQL database to UTF8" +msgstr "" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +msgid "Database successfully converted to UTF8" +msgstr "" + +msgid "No conversion required" +msgstr "" + +#, fuzzy +msgid "Delete user sessions" +msgstr "Права за достъп до файловата система" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Права за достъп до файловата система" + +msgid "Delete database cache" +msgstr "Изтриите временните файлове на базата данни" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "" + +msgid "Delete template cache" +msgstr "" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" + +msgid "Template cache deleted successfully" +msgstr "" + +msgid "album" +msgstr "албума" + +msgid "Animation" +msgstr "Анимация" + +msgid "animation" +msgstr "анимация" + +msgid "Gallery Core" +msgstr "Ядро на Галерията" + +msgid "Gallery Core Module" +msgstr "Модул 'Ядро' на Галерията" + +msgid "Search descriptions" +msgstr "" + +msgid "Search keywords" +msgstr "" + +msgid "Search summaries" +msgstr "" + +msgid "Search titles" +msgstr "" + +msgid "Description" +msgstr "Описание" + +msgid "Keywords" +msgstr "Ключови думи" + +msgid "Summary" +msgstr "Резюме" + +msgid "Title" +msgstr "Заглавие" + +msgid "Owner" +msgstr "Собственик" + +#, fuzzy +msgid "Dynamic Album" +msgstr "Редактирайте Албума" + +#, fuzzy +msgid "dynamic album" +msgstr "добавете албум" + +msgid "Group" +msgstr "Група" + +msgid "group" +msgstr "група" + +msgid "Other" +msgstr "" + +msgid "Movie" +msgstr "Филм" + +msgid "movie" +msgstr "филм" + +msgid "photo" +msgstr "снимката" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +msgid "Experimental Repository" +msgstr "" + +msgid "Community Repository" +msgstr "" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "" + +msgid "Index integrity check failed." +msgstr "" + +msgid "« default sort order »" +msgstr "« презададен ред на сортиране »" + +msgid "Manual sort order" +msgstr "Ръчно сортиране" + +msgid "Origination Date" +msgstr "" + +msgid "Creation Date" +msgstr "Дата на създаване" + +msgid "Last Changed Date" +msgstr "Дата на промяна" + +msgid "Name" +msgstr "Име" + +msgid "View Count" +msgstr "Брой прегледи" + +msgid "Random" +msgstr "" + +msgid "« no presort »" +msgstr "« без второ сортиране »" + +msgid "Albums First" +msgstr "Първо Албумите" + +msgid "Most Viewed First" +msgstr "Първо Най-гледаното" + +msgid "Ascending" +msgstr "Възходящо" + +msgid "Descending" +msgstr "Низходящо" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +msgid "This page is valid XHTML 1.0" +msgstr "Тази страница е валиден XHTML 1.0" + +#, fuzzy +msgid "Donate to the Gallery project" +msgstr "Назад към Галерията" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Оставащо време: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Памет в употреба: %s, общо: %s" + +msgid "Rows per album page" +msgstr "Брой редове на страница в албум" + +msgid "Columns per album page" +msgstr "Брой колони на страница в албум" + +msgid "Number of items to show per page" +msgstr "Брой елементи показани на страницата" + +msgid "Row height (pixels)" +msgstr "" + +msgid "Column width (pixels)" +msgstr "" + +msgid "Show image owners" +msgstr "Показване на притежателя на снимката" + +msgid "Show album owners" +msgstr "Показване на притежателя на албума" + +msgid "Show micro navigation thumbnails" +msgstr "Показване на микро-изображения за навигация" + +msgid "Blocks to show in the sidebar" +msgstr "Кои блокове да са показани отстрани" + +msgid "Blocks to show on album pages" +msgstr "Кои блокове да са показани на страниците с албуми" + +msgid "Blocks to show on photo pages" +msgstr "Кои блокове да са показани на страниците със снимки" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "добавете албум" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "Вижте примери" + +msgid "Album Frame" +msgstr "Рамка на Албума" + +msgid "Item Frame" +msgstr "Рамка на Елемента" + +msgid "Photo Frame" +msgstr "Рамка на Снимката" + +msgid "Color Pack" +msgstr "Цветове" + +msgid "You must enter a number greater than 0" +msgstr "Трябва да въведете число по голямо от 0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Аудио" + +msgid "audio" +msgstr "аудио" + +msgid "Archive" +msgstr "Архив" + +msgid "archive" +msgstr "архив" + +msgid "Document" +msgstr "Д" + +msgid "document" +msgstr "" + +msgid "Spreadsheet" +msgstr "" + +msgid "spreadsheet" +msgstr "" + +#, fuzzy +msgid "file" +msgstr "Файл" + +msgid "Back" +msgstr "Назад" + +#, c-format +msgid "Back to %s" +msgstr "Назад към %s" + +msgid "User" +msgstr "Потребител" + +msgid "user" +msgstr "потребител" + +msgid "Optimize database" +msgstr "" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" + +msgid "Database optimized successfully" +msgstr "" + +msgid "Reset view counts" +msgstr "" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" + +msgid "View counts reset successfully" +msgstr "" + +msgid "Refresh capture dates" +msgstr "" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" + +msgid "Processing..." +msgstr "" + +msgid "Refresh Capture Dates" +msgstr "" + +#, c-format +msgid "Processing item %d of %d" +msgstr "" + +#, c-format +msgid "Updated %d of %d items" +msgstr "" + +msgid "System information" +msgstr "Информация за системата" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" + +msgid "core" +msgstr "ядро" + +msgid "unknown" +msgstr "" + +msgid "Gallery version" +msgstr "Версия на Галерията" + +msgid "PHP version" +msgstr "Версия на PHP" + +msgid "Webserver" +msgstr "Web-сървър" + +msgid "Toolkits" +msgstr "Помощни Програми" + +#, fuzzy +msgid "Acceleration" +msgstr "Действие" + +msgid "Operating system" +msgstr "Операционна система" + +msgid "Default theme" +msgstr "Презададен стил" + +msgid "gettext" +msgstr "" + +#, fuzzy +msgid "enabled" +msgstr "Неуспешно изградени: %d" + +#, fuzzy +msgid "disabled" +msgstr "Неуспешно изградени: %d" + +msgid "Locale" +msgstr "" + +msgid "Browser" +msgstr "Броузер" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "Настройките за стила са успешно записани" + +msgid "General Settings" +msgstr "Общи Настройки" + +msgid "Settings saved successfully" +msgstr "Настройките са успешно записани" + +msgid "Added local upload directory successfully" +msgstr "Локална на сървъра директории за качване е успешно добавена" + +msgid "Removed local upload directory successfully" +msgstr "Локална на сървъра директории за качване е успешно премахната" + +msgid "Test email sent successfully" +msgstr "" + +msgid "There was a problem processing your request, see below for details." +msgstr "" + +msgid "Error sending test email, see below for details." +msgstr "" + +msgid "Language Settings" +msgstr "Езикови настройки" + +#, fuzzy +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Изберете презададения език за Галерията. Отделните потребители могат по-късно да променят " +"това във техните лични настройки или чрез меню, ако е активирано по-долу." + +msgid "Default language" +msgstr "Презададен език" + +msgid "Check Browser Preference" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" + +#, fuzzy +msgid "Date Formats" +msgstr "Дата: %s" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" + +#, fuzzy +msgid "Style" +msgstr "Заглавие" + +msgid "Format" +msgstr "" + +#, fuzzy +msgid "Sample" +msgstr "Вижте примери" + +#, fuzzy +msgid "Date" +msgstr "Дата:" + +#, fuzzy +msgid "Time" +msgstr "Час:" + +#, fuzzy +msgid "Date/Time" +msgstr "Дата и час за %s" + +msgid "Filesystem Permissions" +msgstr "Права за достъп до файловата система" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Посочете презададените права за достъп за файловете и директориите които Галерията създава. " +"Това не се отнася за файловете и директориите които Галерията вече е създала." + +msgid "New directories" +msgstr "Нови директории" + +msgid "New files" +msgstr "Нови файлове" + +msgid "Session Settings" +msgstr "" + +msgid "Session Lifetime" +msgstr "" + +msgid "Inactivity Timeout" +msgstr "" + +msgid "Embedded Markup" +msgstr "" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" + +msgid "Markup" +msgstr "" + +msgid "Email" +msgstr "E-mail" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" + +msgid "Server" +msgstr "Сървър" + +msgid "Username" +msgstr "Потребител" + +msgid "Password" +msgstr "Парола" + +msgid "SMTP From Address" +msgstr "" + +msgid "Invalid email address" +msgstr "" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" + +msgid "Send Email" +msgstr "" + +msgid "Email Test Error" +msgstr "" + +msgid "Cookies" +msgstr "" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "Пътека към директорията" + +msgid "Invalid cookie path" +msgstr "" + +msgid "Domain" +msgstr "" + +msgid "Invalid cookie domain" +msgstr "" + +msgid "Locking System" +msgstr "" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" + +msgid "Lock system" +msgstr "" + +msgid "Helper Processes" +msgstr "" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +#, fuzzy +msgid "Priority" +msgstr "Приоритети" + +msgid "Save" +msgstr "Запишете" + +msgid "Reset" +msgstr "Анулирайте" + +msgid "Create A New Group" +msgstr "Създайте Нова Група" + +msgid "Group Name" +msgstr "Група" + +msgid "(required)" +msgstr "(необходимо)" + +msgid "You must enter a group name" +msgstr "Трябва да въведете име на групата" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Групата '%s' вече съществува" + +msgid "Create Group" +msgstr "Създайте Група" + +msgid "Cancel" +msgstr "Отказ" + +msgid "Create A New User" +msgstr "Създайте нов потребител" + +msgid "You must enter a username" +msgstr "Трябва да въведете потребителско име" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Потребителя '%s' вече съществува" + +msgid "Full Name" +msgstr "Пълно Име" + +msgid "Email Address" +msgstr "E-mail адрес" + +msgid "You must enter an email address" +msgstr "Трябва да въведете e-mail адрес" + +msgid "Language" +msgstr "Език" + +msgid "You must enter a password" +msgstr "Трябва да въведете парола" + +msgid "Verify Password" +msgstr "Потвърдете Паролата" + +msgid "You must enter the password a second time" +msgstr "Трябва да въведете паролата втори път" + +msgid "The passwords you entered did not match" +msgstr "Паролите които въведохте не съвпадат" + +msgid "Create User" +msgstr "Създайте този потребител" + +msgid "Delete A Group" +msgstr "Изтриите Група" + +msgid "Are you sure?" +msgstr "Сигурни ли сте?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Това изцяло ще премахне %s от Галерията. Няма връщане назад!" + +msgid "Delete" +msgstr "Изтриите" + +msgid "Delete a User" +msgstr "Изтриите потребител" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "" + +#, c-format +msgid "Delete user %s and..." +msgstr "" + +# %s is name of old owner +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Това ще премахне напълно %s от Галерията. Няма връщане назад!" + +msgid "Edit a group" +msgstr "Промяна на група" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Променете Потребителите в Групата '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Потребителя '%s' е добавен в групата '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "'%s' потребител е премахнат от групата '%s'" +msgstr[1] "%s потребители са премахнати от групата '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Тази група съдържа %d потребител" +msgstr[1] "Тази група съдържа %d потребители" + +msgid "Members" +msgstr "Потребители" + +msgid "« first" +msgstr "« първа" + +msgid "« back" +msgstr "« предишна" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "страница %d от %d" + +msgid "next »" +msgstr "следваща »" + +msgid "last »" +msgstr "последна »" + +msgid "Filter" +msgstr "" + +msgid "Clear" +msgstr "" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "" +msgstr[1] "" + +msgid "Remove selected" +msgstr "" + +msgid "You must select a user to remove." +msgstr "" + +msgid "You can't remove yourself from this group." +msgstr "" + +msgid "Add Member" +msgstr "" + +msgid "Add" +msgstr "Добавете" + +msgid "You must enter a username." +msgstr "" + +#, c-format +msgid "User '%s' does not exist." +msgstr "" + +msgid "This user already is in this group." +msgstr "" + +msgid "Done" +msgstr "" + +msgid "Edit a user" +msgstr "" + +msgid "That username is already in use" +msgstr "" + +msgid "You must enter a new username" +msgstr "" + +msgid "E-mail Address" +msgstr "E-mail Адрес" + +msgid "(suggested)" +msgstr "(препоръчително)" + +msgid "Options" +msgstr "Настройки" + +msgid "Lock user." +msgstr "" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +msgid "Reset failed login count." +msgstr "" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Управление на Групите" + +#, c-format +msgid "Removed group '%s'" +msgstr "Премахната е групата '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Създадена е групата '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Променена е групата '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "В момента има %d група в системата." +msgstr[1] "В момента има %d групи в системата." + +msgid "Edit Group" +msgstr "Променете Групата" + +msgid "Edit" +msgstr "Променете" + +msgid "Add/Remove Users" +msgstr "Добавете/Премахнете Потребители" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Групата '%s' не съществува." + +msgid "You cannot delete that group" +msgstr "" + +msgid "You cannot edit that group's users" +msgstr "" + +msgid "Edit Group (by list)" +msgstr "Променете Групата (по списък)" + +msgid "Action" +msgstr "Действие" + +msgid "edit" +msgstr "променете" + +msgid "delete" +msgstr "" + +msgid "members" +msgstr "" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "" +msgstr[1] "" + +msgid "System Maintenance" +msgstr "" + +#, c-format +msgid "Completed %s task successfully." +msgstr "" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "" + +msgid "Task name" +msgstr "" + +msgid "Last run" +msgstr "" + +msgid "Success/Fail" +msgstr "" + +msgid "Not run yet" +msgstr "" + +msgid "Success" +msgstr "" + +msgid "Failed" +msgstr "" + +msgid "run now" +msgstr "" + +msgid "Last Run Details:" +msgstr "" + +msgid "Performance Tuning" +msgstr "" + +#, fuzzy +msgid "Updated performance settings successfully" +msgstr "Снимката е успешно завъртяна" + +#, fuzzy +msgid "Deleted all saved pages" +msgstr "Изтриите потребител" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +#, fuzzy +msgid "Medium acceleration" +msgstr "редактирайте надписите" + +msgid "High acceleration" +msgstr "" + +#, fuzzy +msgid "Guest Users" +msgstr "Регистрирани Потребители" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "деактивиране __PLUGIN__" + +msgid "Status: Active" +msgstr "" + +msgid "__PLUGIN__ activated" +msgstr "" + +msgid "Status: Not Installed" +msgstr "" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "деактивиране __PLUGIN__" + +msgid "Warning!" +msgstr "" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Наистина ли искате да премахнете модула __PLUGIN__?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Това също така ще премахне всички права за достъп и ще изчисти всички временни файлове " +"създадени от този модул." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Наистина ли искате да премахнете модула __PLUGIN__?" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "Дата: (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "премахване (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "(необходимо) (__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Модули на Галерията" + +#, fuzzy +msgid "Get More Plugins" +msgstr "Модули на Галерията" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" + +#, fuzzy +msgid "Plugin Name" +msgstr "Пълно Име" + +msgid "Installed" +msgstr "Инсталиран" + +msgid "Version" +msgstr "Версия" + +msgid "Actions" +msgstr "Действия" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "" + +msgid "configure" +msgstr "конфигуриране" + +#, fuzzy +msgid "up to date" +msgstr "Дата:" + +#, fuzzy +msgid "upgrade required" +msgstr "(необходимо)" + +#, fuzzy +msgid "not installed" +msgstr "премахване" + +msgid "incompatible" +msgstr "" + +msgid "Repository" +msgstr "" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +msgid "Repository Error" +msgstr "" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Трябва да въведете нова парола" + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +msgid "Continue" +msgstr "" + +msgid "Download Plugin List" +msgstr "" + +msgid "Show Repository List" +msgstr "" + +#, fuzzy +msgid "Upgrade Gallery" +msgstr "Галерия" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +#, fuzzy +msgid "upgrade available" +msgstr "Галерия" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "Име" + +msgid "Module Name" +msgstr "Име на Модула" + +#, fuzzy +msgid "Latest" +msgstr "последна" + +msgid "Locked Plugin" +msgstr "" + +msgid "Incompatible Plugin" +msgstr "" + +#, fuzzy +msgid "Upgrade Available" +msgstr "обновяване" + +#, fuzzy +msgid "download" +msgstr "надолу" + +msgid "modify" +msgstr "" + +msgid "Upgrade All Plugins" +msgstr "" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +#, fuzzy +msgid "Upgrade All" +msgstr "обновяване" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "надолу" + +msgid "No packages have been selected." +msgstr "" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "Добавете Файлове" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "Езикови настройки" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "Версия на PHP" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +#, fuzzy +msgid "Update" +msgstr "Дата:" + +msgid "Gallery Themes" +msgstr "Стилове на Галерията" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Стила %s е успешно активиран" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Стила %s е успешно деактивиран" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Стила %s е успешно инсталиран" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Стила %s е успешно премахнат" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Стила %s е успешно обновен" + +msgid "Successfully saved default album settings" +msgstr "Презададените настройки на албума за успешно записани" + +msgid "Restored theme settings" +msgstr "Настройките на стила са възстановени" + +msgid "Defaults" +msgstr "Презададени Настройки" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Това са презададените настройки за показване на албумите във галерията ви. Те могат да бъдат " +"променени във всеки албум по-отделно." + +msgid "Default sort order" +msgstr "Презададен ред на сортиране" + +msgid "with" +msgstr "с" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Нови албуми" + +#, fuzzy +msgid "Save Defaults" +msgstr "Презададени Настройки" + +#, c-format +msgid "%s Theme Settings" +msgstr "Настройки за стила %s" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Това са главните настройки за стиловете на Галерията. Те могат да бъдат променени и във " +"всеки стил по-отделно." + +msgid "Available" +msgstr "" + +msgid "Choose a block" +msgstr "" + +msgid "Selected" +msgstr "" + +msgid "Remove" +msgstr "Премахнете" + +msgid "Move Up" +msgstr "Преместете Нагоре" + +msgid "Move Down" +msgstr "Преместете Надолу" + +msgid "Parameter" +msgstr "Параметър" + +msgid "Value" +msgstr "Стойност" + +msgid "There are no settings for this theme" +msgstr "" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "Настройки за стила %s" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "" + +msgid "Order" +msgstr "" + +msgid "up" +msgstr "нагоре" + +msgid "down" +msgstr "надолу" + +msgid "User Management" +msgstr "Настройки за Потребителите" + +#, c-format +msgid "Removed user '%s'" +msgstr "Потребителя '%s' е премахнат" + +#, c-format +msgid "Created user '%s'" +msgstr "Създаден е потребителя '%s'" + +#, c-format +msgid "Modified user '%s'" +msgstr "Променен е потребителя '%s'" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "В системата има %d потребител." +msgstr[1] "В системата има общо %d потребителя." + +msgid "Edit User" +msgstr "Променете следния потребител" + +msgid "You cannot delete yourself!" +msgstr "Не можете да се самоизтриете!" + +msgid "You cannot delete the special guest user." +msgstr "Не можете да изтриете специалния потребител 'guest'." + +msgid "Edit User (by list)" +msgstr "Променете следния потребител (по списък)" + +msgid "Locked" +msgstr "" + +msgid "Failed Logins" +msgstr "" + +msgid "Thumbnails" +msgstr "" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" + +msgid "Create thumbnails now" +msgstr "" + +msgid "This is a test email from Gallery2" +msgstr "" + +# errorBody.tpl +msgid "Edit Conflict!" +msgstr "" + +msgid "Security Violation" +msgstr "Нарушение на Сигурността" + +msgid "Database Error" +msgstr "Грешка в Базата Данни" + +msgid "Platform Error" +msgstr "" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Големина на Анимацията" + +msgid "Error" +msgstr "Грешка" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" + +msgid "Go back and try again" +msgstr "Върнете се обратно и опитайте отново" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "Изтриите временните файлове на базата данни" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" + +msgid "The action you attempted is not permitted." +msgstr "" + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "" + +msgid "Back to the Gallery" +msgstr "Назад към Галерията" + +msgid "Error Detail" +msgstr "Детайли на Грешката" + +msgid "System Information" +msgstr "Информация за Системата" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" + +msgid "Add Sub-Album" +msgstr "Добавете Под-Албум" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Въведете тук името на под-албума, което трябва да е уникално за този албум. Използвайте само " +"нормални букви и цифри, както също тирета и знаци за подчертано." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Въведеното име съдърва невалидни знаци. Моля опитайте с друго." + +msgid "You must enter a name for this album." +msgstr "Трябва да въведете име за този албум." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Въведеното име е вече в употреба. Моля опитайте с друго." + +msgid "This is the album title." +msgstr "Това е заглавието на албума." + +msgid "This is the album summary." +msgstr "Това е резюмето на албума." + +msgid "Keywords are not visible, but are searchable." +msgstr "Ключовите думи са невидими, но по тях може да се търси." + +msgid "This is the long description of the album." +msgstr "Това е дългото описание на албума." + +msgid "Create" +msgstr "Създайте" + +msgid "Upload Complete" +msgstr "" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "" +msgstr[1] "" + +msgid "No files added." +msgstr "" + +#, c-format +msgid "Added %s" +msgstr "" + +#, c-format +msgid "Failed to add %s" +msgstr "" + +msgid "Add more files" +msgstr "Добавете още файлове" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" + +msgid "Upload files directly from your computer." +msgstr "" + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "" + +msgid "Assign caption to:" +msgstr "" + +msgid "No Thumbnail" +msgstr "" + +msgid "Delete Items" +msgstr "" + +msgid "No items were selected for deletion" +msgstr "Не са избрани елементи за изтриване" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d елемент е успешно изтрит" +msgstr[1] "%d елемента са успешно изтрити" + +msgid "This album contains no items to delete" +msgstr "Този албум няма елементи за изтриване" + +msgid "Choose the items you want to delete" +msgstr "" + +#, c-format +msgid "(page %d of %d)" +msgstr "(страница %d от общо %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(албум съдържащ %d елемент)" +msgstr[1] "(албум съдържащ %d елемента)" + +msgid "(empty album)" +msgstr "(празен албум)" + +msgid "Check All" +msgstr "" + +msgid "Check None" +msgstr "" + +msgid "Invert" +msgstr "" + +msgid "Previous Page" +msgstr "Предишна Страница" + +msgid "Next Page" +msgstr "Следваща Страница" + +msgid "Deletion Complete" +msgstr "" + +msgid "Item successfully deleted" +msgstr "" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "" + +msgid "There was a problem processing your request." +msgstr "" + +msgid "Sort order" +msgstr "" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" + +#, fuzzy +msgid "Apply to all subalbums" +msgstr "Приложете към под-елементите" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" + +msgid "You must enter a number (greater than zero)" +msgstr "" + +msgid "Use this thumbnail size in all subalbums" +msgstr "" + +msgid "Resized Images" +msgstr "" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" + +msgid "Active" +msgstr "" + +msgid "Target Size (pixels)" +msgstr "" + +msgid "You must enter a valid size" +msgstr "" + +msgid "Use these target sizes in all subalbums" +msgstr "" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Приложете към под-елементите" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "Приложете към под-елементите" + +msgid "Build thumbnails too" +msgstr "" + +msgid "Apply album setting to resized images" +msgstr "" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" + +msgid "Width" +msgstr "Ширина" + +msgid "You must enter a value greater than or equal to 0" +msgstr "" + +msgid "Height" +msgstr "Височина" + +msgid "There were errors saving some items" +msgstr "" + +msgid "There were errors saving all items" +msgstr "" + +msgid "Successfully saved all items" +msgstr "" + +msgid "This album contains no items" +msgstr "Този албум не съдържа елементи" + +msgid "Saved successfully." +msgstr "" + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" + +msgid "You do not have permissions to modify this item." +msgstr "" + +msgid "Save and Done" +msgstr "" + +# %s is number of items per page +#, c-format +msgid "Save and Edit Previous %s" +msgstr "" + +# %s is number of items per page +#, c-format +msgid "Save and Edit Next %s" +msgstr "" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Името на този елемент. Трябва да е уникално за този албум. Използвайте само букви и цифри, " +"знак за подчертано и тире. " + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Името съдържа невалидни знаци. Моля изберете друго." + +msgid "You must enter a name for this item." +msgstr "Трябва да въведете име за този елемент." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Името което въведохте вече е в употреба. Моля изберете друго. " + +msgid "The title of this item." +msgstr "Заглавие на този елемент." + +msgid "The root album must have a title." +msgstr "Главния албум трябва да има заглавие." + +msgid "The summary of this item." +msgstr "Резюме на този елемент." + +msgid "This is the long description of the item." +msgstr "Това е по-пълното описания на елемента." + +# %s is localized name of item at hand +#, c-format +msgid "%s Date and Time" +msgstr "Дата и час за %s" + +msgid "Set the date and time when this image was captured." +msgstr "Нагласете датата и часа когато снимката е заснета." + +msgid "Set the date and time to be displayed for this item." +msgstr "Нагласете датата и часа които да са показани за този елемент." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Нагласете датата и часа които да са показани за %s." + +msgid "Date:" +msgstr "Дата:" + +msgid "Time:" +msgstr "Час:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" + +msgid "You must enter a valid date and time" +msgstr "Трябва да въведете валидна дата и час" + +msgid "Thumbnail" +msgstr "Миниатюрно изображение" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "Трябва да въведете име за този елемент." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" + +msgid "Resized Photos" +msgstr "" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" + +msgid "Aspect Ratio: " +msgstr "" + +msgid "Crop" +msgstr "" + +#, fuzzy +msgid "Undo Changes" +msgstr "Променете" + +msgid "Reset to default" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" + +msgid "Rotate" +msgstr "Завъртете" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Можете да завъртате снимката само на по 90 градусови интервали." + +msgid "CC 90°" +msgstr "Обратно на часовниковата стрелка на 90°" + +msgid "180°" +msgstr "На 180°" + +msgid "C 90°" +msgstr "По часовниковата стрелка на 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" + +msgid "Scale" +msgstr "" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" + +msgid "You must enter a size" +msgstr "" + +msgid "Preserve Original" +msgstr "" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "" + +msgid "Modified Photo" +msgstr "" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" + +msgid "Restore original" +msgstr "" + +msgid "Choose a theme" +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "" + +msgid "Choose Theme" +msgstr "" + +#, c-format +msgid "Configure the %s theme" +msgstr "" + +msgid "These settings only apply to the theme for this album." +msgstr "" + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" + +msgid "Album Highlight" +msgstr "" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" + +msgid "Highlight for:" +msgstr "" + +msgid "Highlight" +msgstr "" + +msgid "Move an Item" +msgstr "" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to move." +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Choose the items you want to move" +msgstr "" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" + +msgid "You are not allowed to move this item away from here." +msgstr "" + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "" + +msgid "You cannot move an album into its own subtree." +msgstr "" + +msgid "Destination" +msgstr "Място на преместване" + +msgid "Choose a new album for them" +msgstr "" + +msgid "You don't have the permission to add items in this album" +msgstr "Нямате права за добавяне на елементи в този албум" + +msgid "No destination chosen" +msgstr "Не сте избрали място на преместване" + +msgid "Move" +msgstr "Преместете" + +msgid "Successfully moved" +msgstr "Успешно преместено" + +msgid "Choose a destination album" +msgstr "Посочете каде искате да преместите албума" + +msgid "Permissions" +msgstr "Права за достъп" + +msgid "Owner changed successfully" +msgstr "Собственика е успешно променен" + +msgid "Group permission added successfully" +msgstr "Избрания групов достъп е успешно добавен" + +msgid "User permission added successfully" +msgstr "Избрания потребителски достъп е успешно добавен" + +msgid "Group permission removed successfully" +msgstr "Избрания групов достъп е успешно премахнат" + +msgid "User permission removed successfully" +msgstr "Избрания потребителски достъп е успешно премахнат" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Всеки елемент има собствени права за достъп. Промяна на правата за досъп на по-горен елемент " +"(например албум), не влияе на правата за достъп на елемента отдолу (например снимката). Това " +"позволява да ограничите достъпа до по-горния елемент, но да позволите достъп до по-долния " +"елемент, или обратно. Най-ефикасния начин да използвате системата за достъп е да създатете " +"групи и да им определите права за достъп. След това ако искате да дадете права за достъп на " +"някой потребител, можете да го добавите или премахнете от подходящата група." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Този елемент се притежава от %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Този елемент се притежава от %s (%s)" + +msgid "New owner" +msgstr "Нов собственик" + +msgid "Change" +msgstr "Променете" + +msgid "Apply new owner to sub-items" +msgstr "Приложете новия собственик към под-елементите" + +msgid "You must enter a user name" +msgstr "Трябва да въведете потребител" + +msgid "The user name you entered is invalid" +msgstr "Веведения потребител е невалиден" + +msgid "Apply changes" +msgstr "Приложете промените" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Този елемент има под-елементи. Промените направени тук, могат да бъдат приложени само към " +"този елемент или към нето и всички негови под-елементи. Отбележете че прилагането на " +"промените към под-елементите ще обедини сегашните ви промени със съществуващите права за " +"достъп и това може да отнеме много време ако имате прекалено много под-елементи. По-" +"ефективно е да дадете права за достъп на дадени групи и след това да добавяте или премахвате " +"потребители от тези групи. Пренастроено е промените да се прилагат и към под-елементите." + +msgid "Apply to sub-items" +msgstr "Приложете към под-елементите" + +msgid "Group Permissions" +msgstr "Групови Права за Достъп" + +msgid "Group name" +msgstr "Група" + +msgid "Permission" +msgstr "Права за Достъп" + +msgid "New Group Permission" +msgstr "Нов Достъп за Група" + +msgid "Add Permission" +msgstr "Добавете Достъп" + +msgid "The permission you chose is invalid" +msgstr "" + +msgid "The group name you entered is invalid" +msgstr "Въведеното име на група е невалидно" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "" + +msgid "User Permissions" +msgstr "Потребителски Права за Достъп" + +msgid "User name" +msgstr "Потребител" + +msgid "New User Permission" +msgstr "Нов Достъп за Потребител" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "" + +msgid "Reorder Album" +msgstr "Пренаредете Елементите в Албума" + +#, fuzzy +msgid "Order saved successfully" +msgstr "Собственика е успешно променен" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" + +msgid "change" +msgstr "" + +msgid "Change the order of the items in this album." +msgstr "Променете реда на елементите в този албум." + +msgid "Move this item" +msgstr "" + +msgid "before" +msgstr "" + +msgid "after" +msgstr "" + +msgid "Reorder" +msgstr "" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +#, fuzzy +msgid "Admin Login" +msgstr "Административни Настройки" + +msgid "Enter a URL" +msgstr "" + +msgid "Enter some text describing the URL" +msgstr "" + +msgid "Enter an image URL" +msgstr "" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "" + +msgid "image" +msgstr "изображение" + +#, fuzzy +msgid "color" +msgstr "ядро" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "" + +msgid "Missing Theme" +msgstr "" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +msgid "Admin Options" +msgstr "Административни Настройки" + +msgid "User Options" +msgstr "Потребителски Настройки" + +msgid "Password changed successfully" +msgstr "Паролата е успешно сменена" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" + +msgid "Current Password" +msgstr "Сегашна Парола" + +msgid "You must enter your current password" +msgstr "Трябва да въвдете сегашна си парола" + +msgid "Incorrect password" +msgstr "Грешна Парола" + +msgid "New Password" +msgstr "Нова Парола" + +msgid "You must enter a new password" +msgstr "Трябва да въведете нова парола" + +msgid "Verify New Password" +msgstr "" + +msgid "You must enter your new password again!" +msgstr "" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "" + +msgid "Your password has been recovered, please login." +msgstr "" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "" + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "Трябва да въведете e-mail адрес" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "Трябва да въвдете сегашна си парола" + +msgid "Recover a lost or forgotten password" +msgstr "" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" + +msgid "Your recovery request has been sent!" +msgstr "" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +msgid "Recover" +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" + +msgid "Recover Password for Username" +msgstr "" + +msgid "You must enter a username to recover the password for." +msgstr "" + +msgid "The username you entered does not exist." +msgstr "" + +msgid "Authorization Incorrect" +msgstr "" + +msgid "Recovery Instructions" +msgstr "" + +msgid "AuthFile Missing" +msgstr "" + +msgid "AuthFile Unreadable" +msgstr "" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" + +msgid "Refresh" +msgstr "" + +msgid "This page will allow you to reset the password on your account." +msgstr "" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "" + +msgid "Username missing" +msgstr "" + +msgid "Submit" +msgstr "Въведете" + +#, c-format +msgid "Hello %s," +msgstr "" + +# used in email, arg1 = baseUrl, arg2 = ip address, arg3 = date +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" + +#, c-format +msgid "Your username is: %s" +msgstr "" + +# used in email +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" + +# used in email +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" + +msgid "Thank you!" +msgstr "" + +msgid "guest" +msgstr "посетител" + +#, c-format +msgid "display mode: %s" +msgstr "показване като за: %s" + +#, c-format +msgid "Date: %s" +msgstr "Дата: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Притежател: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Брой: %d елемент" +msgstr[1] "Брой: %d елемента" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(общо %d елемент)" +msgstr[1] "(общо %d елемента)" + +#, c-format +msgid "Views: %d" +msgstr "Прегледано: %d пъти" + +msgid "« album actions »" +msgstr "« действия за албума »" + +msgid "« item actions »" +msgstr "« действия за елемента »" + +msgid "Go" +msgstr "" + +msgid "Navigation" +msgstr "Навигация" + +msgid "next" +msgstr "следваща" + +msgid "last" +msgstr "последна" + +#, c-format +msgid "Page %d of %d" +msgstr "Страница %d от общо %d" + +#, c-format +msgid "%d of %d" +msgstr "%d от %d" + +msgid "first" +msgstr "първа" + +msgid "previous" +msgstr "предишна" + +msgid "Page:" +msgstr "Страница:" + +# sidebar.tpl: %d is number of item, %s is truncated title +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Full size: " +msgstr "" + +msgid "Setting" +msgstr "" + +msgid "Use Global" +msgstr "" + +msgid "Language selector" +msgstr "" + +msgid "Item actions" +msgstr "Действия за елемента" + +msgid "Use dropdown menu" +msgstr "" + +msgid "Login block" +msgstr "" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/ca.po b/Source/gallery2/modules/core/po/ca.po new file mode 100644 index 0000000..e0962dd --- /dev/null +++ b/Source/gallery2/modules/core/po/ca.po @@ -0,0 +1,3722 @@ +# $Id: ca.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Oscar Garcia Amor +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 15:57+0100\n" +"Last-Translator: Roger Cervantes \n" +"Language-Team: Catalan \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Gallery Email Test" +msgstr "Prova de Correu de Gallery" + +msgid "forever" +msgstr "per sempre" + +msgid "High Priority (Me first!)" +msgstr "Prioritat Alta (jo primer!)" + +msgid "Low Priority (I want to share!)" +msgstr "Prioritat baixa (vull compartir!)" + +msgid "No Markup" +msgstr "Sense format" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML Raw" + +msgid "Database" +msgstr "Base de Dades" + +msgid "File" +msgstr "Arxiu" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minuts" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d hores" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dia" +msgstr[1] "%d dies" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d setmana" +msgstr[1] "%d setmanes" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Sense acceleració" + +msgid "Partial acceleration" +msgstr "Acceleració Parcial" + +msgid "Full acceleration" +msgstr "Acceleració Total" + +msgid "Themes" +msgstr "Temes" + +#, fuzzy +msgid "Updating Repository Index" +msgstr "Actualitza l'índex" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Millora tots els plugins" + +msgid "Done." +msgstr "Fet" + +msgid "Updating Packages" +msgstr "" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Processant..." + +#, c-format +msgid "Downloading %s" +msgstr "Descarregant %s" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Accions" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Idioma per defecte" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Càrrega Completa" + +#, fuzzy +msgid "Update complete." +msgstr "Càrrega Completa" + +msgid "install" +msgstr "instal·lar" + +msgid "upgrade" +msgstr "actualitzar" + +msgid "activate" +msgstr "activar" + +msgid "uninstall" +msgstr "desinstal·lar" + +msgid "deactivate" +msgstr "desactivar" + +msgid "Inherit settings from parent album" +msgstr "Heretar configuració de l'àlbum superior" + +msgid "Use these settings" +msgstr "Usar aquesta configuració" + +msgid "Installing the core module" +msgstr "Mòdul central de Gallery" + +msgid "key" +msgstr "clau" + +msgid "All access" +msgstr "Accés Total" + +msgid "[core] View item" +msgstr "[core] Veure element" + +msgid "[core] View resized version(s)" +msgstr "[core] Veure versio(ns) escalade(s) " + +msgid "[core] View original version" +msgstr "[core] Veure la versió original" + +msgid "[core] View all versions" +msgstr "[core] Veure totes les versions" + +msgid "[core] Add sub-album" +msgstr "[core] Agregar sub-àlbum" + +msgid "[core] Add sub-item" +msgstr "[core] Agregar sub-element" + +msgid "[core] Edit item" +msgstr "[core] Editar element" + +msgid "[core] Change item permissions" +msgstr "[core] Canviar els permisos de l'element" + +msgid "[core] Delete item" +msgstr "[core] Borrar element" + +msgid "Upgrading permissions" +msgstr "Actualitzant permisos" + +msgid "Deleting old permission tables" +msgstr "Borrant les taules de permisos antigues" + +msgid "Registered Users" +msgstr "Usuaris Registrats" + +msgid "All Users" +msgstr "Tots els Usuaris" + +msgid "Detecting broken derivatives" +msgstr "Detectant derivades trencades" + +msgid "Clearing fast-download cache" +msgstr "Borrant la cache de descàrrega ràpida" + +msgid "Deleting old fast-download cache" +msgstr "Borrant la cache de descàrrega ràpida" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Administradors de la Web" + +msgid "Everybody" +msgstr "Tots" + +msgid "Guest" +msgstr "Convidat" + +msgid "Gallery" +msgstr "Galeria" + +msgid "This is the main page of your Gallery" +msgstr "Aquesta és la pàgina principal de la teva Galeria" + +msgid "Converting MySQL data to UTF8" +msgstr "Convertint dades de MySQL a UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Permissos de millora (%d items completats, %d pendents)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Detectant derivades trencades, carregant " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Detectant derivades trencades, guardant" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Detectant derivades trencades, guardant" + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Permissos de millora (%d items completats, %d pendents)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Borrant arxius de sessió antics (iteració %d)" + +msgid "add items" +msgstr "agregar elements" + +msgid "Album created successfully." +msgstr "Àlbum creat amb èxit." + +msgid "add sub-album" +msgstr "agregar sub-àlbum" + +msgid "add items confirmation" +msgstr "confirmació per agregar elements" + +msgid "Base filename" +msgstr "Nom del fitxer rael" + +msgid "Caption" +msgstr "Etiqueta" + +msgid "Blank" +msgstr "En blanc" + +msgid "From Web Browser" +msgstr "Desde el Navegador" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabytes" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobyte" +msgstr[1] "%d kilobytes" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Administració d'Elements de Gallery" + +msgid "delete an item" +msgstr "borrar un element" + +msgid "delete confirmation" +msgstr "confirmació de borrat" + +#, c-format +msgid "delete %s" +msgstr "borrar %s" + +#, c-format +msgid "edit %s" +msgstr "editar %s" + +msgid "Settings saved successfully." +msgstr "Configuracions guardades amb èxit." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Restaurar la configuració del tema" + +#, fuzzy +msgid "Preparing..." +msgstr "Processant..." + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "Refer miniatures" + +msgid "Album" +msgstr "Àlbum" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Processant imatge %d de %d" + +msgid "Changes saved successfully" +msgstr "Els canvis han estat guardats amb èxit" + +msgid "Animation Size" +msgstr "Mida de la animació" + +msgid "edit captions" +msgstr "editar etiquetes" + +msgid "General" +msgstr "General" + +msgid "Movie Size" +msgstr "Mida de la Pel·lícula" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Miniatura retallada amb èxit" + +msgid "Thumbnail reset successfully" +msgstr "Miniatura reiniciada amb èxit" + +msgid "Photo 5x3" +msgstr "Fotografia 5x3" + +msgid "Photo 6x4" +msgstr "Fotografia 6x4" + +msgid "Photo 7x5" +msgstr "Fotografia 7x5" + +msgid "Photo 10x8" +msgstr "Fotografia 10x8" + +msgid "Fullscreen 4x3" +msgstr "Pantalla completa 4x3" + +msgid "Widescreen 16x9" +msgstr "Format Panoràmic 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Quadrat 1x1" + +msgid "As Image" +msgstr "Com Imatge" + +msgid "Landscape" +msgstr "Apaïsat" + +msgid "Portrait" +msgstr "Retrat" + +msgid "Crop Thumbnail" +msgstr "Retallar Miniatura" + +msgid "Reverted rotate and scale changes successfully" +msgstr "S'ha desfet la rotació i l'escalat amb èxit" + +msgid "Rotated photo successfully" +msgstr "Foto rotada amb èxit" + +msgid "Scaled photo successfully" +msgstr "Foto escalada amb èxit" + +msgid "Modify Photo" +msgstr "Modificar foto" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "Tema %s activat amb èxit" + +msgid "« default theme »" +msgstr "« tema per defecte »" + +msgid "Theme" +msgstr "Tema" + +msgid "make highlight" +msgstr "destacar" + +msgid "move item" +msgstr "moure element" + +#, c-format +msgid "move %s" +msgstr "moure %s" + +#, c-format +msgid "edit %s permissions" +msgstr "editar els permisos de %s" + +msgid "reorder items" +msgstr "reordenar elements" + +msgid "Maintenance" +msgstr "Manteniment" + +msgid "Gallery Site Administration" +msgstr "Administració de Gallery" + +msgid "site admin" +msgstr "administrar web" + +msgid "Gallery User Administration" +msgstr "Administrador d'usuaris" + +msgid "change password" +msgstr "canviar contrasenya" + +msgid "your account" +msgstr "el teu compte" + +msgid "Password Recovery" +msgstr "Recuperar contrasenya" + +msgid "Core" +msgstr "Central" + +msgid "Gallery 2 Core Module" +msgstr "Mòdul Central de Gallery 2" + +msgid "Add Items" +msgstr "Agregar Elements" + +msgid "Edit Album" +msgstr "Editar Àlbum" + +msgid "Edit Photo" +msgstr "Editar Foto" + +msgid "Edit Movie" +msgstr "Editar Pel·lícula" + +msgid "Add Album" +msgstr "Agregar Àlbum" + +msgid "Edit Permissions" +msgstr "Editar Permisos" + +msgid "View Permissions" +msgstr "Veure Permisos" + +msgid "Delete Album" +msgstr "Borrar Àlbum" + +msgid "Delete Photo" +msgstr "Borrar Foto" + +msgid "Delete Movie" +msgstr "Borrar Pel·lícula" + +msgid "Move Album" +msgstr "Moure Àlbum" + +msgid "Move Photo" +msgstr "Moure Foto" + +msgid "Move Movie" +msgstr "Moure Pel·lícula" + +msgid "Edit Captions" +msgstr "Editar Etiquetes" + +msgid "Make Highlight" +msgstr "Destacar" + +msgid "Reorder Items" +msgstr "Reordenar Elements" + +msgid "Site Admin" +msgstr "Administrar Web" + +msgid "Login" +msgstr "Iniciar Sessió" + +msgid "Your Account" +msgstr "El teu compte" + +msgid "Logout" +msgstr "Tancar Sessió" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "Usuaris" + +msgid "Groups" +msgstr "Grups" + +msgid "Performance" +msgstr "Rendiment" + +msgid "Toolkit Priority" +msgstr "Prioritat de las Eines" + +msgid "Graphics Toolkits" +msgstr "Eines Gràfiques" + +msgid "Account Settings" +msgstr "Propietats del Compte" + +msgid "Change Password" +msgstr "Canviar Contrasenya" + +#, c-format +msgid "Edit %s" +msgstr "Editar %s" + +#, c-format +msgid "Delete %s" +msgstr "Borrar %s" + +#, c-format +msgid "Move %s" +msgstr "Moure %s" + +msgid "Build all thumbnails/resizes" +msgstr "Crear totes les vistes en miniatura/Imatges redimensionades" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Assegurat que els arxius de dades per totes les derivades (vistes en miniatura, etc.) han " +"estat construïts i reconstrueix els que estiguin corruptes." + +msgid "Build All Thumbnails/Resizes" +msgstr "Crear Totes les vistes en miniatura/imatges redimensionades" + +msgid "Debug output for failed items:" +msgstr "Sortida de depuració per als elements que han fallat:" + +#, c-format +msgid "Checked %d items" +msgstr "%d elements sel·leccionats" + +#, c-format +msgid "%d items built" +msgstr "%d elements creats" + +#, c-format +msgid "%d items failed" +msgstr "%d elements que han fallat" + +#, fuzzy +msgid "Convert MySQL database to UTF8" +msgstr "Convertint dades de MySQL a UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "Element eliminat amb èxit" + +msgid "No conversion required" +msgstr "" + +msgid "Delete user sessions" +msgstr "Permisos del Sistema d'Arxius" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Elimina totes les sessions d'usuaris persistents d'acord a la vostra configuració " +"d'expiració de sessió." + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Permisos del Sistema d'Arxius" + +msgid "Delete database cache" +msgstr "Borrar la cache de la base de dades" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery emmagatzema la informació de la base de dades més freqüentment usada en disc per " +"incrementar el rendiment. Si modifiques directament la base de dades, has d'executar aquesta " +"tasca per borrar la cache y forçar a Gallery a recarregar la informació de la base de dades." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "El directori %s s'ha eliminat amb èxit" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "No es possible eliminar el directori %s" + +msgid "Delete template cache" +msgstr "Borrar la cache de les plantilles" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compila els fitxers de las plantilles i els guarda per incrementar el rendimient. " +"Si estàs experimentant problemes del tipus Smarty error pots intentar executar " +"aquesta tasca. Executa tambè aquesta tasca si borres algún fitxer de local/*.tpl per a que " +"«Smarty» torni a l'arxiu tpl per defecte." + +msgid "Template cache deleted successfully" +msgstr "La cache de plantilles s'ha borrat amb èxit" + +msgid "album" +msgstr "àlbum" + +msgid "Animation" +msgstr "Animació" + +msgid "animation" +msgstr "animació" + +msgid "Gallery Core" +msgstr "Central de Gallery" + +msgid "Gallery Core Module" +msgstr "Mòdul central de Gallery" + +msgid "Search descriptions" +msgstr "Buscar en les descripcions" + +msgid "Search keywords" +msgstr "Buscar en les paraules clau" + +msgid "Search summaries" +msgstr "Buscar en els sumaris" + +msgid "Search titles" +msgstr "Buscar en los títols" + +msgid "Description" +msgstr "Descripció" + +msgid "Keywords" +msgstr "Paraules clau" + +msgid "Summary" +msgstr "Resum" + +msgid "Title" +msgstr "Títol" + +msgid "Owner" +msgstr "Propietari" + +#, fuzzy +msgid "Dynamic Album" +msgstr "Editar Àlbum" + +#, fuzzy +msgid "dynamic album" +msgstr "Editar Àlbum" + +msgid "Group" +msgstr "Grup" + +msgid "group" +msgstr "grup" + +msgid "Other" +msgstr "Altre(s)" + +msgid "Movie" +msgstr "Pel·lícula" + +msgid "movie" +msgstr "pel·lícula" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "No s'ha pogut crear el cache de magatzems" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"No s'ha pogut crear el subdirectori de cache. Assegureu-vos que el servidor web hi té permís " +"d'escriptura." + +msgid "Official Release Repository" +msgstr "" + +#, fuzzy +msgid "Experimental Repository" +msgstr "Magatzem" + +#, fuzzy +msgid "Community Repository" +msgstr "Magatzem" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "S'ha produït un error descarregar l'índex desde '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "S'ha produït un error mentre es descarregavà l'índex de \"hash\" desde '%s'." + +msgid "Index integrity check failed." +msgstr "S'ha produït un error en comprovar l'integritat de l'índex" + +msgid "« default sort order »" +msgstr "« ordre de col·locació per defecte »" + +msgid "Manual sort order" +msgstr "Ordre de col·locació manual" + +msgid "Origination Date" +msgstr "Data d'origen" + +msgid "Creation Date" +msgstr "Data de creació" + +msgid "Last Changed Date" +msgstr "Data de l'últim canvi" + +msgid "Name" +msgstr "Nom" + +msgid "View Count" +msgstr "Ver Comptador" + +msgid "Random" +msgstr "Aleatori" + +msgid "« no presort »" +msgstr "« sense ordre »" + +msgid "Albums First" +msgstr "Àlbums Primer" + +msgid "Most Viewed First" +msgstr "Les més vistes primer" + +msgid "Ascending" +msgstr "Ascendent" + +msgid "Descending" +msgstr "Descendent" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validació deshabilitada fins que es configuri allowSessionAccess al config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Aquesta pàgina es XHTML 1.0 vàlid" + +msgid "Donate to the Gallery project" +msgstr "Dóna al projecte Gallery" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Temps restant estimat: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Memòria usada: %s, total: %s" + +msgid "Rows per album page" +msgstr "Files per pàgina de àlbum" + +msgid "Columns per album page" +msgstr "Columnes per pàgina de àlbum" + +msgid "Number of items to show per page" +msgstr "Número d'elements per pàgina" + +msgid "Row height (pixels)" +msgstr "Alçada de la fila (en píxels)" + +msgid "Column width (pixels)" +msgstr "Amplada de la columna (en píxels)" + +msgid "Show image owners" +msgstr "Mostrar propietaris de les imatges" + +msgid "Show album owners" +msgstr "Mostrar propietaris dels àlbums" + +msgid "Show micro navigation thumbnails" +msgstr "Mostrar micro miniatures de navegació" + +msgid "Blocks to show in the sidebar" +msgstr "Blocs per mostrar en la barra lateral" + +msgid "Blocks to show on album pages" +msgstr "Blocs per mostrar en las pàgines dels àlbums" + +msgid "Blocks to show on photo pages" +msgstr "Blocs per mostrar en las pàgines de les fotos" + +#, fuzzy +msgid "Thumbnail links in dynamic albums" +msgstr "Utilitza aquestes mides de miniatura per a tots els subàlbums" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "Elegeix un àlbum de destí" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "Veure Exemples" + +msgid "Album Frame" +msgstr "Quadre de l'Àlbum" + +msgid "Item Frame" +msgstr "Quadre de l'Element" + +msgid "Photo Frame" +msgstr "Quadre de la foto" + +msgid "Color Pack" +msgstr "Pack de Color" + +msgid "You must enter a number greater than 0" +msgstr "Has d'escriure un número major que zero" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Arxiu" + +msgid "archive" +msgstr "arxiu" + +msgid "Document" +msgstr "Document" + +msgid "document" +msgstr "document" + +msgid "Spreadsheet" +msgstr "Fulles de Càlcul" + +msgid "spreadsheet" +msgstr "Fulles de Càlcul" + +#, fuzzy +msgid "file" +msgstr "Arxiu" + +msgid "Back" +msgstr "Enrere" + +#, c-format +msgid "Back to %s" +msgstr "Tornar a %s" + +msgid "User" +msgstr "Usuari" + +msgid "user" +msgstr "usuari" + +msgid "Optimize database" +msgstr "Optimitzar base de dades" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Millora el rendimient de la teva base de dades. Els resultats variaran depenent amb quina " +"base de dades estiguis treballant, però aquesta rutina de mantenimient farà que el teu " +"Gallery funcioni més ràpid. Especialment pràctic després d'agregar o borrar molts elements." + +msgid "Database optimized successfully" +msgstr "La Base de Dades s'ha optimitzat amb èxit" + +msgid "Reset view counts" +msgstr "Reiniciar contadors de visites" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Reinicia el número de visites a zero en tots els àlbums y elements. Aquesta tasca borra " +"també la cache de la base de dades." + +msgid "View counts reset successfully" +msgstr "Els contadors de visites s'han reiniciat amb èxit" + +msgid "Refresh capture dates" +msgstr "Actualitzar les dates de les captures" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Actualitza la data de captura emmagatzemada en Gallery en tots els elements que la tinguin " +"disponible en el fitxer original (normalment desde les dades EXIF)." + +msgid "Processing..." +msgstr "Processant..." + +msgid "Refresh Capture Dates" +msgstr "Actualitzar les Dates de les Captures" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Procesant element %d de %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Actualitzats %d de %d elements" + +msgid "System information" +msgstr "Informació del Sistema" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Obté els detalls del sistema; pràctic per a fer un copiar/pegar en el fòrum de suport de G2." + +msgid "core" +msgstr "central" + +msgid "unknown" +msgstr "desconegut" + +msgid "Gallery version" +msgstr "Versió de Gallery" + +msgid "PHP version" +msgstr "Versió de PHP" + +msgid "Webserver" +msgstr "Servidor Web" + +msgid "Toolkits" +msgstr "Eines" + +msgid "Acceleration" +msgstr "Acció" + +msgid "Operating system" +msgstr "Sistema Operatiu" + +msgid "Default theme" +msgstr "Tema per defecte" + +msgid "gettext" +msgstr "gettext" + +#, fuzzy +msgid "enabled" +msgstr "Instal·lat" + +#, fuzzy +msgid "disabled" +msgstr "%d elements que han fallat" + +msgid "Locale" +msgstr "Locale" + +msgid "Browser" +msgstr "Buscador" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "La configuració del tema s'ha guardat amb èxit" + +msgid "General Settings" +msgstr "Configuració General" + +msgid "Settings saved successfully" +msgstr "La configuració s'ha guardat amb èxit" + +msgid "Added local upload directory successfully" +msgstr "S'ha creat el directori local de pujada amb èxit" + +msgid "Removed local upload directory successfully" +msgstr "S'ha eliminat el directori local de pujada amb èxit" + +msgid "Test email sent successfully" +msgstr "Prova de enviament de correu conclosa amb èxit" + +msgid "There was a problem processing your request, see below for details." +msgstr "Hi ha hagut un problema processant la teva petició, veure abaix els detalls." + +msgid "Error sending test email, see below for details." +msgstr "Hi ha hagut un problema enviant el correu de prova, veure abaix els detalls." + +msgid "Language Settings" +msgstr "Configuració de l'Idioma" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Selecciona l'idioma per defecte de Gallery. Els usuaris poden anul·lar aquesta configuració " +"en les seves preferències personals o via bloc selector d'idioma si hi és disponible." + +msgid "Default language" +msgstr "Idioma per defecte" + +msgid "Check Browser Preference" +msgstr "Comprova la preferència del navegador" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"El teu servidor web no suporta localització. Si us plau, avisa al teu administrador del " +"sistema que reconfiguri PHP amb la opció %s habilitada." + +msgid "Date Formats" +msgstr "Formats de Data" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Especifica com les Dates i les hores es mostren en Gallery. Visita %sphp.net%s per veure " +"detalls de com introduïr el format de les cadenes. Nota que la representació de les cadenes " +"varia depenent de l'idioma actiu." + +msgid "Style" +msgstr "Model" + +msgid "Format" +msgstr "Format" + +msgid "Sample" +msgstr "Exemple" + +msgid "Date" +msgstr "Data" + +msgid "Time" +msgstr "Hora" + +msgid "Date/Time" +msgstr "Data/Hora" + +msgid "Filesystem Permissions" +msgstr "Permisos del Sistema d'Arxius" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Especifica els permisos per defecte per als arxius i directoris que Gallery crea. Això no és " +"aplicable als arxius/directoris que Gallery ja ha creat." + +msgid "New directories" +msgstr "Nous directoris" + +msgid "New files" +msgstr "Nous fitxers" + +msgid "Session Settings" +msgstr "Ajustaments de la Sessió" + +msgid "Session Lifetime" +msgstr "Temps de vida de la Sessió" + +msgid "Inactivity Timeout" +msgstr "Interrupció per Inactivitat" + +msgid "Embedded Markup" +msgstr "Format Embedit" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"¿Quin tipus de format hem d'usar en els camps d'usuaris? Per qüestions de seguritat " +"recomanem que no s'utilitzi HTML pur. El codi BB es una clase especial de format segur que " +"permet el formateig simple del texte com: negretes, itáliques, llistes, imatges i urls." + +msgid "Markup" +msgstr "Format" + +msgid "Email" +msgstr "Correu Electrònic" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Per defecte Gallery usa la funció de correu interna de PHP per a enviar correus sense " +"demanar configuració prèvia. Per usar un servidor de correu smtp introdueix la informació a " +"continuació, incloient la informació d'autenticació si es necessari. Opcionalment agrega :" +"port després del nom del servidor per usar un port no estàndard." + +msgid "Server" +msgstr "Servidor" + +msgid "Username" +msgstr "Usuari" + +msgid "Password" +msgstr "Contrasenya" + +msgid "SMTP From Address" +msgstr "Adreça de Resposta" + +msgid "Invalid email address" +msgstr "Adreça de correu no vàlida" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Envia un missatge de correu de prova per verificar que la teva configuració és correcta " +"(tant si s'usa la funció de correu PHP com la configuració SMTP). A continuació introdueix " +"l'adreça del destinatari per al missatge de prova." + +msgid "Send Email" +msgstr "Enviar Correu Electrònic" + +msgid "Email Test Error" +msgstr "La Prova de Correu ha notificat Error" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Cuan Gallery està embebida en un altra aplicació (portal, CMS, forum, etc.), pots escollir " +"entre dues opcions. En qualsevol altre cas no has de preocupar-te per els ajustaments de la " +"cookie. Segueix llegint per a més detalls." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Si Gallery està embebida i deixes els següents camps buits, llavors tots els enllaços " +"Descarregar Element (les URLs de les imatges i altres objectes) en la Gallery embebida " +"tindran una cadena de texte GALLERYSID afegida a la URL el que suposa un risc de " +"seguretat menor quant els usuaris de Gallery comencen a copiar i pegar les URLs de las " +"imatges en fòrums, llibres de visita, etc. L'alternativa és configurar la ruta a la " +"cookie. Gallery llavors no afegirà la GALLERYSID a les URLs embebides de Descarregar " +"Element. la ruta /application/gallery2/ con /application/. La ruta de la cookie es la " +"parte de las rutas que es igual, en este caso es '/application/'. Por lo general suele ser " +"solo '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"El domini de la cookie és solament necessari per a instal·lacions embebides de " +"Gallery i solament si et vols desfer de la cadena de texte GALLERYSID en les URLs embebides " +"de Descarregar Element. En la majoria dels casos, el domini de la cookie es pot deixar en " +"blanc. Habilíta-ho només si Gallery i la aplicació que la esta embebent siguin únicament " +"abastable amb diferents subdominis. Ej. quan Gallery estigui en http://photos.exemple." +"com/ i la aplicació estigui en http://www.exemple.com/, llavors hauràs d'habilitar el domini " +"de la cookie exemple.com (la part de la cadena de texte del servidor que és comú en les " +"dues, Gallery i la aplicació que la està embebent." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Un cop que canvïis les configuracions de la cookie, tots els usuaris registrats de la " +"teva Gallery hauran de netejar la caché de les cookies dels seus navegadors. Si no ho " +"fan, experimentaran problemes d'autentificació / tancament de sessió / pèrdua de sessió." + +msgid "Path" +msgstr "Ruta" + +msgid "Invalid cookie path" +msgstr "La ruta de la cookie no és vàlida" + +msgid "Domain" +msgstr "Domini" + +msgid "Invalid cookie domain" +msgstr "El domini de la cookie no és vàlid" + +msgid "Locking System" +msgstr "Sistema de Bloqueig" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery utilitza un sistema de bloquejos que prevenen canvis simultànis que interfereixin " +"amb altres. Hi ha dos tipus de bloqueig, cada un amb els seus avantatges i inconvenients. " +"El sistema de bloqueig basat en Archivo es ràpid i eficient, però no funciona en un " +"sistema de fitxers NFS i en Windows es poc fiable. El sistema de bloqueig basat en Base " +"de Dades es mes lent pero mes fiable. Si no estas segur del què escollir, nosaltres " +"recomanem el sistema de bloqueig basat en arxiu. Si estàs tenint molts problemes de temps " +"d'espera, pots intentar canviar a la base de dades. Es pot canviar de un sistema a un altre " +"sense problemes" + +msgid "Lock system" +msgstr "Sistema de bloqueig" + +msgid "Helper Processes" +msgstr "Processos d'ajuda" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Alguns mòduls de Gallery utilitzen programes del servidor per al processament d'imatges, " +"emmagatzemament i altres operacions. Aquests programes poden comportàr fortes càrregues " +"computacinals i impactar en el rendiment global d'un servidor web compartit. Podeu executar " +"aquests programes en un nivell més baix de prioritat per a que funcionin correctament. Si us " +"trobeu en un sistema d'allotjament compartit i rebeu queixes, proveu de baixar la vostra " +"prioritat." + +msgid "Priority" +msgstr "Prioritat de les Eines" + +msgid "Save" +msgstr "Guardar" + +msgid "Reset" +msgstr "Reiniciar" + +msgid "Create A New Group" +msgstr "Crear Un Nou Grup" + +msgid "Group Name" +msgstr "Nom del Grup" + +msgid "(required)" +msgstr "(requerit)" + +msgid "You must enter a group name" +msgstr "Has d'instroduïr un nom per al grup" + +#, c-format +msgid "Group '%s' already exists" +msgstr "El grup '%s' ja existeix" + +msgid "Create Group" +msgstr "Crear Grup" + +msgid "Cancel" +msgstr "Cancel·lar" + +msgid "Create A New User" +msgstr "Crear Un Nou Usuari" + +msgid "You must enter a username" +msgstr "Has d'introduïr un nom per a l'usuari" + +#, c-format +msgid "Username '%s' already exists" +msgstr "L'usuari '%s' ja existeix" + +msgid "Full Name" +msgstr "Nom Complet" + +msgid "Email Address" +msgstr "Adreça de Correu Electrònic" + +msgid "You must enter an email address" +msgstr "Has d'introduïr una adreça de correu electrònic" + +msgid "Language" +msgstr "Idioma" + +msgid "You must enter a password" +msgstr "Has d'introduïr una contrasenya" + +msgid "Verify Password" +msgstr "Verificar Contrasenya" + +msgid "You must enter the password a second time" +msgstr "Has d'introduïr una contrasenya per segon cop" + +msgid "The passwords you entered did not match" +msgstr "Las contrasenyes que has escrit no coincideixen" + +msgid "Create User" +msgstr "Crear Usuari" + +msgid "Delete A Group" +msgstr "Borrar Un Grup" + +msgid "Are you sure?" +msgstr "¿Estàs segur?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Això eliminarà completament a %s de Gallery. ¡No hi ha volta enrere!" + +msgid "Delete" +msgstr "Borrar" + +msgid "Delete a User" +msgstr "Borrar un Usuari" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "L'usuari %s es el propietari de %s elements." + +#, c-format +msgid "Delete user %s and..." +msgstr "Borrar usuari %s i ..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Assignar un nou propietari per a tots els elements de %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Borrar tots els elements de %s i assignar un nou creador per tots els àlbums no buits que " +"quedin. Els elements que %s no tinguin permisos per borrar seran reasignats al nou creador." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Nou propietari (si es deixa en blanc s'interpreta un dels Administradors de la Web):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"¡L'usuari '%s' no existeix! No puc assignar elements a un usuari que no existeix." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "¡El nou propietari ha de ser diferent a l'usuari que estem borrant!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "¡El nou propietari no pot ser un usuari Invitat / Anònim!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Això eliminarà completament %s de Gallery. ¡No hi ha volta enrere!" + +msgid "Edit a group" +msgstr "Editar un grup" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Editar els Membres del Grup '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Afegit l'usuari '%s' al grup '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Eliminat l'usuari '%s' del grup '%s'" +msgstr[1] "Eliminats els usuaris %s del grup '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Aquest grup conté %d usuari" +msgstr[1] "Aquest grup conté %d usuaris" + +msgid "Members" +msgstr "Membres" + +msgid "« first" +msgstr "« primer" + +msgid "« back" +msgstr "« anterior" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Mostrant pàgina %d de %d" + +msgid "next »" +msgstr "següent »" + +msgid "last »" +msgstr "últim »" + +msgid "Filter" +msgstr "Filtrar" + +msgid "Clear" +msgstr "Netejar" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d usuari coincideix amb el teu filtre" +msgstr[1] "%d usuaris coincideixen amb el teu filtre" + +msgid "Remove selected" +msgstr "Eliminar seleccionat" + +msgid "You must select a user to remove." +msgstr "Has d'escollir un usuari per eliminar" + +msgid "You can't remove yourself from this group." +msgstr "No pots eliminar-te a tu mateix d'aquest grup." + +msgid "Add Member" +msgstr "Agregar Membre" + +msgid "Add" +msgstr "Agregar" + +msgid "You must enter a username." +msgstr "Has d'introduïr un nom d'usuari." + +#, c-format +msgid "User '%s' does not exist." +msgstr "L'usuari '%s' no existeix." + +msgid "This user already is in this group." +msgstr "Aquest usuari ja pertany a aquest grup." + +msgid "Done" +msgstr "Fet" + +msgid "Edit a user" +msgstr "Editar un usuari" + +msgid "That username is already in use" +msgstr "El nom d'usuari ja està en ús." + +msgid "You must enter a new username" +msgstr "Has d'introduïr un nou nom d'usuari" + +msgid "E-mail Address" +msgstr "Adreça de Correu Electrònic" + +msgid "(suggested)" +msgstr "(suggerit)" + +msgid "Options" +msgstr "Opcions" + +#, fuzzy +msgid "Lock user." +msgstr "Sistema de bloqueig" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +#, fuzzy +msgid "Reset failed login count." +msgstr "Reiniciar contadors de visites" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Gestió de Grups" + +#, c-format +msgid "Removed group '%s'" +msgstr "Eliminat grup '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Creat grup '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Modificat grup '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Hi ha %d grup al sistema." +msgstr[1] "Hi ha un total de %d grups al sistema." + +msgid "Edit Group" +msgstr "Editar Grup" + +msgid "Edit" +msgstr "Editar" + +msgid "Add/Remove Users" +msgstr "Agregar/Eliminar Usuaris" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "El grup '%s' no existeix." + +msgid "You cannot delete that group" +msgstr "No pots eliminar aquest grup" + +msgid "You cannot edit that group's users" +msgstr "No pots editar els usuaris d'aquest grup" + +msgid "Edit Group (by list)" +msgstr "Editar Grup (per llista)" + +msgid "Action" +msgstr "Acció" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "eliminar" + +msgid "members" +msgstr "membres" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d grup coincideix amb el teu filtre" +msgstr[1] "%d grups coincideixen amb el teu filtre" + +msgid "System Maintenance" +msgstr "Mantenimient del Sistema" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Completada la tasca %s amb èxit." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "La tasca %s ha fallat abans de completar-se" + +msgid "Task name" +msgstr "Nom de la tasca" + +msgid "Last run" +msgstr "Últim cop que es va executar" + +msgid "Success/Fail" +msgstr "Èxit/Fracàs" + +msgid "Not run yet" +msgstr "No s'ha executat encara" + +msgid "Success" +msgstr "Èxit" + +msgid "Failed" +msgstr "Fracàs" + +msgid "run now" +msgstr "executar ara" + +msgid "Last Run Details:" +msgstr "Detalls de l'última execució" + +msgid "Performance Tuning" +msgstr "Ajust de rendiment" + +msgid "Updated performance settings successfully" +msgstr "Prova d'enviament de correu conclosa amb èxit" + +msgid "Deleted all saved pages" +msgstr "Borrar totes les pàgines guardades" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Milloreu el rendiment del vostre Gallery emmagatzemant pàgines web senceres a la base de " +"dades. Això pot reduir considerablement la quantitat de recursos del servidor web i la base " +"de dades que es requereixen per a mostrar una pàgina web. El punt en contra és que la pàgina " +"web que veureu pot estar lleugerament desfasada, tot i que sempre podeu tenir la versió més " +"recent de la pàgina forçant un refresc en el navegador (normalment mantenint apretat la " +"tecla shift i clicant el botó de recàrrega)." + +msgid "Partial Acceleration" +msgstr "Acceleració parcial" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"L'acceleració parcial incrementa entre un 10-25% el rendiment, però algunes dades dinàmiques " +"(comptadors de vistes, etc) no s'actualitzaran correctament. Tot el contigut que apareix en " +"blocs (com el bloc d'imatge aleatoria, qualsevol bloc de la barra lateral, etc) sempre " +"estarà actualitzat." + +msgid "Full Acceleration" +msgstr "Acceleració completa" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"L'acceleració completa incrementa en quasi un 90% el rendiment, però les dades dinàmiques " +"(bloc d'imatge aleatòria, altres blocs de la barra lateral, número d'items a la cistella de " +"la compra, comptadors de vistes, etc) no s'actualitzaran fins que la pàgina salvada expiri." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Podeu especificar addicionalment quan expiren les pàgines desades. Un temps d'expiració més " +"gran reduirà la càrrega del servidor, però incrementarà l'interval abans que els usuaris " +"vegin canvis. Un temps d'expiració més petit significa que els usuaris veuran les dades més " +"actuals, però implica una càrrega major per al servidor." + +msgid "Here are some standard acceleration profiles:" +msgstr "Aquí hi ha alguns perfils d'acceleració estàndard:" + +msgid "Medium acceleration" +msgstr "Acceleració Mitja" + +msgid "High acceleration" +msgstr "Acceleració alta" + +msgid "Guest Users" +msgstr "Usuaris Registrats" + +msgid "Expires after:" +msgstr "Expira després de:" + +msgid "Clear Saved Pages" +msgstr "Borra les pàgines desades" + +msgid "Status: Inactive" +msgstr "Estat: Inactiu" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "desactivar __PLUGIN__" + +msgid "Status: Active" +msgstr "Estat: Actiu" + +msgid "__PLUGIN__ activated" +msgstr "" + +msgid "Status: Not Installed" +msgstr "Estat: No Instal·lat" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Estat: Requereix actualizació (Inactiu)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Estat: Mòdul Incompatible (Inactivo)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +msgid "__PLUGIN__ deleted" +msgstr "" + +#, fuzzy +msgid "Warning!" +msgstr "Avís:" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "¿Estàs segur de voler desinstal·lar el mòdul __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Això també traurà qualsevol permís i netejarà qualsevol informació temporal creada per " +"aquest mòdul." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "¿Estàs segur de voler desinstal·lar el mòdul __PLUGIN__?" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +msgid "up to date(__COUNT__)" +msgstr "" + +msgid "not installed(__COUNT__)" +msgstr "" + +msgid "upgrade required(__COUNT__)" +msgstr "" + +msgid "incompatible(__COUNT__)" +msgstr "" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Mòduls de Gallery" + +msgid "Get More Plugins" +msgstr "" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Les característiques de Gallery venen com mòduls separats. Pots descarregar i instal·lar " +"mòduls para afegir més característiques a Gallery, o bè pots deshabilitar les " +"característiques que no vulguis usar. Per usar una característica cal instal·lar-la, " +"configurar-la (si es necessari) i activar-la. Si no vols usar una característica, pots " +"desactivar-la." + +#, fuzzy +msgid "Plugin Name" +msgstr "Nom Complet" + +msgid "Installed" +msgstr "Instal·lat" + +msgid "Version" +msgstr "Versió" + +msgid "Actions" +msgstr "Accions" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "¡Mòdul Incompatible!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "API del Core Requerida: %s (disponible: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "API del Mòdul Requerida: %s (disponible: %s)" + +msgid "configure" +msgstr "configurar" + +#, fuzzy +msgid "up to date" +msgstr "Data" + +#, fuzzy +msgid "upgrade required" +msgstr "(requerit)" + +#, fuzzy +msgid "not installed" +msgstr "desinstal·lar" + +#, fuzzy +msgid "incompatible" +msgstr "¡Mòdul Incompatible" + +msgid "Repository" +msgstr "Magatzem" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Assegureu-vos que la vostra connexió a internet està ben configurada i torneu a intentar-ho " +"més tard." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "S'ha actualitzat correctament l'índex del magatzem." + +msgid "All plugins are already up-to-date." +msgstr "Tots els plugins estan actualitzats" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +#, fuzzy +msgid "Repository Error" +msgstr "Magatzem" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Has d'escollir un usuari per eliminar" + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +#, fuzzy +msgid "Continue" +msgstr "Continuar..." + +#, fuzzy +msgid "Download Plugin List" +msgstr "Descarrega les proves d'unitat" + +#, fuzzy +msgid "Show Repository List" +msgstr "Magatzem" + +msgid "Upgrade Gallery" +msgstr "Galeria" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Està disponible una nova versió de Gallery, peò no es pot millorar a través d'aquesta " +"interfície. La millora pot fer deixar de funcionar alguns dels vostres plugins, però altres " +"basats en la nova versió estaran disponibles. Aquests són els passos recomanats per a " +"efectuar la millora:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sDescarrega%s el nucli de Gallery" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Llegiu les %sinstruccions de millora%s i procediu a la millora" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Els plugins incompatibles estan marcats amb una icona d'exclamació." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Està disponible una nova versió del mòdul del nucli. Poden haver-hi plugins incompatibles " +"amb el mòdul del nucli instal·lat que no es mostrin aquí. Podeu veure una %sllista completa%" +"s de plugins, incloent els que són incompatibles, marcats amb una icona vermella." + +#, fuzzy +msgid "upgrade available" +msgstr "Galeria" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "Nom del Tema" + +msgid "Module Name" +msgstr "Nom del Mòdul" + +msgid "Latest" +msgstr "últim" + +msgid "Locked Plugin" +msgstr "" + +msgid "Incompatible Plugin" +msgstr "¡Mòdul Incompatible" + +#, fuzzy +msgid "Upgrade Available" +msgstr "actualitzar" + +msgid "download" +msgstr "baixar" + +msgid "modify" +msgstr "modificar" + +msgid "Upgrade All Plugins" +msgstr "Millora tots els plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery pot millorar automàticament els vostres temes i mòduls a l'última versió disponible. " +"No es descarregaran nous plugins." + +msgid "Upgrade All" +msgstr "actualitzar" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "Descarregant %s" + +msgid "No packages have been selected." +msgstr "No s'ha seleccionat cap paquet." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "Nom del fitxer rael" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "Configuració de l'Idioma" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "Versió de PHP" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +msgid "Update" +msgstr "Data" + +msgid "Gallery Themes" +msgstr "Temes de Gallery" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Tema %s activat amb èxit" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Tema %s desactivat amb èxit" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Tema %s instal·lat amb èxit" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Tema %s desinstal·lat amb èxit" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Tema %s actualitzat amb èxit" + +msgid "Successfully saved default album settings" +msgstr "Configuració de l'àlbum per defecte guardada amb èxit" + +msgid "Restored theme settings" +msgstr "Restaurar la configuració del tema" + +msgid "Defaults" +msgstr "Per defecte" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Aquesta és la configuració visual per defecte dels àlbums en Gallery. Pot ser anul·lada en " +"cada àlbum." + +msgid "Default sort order" +msgstr "Ordre de col·locació per defecte" + +msgid "with" +msgstr "amb" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Nous àlbums" + +#, fuzzy +msgid "Save Defaults" +msgstr "Per defecte" + +#, c-format +msgid "%s Theme Settings" +msgstr "Configuració del Tema %s" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Aquesta és la configuració global per al tema. Pot ser anul·lada a nivell d'àlbum." + +msgid "Available" +msgstr "Disponible" + +msgid "Choose a block" +msgstr "Escull un bloc" + +msgid "Selected" +msgstr "Seleccionat" + +msgid "Remove" +msgstr "Esborrar" + +msgid "Move Up" +msgstr "Pujar" + +msgid "Move Down" +msgstr "Baixar" + +msgid "Parameter" +msgstr "Paràmetre" + +msgid "Value" +msgstr "Valor" + +msgid "There are no settings for this theme" +msgstr "Aquest tema no té configuració" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "Configuració del Tema %s" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Les eines mostrades a continuació poden solapar-se en les operacions i tipus mime que " +"suporten. Classifica les eines aquí per determinar qué realitzarà aquestes tasques." + +msgid "Toolkit" +msgstr "Eina" + +msgid "Order" +msgstr "Ordre" + +msgid "up" +msgstr "pujar" + +msgid "down" +msgstr "baixar" + +msgid "User Management" +msgstr "Gestió d'Usuaris" + +#, c-format +msgid "Removed user '%s'" +msgstr "Usuari '%s' eliminat" + +#, c-format +msgid "Created user '%s'" +msgstr "Usuari '%s' creat" + +#, c-format +msgid "Modified user '%s'" +msgstr "Usuari '%s' modificat" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Hi ha %d usuari en el sistema." +msgstr[1] "Hi ha un total de %d usuaris en el sistema." + +msgid "Edit User" +msgstr "Editar Usuari" + +msgid "You cannot delete yourself!" +msgstr "¡No et pots eliminar a tú mateix!" + +msgid "You cannot delete the special guest user." +msgstr "No pots eliminar l'usuari especial invitat." + +msgid "Edit User (by list)" +msgstr "Editar Usuari (per llista)" + +#, fuzzy +msgid "Locked" +msgstr "Locale" + +#, fuzzy +msgid "Failed Logins" +msgstr "Fracàs" + +msgid "Thumbnails" +msgstr "Vistes en Miniatura" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery pot crear las miniatures en temps de pujada, o el primer cop que es visualitzen. En " +"qualsevol cas, crearà i guardarà la miniatura només un cop, però si les crees en el moment " +"de la pujada els àlbums es mostraran més ràpid el primer cop a canvi d'un major temps de " +"pujada." + +msgid "Create thumbnails now" +msgstr "Crear vistes en miniatura ara" + +msgid "This is a test email from Gallery2" +msgstr "Això és un correu de prova de Gallery2" + +msgid "Edit Conflict!" +msgstr "¡Conflicte de Revisió!" + +msgid "Security Violation" +msgstr "Violació de Seguretat" + +msgid "Database Error" +msgstr "Error en la Base de Dades" + +msgid "Platform Error" +msgstr "A ocorregut un error" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Autorització Confirmada" + +msgid "Error" +msgstr "Error" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"El canvi no s'ha pogut completar perque algú mes ha fet un canvi conflictiu en el mateix " +"element. Fes servir el botó d'enrere del navegador per retornar a la pàgina on et trobaves, " +"després recarrega aquella pàgina i intenta fer el canvi de nou." + +msgid "Go back and try again" +msgstr "Torna-ho a intentar novament." + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "Borra les pàgines desades" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Com alternativa, pots tornar a la página principal de Gallery i reprendre la recerca." + +msgid "The action you attempted is not permitted." +msgstr "L'acció que has intentat fer no està permesa." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "S'ha produït un error interactuant amb la base de dades." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"La naturalesa exacta dels errors de la base de dades no és capturada si no està activat el " +"mode de depuració de Gallery en config.php. Abans de demanar ajuda per aquest error si us " +"plau habilita la sortida de depuració de memoria intermitja i reintenta l'operació. Revisa " +"l'última part de la llarga sortida de depuració per trobar detalls sobre l'error." + +msgid "An error has occurred while interacting with the platform." +msgstr "Hi ha hagut un error interactuant amb la base de dades." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"La naturalesa exacta de l'error de la plataforma és desconeguda. Una causa comú és la manca " +"de permissos en el sistema d'arxius. Això pot succeir si s'ha canviat alguna cosa al sistema " +"d'arxius, ex. restaurar dades d'una còpia de seguretat." + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "Ha ocorregut un error." + +msgid "Back to the Gallery" +msgstr "Tornar a Gallery" + +msgid "Error Detail" +msgstr "Detall de l'Error" + +msgid "System Information" +msgstr "Informació del sistema" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"No tens ninguna Eina Gràfica activada que pugui manejar imatges JPEG. Si afegeixes imatges, " +"probablement no es generará ninguna miniatura." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Visita la pàgina de Mòduls per activar una Eina Gràfica." + +msgid "Add Sub-Album" +msgstr "Afegir Sub-Álbum" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"El nom d'aquest àlbum en el teu disc dur. Ha de ser únic en aquest àlbum. Usa solament " +"caràcters alfanumérics, línees baixes o guions. Podràs renombrar-lo més endavant." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "El nom conté caràcters no vàlids. Si us plau introdueix un altre." + +msgid "You must enter a name for this album." +msgstr "Has d'introduïr un nom per aquest àlbum." + +msgid "The name you entered is already in use. Please enter another." +msgstr "El nom que has escollit ja està en ús. Si us plau escull un altre." + +msgid "This is the album title." +msgstr "Aquest és el títol de l'àlbum." + +msgid "This is the album summary." +msgstr "Aquest és el resum de l'album." + +msgid "Keywords are not visible, but are searchable." +msgstr "Les paraules clau no son visibles, però es pot buscar amb elles." + +msgid "This is the long description of the album." +msgstr "Aquesta és la descripció llarga de l'àlbum." + +msgid "Create" +msgstr "Crear" + +msgid "Upload Complete" +msgstr "Càrrega Completa" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d arxiu agregat amb èxit." +msgstr[1] "%d arxius agregats amb éxit." + +msgid "No files added." +msgstr "No s'han agregat fitxers." + +#, c-format +msgid "Added %s" +msgstr "Agregat %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Error en agregar %s" + +msgid "Add more files" +msgstr "Agregar més arxius" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"El teu servidor web està configurat per rebutjar la pujada d'arxius desde el navegador en " +"aquest moment. Si us plau contacta amb l'administrador del sistema per rebre ajuda." + +msgid "Upload files directly from your computer." +msgstr "Pujar arxius directament desde el teu ordinador." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" +"Introdueix a continuació en les caixes de texte la ruta completa a l'arxiu, de forma " +"opcional pots introduïr un títol." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Nota: Pots pujar fins %s a la vegada. Si vols pujar una major quantitat de dades, " +"has de pujar els arxius per blocs, usar un format diferent de pujada, o demanar-li a " +"l'administrador del sistema que habiliti un major ample de banda de pujada." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Nota: Pots pujar fins %s a la vegada. Els fitxers no han de sobrepassar els %s megues " +"de forma individual. Si vols punar una major quantitat de dades, has de pujar els arxius " +"per blocs, fer servir un format diferent de pujada, o demanar-li a l'administrador del " +"sistema que habiliti un major ample de banda de pujada." + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "Establir els títols dels elements de:" + +msgid "Assign caption to:" +msgstr "Assignar etiqueta a:" + +msgid "No Thumbnail" +msgstr "Sense Miniatura" + +msgid "Delete Items" +msgstr "Borrar Elements" + +msgid "No items were selected for deletion" +msgstr "No s'han seleccionat elements per eliminar" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d element eliminat amb èxit" +msgstr[1] "%d elements eliminats amb èxit" + +msgid "This album contains no items to delete" +msgstr "Aquest àlbum no conté elements per eliminar" + +msgid "Choose the items you want to delete" +msgstr "Elegeix els elements que vols eliminar" + +#, c-format +msgid "(page %d of %d)" +msgstr "(pàgina %d de %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Els elements que has seleccionat aquí quedaran seleccionats mentres et mous per altres " +"pàgines." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Un element seleccionat en altres pàgines" +msgstr[1] "%d elements seleccionats en altres pàgines" + +msgid "(data)" +msgstr "(dades)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(l'àlbum conté %d element)" +msgstr[1] "(l'àlbum conté %d elements)" + +msgid "(empty album)" +msgstr "(àlbum buit)" + +msgid "Check All" +msgstr "Seleccionar tots" + +msgid "Check None" +msgstr "Deseleccionar tots" + +msgid "Invert" +msgstr "Invertir" + +msgid "Previous Page" +msgstr "Pàgina Anterior" + +msgid "Next Page" +msgstr "Pàgina Siguiente" + +msgid "Deletion Complete" +msgstr "Borrat Complet" + +msgid "Item successfully deleted" +msgstr "Element eliminat amb èxit" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "¿Estàs segur de voler eliminar aquest %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Conté %d element." +msgstr[1] "Conté %d elements." + +msgid "There is no undo!" +msgstr "¡No es pot desfer!" + +msgid "There was a problem processing your request." +msgstr "Hi ha hagut un problema processant la seva petició" + +msgid "Sort order" +msgstr "Ordre de Col·locació" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Configura l'ordre de col·locació per a l'àlbum. S'aplica tant a tots els elements actuals " +"com als nous elements afegits." + +msgid "Apply to all subalbums" +msgstr "Aplicar als subelements" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "Tot element requereix una miniatura. Selecciona la mida per defecte en píxels aquí." + +msgid "You must enter a number (greater than zero)" +msgstr "Has d'escriure un número (major que zero)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Utilitza aquestes mides de miniatura per a tots els subàlbums" + +msgid "Resized Images" +msgstr "Imatges Redimensionades" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Tot element en el teu àlbum pot tenir múltiples tamanys. Defineix les mides per defecte aquí." + +msgid "Active" +msgstr "Actiu" + +msgid "Target Size (pixels)" +msgstr "Mida de l'Objecte (píxels)" + +msgid "You must enter a valid size" +msgstr "Has d'escriure una mida vàlida" + +msgid "Use these target sizes in all subalbums" +msgstr "Utilitza aquestes mides per a tots els subàlbums" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Aplicar als subelements" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "Aplicar als subelements" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Refer miniatures" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Refer imatges redimensionades" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Per a que Gallery mostri correctament aquesta animació, ha de saber l'altura i l'amplada de " +"la mateixa. Si tens instal·lada una eina gràfica que manegui arxius d'animació, " +"llavors aquests valors haurien d'estar ja configurats. En cas contrari, haurien d'estar " +"posats a 0. Si no introdueixes aquí els valors correctes, l'animació podria aparèixer " +"distorssionada cuan es visioni en el teu navegador web. Donat compte que canviar aquests " +"valors no canvia l'animació en sí mateixa per lo que experimentar no causa ningún " +"dany." + +msgid "Width" +msgstr "Ample" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Has d'escriure un valor major o igual a zero" + +msgid "Height" +msgstr "Alçada" + +msgid "There were errors saving some items" +msgstr "Hi ha hagut errors guardant alguns elements" + +msgid "There were errors saving all items" +msgstr "Hi ha hagut errors guardant tots els elements" + +msgid "Successfully saved all items" +msgstr "Tots els elements guardats amb èxit" + +msgid "This album contains no items" +msgstr "Aquest àlbum no conté elements" + +msgid "Saved successfully." +msgstr "Guardat amb èxit." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Aquest element ha estat modificat per algú més en el mateix moment. Els canvis s'han perdut." + +msgid "You do not have permissions to modify this item." +msgstr "No tens permisos per modificar aquest element." + +msgid "Save and Done" +msgstr "Guardar i Llest" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Guardar i Editar els %s anteriors" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Guardar i Editar els %s propers" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"El nom d'aquest element en el disc dur. Ha de ser únic en aquest àlbum. Usa solament " +"caràcters alfanumèrics, linies baixes o guions." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "El nom conté caràcters no vàlids. Si us plau escull un altre." + +msgid "You must enter a name for this item." +msgstr "Has d'escriure un nom per a aquest element." + +msgid "The name you entered is already in use. Please choose another." +msgstr "El nom que has escrit ja està en ús. Si us plau escull un altre." + +msgid "The title of this item." +msgstr "El títol d'aquest element." + +msgid "The root album must have a title." +msgstr "L'àlbum principal ha de tenir un títol." + +msgid "The summary of this item." +msgstr "El resum per aquest element." + +msgid "This is the long description of the item." +msgstr "Aquesta és la descripció llarga de l'element." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Data i Hora" + +msgid "Set the date and time when this image was captured." +msgstr "Ajusta la data i hora a cuan la imatge va ser capturada." + +msgid "Set the date and time to be displayed for this item." +msgstr "Ajusta la data i hora per a ser mostrada per aquest element." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Ajusta la data i hora per a ser mostrada per aquest %s." + +msgid "Date:" +msgstr "Data:" + +msgid "Time:" +msgstr "Hora:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Usar la data i hora de la captura original desde la informació de l'arxiu (ex. Exif tag):" + +msgid "You must enter a valid date and time" +msgstr "Has d'escriure una data i hora vàlides" + +msgid "Thumbnail" +msgstr "Vista en Miniatura" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Estableix la mida de la vista en miniatura. El costat més gran de la miniatura no serà major " +"que aquest valor. Deixa aquest camp en blanc si no vols vista en miniatura." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"No hi han eines gràfiques habilitades que suporten aquest tipus d'element, de forma que no " +"podem crear o modificar una miniatura." + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "Has d'escriure un nom per a aquest element." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Per a que Gallery mostri correctament aquesta pel·lícula, ha de saber l'altura i l'amplada " +"de la mateixa. Si tens instal·lada una eina gràfica que manegui arxius de vídeo, " +"llavors aquests valor haurien d'estar ja configurats. En cas contrari, haurien d'estar " +"posats a 0. Si no introdueixes aqui els valors correctes, la pel·lícula podria apareixer " +"distorssionada cuan es vegi en el teu navegador web. Donat compte que canviar aquets valors " +"no canvia la pel·lícula en sí mateixa per lo que experimentar no causa ningún dany." + +msgid "Resized Photos" +msgstr "Fotos Redimensionades" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Aquestes mides son versions alternatives redimensionades de l'original que t'agradaria tenir " +"disponibles per mostrar." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"No hi han eines gràfiques habilitades que suportin aquest tipus de foto, de forma que no " +"podem crear o modificar les versions redimensionades." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Pots seleccionar quina part de la foto serà usada per a la vista en miniatura. Això no " +"afectarà a les versions redimensionades o a l'original de la imatge." + +msgid "Aspect Ratio: " +msgstr "Relació d'Aspecte: " + +msgid "Crop" +msgstr "Retallar" + +#, fuzzy +msgid "Undo Changes" +msgstr "Canviar" + +msgid "Reset to default" +msgstr "Reiniciar a valors per defecte" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"No hi han eines gràfiques habilitades que suportin aquest tipus de foto, de forma que no " +"podem tallar la miniatura." + +msgid "Rotate" +msgstr "Girar" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Solament pots girar la foto en intervals de 90 graus." + +msgid "CC 90°" +msgstr "CC 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"No hi han eines gràfiques habilitades que suportin aquest tipus de foto, de forma que no " +"podem girar-la." + +msgid "Scale" +msgstr "Escalar" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Encollir o engrandir la foto original. Cuan Gallery escala una foto, manté la mateixa " +"relació d'aspecte (altura per amplada) que la foto original per evitar distorsió. La teva " +"foto sera escalada fins que càpiga dins del recuadre que forma la mida que introdueixis aquí." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"No hi han eines gràfiques habilitades que suportin aquest tipus de foto, de forma que no " +"podem escalar-la." + +msgid "You must enter a size" +msgstr "Has d'escriure una mida" + +msgid "Preserve Original" +msgstr "Mantenir l'Original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery no modifica la teva foto original cuan la gira i la escala. En canvi, duplica la " +"foto i treballa amb copies. Això requereix una petita quantitat d'espai extra en el disc " +"però preveu que l'original es danyi. Deshabilitant aquesta opció, es provocarà que " +"qualsevol acció (girar, escalar, etc) modifiqui l'original" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Aquest es un enllaç a un altra foto, de forma que no pots canviar l'original" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Hi ha enllaços a aquesta foto, de forma que no pots canviar l'original" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "Mantenir la Foto Original" + +msgid "Modified Photo" +msgstr "Foto Modificada" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Estàs usant una còpia de la foto original que ha estat escalada o girada. La foto original " +"encara està disponible, però ja no s'utilitza. Qualsevol canvi que fagis s'aplicarà a la " +"còpia." + +msgid "Restore original" +msgstr "Restaurar original" + +#, fuzzy +msgid "Choose a theme" +msgstr "Escull un bloc" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "Utilitza aquest tema per a tots els subàlbums" + +msgid "Choose Theme" +msgstr "" + +#, fuzzy, c-format +msgid "Configure the %s theme" +msgstr "Tema de prova d'unitat" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"Aquest álbum està configurat per usar el tema %s. Aquestes configuracions només " +"s'apliquen al tema d'aquest àlbum." + +#, fuzzy, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Utilitza aquesta configuració per a tots els àlbums que utilitzin el tema %s" + +msgid "Album Highlight" +msgstr "Destacar Álbum" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Pots fer d'aquest element la vista en miniatura per a qualsevol àlbum superior." + +msgid "Highlight for:" +msgstr "Destacar per a:" + +msgid "Highlight" +msgstr "Destacar" + +msgid "Move an Item" +msgstr "Moure un Element" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d element mogut amb éxit" +msgstr[1] "%d elements moguts amb èxit" + +msgid "This album contains no items to move." +msgstr "Aquest àlbum no conté elements per moure." + +msgid "Source" +msgstr "Font" + +msgid "Choose the items you want to move" +msgstr "Escull els elements que vols moure" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"El destí que has escollit no accepta sub-àlbums, de forma que tots els sub-àlbums han estat " +"deseleccionats." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"El destí que has escollit només accepta sub-àlbums, de forma que tot el que no sigui àlbum " +"ha estat deseleccionat." + +msgid "You are not allowed to move this item away from here." +msgstr "No estàs autoritzat a moure aquest element fora d'aquí." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "No estàs autoritzat a moure l'àlbum al destí escollit." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "No estàs autoritzat a moure aquest element al destí escollit." + +msgid "You cannot move an album into its own subtree." +msgstr "No pots moure un àlbum dins del seu propi subarbre." + +msgid "Destination" +msgstr "Destí" + +msgid "Choose a new album for them" +msgstr "Escull un nou àlbum per a ells" + +msgid "You don't have the permission to add items in this album" +msgstr "No tens permís per a afegir elements en aquest àlbum" + +msgid "No destination chosen" +msgstr "No s'ha escollit un destí" + +msgid "Move" +msgstr "Moure" + +msgid "Successfully moved" +msgstr "Mogut amb èxit" + +msgid "Choose a destination album" +msgstr "Elegeix un àlbum de destí" + +msgid "Permissions" +msgstr "Permisos" + +msgid "Owner changed successfully" +msgstr "Propietari modificat amb èxit" + +msgid "Group permission added successfully" +msgstr "Permís de grup agregat amb èxit" + +msgid "User permission added successfully" +msgstr "Permís d'usuari agregat amb èxito" + +msgid "Group permission removed successfully" +msgstr "Permís de grup eliminat amb èxit" + +msgid "User permission removed successfully" +msgstr "Permís d'usuari eliminat amb èxit" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Cada element té el seu propi joc independent de permisos. El canvi de permisos en l'objecte " +"pare no té ningún efecte sobre l'objecte fill. Això permet restringir l'accès a l'objecte " +"pare d'aquest element, però concedir accès total al mateix, o viceversa. El mode més " +"eficient d'usar aquest sistema de permisos es crear grups i assignar-los permisos. Llavors " +"si es volen concedir permisos a un usuari específic, pots agregar (o treure) dit usuari del " +"grup apropiat." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Aquest element és propiedad de l'usuari: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Aquest element és propiedad de l'usuari: %s (%s)" + +msgid "New owner" +msgstr "Nou propietari" + +msgid "Change" +msgstr "Canviar" + +msgid "Apply new owner to sub-items" +msgstr "Aplicar el nou propietari als subelements" + +msgid "You must enter a user name" +msgstr "Has d'escriure un nom d'usuari" + +msgid "The user name you entered is invalid" +msgstr "El nom d'usuari que has escrit no es vàlid" + +msgid "Apply changes" +msgstr "Aplicar canvis" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Aquest element conté subelements. Els canvis que fagis aquí poden aplicar-se a aquest " +"element, o bè poden aplicar-se a tots els subelements. Donat compte que aplicar els canvis " +"als subelements combinarà dits canvis amb els permisos existents en els subelements i podria " +"conumir molt temps si es tenen molts subelements. És més eficient concedir permisos a grups " +"i després afegir o treure usuaris dels mateixos sempre que sigui possible. Els canvis " +"s'aplicaràn als subelements per defecte." + +msgid "Apply to sub-items" +msgstr "Aplicar als subelements" + +msgid "Group Permissions" +msgstr "Permisos de Grup" + +msgid "Group name" +msgstr "Nom del grup" + +msgid "Permission" +msgstr "Permís" + +msgid "New Group Permission" +msgstr "Nou Permís de Grup" + +msgid "Add Permission" +msgstr "Afegir Permis" + +msgid "The permission you chose is invalid" +msgstr "El permís que has escollit no és vàlid" + +msgid "The group name you entered is invalid" +msgstr "El nom del grup que has escrit no és vàlid" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "El grup ja té aquest permís (comprova els sub-permisos)" + +msgid "User Permissions" +msgstr "Permisos d'Usuari" + +msgid "User name" +msgstr "Nom d'usuari" + +msgid "New User Permission" +msgstr "Nou Permís d'Usuari" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "L'usuari ja té aquest permís (comprova els sub-permisos)" + +msgid "Reorder Album" +msgstr "Reordenar Álbum" + +msgid "Order saved successfully" +msgstr "Els canvis han estat guardats amb èxit" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Aquest àlbum té un ordre de col·locació automàtic especificat, de forma que no pots canviar " +"l'ordre dels elementos manualmente. Hauries de treure el ordre de col·locació automàtic per " +"continuar." + +msgid "change" +msgstr "canviar" + +msgid "Change the order of the items in this album." +msgstr "Canvia l'ordre dels elements en aquest àlbum." + +msgid "Move this item" +msgstr "Moure aquest element" + +msgid "before" +msgstr "abans" + +msgid "after" +msgstr "després" + +msgid "Reorder" +msgstr "Reordenar" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "Aquest lloc està fora de servei degut a manteniment" + +msgid "Admin Login" +msgstr "Opcions de l'Administrador" + +msgid "Enter a URL" +msgstr "Escriu la URL" + +msgid "Enter some text describing the URL" +msgstr "Escriu algun texte descrivint la URL" + +msgid "Enter an image URL" +msgstr "Escriu la URL de la imatge" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "llista" + +msgid "bullet" +msgstr "element de llista" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "imatge" + +#, fuzzy +msgid "color" +msgstr "central" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "Error de configuració: No es troba el Tema" + +msgid "Missing Theme" +msgstr "No es troba el Tema" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Aquest àlbum està configurat per utilitzar el tema %s, però es troba inactiu o no està " +"instal·lat." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Aquest àlbum està configurat per utilitzar el tema %s, però es troba inactiu o no està " +"instal·lat." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Per arreglar aquest problema pots %sinstal·lar o activar aquest tema%s o seleccionar un " +"altre tema per defecte." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Per arreglar aquest problema pots %sentrar com administrador de la web%s y després %" +"sinstal·lar o activar aquest tema%s o seleccionar un altre tema per defecte." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Per arreglar aquest problema pots %sescollir un nou tema per aquest àlbum%s o %sinstal·lar o " +"activar aquest tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Per arreglar aquest problema pots %sescollir un nou tema per aquest àlbum%s o %sentrar com " +"administrador de la Web%s i després %sinstal·lar o activar aquest tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Per arreglar aquest problema pots %sidentificar-te%s i després %sescollir un nou tema per " +"aquest àlbum%s o %sentrar com administrador de la Web%s i després %sinstal·lar o activar " +"aquest tema%s." + +msgid "Admin Options" +msgstr "Opcions de l'Administrador" + +msgid "User Options" +msgstr "Opcions de l'Usuari" + +msgid "Password changed successfully" +msgstr "Contrasenya modificada amb èxit" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Has d'introducir la teva contrasenya actual per comprovar que ets tú, després introdueix la " +"nova contrasenya dues vegades per a assegurar-te que no hi ha cap error." + +msgid "Current Password" +msgstr "Contrasenya Actual" + +msgid "You must enter your current password" +msgstr "Has d'escriure la teva contrasenya actual" + +msgid "Incorrect password" +msgstr "Contrasenya incorrecta" + +msgid "New Password" +msgstr "Nova Contrasenya" + +msgid "You must enter a new password" +msgstr "Has d'escriure una nova contrasenya" + +msgid "Verify New Password" +msgstr "Verifica la nova contrasenya" + +msgid "You must enter your new password again!" +msgstr "¡Has d'escriure un altre cop la nova contrasenya!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "Iniciar sessió amb el teu compte" + +msgid "Your password has been recovered, please login." +msgstr "Tu contrasenya ha sigut recuperada, si us plau inicia sessió." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "La teva informació d'inici de sessió és incorrecta. Si us plau intenta-ho de nou." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Les contrasenyes perdudes o oblidades es poden recuperar fent servir la pàgina de recuperar contrasenya" + +#, c-format +msgid "Welcome, %s!" +msgstr "Benvingut, %s!" + +msgid "Account settings saved successfully" +msgstr "La configuració del compte s'ha guardat amb èxit" + +msgid "(required, password required for change)" +msgstr "(Canvi de contrasenya obligatori)" + +msgid "(suggested, password required for change)" +msgstr "(Canvi la contrasenya recomanat)" + +msgid "(required to change the e-mail address)" +msgstr "Has d'introduïr una adreça de correu electrònic" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Has d'escriure la teva contrasenya actual" + +msgid "Recover a lost or forgotten password" +msgstr "Recuperar contrasenya perduda o oblidada" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Recuperar la teva contrasenya requereix que el teu compte d'usuari tingui una adreça de " +"correu electronic contenint una URL que has de visitar per configurar una nova contraseña no " +"poder ser sol·licitades més d'un cop en un període de 20 minuts. Una confirmació de " +"recuperació es válida durant set dies. Si no s'utilitza durant aquest temps, es purgarà del " +"sistema i s'haurà de demanar novament." + +msgid "Your recovery request has been sent!" +msgstr "¡La teva demanda de recuperació ha estat enviada!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Donat compte de si el teu compte no té associada una adreça de correu electrònic, no podràs " +"rebre el correu electrònic i hauràs de posar-te en contacte amb el teu administrador del " +"sistema per rebre assistència." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Els administradors poden usar la pàgina de %sRecuperació de Contrasenya d'Emergencia%s per " +"recuperar el compte d'administració si els manca la recepció del correu electrònic de " +"recuperacio degut a un problema amb els servidor, o a la manca d'una adreça de correu " +"electònic funcional." + +msgid "Recover" +msgstr "Recuperar" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Per continuar amb el reinici de la contrasenya, hem de verificar que ets qui dius que ets. " +"La millor forma d'estar segur és de demanar-te que fagis un canvi diminut en el directori de " +"Gallery el que demostrarà que tens els permisos correctes. Així, et demanarem que creïs un " +"nou arxiu de texte amb el nom %s en el directori de gallery2. Aquest arxiu ha de contenir " +"els següents caràcters generats a l'atzar:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Per la teva comoditat, hem preparat una %sversió correcta de l'arxiu login.txt%s per a tú. " +"Descarrega-la i cópiala en el teu directori d'instal·lació i estarà tot llest." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Un cop que hagis pujat el fitxer, fes click en refrescar per continuar." + +msgid "Emergency Administrator Password Reset" +msgstr "Recuperació d'Emergència de la Contrasenya d'Administrador " + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Aquesta pàgina pot ser usada per un administrador del sistema per a reiniciar de forma " +"segura la contrasenya de qualsevol compte." + +msgid "Authorization Confirmed" +msgstr "Autorització Confirmada" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"La teva autorització ha estat confirmada. Si us plau introdueix la teva nova contrasenya a " +"continuació. Després de configurar la teva nova contrasenya seràs portat a la pàgina " +"d'inici de sessió." + +msgid "Recover Password for Username" +msgstr "Recuperar Contrasenya per l'Usuari" + +msgid "You must enter a username to recover the password for." +msgstr "Has d'escriure un nom d'usuari per recuperar la contrasenya." + +msgid "The username you entered does not exist." +msgstr "El nom d'usuari que has escrit no existeix." + +msgid "Authorization Incorrect" +msgstr "Autorització Incorrecta" + +msgid "Recovery Instructions" +msgstr "Instruccions de Recuperació" + +msgid "AuthFile Missing" +msgstr "Fitxer d'Autenticació no trobat" + +msgid "AuthFile Unreadable" +msgstr "Fitxer d'Autenticació il·legible" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"El teu fitxer %s no té permisos de lectura. Si us plau dona a Gallery permisos de lectura " +"sobre el fitxer." + +msgid "Refresh" +msgstr "Refrescar" + +msgid "This page will allow you to reset the password on your account." +msgstr "Aquesta pàgina et permet reiniciar la contrasenya del teu compte." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"No hi ha ninguna petició que coincideixi amb el nom d'usuari i la autorització facilitada. " +"Sol·licita una nova autorizació desde la pàgina per recordar " +"contrasenyes." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"La petició a la que estàs intentant accedir ha expirat. Sol·licita una nova autorizació " +"desde la pàgina per recordar contrasenyes." + +msgid "Authorization missing" +msgstr "Autorizació no trobada" + +msgid "Username missing" +msgstr "Nom d'usuari no trobat" + +msgid "Submit" +msgstr "Enviar" + +#, c-format +msgid "Hello %s," +msgstr "Hola %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Has rebut aquest correu perque una recuperació de contrasenya per a %s ha estat sol·licitada " +"per %s a les %s" + +#, c-format +msgid "Your username is: %s" +msgstr "El teu nom d'usuari és: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Per finalitzar el procès de recuperació de contrasenya per favor fes click en el següent " +"vincle i introdueix la informació sol·licitada:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Si no has sol·licitat aquest correu electrónic, pots ignorar-lo." + +msgid "Thank you!" +msgstr "¡Gràcies!" + +msgid "guest" +msgstr "Invitat" + +#, c-format +msgid "display mode: %s" +msgstr "mode de visualització: %s" + +#, c-format +msgid "Date: %s" +msgstr "Data: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Propietari: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "%d element" +msgstr[1] "%d elements" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d element en total)" +msgstr[1] "(%d elements en total)" + +#, c-format +msgid "Views: %d" +msgstr "Visites: %d" + +msgid "« album actions »" +msgstr "« accions de l'àlbum »" + +msgid "« item actions »" +msgstr "« accions de l'element »" + +msgid "Go" +msgstr "Anar" + +msgid "Navigation" +msgstr "Navegació" + +msgid "next" +msgstr "següent" + +msgid "last" +msgstr "últim" + +#, c-format +msgid "Page %d of %d" +msgstr "Pàgina %d de %d" + +#, c-format +msgid "%d of %d" +msgstr "%d de %d" + +msgid "first" +msgstr "primer" + +msgid "previous" +msgstr "anterior" + +msgid "Page:" +msgstr "Pàgina: " + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Mida: " + +msgid "Unknown" +msgstr "Desconegut" + +msgid "Full size: " +msgstr "Mida total: " + +msgid "Setting" +msgstr "Configuració" + +msgid "Use Global" +msgstr "Usar Globals" + +msgid "Language selector" +msgstr "Selecció d'idioma" + +msgid "Item actions" +msgstr "Accions dels elements" + +msgid "Use dropdown menu" +msgstr "Usa el menú desplegable" + +msgid "Login block" +msgstr "Bloc d'Inici de Sessió" + +msgid "Links to album/photo peers" +msgstr "Enllaços als parells d'àlbum/foto" diff --git a/Source/gallery2/modules/core/po/cs.po b/Source/gallery2/modules/core/po/cs.po new file mode 100644 index 0000000..f9ab481 --- /dev/null +++ b/Source/gallery2/modules/core/po/cs.po @@ -0,0 +1,3680 @@ +# $Id: cs.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:44-0700\n" +"PO-Revision-Date: 2006-12-09 23:51+0100\n" +"Last-Translator: drevak \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +msgid "Gallery Email Test" +msgstr "Zkouška emailu" + +msgid "forever" +msgstr "navždy" + +msgid "High Priority (Me first!)" +msgstr "Velká priorita (Mě nejdřív!)" + +msgid "Low Priority (I want to share!)" +msgstr "Nízká priorita (Chci sdílet!)" + +msgid "No Markup" +msgstr "Neznačkovat" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Čisté HTML" + +msgid "Database" +msgstr "databáze" + +msgid "File" +msgstr "soubor" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuta" +msgstr[1] "%d minuty" +msgstr[2] "%d minut" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hodina" +msgstr[1] "%d hodiny" +msgstr[2] "%d hodin" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d den" +msgstr[1] "%d dny" +msgstr[2] "%d dnů" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d týden" +msgstr[1] "%d týdny" +msgstr[2] "%d týdnů" + +msgid "" +msgstr "<žádné>" + +msgid "No acceleration" +msgstr "Bez akcelerace" + +msgid "Partial acceleration" +msgstr "Částečná akcelerace" + +msgid "Full acceleration" +msgstr "Plná akcelerace" + +msgid "Themes" +msgstr "Témata" + +msgid "Updating Repository Index" +msgstr "Aktualizuji seznam zdrojů" + +msgid "Scanning plugins" +msgstr "Kontroluji pluginy" + +msgid "Update Plugin List" +msgstr "Aktualizovat seznam pluginů" + +msgid "Done." +msgstr "Hotovo." + +msgid "Updating Packages" +msgstr "Aktualizuji balíčky" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Připravuji..." + +#, c-format +msgid "Downloading %s" +msgstr "Stahuji %s" + +#, c-format +msgid "Activating %s" +msgstr "Aktivuji %s" + +msgid "Deleting Language Packs" +msgstr "Odstraňuji jazykové balíčky" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Aktualizace kompletní." + +msgid "Update complete." +msgstr "Aktualizace kompletní." + +msgid "install" +msgstr "instalovat" + +msgid "upgrade" +msgstr "aktualizovat" + +msgid "activate" +msgstr "aktivovat" + +msgid "uninstall" +msgstr "odinstalovat" + +msgid "deactivate" +msgstr "deaktivovat" + +msgid "Inherit settings from parent album" +msgstr "Zdědit nastavení z nadřazeného alba" + +msgid "Use these settings" +msgstr "Použít tato nastavení" + +msgid "Installing the core module" +msgstr "Instaluji modul jádra" + +msgid "key" +msgstr "klíč" + +msgid "All access" +msgstr "Všechna oprávnění" + +msgid "[core] View item" +msgstr "[jádro] Prohlížení položky" + +msgid "[core] View resized version(s)" +msgstr "[jádro] Prohlížení zmenšené verze" + +msgid "[core] View original version" +msgstr "[jádro] Prohlížení původní verze" + +msgid "[core] View all versions" +msgstr "[jádro] Prohlížení všech verzí" + +msgid "[core] Add sub-album" +msgstr "[jádro] Přidání vnořeného alba" + +msgid "[core] Add sub-item" +msgstr "[jádro] Přidání vnořené položky" + +msgid "[core] Edit item" +msgstr "[jádro] Úprava položky" + +msgid "[core] Change item permissions" +msgstr "[jádro] Změna oprávnění k položce" + +msgid "[core] Delete item" +msgstr "[jádro] Smazání položky" + +msgid "Upgrading permissions" +msgstr "Aktualizuji oprávnění" + +msgid "Deleting old permission tables" +msgstr "Mažu staré tabulky oprávnění" + +msgid "Registered Users" +msgstr "Registrovaní uživatelé" + +msgid "All Users" +msgstr "Všichni uživatelé" + +msgid "Detecting broken derivatives" +msgstr "Detekuji chybné zmenšeniny" + +msgid "Clearing fast-download cache" +msgstr "Mažu cache rychlých downloadů" + +msgid "Deleting old fast-download cache" +msgstr "Mažu starou cache rychlých downloadů" + +msgid "Updating panorama items" +msgstr "Aktualizuji položky panorama" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimalizuji tabulku AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Správci" + +msgid "Everybody" +msgstr "Kdokoliv" + +msgid "Guest" +msgstr "Návštěvník" + +msgid "Gallery" +msgstr "Galerie" + +msgid "This is the main page of your Gallery" +msgstr "Toto je hlavní stránka této Galerie." + +msgid "Converting MySQL data to UTF8" +msgstr "Konvertuji MySQL data do UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Aktualizuji oprávnění (%d položek hotových, %d zbývá)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Detekuji chybné zmenšeniny, nahrávám " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Detekuji chybné zmenšeniny, ukládám " + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Detekuji chybné zmenšeniny, ukládám " + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Aktualizuji oprávnění (%d položek hotových, %d zbývá)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Mažu staré session soubory (průchod %d)" + +msgid "add items" +msgstr "přidat položky" + +msgid "Album created successfully." +msgstr "Album úspěšně vytvořeno." + +msgid "add sub-album" +msgstr "přidat vnořené album" + +msgid "add items confirmation" +msgstr "potvrzení přidání položek" + +msgid "Base filename" +msgstr "jména souboru" + +msgid "Caption" +msgstr "popisek" + +msgid "Blank" +msgstr "nechat prázdné" + +msgid "From Web Browser" +msgstr "Z webového prohlížeče" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabyty" +msgstr[2] "%d megabytů" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobyte" +msgstr[1] "%d kilobyty" +msgstr[2] "%d kilobytů" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Zadaný soubor %s překračuje maximálně povolenou velikost souboru \t" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Zadaný soubor %s překračuje velikost uvedenou ve formuláři" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Zadaný soubor %s byl nahrán pouze částečně" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Zadaný soubor %s nebyl nahrán. Chyba %d" + +msgid "Gallery Item Administration" +msgstr "Správa položky Galerie" + +msgid "delete an item" +msgstr "smazat položku" + +msgid "delete confirmation" +msgstr "potvrzení smazání" + +#, c-format +msgid "delete %s" +msgstr "smazat %s" + +#, c-format +msgid "edit %s" +msgstr "upravit %s" + +msgid "Settings saved successfully." +msgstr "Nastavení úspěšně uloženo." + +msgid "Apply resized image settings" +msgstr "Použít nastavení pro zmenšeniny" + +msgid "Preparing..." +msgstr "Připravuji..." + +msgid "Apply thumbnail settings" +msgstr "Použít nastavení náhledů" + +msgid "Rebuilding thumbnails..." +msgstr "Znovu vytvářím náhledy..." + +msgid "Album" +msgstr "album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Zpracovávám obrázek %d z %d" + +msgid "Changes saved successfully" +msgstr "Změny úspěšně uloženy" + +msgid "Animation Size" +msgstr "Velikost animace" + +msgid "edit captions" +msgstr "editovat popisky" + +msgid "General" +msgstr "Obecné" + +msgid "Movie Size" +msgstr "Velikost videa" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Náhled úspěšně oříznut" + +msgid "Thumbnail reset successfully" +msgstr "Náhled úspěšně znovuvytvořen" + +msgid "Photo 5x3" +msgstr "Foto 5x3" + +msgid "Photo 6x4" +msgstr "Foto 6x4" + +msgid "Photo 7x5" +msgstr "Foto 7x5" + +msgid "Photo 10x8" +msgstr "Foto 10x8" + +msgid "Fullscreen 4x3" +msgstr "Celá obrazovka 4x3" + +msgid "Widescreen 16x9" +msgstr "Širokoúhlý 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Čtverec 1x1" + +msgid "As Image" +msgstr "Jako obrázek" + +msgid "Landscape" +msgstr "Na šířku" + +msgid "Portrait" +msgstr "Na výšku" + +msgid "Crop Thumbnail" +msgstr "Oříznout náhled" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Úspěšně zrušeny změny rotace a měřítka" + +msgid "Rotated photo successfully" +msgstr "Fotografie úspěšně otočeny" + +msgid "Scaled photo successfully" +msgstr "Měřítko úspěšně změněno" + +msgid "Modify Photo" +msgstr "Upravit fotografii" + +msgid "Successfully changed theme" +msgstr "Úspěšně aktivováno téma" + +msgid "« default theme »" +msgstr "« výchozí téma »" + +msgid "Theme" +msgstr "Téma" + +msgid "make highlight" +msgstr "zvýraznit" + +msgid "move item" +msgstr "přesunout položku" + +#, c-format +msgid "move %s" +msgstr "přesunout %s" + +#, c-format +msgid "edit %s permissions" +msgstr "upravit %s oprávnění" + +msgid "reorder items" +msgstr "změnit pořadí položek" + +msgid "Maintenance" +msgstr "Údržba" + +msgid "Gallery Site Administration" +msgstr "Administrace Galerie" + +msgid "site admin" +msgstr "správce" + +msgid "Gallery User Administration" +msgstr "Správa uživatelů" + +msgid "change password" +msgstr "změnit heslo" + +msgid "your account" +msgstr "váš účet" + +msgid "Password Recovery" +msgstr "Obnova hesla" + +msgid "Core" +msgstr "Jádro" + +msgid "Gallery 2 Core Module" +msgstr "Hlavní modul Galerie 2" + +msgid "Add Items" +msgstr "Přidat položky" + +msgid "Edit Album" +msgstr "Upravit album" + +msgid "Edit Photo" +msgstr "Upravit foto" + +msgid "Edit Movie" +msgstr "Upravit video" + +msgid "Add Album" +msgstr "Přidat album" + +msgid "Edit Permissions" +msgstr "Upravit oprávnění" + +msgid "View Permissions" +msgstr "Zobrazit oprávnění" + +msgid "Delete Album" +msgstr "Smazat album" + +msgid "Delete Photo" +msgstr "Smazat foto" + +msgid "Delete Movie" +msgstr "Smazat video" + +msgid "Move Album" +msgstr "Přesunout album" + +msgid "Move Photo" +msgstr "Přesunout foto" + +msgid "Move Movie" +msgstr "Přesunout video" + +msgid "Edit Captions" +msgstr "Editovat popisky" + +msgid "Make Highlight" +msgstr "Zvýraznit" + +msgid "Reorder Items" +msgstr "Změnit pořadí položek" + +msgid "Site Admin" +msgstr "Administrace" + +msgid "Login" +msgstr "Přihlásit" + +msgid "Your Account" +msgstr "Váš účet" + +msgid "Logout" +msgstr "Odhlásit" + +msgid "Plugins" +msgstr "Pluginy" + +msgid "Users" +msgstr "Uživatelé" + +msgid "Groups" +msgstr "Skupiny" + +msgid "Performance" +msgstr "Výkon" + +msgid "Toolkit Priority" +msgstr "Priorita nástrojů" + +msgid "Graphics Toolkits" +msgstr "Grafické nástroje" + +msgid "Account Settings" +msgstr "Nastavení účtu" + +msgid "Change Password" +msgstr "Změnit heslo" + +#, c-format +msgid "Edit %s" +msgstr "Upravit %s" + +#, c-format +msgid "Delete %s" +msgstr "Smazat %s" + +#, c-format +msgid "Move %s" +msgstr "Přesunout %s" + +msgid "Build all thumbnails/resizes" +msgstr "Vytvoření všech náhledů/zmenšenin" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Zajistí vytvoření datových souborů pro všechny náhledy a zmenšeniny a pokud jsou poškozené, " +"vytvoří je znovu." + +msgid "Build All Thumbnails/Resizes" +msgstr "Vytvořit všechny náhledy a další zmenšené obrázky" + +msgid "Debug output for failed items:" +msgstr "Ladící výstup pro selhané položky:" + +#, c-format +msgid "Checked %d items" +msgstr "Zkontrolováno %d položek" + +#, c-format +msgid "%d items built" +msgstr "vytvořeno %d položek" + +#, c-format +msgid "%d items failed" +msgstr "%d položek selhalo" + +msgid "Convert MySQL database to UTF8" +msgstr "Konvertovat MySQL databázi do UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Pokud jste vytvořili Vaši databázi v MySQL 3.x a instalujte MySQL 4.x, můžete očekávat " +"smíšené znaky dokud databázi nezkonvertujete na UTF8. Tato operace je neškodná, pokud Vaše " +"databáze byla zkonvertována již dříve, můžete to zkusit, pokud si nejste jisti. Pak by jste " +"měli provést úkon \"Smazat cache databáze\" aby jste se zbavili poruch ve Vaší cache." + +msgid "Database successfully converted to UTF8" +msgstr "Databáze úspěšně konvertována do UTF8" + +msgid "No conversion required" +msgstr "Konverze není vyžadována" + +msgid "Delete user sessions" +msgstr "Výmaz sezení (sessions) uživatelů" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Vymaže všechna trvalá uživatelská sezení (sessions) podle aktuálního nastavení expirace." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Výmaz %d sezení (sessions)." + +msgid "Delete database cache" +msgstr "Výmaz cache databáze" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Galerie pro zvýšený výkon ukládá často používané informace databáze na disk. Pokud změníte " +"databázi přímo, měli byste vymazat cache a vynutit si tak obnovení informací z databáze." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Úspěšně smazán adresář: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Nelze smazat adresář: %s" + +msgid "Delete template cache" +msgstr "Výmaz cache šablon" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Galerie pro zvýšení výkonu překládá soubory šablon (templates) a výsledek cachuje. Pokud " +"narazíte na problém Smarty error, měli byste zkusit následující. Tuto akci spusťte " +"také pokud odstraníte soubory local/*.tpl, čímž Smarty použije výchozí tpl soubor." + +msgid "Template cache deleted successfully" +msgstr "Cache šablon úspěšně vymazána" + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "animace" + +msgid "animation" +msgstr "animace" + +msgid "Gallery Core" +msgstr "Jádro Galerie" + +msgid "Gallery Core Module" +msgstr "Hlavní modul Galerie" + +msgid "Search descriptions" +msgstr "Hledat v popisech" + +msgid "Search keywords" +msgstr "Hledat podle klíčových slov" + +msgid "Search summaries" +msgstr "Hledat v souhrnech" + +msgid "Search titles" +msgstr "Hledat v titulcích" + +msgid "Description" +msgstr "Popis" + +msgid "Keywords" +msgstr "Klíčová slova" + +msgid "Summary" +msgstr "Souhrn" + +msgid "Title" +msgstr "Titulek" + +msgid "Owner" +msgstr "Vlastník" + +msgid "Dynamic Album" +msgstr "Dynamické album" + +msgid "dynamic album" +msgstr "dynamické album" + +msgid "Group" +msgstr "Skupina" + +msgid "group" +msgstr "skupina" + +msgid "Other" +msgstr "Jiné" + +msgid "Movie" +msgstr "video" + +msgid "movie" +msgstr "video" + +msgid "photo" +msgstr "fotografie" + +msgid "Couldn't create repository cache path." +msgstr "Nelze vytvořit cache zdroje (repository)." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Nelze vytvořit adresář cache. Zkontrolujte zda webový server může do tohoto adresáře " +"zapisovat." + +msgid "Official Release Repository" +msgstr "Zdroj oficiálně vydaných verzí" + +msgid "Experimental Repository" +msgstr "Experimentální zdroj" + +msgid "Community Repository" +msgstr "Zdroje ostatních uživatelů" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Chyba při stahování indexu z '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Chyba při stahování hashe indexu z '%s'." + +msgid "Index integrity check failed." +msgstr "Chyba při kontrole integrity indexu." + +msgid "« default sort order »" +msgstr "« výchozí třídění »" + +msgid "Manual sort order" +msgstr "Ruční třídění" + +msgid "Origination Date" +msgstr "Původní datum" + +msgid "Creation Date" +msgstr "Datum vytvoření" + +msgid "Last Changed Date" +msgstr "Datum poslední změny" + +msgid "Name" +msgstr "Jméno" + +msgid "View Count" +msgstr "Počet zobrazení" + +msgid "Random" +msgstr "Náhodné" + +msgid "« no presort »" +msgstr "« bez předtřídění »" + +msgid "Albums First" +msgstr "Alba na začátek" + +msgid "Most Viewed First" +msgstr "Nejprohlíženější na začátek" + +msgid "Ascending" +msgstr "Vzestupně" + +msgid "Descending" +msgstr "Sestupně" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Ověřování je vypnuto dokud nenastavíte allowSessionAccess v config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Tato stránka je validní XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Finanční podpora projektu Galerie" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Odhad zbývajícího času: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Použitá paměť: %s, celkem: %s" + +msgid "Rows per album page" +msgstr "Počet řádků na stránku" + +msgid "Columns per album page" +msgstr "Počet sloupců na stránku" + +msgid "Number of items to show per page" +msgstr "Počet položek na stránku" + +msgid "Row height (pixels)" +msgstr "Výška řádku (v pixelech)" + +msgid "Column width (pixels)" +msgstr "Šířka sloupce (v pixelech)" + +msgid "Show image owners" +msgstr "Zobrazit vlastníky obrázku" + +msgid "Show album owners" +msgstr "Zobrazit vlastníky alb" + +msgid "Show micro navigation thumbnails" +msgstr "Zobrazit mikronavigaci" + +msgid "Blocks to show in the sidebar" +msgstr "Bloky pro zobrazení v postranní liště" + +msgid "Blocks to show on album pages" +msgstr "Bloky pro zobrazení na stránkách alb" + +msgid "Blocks to show on photo pages" +msgstr "Bloky pro zobrazení na stránkách fotografií" + +msgid "Thumbnail links in dynamic albums" +msgstr "Náhledové odkazy v dynamických albech" + +msgid "Browse dynamic album" +msgstr "Prohlížet dynamické album" + +msgid "Jump to original album" +msgstr "Přejít na původní album" + +msgid "Separate link to original album" +msgstr "Samostatný odkaz na původní album" + +msgid "View Samples" +msgstr "Zobrazit vzorky" + +msgid "Album Frame" +msgstr "Rámeček alba" + +msgid "Item Frame" +msgstr "Rámeček položky" + +msgid "Photo Frame" +msgstr "Rámeček fotky" + +msgid "Color Pack" +msgstr "Barevné nastavení" + +msgid "You must enter a number greater than 0" +msgstr "Musíte zadat číslo větší než nula" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Archiv" + +msgid "archive" +msgstr "archiv" + +msgid "Document" +msgstr "Dokument" + +msgid "document" +msgstr "dokument" + +msgid "Spreadsheet" +msgstr "Tabulka" + +msgid "spreadsheet" +msgstr "tabulka" + +msgid "file" +msgstr "soubor" + +msgid "Back" +msgstr "Zpět" + +#, c-format +msgid "Back to %s" +msgstr "Zpět na %s" + +msgid "User" +msgstr "Uživatel" + +msgid "user" +msgstr "uživatel" + +msgid "Optimize database" +msgstr "Optimalizace databáze" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Zlepší výkon databáze. Výsledek bude záviset na typu použité databáze, ale tato údržba by " +"měla způsobit její rychlejší běh. Užitečné hlavně po přidání nebo výmazu mnoha položek." + +msgid "Database optimized successfully" +msgstr "Fotografie úspěšně zoptimalizovány" + +msgid "Reset view counts" +msgstr "Vynulování počítadla zobrazení" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Vynuluje počet zobrazení pro všechna alba a položky. Tento krok také vymaže cache databáze." + +msgid "View counts reset successfully" +msgstr "Počet zobrazení úspěšně vynulován" + +msgid "Refresh capture dates" +msgstr "Obnova datumů vytvoření" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Zaktualizuje datumy vytvoření všech položek uložených v Galerii pomocí původních datových " +"souborů (nejčastěji EXIF data)." + +msgid "Processing..." +msgstr "Zpracovávám..." + +msgid "Refresh Capture Dates" +msgstr "Obnova datumů vytvoření" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Zpracovávám položku %d z %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Zaktualizováno %d z %d položek" + +msgid "System information" +msgstr "Systémové informace" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Zjistí detaily o systému. Užitečné při hledání podpory například v G2 fóru." + +msgid "core" +msgstr "jádro" + +msgid "unknown" +msgstr "neznámý" + +msgid "Gallery version" +msgstr "Verze Galerie" + +msgid "PHP version" +msgstr "Verze PHP" + +msgid "Webserver" +msgstr "Webový server" + +msgid "Toolkits" +msgstr "Nástroje" + +msgid "Acceleration" +msgstr "Akcelerace" + +msgid "Operating system" +msgstr "Operační systém" + +msgid "Default theme" +msgstr "Výchozí téma" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "umožněno" + +msgid "disabled" +msgstr "znemožněno" + +msgid "Locale" +msgstr "Lokalita" + +msgid "Browser" +msgstr "Prohlížeč" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Řádky v %s tabulce = %d" + +msgid "Successfully saved theme settings" +msgstr "Nastavení tématu úspěšně uloženo" + +msgid "General Settings" +msgstr "Obecná nastavení" + +msgid "Settings saved successfully" +msgstr "Nastavení úspěšně uloženo" + +msgid "Added local upload directory successfully" +msgstr "Úspěšně přidán místní adresář pro data" + +msgid "Removed local upload directory successfully" +msgstr "Úspěšně odstraněn místní adresář pro nové soubory" + +msgid "Test email sent successfully" +msgstr "Zkušební email úspěšně odeslán" + +msgid "There was a problem processing your request, see below for details." +msgstr "Při zpracování Vaší žádosti se vyskytl problém." + +msgid "Error sending test email, see below for details." +msgstr "Chyba při odesílání testovacího emailu, další informace níže" + +msgid "Language Settings" +msgstr "Nastavení jazyka" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Vyberte výchozí jazykové nastavení Galerie. Každý uživatel si jinak může vybrat vlastní " +"nastavení v uživatelském profilu a také použít přepínač jazyka (pokud je aktivován níže)." +"Pokud zvolíte kontrolu preference prohlížeče, Galerie se pokusí automaticky detekovat " +"preferovaný jazyk každého uživatele." + +msgid "Default language" +msgstr "Výchozí jazyk" + +msgid "Check Browser Preference" +msgstr "Kontrolovat preference prohlížeče" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Tento webový server nepodporuje lokalizaci. Prosím informujte správce serveru o možnosti " +"konfigurace PHP s aktivovanou volbou %s." + +msgid "Date Formats" +msgstr "Formátování času" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Vyberte zobrazení datumu a času v Galerii. Pro více informací o formátu těchto řetězců " +"najdete v %sphp.net%s. Nezapomeňte že zobrazení některých částí se řídí aktualním jazykovým " +"nastavením uživatele." + +msgid "Style" +msgstr "Styl" + +msgid "Format" +msgstr "Formát" + +msgid "Sample" +msgstr "Vzorek" + +msgid "Date" +msgstr "Datum" + +msgid "Time" +msgstr "Čas" + +msgid "Date/Time" +msgstr "Datum/čas" + +msgid "Filesystem Permissions" +msgstr "Nastavení oprávnění souborového systému" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Nastavení výchozích oprávnění pro soubory a adresáře, které Galerie vytvoří. To se " +"nevztahuje na soubory a adresáře, které už byly vytvořeny." + +msgid "New directories" +msgstr "Nové adresáře" + +msgid "New files" +msgstr "Nové soubory" + +msgid "Session Settings" +msgstr "Nastavení sezení (session)" + +msgid "Session Lifetime" +msgstr "Životnost sezení (session)" + +msgid "Inactivity Timeout" +msgstr "Timeout nečinnosti" + +msgid "Embedded Markup" +msgstr "Značkování v textu" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Jaký typ značkování byste měli použít pro položky zadávané uživateli? Z bezpečnostních " +"důvodů nedoporučujeme povolit čisté HTML. Naopak BBCode je zvláštní druh značkování, který " +"je bezpečný a dovolí Vám jednoduše zformátovat text (tučný, kurzíva, seznamy, URL adresy)." + +msgid "Markup" +msgstr "Značkování" + +msgid "Email" +msgstr "E-mail" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Ve výchozím nastavení používá Galerie pro odesílání e-mailů funkce PHP, které nepotřebují " +"žádnou konfiguraci. Pokud chcete použít jiný SMTP server, vyplňte informace níže, včetně " +"autentizace (pokud je vyžadována). Pro jiný port než výchozí přidejte port za dvojtečku." + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Uživatelské jméno" + +msgid "Password" +msgstr "Heslo" + +msgid "SMTP From Address" +msgstr "SMTP odesílatel (From)" + +msgid "Invalid email address" +msgstr "Špatná e-mail adresa" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Odeslat testovací email ke zjištění správnosti nastavení (při použití mail funkcí PHP nebo " +"SMTP nastavení výše). Níže zadejte email adresu příjemce pro zkušební mail." + +msgid "Send Email" +msgstr "Poslat email" + +msgid "Email Test Error" +msgstr "Chyba při testování mailu" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Pokud je Galerie vnořená do jiné aplikace (portál, CMS, fórum atd.), musíte si vybrat mezi " +"dvěmi možnostmi. V opačném případě se o nastavení cookies nemusíte starat. Více je popsáno " +"níže." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Pokud je Galerie vnořená a necháte tyto položky nenastavené, všechny URL odkazy na obrázky a " +"další položky vnořené Galerie budou obsahovat připojený GALLERYSID řetězec, což je " +"drobné bezpečnostní riziko, pokud budou uživatelé publikovat tyto URL adresy na " +"Internetu. Nebo můžete nastavit cestu cookie. Galerie pak k těmto adresám nebude " +"připojovat GALLERYSID. Pokud je samotná Galerie dostupná na adrese http://www.example." +"com/application/gallery2/ a aplikace, do které je Galerie vnořená na http://www.example.com/" +"application/, cesta cookie je '/application/'. Je to tedy společná část cesty. Často bývá " +"také prostě '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Doména cookie je také potřebná pouze v případě vnořování a odstranění problému s " +"GALLERYSID řetězcem v URL. Ve většině připadů může zůstat prázdná. Nastavte ji pouze " +"v případě, kdy jsou Galerie a aplikace dostupné v různých subdoménách. Například " +"pokud je Galerie na adrese http://photos.example.com/ a aplikace na http://www.example.com/, " +"potom je doména cookie 'example.com' (společná část domény)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Pokud někdy změníte nastavení cookie, všichni registrovaní uživatelé Vaší Galerie " +"musí smazat cookie cache v jejich prohlížečích. Pokud to neudělají, mohou narazit na " +"problémy při přihlašování, odhlašovaní nebo i v průběhu prohlížení." + +msgid "Path" +msgstr "Cesta" + +msgid "Invalid cookie path" +msgstr "Neplatná cesta cookie" + +msgid "Domain" +msgstr "Doména" + +msgid "Invalid cookie domain" +msgstr "Neplatná doména cookie" + +msgid "Locking System" +msgstr "Systém zamykání" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Galerie používá systém zamykání pro zamezení konfliktním změnám provedených ve stejném čase. " +"K dispozici jsou dva druhy zamykání, oba mají výhody i nevýhody. Souborové zamykání " +"je rychlé a výkonné, ale nefunguje na NFS souborovém systému a bude nespolehlivé na MS " +"Windows. Databázové zamykání je pomalejší, ale spolehlivější. Pokud si nejste jisti, " +"které vybrat, doporučujeme používat souborové zamykání. Pokud narazíte na mnoho timeoutů " +"zamykání, můžete zkusit databázové zamykání. Přepínání mezi oběma druhy je bezproblémové." + +msgid "Lock system" +msgstr "Systém zamykání" + +msgid "Helper Processes" +msgstr "Helper proces" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Některé moduly Galerie budou používat programy na Vašem serveru ke zpracování obrázků, " +"archivaci a dalším operacím. Tyto programy mohou být velmi náročné na výkon a mohou ovlivnit " +"celkové zatížení sdíleného serveru. Pokud chcete, můžete spouštět s nižší prioritou. Jestli " +"používáte sdílený server a někomu nebo něčemu by se vyšší zatížení nemuselo líbit, zkuste " +"nastavit nižší prioritu." + +msgid "Priority" +msgstr "Priorita" + +msgid "Save" +msgstr "Uložit" + +msgid "Reset" +msgstr "Výchozí hodnoty" + +msgid "Create A New Group" +msgstr "Vytvořit novou skupinu" + +msgid "Group Name" +msgstr "Jméno skupiny" + +msgid "(required)" +msgstr "(vyžadováno)" + +msgid "You must enter a group name" +msgstr "Musíte zadat jméno skupiny" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Skupina '%s' už existuje" + +msgid "Create Group" +msgstr "Vytvořit skupinu" + +msgid "Cancel" +msgstr "Zrušit" + +msgid "Create A New User" +msgstr "Vytvořit nového uživatele" + +msgid "You must enter a username" +msgstr "Musíte zadat uživatelské jméno" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Uživatelské jméno '%s' už existuje" + +msgid "Full Name" +msgstr "Jméno a příjmení" + +msgid "Email Address" +msgstr "E-mail adresa" + +msgid "You must enter an email address" +msgstr "Musíte zadat e-mail adresu" + +msgid "Language" +msgstr "Jazyk" + +msgid "You must enter a password" +msgstr "Musíte zadat heslo" + +msgid "Verify Password" +msgstr "Ověření hesla" + +msgid "You must enter the password a second time" +msgstr "Musíte zadat heslo ještě jednou" + +msgid "The passwords you entered did not match" +msgstr "Hesla, která jste zadal, nejsou shodná" + +msgid "Create User" +msgstr "Vytvořit uživatele" + +msgid "Delete A Group" +msgstr "Smazat skupinu" + +msgid "Are you sure?" +msgstr "Jste si jisti?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Tímto bude kompletně odstraněn %s z Galerie. Není žádné cesty zpět!" + +msgid "Delete" +msgstr "Smazat" + +msgid "Delete a User" +msgstr "Smazat uživatele" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "Uživatel %s je vlastník položek %s." + +#, c-format +msgid "Delete user %s and..." +msgstr "Smazat uživatele %s a..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Určit nového vlastníka pro všechny položky %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Smazat všechny položky %s a přiřadit nového vlastníka všem zbývajícím neprázdným albům. " +"Položky %s bez oprávnění ke smazání budou také přiřazeny novému vlastníkovi." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Nový vlastník (při nevyplnění se vybere jeden ze správců):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "Uživatel '%s' neexistuje! Není možné přiřadit položky neexistujícímu uživateli." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Nový uživatel musí být jiný než ten, kterého se chystáte smazat!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Nový vlastník nemůže být Návštěvník ani anonymní uživatel!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Tímto bude kompletně odstraněn %s z Galerie. Není žádné cesty zpět!" + +msgid "Edit a group" +msgstr "Upravit skupinu" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Upravit členy skupiny %s" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Uživatel '%s' přidán do skupiny '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Odstraněn '%s' uživatel ze skupiny '%s'" +msgstr[1] "Odstraněni '%s' uživatelé ze skupiny '%s'" +msgstr[2] "Odstraněno '%s' uživatelů ze skupiny '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Tato skupina obsahuje %d uživatele" +msgstr[1] "Tato skupina obsahuje %d uživatele" +msgstr[2] "Tato skupina obsahuje %d uživatelů" + +msgid "Members" +msgstr "Členové" + +msgid "« first" +msgstr "« první" + +msgid "« back" +msgstr "« zpět" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Strana %d z %d" + +msgid "next »" +msgstr "další »" + +msgid "last »" +msgstr "poslední »" + +msgid "Filter" +msgstr "Filtr" + +msgid "Clear" +msgstr "Smazat" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d uživatel odpovídá zvolenému filtru" +msgstr[1] "%d uživatelé odpovídají zvolenému filtru" +msgstr[2] "%d uživatelů odpovídají zvolenému filtru" + +msgid "Remove selected" +msgstr "Odstranit vybrané" + +msgid "You must select a user to remove." +msgstr "Musíte vybrat uživatele k odstranění." + +msgid "You can't remove yourself from this group." +msgstr "Z této skupiny nemůžete odebrat sám sebe." + +msgid "Add Member" +msgstr "Přidat člena" + +msgid "Add" +msgstr "Přidat" + +msgid "You must enter a username." +msgstr "Musíte zadat uživatelské jméno." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Uživatel '%s' neexistuje." + +msgid "This user already is in this group." +msgstr "Tento uživatel už je členem vybrané skupiny." + +msgid "Done" +msgstr "Hotovo" + +msgid "Edit a user" +msgstr "Upravit uživatele" + +msgid "That username is already in use" +msgstr "Toto uživatelské jméno je již obsazeno" + +msgid "You must enter a new username" +msgstr "Musíte zadat nové uživatelské jméno" + +msgid "E-mail Address" +msgstr "E-mail adresa" + +msgid "(suggested)" +msgstr "(doporučeno vyplnit)" + +msgid "Options" +msgstr "Nastavení" + +msgid "Lock user." +msgstr "Uzamknout uživatele." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Uzamčení uživatelé nejsou schopni upravovat údaje svého účtu (heslo, jméno, e-mail, atd)." + +msgid "Reset failed login count." +msgstr "Vynulovat počítadlo neúspěšných pokusů o přihlášení." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d neúspěšných pokusů o přihlášení od posledního úspěšného přihlášení." +msgstr[1] "%d neúspěšných pokusů o přihlášení od posledního úspěšného přihlášení." +msgstr[2] "%d neúspěšných pokusů o přihlášení od posledního úspěšného přihlášení." + +msgid "Group Management" +msgstr "Správa skupin" + +#, c-format +msgid "Removed group '%s'" +msgstr "Odstraněna skupina '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Vytvořena skupina '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Skupina '%s' upravena" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "V systému je %d položka." +msgstr[1] "V systému jsou %d položky." +msgstr[2] "V systému je %d položek." + +msgid "Edit Group" +msgstr "Upravit skupinu" + +msgid "Edit" +msgstr "Upravit" + +msgid "Add/Remove Users" +msgstr "Přidat/Odebrat uživatele" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Skupina '%s' neexistuje." + +msgid "You cannot delete that group" +msgstr "Tuto skupinu nemůžete smazat." + +msgid "You cannot edit that group's users" +msgstr "Uživatele této skupiny nemůžete upravit." + +msgid "Edit Group (by list)" +msgstr "Upravit skupinu (podle seznamu)" + +msgid "Action" +msgstr "Akce" + +msgid "edit" +msgstr "upravit" + +msgid "delete" +msgstr "smazat" + +msgid "members" +msgstr "členi" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d skupina odpovídá zvolenému filtru" +msgstr[1] "%d skupiny odpovídají zvolenému filtru" +msgstr[2] "%d skupin odpovídají zvolenému filtru" + +msgid "System Maintenance" +msgstr "Údržba systému" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Úspěšně dokončena úloha: %s." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Chyba při úloze: %s." + +msgid "Task name" +msgstr "Jméno úlohy" + +msgid "Last run" +msgstr "Poslední běh" + +msgid "Success/Fail" +msgstr "Status" + +msgid "Not run yet" +msgstr "Ještě nespuštěno" + +msgid "Success" +msgstr "OK" + +msgid "Failed" +msgstr "Chyba" + +msgid "run now" +msgstr "spustit teď" + +msgid "Last Run Details:" +msgstr "Detaily posledního testu:" + +msgid "Performance Tuning" +msgstr "Ladění výkonu" + +msgid "Updated performance settings successfully" +msgstr "Úspěšně zaktualizováno nastavení výkonnosti" + +msgid "Deleted all saved pages" +msgstr "Vymazány všechny uložené stránky" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Ukládáním kompletních web stránek do databáze lze zvýšit výkon Galerie. To značně sníží " +"množství zdrojů databáze a webového serveru potřebných k zobrazení stránky. Nevýhoda je, že " +"zobrazená stránka nemusí být úplně aktuální. Nicméně vždy je možné získat nejnovější verzi " +"vynucením obnovení pomocí webového prohlížeče. Nejčastěji se toto dá provést podržením " +"klávesy Shift a kliknutím na tlačítko Obnovit." + +msgid "Partial Acceleration" +msgstr "Částečná akcelerace" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Částečná akcelerace zvýší výkon přibližně o 10-25%, ale některá dynamická data (například " +"počet zobrazení) nemusí být dobře aktualizována. Veškerý obsah zobrazený v blocích (jako je " +"blok náhodných obrázků nebo například bloky v postranním panelu) proto bude aktualizován při " +"každém požadavku." + +msgid "Full Acceleration" +msgstr "Plná akcelerace" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Plná akcelerace zvýší výkon přibližně o 90%, ale žádná dynamická data (blok náhodných " +"obrázků, další bloky v postranním panelu, počet položek v nákupním košíku, počet zobrazení " +"apod.) nebudou aktualizována, dokud uložená stránka nevyexpiruje." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Můžete také nastavit, kdy uložené stránky vyexpirují. Nastavení delšího času sníží zátěž " +"serveru, ale zvýší interval, ve kterém uživatelé uvidí změny na stránkách. Kratší čas bude " +"znamenat aktuálnější obsah pro uživatele, ale také výšší zátěž serveru." + +msgid "Here are some standard acceleration profiles:" +msgstr "Zde jsou některé standardní akcelerační profily:" + +msgid "Medium acceleration" +msgstr "Střední akcelerace" + +msgid "High acceleration" +msgstr "Vysoká akcelerace" + +msgid "Guest Users" +msgstr "Návštěvníci" + +msgid "Expires after:" +msgstr "Vyprší po:" + +msgid "Clear Saved Pages" +msgstr "Výmaz uložených stránek" + +msgid "Status: Inactive" +msgstr "Stav: Neaktivní" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ deaktivován" + +msgid "Status: Active" +msgstr "Stav: Aktivní" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ aktivován" + +msgid "Status: Not Installed" +msgstr "Stav: Nenainstalovaný" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ odinstalován" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Stav: Nutná aktualizace (neaktivní)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Stav: Nekompatibilní plugin (neaktivní)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Stav: Neaktivní (vyžadována konfigurace)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ potřebuje konfiguraci" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ smazán" + +msgid "Warning!" +msgstr "Varování!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Opravdu chcete odinstalovat __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "Dojde také k odstranění všech oprávnění a smazání všech dat vytvořených tímto modulem." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Tento plugin bude odinstalován, ale jeho soubory budou zachovány, aby jej bylo možné " +"reinstalovat." + +msgid "Yes" +msgstr "Ano" + +msgid "No" +msgstr "Ne" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Opravdu chcete odinstalovat __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Tento plugin bude odinstalován a jeho soubory budou smazány." + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "znemožněno(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "aktuální(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "nenainstalované(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "vyžadjící aktualizace(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "nekompatibilní(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Nezdařilo se úplně smazat __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Pluginy Galerie" + +msgid "Get More Plugins" +msgstr "Získat další pluginy" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Vlastnosti Galerie jsou dostupné v oddělených pluginech. Pokud chcete rozšířit možnosti " +"Galerie, můžete stáhnout a nainstalovat další pluginy. Naopak můžete vypnout ty vlastnosti, " +"které nechcete používat. Při použití modulu je třeba modul nejdříve nainstalovat, v " +"některých případech nakonfigurovat a nakonec aktivovat. Pokud nechcete tuto vlastnost " +"používat, můžete ji deaktivovat." + +msgid "Plugin Name" +msgstr "Jméno pluginu" + +msgid "Installed" +msgstr "Nainstalovaná" + +msgid "Version" +msgstr "Verze" + +msgid "Actions" +msgstr "Akce" + +msgid "help" +msgstr "pomoc" + +#, c-format +msgid "Screenshot for %s" +msgstr "Náhled pro %s" + +msgid "Incompatible plugin!" +msgstr "Nekompatibilní plugin!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Vyžadované API jádra: %s (dostupné: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Vyžadované API pluginu: %s (dostupné: %s)" + +msgid "configure" +msgstr "konfigurovat" + +msgid "up to date" +msgstr "aktuální" + +msgid "upgrade required" +msgstr "vyžadována aktualizace" + +msgid "not installed" +msgstr "neinstalováno" + +msgid "incompatible" +msgstr "nekompatibilní" + +msgid "Repository" +msgstr "Zdroj" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Prosím ujistěte se, že Vaše internetové připojení je správně nakonfigurováno a zkuste to " +"znovu." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "Index zdroje byl úspěšně aktualizován." + +msgid "All plugins are already up-to-date." +msgstr "Všechny pluginy již jsou aktuální." + +#, c-format +msgid "%s plugin updated." +msgstr "%s plugin aktualizován." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d jazykový balíček smazán." +msgstr[1] "%d jazykové balíčky smazány." +msgstr[2] "%d jazykových balíčků smazáno." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"Žádné osobní údaje o Vás nebo o Vaší instalaci Galerie nejsou nikdy odesílány na Gallery " +"server." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Stahujte a instalujte nové pluginy rychle a snadno. Rozhodnete-li se, že plugin Vám " +"nevyhovuje, můžete jej z Galerie odstranit. Existují různé zdroje pluginů, můžete si vybrat, " +"který chcete použít (lze použít všechny zdroje naráz). Jakmile si vyberete, musíte " +"pravidelně stahovat nejnovější seznam pluginů aby jste věděli o nových aktualizacích. %s u " +"pomalejších připojení tento proces zabere minutu až dvě." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Oficiálně vydané verze pluginů projektu Galerie (%sdoporučeno%s)" + +#, c-format +msgid "last updated on %s" +msgstr "naposledy aktualizováno %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Experimentální verze pluginů projektu Galerie (%snové schopnosti, mohou obsahovat chyby%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Pluginy od uživatelů Galerie (%spoužít na vlastní nebezpečí!%s)" + +msgid "Repository Error" +msgstr "Chyba zdroje" + +msgid "You must select at least one repository." +msgstr "Musíte vybrat alespoň jeden zdroj." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Konfigurovat Vaši Galerii" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Předtím, než mužete pokračovat, musíte změnit určitá oprávnění tak, aby Galerie mohla " +"pluginy nainstalovat. Je to jednoduché. Proveďte jen následující na shellu nebo pomocí " +"Vašeho ftp klienta:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Pokud máte se změnami oprávnění potíže, požádejte o pomoc Vašeho správce. Po spravném " +"nastavení oprávnění pokračujte kliknutím na tlačítko Pokračovat (Continue)." + +msgid "Continue" +msgstr "Pokračovat" + +msgid "Download Plugin List" +msgstr "Stáhnoutseznam pluginů" + +msgid "Show Repository List" +msgstr "Zobrazit seznam zdrojů" + +msgid "Upgrade Gallery" +msgstr "Aktualizovat Galerii" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Je k dispozici novější verze Galerie, ale nemůže být aktualizována v tomto rozhraní. " +"Aktualizace může způsobit nefunkčnost některých Vašich pluginů, ale některé další pluginy se " +"mohou stát s novou verzí Galerie dostupnými. Zde jsou doporučené kroky k aktualizaci:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sStáhnout%s jádro Galerie" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Přečíst %sinstrukce k aktualizaci%s a provést aktualizaci" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Nekompatibilní pluginy budou označeny ikonou s vykřičníkem." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Je k dispozici nová verze modulu jádra. Některé pluginy mohou být nekompatibilní s " +"nainstalovanou verzí modulu jádra. Můžete zobrazit %skompletní seznam%s pluginů včetně těch " +"nekompatibilních - ty budou zobrazeny s červenou ikonou." + +msgid "upgrade available" +msgstr "je dostupná aktualizace" + +msgid "locked" +msgstr "uzamčeno" + +msgid "Theme Name" +msgstr "Jméno tématu" + +msgid "Module Name" +msgstr "Jméno modulu" + +msgid "Latest" +msgstr "Nejnovější" + +msgid "Locked Plugin" +msgstr "Uzamčený plugin" + +msgid "Incompatible Plugin" +msgstr "Nekompatibilní plugin" + +msgid "Upgrade Available" +msgstr "Je dostupná aktualizace" + +msgid "download" +msgstr "stáhnout" + +msgid "modify" +msgstr "upravit" + +msgid "Upgrade All Plugins" +msgstr "Aktualizovat všechny pluginy" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Galerie může automaticky zaktualizovat Vaše témata a moduly na nejnovější dostupné verze. " +"Žádné nové pluginy nebudou stahovány." + +msgid "Upgrade All" +msgstr "Aktualizovat vše" + +#, c-format +msgid "Download %s" +msgstr "Stáhnout %s" + +msgid "No packages have been selected." +msgstr "Nebyly vybrány žádné balíčky." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Pro používání pluginu stáhněte instalační balíček. Můžete aktualizovat výběrem novější verze " +"ke stažení. Jazykové balíčky jsou volitelné, Vám postačí pouze ten, který používáte na Vašem " +"webu." + +msgid "Base Packages" +msgstr "Základní balíčky" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: verze %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: verze %s (build %s) %snainstalování nižší verze není podporováno!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%snyní nainstalována%s: verze %s (build %s)" + +msgid "Language Packages" +msgstr "Jazykové balíčky" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%svybrat vše%s%snevybrat nic%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s verze %s (aktualizuji z %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s verze %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s verze %s (%snovější verze %s je instalována%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s verze %s (nyní instalována)" + +msgid "No compatible language packages available" +msgstr "Není dostupný žádný kompatibilní jazykový balíček" + +msgid "You must select a base package before choosing language packs." +msgstr "Před výběrem jazykového balíčku musíte vybrat základní soubory." + +msgid "Update" +msgstr "Aktualizovat" + +msgid "Gallery Themes" +msgstr "Témata Galerie" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Úspěšně aktivováno téma %s" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Úspěšně deaktivováno téma %s" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Úspěšně nainstalováno téma %s" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Úspěšně odinstalováno téma %s" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Úspěšně aktualizováno téma %s" + +msgid "Successfully saved default album settings" +msgstr "Výchozí nastavení alba úspěšně uloženo" + +msgid "Restored theme settings" +msgstr "Obnoveno nastavení tématu" + +msgid "Defaults" +msgstr "Výchozí hodnoty" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Toto je výchozí nastavení zobrazení pro alba ve Vaší Galerii. To může být potlačeno " +"nastavením každého alba." + +msgid "Default sort order" +msgstr "Výchozí třídění" + +msgid "with" +msgstr "s" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Nová alba" + +msgid "Save Defaults" +msgstr "Uložit výchozí hodnoty" + +#, c-format +msgid "%s Theme Settings" +msgstr "Nastavení tématu %s" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Toto jsou globální nastavení tématu. Ta mohou být potlačena nastavením každého alba." + +msgid "Available" +msgstr "Dostupné" + +msgid "Choose a block" +msgstr "Vyberte blok" + +msgid "Selected" +msgstr "Vybrané" + +msgid "Remove" +msgstr "Odstranit" + +msgid "Move Up" +msgstr "Přesunout nahoru" + +msgid "Move Down" +msgstr "Přesunout dolu" + +msgid "Parameter" +msgstr "Parametr" + +msgid "Value" +msgstr "Hodnota" + +msgid "There are no settings for this theme" +msgstr "Pro toto téma není žádné nastavení" + +msgid "Save Theme Settings" +msgstr "Uložit nastavení tématu" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Možnosti a MIME typy nástrojů zobrazených níže se místy překrývají. Seřaďte nástroje tak, " +"aby bylo možné určit, které z nich budou použité pro danou operaci." + +msgid "Toolkit" +msgstr "Nástroj" + +msgid "Order" +msgstr "Pořadí" + +msgid "up" +msgstr "nahoru" + +msgid "down" +msgstr "dolu" + +msgid "User Management" +msgstr "Správa uživatelů" + +#, c-format +msgid "Removed user '%s'" +msgstr "Odstraněn uživatel '%s'" + +#, c-format +msgid "Created user '%s'" +msgstr "Vytvořen uživatel '%s'" + +#, c-format +msgid "Modified user '%s'" +msgstr "Uživatel '%s' upraven" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "V systému je %d uživatel." +msgstr[1] "V systému jsou %d uživatelé." +msgstr[2] "V systému je %d uživatelů." + +msgid "Edit User" +msgstr "Upravit uživatele" + +msgid "You cannot delete yourself!" +msgstr "Nemůžete smazat sám sebe!" + +msgid "You cannot delete the special guest user." +msgstr "Návštěvník je speciální uživatel a nemůžete ho smazat." + +msgid "Edit User (by list)" +msgstr "Upravit uživatele (podle seznamu)" + +msgid "Locked" +msgstr "Uzamčeno" + +msgid "Failed Logins" +msgstr "Neúspěšná přihlášení" + +msgid "Thumbnails" +msgstr "Náhledy" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Galerie může udělat náhledy buď při uploadu nebo později při prvním prohlížení alba. V obou " +"případech je potřeba vytvořit náhledy pouze jednou. Pokud je dáte udělat nyní, velmi se " +"zrychlí první prohlížení, ale prodlouží se nahrávání (upload)." + +msgid "Create thumbnails now" +msgstr "Vytvořit náhledy nyní" + +msgid "This is a test email from Gallery2" +msgstr "Toto je testovací email z Galerie 2" + +msgid "Edit Conflict!" +msgstr "Editovat konflikt!" + +msgid "Security Violation" +msgstr "Nepovolená operace" + +msgid "Database Error" +msgstr "Chyba databáze" + +msgid "Platform Error" +msgstr "Chyba platformy" + +msgid "Authentication Failure" +msgstr "Chybná autentizace" + +msgid "Error" +msgstr "Chyba" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Vaše změna nemůže být dokončena, protože jiný uživatel provedl konfliktní změnu pro stejnou " +"položku. Použijte tlačitko zpět ve Vašem prohlížeči, na předchozí stránce dejte Obnovit " +"tuto stránku a zkuste provést změnu ještě jednou." + +msgid "Go back and try again" +msgstr "Vrátit zpět a zkusit znovu" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Pokud se tento problém opakuje, může to být poruchou ve Vaší cache. Správce může tuto cache " +"vyprázdnit." + +msgid "Clear the cache" +msgstr "Vymazání uložených stránek" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Případně se můžete vrátit do hlavního menu Galerie a pokračovat v prohlížení." + +msgid "The action you attempted is not permitted." +msgstr "Akce, o kterou jste se pokusil, není povolená." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Vámi požadované změny nemohly být dokončeny z důvodu ztráty dat během sezení (session). " +"Pokud změnu nelze provést, zkuste se odhlásit a poté přihlásit zpět." + +msgid "An error has occurred while interacting with the database." +msgstr "Nastala chyba při operaci s databází." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"Přesná podstata chyby databáze není dostupná, pokud není povolen ladící mód v config.php. " +"Než začnete hledat pomoc kvůli této chybě, zapněte prosím \"buffered debug output\" a zkuste " +"tuto operaci znovu. Detaily chyb hledejte na konci dlouhého výstupu." + +msgid "An error has occurred while interacting with the platform." +msgstr "Nastala chyba při operaci s platformou." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Přesná povaha chyby není známá. Častou příčinou mohou být nedostatečná práva na souborovém " +"systému. K tomu může dojít změnou na souborovém systému, například obnovou dat ze záloh." + +msgid "Item not found." +msgstr "Položka nenalezena." + +msgid "An error has occurred." +msgstr "Nastala chyba." + +msgid "Back to the Gallery" +msgstr "Zpět na Galerii" + +msgid "Error Detail" +msgstr "Detail chyby" + +msgid "System Information" +msgstr "Systémové informace" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Nemáte aktivován žádný grafický nástroj pro JPEG obrázky. Pokud přidáte obrázky, " +"pravděpodobně nebudete mít žádné náhledy." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Navštivte stránku Moduly a aktivujte grafické nástroje." + +msgid "Add Sub-Album" +msgstr "Přidat vnořené album" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Jméno alba na Vašem disku. Toto jméno musí být v albu jedinečné. Použijte alfanumerické " +"znaky, podtržítka a pomlčky. Album je možné později přejmenovat." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Vaše jméno obsahuje špatné znaky. Prosím zadejte jiné." + +msgid "You must enter a name for this album." +msgstr "Musíte zadat jméno tohoto alba." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Jméno, které jste zadali, je již použité. Prosím, zadejte jiné." + +msgid "This is the album title." +msgstr "Toto je titulek alba." + +msgid "This is the album summary." +msgstr "Toto je souhrn alba." + +msgid "Keywords are not visible, but are searchable." +msgstr "Klíčová slova nejsou viditelná, ale dá se v nich vyhledávat." + +msgid "This is the long description of the album." +msgstr "Toto je dlouhý popis alba." + +msgid "Create" +msgstr "Vytvořit" + +msgid "Upload Complete" +msgstr "Upload kompletní" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Úspěšně přidán %d soubor." +msgstr[1] "Úspěšně přidány %d soubory." +msgstr[2] "Úspěšně přidáno %d souborů." + +msgid "No files added." +msgstr "Nepřidány žádné soubory." + +#, c-format +msgid "Added %s" +msgstr "Přidáno: %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Chyba při přidání %s" + +msgid "Add more files" +msgstr "Přidat více souborů" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Na tento webový server je zakázáno uploadovat soubory z webového prohlížeče. Prosím " +"kontaktujte správce serveru." + +msgid "Upload files directly from your computer." +msgstr "Zde můžete uploadnout soubory přímo z Vašeho počítače." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Do následujících polí zadejte celou cestu k souboru a případně popisek." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Poznámka: Můžete uploadnout až %s najednou. Pokud chcete uploadnout více, nahrajte " +"soubory postupně, použijte jiný způsob uploadu nebo požádejte správce serveru o povolení " +"větších objemů dat." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Poznámka: Můžete nahrát až %s najednou. Žádný soubor nesmí být větší než %s. Pokud " +"chcete nahrát více, nahrajte soubory zvlášť, použijte jiný způsob uploadu nebo požádejte " +"správce serveru o povolení větších objemů dat." + +msgid "More Upload Boxes..." +msgstr "Více políček pro upload..." + +msgid "Set item titles from:" +msgstr "Nastavit titulky z:" + +msgid "Assign caption to:" +msgstr "Přiřadit popisek k:" + +msgid "No Thumbnail" +msgstr "Bez náhledu" + +msgid "Delete Items" +msgstr "Smazat položky" + +msgid "No items were selected for deletion" +msgstr "Nebyly vybrány žádné položky ke smazání" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Úspěšně smazána %d položka" +msgstr[1] "Úspěšně smazány %d položky" +msgstr[2] "Úspěšně smazáno %d položek" + +msgid "This album contains no items to delete" +msgstr "Toto album neobsahuje žádné položky pro smazání." + +msgid "Choose the items you want to delete" +msgstr "Vyberte položky, které chcete smazat" + +#, c-format +msgid "(page %d of %d)" +msgstr "(strana %d z %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Položky zde vybrané zůstanou během přesunů mezi stránkami vybrané." + +# gettext claims msgstr[0] should have a %d +# perhaps because msgstr[0] could be used for numbers other than ONE +# based on the plurals formula in the header of this file. +# perhaps replace jedna with %d ? +#, fuzzy, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Vybrána jedna položka na jiné stránce." +msgstr[1] "Vybrány %d položky na jiné stránce." +msgstr[2] "Vybráno %d položek na jiné stránce." + +msgid "(data)" +msgstr "(data)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(album obsahující %d položku)" +msgstr[1] "(album obsahující %d položky)" +msgstr[2] "(album obsahující %d položek)" + +msgid "(empty album)" +msgstr "(prázdné album)" + +msgid "Check All" +msgstr "Vybrat vše" + +msgid "Check None" +msgstr "Zrušit výběr všech" + +msgid "Invert" +msgstr "Invertovat" + +msgid "Previous Page" +msgstr "Předchozí strana" + +msgid "Next Page" +msgstr "Další strana" + +msgid "Deletion Complete" +msgstr "Smazání hotovo" + +msgid "Item successfully deleted" +msgstr "Položka úspěšně smazána" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Jste si jisti že chcete smazat %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Obsahuje %d položku." +msgstr[1] "Obsahuje %d položky." +msgstr[2] "Obsahuje %d položek." + +msgid "There is no undo!" +msgstr "Není možnost návratu!" + +msgid "There was a problem processing your request." +msgstr "Při zpracování Vaší žádosti se vyskytl problém." + +msgid "Sort order" +msgstr "Pořadí třídění" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Toto je nastavení třídění pro album. To bude aplikováno pro všechny současné položky a také " +"pro všechny nové." + +msgid "Apply to all subalbums" +msgstr "Aplikovat i na vnořená alba" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "Každá položka potřebuje náhled. Vyberte výchozí velikost v pixelech." + +msgid "You must enter a number (greater than zero)" +msgstr "Musíte zadat číslo (větší než nula)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Použít tuto velikost náhledů pro všechna vnořená alba" + +msgid "Resized Images" +msgstr "Zmenšené obrázky" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "Každá položka ve Vašem albu může mít více velikostí. Zde nastavte výchozí velikost." + +msgid "Active" +msgstr "Aktivní" + +msgid "Target Size (pixels)" +msgstr "Cílová velikost (v pixelech)" + +msgid "You must enter a valid size" +msgstr "Musíte zadat platnou velikost" + +msgid "Use these target sizes in all subalbums" +msgstr "Použít tuto cílovou velikost pro všechna vnořená alba" + +msgid "Apply settings to existing items" +msgstr "Použít nastavení na existující položky" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Nastavení pro náhledy a zmenšené obrázky jsou pro nové položky. Pro použití těchto nastavení " +"na všechny položky Vašeho alba, zaškrtněte odpovídající políčko. U vnořených alb je " +"nastavení u každého alba použito na jejich náhledy/zmenšeniny, které nemusí odpovídat " +"nastavením nahoře. Vytváření obrázků tuto operaci nyní prodlouží, ale ušetří čas u vytvoření " +"souboru a jeho umísťení v cache, když je obrázek poprvé prohlížen." + +msgid "Apply album setting to thumbnails" +msgstr "Použít nastavení alba na náhledy" + +msgid "... and for all subalbums" +msgstr "... pro všechna vnořená alba" + +msgid "Build thumbnails too" +msgstr "Vytvořit také náhledy" + +msgid "Apply album setting to resized images" +msgstr "Použít nastavení alba na zmenšeniny" + +msgid "Build resizes too" +msgstr "Vytvořit také zmenšeniny" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Pokud má Galerie správně zobrazit tuto animaci, musí znát její šířku a výšku. Pokud máte " +"nainstalované grafické nástroje, které si poradí s tímto typem animace, pak jsou možná tyto " +"hodnoty už správně nastavené. Pokud ne, jsou nejspíše nastavené na nulu. Pokud zde " +"nezadáte správné hodnoty, animace může být při prohlížení zkreslená. Změna těchto hodnot " +"nijak nezmění samotný soubor. Pokusy s různými nastaveními tedy nemohou způsobit " +"žádné škody." + +msgid "Width" +msgstr "Šířka" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Musíte zadat hodnotu větší nebo rovnu nule" + +msgid "Height" +msgstr "Výška" + +msgid "There were errors saving some items" +msgstr "Při ukládání některých položek došlo chybám" + +msgid "There were errors saving all items" +msgstr "Při ukládání všech položek došlo chybám" + +msgid "Successfully saved all items" +msgstr "Všechny položky úspěšně uloženy" + +msgid "This album contains no items" +msgstr "Toto album neobsahuje žádné položky" + +msgid "Saved successfully." +msgstr "Úspěšně uloženo." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Tato položka byla ve stejné době změněna i jiným uživatelem. Vaše změny byly ztracené." + +msgid "You do not have permissions to modify this item." +msgstr "Nemáte oprávnění ke změně této položky." + +msgid "Save and Done" +msgstr "Uložit a ukončit" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Uložit a editovat předcházející %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Uložit a editovat dalších %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Jméno položky na Vašem disku. Toto jméno musí být v albu jedinečné. Použijte alfanumerické " +"znaky, podtržítka a pomlčky." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Vaše jméno obsahuje špatné znaky. Prosím vyberte jiné." + +msgid "You must enter a name for this item." +msgstr "Musíte zadat jméno této položky." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Jméno, které jste zadali, je již použité. Prosím, vyberte jiné." + +msgid "The title of this item." +msgstr "Titulek této položky." + +msgid "The root album must have a title." +msgstr "Kořenové album musí mít titulek." + +msgid "The summary of this item." +msgstr "Souhrn této položky." + +msgid "This is the long description of the item." +msgstr "Toto je dlouhý popis položky." + +#, c-format +msgid "%s Date and Time" +msgstr "%s - datum a čas" + +msgid "Set the date and time when this image was captured." +msgstr "Nastavit datum a čas, kdy byla tato fotografie vytvořena." + +msgid "Set the date and time to be displayed for this item." +msgstr "Nastavit datum a čas, který bude zobrazen pro tuto položku." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Nastavit datum a čas, který bude zobrazen pro tuto %s." + +msgid "Date:" +msgstr "Datum:" + +msgid "Time:" +msgstr "Čas:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "Použít původní datum a čas ze souboru (EXIF):" + +msgid "You must enter a valid date and time" +msgstr "Musíte zadat platný datum a čas" + +msgid "Thumbnail" +msgstr "Náhled" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Nastavit velikost náhledu. Velikost nejdelší strany náhledu nebude větší než tato hodnota. " +"Nevyplňujte, pokud nechcete náhled." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Nejsou dostupné žádné nástroje, které podporují tento typ položky, takže není možné vytvořit " +"nebo změnit náhled." + +msgid "Unable to create a thumbnail for this item" +msgstr "Nelze vytvořit náhled této položky" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Pokud má Galerie správně zobrazit toto video, musí znát jeho šířku a výšku. Pokud máte " +"nainstalované grafické nástroje, které si poradí s tímto typem videa, pak jsou možná tyto " +"hodnoty už správně nastavené. Pokud ne, jsou nejspíše nastavené na nulu. Pokud zde " +"nezadáte správné hodnoty, video může být při prohlížení zkreslené. Změna těchto hodnot " +"nijak nezmění samotný soubor. Pokusy s různými nastaveními tedy nemohou způsobit " +"žádné škody." + +msgid "Resized Photos" +msgstr "Zmenšené fotografie" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "Toto jsou alternativní velikosti dostupné pro prohlížení." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Nejsou dostupné žádné nástroje, které podporují tento typ fotografie, takže není možné " +"vytvořit nebo modifikovat zmenšeniny." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Můžete vybrat, které části fotografie budou použity k vytvoření náhledu. Na fotografii to " +"nebude mít žádný efekt." + +msgid "Aspect Ratio: " +msgstr "Zachovat poměr" + +msgid "Crop" +msgstr "Oříznout" + +msgid "Undo Changes" +msgstr "Vrátit změny" + +msgid "Reset to default" +msgstr "Výchozí hodnoty" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Nejsou dostupné žádné nástroje, které podporují tento typ fotografie, takže není možné " +"oříznout náhled." + +msgid "Rotate" +msgstr "Otočit" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Fotografii je možné otočit pouze po 90 stupňových krocích." + +msgid "CC 90°" +msgstr "CC 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Nejsou dostupné žádné nástroje, které podporují tento typ fotografie, takže není možné ji " +"otočit." + +msgid "Scale" +msgstr "Měřítko" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Zmenšit nebo zvětšit původní fotografii. Při změně velikosti fotogragie bude zachován " +"původní poměr stran, čímž se předejde zkreslení. Velikost fotografie bude změněna tak, aby " +"se vešla do obdélníku nebo čtverce Vámi zadané velikosti." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Nejsou dostupné žádné nástroje, které podporují tento typ fotografie, takže není možné ji " +"zmenšit." + +msgid "You must enter a size" +msgstr "Musíte zadat velikost" + +msgid "Preserve Original" +msgstr "Zachovat původní" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Při otáčení a změně měřítka Galerie nijak nemodifikuje vaše původní fotky, ale pracuje s " +"jejich kopiemi. To vyžaduje o trochu více místa na disku, ale zamezí to poškození " +"originálu. Vypnutím této možnosti dojde k tomu, že při akcích jako je otočení nebo změna " +"měřítka bude změněna původní fotografie." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Toto je odkaz na jinou fotografii a není možné ho změnit" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Existují odkazy na tuto fotografii, takže nemůžete změnit originál" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Neexistuje žádný nástroj, který by podporoval úpravy originálu, takže úpravy mohou být " +"použity pouze na kopie" + +msgid "Preserve Original Photo" +msgstr "Zachovat původní fotografii" + +msgid "Modified Photo" +msgstr "Fotografie upravena" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Používáte kopii původní fotografie, která byla zmenšena nebo otočena. Původní fotografie je " +"stále dostupná, ale nepoužívá se. Všechny změny, které provedete, budou aplikovány na kopii." + +msgid "Restore original" +msgstr "Obnovit původní" + +msgid "Choose a theme" +msgstr "Vybrat téma" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Témata ovlivňují vzhled alba. Můžete vybrat různé téma pro každé album. Pokud téma " +"nevyberete, bude použito %s téma jako výchozí." + +msgid "Use this theme in all subalbums" +msgstr "Použít toto téma pro všechna vnořená alba" + +msgid "Choose Theme" +msgstr "Vybrat téma" + +#, c-format +msgid "Configure the %s theme" +msgstr "Nastavit %s téma" + +msgid "These settings only apply to the theme for this album." +msgstr "Tato nastavení budou použita pouze pro téma tohoto alba." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Použít tato nastavení pro všechna vnořená alba, která používají téma %s" + +msgid "Album Highlight" +msgstr "Zvýraznit" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Z této položky můžete udělat náhled pro nadřazené album." + +msgid "Highlight for:" +msgstr "Zvýraznit pro:" + +msgid "Highlight" +msgstr "Zvýraznit" + +msgid "Move an Item" +msgstr "Přesunout položku" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Úspěšně přesunuta %d položka" +msgstr[1] "Úspěšně přesunuty %d položky" +msgstr[2] "Úspěšně přesunuto %d položek" + +msgid "This album contains no items to move." +msgstr "Toto album neobsahuje žádné položky k přesunutí." + +msgid "Source" +msgstr "Zdroj" + +msgid "Choose the items you want to move" +msgstr "Vyberte položky, které chcete přesunout" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "Cíl, který jste vybrali, neumožňuje vnořená alba. Všechna vnořená alba byla odznačena." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Cíl, který jste vybrali, umožňuje pouze vnořená alba. Všechny položky mimo alb byly " +"odznačeny." + +msgid "You are not allowed to move this item away from here." +msgstr "Není Vám dovoleno přesunout tuto položku pryč odsud." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Není Vám dovoleno přesunout album do vybraného cíle." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Není Vám dovoleno přesunout položku do vybraného cíle." + +msgid "You cannot move an album into its own subtree." +msgstr "Nemůžete přesunout album do vlastních vnořených alb." + +msgid "Destination" +msgstr "Cíl" + +msgid "Choose a new album for them" +msgstr "Vyberte pro ně nové album" + +msgid "You don't have the permission to add items in this album" +msgstr "Nemáte oprávnění k přidání položek do tohoto alba" + +msgid "No destination chosen" +msgstr "Nebyl vybrán žádný cíl" + +msgid "Move" +msgstr "Přesunout" + +msgid "Successfully moved" +msgstr "Úspěšně přesunuto" + +msgid "Choose a destination album" +msgstr "Vyberte cílové album" + +msgid "Permissions" +msgstr "Oprávnění" + +msgid "Owner changed successfully" +msgstr "Vlastník byl úspěšně změněn" + +msgid "Group permission added successfully" +msgstr "Skupinová oprávnění úspěšně přidána" + +msgid "User permission added successfully" +msgstr "Uživatelská oprávnění úspěšně přidána" + +msgid "Group permission removed successfully" +msgstr "Skupinová oprávnění úspěšně odebrána" + +msgid "User permission removed successfully" +msgstr "Uživatelská oprávnění úspěšně odebrána" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Každá položka má svojí nezávislou sadu oprávnění. Změna oprávnění u nadřazených položek " +"nemá žádný efekt na oprávnění vnořených. To Vám umožní omezit přístup k nadřazeným položkám " +"této položky, ale zároveň nastavit jiná oprávnění pro tuto položku, a naopak. " +"Nejefektivnější způsob, jak využít tento systém, je vytvořit skupiny a k nim přiřadit " +"oprávnění. Pak, pokud chcete změnit oprávnění konkrétního uživatele, můžete jednoduše přidat " +"(nebo odebrat) uživatele z dané skupiny." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Tuto položku vlastní uživatel: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Tuto položku vlastní uživatel: %s (%s)" + +msgid "New owner" +msgstr "Nový vlastník" + +msgid "Change" +msgstr "Změňit" + +msgid "Apply new owner to sub-items" +msgstr "Použít nového vlastníka pro vnořené položky" + +msgid "You must enter a user name" +msgstr "Musíte zadat uživatelské jméno" + +msgid "The user name you entered is invalid" +msgstr "Jméno uživatele, které jste zadali není správné" + +msgid "Apply changes" +msgstr "Aplikovat změny na vnořené položky" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Tato položka obsahuje další vnořené položky. Změny, které zde provedete, mohou být " +"aplikovány pouze na tuto položku nebo i na všechny vnořené. Nezapomeňte že změny pro " +"vnořené položky budou sloučené s již existujícími oprávněními a mohou být velmi časově " +"náročné, pokud je v albu mnoho vnořených položek. Nejefektivnější je přidávat oprávnění " +"skupinám a pak přidávat nebo odebírat uživatele do/ze skupin. Ve výchozím nastavení budou " +"změny aplikovány i na vnořené položky." + +msgid "Apply to sub-items" +msgstr "Použít i pro vnořené položky" + +msgid "Group Permissions" +msgstr "Oprávnění skupiny" + +msgid "Group name" +msgstr "Jméno skupiny" + +msgid "Permission" +msgstr "Oprávnění" + +msgid "New Group Permission" +msgstr "Nové oprávnění skupiny" + +msgid "Add Permission" +msgstr "Přidat oprávnění" + +msgid "The permission you chose is invalid" +msgstr "Oprávnění, která jste vybral, nejsou správná" + +msgid "The group name you entered is invalid" +msgstr "Jméno skupiny, které jste zadali je nesprávné" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Skupina už toto oprávnění má (zkontrolujte vnořená oprávnění)" + +msgid "User Permissions" +msgstr "Uživatelská oprávnění" + +msgid "User name" +msgstr "Uživatelské jméno" + +msgid "New User Permission" +msgstr "Nové oprávnění uživatele" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Uživatel už vlastní tato oprávnění (zkontrolujte vnořená oprávnění)" + +msgid "Reorder Album" +msgstr "Změnit pořadí alba" + +msgid "Order saved successfully" +msgstr "Uspořádání úspěšně uloženo" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Toto album má nastaveno automatické třídění, takže není možné měnit pořadí položek ručně. " +"Pokud chcete v tomto pokračovat, musíte zrušit automatické třídění." + +msgid "change" +msgstr "změnit" + +msgid "Change the order of the items in this album." +msgstr "Změňit pořadí položek v tomto albu." + +msgid "Move this item" +msgstr "Přesunout tuto položku" + +msgid "before" +msgstr "před" + +msgid "after" +msgstr "za" + +msgid "Reorder" +msgstr "Změnit pořadí" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "Stránky jsou dočasně nedostupné z důvodu údržby." + +msgid "Admin Login" +msgstr "Přihlášení správce" + +msgid "Enter a URL" +msgstr "Zadejte URL" + +msgid "Enter some text describing the URL" +msgstr "Zadejte popis k URL" + +msgid "Enter an image URL" +msgstr "Zadejte URL obrázku" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "seznam" + +msgid "bullet" +msgstr "bullet" + +msgid "url" +msgstr "URL" + +msgid "image" +msgstr "obrázek" + +msgid "color" +msgstr "barva" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Také můžete použít jméno barvy(color name) například: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Chyba konfigurace: Chybějící téma" + +msgid "Missing Theme" +msgstr "Chybějící téma" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Pro tuto stránku je nastaveno téma %s, ale to je buď neaktivní, není nainstalované nebo není " +"kompatibilní." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Pro toto album je nastaveno téma %s, ale to je buď neaktivníi, není nainstalované nebo není " +"kompatibilní." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"K odstranění tohoto problému můžete %snainstalovat nebo zaktivovat toto téma%s nebo vybrat " +"jiné výchozí téma." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"K odstranění tohoto problému se můžete %spřihlásit jako správce%s a potom %snainstalovat " +"nebo zaktivovat toto téma%s nebo vybrat jiné výchozí téma." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"K odstranění tohoto problému můžete %svybrat nové téma tohoto alba%s nebo %snainstalovat " +"nebo zaktivovat toto téma%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"K odstranění tohoto problému můžete %svybrat nové téma tohoto alba%s nebo se %spřihlásit " +"jako správce%s a pak %snainstalovat nebo zaktivovat toto téma%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"K odstranění tohoto problému se můžete %spřihlásit%s a potom %svybrat nové téma tohoto alba%" +"s nebo se %spřihlásit jako správce%s a pak %snainstalovat nebo zaktivovat toto téma%s." + +msgid "Admin Options" +msgstr "Administrace" + +msgid "User Options" +msgstr "Uživatelská nastavení" + +msgid "Password changed successfully" +msgstr "Heslo úspěšně změněno" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Musíte zadat Vaše současné heslo k ověřění Vaší totožnosti. Pak dvakrát zadejte Vaše nové " +"heslo, abychom měli jistotu, že jste neudělal chybu." + +msgid "Current Password" +msgstr "Současné heslo" + +msgid "You must enter your current password" +msgstr "Musíte zadat Vaše současné heslo" + +msgid "Incorrect password" +msgstr "Špatné heslo" + +msgid "New Password" +msgstr "Nové heslo" + +msgid "You must enter a new password" +msgstr "Musíte zadat nové heslo" + +msgid "Verify New Password" +msgstr "Ověření nového hesla" + +msgid "You must enter your new password again!" +msgstr "Musíte zadat Vaše nové heslo ještě jednou!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"U tohoto účtu je zakázáno měnit jeho nastavení. Prosím kontaktujte Vašeho správce Galerie" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "Správce Váš účet uzamkl aby zabránil změnám v informacích o Vašem účtu." + +msgid "Login to your account" +msgstr "Přihlášení k Vašemu účtu" + +msgid "Your password has been recovered, please login." +msgstr "Vaše heslo bylo obnoveno, prosím přihlašte se." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Přihlášování k tomuto účtu bylo dočasně znemožněno z důvodu opakovaných neúspěšných pokusů o " +"přihlášení. Počkejte až bude přístup obnoven, nebo použijte obnovení hesla stránku pro obnovu účtu." + +msgid "Your login information is incorrect. Please try again." +msgstr "Vaše přihlašovací údaje jsou nesprávné. Prosím, zkuste to ještě jednou." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Ztracená nebo zapomenutá hesla mohou být změněna pomocí stránky pro obnovu " +"hesla" + +#, c-format +msgid "Welcome, %s!" +msgstr "Vítejte, %s!" + +msgid "Account settings saved successfully" +msgstr "Nastavení účtu úspěšně uloženo" + +msgid "(required, password required for change)" +msgstr "(vyžadováno, pro změnu je potřeba heslo)" + +msgid "(suggested, password required for change)" +msgstr "(doporučeno, pro změnu je potřeba heslo)" + +msgid "(required to change the e-mail address)" +msgstr "(vyžadováno pro změnu e-mail adresy)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Pro změnu e-mail adresy musíte zadat Vaše současné heslo" + +msgid "Recover a lost or forgotten password" +msgstr "Obnovit ztracené nebo zapomenuté heslo" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Obnovení Vašeho hesla vyžaduje vyplněnou email adresu ve Vašem účtu. Bude Vám zasláno " +"potvrzení obsahující URL adresu, kterou musíte navštívit k nastavení nového hesla pro Váš " +"účet. Pro zamezení zneužití nemohou být tyto informace poslány častěji než po 20 minutách. " +"Zaslaná URL adresa bude platná 7 dní. Pokud nebude v této době navštívena, bude zneplatněna, " +"a bude potřeba vygenerovat nový požadavek." + +msgid "Your recovery request has been sent!" +msgstr "Žádost o obnovu byla poslána!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Nezapomeňte, že pokud v profilu nemáte zadanou email adresu, nemůže Galerie ověřit Vaší " +"identitu a musíte sami kontaktovat správce." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Správci mohou využít stránku %sNouzová obnova hesla%s pro obnovu účtu, pokud nemohou získat " +"email s přihlašovacími údaji nebo v Galerii nemají zadán správný email." + +msgid "Recover" +msgstr "Obnovit" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Před procesem obnovy hesla musíme ověřit Vaší totožnost. Nejjednodušší způsob je požádat Vás " +"o malou změnu v adresáři Galerie, čímž zjistíme zda máte dostatečná oprávnění. Takže prosím " +"vytvořte nový textový soubor %s v adresáři Vaší Galerie. Tento soubor musí obsahovat " +"následující náhodně generované znaky:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Pro zjednodušení jsme pro Vás připravili %ssprávný soubor login.txt%s. Stačí tedy, když ho " +"stáhnete a zkopírujete do správného adresáře." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Jakmile tento soubor uploadnete, klikněte na tlačítko obnovit." + +msgid "Emergency Administrator Password Reset" +msgstr "Nouzové nastavení hesla správce" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "Tato stránka může být správcem použita pro bezpečné zrušení hesla k jakémukoliv účtu." + +msgid "Authorization Confirmed" +msgstr "Autorizace potvrzena" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Vaše autorizace byla potvrzena. Prosím zadejte nové heslo. Po jeho nastavení budete " +"přesměrováni na přihlašovací stránku." + +msgid "Recover Password for Username" +msgstr "Obnovit heslo pro uživatele" + +msgid "You must enter a username to recover the password for." +msgstr "Musíte zadat uživatelské jméno." + +msgid "The username you entered does not exist." +msgstr "Uživatelské jméno, které jste zadali, neexistuje." + +msgid "Authorization Incorrect" +msgstr "Chybná autorizace" + +msgid "Recovery Instructions" +msgstr "Instrukce pro obnovu" + +msgid "AuthFile Missing" +msgstr "Chybějící AuthFile" + +msgid "AuthFile Unreadable" +msgstr "Autorizační soubor nečitelný" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Váš soubor %s není čitelný. Prosím přidělte Galerii oprávnění pro čtení souboru." + +msgid "Refresh" +msgstr "Obnovit" + +msgid "This page will allow you to reset the password on your account." +msgstr "Tato stránka Vám umožní vynulovat heslo k Vašemu účtu." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Takovýto požadavek pro toto uživatelské jméno není k dispozici. Nový požadavek si můžete " +"vyžádat na stránce pro zapomenuté heslo" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Požadavek, který se snažíte využít, vypršel. Nový požadavek si můžete vyžádat na stránce pro " +"zapomenuté heslo" + +msgid "Authorization missing" +msgstr "Chybí správná autorizace" + +msgid "Username missing" +msgstr "Chybějící uživatel" + +msgid "Submit" +msgstr "Potvrdit" + +#, c-format +msgid "Hello %s," +msgstr "Ahoj %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "tento mail jste obdrželi z důvodu obnovy hesla pro %s, které bylo vyžádáno %s v %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Vaše uživatelské jméno: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Pro dokončení obnovy hesla prosím klikněte na následující odkaz a zadejte požadované " +"informace:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Pokud jste si nevyžádali tento mail, můžete ho klidně ignorovat." + +msgid "Thank you!" +msgstr "Děkujeme!" + +msgid "guest" +msgstr "návštěvník" + +#, c-format +msgid "display mode: %s" +msgstr "mód zobrazení: %s" + +#, c-format +msgid "Date: %s" +msgstr "Datum: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Vlastník: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Velikost: %d položka" +msgstr[1] "Velikost: %d položky" +msgstr[2] "Velikost: %d položek" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(celkem %d položka)" +msgstr[1] "(celkem %d položky)" +msgstr[2] "(celkem %d položek)" + +#, c-format +msgid "Views: %d" +msgstr "Zobrazení: %d" + +msgid "« album actions »" +msgstr "« akce alba »" + +msgid "« item actions »" +msgstr "« akce položky »" + +msgid "Go" +msgstr "Jít" + +msgid "Navigation" +msgstr "Navigace" + +msgid "next" +msgstr "další" + +msgid "last" +msgstr "poslední" + +#, c-format +msgid "Page %d of %d" +msgstr "Strana %d z %d" + +#, c-format +msgid "%d of %d" +msgstr "%d z %d" + +msgid "first" +msgstr "první" + +msgid "previous" +msgstr "předchozí" + +msgid "Page:" +msgstr "Strana:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Velikost: " + +msgid "Unknown" +msgstr "neznámý" + +msgid "Full size: " +msgstr "Plná velikost: " + +msgid "Setting" +msgstr "Nastavení" + +msgid "Use Global" +msgstr "Použít globálně" + +msgid "Language selector" +msgstr "Výběr jazyka" + +msgid "Item actions" +msgstr "Akce položky" + +msgid "Use dropdown menu" +msgstr "Použít dropdown menu" + +msgid "Login block" +msgstr "Blok přihlášení" + +msgid "Links to album/photo peers" +msgstr "Odkazy na vrstevníky alba/fotografie" diff --git a/Source/gallery2/modules/core/po/da.po b/Source/gallery2/modules/core/po/da.po new file mode 100644 index 0000000..d0ba336 --- /dev/null +++ b/Source/gallery2/modules/core/po/da.po @@ -0,0 +1,3680 @@ +# $Id: da.po 16607 2007-06-14 18:54:55Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Lasse Bang Mikkelsen , 2004. +# Allan Beaufour , 2005. +# - Bjørn Graabek , 2006-2007 +# +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-14 11:41-0700\n" +"PO-Revision-Date: 2007-03-15 21:52+0000\n" +"Last-Translator: Bjørn Graabek \n" +"Language-Team: Danish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Gallery Email Test" +msgstr "Gallery Email Test" + +msgid "forever" +msgstr "for altid" + +msgid "High Priority (Me first!)" +msgstr "Høj Prioritet (mig først!)" + +msgid "Low Priority (I want to share!)" +msgstr "Lav Prioritet (jeg ønsker at dele!)" + +msgid "No Markup" +msgstr "Ingen opmærkning" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Rå HTML" + +msgid "Database" +msgstr "Database" + +msgid "File" +msgstr "Fil" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minutter" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d time" +msgstr[1] "%d timer" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d dag" +msgstr[1] "%d dage" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d uge" +msgstr[1] "%d uger" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Ingen acceleration" + +msgid "Partial acceleration" +msgstr "Delvis acceleration" + +msgid "Full acceleration" +msgstr "Fuld acceleration" + +msgid "Themes" +msgstr "Temaer" + +msgid "Updating Repository Index" +msgstr "Opdater Katalog Indeks" + +msgid "Scanning plugins" +msgstr "Gennemsøger plugins" + +msgid "Update Plugin List" +msgstr "Opdater Plugin Liste" + +msgid "Done." +msgstr "Udført." + +msgid "Updating Packages" +msgstr "Opdaterer Pakker" + +#, c-format +msgid "Preparing %s" +msgstr "Forbereder %s" + +#, c-format +msgid "Downloading %s" +msgstr "Henter %s" + +#, c-format +msgid "Activating %s" +msgstr "Aktiverer %s" + +msgid "Deleting Language Packs" +msgstr "Sletter Sprog-pakker" + +msgid "Update completed with errors." +msgstr "Opdatering udført, men med fejl." + +msgid "Update complete." +msgstr "Opdatering fuldført." + +msgid "install" +msgstr "installér" + +msgid "upgrade" +msgstr "opgrader" + +msgid "activate" +msgstr "aktiver" + +msgid "uninstall" +msgstr "afinstallér" + +msgid "deactivate" +msgstr "deaktiver" + +msgid "Inherit settings from parent album" +msgstr "Tag indtillinger fra over-albummet" + +msgid "Use these settings" +msgstr "Brug disse indstillinger" + +msgid "Installing the core module" +msgstr "Installerer kernemodulet" + +msgid "key" +msgstr "nøgle" + +msgid "All access" +msgstr "Fuld adgang" + +msgid "[core] View item" +msgstr "[kerne] Se objekt" + +msgid "[core] View resized version(s)" +msgstr "[kerne] Se mellemstørrelse version(er)" + +msgid "[core] View original version" +msgstr "[kerne] Se original version" + +msgid "[core] View all versions" +msgstr "[kerne] Se alle versioner" + +msgid "[core] Add sub-album" +msgstr "[kerne] Tilføj underalbum" + +msgid "[core] Add sub-item" +msgstr "[kerne] Tilføj underelement" + +msgid "[core] Edit item" +msgstr "[kerne] Rediger element" + +msgid "[core] Change item permissions" +msgstr "[kerne] Ændrer element tilladelser" + +msgid "[core] Delete item" +msgstr "[kerne] Slet element" + +msgid "Upgrading permissions" +msgstr "Opgrader tilladelser" + +msgid "Deleting old permission tables" +msgstr "Sletter gamle tilladelsestabeller" + +msgid "Registered Users" +msgstr "Registrerede brugere" + +msgid "All Users" +msgstr "Alle brugere" + +msgid "Detecting broken derivatives" +msgstr "Finder afledte filer med fejl" + +msgid "Clearing fast-download cache" +msgstr "Sletter hurtighentningscachen" + +msgid "Deleting old fast-download cache" +msgstr "Sletter gammel cache til hurtig download" + +msgid "Updating panorama items" +msgstr "Opdaterer panorama elementer" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimerer AccessSubscriberMap tabel" + +msgid "Converting Schema Table" +msgstr "Konvertere skema tabel" + +msgid "Loading Table Descriptions" +msgstr "Indlæser tabel beskrivelser" + +msgid "Site Admins" +msgstr "Administratorer" + +msgid "Everybody" +msgstr "Alle" + +msgid "Guest" +msgstr "Gæst" + +msgid "Gallery" +msgstr "Gallery" + +msgid "This is the main page of your Gallery" +msgstr "Dette er hovedsiden af din billedsamling" + +msgid "Converting MySQL data to UTF8" +msgstr "Konverterer MySQL data til UTF8 format" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Opgraderer tilladelser (%d opjekter er færdige, der mangler %d)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Finder afledte filer med fejl, henter " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Finder afledte filer med fejl, gemmer " + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Finder afledte filer med fejl, gemmer " + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Opgraderer tilladelser (%d opjekter er færdige, der mangler %d)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Sletter gamle 'session' filer (gennemløb %d)" + +msgid "add items" +msgstr "tilføj elementer" + +msgid "Album created successfully." +msgstr "Album blev oprettet." + +msgid "add sub-album" +msgstr "tilføj underalbum" + +msgid "add items confirmation" +msgstr "bekræft tilføjelse af elementer" + +msgid "Base filename" +msgstr "Basisfilnavn" + +msgid "Caption" +msgstr "Billedtekst" + +msgid "Blank" +msgstr "Tomt" + +msgid "From Web Browser" +msgstr "Fra webbrowser" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabytes" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobyte" +msgstr[1] "%d kilobytes" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Input fil %s overskrider den maksimalt tilladte filstørrelse" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Input filen %s overskrider filstørrelsen specificeret i formularen" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Input filen %s blev kun delvist uploadet" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Input filen %s blev ikke uploadet. Fejl %d" + +msgid "Gallery Item Administration" +msgstr "Gallery elementadministration" + +msgid "delete an item" +msgstr "slet et element" + +msgid "delete confirmation" +msgstr "bekræftelse af sletning" + +#, c-format +msgid "delete %s" +msgstr "slet %s" + +#, c-format +msgid "edit %s" +msgstr "rediger %s" + +msgid "Settings saved successfully." +msgstr "Opsætningen blev gemt." + +msgid "Apply resized image settings" +msgstr "Anvend indstillinger for mellemstørrelse billeder" + +msgid "Preparing..." +msgstr "Forbereder..." + +msgid "Apply thumbnail settings" +msgstr "Anvend indstillinger for miniaturer" + +msgid "Rebuilding thumbnails..." +msgstr "Genskaber miniaturer" + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Behandler billede %d af %d" + +msgid "Changes saved successfully" +msgstr "Ændringer blev gemt" + +msgid "Animation Size" +msgstr "Animations størrelse" + +msgid "edit captions" +msgstr "ret billedtekster" + +msgid "General" +msgstr "Generelt" + +msgid "Movie Size" +msgstr "Filmstørrelse" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Miniaturen blev beskåret." + +msgid "Thumbnail reset successfully" +msgstr "Miniaturen blev nulstillet" + +msgid "Photo 5x3" +msgstr "Foto 5x3" + +msgid "Photo 6x4" +msgstr "Foto 6x4" + +msgid "Photo 7x5" +msgstr "Foto 7x5" + +msgid "Photo 10x8" +msgstr "Foto 10x8" + +msgid "Fullscreen 4x3" +msgstr "Fuldskærm 4x3" + +msgid "Widescreen 16x9" +msgstr "Bredskærm 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Firkant 1x1" + +msgid "As Image" +msgstr "Som billede" + +msgid "Landscape" +msgstr "Landskab" + +msgid "Portrait" +msgstr "Portræt" + +msgid "Crop Thumbnail" +msgstr "Beskær miniature" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Roterings- og skaleringsændringer blev annulleret" + +msgid "Rotated photo successfully" +msgstr "Fotoet blev roteret" + +msgid "Scaled photo successfully" +msgstr "Fotoet blev skaleret" + +msgid "Modify Photo" +msgstr "Rediger billede" + +msgid "Successfully changed theme" +msgstr "Temaet er blev ændret" + +msgid "« default theme »" +msgstr "« standard tema »" + +msgid "Theme" +msgstr "Tema" + +msgid "make highlight" +msgstr "fremhæv" + +msgid "move item" +msgstr "flyt element" + +#, c-format +msgid "move %s" +msgstr "flyt %s" + +#, c-format +msgid "edit %s permissions" +msgstr "rediger %s tilladelser" + +msgid "reorder items" +msgstr "gensorter elementer" + +msgid "Maintenance" +msgstr "Vedligeholdelse" + +msgid "Gallery Site Administration" +msgstr "Gallery Administration" + +msgid "site admin" +msgstr "administration" + +msgid "Gallery User Administration" +msgstr "Gallery brugeradministration" + +msgid "change password" +msgstr "skift adgangskode" + +msgid "your account" +msgstr "din konto" + +msgid "Password Recovery" +msgstr "Genskab kodeord" + +msgid "Core" +msgstr "Kerne" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 kernemodul" + +msgid "Add Items" +msgstr "Tilføj elementer" + +msgid "Edit Album" +msgstr "Rediger album" + +msgid "Edit Photo" +msgstr "Rediger billede" + +msgid "Edit Movie" +msgstr "Rediger film" + +msgid "Add Album" +msgstr "Tilføj album" + +msgid "Edit Permissions" +msgstr "Rediger tilladelser" + +msgid "View Permissions" +msgstr "Vis tilladelser" + +msgid "Delete Album" +msgstr "Slet album" + +msgid "Delete Photo" +msgstr "Slet billede" + +msgid "Delete Movie" +msgstr "Slet film" + +msgid "Move Album" +msgstr "Flyt album" + +msgid "Move Photo" +msgstr "Flyt foto" + +msgid "Move Movie" +msgstr "Flyt film" + +msgid "Edit Captions" +msgstr "Ret billedtekster" + +msgid "Make Highlight" +msgstr "Fremhæv" + +msgid "Reorder Items" +msgstr "Gensorter elementer" + +msgid "Site Admin" +msgstr "Administration" + +msgid "Login" +msgstr "Log på" + +msgid "Your Account" +msgstr "Din konto" + +msgid "Logout" +msgstr "Log af" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Brugere" + +msgid "Groups" +msgstr "Grupper" + +msgid "Performance" +msgstr "Ydeevne" + +msgid "Toolkit Priority" +msgstr "Værktøjsprioritet" + +msgid "Graphics Toolkits" +msgstr "Grafikværktøjer" + +msgid "Account Settings" +msgstr "Kontoopsætning" + +msgid "Change Password" +msgstr "Skift adgangskode" + +#, c-format +msgid "Edit %s" +msgstr "Rediger %s" + +#, c-format +msgid "Delete %s" +msgstr "Slet %s" + +#, c-format +msgid "Move %s" +msgstr "Flyt %s" + +msgid "Build all thumbnails/resizes" +msgstr "Opret alle miniaturer og størrelsesændringer" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Kontroller at datafiler for alle afledte filer (miniaturer, etc.) er blevet bygget og " +"genopbyg fejlbehæftede datafiler." + +msgid "Build All Thumbnails/Resizes" +msgstr "Opret alle miniaturer og størrelsesændringer" + +msgid "Debug output for failed items:" +msgstr "Debug informationer for elementer med fejl:" + +#, c-format +msgid "Checked %d items" +msgstr "Kontrollerede %d elementer" + +#, c-format +msgid "%d items built" +msgstr "%d filer bygget." + +#, c-format +msgid "%d items failed" +msgstr "%d elementer fejlede" + +msgid "Convert MySQL database to UTF8" +msgstr "Konverter MySQL database til UTF8 format" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Hvis din database blev oprettet med MySQL 3.x og du opgraderer til MySQL 4.x vil du opleve " +"at se bogstaver i et andet tegnsæt end du forventer indtil du konverterer databasen til at " +"benytte UTF8. Denne operation er harmløs selvom din database allerede er blevet opgraderet, " +"så det er ufarligt at forsøge hvis du ikke er sikker.Efter at have benyttet denne mulighed " +"bør du køre 'Slet database cache' opgaven for at undgå problemer med denne." + +msgid "Database successfully converted to UTF8" +msgstr "Databasen er blevet konverteret til UTF8 format" + +msgid "No conversion required" +msgstr "Ingen konvertering nødvendig" + +msgid "Delete user sessions" +msgstr "Slet bruger 'sessions'" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Slet alle blivende brugersessioner i hendhold til dine aktuelle sessions-udløb indstillinger." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Slettede %d 'sessions'." + +msgid "Delete database cache" +msgstr "Slet databasecachen" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery gemmer ofte brugte database informationer på disken for at øge hastigheden. Hvis du " +"foretager ændringer direkte i databasen bør du køre denne funktion for at slette cachen og " +"tvinge Gallery til at genindlæse informationerne fra databasen." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Slettede biblioteket: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Kunne ikke slette biblioteket: %s" + +msgid "Delete template cache" +msgstr "Slet skabeloncache" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery oversætter skabelonfiler og gemmer dem for at øge hastigheden. Hvis du oplever " +"problemer hvor der står Smarty error så kan du prøve at køre denne funktion. Kør den " +"også hvis du fjerner en local/*.tpl fil så Smarty skifter tilbage og bruger standard tpl-" +"filen." + +msgid "Template cache deleted successfully" +msgstr "Skabeloncachen blev slettet." + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animation" + +msgid "animation" +msgstr "animation" + +msgid "Gallery Core" +msgstr "Gallery Kerne" + +msgid "Gallery Core Module" +msgstr "Gallery Kernemodul" + +msgid "Search descriptions" +msgstr "Søg i beskrivelser" + +msgid "Search keywords" +msgstr "Søg i nøgleord" + +msgid "Search summaries" +msgstr "Søg i sammendrag" + +msgid "Search titles" +msgstr "Søg i titler" + +msgid "Description" +msgstr "Beskrivelse" + +msgid "Keywords" +msgstr "Nøgleord" + +msgid "Summary" +msgstr "Sammendrag" + +msgid "Title" +msgstr "Titel" + +msgid "Owner" +msgstr "Ejer" + +msgid "Dynamic Album" +msgstr "Dynamisk Album" + +msgid "dynamic album" +msgstr "dynamisk album" + +msgid "Group" +msgstr "Gruppe" + +msgid "group" +msgstr "gruppe" + +msgid "Other" +msgstr "Andet" + +msgid "Movie" +msgstr "Film" + +msgid "movie" +msgstr "film" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "Kunne ikke oprette stil til katalog cache" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Kunne ikke oprette cache underbibliotek. Sørg for at webserveren har skriverettigheder deri." + +msgid "Official Release Repository" +msgstr "Katalog for Officielle Udgivelser" + +msgid "Experimental Repository" +msgstr "Katalog for Eksperimentelle Plugins" + +msgid "Community Repository" +msgstr "'Community' Katalog" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Kunne ikke hente indeks fra '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Kunne ikke hente indeks-hash fra '%s'." + +msgid "Index integrity check failed." +msgstr "Kontrol af indeksintegritet fejlede." + +msgid "« default sort order »" +msgstr "« standard sortering »" + +msgid "Manual sort order" +msgstr "Manuel sortering" + +msgid "Origination Date" +msgstr "Oprettelsesdato" + +msgid "Creation Date" +msgstr "Oprettelsesdato" + +msgid "Last Changed Date" +msgstr "Sidst ændret dato" + +msgid "Name" +msgstr "Navn" + +msgid "View Count" +msgstr "Vis Antal" + +msgid "Random" +msgstr "Tilfældig" + +msgid "« no presort »" +msgstr "« Ingen sortering »" + +msgid "Albums First" +msgstr "Albummer først" + +msgid "Most Viewed First" +msgstr "Mest Sete først" + +msgid "Ascending" +msgstr "Stigende" + +msgid "Descending" +msgstr "Faldende" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validering er slået fra indtil du sætter allowSessionAccess i config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Denne side er gyldig XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Giv penge til Gallery projektet" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Køres af Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Anslået tilbageværende tid: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Hukommelse brugt: %s, i alt: %s" + +msgid "Rows per album page" +msgstr "Rækker pr. albumside" + +msgid "Columns per album page" +msgstr "Kolonner pr. albumside" + +msgid "Number of items to show per page" +msgstr "Antal elementer der skal vises pr. side" + +msgid "Row height (pixels)" +msgstr "Række højde(pixels)" + +msgid "Column width (pixels)" +msgstr "Kolonne bredde (pixels)" + +msgid "Show image owners" +msgstr "Vis billedejere" + +msgid "Show album owners" +msgstr "Vis albumejere" + +msgid "Show micro navigation thumbnails" +msgstr "Vis små navigeringsminiaturer" + +msgid "Blocks to show in the sidebar" +msgstr "Antal blokke der skal vises i sidebjælken" + +msgid "Blocks to show on album pages" +msgstr "Antal blokke der skal vises på albumsiderne" + +msgid "Blocks to show on photo pages" +msgstr "Antal blokke der skal vises på billedsiderne" + +msgid "Thumbnail links in dynamic albums" +msgstr "Miniature lænker i dynamiske albummer" + +msgid "Browse dynamic album" +msgstr "Gennemse dynamisk album" + +msgid "Jump to original album" +msgstr "Hop til det originale album" + +msgid "Separate link to original album" +msgstr "Seperat link til originalt album" + +msgid "View Samples" +msgstr "Se eksempler" + +msgid "Album Frame" +msgstr "Albumramme" + +msgid "Item Frame" +msgstr "Elementramme" + +msgid "Photo Frame" +msgstr "Fotoramme" + +msgid "Color Pack" +msgstr "Farvepakke" + +msgid "You must enter a number greater than 0" +msgstr "Du skal indtaste et tal større end 0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "Fejl ved læsning af blok-indstillinger. Tøm din browsers cache og prøv igen." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Lyd" + +msgid "audio" +msgstr "lyd" + +msgid "Archive" +msgstr "Arkiv" + +msgid "archive" +msgstr "arkiv" + +msgid "Document" +msgstr "Dokument" + +msgid "document" +msgstr "dokument" + +msgid "Spreadsheet" +msgstr "Regneark" + +msgid "spreadsheet" +msgstr "regneark" + +msgid "file" +msgstr "fil" + +msgid "Back" +msgstr "Tilbage" + +#, c-format +msgid "Back to %s" +msgstr "Tilbage til %s" + +msgid "User" +msgstr "Bruger" + +msgid "user" +msgstr "bruger" + +msgid "Optimize database" +msgstr "Optimer databasen" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Sæt hastigheden op for din database. Præcis hvor godt det virker afhænger af hvilken " +"database du bruger, men denne vedligeholdelse vil få Gallery til at køre hurtigere. Den er " +"specielt nyttig hvis du har tilføjet eller fjernet en masse elementer." + +msgid "Database optimized successfully" +msgstr "Databasen er blevet optimeret" + +msgid "Reset view counts" +msgstr "Nulstil visningstællere" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Nulstil visningstællere for alle albums og elementer. Denne funktion sletter også " +"databasecachen." + +msgid "View counts reset successfully" +msgstr "Visningstællerne er blevet nulstillet" + +msgid "Refresh capture dates" +msgstr "Genopfrisk billed-taget-datoer" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Opdater billed-taget-datoen der er gemt i Gallery for alle elementer der har en dato gemt i " +"den originale datafil (stammer normalt fra EXIF oplysningerne)." + +msgid "Processing..." +msgstr "Behandler..." + +msgid "Refresh Capture Dates" +msgstr "Genopfrisk billed-taget-datoer<" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Behandler element %d ud af %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Opdaterede %d ud af %d elementer" + +msgid "System information" +msgstr "Systeminformationer" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Hent systeminformationer; nyttigt til at klippe/klistre ind i G2 hjælpeforumet." + +msgid "core" +msgstr "kerne" + +msgid "unknown" +msgstr "ukendt" + +msgid "Gallery version" +msgstr "Gallery version" + +msgid "PHP version" +msgstr "PHP version" + +msgid "Webserver" +msgstr "Webserver" + +msgid "Toolkits" +msgstr "Værktøjer" + +msgid "Acceleration" +msgstr "Acceleration" + +msgid "Operating system" +msgstr "Operativsystem" + +msgid "Default theme" +msgstr "Standard tema" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "aktiveret" + +msgid "disabled" +msgstr "deaktiveret" + +msgid "Locale" +msgstr "Sted" + +# ? +msgid "Browser" +msgstr "Gennemse Gallery" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Rækker i %s tabel = %d" + +msgid "Successfully saved theme settings" +msgstr "Layoutopsætningen blev gemt" + +msgid "General Settings" +msgstr "Generel opsætning" + +msgid "Settings saved successfully" +msgstr "Opsætningen blev gemt" + +msgid "Added local upload directory successfully" +msgstr "Tilføjede lokal overførselsmappe" + +msgid "Removed local upload directory successfully" +msgstr "Lokal overførselsmappe blev fjernet" + +msgid "Test email sent successfully" +msgstr "Test-emailen blev afsendt" + +msgid "There was a problem processing your request, see below for details." +msgstr "Din forespørgsel kunne ikke udføres, se nedenstående for flere oplysninger." + +msgid "Error sending test email, see below for details." +msgstr "Kunne ikke sende test-email, se nedenstående for detaljer." + +msgid "Language Settings" +msgstr "Opsætning af Sprog" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Vælg Gallerys standardsprog. Brugere kan tilsidesætte denne indstilling i deres personlige " +"indstillinger eller ved hjælp af sprogvælgeren, hvis den er aktiveret nedenfor. Gallery vil " +"forsøge automatisk at afgøre det foretrukne sprog for hver bruger hvis browser præference er " +"markeret." + +msgid "Default language" +msgstr "Standard sprog" + +msgid "Check Browser Preference" +msgstr "Kontroller Browser Præference" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Din webserver har ikke flersprogsunderstøttelse. Bed venligst din system administrator " +"genkonfigurere PHP med %s slået til." + +msgid "Date Formats" +msgstr "Dato Formater" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Specificer hvordan datoer og tid skal vises af Gallery. Se %sphp.net%s for detaljer om " +"hvordan en formateringsstreng skal indstastes. Bemærk at visningen af nogle 'tokens' " +"varierer, afhængigt af det aktive sprog." + +msgid "Style" +msgstr "Stilart" + +msgid "Format" +msgstr "Format" + +msgid "Sample" +msgstr "Eksempel" + +msgid "Date" +msgstr "Dato" + +msgid "Time" +msgstr "Tid" + +msgid "Date/Time" +msgstr "Dato og tid" + +msgid "Filesystem Permissions" +msgstr "Filsystem" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Angiv standard tilladelser for filer og mapper som Gallery opretter. Dette gælder ikke filer/" +"mapper som Gallery allerede har oprettet." + +msgid "New directories" +msgstr "Nye mapper" + +msgid "New files" +msgstr "Nye filer" + +msgid "Session Settings" +msgstr "Sessionsopsætning" + +msgid "Session Lifetime" +msgstr "Sessionslevetid" + +msgid "Inactivity Timeout" +msgstr "Tidsgrænse for inaktivitet" + +msgid "Embedded Markup" +msgstr "Indlejret opmærkning" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Hvilken type opmærkning skal tillades i brugerfelter? Det anbefales ikke at tillade rå HTML. " +"BBCode er en sikker form for opmærkning, som tillader simpel tekstformatering som fed, " +"kursiv, lister, billeder og henvisninger." + +# Er ikke sikker på at der findes en brugbar oversættelse. Afhængig af kontekst kunne mulige oversættelser dog være 'markering', 'markeringskode', 'kode', 'formateringskode'. +msgid "Markup" +msgstr "Opmærkning" + +msgid "Email" +msgstr "Email" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Som standard bruger Gallery PHPs indbyggede mailfunktioner til at sende email med, og det " +"kræver ingen konfiguration. For at bruge en smtp/postserver skal nedenstående felter " +"udfyldes, inklusiv autentifikationsoplysninger hvis det er nødvendigt. Tilføj eventuelt :" +"port efter servernavnet hvis der skal bruges en ikke-standard port." + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Brugernavn" + +msgid "Password" +msgstr "Adgangskode" + +msgid "SMTP From Address" +msgstr "SMTP afsenderadresse" + +msgid "Invalid email address" +msgstr "Ugyldig e-mail adresse" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Send en test email for at bekræfte at dine indstillinger er korrekte (uanset om du bruger " +"PHP mail eller SMTP indstillingerne ovenfor). Indtast en email adresse som der skal sendes " +"en testbesked til nedenfor." + +msgid "Send Email" +msgstr "Send email" + +msgid "Email Test Error" +msgstr "Test-email fejl" + +msgid "Cookies" +msgstr "'Cookies'" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Når Gallery er indlejret i en anden applikation (portal, CMS, forum, osv.), har du et valg " +"mellem to muligheder. Alle andre behøver ikke bekymre sig om 'cookie' indstillinger. Læs " +"videre for flere detaljer." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Hvis dit galleri er indlejret og du lader de følgende felter være tomme vil alle " +"DownloadItem links (URLerne for billeder og andre elementer) i dit indlejrede galleri have " +"tilføjet en GALLERYSID streng i URL'en som er en lille sikkerhedsrisiko når " +"dine galleri brugere kopierer og klistrer billed-URL'er ind i forummer, gæstebøger, osv. " +"Alternativet er at sætte 'cookie' stien. Gallery vil da ikke tilføje GALLERYSID " +"til indlejrede DownloadITEM URL'er. Dvs. når Gallery ligger på http://www.example.com/" +"application/gallery2/ og den indlejrede application er på http://www.example.com/" +"application/, så skal du sammenligne stien /application/gallery2/ med /application/. " +"'cookie' stien er den del af stierne der er ens, i dette tilfælde '/application/'. For det " +"meste er det bare '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"'cookie' domænet behøves også kun for indlejrede Gallery installationer og kun hvis du vil " +"slippe af med GALLERYSID strengen i den indlejrede DownloadItem URL. I de fleste tilfælde " +"kan 'cookie' domænet være tomt. Sæt det kun hvis Gallery og den indlejrede applikation " +"kun kan nås fra forskellige sub-domæner. Dvs. når Gallery er på http://photos.example." +"com/ og applikationen er på http://www.example.com/, så skal du sætte 'cookie' domænet " +"example.com (den del af URL'en som Gallery og den indlejrede applikation tilfælles)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Hvis du ændrer 'cookie' indstillingerne skal alle registrede brugere af dit galleri " +"slette deres browser cookie cache. Hvis ikke vil de opleve problemer med log ind / " +"log ud / mistede sessioner." + +msgid "Path" +msgstr "Sti" + +msgid "Invalid cookie path" +msgstr "Ugyldig 'cookie' sti" + +msgid "Domain" +msgstr "Domæne" + +msgid "Invalid cookie domain" +msgstr "Ugyldigt 'cookie' domæne" + +msgid "Locking System" +msgstr "Låsesystem" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery bruger et låsesystem for at undgå problemer med samtidige rettelser. Der er to " +"metoder, begge med fordele og ulemper. Filbaseret låsning er hurtigt og effektivt, " +"men virker ikke på NFS filsystemer og er ikke pålidelig under Windows. Databasebaseret låsning er langsommere men mere pålidelig. Hvis du er usikker på hvad du skal vælge, så " +"anbefaler vi filbaseret låsning. Hvis du får mange låsning-timeouts, kan du prøve at skifte " +"til databasebaseret låsning i stedet. Der sker ikke noget ved at skifte frem og tilbage." + +msgid "Lock system" +msgstr "Lås system" + +msgid "Helper Processes" +msgstr "Hjælpe-processer" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Nogle Gallery moduler benytter andre programmer på serveren til billedbehandling, arkivering " +"og andre operationer. Disse programmer kan være CPU krævende og dermed have indflydelse på " +"den generelle ydelse på en webserver. Du kan sætte disse programmer til at køre ved en " +"lavere prioritet, så de opfører sig pænt. Hvis du er i et delt hosting miljø, og din 'host' " +"brokker sig kan du forsøge at sætte prioriteten til lav." + +msgid "Priority" +msgstr "Prioritet" + +msgid "Save" +msgstr "Gem" + +msgid "Reset" +msgstr "Nulstil" + +msgid "Create A New Group" +msgstr "Opret en ny gruppe" + +msgid "Group Name" +msgstr "Gruppenavn" + +msgid "(required)" +msgstr "(påkrævet)" + +msgid "You must enter a group name" +msgstr "Du skal indtaste et gruppenavn" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Gruppen '%s' eksistere allerede" + +msgid "Create Group" +msgstr "Opret gruppe" + +msgid "Cancel" +msgstr "Annuller" + +msgid "Create A New User" +msgstr "Opret en ny bruger" + +msgid "You must enter a username" +msgstr "Du skal indtaste et brugernavn" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Brugernavnet '%s' eksistere allerede" + +msgid "Full Name" +msgstr "Fulde navn" + +msgid "Email Address" +msgstr "E-mail adresse" + +msgid "You must enter an email address" +msgstr "Du skal indtaste en e-mail adresse" + +msgid "Language" +msgstr "Sprog" + +msgid "You must enter a password" +msgstr "Du skal indtaste en adgangskode" + +msgid "Verify Password" +msgstr "Bekræft adgangskode" + +msgid "You must enter the password a second time" +msgstr "Du skal indtaste adgangskoden endnu engang" + +msgid "The passwords you entered did not match" +msgstr "De indtastede adgangskoder er ikke ens." + +msgid "Create User" +msgstr "Opret bruger" + +msgid "Delete A Group" +msgstr "Slet en gruppe" + +msgid "Are you sure?" +msgstr "Er du sikker?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Dette vil fjerne %s fuldstændigt fra galleriet. Det er ikke muligt at fortryde!" + +msgid "Delete" +msgstr "Slet" + +msgid "Delete a User" +msgstr "Slet en bruger" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "Brugeren %s er ejer af %s elementer." + +#, c-format +msgid "Delete user %s and..." +msgstr "Slet brugeren %s og..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Tildel en ny ejer til alle elementer i %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Slet alle elementer i %s og tildel en ny ejer til alle resterende ikke-tomme albummer. " +"Elementer som %s ikke har rettigheder til at slette vil også blive tildelt til en ny ejer." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Ny ejer (et tomt felt vil betyde en administrator):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"Brugeren '%s' eksistere ikke! Kan ikke tildele elementer til en ikke-eksisterende bruger." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Den nye ejer skal være en anden bruger end den vi sletter!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Den nye ejer kan ikke være en gæst eller anonym bruger!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Dette vil fjerne %s fra Gallery. Det er ikke muligt at fortryde!" + +msgid "Edit a group" +msgstr "Rediger en gruppe" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Rediger medlemmer af gruppen '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Tilføjede brugeren '%s' til gruppen '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Fjernede brugeren '%s' fra gruppen '%s'" +msgstr[1] "Fjernede %s brugere fra gruppen '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Denne gruppe indeholder %d bruger" +msgstr[1] "Denne gruppe indeholder %d brugere" + +msgid "Members" +msgstr "Medlemmer" + +msgid "« first" +msgstr "« første" + +msgid "« back" +msgstr "« tilbage" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Viser side %d af %d" + +msgid "next »" +msgstr "næste »" + +msgid "last »" +msgstr "sidste »" + +msgid "Filter" +msgstr "Filter" + +msgid "Clear" +msgstr "Ryd" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d bruger matcher dit filter" +msgstr[1] "%d brugere matcher dit filter" + +msgid "Remove selected" +msgstr "Fjern valgte" + +msgid "You must select a user to remove." +msgstr "Du skal vælge en bruger som skal fjernes." + +msgid "You can't remove yourself from this group." +msgstr "Du kan ikke fjerne dig selv fra gruppen." + +msgid "Add Member" +msgstr "Tilføj medlem" + +msgid "Add" +msgstr "Tilføj" + +msgid "You must enter a username." +msgstr "Du skal indtaste et brugernavn." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Brugeren '%s' eksistere ikke." + +msgid "This user already is in this group." +msgstr "Denne bruger er allerede i denne gruppe." + +msgid "Done" +msgstr "Udført" + +msgid "Edit a user" +msgstr "Rediger en bruger" + +msgid "That username is already in use" +msgstr "Brugernavnet er allerede i brug" + +msgid "You must enter a new username" +msgstr "Du skal indtaste et nyt brugernavn" + +msgid "E-mail Address" +msgstr "E-mail adresse" + +msgid "(suggested)" +msgstr "(anbefalet)" + +msgid "Options" +msgstr "Indstillinger" + +msgid "Lock user." +msgstr "Lås bruger." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Låste brugere er ikke i stand til at ændre deres egne konto informationer. (Password, Navn, " +"Email osv.)" + +msgid "Reset failed login count." +msgstr "Nulstil tæller for mislykkede login-forsøg" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d mislykket login forsøg siden sidste vellykkede login." +msgstr[1] "%d mislykkede login forsøg siden sidste vellykkede login." + +msgid "Group Management" +msgstr "Gruppehåndtering" + +#, c-format +msgid "Removed group '%s'" +msgstr "Gruppen '%s' blev fjernet" + +#, c-format +msgid "Created group '%s'" +msgstr "Oprettede gruppen '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Ændret gruppe '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Der er %d gruppe i systemet." +msgstr[1] "Der er %d grupper i systemet." + +msgid "Edit Group" +msgstr "Rediger gruppe" + +msgid "Edit" +msgstr "Rediger" + +msgid "Add/Remove Users" +msgstr "Tilføj/fjern brugere" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Gruppen '%s' eksistere ikke." + +msgid "You cannot delete that group" +msgstr "Du kan ikke slette gruppen" + +msgid "You cannot edit that group's users" +msgstr "Du kan ikke redigere gruppens brugere" + +msgid "Edit Group (by list)" +msgstr "Rediger gruppe (med liste)" + +msgid "Action" +msgstr "Handling" + +msgid "edit" +msgstr "rediger" + +msgid "delete" +msgstr "slet" + +msgid "members" +msgstr "medlemmer" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d gruppe matcher dit filter" +msgstr[1] "%d grupper matcher dit filter" + +msgid "System Maintenance" +msgstr "Systemvedligeholdese" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Opgaven %s blev udført." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Opgaven %s afsluttede ikke korrekt." + +msgid "Task name" +msgstr "Opgave" + +msgid "Last run" +msgstr "Sidst kørt" + +msgid "Success/Fail" +msgstr "Success/fejl" + +msgid "Not run yet" +msgstr "Ikke kørt endnu" + +msgid "Success" +msgstr "Success" + +msgid "Failed" +msgstr "Fejl" + +msgid "run now" +msgstr "Kør nu" + +msgid "Last Run Details:" +msgstr "Detaler fra sidste kørsel:" + +msgid "Performance Tuning" +msgstr "Tuning af ydeevne" + +msgid "Updated performance settings successfully" +msgstr "Ydeevne indstillinger er blevet opdateret" + +msgid "Deleted all saved pages" +msgstr "Alle gemte sider er blevet slettet" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Gallery's ydeevne kan forøges ved at gemme komplette websider i databasen.Dette kan " +"betydeligt reducere mængden af webserver og databse ressourcer nødvendige for at vise en " +"webside. Ulempen er at den wbside der vises måske ikke er helt up-to-date. Det er dog altid " +"muligt at se den nyeste version ved at fremtvinge en browser opfriskning (det kan normalt " +"gøres ved at holde tasten nede mens der klikkes på 'reload' knappen)." + +msgid "Partial Acceleration" +msgstr "Delvis Acceleration" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Delvis acceleration giver en forbedring i ydeevnen på ca. 10-25%, men nogle former for " +"dynamiske data (f.eks. antallet af visninger) bliver ikke opdateret med det samme. (Al " +"indhold der vises i blikke (f.eks. tilfældigt billede blokken) vil altid være opdaterede." + +msgid "Full Acceleration" +msgstr "Fuld Acceleration" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Fuld acceleration giver en forbedring i ydeevnen på ca. 90%, men visningen af dynamiske data " +"(tilfældigt billede blok, andre sideblokke, antal emner i indkøbskurven, antal visninger " +"osv.) bliver ikke opdateret før den gemte side udløber." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Du kan også specificere hvornår gemte sider skal udløbe. Sættes en længere udløbstid vil " +"serverens belastning reduceres, men varigheden inden brugere kommer til at se ændringer vil " +"forøges. Lavere udløbstid vil forårsage at brugerne ser mere aktuelle data, men serveren vil " +"få en større belastning." + +msgid "Here are some standard acceleration profiles:" +msgstr "Her er nogle standar accelerations-profiler:" + +msgid "Medium acceleration" +msgstr "Medium acceleration" + +msgid "High acceleration" +msgstr "Høj acceleration" + +msgid "Guest Users" +msgstr "Gæstebrugere" + +msgid "Expires after:" +msgstr "Udløber efter:" + +msgid "Clear Saved Pages" +msgstr "Slet Gemte Sider" + +msgid "Status: Inactive" +msgstr "Status: Inaktiv" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ deaktiveret" + +msgid "Status: Active" +msgstr "Status: Aktiv" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ aktiveret" + +msgid "Status: Not Installed" +msgstr "Status: Ikke installeret" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ afinstalleret" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Status: Opgradering nødvendig (Inaktiv)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Status: Inkompatibel Plugin (Inaktiv)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Status: Inaktiv (konfiguration er nødvendig)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ kræver konfiguration" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ slettet" + +msgid "Warning!" +msgstr "Advarsel!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Vil du virkelig afinstallere __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "Dette vil også fjerne tilladelser og midlertidige data oprettet af dette modul." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Denne 'plugin' vil blive afinstalleret, men filerne vil bibeholdes så du kan gen-installere " +"det." + +msgid "Yes" +msgstr "Ja" + +msgid "No" +msgstr "Nej" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Vil du virkelig slette __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Denne plugin vil blive afinstalleret og dets filer vil blive slettet." + +msgid "The files of this plugin will be deleted permanently." +msgstr "Filerne fra dette plugin vil blive slettet permanent." + +msgid "disabled(__COUNT__)" +msgstr "deaktiveret(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "up to date(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "ikke installeret(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "opgradering nødvendig(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "Inkompatibelt(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Kunne ikke fuldstændig slette __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Gallery Plugins" + +msgid "Get More Plugins" +msgstr "Hent Flere Plugins" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Ønsker du flere funktioner? Nye 'plugins er kun et enkelt klik væk. Klik blot på %s linket " +"for at begynde." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Gallery funktioner findes i separate 'plugins'. Du kan download'e og installere moduler for " +"at tilføje flere funktioner til Gallery eller du kan deaktivere funktioner, hvis du ikke vil " +"bruge dem. For at bruge en bestemt funktion, skal du installere, konfigurere (om nødvendigt) " +"og aktivere det relevante plugin. Hvis du ikke vil bruge en bestemt funktion, kan du " +"deaktivere det relevante plugin." + +msgid "Plugin Name" +msgstr "Plugin Navn" + +msgid "Installed" +msgstr "Installeret" + +msgid "Version" +msgstr "Version" + +msgid "Actions" +msgstr "Handlinger" + +msgid "help" +msgstr "hjælp" + +#, c-format +msgid "Screenshot for %s" +msgstr "Skærmbillede af %s" + +msgid "Incompatible plugin!" +msgstr "Inkompatibelt modul!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Krævet Core API: %s (tilgængeligt: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Krævet Module API: %s (tilgængeligt: %s)" + +msgid "configure" +msgstr "konfigurer" + +msgid "up to date" +msgstr "up to date" + +msgid "upgrade required" +msgstr "opgradering påkrævet" + +msgid "not installed" +msgstr "ikke installeret" + +msgid "incompatible" +msgstr "Inkompatibelt" + +msgid "Repository" +msgstr "Katalog" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "Sørg for at internetforbindelsen virker eller prøv igen senere." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Kunne ikke skanne status fra plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Den lokale kopi af kataloget var i stykker, men er blevet ordnet. Download plugin listen " +"igen." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Det lykkedes ikke at downloade %s plugin da de nedenstående filer/mapper ikke kunne " +"modificeres:" + +msgid "The repository index has been successfully updated." +msgstr "Katalog indekset er blevet opdateret" + +msgid "All plugins are already up-to-date." +msgstr "Alle plugins er allerede up-to-date." + +#, c-format +msgid "%s plugin updated." +msgstr "%s plugin opdateret." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d sprog-pakke slettet." +msgstr[1] "%d sprog-pakker slettet." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"På intet tidspunkt bliver personlige oplysninger om dig eller din 'Gallery' installation " +"sendt til Gallery katalog serveren." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Download og installer nye plugins hurtigt og nemt. Hvis du beslutter at du ikke ønsker at " +"benytte en plugin kan den slettes igen fra Gallery. Der er flere forskellige plugin " +"kataloger, du kan vælge hvilke du vil benytte (du kan også benytte alle samtidigt). Når du " +"har foretaget et valg, skal du en gang imellem downloade den seneste plugin liste for at se " +"om der er nogen opdateringer. %s Ved langsommere internet forbindelser kan dette tage et par " +"minutter." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Officielt frigivne plugins fra 'Gallery' projektet (%sanbefales%s)" + +#, c-format +msgid "last updated on %s" +msgstr "sidst opdateret den %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Eksperimentelle plugins fra 'Gallery' projektet (%ssmarte nye funktioner, men måske " +"fejlbehæftede%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "'Community' plugins (%sbenyttes for egen risiko%s)" + +msgid "Repository Error" +msgstr "Katalog Fejl" + +msgid "You must select at least one repository." +msgstr "Du skal vælge mindst et katalog." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Konfigurer dit 'Gallery'" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Før du kan fortsætte skal nogle tilladelser i filsystemet ændres for at Gallery kan " +"installere plugins for dig. Det er ikke særlig vanskeligt. Udfør blot de følgende kommandoer " +"på en kommandolinie eller via din ftp klient:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Hvis du ikke kan ændre tilladelserne må du bede administratoren om hjælp. Når tilladelserne " +"er blevet ordnet kan du klikke på 'Fortsæt' knappen." + +msgid "Continue" +msgstr "Fortsæt" + +msgid "Download Plugin List" +msgstr "Download Plugin Liste" + +msgid "Show Repository List" +msgstr "Vis Katalog Liste" + +msgid "Upgrade Gallery" +msgstr "Opgrader Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Der er en ny version af Gallery, men der kan ikke opgraderes til denne via denne " +"brugerflade. Hvis der opgraderes vil nogle af de nuværende 'plugins' muligvis ophøre med at " +"virke, mens andre der er afhængige af funktionerne i den nye version bliver tilgængelige. " +"Her er den foreslåede metode til at opgradere:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sDownload%s Gallery kerne" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Læs %sopgraderings-instruktionerne%s og udfør opgraderingen" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Inkompatible plugins er markeret med et udråbstegn." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"En ny version af kern-modulet er til rådighed. Der kan være plugins der ikke er kompatible " +"med det installerede kerne-modul, som ikke er vist her. Du kan se en %skomplet liste%s af " +"plugins, inklusive de der ikke er kompatible, som vil være mærket med en rød ikon." + +msgid "upgrade available" +msgstr "opgradering til rådighed" + +msgid "locked" +msgstr "låst" + +msgid "Theme Name" +msgstr "Temanavn" + +msgid "Module Name" +msgstr "Modulnavn" + +msgid "Latest" +msgstr "Sidste" + +msgid "Locked Plugin" +msgstr "Låst Plugin" + +msgid "Incompatible Plugin" +msgstr "Inkompatibelt modul" + +msgid "Upgrade Available" +msgstr "Opgradering Til Rådighed" + +msgid "download" +msgstr "hent" + +msgid "modify" +msgstr "ændre" + +msgid "Upgrade All Plugins" +msgstr "Opgrader alle plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery kan automatisk opgradere dine temaer og moduler til de sidste nye versioner. Ingen " +"nye 'plugins' vil blive downloadet." + +msgid "Upgrade All" +msgstr "Opgrader alle" + +#, c-format +msgid "Download %s" +msgstr "Download %s" + +msgid "No packages have been selected." +msgstr "Ingen pakker er blevet valgt." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"download en pakke for at kunne benytte denne plugin. Du kan opgradere ved at vælge at " +"downloade en nyere version af pakken. Sprog pakker kan vælges om du vil. Det er kun " +"nødvendigt at downloade de sprog du ønsker at benytte på dette site." + +msgid "Base Packages" +msgstr "Basispakker" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: version %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: version %s (build %s) %s'nedgradering' er ikke understøttet!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sInstalleret på nuværende tidspunkt%s version %s (build %s)" + +msgid "Language Packages" +msgstr "Sprog-pakker" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%svælg alle%s%svælg ingen%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s version %s (opgraderer fra %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s version %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s version %s (%snyere version %s er installeret%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s version %s (installeret for øjeblikket)" + +msgid "No compatible language packages available" +msgstr "Ingen kompatible sprog-pakker er tilgængelige" + +msgid "You must select a base package before choosing language packs." +msgstr "Du skal vælge en basis pakke før du vælger sprog pakker." + +msgid "Update" +msgstr "Opdater" + +msgid "Gallery Themes" +msgstr "Gallery Temaer" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Temaet %s blev aktiveret" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Temaet %s blev deaktiveret" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Installerede %s temaet" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Afinstallerede %s temaet" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Opgraderede %s temaet" + +msgid "Successfully saved default album settings" +msgstr "Standard albumopsætning blev gemt" + +msgid "Restored theme settings" +msgstr "Temaopsætning blev genskabt" + +msgid "Defaults" +msgstr "Standarder" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Dette er standard visningsopsætning for album i dit galleri. De kan overskrives i hvert " +"album." + +msgid "Default sort order" +msgstr "Standard sortering" + +msgid "with" +msgstr "med" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Nye albummer" + +msgid "Save Defaults" +msgstr "Gem Standard Indstillinger" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s Tema Indstillinger" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Disse er de globale indstillinger for temaet. De kan overskrives på albumniveau." + +msgid "Available" +msgstr "Mulige" + +msgid "Choose a block" +msgstr "Vælg en blok" + +msgid "Selected" +msgstr "Valgt" + +msgid "Remove" +msgstr "Fjern" + +msgid "Move Up" +msgstr "Flyt Op" + +msgid "Move Down" +msgstr "Flyt Ned" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Value" +msgstr "Værdi" + +msgid "There are no settings for this theme" +msgstr "Der er ingen opsætning for dette tema" + +msgid "Save Theme Settings" +msgstr "Gem Tema Indstillinger" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Der er overlap melemmen de viste værktøjers funktionalitet og mime-typer. Prioriter " +"værktøjerne her for at vælge vilke der vil udføre de angivne funktioner." + +msgid "Toolkit" +msgstr "Værktøj" + +msgid "Order" +msgstr "Rækkefølge" + +msgid "up" +msgstr "op" + +msgid "down" +msgstr "ned" + +msgid "User Management" +msgstr "Brugerhåndtering" + +#, c-format +msgid "Removed user '%s'" +msgstr "Brugeren '%s' blev fjernet" + +#, c-format +msgid "Created user '%s'" +msgstr "Oprettede brugeren '%s'" + +#, c-format +msgid "Modified user '%s'" +msgstr "Ændret bruger '%s'" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Der er %d bruger i systemet." +msgstr[1] "Der er %d brugere i systemet." + +msgid "Edit User" +msgstr "Rediger bruger" + +msgid "You cannot delete yourself!" +msgstr "Du kan ikke slette dig selv!" + +msgid "You cannot delete the special guest user." +msgstr "Du kan ikke slette den specielle gæstebruger." + +msgid "Edit User (by list)" +msgstr "Rediger bruger (med liste)" + +msgid "Locked" +msgstr "Låst" + +msgid "Failed Logins" +msgstr "Mislykkede Login Forsøg" + +msgid "Thumbnails" +msgstr "Miniaturer" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Galley kan oprette ikoner ved overførsel af billederne eller lave dem første gang de skal " +"bruges. Upåagtet metoden vil ikonerne kun blive lavet en gang og gemt, men hvis du laver dem " +"ved overførslen vil førstegangsvisningen af billederne være hurtigere. Til gengæld vil det " +"tage lidt længere inden overførslen er færdig." + +msgid "Create thumbnails now" +msgstr "Skab miniaturer med det samme" + +msgid "This is a test email from Gallery2" +msgstr "Dette er en test email fra Gallery2" + +msgid "Edit Conflict!" +msgstr "Editeringskonflikt!" + +msgid "Security Violation" +msgstr "Sikkerhedsbrud" + +msgid "Database Error" +msgstr "Databasefejl" + +msgid "Platform Error" +msgstr "Platform Fejl" + +msgid "Authentication Failure" +msgstr "Autorisationsfejl" + +msgid "Error" +msgstr "Fejl" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Din rettelse kan ikke blive gemt fordi en anden har lavet en rettelse der påvirker samme " +"element. Brug tilbageknappen i din brower for at få tilbage til den side du var på før, " +"genindlæs derefter siden og prøv at lave rettelsen igen." + +msgid "Go back and try again" +msgstr "Gå tilbage og forsøg igen" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +msgid "Clear the cache" +msgstr "Slet cache indhold" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Alternativt kan du vende tilbage til galleriet og kigge videre." + +msgid "The action you attempted is not permitted." +msgstr "Handlingen du forsøgte at udføre er ikke tilladt." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "Der er opstået en fejl i kommunikationen med databasen." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"De præcise database fejlmeddelelser bliver kun gemt hvis gallery har debug tilstand slået " +"til i config.php. Før du søger support om dette problem så slå venligst buffer-baseret " +"debug til og prøv funktionen igen. Kig til sidste i det lange debug uddata for at finde " +"detaljer om fejlen." + +msgid "An error has occurred while interacting with the platform." +msgstr "Der er opstået en fejl under interaktion med platformen." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Den eksakte årsag til platform fejlen kendes ikke. En almindelig årsag er utilstrækkelige " +"rettigheder i filsystemet. Det kan ske hvis du eller din webhost har ændret noget i " +"filsystemet, f.eks. ved at foretage en 'restore' af data fra en 'backup'." + +msgid "Item not found." +msgstr "Element ikke fundet." + +msgid "An error has occurred." +msgstr "Der er opstået en fejl." + +msgid "Back to the Gallery" +msgstr "Tilbage til galleri" + +msgid "Error Detail" +msgstr "Detaljeret fejlbeskrivelse" + +msgid "System Information" +msgstr "Systeminformationer" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Du har ikke aktiveret et grafikværktøj der kan håndtere JPEG billeder. Hvis du tilføjer " +"billeder vil du med stor sandsynlighed ikke have nogle ikoner." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Besøg Modulsiden for at aktivere et grafikværktøj." + +msgid "Add Sub-Album" +msgstr "Tilføj underalbum" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Albummets navn på harddisken. Der må ikke være andre albummer i dette album med samme navn. " +"Brug kun bogstaver, tal, understregning eller skråstreg. Albummet kan senere omdøbes." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Dit navn indeholder ugyldige tegn. Indtast venligst et nyt." + +msgid "You must enter a name for this album." +msgstr "Du skal indtaste et navn til dette album." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Det indtastede navn er allerede i brug. Indtast venligst et nyt." + +msgid "This is the album title." +msgstr "Dette er albummets titel." + +msgid "This is the album summary." +msgstr "Dette er albummets sammendrag." + +msgid "Keywords are not visible, but are searchable." +msgstr "Nøgleord er ikke synlige, men er søgbare." + +msgid "This is the long description of the album." +msgstr "Dette er den lange beskrivelse af albummet." + +msgid "Create" +msgstr "Opret" + +msgid "Upload Complete" +msgstr "Overførsel fuldført" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d fil blev tilføjet." +msgstr[1] "%d filer blev tilføjet." + +msgid "No files added." +msgstr "Ingen filer tilføjet." + +#, c-format +msgid "Added %s" +msgstr "Tilføjede %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Fejl ved tilføjelse af %s" + +msgid "Add more files" +msgstr "Tilføj flere filer" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Din webserver er konfigureret til at nægte overførsler fra din webbrowser. Kontakt venligst " +"din system administrator for hjælp." + +msgid "Upload files directly from your computer." +msgstr "Overfør filer direkte fra din computer." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Indtast den fulde sti til filen og en valgfri billedtekst i feltet nedenfor." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Bemærkning: Du kan overføre op til %s på samme tid. Hvis du vil overføre flere, må du " +"overføre filerne separat, bruge en anden overførselsmetode eller få systemadministratoren " +"til at tillade større overførsler." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Bemærkning: Du kan overføre op til %s på samme tid. Ingen fil må være større end %s. " +"Hvis du vil overføre flere, må du overføre filerne separat, bruge en anden " +"overførselsmetode, eller få systemadministratoren til at tillade større overførsler." + +msgid "More Upload Boxes..." +msgstr "Flere Upload Felter..." + +msgid "Set item titles from:" +msgstr "Sæt titler fra:" + +msgid "Assign caption to:" +msgstr "Tildel billedtekst til:" + +msgid "No Thumbnail" +msgstr "Ingen miniature" + +msgid "Delete Items" +msgstr "Slet elementer" + +msgid "No items were selected for deletion" +msgstr "Ingen elementer var valgt til sletning" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d element blev slettet" +msgstr[1] "%d elementer blev slettet" + +msgid "This album contains no items to delete" +msgstr "Dette album indeholder ingen elementer" + +msgid "Choose the items you want to delete" +msgstr "Vælg elementerne du vil slette" + +#, c-format +msgid "(page %d of %d)" +msgstr "(side %d af %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Emner der er valgt her vil forblive valgt når der flyttes mellem siderne." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Et emne valgt på andre sider." +msgstr[1] "%d emner valgt på andre sider" + +msgid "(data)" +msgstr "(data)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(albummet indeholder %d element)" +msgstr[1] "(albummet indeholder %d elementer)" + +msgid "(empty album)" +msgstr "(tomt album)" + +msgid "Check All" +msgstr "Tjek alle" + +msgid "Check None" +msgstr "Tjek ingen" + +msgid "Invert" +msgstr "Spejlvend" + +msgid "Previous Page" +msgstr "Forrige side" + +msgid "Next Page" +msgstr "Næste side" + +msgid "Deletion Complete" +msgstr "Sletning fuldført" + +msgid "Item successfully deleted" +msgstr "Elementet blev slettet" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Er du sikker på du vil slette %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Indeholder %d element." +msgstr[1] "Indeholder %d elementer." + +msgid "There is no undo!" +msgstr "Det er ikke muligt at fortryde!" + +msgid "There was a problem processing your request." +msgstr "Din forespørgsel kunne ikke udføres." + +msgid "Sort order" +msgstr "Sortering" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Dette angiver sorteringen i albummet. Dette anvendes på alle nuværende elementer og nyligt " +"tilføjede elementer." + +msgid "Apply to all subalbums" +msgstr "Anvend på alle underalbummer" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Alle elementer kræver en miniature. Angiv standard størrelsen i pixels her." + +msgid "You must enter a number (greater than zero)" +msgstr "Du skal indtaste et tal (større end nul)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Benyt denne størrelse for miniaturer i alle underalbummer" + +msgid "Resized Images" +msgstr "Mellemstørrelse billeder" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Hvert element i dit album kan have flere størrelser. Definer standard størrelserne her." + +msgid "Active" +msgstr "Aktiv" + +msgid "Target Size (pixels)" +msgstr "Målstørrelse (angives i pixels)" + +msgid "You must enter a valid size" +msgstr "Du skal indtaste en gyldig størrelse" + +msgid "Use these target sizes in all subalbums" +msgstr "Benyt disse målstørrelser i alle underalbummer" + +msgid "Apply settings to existing items" +msgstr "Anvend indstillinger på eksisterende elementer" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "Anvend albummets indstillinger for miniaturer" + +msgid "... and for all subalbums" +msgstr "... og for alle underalbummer" + +msgid "Build thumbnails too" +msgstr "Dan også miniaturer" + +msgid "Apply album setting to resized images" +msgstr "Anvend album indstillinger på mellemstørrelse billeder" + +msgid "Build resizes too" +msgstr "Dan også mellemstørrelser" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"For at Gallery skal kunne vise denne animation, skal den kende animationens højde og bredde. " +"Har du installeret et grafisk værktøj som kan håndtere animationer, kan disse værdier " +"allerede være angivet. Hvis ikke, kan de sættes til 0. Hvis du ikke indtaster de korrekte " +"værdier her, vil animationen muligvis blive forvrænget når den vises i din webbrowser. " +"Bemærk dog at ændring af disse værdier ikke vil ændre selve animationen, så " +"eksperimentering med værdierne vil ikke ødelægge noget." + +msgid "Width" +msgstr "Bredde" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Du skal indtaste en værdi større end eller lig med 0" + +msgid "Height" +msgstr "Højde" + +msgid "There were errors saving some items" +msgstr "Problemer med at gemme nogle elementer" + +msgid "There were errors saving all items" +msgstr "Problemer med at gemme alle elementer" + +msgid "Successfully saved all items" +msgstr "Alle elementer blev gemt" + +msgid "This album contains no items" +msgstr "Dette album indeholder ingen elementer" + +msgid "Saved successfully." +msgstr "Opsætningen blev gemt." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "Dette element er også blevet rettet af en anden lige nu. Dine rettelser er tabt." + +msgid "You do not have permissions to modify this item." +msgstr "Du har ikke ret til at ændre dette element." + +msgid "Save and Done" +msgstr "Gem og afslut" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Gem og ret forrige %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Gem og ret næste %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Elementets filnavn på din harddisk. Det skal være unikt i dette album. Brug kun bogstaver, " +"tal, understreg eller skråstreg." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Dit navn indeholder ugyldige tegn. Indtast venligst et nyt." + +msgid "You must enter a name for this item." +msgstr "Du skal indtaste et navn til dette element." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Det indtastede navn er allerede i brug. Indtast venligst et nyt." + +msgid "The title of this item." +msgstr "Titel på dette element." + +msgid "The root album must have a title." +msgstr "Hovedalbummet skal have en titel." + +msgid "The summary of this item." +msgstr "Sammendrag på dette element." + +msgid "This is the long description of the item." +msgstr "Dette er den lange beskrivelse af elementet." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Dato og tid" + +msgid "Set the date and time when this image was captured." +msgstr "Sæt dato og tid da dette billede blev taget." + +msgid "Set the date and time to be displayed for this item." +msgstr "Sæt dato og tid der skal vises for dette element." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Sæt dato og tid som skal vises for dette %s." + +msgid "Date:" +msgstr "Dato:" + +msgid "Time:" +msgstr "Tid:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "Brug den dato og tid da billedet blev taget fra filinformationerne (dvs. Exif mærket):" + +msgid "You must enter a valid date and time" +msgstr "Du skal indtaste en gyldig dato og tid" + +msgid "Thumbnail" +msgstr "Miniature" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Angiv størrelsen på ikonet. Den største side af ikonet vil ikke blive større end denne " +"værdi. Lad feltet være tomt hvis du ikke vil have et ikon." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Der er ingen grafiske værktøjer som understøtter denne type element, der kan derfor ikke " +"oprettes eller ændres en miniature." + +msgid "Unable to create a thumbnail for this item" +msgstr "Ikke muligt at skabe en miniature for dette objekt" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"For at Gallery skal kunne vise denne film, skal den kende filmens højde og bredde. Har du " +"installeret et grafisk værktøj som kan håndtere film, kan disse værdier allerede være " +"angivet. Hvis ikke, kan de sættes til 0. Hvis du ikke indtaster de korrekte værdier her, vil " +"filmen muligvis blive forvrænget når den vises i din webbrowser. Bemærk at ændring af disse " +"værdier vil ikke ændre filmen selv, så eksperimenter vil ikke ødelægge noget." + +msgid "Resized Photos" +msgstr "Mellemstørrelse fotos" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Disse størrelser er de alternative størrelser af originalen som du ønsker skal være " +"tilgængelige." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Der er ingen grafiske værktøjer som understøtter denne type foto, der kan derfor ikke " +"oprettes eller ændres mellemstørrelse versioner." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Du kan vælge hvilket område som bruges til miniaturen. Dette vil hverken ændre " +"mellemstørrelse eller originalbilledet." + +msgid "Aspect Ratio: " +msgstr "Dimensionsforhold: " + +msgid "Crop" +msgstr "Beskær" + +msgid "Undo Changes" +msgstr "Gendan Ændringer" + +msgid "Reset to default" +msgstr "Vend tilbage til standardindstillinger" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Der er ingen grafiske værktøjer som understøtter denne type foto, miniaturen kan derfor ikke " +"beskæres." + +msgid "Rotate" +msgstr "Roter" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Du kan kun rotere fotoet i 90 grader ad gangen." + +msgid "CC 90°" +msgstr "CC 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Der er ingen grafiske værktøjer som understøtter denne type foto, det kan derfor ikke " +"roteres." + +msgid "Scale" +msgstr "Skaler" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Formindsk eller forstør det originale foto. Når Gallery skalerer et foto, bibeholdes samme " +"dimensionsforhold (højde og bredde) som originalen, for at undgå forvrængning. Dit foto " +"skaleres indtil den største side er det samme som værdien du indtaster her." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Der er ingen grafiske værktøjer som understøtter denne type foto, det kan derfor ikke " +"skaleres." + +msgid "You must enter a size" +msgstr "Du skal indtaste en størrelse" + +msgid "Preserve Original" +msgstr "Bevar original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery ændrer ikke dit originalfoto, når det roteres og skaleres. Istedet kopieres dit foto " +"og der arbejdes med kopien. Dette kræver en smule mere diskplads, men forhindrer originalen " +"i at blive beskadet. Deaktiveres denne indstilling, vil originalen ændres ved rotering, " +"skalering osv." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Dette er en henvisning til et andet foto og du kan derfor ikke ændre originalen" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Der er henvisninger til dette foto og originalen kan derfor ikke ændres" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Modificering af originalen understøttes ikke så handlinger vil kun blive udført på kopier" + +msgid "Preserve Original Photo" +msgstr "Bevar originalfoto" + +msgid "Modified Photo" +msgstr "Ændret foto" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Du bruger en skaleret eller roteret kopi af original fotoet. Det originale foto er stadig " +"tilgængeligt, men bruges ikke. Dine ændringer vil blive anvendt på kopien istedet." + +msgid "Restore original" +msgstr "Genskab original" + +msgid "Choose a theme" +msgstr "Vælg et tema" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Temaer kontrollerer hvordan et album ser ud. Du kan vælge forskellige temaer for hvert " +"album. Hvis du ikke vælger et tema, vil %s temaet blive benyttet som standard tema." + +msgid "Use this theme in all subalbums" +msgstr "Benyt dette tema i alle underalbummer" + +msgid "Choose Theme" +msgstr "Vælg Tema" + +#, c-format +msgid "Configure the %s theme" +msgstr "Konfigurer %s temaet" + +msgid "These settings only apply to the theme for this album." +msgstr "Disse indstillinger gælder kun for temaet for dette album." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Benyt disse indstillinger i alle underalbummer der benytter %s temaet" + +msgid "Album Highlight" +msgstr "Fremhæv" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Du kan gøre dette element til miniature for dets album eller ethvert forældrealbum." + +msgid "Highlight for:" +msgstr "Fremhæv for:" + +msgid "Highlight" +msgstr "Fremhæv" + +msgid "Move an Item" +msgstr "Flyt et element" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d element blev flyttet" +msgstr[1] "%d elementer blev flyttet" + +msgid "This album contains no items to move." +msgstr "Dette album indeholder ingen elementer." + +msgid "Source" +msgstr "Kilde" + +msgid "Choose the items you want to move" +msgstr "Vælg elementerne du vil flytte" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "Den valgte destination tillader ikke underalbum, alle underalbum er derfor fravalgt." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "Den valgte destination tillader kun underalbum, alle ikke-album er derfor fravalgt." + +msgid "You are not allowed to move this item away from here." +msgstr "Du har ikke tilladelse til at flytte elementet." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Du har ikke tilladelse til at flytte et album til den valgte destination." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Du har ikke tilladelse til at flytte et element til den valgte destination." + +msgid "You cannot move an album into its own subtree." +msgstr "Du kan ikke flytte et album til dets eget undertræ." + +msgid "Destination" +msgstr "Destination" + +msgid "Choose a new album for them" +msgstr "Vælg et nyt album til dem" + +msgid "You don't have the permission to add items in this album" +msgstr "Du har ikke tilladelse til at tilføje elementer i dette album" + +msgid "No destination chosen" +msgstr "Ingen destination valgt" + +msgid "Move" +msgstr "Flyt" + +msgid "Successfully moved" +msgstr "Flytning gennemført" + +msgid "Choose a destination album" +msgstr "Vælg et destinationsalbum" + +msgid "Permissions" +msgstr "Tilladelser" + +msgid "Owner changed successfully" +msgstr "Ejeren blev ændret" + +msgid "Group permission added successfully" +msgstr "Gruppeopsætningen blev gemt" + +msgid "User permission added successfully" +msgstr "Brugeropsætningen blev tilføjet" + +msgid "Group permission removed successfully" +msgstr "Gruppeopsætningen blev slettet" + +msgid "User permission removed successfully" +msgstr "Brugeropsætningen blev slettet" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Hvert element har sine egne tilladelser. Ændringer i forældre, har ingen effekt på " +"underelementerne. Dette gør det muligt at begrænse adgangen til forældren af dette element, " +"men giver stadig fuld adgang til dette element og omvendt. Det anbefales at bruge grupper og " +"tildele tilladelser til dem. Hvis du derefter ønsker at tildele tilladelser til en specifik " +"bruger, kan du blot tilføje (eller fjerne) brugeren fra den relevante gruppe." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Dette element ejes af brugeren: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Dette element ejes af brugeren: %s (%s)" + +msgid "New owner" +msgstr "Ny ejer" + +msgid "Change" +msgstr "Ændrer" + +msgid "Apply new owner to sub-items" +msgstr "Anvend ny ejer på underelementer" + +msgid "You must enter a user name" +msgstr "Du skal indtaste et brugernavn" + +msgid "The user name you entered is invalid" +msgstr "Det indtastede brugernavn er ugyldigt." + +msgid "Apply changes" +msgstr "Anvend ændringer" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Dette element har underelementer. Ændringer kan anvendes på elementet og/eller alle " +"underelementer. Bemærk at ændringer på underelementer flettes med eksisterende tilladelser " +"og kan være tidskrævende ved mange underelementer. Det er mere effektivt at give tilladelse " +"til grupper og derefter tilføje og fjerne brugere fra grupperne. Ændringer bliver anvendt på " +"underelementer som standard." + +msgid "Apply to sub-items" +msgstr "Anvend på underelementer" + +msgid "Group Permissions" +msgstr "Gruppetilladelser" + +msgid "Group name" +msgstr "Gruppenavn" + +msgid "Permission" +msgstr "Tilladelse" + +msgid "New Group Permission" +msgstr "Ny gruppetilladelse" + +msgid "Add Permission" +msgstr "Tilføj tilladelse" + +msgid "The permission you chose is invalid" +msgstr "Den valgte tilladelse er ugyldig." + +msgid "The group name you entered is invalid" +msgstr "Det indtastede gruppenavn er ugyldigt" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Gruppen har allerede denne tilladelse (tjek undertilladelser)" + +msgid "User Permissions" +msgstr "Brugertilladelser" + +msgid "User name" +msgstr "Brugernavn" + +msgid "New User Permission" +msgstr "Ny brugertilladelse" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Brugeren har allerede denne tilladelse (tjek undertilladelser)" + +msgid "Reorder Album" +msgstr "Gensorter album" + +msgid "Order saved successfully" +msgstr "Rækkefølgen er gemt" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Dette album har en automatisk sortering angivet og du kan derfor ikke ændre sorteringen " +"manuelt. Du skal fjerne den automatisk sortering for at fortsætte." + +msgid "change" +msgstr "ændrer" + +msgid "Change the order of the items in this album." +msgstr "Ændrer rækkefølgen på elementer i dette album." + +msgid "Move this item" +msgstr "Flyt dette element" + +msgid "before" +msgstr "før" + +msgid "after" +msgstr "efter" + +msgid "Reorder" +msgstr "Gensorter" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript skal være aktiveret i din browser for at denne side kan fungere rigtigt. Men det " +"lader til at JavaScript enten er deaktiveret eller ikke understøttes af din browser. Aktiver " +"JavaScript i din browser og prøv så igen." + +msgid "Site is temporarily down for maintenance." +msgstr "Websitet er midlertidigt nede på grund af vedligeholdelse." + +msgid "Admin Login" +msgstr "Admin login" + +msgid "Enter a URL" +msgstr "Indtast en URL" + +msgid "Enter some text describing the URL" +msgstr "Indtast en beskrivende tekst til URL'en" + +msgid "Enter an image URL" +msgstr "Indtast en billed URL" + +msgid "B " +msgstr "fed" + +msgid "i " +msgstr "kursiv" + +msgid "list" +msgstr "liste" + +msgid "bullet" +msgstr "kugle" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "billede" + +msgid "color" +msgstr "farve" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "du kan også benytte farve navnet for eksempel %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Konfigurationsfejl: Mangler Tema" + +msgid "Missing Theme" +msgstr "Manglende Tema" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Denne side er konfigureret til at benytte %s temaet, men det er enten ikke aktivt, ikke " +"installeret eller inkompatibelt." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Dette album er konfigureret til at benytte %s temaet, men det er enten ikke aktivt, ikke " +"installeret eller inkompatibelt." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"For at rette dette problem kan du %sinstallere eller aktivere dette tema%s eller vælge et " +"andet standardtema." + +# består muligheden i at vælge 'et andet standardtema' eller 'et andet tema som standard'? +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"For at rette dette problem kan du %slogge ind som en administrator%s og derefter %" +"sinstallere eller aktivere dette tema%s eller vælge et andet standardtema." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"For at rette dette problem kan du enten %svælge et ny tema for dette album%s eller %" +"sinstaller eller aktivere dette tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"For at rette dette problem kan du enten %svælge et nyt tema for dette album%s eller %slogin " +"som en administrator%s og så %sinstallere eller aktivere dette tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"For at rette dette problem kan du enten %slogge ind%s og så %svælge et nyt tema for dette " +"album%s eller %slogge ind som en administrator%s og så %sinstallere eller aktivere dette tema" +"%s." + +msgid "Admin Options" +msgstr "Administrative indstillinger" + +msgid "User Options" +msgstr "Brugerindstillinger" + +msgid "Password changed successfully" +msgstr "Adgangskoden blev ændret" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"du skal indtaste din nuværende adgangskode for at bevise det er dig. Indtast dernæst din nye " +"adgangskode to gange for at sikre du ikke taster forkert." + +msgid "Current Password" +msgstr "Nuværende adgangskode" + +msgid "You must enter your current password" +msgstr "Du skal indtaste din nuværende adgangskode" + +msgid "Incorrect password" +msgstr "Forkert adgangskode" + +msgid "New Password" +msgstr "Ny adgangskode" + +msgid "You must enter a new password" +msgstr "Du skal indtaste en ny adgangskode" + +msgid "Verify New Password" +msgstr "Bekræft ny adgangskode" + +msgid "You must enter your new password again!" +msgstr "Du skal indtaste din nye adgangskode igen!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Denne konto har ikke tilladelse til at ændre konto indstillingerne. Kontakt Gallery " +"administratoren" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Administratoren har låst denne konto, der kan ikke foretages ændringer af konto " +"informationerne." + +msgid "Login to your account" +msgstr "Log på din konto" + +msgid "Your password has been recovered, please login." +msgstr "Dit kodeord er blevet gendannet, log venligst ind." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Login med denne konto er midlertidigt deaktiveret på grund af flere fejlslagne login forsøg. " +"Vent på at adgang igen bliver aktiveret, eller benyt gendan password " +"siden for at genaktivere denne konto." + +msgid "Your login information is incorrect. Please try again." +msgstr "Dine log ind informationer er ukorrekte. Prøv venligst igen." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Mistede eller glemte kodeord kan blive gendannet ved at bruge siden gendan " +"kodeord" + +#, c-format +msgid "Welcome, %s!" +msgstr "Velkommen, %s!" + +msgid "Account settings saved successfully" +msgstr "Kontoopsætning blev gemt" + +msgid "(required, password required for change)" +msgstr "(påkrævet, adgangskode er nødvendigt for ændringen)" + +msgid "(suggested, password required for change)" +msgstr "(foreslået, adgangskode er nødvendigt for ændringen)" + +msgid "(required to change the e-mail address)" +msgstr "(nødvendigt for at ændre email adressen)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Du skal indtaste din nuværende adgangskode for at kunne ændre email adressen" + +msgid "Recover a lost or forgotten password" +msgstr "Gendan et mistet eller glemt kodeord" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"En gendanning af dit kodeord kræver at din konto har en emailadresse registreret, og at du " +"har adgang til email-adressen. En bekræftelses-email vil blive sendt til dig med en URL som " +"du skal åbne for at sætte et nyt kodeord for din konto. For at forhindre misbrug kan man " +"ikke anmode og gendanninger mere end en gang i en 20 minutters periode. En anmodning er " +"gyldig i syv dage. Hvis den ikke bliver brugt indenfor den tidsramme vil den blive slettet " +"fra systemet og man må lave en ny anmodning." + +msgid "Your recovery request has been sent!" +msgstr "Dit ønske om gendanning er blevet sendt!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Bemærk at hvis kontoen ikke har en email-adresse modtager du ikke nødvendigvis emailen og du " +"bør kontakte din systemadministrator for hjælp." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Administratorer kan bruge %sNødgenskabning af Kodeord%s siden til at genskabe " +"aministratorkontoen hvis det ikke er muligt at modtage genskabningsmailen på grund af " +"serverproblemer eller mangel på en gyldig emailadresse." + +msgid "Recover" +msgstr "Genvind" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"For at gå videre med genskabningen af kodeordet, skal vi verificere at du er den som du " +"påstår du er. Den bedste metode til at bekræfte det er at få dig til at lave en lille " +"ændring i Gallery biblioteket, som da vil bevise at du har de rigtige rettigheder. Vil vil " +"derfor bede dig om at lave en ny tekstfil kaldet %s i dit gallery2 bibliotek. Den skal " +"indeholde følgende tilfældige tilfældigt genererede tegn:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"For at hjælpe dig har vi lavet en %skorrekt version af login.txt%s til dig. Det eneste du så " +"skal gøre er at hente den og kopiere den til dit install bibliotek." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Når du har uploadet filen, så klik genopfrisk for at fortsætte." + +msgid "Emergency Administrator Password Reset" +msgstr "Nødgenskabning af Adminstrator Kodeord" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Denne side kan bruges af systemadministratoren til sikker at nulstille kodeordet for en " +"konto." + +msgid "Authorization Confirmed" +msgstr "Autorisation Bekræftet" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Din autorisation er blevet bekræftet. Indtast venligst et nyt kodeord nedenunder. Efter dit " +"nye kodeord er blevet sat vil du blive ført til loginsiden." + +msgid "Recover Password for Username" +msgstr "Genskab Kodeord for Brugernavn" + +msgid "You must enter a username to recover the password for." +msgstr "Du skal indtaste et brugernavn du vil genskabe kodeordet for." + +msgid "The username you entered does not exist." +msgstr "Det indtastede brugernavn eksisterer ikke." + +msgid "Authorization Incorrect" +msgstr "Forkert Autorisation" + +msgid "Recovery Instructions" +msgstr "Genskabningsvejledning" + +msgid "AuthFile Missing" +msgstr "AuthFile Mangler" + +msgid "AuthFile Unreadable" +msgstr "AuthFile kan ikke læses" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Din %s fil kan ikke læses. Giv venligst Gallery adgang til at læse filen." + +msgid "Refresh" +msgstr "Genopfrisk" + +msgid "This page will allow you to reset the password on your account." +msgstr "Denne siden tillader dig at nulstille kodeordet for din konto." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Der er ikke nogen anmodning som passer med det angivne kodeord og autorisation. Anmod om en " +"ny autorisation fra siden mistet kodeord" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Andmodningen du forsøger at tilgå er udløbet. Anmod om en ny autorisation fra siden glemt kodeord." + +msgid "Authorization missing" +msgstr "Mangler autorisation" + +msgid "Username missing" +msgstr "Brugernavn mangler" + +msgid "Submit" +msgstr "Send" + +#, c-format +msgid "Hello %s," +msgstr "Hej %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Du modtager denne email fordi en gendanning af kodeordet for %s blev anmodet af %s på %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Dit brugernavn er: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"For at afslutte gendanningen af kodeordet klik på det følgende link og udfyld den nødvendige " +"information:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Hvis du ikke har bedt om denne email kan du blot ignorere den." + +msgid "Thank you!" +msgstr "Mange tak!" + +msgid "guest" +msgstr "gæst" + +#, c-format +msgid "display mode: %s" +msgstr "visningstilstand: %s" + +#, c-format +msgid "Date: %s" +msgstr "Dato: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Ejer: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Størrelse: %d element<" +msgstr[1] "Størrelse: %d elementer" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(ialt %d element)" +msgstr[1] "(ialt %d elementer)" + +#, c-format +msgid "Views: %d" +msgstr "Visninger: %d" + +msgid "« album actions »" +msgstr "« albumhandlinger »" + +msgid "« item actions »" +msgstr "« elementhandlinger »" + +msgid "Go" +msgstr "Gå til" + +msgid "Navigation" +msgstr "Navigation" + +msgid "next" +msgstr "næste" + +msgid "last" +msgstr "sidste" + +#, c-format +msgid "Page %d of %d" +msgstr "Side %d af %d" + +#, c-format +msgid "%d of %d" +msgstr "%d af %d" + +msgid "first" +msgstr "første" + +msgid "previous" +msgstr "forrige" + +msgid "Page:" +msgstr "Side:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Størrelse: " + +msgid "Unknown" +msgstr "Ukendt" + +msgid "Full size: " +msgstr "Fuld størrelse: " + +msgid "Setting" +msgstr "Indstilling" + +msgid "Use Global" +msgstr "Benyt globalt" + +msgid "Language selector" +msgstr "Sprogvælger" + +msgid "Item actions" +msgstr "Elementhandlinger" + +msgid "Use dropdown menu" +msgstr "Brug rullelistemenu" + +msgid "Login block" +msgstr "Loginblok" + +# peers? +msgid "Links to album/photo peers" +msgstr "Links til album/foto 'peers'" diff --git a/Source/gallery2/modules/core/po/de.po b/Source/gallery2/modules/core/po/de.po new file mode 100644 index 0000000..e41b6c6 --- /dev/null +++ b/Source/gallery2/modules/core/po/de.po @@ -0,0 +1,3798 @@ +# $Id: de.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Jens Tkotz +# - Ernesto Baschny +# - Frederik Kunz +# - Georg Rehfeld +# - Bananeweizen +# - Moritz Stoltenburg +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2006-11-07 03:21+0100\n" +"Last-Translator: Andy Staudacher \n" +"Language-Team: German \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Country: GERMANY\n" +"X-Poedit-SourceCharset: utf-8\n" +"X-Generator: KBabel 1.10.1\n" + +msgid "Gallery Email Test" +msgstr "Gallery E-Mail Test" + +msgid "forever" +msgstr "ewig" + +msgid "High Priority (Me first!)" +msgstr "Hohe Priorität (Ich zuerst!)" + +msgid "Low Priority (I want to share!)" +msgstr "Niedrige Priorität (Ich habe Zeit!)" + +msgid "No Markup" +msgstr "Keine Auszeichnung" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Pures HTML" + +msgid "Database" +msgstr "Datenbank" + +msgid "File" +msgstr "Datei" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d Minute" +msgstr[1] "%d Minuten" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d Stunde" +msgstr[1] "%d Stunden" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d Tag" +msgstr[1] "%d Tage" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d Woche" +msgstr[1] "%d Wochen" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Keine Beschleunigung" + +msgid "Partial acceleration" +msgstr "Teilweise Beschleunigung" + +msgid "Full acceleration" +msgstr "Vollständige Beschleunigung" + +msgid "Themes" +msgstr "Motive" + +msgid "Updating Repository Index" +msgstr "Repository Index aktualisieren" + +msgid "Scanning plugins" +msgstr "Durchsuche Plugins" + +msgid "Update Plugin List" +msgstr "Aktualisiere die Plugin-Liste" + +msgid "Done." +msgstr "Fertig." + +msgid "Updating Packages" +msgstr "Aktualisiere die Pakete" + +#, c-format +msgid "Preparing %s" +msgstr "Vorbereitung für %s" + +#, c-format +msgid "Downloading %s" +msgstr "%s herunterladen" + +#, c-format +msgid "Activating %s" +msgstr "Aktiviere %s" + +msgid "Deleting Language Packs" +msgstr "Lösche Sprackpakete" + +msgid "Update completed with errors." +msgstr "Die Aktualisierung wurde mit Fehlern beendet." + +msgid "Update complete." +msgstr "Hochladen beendet" + +msgid "install" +msgstr "installieren" + +msgid "upgrade" +msgstr "aktualisieren" + +msgid "activate" +msgstr "aktivieren" + +msgid "uninstall" +msgstr "deinstallieren" + +msgid "deactivate" +msgstr "deaktivieren" + +msgid "Inherit settings from parent album" +msgstr "Einstellungen vom übergeordneten Album erben" + +msgid "Use these settings" +msgstr "Diese Einstellungen benutzen" + +msgid "Installing the core module" +msgstr "Installiere Gallery-Kernmodul" + +msgid "key" +msgstr "Schlüssel" + +msgid "All access" +msgstr "Vollzugang" + +msgid "[core] View item" +msgstr "[core] Elemente sehen" + +msgid "[core] View resized version(s)" +msgstr "[core] Skalierte Bilder sehen" + +msgid "[core] View original version" +msgstr "[core] Originalversionen sehen" + +msgid "[core] View all versions" +msgstr "[core] Alle Versionen sehen" + +msgid "[core] Add sub-album" +msgstr "[core] Unteralben hinzufügen" + +msgid "[core] Add sub-item" +msgstr "[core] Unter-Elemente hinzufügen" + +msgid "[core] Edit item" +msgstr "[core] Elemente ändern" + +msgid "[core] Change item permissions" +msgstr "[core] Element-Berechtigungen ändern" + +msgid "[core] Delete item" +msgstr "[core] Elemente löschen" + +msgid "Upgrading permissions" +msgstr "Berechtigungen erweitern" + +msgid "Deleting old permission tables" +msgstr "Lösche alte Berechtigungstabellen" + +msgid "Registered Users" +msgstr "Registrierte Benutzer" + +msgid "All Users" +msgstr "Alle Benutzer" + +msgid "Detecting broken derivatives" +msgstr "Defekte Bildderivate werden ermittelt" + +msgid "Clearing fast-download cache" +msgstr "Leere Schnell-Download-Cache" + +msgid "Deleting old fast-download cache" +msgstr "Leere alten Schnell-Download-Cache" + +msgid "Updating panorama items" +msgstr "Aktualisiere Panorama Elemente" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimiere die AccessSubscriberMap Tabelle" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Site-Administratoren" + +msgid "Everybody" +msgstr "Jeder" + +msgid "Guest" +msgstr "Gast" + +msgid "Gallery" +msgstr "Gallery" + +msgid "This is the main page of your Gallery" +msgstr "Dies ist die Startseite Ihrer Gallery" + +msgid "Converting MySQL data to UTF8" +msgstr "Konvertiere MySQL Daten nach UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Zugriffsrechte werden aktualisiert (%d Elemente abgeschlossen, %d verbleibend)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Defekte Bildderivate werden ermittelt, lade (%d Derivate kontrolliert, %d verbleibend)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Defekte Bildderivate werden ermittelt (%d Derivate kontrolliert, %d verbleibend)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" +"Defekte Bildderivate werden ermittelt, speichere (%d Derivate kontrolliert, %d verbleibend)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Defekte Bildderivate werden ermittelt, speichere Element %d von %d (%d Elemente " +"abgeschlossen, %d verbleibend)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Lösche alte Session Dateien (Durchlauf %d)" + +msgid "add items" +msgstr "Elemente hinzufügen" + +msgid "Album created successfully." +msgstr "Album erfolgreich erstellt." + +msgid "add sub-album" +msgstr "Unteralbum hinzufügen" + +msgid "add items confirmation" +msgstr "Elementbestätigung hinzufügen" + +msgid "Base filename" +msgstr "Basis-Dateiname" + +msgid "Caption" +msgstr "Beschriftung" + +msgid "Blank" +msgstr "Leer lassen" + +msgid "From Web Browser" +msgstr "Vom Web Browser" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d Megabyte" +msgstr[1] "%d Megabytes" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d Kilobyte" +msgstr[1] "%d Kilobytes" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Die Datei %s überschreitet die maximal zulässige Dateigrösse" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Die Datei %s überschreitet die maximal zulässige Dateigrösse des Formulars" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Die Datei %s wurde nicht komplett hochgeladen" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Die Datei %s wurde nicht hochgeladen. Fehler %d" + +msgid "Gallery Item Administration" +msgstr "Gallery Element Administration" + +msgid "delete an item" +msgstr "Element löschen" + +msgid "delete confirmation" +msgstr "Lösch-Bestätigung" + +#, c-format +msgid "delete %s" +msgstr "%s löschen" + +#, c-format +msgid "edit %s" +msgstr "%s ändern" + +msgid "Settings saved successfully." +msgstr "Die Einstellungen wurden erfolgreich gespeichert." + +msgid "Apply resized image settings" +msgstr "Wende Einstellungen auf Skalierte Bilder an" + +msgid "Preparing..." +msgstr "Führe Vorbereitung durch..." + +msgid "Apply thumbnail settings" +msgstr "Wende Einstellungen auf Vorschaubilder an" + +msgid "Rebuilding thumbnails..." +msgstr "Erstelle Vorschaubilder erneut..." + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Verarbeite Bild %d von %d" + +msgid "Changes saved successfully" +msgstr "Änderungen erfolgreich gespeichert." + +msgid "Animation Size" +msgstr "Animations-Größe" + +msgid "edit captions" +msgstr "Beschriftungen ändern" + +msgid "General" +msgstr "Allgemein" + +msgid "Movie Size" +msgstr "Filmgröße" + +msgid "Photo" +msgstr "Photo" + +msgid "Thumbnail cropped successfully" +msgstr "Das Vorschaubild wurde erfolgreich zugeschnitten" + +msgid "Thumbnail reset successfully" +msgstr "Das Vorschaubild wurde erfolgreich zurückgesetzt" + +msgid "Photo 5x3" +msgstr "Photo 5x3" + +msgid "Photo 6x4" +msgstr "Photo 6x4" + +msgid "Photo 7x5" +msgstr "Photo 7x5" + +msgid "Photo 10x8" +msgstr "Photo 10x8" + +msgid "Fullscreen 4x3" +msgstr "Vollbild 4x3" + +msgid "Widescreen 16x9" +msgstr "Breitbild 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "Kinoformat 2,35x1" + +msgid "Square 1x1" +msgstr "1x1 Quadrat" + +msgid "As Image" +msgstr "Proportional zum Bild" + +msgid "Landscape" +msgstr "Querformat" + +msgid "Portrait" +msgstr "Hochformat" + +msgid "Crop Thumbnail" +msgstr "Vorschaubild zuschneiden" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Die Rotations- und Skalierungsänderungen wurden erfolgreich rückgängig gemacht." + +msgid "Rotated photo successfully" +msgstr "Photo erfolgreich gedreht" + +msgid "Scaled photo successfully" +msgstr "Photo erfolgreich skaliert" + +msgid "Modify Photo" +msgstr "Photo bearbeiten" + +msgid "Successfully changed theme" +msgstr "Das Motiv wurde erfolgreich verändert" + +msgid "« default theme »" +msgstr "« Standard-Motiv »" + +msgid "Theme" +msgstr "Motiv" + +msgid "make highlight" +msgstr "Als Titelbild auswählen" + +msgid "move item" +msgstr "Element verschieben" + +#, c-format +msgid "move %s" +msgstr "%s verschieben" + +#, c-format +msgid "edit %s permissions" +msgstr "Berechtigung %s ändern" + +msgid "reorder items" +msgstr "Elemente umordnen" + +msgid "Maintenance" +msgstr "Wartungsaufgaben" + +msgid "Gallery Site Administration" +msgstr "Site-Administration der Gallery" + +msgid "site admin" +msgstr "site admin" + +msgid "Gallery User Administration" +msgstr "Benutzer-Administration der Gallery" + +msgid "change password" +msgstr "Passwort ändern" + +msgid "your account" +msgstr "Ihr Konto" + +msgid "Password Recovery" +msgstr "Passwort-Wiederherstellung" + +msgid "Core" +msgstr "Kernfunktionen" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Kernmodul" + +msgid "Add Items" +msgstr "Elemente hinzufügen" + +msgid "Edit Album" +msgstr "Album bearbeiten" + +msgid "Edit Photo" +msgstr "Photo bearbeiten" + +msgid "Edit Movie" +msgstr "Film bearbeiten" + +msgid "Add Album" +msgstr "Album hinzufügen" + +msgid "Edit Permissions" +msgstr "Berechtigungen ändern" + +msgid "View Permissions" +msgstr "Berechtigungen anzeigen" + +msgid "Delete Album" +msgstr "Album löschen" + +msgid "Delete Photo" +msgstr "Photo löschen" + +msgid "Delete Movie" +msgstr "Film löschen" + +msgid "Move Album" +msgstr "Album verschieben" + +msgid "Move Photo" +msgstr "Photo verschieben" + +msgid "Move Movie" +msgstr "Film verschieben" + +msgid "Edit Captions" +msgstr "Beschriftungen ändern" + +msgid "Make Highlight" +msgstr "Als Titelbild auswählen" + +msgid "Reorder Items" +msgstr "Elemente umordnen" + +msgid "Site Admin" +msgstr "Site-Administration" + +msgid "Login" +msgstr "Anmelden" + +msgid "Your Account" +msgstr "Ihr Konto" + +msgid "Logout" +msgstr "Abmelden" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Benutzer" + +msgid "Groups" +msgstr "Gruppen" + +msgid "Performance" +msgstr "Leistung" + +msgid "Toolkit Priority" +msgstr "Werkzeugpriorität" + +msgid "Graphics Toolkits" +msgstr "Grafische Werkzeuge" + +msgid "Account Settings" +msgstr "Kontoeinstellungen" + +msgid "Change Password" +msgstr "Passwort ändern" + +#, c-format +msgid "Edit %s" +msgstr "%s ändern" + +#, c-format +msgid "Delete %s" +msgstr "%s löschen" + +#, c-format +msgid "Move %s" +msgstr "%s verschieben" + +msgid "Build all thumbnails/resizes" +msgstr "Erzeuge alle Vorschaubilder/Zwischengrößen" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Stelle sicher, dass alle Bildderivate (Vorschaubilder usw.) erstellt wurden und erstelle " +"defekte Derivate erneut." + +msgid "Build All Thumbnails/Resizes" +msgstr "Erstelle alle Vorschaubilder/Zwischengrößen" + +msgid "Debug output for failed items:" +msgstr "Fehlerausgabe für fehlgeschlagene Elemente:" + +#, c-format +msgid "Checked %d items" +msgstr "%d Elemente geprüft" + +#, c-format +msgid "%d items built" +msgstr "%d Elemente erstellt" + +#, c-format +msgid "%d items failed" +msgstr "%d elemente fehlgeschlagen" + +msgid "Convert MySQL database to UTF8" +msgstr "Konvertiere MySQL Datenbank nach UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Falls Sie Ihre Datenbank mit MySQL 3.x erstellt haben und auf MySQL 4.x aktualisieren, " +"werden Sie komische Buchstaben sehen bis Sie die Datenbank auf UTF-8 konvertieren.Diese " +"Operation ist harmlos. Sie können sie also auch durchführen, wenn Sie sich nicht sicher sind " +"mit welcher MySQL Version Sie gestartet haben. Nachdem diese Operation durchgeführt wurde, " +"sollten Sie die 'Datenbankzwischenspeicher leeren' Operation durchführen." + +msgid "Database successfully converted to UTF8" +msgstr "Datenbank erfolgreich nach UTF-8 konvertiert" + +msgid "No conversion required" +msgstr "Keine Konvertierung notwendig" + +msgid "Delete user sessions" +msgstr "Lösche Benutzersitzungen" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Lösche alle persistenten Benutzersitzungen entsprechend Ihrer aktuellen " +"Sitzungslaufzeitbeschränkungen." + +#, c-format +msgid "Deleted %d sessions." +msgstr "%d Benutzersitzungen wurden gelöscht." + +msgid "Delete database cache" +msgstr "Datenbankzwischenspeicher leeren" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery speichert häufig benötigte Datenbank-Informationen zur Beschleunigung auf der " +"Festplatte. Falls Sie die Datenbank direkt geändert haben, sollten Sie diese Aufgabe " +"ausführen, um den Zwischenspeicher zu löschen und Gallery dazu zu zwingen, die Informationen " +"aus der Datenbank neu zu laden." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Verzeichnis '%s' erfolgreich gelöscht." + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Konnte das Verzeichnis '%s' nicht löschen." + +msgid "Delete template cache" +msgstr "Vorlagenpuffer leeren" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery kompiliert Vorlagen-Dateien und speichert sie in einem Puffer, um eine höhere " +"Geschwindigkeit zu erzielen. Wenn Sie Probleme haben und eine Meldung Smarty Fehler " +"sehen, dann sollten Sie diese Wartungsaufgabe ausführen. Benutzen Sie diese Aufgabe auch " +"dann, wenn Sie local/*.tpl Dateien entfernen, so dass Smarty auf die Standarddatei " +"zurückschaltet." + +msgid "Template cache deleted successfully" +msgstr "Der Puffer für Vorlagen wurde erfolgreich geleert." + +msgid "album" +msgstr "Album" + +msgid "Animation" +msgstr "Animation" + +msgid "animation" +msgstr "Animation" + +msgid "Gallery Core" +msgstr "Gallery-Kern" + +msgid "Gallery Core Module" +msgstr "Gallery-Kernmodul" + +msgid "Search descriptions" +msgstr "Beschreibungen durchsuchen" + +msgid "Search keywords" +msgstr "Schlüsselwörter durchsuchen" + +msgid "Search summaries" +msgstr "Zusammenfassungen durchsuchen" + +msgid "Search titles" +msgstr "Titel durchsuchen" + +msgid "Description" +msgstr "Beschreibung" + +msgid "Keywords" +msgstr "Schlüsselwörter" + +msgid "Summary" +msgstr "Zusammenfassung" + +msgid "Title" +msgstr "Titel" + +msgid "Owner" +msgstr "Besitzer" + +msgid "Dynamic Album" +msgstr "Dynamisches Album" + +msgid "dynamic album" +msgstr "dynamisches Album" + +msgid "Group" +msgstr "Gruppe" + +msgid "group" +msgstr "Gruppe" + +msgid "Other" +msgstr "Andere" + +msgid "Movie" +msgstr "Film" + +msgid "movie" +msgstr "Film" + +msgid "photo" +msgstr "Photo" + +msgid "Couldn't create repository cache path." +msgstr "Pfad für den Plugin-Katalog-Cache konnte nicht erstellt werden." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Konnte den Cache-Unterordner nicht anlegen. Stellen Sie sicher, dass der Webserver die " +"nötigen Schreibrechte dafür hat." + +msgid "Official Release Repository" +msgstr "Offizielles Release Repository" + +msgid "Experimental Repository" +msgstr "Experimentelles Repository" + +msgid "Community Repository" +msgstr "Community-Repository" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Fehler beim Herunterladen des Index von '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Fehler beim Herunterladen der Index-Hash-Tabelle von '%s'." + +msgid "Index integrity check failed." +msgstr "Integritätsprüfung des Index fehlgeschlagen." + +msgid "« default sort order »" +msgstr "« Standard-Sortierreihenfolge »" + +msgid "Manual sort order" +msgstr "Manuelle Sortierreihenfolge" + +msgid "Origination Date" +msgstr "Herkunftsdatum" + +msgid "Creation Date" +msgstr "Erstellungsdatum" + +msgid "Last Changed Date" +msgstr "Datum der letzten Änderung" + +msgid "Name" +msgstr "Name" + +msgid "View Count" +msgstr "Anzahl Betrachtungen" + +msgid "Random" +msgstr "Zufall" + +msgid "« no presort »" +msgstr "« Keine Vorsortierung » " + +msgid "Albums First" +msgstr "Alben zuerst" + +msgid "Most Viewed First" +msgstr "Meistgesehene zuerst" + +msgid "Ascending" +msgstr "Aufsteigend" + +msgid "Descending" +msgstr "Absteigend" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" +"Die Validierung ist ausgeschaltet bis Sie die Einstellung allowSessionAccess in der config." +"php vornehmen" + +msgid "This page is valid XHTML 1.0" +msgstr "Diese Seite ist gültiges XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Spenden Sie für das Gallery-Projekt" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Voraussichtliche Restzeit: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Speichernutzung: %s, gesamt: %s" + +msgid "Rows per album page" +msgstr "Zeilen per Albumseite" + +msgid "Columns per album page" +msgstr "Spalten pro Albumseite" + +msgid "Number of items to show per page" +msgstr "Anzahl der anzuzeigenden Elemente pro Seite" + +msgid "Row height (pixels)" +msgstr "Zeilenhöhe (Pixel)" + +msgid "Column width (pixels)" +msgstr "Spaltenbreite (Pixel)" + +msgid "Show image owners" +msgstr "Bildbesitzer anzeigen" + +msgid "Show album owners" +msgstr "Albumbesitzer anzeigen" + +msgid "Show micro navigation thumbnails" +msgstr "Mikronavigationsbilder anzeigen" + +msgid "Blocks to show in the sidebar" +msgstr "In der Seitenleiste angezeigte Blöcke" + +msgid "Blocks to show on album pages" +msgstr "Auf Albumseiten angezeigte Blöcke" + +msgid "Blocks to show on photo pages" +msgstr "Auf Photoseiten angezeigte Blöcke" + +msgid "Thumbnail links in dynamic albums" +msgstr "Vorschaubild Verweise in dynamischen Alben" + +msgid "Browse dynamic album" +msgstr "Im dynamischen Album navigieren" + +msgid "Jump to original album" +msgstr "Zum Original-Album springen" + +msgid "Separate link to original album" +msgstr "Separater Verweis zum Original-Album" + +msgid "View Samples" +msgstr "Beispiele zeigen" + +msgid "Album Frame" +msgstr "Album-Rahmen" + +msgid "Item Frame" +msgstr "Element-Rahmen" + +msgid "Photo Frame" +msgstr "Photo-Rahmen" + +msgid "Color Pack" +msgstr "Farb-Paket" + +msgid "You must enter a number greater than 0" +msgstr "Sie müssen eine Zahl größer als 0 eingeben" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Fehler beim Lesen der Block-Einstellungen. Bitte leeren Sie den Webseiten Zwischenspeicher " +"und versuchen Sie es erneut." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audiodatei" + +msgid "audio" +msgstr "Audiodatei" + +msgid "Archive" +msgstr "Archiv" + +msgid "archive" +msgstr "Archiv" + +msgid "Document" +msgstr "Dokument" + +msgid "document" +msgstr "Dokument" + +msgid "Spreadsheet" +msgstr "Kalkulationstabelle" + +msgid "spreadsheet" +msgstr "Kalkulationstabelle" + +msgid "file" +msgstr "Datei" + +msgid "Back" +msgstr "Zurück" + +#, c-format +msgid "Back to %s" +msgstr "Zurück zu: %s" + +msgid "User" +msgstr "Benutzer" + +msgid "user" +msgstr "Benutzer" + +msgid "Optimize database" +msgstr "Datenbank optimieren" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Verbessern Sie die Geschwindigkeit Ihrer Datenbank. Der erzielbare Gewinn hängt zwar von der " +"verwendeten Datenbank ab, aber diese regelmäßige Wartungsaufgabe macht Ihre Gallery " +"insgesamt schneller. Besonders nützlich, nachdem Sie viele Elemente hinzugefügt oder " +"gelöscht haben." + +msgid "Database optimized successfully" +msgstr "Datenbank erfolgreich optimiert" + +msgid "Reset view counts" +msgstr "Zähler 'Betrachtet x mal' zurücksetzen" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Setze die Zähler 'Betrachtet x mal' für alle Alben und Elemente auf 0 zurück. Dieser Vorgang " +"löscht gleichzeitig den Datenbank-Puffer." + +msgid "View counts reset successfully" +msgstr "Alle Zähler wurden erfolgreich zurückgesetzt." + +msgid "Refresh capture dates" +msgstr "Aufnahmedaten auffrischen" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Aufnahmedaten der Gallery für alle Elemente auffrischen, die ein Aufnahmedatum in den Media-" +"Daten gesetzt haben (normalerweise in den EXIF-Daten)." + +msgid "Processing..." +msgstr "Verarbeite..." + +msgid "Refresh Capture Dates" +msgstr "Aufnahmedaten auffrischen" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Verarbeite Element %d von %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "%d von %d Elementen aktualisiert" + +msgid "System information" +msgstr "Systeminformationen" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Zeige System-Details. Nützlich, wenn Sie in den G2-Foren Hilfe suchen. Bitte kopieren Sie " +"die gezeigten Informationen und fügen Sie sie dann im Forum ein." + +msgid "core" +msgstr "Kern" + +msgid "unknown" +msgstr "Unbekanntes Element" + +msgid "Gallery version" +msgstr "Gallery-Version" + +msgid "PHP version" +msgstr "PHP-Version" + +msgid "Webserver" +msgstr "Webserver" + +msgid "Toolkits" +msgstr "Werkzeuge" + +msgid "Acceleration" +msgstr "Beschleunigung" + +msgid "Operating system" +msgstr "Betriebssystem" + +msgid "Default theme" +msgstr "Standard-Motiv" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "Aktiviert" + +msgid "disabled" +msgstr "Nicht aktiviert" + +msgid "Locale" +msgstr "Sprache" + +msgid "Browser" +msgstr "Browser" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Zeilen in der %s Tabelle = %d" + +msgid "Successfully saved theme settings" +msgstr "Die Motiv-Einstellungen wurden erfolgreich gespeichert." + +msgid "General Settings" +msgstr "Allgemeine Einstellungen" + +msgid "Settings saved successfully" +msgstr "Einstellungen erfolgreich gespeichert" + +msgid "Added local upload directory successfully" +msgstr "Das Hochlade-Verzeichnis wurde erfolgreich eingetragen" + +msgid "Removed local upload directory successfully" +msgstr "Das Hochlade-Verzeichnis wurde erfolgreich entfernt" + +msgid "Test email sent successfully" +msgstr "Test E-Mail wurde gesendet" + +msgid "There was a problem processing your request, see below for details." +msgstr "Es gab ein Problem bei der Bearbeitung Ihrer Anfrage, siehe unten für Einzelheiten." + +msgid "Error sending test email, see below for details." +msgstr "Fehler beim Senden der Test E-Mail, siehe unten für Einzelheiten." + +msgid "Language Settings" +msgstr "Spracheinstellungen" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Wählen Sie die Standard-Sprache für Gallery. Einzelne Benutzer können diese Auswahl in ihren " +"persönlichen Einstellungen oder - falls vorhanden - über die Sprachauswahlbox außer Kraft " +"setzen. Gallery wird bei jedem Nutzer versuchen, die passende Sprache zu erkennen, wenn die " +"Prüfung der Browser-Vorgaben aktiviert wurde." + +msgid "Default language" +msgstr "Standard-Sprache" + +msgid "Check Browser Preference" +msgstr "Prüfe die Vorgaben des Browsers" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Ihr Webserver unterstützt keine Lokalisierung. Bitten Sie Ihren Systemadministrator, PHP neu " +"zu konfigurieren und dabei die Option %s zu aktivieren." + +msgid "Date Formats" +msgstr "Datumsformate" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Stellen Sie ein, wie Daten und Uhrzeiten von Gallery dargestellt werden. Sie können sich auf " +"%sphp.net%s im Detail informieren, wie Sie den Format-String ausfüllen müssen. Bitte " +"beachten Sie, dass die Anzeige einiger Merkmale von der aktivierten Sprache abhängt." + +msgid "Style" +msgstr "Stil" + +msgid "Format" +msgstr "Format" + +msgid "Sample" +msgstr "Beispiel" + +msgid "Date" +msgstr "Datum" + +msgid "Time" +msgstr "Zeit" + +msgid "Date/Time" +msgstr "Datum/Uhrzeit" + +msgid "Filesystem Permissions" +msgstr "Dateisystem-Berechtigungen" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Hier können Sie die Berechtigungen der von Gallery erstellten Dateien und Verzeichnisse " +"einstellen. Dies wirkt sich nicht auf bereits erstellte Dateien/Verzeichnisse aus." + +msgid "New directories" +msgstr "Neue Verzeichnisse" + +msgid "New files" +msgstr "Neue Dateien" + +msgid "Session Settings" +msgstr "Sitzungseinstellungen" + +msgid "Session Lifetime" +msgstr "Sitzungslaufzeit" + +msgid "Inactivity Timeout" +msgstr "Zeitüberschreitung bei Untätigkeit" + +msgid "Embedded Markup" +msgstr "Eingebettete Auszeichnung" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Welche Art von Syntax soll in Feldern mit Eingabemöglichkeiten für Benutzer erlaubt sein? " +"Aus Sicherheitsgründen wird nicht empfohlen, HTML freizugeben. BBCode ist eine spezielle " +"Syntax, die sicher ist und einfache Textformatierungen erlaubt wie fett, kursiv, Listen, " +"Bilder und URLs." + +msgid "Markup" +msgstr "Auszeichnung" + +msgid "Email" +msgstr "E-Mail" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Standardmäßig benutzt Gallery die Mail-Funktion von PHP, um E-Mails zu verschicken. Dafür " +"ist keine Konfiguration nötig. Wenn Sie einen SMTP/Mail-Server verwenden wollen, füllen Sie " +"die Felder unten aus, einschließlich eventuell erforderlicher Anmeldeinformationen. Optional " +"können Sie mit einem an den Servernamen angefügten :Port einen nicht-standardmäßigen Port " +"einstellen." + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Benutzername" + +msgid "Password" +msgstr "Passwort" + +msgid "SMTP From Address" +msgstr "SMTP 'Von' Adresse" + +msgid "Invalid email address" +msgstr "Ungültige E-Mail-Adresse" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Senden Sie eine Test E-Mail, um Ihre Einstellungen auf Korrektheit zu prüfen (egal, ob Sie " +"PHP E-Mail oder obige SMTP Einstellungen benutzen). Geben Sie unten die Emfänger-Adresse der " +"Test E-Mail an." + +msgid "Send Email" +msgstr "E-Mail senden" + +msgid "Email Test Error" +msgstr "Fehler beim E-Mail-Test" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Wenn die Gallery in eine andere Anwendung eingebunden ist (Portal, CMS, Forum, etc.), haben " +"Sie die Wahl zwischen zwei Optionen. Niemand sonst muss sich um die Cookie-Einstellungen " +"kümmern. Lesen Sie weiter für mehr Details." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Fals Ihre Gallery in eine andere Anwendung eingebettet ist und Sie die folgenden Felder leer " +"lassen, dann haben alle DownloadItem-Verweise (die URLs der Bilder und anderer Elemente) in " +"der eingebetteten Gallery einen angehängten GALLERYSID-String in der URL, welcher ein " +"geringfügiges Sicherheitsrisiko darstellt, falls Ihre Gallery-Benutzer anfangen, " +"Bilder-URLs in Foren, Gästebücher, etc. reinzukopieren. Die Alternative ist, den Cookie-" +"Pfad einzustellen. Gallery wird dann keine GALLERYSID an die eingebetteten " +"DownloadItem-URLs anfügen. Wenn z.B. die Gallery unter http://www.beispiel.de/anwendung/" +"gallery2/ liegt und die einbettende Anwendung unter http://www.beispiel.de/anwendung/, dann " +"müssen Sie den Pfad /anwendung/gallery2/ mit /anwendung/ vergleichen. Der Cookie-Pfad ist " +"der Teil der Pfade, welcher identisch ist, in diesem Fall ist es '/anwendung/'. Meistens ist " +"es einfach '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Die Cookie-Domäne wird ebenfalls nur bei eingebettenten Gallery-Installationen " +"gebraucht, und auch nur dann, wenn Sie den GALLERYSID-String in den eingebetteten " +"DownloadItem-URLs loswerden wollen. In den meisten Fällen, kann die Cookie-Domäne leer " +"gelassen werden. Stellen Sie sie nur ein, wenn die Gallery und die einbettende Anwendung " +"ausschließlich über unterschiedliche Subdomänen erreichbar sind, z.B. wenn die " +"Gallery unter http://photos.beispiel.de/ liegt und die Anwendung unter http://www.beispiel." +"de/. In diesem Fall müssen Sie die Cookie-Domäne beispiel.de einstellen (der Teil der " +"Adressen, welcher in beiden enthalten ist, sowohl bei der Gallery als auch der einbettenden " +"Anwendung)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Sobald Sie die Cookie-Einstellungen geändert haben, müssen alle registrierten Benutzer Ihrer Gallery ihren Cookie-Cache im Browser leeren. Wenn sie das nicht tun, werden " +"sie Probleme beim Ein-/Ausloggen oder während des Nutzungsvorgangs haben." + +msgid "Path" +msgstr "Pfad" + +msgid "Invalid cookie path" +msgstr "Ungültiger Cookie-Pfad" + +msgid "Domain" +msgstr "Domäne" + +msgid "Invalid cookie domain" +msgstr "Ungültige Cookie-Domäne" + +msgid "Locking System" +msgstr "Verriegelungs-Verfahren" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery benutzt ein System zum Sperren von Daten, um gleichzeitige, kollidierende Änderungen " +"zu verhindern. Es stehen zwei Methoden zur Verfügung: dateibasiertes Sperren ist " +"schnell und effizient, arbeitet aber nicht auf NFS-Dateisystemen und funktioniert " +"unzuverlässig auf Windows Systemen. Datenbankbasiertes Sperren ist langsamer, aber " +"zuverlässig. Wenn Sie sich nicht sicher sind, empfehlen wir Ihnen das dateibasierte Sperren. " +"Wenn Sie viele Timeouts bekommen, können Sie auf datenbankbasiertes Sperren umstellen. Das " +"Wechseln zwischen den Verriegelungs-Methoden ist unproblematisch." + +msgid "Lock system" +msgstr "Verriegelungs-Methode" + +msgid "Helper Processes" +msgstr "System Prozesse" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Einige Gallery Module benutzen Programme auf Ihrem Server zur Bildbearbeitung, Archivierung " +"und ähnlichem. Diese Programme können sehr rechenintensiv sein und daher die gesamte " +"Performance Ihres Webservers beeinflussen. Sie können hier bestimmen, mit welcher Priorität " +"diese Programme arbeiten und sie damit zu einem mehr oder weniger rücksichtsvollen Verhalten " +"zwingen. Wenn sich jemand über Ihre Server-Belastung beschwert, versuchen Sie es hier mit " +"einer niedrigen Priorität." + +msgid "Priority" +msgstr "Priorität" + +msgid "Save" +msgstr "Speichern" + +msgid "Reset" +msgstr "Zurücksetzen" + +msgid "Create A New Group" +msgstr "Eine neue Gruppe erstellen" + +msgid "Group Name" +msgstr "Gruppenname" + +msgid "(required)" +msgstr "(erforderlich)" + +msgid "You must enter a group name" +msgstr "Sie müssen einen Gruppennamen eingeben" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Gruppe '%s' existiert bereits" + +msgid "Create Group" +msgstr "Gruppe erstellen" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Create A New User" +msgstr "Einen neuen Benutzer erstellen" + +msgid "You must enter a username" +msgstr "Sie müssen einen Benutzernamen eingeben" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Benutzername '%s' existiert bereits" + +msgid "Full Name" +msgstr "Voller Name" + +msgid "Email Address" +msgstr "E-Mail-Adresse" + +msgid "You must enter an email address" +msgstr "Sie müssen eine E-Mail-Adresse eingeben" + +msgid "Language" +msgstr "Sprache" + +msgid "You must enter a password" +msgstr "Sie müssen ein Passwort eingeben" + +msgid "Verify Password" +msgstr "Bestätigen Sie das Passwort" + +msgid "You must enter the password a second time" +msgstr "Sie müssen das Passwort ein zweites Mal eingeben" + +msgid "The passwords you entered did not match" +msgstr "Die eingegebenen Passwörter stimmen nicht überein" + +msgid "Create User" +msgstr "Benutzer erstellen" + +msgid "Delete A Group" +msgstr "Eine Gruppe löschen" + +msgid "Are you sure?" +msgstr "Sind Sie sicher?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Dies wird %s endgültig aus der Gallery entfernen. Dieser Vorgang kann nicht rückgängig " +"gemacht werden!" + +msgid "Delete" +msgstr "Löschen" + +msgid "Delete a User" +msgstr "Einen Benutzer löschen" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "%s ist der Besitzer von %s Elementen" + +#, c-format +msgid "Delete user %s and..." +msgstr "Lösche Benutzer %s und ..." + +# %s is name of old owner +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Ordnen Sie allen Elementen von '%s' einen neuen Besitzer zu." + +# %s is user name +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Lösche alle Elemente von %s und ordne den übrig gebliebenen, nicht leeren Alben einen neuen " +"Besitzer zu. Elemente, für die %s keine Berechtigung zum Löschen hat, werden auch einem " +"neuen Besitzer zugeordnet." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Neuer Besitzer (leeres Feld bedeutet Gallery-Admin):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"Der Benutzer '%s' existiert nicht. Elemente können nur existierenden Benutzern zugeordnet " +"werden." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Der neue Benutzer muss ein anderer sein als der, den Sie gerade löschen!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Der neue Besitzer darf kein Gast / anonym sein." + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Dies wird %s endgültig aus der Gallery entfernen. Dieser Vorgang kann nicht " +"rückgängig gemacht werden!" + +msgid "Edit a group" +msgstr "Eine Gruppe ändern" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Mitglieder der Gruppe '%s' ändern" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Benutzer '%s' wurde der Gruppe '%s' hinzugefügt." + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Benutzer '%s' wurde aus der Gruppe '%s' entfernt" +msgstr[1] "%s Benutzer wurden aus der Gruppe '%s' entfernt" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Diese Gruppe enthält %d Benutzer." +msgstr[1] "Diese Gruppe enthält %d Benutzer." + +msgid "Members" +msgstr "Mitglieder" + +msgid "« first" +msgstr "« Anfang" + +msgid "« back" +msgstr "« Zurück" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Sehe Seite %d von %d" + +msgid "next »" +msgstr "Vorwärts »" + +msgid "last »" +msgstr "Ende »" + +msgid "Filter" +msgstr "Filter" + +msgid "Clear" +msgstr "Löschen" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d Benutzer entspricht Ihrem Filter." +msgstr[1] "%d Benutzer entsprechen Ihrem Filter." + +# TODO: the msgid is too generic for such a specific translation +msgid "Remove selected" +msgstr "Ausgewählte Mitglieder entfernen" + +msgid "You must select a user to remove." +msgstr "Sie müssen einen Benutzer zum Löschen auswählen." + +msgid "You can't remove yourself from this group." +msgstr "Sie können sich aus dieser Gruppe nicht selbst entfernen." + +msgid "Add Member" +msgstr "Mitglied hinzufügen" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "You must enter a username." +msgstr "Sie müssen einen Benutzernamen eingeben." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Benutzer '%s' existiert nicht." + +msgid "This user already is in this group." +msgstr "Dieser Benutzername existiert bereits in dieser Gruppe." + +msgid "Done" +msgstr "Fertig" + +msgid "Edit a user" +msgstr "Einen Benutzer ändern" + +msgid "That username is already in use" +msgstr "Dieser Benutzername existiert bereits" + +msgid "You must enter a new username" +msgstr "Sie müssen einen Benutzernamen eingeben" + +msgid "E-mail Address" +msgstr "E-Mail-Adresse" + +msgid "(suggested)" +msgstr "(empfohlen)" + +msgid "Options" +msgstr "Optionen" + +msgid "Lock user." +msgstr "Benutzer-Einstellungen einriegeln" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Die Kontoeinstellungen (Passwort, Name, Email, etc.) eingerasteter Bnutzerkonten können " +"nicht durch die Benutzer selbst verändert werden." + +msgid "Reset failed login count." +msgstr "Zähler für fehlgeschlagene Anmeldungsversuche zurücksetzen" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d fehlgeschlagener Anmeldungs-Versuch seit der letzten erfolgreichen Anmeldung." +msgstr[1] "%d fehlgeschlagene Anmeldungs-Versuche seit der letzten erfolgreichen Anmeldung." + +msgid "Group Management" +msgstr "Gruppenverwaltung" + +#, c-format +msgid "Removed group '%s'" +msgstr "Gruppe '%s' entfernt" + +#, c-format +msgid "Created group '%s'" +msgstr "Gruppe '%s' erstellt" + +#, c-format +msgid "Modified group '%s'" +msgstr "Gruppe '%s' geändert" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Es existiert %d Gruppe im System." +msgstr[1] "Es existieren insgesamt %d Gruppen im System." + +msgid "Edit Group" +msgstr "Gruppe ändern" + +msgid "Edit" +msgstr "Anpassen" + +msgid "Add/Remove Users" +msgstr "Benutzer hinzufügen/löschen" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Gruppe '%s' existiert nicht." + +msgid "You cannot delete that group" +msgstr "Sie können diese Gruppe nicht löschen!" + +msgid "You cannot edit that group's users" +msgstr "Sie können die Benutzer dieser Gruppe nicht ändern." + +msgid "Edit Group (by list)" +msgstr "Gruppen (siehe Liste) ändern" + +msgid "Action" +msgstr "Aktion" + +msgid "edit" +msgstr "Ändern" + +msgid "delete" +msgstr "Löschen" + +msgid "members" +msgstr "Mitglieder" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d Gruppe enspricht Ihrem Filter." +msgstr[1] "%d Gruppen entsprechen Ihrem Filter." + +msgid "System Maintenance" +msgstr "System-Wartungsaufgaben" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Wartungsaufgabe %s erfolgreich ausgeführt." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Die Wartungsaufgabe '%s' konnte nicht erfolgreich abgeschlossen werden." + +msgid "Task name" +msgstr "Wartungsaufgabe" + +msgid "Last run" +msgstr "Zuletzt ausgeführt" + +msgid "Success/Fail" +msgstr "Erfolg/Fehler" + +msgid "Not run yet" +msgstr "Noch nicht ausgeführt" + +msgid "Success" +msgstr "Erfolg" + +msgid "Failed" +msgstr "Fehlgeschlagen" + +msgid "run now" +msgstr "jetzt ausführen" + +msgid "Last Run Details:" +msgstr "Details der letzten Ausführung:" + +msgid "Performance Tuning" +msgstr "Leistungssteigerung" + +msgid "Updated performance settings successfully" +msgstr "Einstellungen zur Leistungssteigerung erfolgreich aktualisiert" + +msgid "Deleted all saved pages" +msgstr "Alle zwischengespeicherten Webseiten gelöscht" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Verbessern Sie die Leistung Ihrer Gallery indem vollständige Webseiten in der Datenbank " +"vorgehalten werden. Hierdurch können die zur Darstellung von Webseiten notwendigen " +"Webserver- und Datenbankressourcen deutlich reduziert werden. Auf der anderen Seite könnte " +"dies bedeuten, dass die dargestellten Webseiten ein wenig veraltet sind. Die neuste Version " +"der Seite können Sie jedoch immer durch ein erzwungenes Neuladen der Seite in Ihrem Browser " +"abrufen (normalerweise durch das Gedrückhalten der Umschalttaste beim Klicken des Neu-Laden-" +"Knopfes)." + +msgid "Partial Acceleration" +msgstr "Teilweise Beschleunigung" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Bei teilweiser Beschleunigung erhalten Sie etwa 10-25% Leistungssteigerung, aber einige " +"Formen dynamischer Daten (beispielsweise die Bildbetrachtungs-Zähler) werden nicht sofort " +"aktualisiert. Alle in Blöcken dargestellte Inhalte (wie der Zufallsbild-Block, die " +"Seitenleisten-Block, etc.) werden jedoch immer aktualisert." + +msgid "Full Acceleration" +msgstr "Vollständige Beschleunigung" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Bei voller Beschleunigung erhalten Sie etwa 90% Leistungssteigerung, es werden jedoch keine " +"dynamischen Daten (z.B. Zufallsbild-Block, Seitenleisten-Blocks, Elementanzahl im " +"Einkaufswagen, Bildbetrachtungszähler, etc.) aktualisiert, bis die Vorhaltezeit der " +"zwischengespeicherten Webseite abläuft." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Sie können zusätzlich festlegen, wie lange die zwischengespeicherten Seite vorgehalten " +"werden. Eine längere Vorhaltezeit wird die Systemlast auf Ihrem Server reduzieren, aber " +"gleichzeitig auch die Zeitspanne verlängern, bis die Nutzer Veränderungen sehen können. " +"Kürzere Vorhaltezeiten bedeuten, dass Benutzer aktuellere Daten sehen, wodurch jedoch Ihr " +"Server stärker beastet wird." + +msgid "Here are some standard acceleration profiles:" +msgstr "Hier sehen Sie einige vorgefertigte Beschleunigungsprofile:" + +msgid "Medium acceleration" +msgstr "Mittlere Beschleunigung" + +msgid "High acceleration" +msgstr "Starke Beschleunigung" + +msgid "Guest Users" +msgstr "Gäste" + +msgid "Expires after:" +msgstr "Verfällt nach:" + +msgid "Clear Saved Pages" +msgstr "Zwischengespeicherte Webseiten löschen" + +msgid "Status: Inactive" +msgstr "Status: Inaktiv" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ deaktiviert" + +msgid "Status: Active" +msgstr "Status: Aktiv" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ aktiviert" + +msgid "Status: Not Installed" +msgstr "Status: nicht installiert" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ deinstalliert" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Status: Aktualisierung nötig (inaktiv)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Status: Inkompatibles Plugin (inaktiv)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Status: Inaktiv (Konfiguration Erforderlich)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ benötigt eine Konfiguration" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ gelöscht" + +msgid "Warning!" +msgstr "Warnung!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Möchten Sie das Modul __PLUGIN__ wirklich deinstallieren?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Dabei werden gleichzeitig alle Berechtigungen und jegliche Daten gelöscht, die von diesem " +"Modul erstellt wurden." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Dieses Plugin wird deinstalliert werden. Dessen Dateien werden aber nicht gelöscht, damit " +"man es später wieder installieren kann." + +msgid "Yes" +msgstr "Ja" + +msgid "No" +msgstr "Nein" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Möchten Sie das Modul __PLUGIN__ wirklich entfernen?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Dieses Plugin wird deinstalliert und dessen Dateien werden gelöscht." + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "deaktiviert(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "Aktuell (__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "Nicht installiert (__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "Aktualisierung nötig (__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "Inkompatible (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "__PLUGIN__ konnte nicht komplett gelöscht werden" + +msgid "Gallery Plugins" +msgstr "Gallery Module" + +msgid "Get More Plugins" +msgstr "Weitere Gallery Module" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Mö Sie mehr Features? Neue Plugins sind bloss ein Klick entfernt. Klicken Sie einfach auf " +"den %s link." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Gallerys Funktionen sind als separate Plugins erhältlich. Sie können ein Plugin " +"herunterladen und installieren, um die entsprechende Funktion hinzuzufügen. Außerdem können " +"Sie ein aktives Plugin deaktivieren, wenn Sie die Funktion nicht benötigen. Um eine Funktion " +"zu nutzen, müssen Sie das entsprechende Pugin installieren, konfigurieren (falls nötig) und " +"anschließend aktivieren. Später können Sie es nach Belieben wieder deaktivieren." + +msgid "Plugin Name" +msgstr "Modulname" + +msgid "Installed" +msgstr "Bereits installiert" + +msgid "Version" +msgstr "Version" + +msgid "Actions" +msgstr "Aktionen" + +msgid "help" +msgstr "Hilfe" + +#, c-format +msgid "Screenshot for %s" +msgstr "Screenshot für %s" + +msgid "Incompatible plugin!" +msgstr "Inkompatible Erweiterung!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Folgende Kern-API benötigt: %s (verfügbar: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Folgendes Erweiterungen-API wird benötigt: %s (Verfügbar: %s)" + +msgid "configure" +msgstr "konfigurieren" + +msgid "up to date" +msgstr "Aktuell" + +msgid "upgrade required" +msgstr "Aktualisierung erforderlich" + +msgid "not installed" +msgstr "nicht installiert" + +msgid "incompatible" +msgstr "Inkompatibel" + +msgid "Repository" +msgstr "Erweiterungen" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Bitte vergewissern Sie sich, dass Sie über eine bestehende Internet Verbindung verfügen oder " +"versuchen Sie es später noch einmal." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Der Status des Plugins %s konnte nicht gelesen werden." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Ihre lokale Kopie des Erweiterungen-Katalogs war korrupt und wurde repariert. Bitte laden " +"Sie die Liste der Plugins erneut herunter." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Das %s Plugin konnte nicht heruntergeladen werden, da die folgenden Dateien/Verzeichnisse " +"nicht verändert werden können:" + +msgid "The repository index has been successfully updated." +msgstr "Der Index des Erweiterungen-Katalogs wurde erfolgreich aktualisiert." + +msgid "All plugins are already up-to-date." +msgstr "Alle Erweiterungen sind schon auf dem neusten Stand." + +#, c-format +msgid "%s plugin updated." +msgstr "%s Plugin aktualisiert." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d Sprachpaket gelöscht." +msgstr[1] "%d Sprachpakete gelöscht." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"Zu keinem Zeitpunkt werden persönlichen Informationen über Sie oder Ihre Gallery " +"Installation je zum Gallery Server gesendet." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Sie können schnell und einfach neue Plugins herunterladen und installieren. Falls Sie ein " +"Plugin nicht mögen, können Sie es löschen. Es gibt mehrere verschiedene Plugin Repositories " +"und Sie können entscheiden welches Sie nutzen wollen (und Sie können sie auch alle " +"gleichzeitig benutzen). Nachdem Sie die Wahl getroffen haben, können Sie periodisch per " +"Mausklick die neuste Plugin-Liste herunterladen, um von aktualisierten oder neuen Plugins zu " +"profitieren. %s Mit langsameren Server-Verbindungen kann der Prozess ein, zwei Minuten " +"dauern." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Offiziell veröffentlichte Plugins des Gallery Projekts (%sempfohlen%s)" + +#, c-format +msgid "last updated on %s" +msgstr "zuletzt aktualisiert am %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Experimentelle Plugins des Gallery Projekts (%scoole neue Funktionen, die aber auch etwas " +"fehlerhaft sein können%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Plugins von der Gallery Community (%sauf eigene Gefahr!%s)" + +msgid "Repository Error" +msgstr "Repository-Fehler" + +msgid "You must select at least one repository." +msgstr "Sie müssen mindestens ein Repository auswählen." + +msgid "Ok" +msgstr "OK" + +msgid "Configure your Gallery" +msgstr "Konfigurieren Sie Ihre Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Bevor Sie weiterfahren können, müssen Sie einige Berechtigungen verändern, damit Gallery " +"Plugins für Sie installieren kann. Es ist ganz einfach, führen Sie einfach den folgenden " +"Befehl in der Kommandozeile oder via FTP-Programm durch:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Falls das Ändern der Berechtigungen Probleme bereitet, sollten Sie Ihren Systemadministrator " +"kontaktieren. Wenn Sie die Berechtigungen korrigiert haben, können Sie auf den Fortfahren " +"Knopf klicken, um die Berechtigungen erneut zu überprüfen und weiterzufahren." + +msgid "Continue" +msgstr "Fortfahren..." + +msgid "Download Plugin List" +msgstr "Plugin-Liste herunterladen" + +msgid "Show Repository List" +msgstr "Die Repository-Liste anzeigen" + +msgid "Upgrade Gallery" +msgstr "Gallery aktualisieren" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Eine neue Gallery-Version ist verfügbar, diese kann jedoch nicht über diese Oberfläche " +"eingespielt werden. Eine Aktualisierung könnte dazu führen, dass einige Ihrer laufenden " +"Erweiterungen nicht mehr funktionieren, während andere die von den Funktionen der neuen " +"Version abhängen verfügbar werden. Hier sind die empfohlenen Schritte für eine " +"Aktualisierung:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "Gallery-Kern %sherunterladen%s" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Lesen Sie die %sAktualisierungs-Anleitung%s und führen Sie die Aktualisierung durch" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Inkompatible Erweiterungen werden mit einem Ausrufezeichen markiert." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Eine neue Version des Kernmoduls ist verfügbar. Einige Erweiterungen können inkompatibel mit " +"dem installierten Kernmodul sein, welche hier nicht aufgeführt werden. Sie können eine %" +"svollständige Liste%s an Erweiterungen abrufen, einschließlich der inkompatiblen, welche mit " +"einem roten Symbol gekennzeichnet sind." + +msgid "upgrade available" +msgstr "Update verfügbar" + +msgid "locked" +msgstr "gesperrt" + +msgid "Theme Name" +msgstr "Motivname" + +msgid "Module Name" +msgstr "Modulname" + +msgid "Latest" +msgstr "Neuste" + +msgid "Locked Plugin" +msgstr "Gesperrtes Plugin" + +msgid "Incompatible Plugin" +msgstr "Inkompatible Erweiterung" + +msgid "Upgrade Available" +msgstr "Update verfügbar" + +msgid "download" +msgstr "downloaden" + +msgid "modify" +msgstr "verändern" + +msgid "Upgrade All Plugins" +msgstr "Alle Erweiterungen aktualisieren" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery kann automatisch alle Ihre Motive und Module auf die letzte verfügbare Version " +"aktualisieren. Dabei werden keine neuen Erweiterungen heruntergeladen." + +msgid "Upgrade All" +msgstr "Alle aktualisieren" + +#, c-format +msgid "Download %s" +msgstr "%s herunterladen" + +msgid "No packages have been selected." +msgstr "Keine Pakete wurden ausgewählt." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Laden Sie ein Paket herunter um dieses Plugin benutzen zu können. Sie können das Plugin " +"aktualisieren indem Sie eine neuere Version des Pakets herunterladen. Sprachpakete sind " +"optional. Sie können diejenigen auswählen, welche in Ihrer Gallery Installation verwendet " +"werden sollen." + +msgid "Base Packages" +msgstr "Basis-Pakete" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: Version %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" +"%s: Version %s (build %s) %szu einer älteren Version kann nicht zurückgegangen werden!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sDerzeit installiert%s: Version %s (build %s)" + +msgid "Language Packages" +msgstr "Sprachpakete" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%salle anwählen%s%skeine anwählen%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s Version %s (Aktualisiere von %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s Version %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s Version %s (%sNeuere Version %s ist bereits installiert%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s Version %s (derzeit installiert)" + +msgid "No compatible language packages available" +msgstr "Keine kompatiblen Sprachpakete vorhanden" + +msgid "You must select a base package before choosing language packs." +msgstr "Sie müssen ein Basispaket auswählen bevor Sie Sprachpakete auswählen können." + +msgid "Update" +msgstr "Aktualisierung" + +msgid "Gallery Themes" +msgstr "Gallery-Motive" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Das Motiv %s wurde erfolgreich aktiviert" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Das Motiv %s wurde erfolgreich deaktiviert" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Das Motiv %s wurde erfolgreich installiert." + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Das Motiv %s wurde erfolgreich deinstalliert." + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Das Motiv %s wurde erfolgreich aktualisiert." + +msgid "Successfully saved default album settings" +msgstr "Die Einstellungen wurden erfolgreich gespeichert." + +msgid "Restored theme settings" +msgstr "Motiv-Einstellungen wiederhergestellt" + +msgid "Defaults" +msgstr "Voreinstellungen" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Dies sind die Voreinstellungen der Album-Anzeige Ihrer Gallery. Sie können für jedes Album " +"überschrieben werden." + +msgid "Default sort order" +msgstr "Standard-Sortierreihenfolge" + +msgid "with" +msgstr "mit" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Neue Alben" + +msgid "Save Defaults" +msgstr "Speichere Voreinstellungen" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s Motiv-Einstellungen" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Dies sind die globalen Motiv-Einstellungen. Sie können für jedes Album überschrieben werden." + +msgid "Available" +msgstr "Verfügbar" + +msgid "Choose a block" +msgstr "Wählen Sie einen Block" + +msgid "Selected" +msgstr "Ausgewählt" + +msgid "Remove" +msgstr "Entfernen" + +msgid "Move Up" +msgstr "nach oben" + +msgid "Move Down" +msgstr "nach unten" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Value" +msgstr "Wert" + +msgid "There are no settings for this theme" +msgstr "Es sind keine Einstellungen für dieses Motiv vorhanden." + +msgid "Save Theme Settings" +msgstr "Speichere Motiv-Einstellungen" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Die unten aufgeführten Werkzeuge haben Gemeinsamkeiten in der Unterstützung von Dateitypen. " +"Legen sie die Reihenfolge fest, in der die Werkzeuge benutzt werden sollen." + +msgid "Toolkit" +msgstr "Werkzeug" + +msgid "Order" +msgstr "Reihenfolge" + +msgid "up" +msgstr "hoch" + +msgid "down" +msgstr "runter" + +msgid "User Management" +msgstr "Benutzerverwaltung" + +#, c-format +msgid "Removed user '%s'" +msgstr "Benutzer '%s' entfernt" + +#, c-format +msgid "Created user '%s'" +msgstr "Benutzer '%s' erstellt" + +#, c-format +msgid "Modified user '%s'" +msgstr "Benutzer '%s' geändert" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Es existiert %d Benutzer im System." +msgstr[1] "Es existieren insgesamt %d Benutzer im System." + +msgid "Edit User" +msgstr "Benutzer ändern" + +msgid "You cannot delete yourself!" +msgstr "Sie können Sich nicht selbst löschen!" + +msgid "You cannot delete the special guest user." +msgstr "Sie können den speziellen Benutzer Gast nicht löschen." + +msgid "Edit User (by list)" +msgstr "Benutzer (siehe Liste) ändern" + +msgid "Locked" +msgstr "Gesperrt" + +msgid "Failed Logins" +msgstr "Fehlgeschlagen" + +msgid "Thumbnails" +msgstr "Vorschaubilder" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery kann Vorschaubilder beim Hochladen oder bei der ersten Anzeige erstellen. Bei beiden " +"Methoden wird das Vorschaubild nur einmal erstellt und gespeichert, aber wenn Sie die " +"Vorschaubilder beim Hochladen erstellen lassen, werden Alben beim ersten Aufrufen schneller " +"angezeigt werden." + +msgid "Create thumbnails now" +msgstr "Vorschaubilder jetzt erstellen" + +msgid "This is a test email from Gallery2" +msgstr "Dies ist eine Test E-Mail von Gallery2" + +# errorBody.tpl +msgid "Edit Conflict!" +msgstr "Bearbeitungs-Konflikt!" + +msgid "Security Violation" +msgstr "Sicherheitsverstoß" + +msgid "Database Error" +msgstr "Datenbankfehler" + +msgid "Platform Error" +msgstr "Plattform-Fehler" + +msgid "Authentication Failure" +msgstr "Authorisierungs-Fehler" + +msgid "Error" +msgstr "Fehler" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Ihre Änderungen konnten nicht übernommen werden, weil jemand anderes gleichzeitig eine " +"Änderung an diesem Element vorgenommen hat. Benutzen Sie den 'Zurück'-Knopf ihres Web-" +"Browsers, um auf die vorherige Seite zurückzukehren, dann laden Sie die Seite erneut " +"(reload) und versuchen Sie, Ihre Änderung nochmals durchzuführen." + +msgid "Go back and try again" +msgstr "Zurück und neu versuchen" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Falls dieses Problem wiederholt auftriet, geschieht dies möglicherweise weil Ihr " +"Zwischenspeicher korrumpiert wurde. Administratoren können diesen Zwischenspeicher leeren." + +msgid "Clear the cache" +msgstr "Zwischenspeicher löschen" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Sie können aber auch zur Gallery-Startseite zurückkehren und erneut beginnen." + +msgid "The action you attempted is not permitted." +msgstr "Die von Ihnen angestrebte Aktion ist Ihnen nicht erlaubt." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Ihre Änderungen konnten nicht übernommen werden, weil Sitzungsdaten verloren gingen. Bitte " +"versuchen Sie es erneut. Falls es wiederholt nicht funktioniert, melden Sie sich bitte ab " +"und nochmals neu an." + +msgid "An error has occurred while interacting with the database." +msgstr "Es ist ein Fehler beim Zugriff auf die Datenbank aufgetreten." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"Die spezifische Datenbankfehler werden nur angezeigt, wenn der Gallery Debug Modus in " +"'config.php' aktiviert wurde. Bitte aktivieren Sie die \"buffered\" Debug-Ausgabe und " +"versuchen Sie die Aktion erneut, bevor sie um Unterstützung hinsichtlich dieses Fehlers " +"bitten. Die Fehlerdetails können dann relativ nah am Ende der langen Debug-Ausgabe gefunden " +"werden." + +msgid "An error has occurred while interacting with the platform." +msgstr "Es ist ein Fehler bei der Kommunikation mit der Platform aufgetreten." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Die genaue Art des Plattform-Fehlers ist unbekannt. Ein verbreiteter Grund sind ungenügende " +"Dateisystem-Berechtigungen. Dies kann passieren, wenn durch Sie oder Ihren Webhoster eine " +"Änderung am Dateisystem vorgenommen wurde, z.B. durch das Einspielen von Daten aus einer " +"Backup." + +msgid "Item not found." +msgstr "Element nicht gefunden." + +msgid "An error has occurred." +msgstr "Es ist ein Fehler aufgetreten." + +msgid "Back to the Gallery" +msgstr "Zurück zur Gallery" + +msgid "Error Detail" +msgstr "Fehlerdetails" + +msgid "System Information" +msgstr "Systeminformationen" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Sie haben kein grafisches Werkzeug aktiviert, das mit JPEG umgehen kann. Wenn Sie Bilder " +"hinzufügen, werden Sie keine Vorschaubilder haben." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" +"Gehen sie auf die Module-Seite um ein grafisches Werkzeug zu aktivieren." + +msgid "Add Sub-Album" +msgstr "Unteralbum hinzufügen" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Der tatsächliche Name Ihres Albums auf der Festplatte. Er muss eindeutig sein. Sie können " +"hier nur alphanumerische Zeichen, den Unterstrich (_) und Bindestrich (-) verwenden. Sie " +"können den Namen auch nachträglich noch ändern." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Ihr Name enthält ungültige Zeichen. Bitte geben Sie einen anderen ein." + +msgid "You must enter a name for this album." +msgstr "Sie müssen einen Namen für dieses Album eingeben." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Der eingegebene Name wird schon verwendet. Bitte geben Sie einen neuen ein." + +msgid "This is the album title." +msgstr "Dies ist der Album-Titel." + +msgid "This is the album summary." +msgstr "Dies ist die Albumzusammenfassung." + +msgid "Keywords are not visible, but are searchable." +msgstr "Schlüsselwörter sind nicht sichtbar, aber es kann nach ihnen gesucht werden." + +msgid "This is the long description of the album." +msgstr "Eine ausführliche Beschreibung für dieses Album." + +msgid "Create" +msgstr "Erstellen" + +msgid "Upload Complete" +msgstr "Hochladen beendet" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Erfolgreich %d Datei hinzugefügt." +msgstr[1] "Erfolgreich %d Dateien hinzugefügt." + +msgid "No files added." +msgstr "Es wurden keine Dateien hinzugefügt." + +#, c-format +msgid "Added %s" +msgstr "%s hinzugefügt" + +#, c-format +msgid "Failed to add %s" +msgstr "Hinzufügen von %s fehlgeschlagen" + +msgid "Add more files" +msgstr "Weitere Dateien hinzufügen" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Ihr Webserver wurde so eingerichtet, dass Sie nichts über Ihren Browser hochladen können. " +"Bitte sprechen Sie mit dem Administrator Ihres Webservers." + +msgid "Upload files directly from your computer." +msgstr "Laden Sie eine Datei direkt von Ihrem Computer hoch." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" +"Geben Sie den vollständigen Pfad zur Datei und optional eine Beschriftung in den folgenden " +"Feldern an." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Hinweis: Sie können maximal %s Elemente auf einmal hochladen. Wenn Sie mehr Elemente " +"hochladen möchten, müssen Sie dies nacheinander tun, ein anderes Format beim Hochladen (z.B. " +"JPEG) verwenden, oder Ihren Administrator bitten, mehr Elemente zu erlauben." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Hinweis: Sie können maximal %s auf einmal hochladen. Keine einzelne Datei darf größer " +"als %s sein. Wenn Sie mehr hochladen möchten, müssen Sie die Dateien nacheinander hochladen, " +"ein anderes Hochladeformat (z.B. JPEG) wählen oder Ihren Systemadministrator bitten, das " +"Hochladen von größeren Dateien zu erlauben." + +msgid "More Upload Boxes..." +msgstr "Mehr Hochlade-Felder..." + +msgid "Set item titles from:" +msgstr "Elementnamen erstellen aus:" + +msgid "Assign caption to:" +msgstr "Beschriftung zuweisen für:" + +msgid "No Thumbnail" +msgstr "Kein Vorschaubild" + +msgid "Delete Items" +msgstr "Elemente löschen" + +msgid "No items were selected for deletion" +msgstr "Es waren keine Elemente zum Löschen markiert" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Erfolgreich %d Element gelöscht." +msgstr[1] "Erfolgreich %d Elemente gelöscht." + +msgid "This album contains no items to delete" +msgstr "Dieses Album enthält keine löschbaren Elemente." + +msgid "Choose the items you want to delete" +msgstr "Wählen Sie die Elemente, die Sie löschen möchten" + +#, c-format +msgid "(page %d of %d)" +msgstr "(Seite %d von %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Die hier ausgewählten Elemente bleiben während der Navigation auf den Seiten weiterhin " +"ausgewählt." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Ein Element wurde auf den anderen Seiten ausgewählt." +msgstr[1] "%d Elemente wurden auf den anderen Seiten ausgewählt." + +msgid "(data)" +msgstr "(Daten)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(Album enthält %d Element)" +msgstr[1] "(Album enthält %d Elemente)" + +msgid "(empty album)" +msgstr "(leeres Album)" + +msgid "Check All" +msgstr "Alles auswählen" + +msgid "Check None" +msgstr "Nichts auswählen" + +msgid "Invert" +msgstr "Invertiere" + +msgid "Previous Page" +msgstr "Vorherige Seite" + +msgid "Next Page" +msgstr "Nächste Seite" + +msgid "Deletion Complete" +msgstr "Löschvorgang abgeschlossen" + +msgid "Item successfully deleted" +msgstr "Element erfolgreich gelöscht" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Sind Sie sicher, dass Sie %s löschen möchten?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Es enthält %d Element." +msgstr[1] "Es enthält %d Elemente." + +msgid "There is no undo!" +msgstr "Dieser Vorgang kann nicht rückgängig gemacht werden!" + +msgid "There was a problem processing your request." +msgstr "Es gab ein Problem bei der Bearbeitung Ihrer Anfrage" + +msgid "Sort order" +msgstr "Sortierreihenfolge" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Dies setzt die Standardsortierung für neue Alben. Die Änderung wird auf alle existierenden " +"und neuen Elemente angewendet." + +msgid "Apply to all subalbums" +msgstr "Auf Unteralben anwenden" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" +" Jedes Element benötigt ein Vorschaubild. Geben Sie hier die Standardgröße in Pixeln an." + +msgid "You must enter a number (greater than zero)" +msgstr "Sie müssen eine Zahl eingeben (größer als Null)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Diese Vorschaubildgröße in allen Unteralben verwenden" + +msgid "Resized Images" +msgstr "Skalierte Bilder" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Jedes Element eines Albums kann verschiedene Größen haben. Geben Sie hier die Standardgrößen " +"an." + +msgid "Active" +msgstr "Aktiv" + +msgid "Target Size (pixels)" +msgstr "Zielgröße (in Pixel)" + +msgid "You must enter a valid size" +msgstr "Sie müssen eine gültige Größe eingeben" + +msgid "Use these target sizes in all subalbums" +msgstr "Diese Zielgröße für Photos in allen Unteralben verwenden" + +msgid "Apply settings to existing items" +msgstr "Einstellungen auf existierende Elemente anwenden" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Die Einstellungen für die Vorschaubilder und skalierte Bilder sind für alle neuen Elemente. " +"Um die Einstellungen auf alle existierenden Elemente in Ihrem Album anzuwenden, müssen Sie " +"die entsprechenden Kästchen ankreuzen. Falls Sie Unteralben miteinbeziehen, werden jeweils " +"die Einstellungen des jeweiligen Unterlalbums für dessen Vorschaubilder/skalierte Bilder " +"verwendet. Und diese Einstellungen müssen nicht zwangsweise dieselben sein, wie die obigen " +"Einstellungen. Die Bilder jetzt zu erzeugen macht die Operation länger, aber spart später " +"Zeit wenn ein Bild zum ersten mal angeschaut wird." + +msgid "Apply album setting to thumbnails" +msgstr "Wende Album-Einstellungen auf Vorschaubilder an" + +msgid "... and for all subalbums" +msgstr "... und auf Unteralben" + +msgid "Build thumbnails too" +msgstr "Erstelle auch die Vorschaubilder" + +msgid "Apply album setting to resized images" +msgstr "Album Einstellungen auf skalierte Bilder anwenden" + +msgid "Build resizes too" +msgstr "Erstelle auch skalierte Bilder" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Damit Gallery diese Animation korrekt anzeigen kann, muss sie die Breite und Höhe der " +"Animation kennen. Wenn Sie ein grafisches Werkzeug installiert haben, das mit Animationen " +"umgehen kann, dann werden diese Werte bereits richtig eingestellt sein. Ansonsten werden sie " +"wahrscheinlich auf 0 stehen. Wenn Sie hier falsche Werte angeben, dann wird Ihre Animation " +"im Web-Browser verzerrt dargestellt. Die Werte hier ändern jedoch nicht die Animation " +"selbst. Sie können also bedenkenlos experimentieren." + +msgid "Width" +msgstr "Breite" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Sie müssen einen Wert größer/gleich 0 eingeben" + +msgid "Height" +msgstr "Höhe" + +msgid "There were errors saving some items" +msgstr "Es sind Fehler beim Speichern einiger Elemente aufgetreten" + +msgid "There were errors saving all items" +msgstr "Es sind Fehler beim Speichern aller Elemente aufgetreten" + +msgid "Successfully saved all items" +msgstr "Alle Elemente erfolgreich gespeichert." + +msgid "This album contains no items" +msgstr "Dieses Album enthält keine Elemente." + +# was: Die Einstellungen wurden erfolgreich gespeichert. +# But the msgid is too generic. +msgid "Saved successfully." +msgstr "Erfolgreich gespeichert." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Dieses Element wurde von jemand anderem zur gleichen Zeit bearbeitet. Ihre Änderungen gingen " +"verloren." + +msgid "You do not have permissions to modify this item." +msgstr "Sie dürfen in diesem Album keine Elemente bearbeiten." + +msgid "Save and Done" +msgstr "Speichern und Fertig" + +# %s is number of items per page +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Speichern und vorherige %s editieren" + +# %s is number of items per page +#, c-format +msgid "Save and Edit Next %s" +msgstr "Speichern und nächste %s bearbeiten" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Der tatsächliche Name dieses Elements auf der Festplatte. Er muss eindeutig in diesem Album " +"sein. Sie können hier nur alphanumerische Zeichen, den Unterstrich (_) und Bindestrich (-) " +"verwenden. Sie können den Namen auch nachträglich noch ändern." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Ihre Name enthält ungültige Zeichen. Bitte wählen Sie einen anderen." + +msgid "You must enter a name for this item." +msgstr "Sie müssen einen Namen für dieses Element eingeben." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Der eingegebene Name wird schon verwendet. Bitte wählen Sie einen anderen." + +msgid "The title of this item." +msgstr "Titel für dieses Element." + +msgid "The root album must have a title." +msgstr "Das Wurzelalbum muss einen Titel haben." + +msgid "The summary of this item." +msgstr "Zusammenfassung für dieses Element." + +msgid "This is the long description of the item." +msgstr "Eine ausführliche Beschreibung dieses Elements." + +# %s is localized name of item at hand +#, c-format +msgid "%s Date and Time" +msgstr "%s Datum und Uhrzeit" + +msgid "Set the date and time when this image was captured." +msgstr "Datum und Zeit einstellen, wann dies Bild aufgenommen wurde." + +msgid "Set the date and time to be displayed for this item." +msgstr "Datum und Zeit, die für dieses Element angezeigt werden soll." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Datum und Zeit, die für %s angezeigt werden soll." + +msgid "Date:" +msgstr "Datum:" + +msgid "Time:" +msgstr "Zeit:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Das original Aufnahmedatum und Aufnahmezeit aus den Dateiinformationen (z.B. EXIF-Tags):" + +msgid "You must enter a valid date and time" +msgstr "Sie müssen ein gültiges Datum und Zeit eingeben." + +msgid "Thumbnail" +msgstr "Vorschaubild" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Geben Sie die Größe der Vorschaubilder an. Die längste Seite eines Vorschaubilds wird diesen " +"Wert nicht überschreiten. Lassen Sie dies Feld leer, wenn Sie keine Vorschaubilder benötigen." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Es ist kein grafisches Werkzeug aktiviert, das diesen Elementtyp unterstützt. Daher kann ein " +"Vorschaubild weder erzeugt noch verändert werden." + +msgid "Unable to create a thumbnail for this item" +msgstr "Es war nicht möglich ein Vorschaubild für dieses Element zu erzeugen" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Damit Gallery diesen Film korrekt anzeigen kann, muss sie die Breite und Höhe des Films " +"kennen. Wenn Sie ein grafisches Werkzeug installiert haben, das mit Filmen umgehen kann, " +"dann werden diese Werte bereits richtig eingestellt sein. Ansonsten werden sie " +"wahrscheinlich auf 0 stehen. Wenn Sie hier falsche Werte angeben, dann kann Ihr Film im Web-" +"Browser verzerrt dargestellt werden. Die Werte hier ändern jedoch nicht den Film " +"selbst. Sie können also bedenkenlos experimentieren." + +msgid "Resized Photos" +msgstr "Skalierte Photos" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "Diese Angaben sind für alternative Versionen Ihres Bildes die Sie anbieten möchten." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Es ist kein grafisches Werkzeug aktiviert, das diesen Phototyp unterstützt, daher kann ein " +"Zwischenbild weder erzeugt noch verändert werden." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Sie können auswählen, welchen Teil Ihres Photo Sie als Vorschaubild möchten. Dies hat keinen " +"Einfluss auf Ihre Original- und Zwischenbilder." + +msgid "Aspect Ratio: " +msgstr "Seitenverhältnis:" + +msgid "Crop" +msgstr "Zuschneiden" + +msgid "Undo Changes" +msgstr "Änderungen rückgängig machen" + +msgid "Reset to default" +msgstr "Standard wiederherstellen" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Es ist kein grafisches Werkzeug aktiviert, das diesen Phototyp unterstützt, daher kann das " +"Vorschaubild nicht zugeschnitten werden." + +msgid "Rotate" +msgstr "Drehen" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Sie können ein Bild nur in 90°-Schritten rotieren" + +msgid "CC 90°" +msgstr "Gegen den Uhrzeigersinn 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "Im Uhrzeigersinn 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Es ist kein grafisches Werkzeug aktiviert, das diesen Phototyp unterstützt, daher kann es " +"nicht gedreht werden." + +msgid "Scale" +msgstr "Skalieren" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Verkleinere oder vergrößere das Originalbild. Wenn Gallery ein Bild skaliert, wird das " +"Seitenverhältnis (Höhe zu Breite) beibehalten, um Verzerrungen zu vermeiden. Ihr Photo wird " +"so skaliert, dass die längere Seite dem von Ihnen eingegebenen Wert entspricht." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Es ist kein grafisches Werkzeug aktiviert, das diesen Phototyp unterstützt, daher kann es " +"nicht skaliert werden." + +msgid "You must enter a size" +msgstr "Sie müssen eine Größe eingeben" + +msgid "Preserve Original" +msgstr "Original beibehalten" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery verändert Ihr Originalbild beim Rotieren oder Skalieren nicht. Stattdessen wird ein " +"Duplikat angelegt und mit der Kopie weitergearbeitet. Dies verbraucht etwas zusätzlichen " +"Speicherplatz, aber ihre Originale bleiben erhalten. Wenn Sie diese Option deaktivieren, " +"werden alle Operationen auf das Originalbild angewendet." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" +"Dies ist eine Verknüpfung auf ein anderes Photo, daher können Sie das Original nicht " +"verändern." + +msgid "There are links to this photo, so you cannot change the original" +msgstr "" +"Es existieren Verknüpfungen auf dieses Photo, Sie können deswegen das Original nicht " +"verändern." + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Es ist kein Werkzeug vorhanden um das Original zu verändern. Operationen können nur auf " +"Kopien angewendet werden" + +msgid "Preserve Original Photo" +msgstr "Originalbild beibehalten" + +msgid "Modified Photo" +msgstr "Geändertes Bild" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Sie benutzen eine Kopie der Originaldatei, die skaliert oder rotiert wurde. Die " +"Originaldatei ist immer noch verfügbar, wird aber nicht mehr verwendet. Jede Änderung, die " +"Sie vornehmen, wird auf diese Kopie angewandt." + +msgid "Restore original" +msgstr "Original wiederherstellen" + +msgid "Choose a theme" +msgstr "Wählen Sie ein Motiv" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Motive bestimmen das Aussehen und Verhalten des Albums. Sie können für jedes Album ein " +"anderes Motiv auswählen. Falls Sie kein Motiv auswählen, wird das %s als voreingestelles " +"Motiv verwendet." + +msgid "Use this theme in all subalbums" +msgstr "Diesen Theme in allen Unteralben benutzen" + +msgid "Choose Theme" +msgstr "Wählen Sie ein Motiv" + +#, c-format +msgid "Configure the %s theme" +msgstr "Konfiguriere das %s Motiv" + +msgid "These settings only apply to the theme for this album." +msgstr "Diese Einstellungen werden sich nur auf das Motiv dieses Albums auswirken." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Diese Einstellung in allen Unteralben verwenden die das %s Motiv benutzen" + +msgid "Album Highlight" +msgstr "Titelbild des Albums" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" +"Sie können dieses Element zum Vorschaubild seines direkten oder jedes anderen übergeordneten " +"Albums machen." + +msgid "Highlight for:" +msgstr "Titelbild für:" + +msgid "Highlight" +msgstr "Titelbild" + +msgid "Move an Item" +msgstr "Ein Element verschieben" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Erfolgreich %d Element verschoben." +msgstr[1] "Erfolgreich %d Elemente verschoben." + +msgid "This album contains no items to move." +msgstr "Dieses Album enthält keine verschiebbaren Elemente." + +msgid "Source" +msgstr "Quelle" + +msgid "Choose the items you want to move" +msgstr "Wählen Sie die Elemente, die Sie verschieben möchten" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"Das ausgewählte Ziel erlaubt keine Unteralben, es wurden daher alle entsprechenden " +"Unteralben abgewählt." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Das ausgewählte Ziel erlaubt nur Unteralben, es wurde daher alle nicht-Alben abgewählt." + +msgid "You are not allowed to move this item away from here." +msgstr "Es ist Ihnen nicht erlaubt dieses Element von hier zu verschieben." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Es ist Ihnen nicht erlaubt, ein Album zum gewünschten Ziel zu verschieben." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Es ist Ihnen nicht erlaubt, ein Element zu dem gewünschten Ziel zu verschieben." + +msgid "You cannot move an album into its own subtree." +msgstr "Sie können ein Album nicht in eines seiner eigenen Unteralben verschieben." + +msgid "Destination" +msgstr "Ziel" + +msgid "Choose a new album for them" +msgstr "Wählen Sie ein neues Album" + +msgid "You don't have the permission to add items in this album" +msgstr "Es ist Ihnen nicht erlaubt diesem Album Elemente hinzuzufügen." + +msgid "No destination chosen" +msgstr "Kein Ziel ausgewählt" + +msgid "Move" +msgstr "Verschieben" + +msgid "Successfully moved" +msgstr "Erfolgreich verschoben" + +msgid "Choose a destination album" +msgstr "Wählen Sie ein Zielalbum" + +msgid "Permissions" +msgstr "Berechtigungen" + +msgid "Owner changed successfully" +msgstr "Besitzer wurde erfolgreich geändert." + +msgid "Group permission added successfully" +msgstr "Gruppenberechtigungen wurden erfolgreich hinzugefügt" + +msgid "User permission added successfully" +msgstr "Benutzerberechtigungen werden erfolgreich hinzugefügt" + +msgid "Group permission removed successfully" +msgstr "Gruppenberechtigungen wurden erfolgreich entfernt" + +msgid "User permission removed successfully" +msgstr "Benutzerberechtigungen wurden erfolgreich entfernt" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Jedes Element hat seine eigenen unabhängigen Berechtigungen. Das Ändern der Berechtigungen " +"eines übergeordneten Elements hat keine Auswirkungen auf dessen Unterelemente. So können Sie " +"den Zugang zu einem übergeordneten Element sperren und trotzdem vollen Zugang zu dessen " +"Unterelementen selbst erlauben und umgekehrt. Die beste Methode, dieses System zu nutzen, " +"ist es, Gruppen zu erstellen und diesen bestimmte Berechtigungen zuzuweisen. So kann man " +"einem Benutzer Rechte zuweisen, indem man ihn in die entsprechende Gruppe aufnimmt." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Dieses Element gehört dem Benutzer: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Dieses Element gehört dem Benutzer: %s (%s)" + +msgid "New owner" +msgstr "Neuer Besitzer" + +msgid "Change" +msgstr "Ändern" + +msgid "Apply new owner to sub-items" +msgstr "Neuen Besitzer für Unterelemente übernehmen" + +msgid "You must enter a user name" +msgstr "Sie müssen einen Benutzernamen eingeben" + +msgid "The user name you entered is invalid" +msgstr "Der eingegebene Benutzername ist nicht gültig" + +msgid "Apply changes" +msgstr "Änderungen übernehmen" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Dieses Element hat Unterelemente. Sie können die hier gemachten Änderungen entweder nur auf " +"dieses Element anwenden, oder sie können einstellen, dass sie sich auch auf alle seine " +"Unterelemente auswirken. Denken Sie daran, dass das Ändern der Berechtigungen für " +"Unterelemente ein Zusammenführen mit den bereits bestehenden Berechtigungen zur Folge hat. " +"Dies kann bei vielen Unterelementen sehr zeitaufwendig sein. Besser ist es, Berechtigungen " +"nur an Gruppen zu vergeben und dann Benutzer den Gruppen zuzuordnen. Änderungen werden " +"standardmäßig auch für die Unterelemente übernommen." + +msgid "Apply to sub-items" +msgstr "Für Unterelemente übernehmen" + +msgid "Group Permissions" +msgstr "Gruppenberechtigungen" + +msgid "Group name" +msgstr "Gruppenname" + +msgid "Permission" +msgstr "Berechtigung" + +msgid "New Group Permission" +msgstr "Neue Gruppenberechtigungen" + +msgid "Add Permission" +msgstr "Berechtigung hinzufügen" + +msgid "The permission you chose is invalid" +msgstr "Die ausgewählte Berechtigung ist nicht gültig" + +msgid "The group name you entered is invalid" +msgstr "Der eingegebe Gruppenamen ist nicht gültig" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Die Gruppe hat diese Berechtigung schon (Prüfen Sie die Unterberechtigungen)" + +msgid "User Permissions" +msgstr "Benutzerberechtigungen" + +msgid "User name" +msgstr "Benutzername" + +msgid "New User Permission" +msgstr "Neue Benutzerberechtigungen" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Der Benutzer hat diese Berechtigung schon (Prüfen Sie die Unterrechte)" + +msgid "Reorder Album" +msgstr "Album umordnen" + +msgid "Order saved successfully" +msgstr "Reihenfolge erfolgreich gespeichert." + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Für dieses Album wurde eine automatische Reihenfolge definiert, daher können Sie die Ordnung " +"nicht manuell verändern. Bitte entfernen Sie zuvor die automatische Sortierung." + +msgid "change" +msgstr "ändere" + +msgid "Change the order of the items in this album." +msgstr "Ändern Sie die Reihenfolge der Elemente in diesem Album." + +msgid "Move this item" +msgstr "Dieses Element verschieben" + +msgid "before" +msgstr "vor" + +msgid "after" +msgstr "nach" + +msgid "Reorder" +msgstr "Umordnen" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"Um diese Seite korrekt darzustellen muss JavaScript aktiviert sein. Es scheint jedoch, dass " +"JavaScript entweder deaktiviert ist oder nicht von Ihrem Webbrowser unterstützt wird. Bitte " +"aktivieren Sie JavaScript in den Einstellungen Ihres Webbrowsers. Laden Sie dann die Seite " +"erneut." + +msgid "Site is temporarily down for maintenance." +msgstr "Die Seite wird momentan gewartet und ist daher nicht verfügbar." + +msgid "Admin Login" +msgstr "Admininstrator-Login" + +msgid "Enter a URL" +msgstr "Bitten geben Sie eine URL ein" + +msgid "Enter some text describing the URL" +msgstr "Geben Sie eine Beschreibung zu dieser URL ein" + +msgid "Enter an image URL" +msgstr "Geben Sie eine URL zu einem Bild ein" + +# bold == Fett +msgid "B " +msgstr "F" + +# italic == kursiv +msgid "i " +msgstr "k" + +msgid "list" +msgstr "Liste" + +msgid "bullet" +msgstr "Aufzählungspunkt" + +msgid "url" +msgstr "Url" + +msgid "image" +msgstr "Bild" + +msgid "color" +msgstr "Farbe" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Sie können auch den Namen der Farbe verwenden, z.B.: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Konfigurationsfehler: Fehlendes Motiv" + +msgid "Missing Theme" +msgstr "Fehlendes Motiv" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Diese Seite wurde so konfiguriert, dass sie das %s-Motiv benutzt, welches aber entweder " +"deaktiviert, nicht installiert oder inkompatibel ist." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Dieses Album wurde so konfiguriert, dass es das %s-Motiv benutzt, welches aber entweder " +"deaktiviert, nicht installiert oder inkompatibel ist." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Um dieses Problem zu beheben können Sie entweder %sdieses Motiv installieren oder aktivieren%" +"s, oder ein anderes Standard-Motiv auswählen." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Um dieses Problem zu beheben können Sie sich entweder %sals Administrator anmelden%s und " +"dann %sdieses Motiv installieren oder aktivieren%s oder ein anderes Standard-Motiv auswählen." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Um dieses Problem zu beheben können Sie entweder %sein neues Motiv für dieses Album auswählen" +"%s oder %sdieses Motiv installieren oder aktivieren%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Um dieses Problem zu beheben können Sie entweder %sein neues Motiv für dieses Album auswählen" +"%s oder %ssich als Administrator anmelden%s und dann %sdieses Motiv installieren oder " +"aktivieren%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Um dieses Problem zu beheben können Sie sich entweder %sanmelden%s und dann %sein neues " +"Motiv für dieses Album auswählen%s oder %ssich als Administrator anmelden%s und dann %" +"sdieses Motiv installieren oder aktivieren%s." + +msgid "Admin Options" +msgstr "Admininstrations-Optionen" + +msgid "User Options" +msgstr "Benutzer-Optionen" + +msgid "Password changed successfully" +msgstr "Passwort erfolgreich geändert." + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Sie müssen Ihr aktuelles Passwort eingeben um sich zu authentifizieren. Danach müssen Sie " +"zweimal Ihr neues Passwort eingeben, um sicherzustellen, dass Sie sich nicht vertippen." + +msgid "Current Password" +msgstr "Aktuelles Passwort" + +msgid "You must enter your current password" +msgstr "Sie müssen Ihr aktuelles Passwort eingeben" + +msgid "Incorrect password" +msgstr "Falsches Passwort" + +msgid "New Password" +msgstr "Neues Passwort" + +msgid "You must enter a new password" +msgstr "Sie müssen ein neues Passwort eingeben" + +msgid "Verify New Password" +msgstr "Bestätigen Sie das neue Passwort" + +msgid "You must enter your new password again!" +msgstr "Sie müssen Ihr Passwort zweimal eingeben!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Diesem Benutzerkonto ist es nicht erlaubt Benutzereinstellungen zu verändern. Bitte " +"kontaktieren Sie Ihren Gallery Administrator." + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Ihr Administrator hat dieses Benutzerkonto eingerastet. Änderungen der " +"Benutzereinstellungen sind nicht möglich." + +msgid "Login to your account" +msgstr "Melden Sie sich an" + +msgid "Your password has been recovered, please login." +msgstr "Ihr Passwort wurde wiederhergestellt, bitte melden Sie sich an." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Auf Grund von zu vielen fehlgeschlagenen Anmeldungsversuchen wurde die Benutzer-Anmeldung " +"für diesen Benutzer vorübergehend deaktiviert. Bitte warten Sie bis der Zugang wieder " +"freigegeben wird oder nutzen Sie die Passwort wiederherstellen Seite, um " +"Ihr Konto sofort zu reaktivieren." + +msgid "Your login information is incorrect. Please try again." +msgstr "Ihre Anmeldedaten sind nicht korrekt. Bitte versuchen Sie es erneut." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Ein vergessenes/verlorenes Passwort können Sie auf der Seite Passwort " +"wiederherstellen neu erhalten." + +#, c-format +msgid "Welcome, %s!" +msgstr "Willkommen, %s!" + +msgid "Account settings saved successfully" +msgstr "Kontoeinstellungen wurden erfolgreich gespeichert." + +msgid "(required, password required for change)" +msgstr "(erforderlich, bei Änderung Passworteingabe notwendig)" + +msgid "(suggested, password required for change)" +msgstr "(empfohlen, bei Änderung Passworteingabe notwendig)" + +msgid "(required to change the e-mail address)" +msgstr "(für Änderung der E-Mail-Adresse notwendig)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "" +"Sie müssen Ihr momentan gültiges Passwort eingeben, um die E-Mail-Adresse ändern zu können)" + +msgid "Recover a lost or forgotten password" +msgstr "Verlorenes/vergessenes Passwort wiederherstellen" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Die Wiederherstellung Ihres Passworts erfordert, dass für Ihr Konto eine E-Mail-Adresse " +"konfiguriert wurde, deren Eingang Sie sehen können. An diese E-Mail-Adresse wird eine " +"Bestätigung mit einer URL geschickt, die Sie aufsuchen müssen, um ein neues Passwort für Ihr " +"Konto zu setzen. Um Missbrauch zu verhindern, können Passwort-Wiederherstellungs-" +"Anforderungen nur 1 mal alle 20 Minuten geschickt werden. Eine Anforderung ist sieben Tage " +"lang gültig. Wenn Sie diese Zeitspanne nicht ausnutzen, müssen Sie die Wiederhestellung " +"erneut anfordern." + +msgid "Your recovery request has been sent!" +msgstr "Ihre Anforderung zur Wiederherstellung wurde gesendet!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Wenn Ihr Konto keine E-Mail-Adresse enthält, können Sie natürlich keine E-Mail bekommen. " +"Bitte wenden Sie sich dann für Hilfe an Ihren System-Administrator." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Administratoren können die Seite %sPasswort-Notfallwiederherstellung%s verwenden, um den " +"Zugriff zum Administratorkonto wiederherzustellen, wenn Sie aufgrund von Serverproblemen " +"keine Wiederherstellungsemail empfangen können oder keine funktionierende E-Mail-Adresse " +"eingestellt ist." + +msgid "Recover" +msgstr "Wiederherstellen" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Um mit dem Zurücksetzen des Passworts fortfahren zu können, müssen wir sicherstellen, dass " +"Sie auch derjenige sind, für den Sie sich ausgeben. Der beste Weg um sicher zu sein ist, Sie " +"zu bitten eine kleine Änderung im Gallery-Verzeichnis vorzunehmen, die beweist, dass Sie die " +"entsprechenden Zugriffsrechte besitzen. Wir bitten Sie also, eine Textdatei namens %s im " +"Gallery-Verzeichnis zu erstellen. Diese Datei muss die folgenden, zufällig erzeugten Zeichen " +"enthalten:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Um Ihnen die Arbeit zu erleichtern, haben wir eine %skorrekte Version von login.txt%s für " +"Sie vorbereitet. Laden Sie diese herunter und kopieren Sie sie in Ihr Installations-" +"Verzeichnis. Damit sind Sie fertig." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" +"Sobald Sie die Datei hochgeladen haben, klicken Sie auf 'Aktualisieren' um fortzufahren." + +msgid "Emergency Administrator Password Reset" +msgstr "Notfall-Zurücksetzen des Administrator-Passworts" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Auf dieser Seite können Systemadministratoren sicher beliebige Kontopasswörter zurücksetzen." + +msgid "Authorization Confirmed" +msgstr "Authorisierung bestätigt" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Ihre Authorisierung wurde bestätigt. Bitte geben Sie Ihr neues Passwort unten ein. Nachdem " +"Sie Ihr neues Passwort gesetzt haben, werden Sie auf die Anmeldeseite geleitet." + +msgid "Recover Password for Username" +msgstr "Passwortwiederherstellung für den Benutzernamen" + +msgid "You must enter a username to recover the password for." +msgstr "Sie müssen für die Passwortwiederherstellung einen Benutzernamen eingeben." + +msgid "The username you entered does not exist." +msgstr "Der eingegebene Benutzername existiert nicht." + +msgid "Authorization Incorrect" +msgstr "Authorisierung fehlgeschlagen" + +msgid "Recovery Instructions" +msgstr "Wiederherstellungs-Anleitung" + +msgid "AuthFile Missing" +msgstr "Authorisierungsdatei fehlt" + +msgid "AuthFile Unreadable" +msgstr "Authorisierungsdatei nicht lesbar" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"Ihre %s Datei ist nicht lesbar. Bitte geben Sie Gallery Leseberechtigung für diese Datei." + +msgid "Refresh" +msgstr "Aktualisieren" + +msgid "This page will allow you to reset the password on your account." +msgstr "Auf dieser Seite können Sie das Passwort für Ihr Konto zurücksetzen." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Eine Anforderung für diese Kombination von Namen und Berechtigung liegt nicht vor. Bitte " +"fordern Sie eine neue Berechtigung auf der Seite Passwort zurücksetzen an." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Die Anforderung ist veraltet. Bitte fordern Sie eine neue auf der Seite Passwort zurücksetzen an." + +msgid "Authorization missing" +msgstr "Berechtigung fehlt" + +msgid "Username missing" +msgstr "Benutzername fehlt" + +msgid "Submit" +msgstr "Absenden" + +#, c-format +msgid "Hello %s," +msgstr "Hallo %s," + +# used in email, better use ASCII only (maybe ISO-8859-1 in europe) +# arg1 = baseUrl, arg2 = ip address, arg3 = date +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Sie erhalten diese E-Mail, weil eine Passwort-Wiederherstellung fuer %s von %s am %s " +"angefordert wurde." + +#, c-format +msgid "Your username is: %s" +msgstr "Ihr Benutzername lautet: %s" + +# used in email, better use ASCII only (maybe ISO-8859-1 in europe) +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Um das Zuruecksetzen Ihres Passworts abzuschliessen, folgen Sie bitte dem folgenden Verweis " +"und geben Sie die erforderlichen Informationen ein:" + +# used in email, better use ASCII only (maybe ISO-8859-1 in europe) +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" +"Wenn Sie diese E-Mail zur Wiederherstellung nicht ausdruecklich angefordet haben, dann " +"ignorieren Sie sie bitte." + +msgid "Thank you!" +msgstr "Danke!" + +msgid "guest" +msgstr "Gast" + +#, c-format +msgid "display mode: %s" +msgstr "Anzeigemodus: %s" + +#, c-format +msgid "Date: %s" +msgstr "Datum: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Besitzer: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Größe: %d Element" +msgstr[1] "Größe: %d Elemente" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(insgesamt %d Element)" +msgstr[1] "(insgesamt %d Elemente)" + +#, c-format +msgid "Views: %d" +msgstr "Betrachtungen: %d" + +msgid "« album actions »" +msgstr "« Album-Aktionen »" + +msgid "« item actions »" +msgstr "« Element-Aktionen »" + +msgid "Go" +msgstr "Los" + +msgid "Navigation" +msgstr "Navigation" + +msgid "next" +msgstr "nächste" + +msgid "last" +msgstr "letzte" + +#, c-format +msgid "Page %d of %d" +msgstr "Seite %d von %d" + +#, c-format +msgid "%d of %d" +msgstr "%d von %d" + +msgid "first" +msgstr "erste" + +msgid "previous" +msgstr "vorherige" + +msgid "Page:" +msgstr "Seite:" + +# sidebar.tpl: %d is number of item, %s is truncated title +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Größe:" + +msgid "Unknown" +msgstr "Unbekannt" + +msgid "Full size: " +msgstr "Vollgröße:" + +msgid "Setting" +msgstr "Einstellung" + +msgid "Use Global" +msgstr "Globalen Wert benutzen" + +msgid "Language selector" +msgstr "Sprachauswahlbox" + +msgid "Item actions" +msgstr "Element-Aktionen" + +msgid "Use dropdown menu" +msgstr "Dropdown-Menü verwenden" + +msgid "Login block" +msgstr "Anmelde-Block" + +msgid "Links to album/photo peers" +msgstr "Verweise zu angrenzenden Alben/Photos" diff --git a/Source/gallery2/modules/core/po/el.po b/Source/gallery2/modules/core/po/el.po new file mode 100644 index 0000000..42c5ff4 --- /dev/null +++ b/Source/gallery2/modules/core/po/el.po @@ -0,0 +1,3736 @@ +# $Id: el.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-16 10:47+0200\n" +"Last-Translator: Anthi Andreou \n" +"Language-Team: Greek \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Poedit-Language: Greek\n" +"X-Poedit-Country: GREECE\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Gallery Email Test" +msgstr "Δοκιμή Email Γκαλερί" + +msgid "forever" +msgstr "για πάντα" + +msgid "High Priority (Me first!)" +msgstr "Υψηλή Προτεραιότητα (Εμένα πρώτα!)" + +msgid "Low Priority (I want to share!)" +msgstr "Χαμηλή Προτεραιότητα (Θέλω να μοιραστώ!)" + +msgid "No Markup" +msgstr "Χωρίς Markup" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Χύμα HTML" + +msgid "Database" +msgstr "Βάση Δεδομένων" + +msgid "File" +msgstr "Αρχείο: " + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d Λεπτό" +msgstr[1] "%d Λεπτά" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d Ώρα" +msgstr[1] "%d Ώρες" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d Ημέρα" +msgstr[1] "%d Ημέρες" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d Εβδομάδα" +msgstr[1] "%d Εβδομάδες" + +msgid "" +msgstr "<κανένα>" + +msgid "No acceleration" +msgstr "Καμία Επιτάχυνση" + +msgid "Partial acceleration" +msgstr "Μερική Επιτάχυνση" + +msgid "Full acceleration" +msgstr "Πλήρης Επιτάχυνση" + +msgid "Themes" +msgstr "Θέματα" + +msgid "Updating Repository Index" +msgstr "Ενημέρωση ευρετηρίου του χώρου αποθήκευσης" + +msgid "Scanning plugins" +msgstr "Ανίχνευση για πρόσθετα" + +msgid "Update Plugin List" +msgstr "Ενημέρωση Λίστας Πρόσθετων" + +msgid "Done." +msgstr "Ολοκληρώθηκε." + +msgid "Updating Packages" +msgstr "Ενημέρωση Πακέτων" + +#, c-format +msgid "Preparing %s" +msgstr "Προετοιμασία %s" + +#, c-format +msgid "Downloading %s" +msgstr "Κατέβασμα %s" + +#, c-format +msgid "Activating %s" +msgstr "Ενεργοποίηση %s" + +msgid "Deleting Language Packs" +msgstr "Διαγραφή Πακέτων Γλωσσών" + +msgid "Update completed with errors." +msgstr "Η Ενημέρωση Ολοκληρώθηκε με σφάλματα." + +msgid "Update complete." +msgstr "Η Ενημέρωση Ολοκληρώθηκε." + +msgid "install" +msgstr "εγκατάσταση" + +msgid "upgrade" +msgstr "Αναβάθμιση" + +msgid "activate" +msgstr "ενεργοποίηση" + +msgid "uninstall" +msgstr "απεγκατάσταση" + +msgid "deactivate" +msgstr "απενεργοποίηση" + +msgid "Inherit settings from parent album" +msgstr "Κληρονόμηση ρυθμίσεων από το γονικό άλμπουμ" + +msgid "Use these settings" +msgstr "Χρήση αυτών των ρυθμίσεων" + +msgid "Installing the core module" +msgstr "Εγκατάσταση της μονάδας πυρήνα" + +msgid "key" +msgstr "κλειδί" + +msgid "All access" +msgstr "Πλήρες Πρόσβαση" + +msgid "[core] View item" +msgstr "[πυρήνας] Προβολή Αρχείου" + +msgid "[core] View resized version(s)" +msgstr "[core] Προβολή αρχείων διαφορετικού μεγέθους" + +msgid "[core] View original version" +msgstr "[core] Προβολή πρωτότυπης έκδοσης" + +msgid "[core] View all versions" +msgstr "[core] Προβολή Όλων των εκδόσεων" + +msgid "[core] Add sub-album" +msgstr "[core] Προσθήκη υπο-άλπουμ" + +msgid "[core] Add sub-item" +msgstr "[core] Προσθήκη υπο-αρχείου" + +msgid "[core] Edit item" +msgstr "[core] Επεξεργασία αρχείου" + +msgid "[core] Change item permissions" +msgstr "[core] Αλλαγή Δικαιωμάτων Αρχείου" + +msgid "[core] Delete item" +msgstr "[core] Διαγραφή Αρχείου" + +msgid "Upgrading permissions" +msgstr "Αναβάθμιση Δικαιωμάτων" + +msgid "Deleting old permission tables" +msgstr "Διαγραφή Παλαιών Πινάκων Δικαιωμάτων" + +msgid "Registered Users" +msgstr "Καταχωρημένοι Χρήστες" + +msgid "All Users" +msgstr "Όλοι οι Χρήστες" + +msgid "Detecting broken derivatives" +msgstr "Ανίχνευση σπασμένων παραγώγων" + +msgid "Clearing fast-download cache" +msgstr "Καθαρισμός cache γρήγορου-κατεβάσματος" + +msgid "Deleting old fast-download cache" +msgstr "Διαγραφή cache γρήγορου-κατεβάσματος" + +msgid "Updating panorama items" +msgstr "Ενημέρωση πανοραμικών αρχείων" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Βελτιστοποίηση του πίνακα AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Διαχειριστές" + +msgid "Everybody" +msgstr "Όλοι" + +msgid "Guest" +msgstr "Επισκέπτης" + +msgid "Gallery" +msgstr "Γκαλερί" + +msgid "This is the main page of your Gallery" +msgstr "Αυτή είναι η κυρια σελίδα της Γκαλερί" + +msgid "Converting MySQL data to UTF8" +msgstr "Μετατροπή δεδομένων MySQL σε UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Αναβάθμιση Δικαιωμάτων (%d αρχεία ολοκληρώθηκαν, %d απομένουν)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Εντοπισμός σπασμένων παραγώγων, φόρτωση (%d παράγωγα ελεγμένα, %d απομένουν)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Εντοπισμός σπασμένων παραγώγων (%d παράγωγα ελεγμένα, %d απομένουν)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Εντοπισμός σπασμένων παραγώγων, αποθήκευση (%d παράγωγα ελεγμένα, %d απομένουν)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Εντοπισμός σπασμένων παραγώγων, αποθήκευση αντικειμένου %d ααπό %d (%d παράγωγα " +"ολοκληρωμένα, %d απομένουν)" + +#, fuzzy, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Δικαιώματα Αντικειμένου" + +msgid "add items" +msgstr "Προσθήκη αρχείων" + +msgid "Album created successfully." +msgstr "Το άλπουμ δημιουργήθηκε με επιτυχία" + +msgid "add sub-album" +msgstr "Προσθήκη υπο-άλπουμ" + +msgid "add items confirmation" +msgstr "Επιβεβαίωση προσθήκης αρχείων" + +msgid "Base filename" +msgstr "Βασικό όνομα αρχείου" + +msgid "Caption" +msgstr "Τίτλος: " + +msgid "Blank" +msgstr "Κενό" + +msgid "From Web Browser" +msgstr "Από Περιηγητή (Web Browser)" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabytes" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Το εισαγώμενο αρχείο %s υπερβαίνει το μέγιστο επιτρεπτό μέγεθος αρχείου" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Το εισαγώμενο αρχείο %s υπερβαίνει το μεγεθος αρχείου που καθορίζεται στη φόρμα" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Το εισαγώμενο αρχείο %s ανέβηκε μόνο μερικώς" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Το εισαγώμενο αρχείο %s δεν ανέβηκε. Σφάλμα %d" + +msgid "Gallery Item Administration" +msgstr "Διαχείρηση Αντκειμένου Γκαλερί" + +msgid "delete an item" +msgstr "Διαγραφή Αρχείου" + +msgid "delete confirmation" +msgstr "Επιβεβαίωση Διαγραφής" + +#, c-format +msgid "delete %s" +msgstr "Διαγραφή %s" + +#, c-format +msgid "edit %s" +msgstr "Επεξεργασία %s" + +msgid "Settings saved successfully." +msgstr "Οι ρυθμίσεις αποθηκεύτηκαν με επιτυχία" + +msgid "Apply resized image settings" +msgstr "Ενημερώστε τις ρυθμίσεις για φωτογραφίες αλλαγμένου μεγέθους" + +msgid "Preparing..." +msgstr "Προετοιμασία..." + +msgid "Apply thumbnail settings" +msgstr "Εφαρμογή ρυθμίσεων μικρογραφιών" + +msgid "Rebuilding thumbnails..." +msgstr "Ανακατασκευή μικρογραφιών..." + +msgid "Album" +msgstr "Άλπουμ" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Επεξεργασία εικόνας %d από %d" + +msgid "Changes saved successfully" +msgstr "Οι αλλαγές αποθηκεύτηκαν με επιτυχία" + +msgid "Animation Size" +msgstr "Μέγεθος Κινούμενης Εικόνας" + +msgid "edit captions" +msgstr "επεξεργασία τίτλων" + +msgid "General" +msgstr "Γενικά" + +msgid "Movie Size" +msgstr "Μέγεθος Ταινίας" + +msgid "Photo" +msgstr "Φωτογραφία" + +msgid "Thumbnail cropped successfully" +msgstr "Το ξάκρισμα της μικρογραφίας έγινε με επιτυχία" + +msgid "Thumbnail reset successfully" +msgstr "Η μικρογραφία επανήλθε επιτυχώς" + +msgid "Photo 5x3" +msgstr "Φωτογραφία 5x3" + +msgid "Photo 6x4" +msgstr "Φωτογραφία 6x4" + +msgid "Photo 7x5" +msgstr "Φωτογραφία 7x5" + +msgid "Photo 10x8" +msgstr "Φωτογραφία 10x8" + +msgid "Fullscreen 4x3" +msgstr "Πλήρης Οθόνη 4x3" + +msgid "Widescreen 16x9" +msgstr "Πλατιά Οθόνη 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Τετράγωνο 1x1" + +msgid "As Image" +msgstr "Όπως Εικόνα" + +msgid "Landscape" +msgstr "Οριζόντια" + +msgid "Portrait" +msgstr "Κατακόρυφα" + +msgid "Crop Thumbnail" +msgstr "Ξάκρισμα Μικρογραφίας" + +#, fuzzy +msgid "Reverted rotate and scale changes successfully" +msgstr "Η Ομάδα '%s' Δημιουργήθηκε με επιτυχία" + +msgid "Rotated photo successfully" +msgstr "Επιτυχής περιστροφή φωτογραφίας" + +msgid "Scaled photo successfully" +msgstr "Η Φωτογραφία Κλιμακώθηκε με επιτυχία." + +msgid "Modify Photo" +msgstr "Επεξεργασία Φωτογραφίας" + +msgid "Successfully changed theme" +msgstr "Η αλλαγή θέματος έγινε με επιτυχία" + +msgid "« default theme »" +msgstr "« τρέχον θέμα »" + +msgid "Theme" +msgstr "Θέμα" + +msgid "make highlight" +msgstr "κάντο κύριο Σημείο" + +msgid "move item" +msgstr "μετακίνηση αρχείου" + +#, c-format +msgid "move %s" +msgstr "Μετακίνηση %s" + +#, c-format +msgid "edit %s permissions" +msgstr "Επεξεργασία %s Δικαιωμάτων" + +msgid "reorder items" +msgstr "Αναταξινόμηση Αρχείων" + +msgid "Maintenance" +msgstr "Συντήρηση" + +msgid "Gallery Site Administration" +msgstr "Διαχείρηση της Γκαλερί" + +msgid "site admin" +msgstr "Διαχείριση" + +msgid "Gallery User Administration" +msgstr "Διαχείρηση Χρηστών Γκαλερί" + +msgid "change password" +msgstr "Αλλαγή Κωδικού Πρόσβασης" + +msgid "your account" +msgstr "ο λογαριασμός σου" + +msgid "Password Recovery" +msgstr "Ανάκτηση Κωδικού" + +msgid "Core" +msgstr "Core" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Core Module" + +msgid "Add Items" +msgstr "Προσθέστε Αρχεία" + +msgid "Edit Album" +msgstr "Επεξεργασία Άλπουμ" + +msgid "Edit Photo" +msgstr "Επεξεργασία Φωτογραφίας" + +msgid "Edit Movie" +msgstr "Επεξεργασία Ταινίας" + +msgid "Add Album" +msgstr "Προσθήκη Άλπουμ" + +msgid "Edit Permissions" +msgstr "Επεξεργασία Δικαιωμάτων" + +msgid "View Permissions" +msgstr "Προβολή Δικαιωμάτων" + +msgid "Delete Album" +msgstr "Διαγραφή Άλπουμ" + +msgid "Delete Photo" +msgstr "Διαγραφή Φωτογραφίας" + +msgid "Delete Movie" +msgstr "Διαγραφή Ταινίας" + +msgid "Move Album" +msgstr "Μετακίνηση Άλπουμ" + +msgid "Move Photo" +msgstr "Μετακίνηση Φωτογραφίας" + +msgid "Move Movie" +msgstr "Μετακίνηση Ταινίας" + +msgid "Edit Captions" +msgstr "Επεξεργασία τίτλων" + +msgid "Make Highlight" +msgstr "Κάντο Κύριο Σημείο" + +msgid "Reorder Items" +msgstr "Αναταξινόμηση Αρχείων" + +msgid "Site Admin" +msgstr "Διαχείρηση της Γκαλλερύ" + +msgid "Login" +msgstr "Σύνδεση" + +msgid "Your Account" +msgstr "Ο Λογαριασμός Σου" + +msgid "Logout" +msgstr "Αποσύνδεση" + +msgid "Plugins" +msgstr "Πρόσθετα" + +msgid "Users" +msgstr "Χρήστες" + +msgid "Groups" +msgstr "Ομάδες" + +msgid "Performance" +msgstr "Απόδοση" + +msgid "Toolkit Priority" +msgstr "Προτεραιότητα Εργαλειοθήκης" + +msgid "Graphics Toolkits" +msgstr "Εργαλειοθήκη Γραφικών" + +msgid "Account Settings" +msgstr "Ρυθμίσεις Λογαριασμού" + +msgid "Change Password" +msgstr "Αλλαγή κωδικού πρόσβασης" + +#, c-format +msgid "Edit %s" +msgstr "Επεξεργασία %s" + +#, c-format +msgid "Delete %s" +msgstr "Διαγραφή %s" + +#, c-format +msgid "Move %s" +msgstr "Μετακίνηση %s" + +msgid "Build all thumbnails/resizes" +msgstr "Κατασκευή όλων των μικρογραφιών/αναδιαστασιολογήσεων(resized)" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Εξασφάλιση ότι τα αρχεία δεδομένων για όλα τα παράγωγα (μικρογραφίες, κλπ) έχουν " +"κατασκευαστεί και έχουν ανακατασκευαστεί τα σπασμένα." + +msgid "Build All Thumbnails/Resizes" +msgstr "Κατασκευή όλων των μικρογραφιών/αναδιαστασιολογήσεων(resized)" + +msgid "Debug output for failed items:" +msgstr "Αποσφαλμάτωση εξόδου για αποτυχημένα αρχεία:" + +#, c-format +msgid "Checked %d items" +msgstr "Επιλέχθηκαν %d αρχεία" + +#, c-format +msgid "%d items built" +msgstr "%d αρχεία κατασκευάστηκαν" + +#, c-format +msgid "%d items failed" +msgstr "%d αρχεία απότυχαν" + +msgid "Convert MySQL database to UTF8" +msgstr "Μετατροπή Βάσης Δεδομένων MySQL σε UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Αν δημιουργήσατε την βάση δεδομένων σας με την MySQL 3.x και αναβαθμίσετε σε MySQL 4.x, θα " +"βιώσετε ανακατεμένους χαρακτήρες μέχρι να μετατρέψετε την βάση δεδομένων σας ώστε να " +"χρησιμοποιεί UTF8. Αυτή η διαδικασία είναι ακίνδυνη αν η βάση δεδομένων σας έχει ήδη " +"μετατραπεί, έτσι είναι ασφαλές να δοκιμάσετε αν δεν είστε σίγουροι. Μετά από αυτή τη χρήση, " +"θα πρέπει να τρέξετε την εργασία 'Διαγραφή cache βάσης δεδομένων' για να ξεφορτωθείτε " +"οποιαδήποτε φθορά στην cache." + +msgid "Database successfully converted to UTF8" +msgstr "Η βάση δεδομένων μετατράπηκε επιτυχώς σε UTF8" + +msgid "No conversion required" +msgstr "Δεν χρειάζεται μετατροπή" + +msgid "Delete user sessions" +msgstr "Διαγραφή συνεδριών χρήστη" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Διαγραφή όλων των επίμονων συνεδριών χρήστη σύμφωνα με τις τρέχουσες ρυθμίσεις λήξης " +"συνεδρίας." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Διαγράφηκαν %d συνεδρίες." + +msgid "Delete database cache" +msgstr "Διαγραφή cache βάσης δεδομένων" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Η Γκαλερί αποθηκεύει συχνά χρησιμοποιούμενες πληροφορίες της βάσης δεδομένων στον δίσκο για " +"αυξημένες επιδόσεις. Αν τροποποιήσετε την βάση δεδομένων απευθείας, πρέπει να τρέξετε αυτή " +"την εργασία για να καθαρίσετε την cache και να αναγκάσετε την Γκαλερί να επαναφορτώσει τις " +"πληροφορίες από την βάση δεδομένων." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Διαγράφηκε επιτυχώς ο κατάλογος: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Δεν μπορεί να διαγραφεί ο κατάλογος: %s" + +msgid "Delete template cache" +msgstr "Διαγραφή της cache προτύπου" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Η Γκαλερί συλλέγει αρχεία προτύπων και τα αποθηκεύει για αυξημένες επιδόσεις. Αν " +"αντιμετοπίζετε προβλήματα που λένε Smarty error τότε μπορείτε να δοκιμάσετε να " +"τρέξετε αυτή την εργασία. Επίσης τρέξτε το αν αφαιρέσατε ένα αρχείο local/*.tpl ώστε το " +"Smarty να γυρίσει πίσω στο προκαθορισμένο αρχείο tpl." + +msgid "Template cache deleted successfully" +msgstr "Η cache προτύπου διαγράφηκε επιτυχώς" + +msgid "album" +msgstr "άλπουμ" + +msgid "Animation" +msgstr "Κινούμενη Εικόνα" + +msgid "animation" +msgstr "κινούμενη εικόνα" + +msgid "Gallery Core" +msgstr "Gallery Core" + +msgid "Gallery Core Module" +msgstr "Gallery Core Module" + +msgid "Search descriptions" +msgstr "Αναζήτηση περιγραφών" + +msgid "Search keywords" +msgstr "Αναζήτηση Λέξεων Κλειδιών" + +msgid "Search summaries" +msgstr "Αναζήτηση Περιλήψεων" + +msgid "Search titles" +msgstr "Αναζήτηση τίτλων" + +msgid "Description" +msgstr "Περιγραφή" + +msgid "Keywords" +msgstr "Λέξεις Κλειδιά" + +msgid "Summary" +msgstr "Περίληψη" + +msgid "Title" +msgstr "Τίτλος" + +msgid "Owner" +msgstr "Ιδιοκτήτης" + +msgid "Dynamic Album" +msgstr "Δυναμικό Άλπουμ" + +msgid "dynamic album" +msgstr "δυναμικό άλπουμ" + +msgid "Group" +msgstr "Ομάδα" + +msgid "group" +msgstr "ομάδα" + +msgid "Other" +msgstr "Λοιπά" + +msgid "Movie" +msgstr "Ταινία" + +msgid "movie" +msgstr "ταινία" + +msgid "photo" +msgstr "Φωτογραφία" + +msgid "Couldn't create repository cache path." +msgstr "Δεν μπόρεσε να δημιουργηθεί το μονοπάτι για τον χώρο της cache" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Δεν μπόρεσε να δημιουργηθεί υποκατάλογος της cache. Σιγουρευτείτε ότι ο web server έχει " +"άδειες γραφής σε αυτόν." + +msgid "Official Release Repository" +msgstr "Επίσημη Έκδοση Χώρου Αποθήκευσης" + +msgid "Experimental Repository" +msgstr "Δοκιμαστικός χώρος αποθήκευσης" + +msgid "Community Repository" +msgstr "Χώρος αποθήκευσης κοινότητας" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Σφάλμα κατεβάσματος ευρετηρίου από '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Σφάλμα κατεβάσματος hash ευρετηρίου από '%s'." + +msgid "Index integrity check failed." +msgstr "Απέτυχε ο έλεγχος ακεραιότητας ευρετηρίου" + +msgid "« default sort order »" +msgstr "« προεπιλεγμένη ταξινόμηση »" + +msgid "Manual sort order" +msgstr "Χειροκίνητη ταξινόμηση" + +msgid "Origination Date" +msgstr "Ημερομηνία Δημιουργίας" + +msgid "Creation Date" +msgstr "Ημερομηνία Δημιουργίας" + +msgid "Last Changed Date" +msgstr "Τελευταία Ημερομηνία Αλλαγής" + +msgid "Name" +msgstr "Πλήρες Όνομα" + +msgid "View Count" +msgstr "Προβολή Μέτρησης" + +msgid "Random" +msgstr "Τυχαία" + +msgid "« no presort »" +msgstr "« Χωρίς Ταξινόμιση »" + +msgid "Albums First" +msgstr "Πρώτα τα άλμπουμ" + +msgid "Most Viewed First" +msgstr "Πρώτα τα πιο προβαλλόμενα" + +msgid "Ascending" +msgstr "Αύξουσα" + +msgid "Descending" +msgstr "Φθίνουσα" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Η εξακρίβωση απενεργοποιήθηκε μέχρι να θέσετε allowSessionAccess στο config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Αυτή η σελίδα έχει έγκυρη XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Δωρίστε στο έργο Γκαλερί (Menalto Gallery)" + +msgid "G2.2: Double Double" +msgstr "G2.2: Διπλό Διπλό" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Υπολογιζόμενος χρόνος που παραμένει: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Μνήμη που χρησιμοποιήθηκε: %s, σύνολο: %s" + +msgid "Rows per album page" +msgstr "Γραμμές ανά σελίδα άλπουμ" + +msgid "Columns per album page" +msgstr "Στήλες ανά σελίδα άλπουμ" + +msgid "Number of items to show per page" +msgstr "Αριθμός αρχείων για προβολή ανά σελίδα" + +msgid "Row height (pixels)" +msgstr "Ύψος Γραμμής (pixels)" + +msgid "Column width (pixels)" +msgstr "Πλάτος Στήλης (pixels)" + +msgid "Show image owners" +msgstr "Εμφάνιση Ιδιοκτήτη Εικόνων" + +msgid "Show album owners" +msgstr "Εμφάνιση Ιδιοκτήτη Άλπουμ" + +msgid "Show micro navigation thumbnails" +msgstr "Εμφάνιση Μικρογραφιών πλοήγησης" + +msgid "Blocks to show in the sidebar" +msgstr "Προβολή μπλοκς στην πλευρική μπάρα" + +msgid "Blocks to show on album pages" +msgstr "Προβολή μπλοκ στις σελίδες των άλπουμ" + +msgid "Blocks to show on photo pages" +msgstr "Προβολή μπλοκ στις σελίδες φωτογραφιών" + +msgid "Thumbnail links in dynamic albums" +msgstr "Σύνδεσμοι μικρογραφιών σε δυναμικά άλπουμ" + +msgid "Browse dynamic album" +msgstr "Περιήγηση Δυναμικού Άλπουμ" + +msgid "Jump to original album" +msgstr "Πήγαινε στο πρότυπο άλπουμ" + +msgid "Separate link to original album" +msgstr "Διαχωρισμός συνδέσμου στο πρωτότυπο άλπουμ" + +msgid "View Samples" +msgstr "Προβολή Δειγμάτων" + +msgid "Album Frame" +msgstr "Πλαίσιο Άλπουμ" + +msgid "Item Frame" +msgstr "Πλαίσιο Αρχείου" + +msgid "Photo Frame" +msgstr "Πλαίσιο Φωτογραφίας" + +msgid "Color Pack" +msgstr "Πακέτο Χρωμάτων" + +msgid "You must enter a number greater than 0" +msgstr "Δώστε ένα αριθμό μεγαλύτερο από το 0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Σφάλμα στις ρυθμίσεις του μπλοκ. Καθάρισε το cache του περιηγητή σου και δοκίμασε ξανά." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Ήχος" + +msgid "audio" +msgstr "ήχος" + +msgid "Archive" +msgstr "Αρχειοθήκη" + +msgid "archive" +msgstr "αρχειοθήκη" + +msgid "Document" +msgstr "Κείμενο" + +msgid "document" +msgstr "κείμενο" + +msgid "Spreadsheet" +msgstr "Υπολογιστικό Φύλλο" + +msgid "spreadsheet" +msgstr "υπολογιστικό φύλλο" + +msgid "file" +msgstr "Αρχείο: " + +msgid "Back" +msgstr "<< Πίσω" + +#, c-format +msgid "Back to %s" +msgstr "Πίσω στο %s" + +msgid "User" +msgstr "Χρήστης" + +msgid "user" +msgstr "χρήστης" + +msgid "Optimize database" +msgstr "Βελτιστοποίηση βάσης δεδομένων" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Βελτιώστε την απόδοση της βάσης δεδομένων σας. Τα αποτελέσματα εξαρτώνται από το ποια βάση " +"δεδομένων χρησιμοποιείτε, αλλά αυτή η ρουτίνα συντήρησης θα κάνει την Γκαλερί σας να τρέχει " +"γρηγορότερα. Ειδικά χρήσιμο μετά από προσθήκη ή διαγραφή πολλών αρχείων." + +msgid "Database optimized successfully" +msgstr "Η βάση δεδομένων βελτιστοποιήθηκε επιτυχώς" + +msgid "Reset view counts" +msgstr "Επαναφορά μετρητή προβολών" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Επαναφορά του αριθμού προβολών στο μηδέν για όλα τα άλμπουμ και τα αρχεία. Αυτή η εργασία " +"διαγράφει επίσης την cache της βάσης δεδομένων." + +msgid "View counts reset successfully" +msgstr "Επιτυχής επαναφορά του μετρητή προβολών" + +msgid "Refresh capture dates" +msgstr "Ανανέωση ημερομηνιών λήψης" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Ενημέρωση της ημερομηνίας λήψης που είναι αποθηκευμένη στην Γκαλερί για όλα τα αρχεία που " +"έχουν διαθέσιμη ημερομηνία στο πρωτότυπο αρχείο δεδομένων (συνήθως από τα δεδομένα EXIF)." + +msgid "Processing..." +msgstr "Επεξεργασία..." + +msgid "Refresh Capture Dates" +msgstr "Ανανέωση Ημερομηνιών Λήψης" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Επεξεργασία αρχείου %d από %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Ενημερώθηκαν %d από %d αρχεία" + +msgid "System information" +msgstr "Πληροφορίες Συστήματος" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Λήψη λεπτομερειών συστήματος, χρήσιμο για αντιγραφή/επικόλληση στο forum υποστηριξης του G2." + +msgid "core" +msgstr "core" + +msgid "unknown" +msgstr "άγνωστο" + +msgid "Gallery version" +msgstr "Έκδοση Γκαλερί" + +msgid "PHP version" +msgstr "Έκδοση PHP" + +msgid "Webserver" +msgstr "Webserver" + +msgid "Toolkits" +msgstr "Εργαλειοθήκη" + +msgid "Acceleration" +msgstr "Επιτάχυνση" + +msgid "Operating system" +msgstr "Λειτουργικό σύστημα" + +msgid "Default theme" +msgstr "Προεπιλεγμένο Θέμα" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "ενεργοποιημένο" + +msgid "disabled" +msgstr "απενεργοποιημένο" + +msgid "Locale" +msgstr "Τοπική προσαρμογή" + +msgid "Browser" +msgstr "Περιηγητής(Browser)" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Γραμμές στον πίνακα %s = %d" + +msgid "Successfully saved theme settings" +msgstr "Οι ρυθμίσεις θέματος αποθηκεύτηκαν με επιτυχία" + +msgid "General Settings" +msgstr "Γενικές Ρυθμίσεις" + +msgid "Settings saved successfully" +msgstr "Οι ρυθμίσεις αποθηκεύτηκαν με επιτυχία" + +msgid "Added local upload directory successfully" +msgstr "Ο τοπικός κατάλογος προστέθηκε με επιτυχία" + +msgid "Removed local upload directory successfully" +msgstr "Ο τοπικός κατάλογος αφαιρέθηκε με επιτυχία" + +msgid "Test email sent successfully" +msgstr "Το δοκιμαστικό email στάλθηκε με επιτυχία" + +msgid "There was a problem processing your request, see below for details." +msgstr "" +"Υπήρξε ένα πρόβλημα κατά την επεξεργασία της αίτησης σας, δείτε παρακάτω για λεπτομέρειες." + +msgid "Error sending test email, see below for details." +msgstr "Σφάλμα στην αποστολή δοκιμαστικού email, διαβάστε λεπτομέρειες πιο κάτω." + +msgid "Language Settings" +msgstr "Ρυθμίσεις Γλώσσας" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Επιλογή προκαθορισμένης γλώσσας για την Γκαλερί. Οι χρήστες μπορούν ατομικά να αγνοήσουν " +"αυτή τη ρύθμιση στις ατομικές τους προτιμήσεις ή μέσω του μπλοκ επιλογής γλώσσας εάν είναι " +"διαθέσιμο. Η Γκαλερί θα προσπαθήσει να εντοπίσει αυτόματα την προτίμηση του κάθε χρήστη εάν " +"είναι ενεργοποιημένη η επιλογή προτίμησης του browser." + +msgid "Default language" +msgstr "Προεπιλεγμένη Γλώσσα" + +msgid "Check Browser Preference" +msgstr "Ελέγχος ρυθμίσεων περιηγητή(browser)" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Ο webserver σας δεν υποστηρίζει τοπική προσαρμογή. Παρακαλούμε ζητήστε από τον διαχειριστή " +"του συστήματος σας να μεταρρυθμίσει την PHP και να ενεργοποιήσει την επιλογή %s." + +msgid "Date Formats" +msgstr "Μορφές Ημερομηνιών" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Καθοριστε το πως οι ημερομηνίες και η ώρα θα εμφανίζονται στην Γκαλερί. Δείτε %sphp.net%s " +"για λεπτομέρειες του πως να εισάγετε μία συμβολοσειρά μορφοποίησης. Σημειώστε ότι η εμφάνιση " +"μερικών συμβόλων ποικίλλει ανάλογα με την ενεργό γλώσσα." + +msgid "Style" +msgstr "Στυλ" + +msgid "Format" +msgstr "Μορφή" + +msgid "Sample" +msgstr "Δείγμα" + +msgid "Date" +msgstr "Ημερομηνία" + +msgid "Time" +msgstr "Ώρα" + +msgid "Date/Time" +msgstr "Ημερομηνία/Ώρα" + +msgid "Filesystem Permissions" +msgstr "Δικαιώματα Αρχείου Συστήματος" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Καθορισμός των προκαθορισμένων αδειών για αρχεία και καταλόγους που δημιουργεί η Γκαλερί. " +"Αυτό δεν εφαρμόζεται σε αρχεία/καταλόγους που η Γκαλερί έχει ήδη δημιουργήσει." + +msgid "New directories" +msgstr "Νέοι Κατάλογοι" + +msgid "New files" +msgstr "Νέα Αρχεία" + +msgid "Session Settings" +msgstr "Ρυθμίσεις Συνεδρίας" + +msgid "Session Lifetime" +msgstr "Διάρκεια Ζωής Συνεδρίας" + +msgid "Inactivity Timeout" +msgstr "Παύση Αδράνειας" + +msgid "Embedded Markup" +msgstr "Ενσωματωμένο Markup" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" + +msgid "Markup" +msgstr "Markup" + +msgid "Email" +msgstr "Email" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Εξ ορισμού η Γκαλερί χρησιμοποιεί την προ εγκατεστημένη λειτουργία ηλεκτρονικού ταχυδρομείου " +"της PHP για την αποστολή ηλεκτρονικού μηνύματος, και η οποία απαιτεί καμία διαμόρφωση. Για " +"να χρησιμοποιήσετε έναν smtp/mail server δώστε τις πληροφορίες πιο κάτω, " +"συμπεριλαμβανομένων των πληροφοριών πιστοποίησης αν είναι απαραίτητο. Προαιρετικά προσθέστε :" +"port μετά από το όνομα του server για να χρησιμοποιήσετε ένα μη προεπιλεγμένο port." + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Όνομα Χρήστη" + +msgid "Password" +msgstr "Κωδικός Πρόσβασης" + +msgid "SMTP From Address" +msgstr "SMTP From Address" + +msgid "Invalid email address" +msgstr "Μη έγκυρη ηλεκτρονική διεύθυνση (email)" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Στείλτε ένα δοκιμαστικό ηλεκτρονικό μήνυμα για να επιβεβαιώσετε ότι οι ρυθμίσεις είναι " +"ορθές. (είτε χρησιμοποιώντας ρυθμίσεις του PHP mail ή SMTP). Δώστε μία ηλεκτρονική διεύθυνση " +"παραλήπτη πιο κάτω για το δοκιμαστικό μήνυμα." + +msgid "Send Email" +msgstr "Αποστολή ηλεκτρονικού μηνύματος (email)" + +msgid "Email Test Error" +msgstr "Σφάλμα στο δοκιμαστικό email" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Όταν η Γκαλερί είναι ενσωματωμένη σε άλλη εφαρμογή (portal, CMS, forum, κλπ.), τότε μπορείτε " +"να διαλέξετε ανάμεσα σε δύο επιλογές. Οποιοσδήποτε άλλος δεν χρειάζεται να ασχολείται με τις " +"ρυθμίσεις των cookies. Διαβάστε για περισσότερες λεπτομέρειες." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Αν η Γκαλερί είναι ενσωματωμένη και αφήσετε τα ακόλουθα πεδία άδεια, τότε όλοι οι σύνδεσμοι " +"DownloadItem (τα URL των εικόνων και άλλων αντικειμένων) στην ενσωματωμένη Gallery έχουν " +"ένα επίθεμα GALLERYSID στο URL το οποίο είναι ένας δευτερεύον κίνδυνος ασφάλειας " +"όταν οι χρήστες της Γκαλερί αρχίσουν να αντιγράφουν και να επικολλούν τα URL των εικόνων σε " +"φόρουμ, βιββλία διευθύνσεων, κλπ. Το ενναλακτικό είναι να καθορίσετε ένα cookie path. " +"Η Gallery τότε δεν θα προσθέσει το επίθεμα GALLERYSID στο ενσωματωμένο URL DownloadItem. Για παράδειγμα όταν η Γκαλερί βρίσκεται στο http://www.example.com/application/" +"gallery2/ και η εφαρμογή που την ενσωματώνει στο http://www.example.com/application/, τότε " +"πρέπει να συγκρίθεί το path /application/gallery2/ με το /application/. Το path του cookie " +"είναι το κομάτι των path που είναι ίδια, σε αυτή την περίπτωση είναι '/application/'. Πιο " +"συχνά είναι μόνο '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Το cookie domain χρειάζεται επίσης για ενσωματωμένες εγκαταστάσεις της Gallery και " +"μόνο αν θέλετε να ξεφορτωθείτε τη συμβολοσειρά του GALLERYSID στο ενσωματωμένο URL " +"DownloadItem. Στις περισσότερες περιπτώσεις, το cookie domain μπορεί να αφεθεί κενό. " +"Καθορίστε το μόνο αν η Gallery και η εφαρμογή που την ενσωματώνει είναι προσβάσιμες με " +"διαφορετικά subdomains. Π.χ. όταν η Gallery είναι στο http://photos.example.com/ και " +"η εφαρμογή είναι στο http://www.example.com/, τότε πρέπει να καθορίσετε το cookie domain " +"example.com (το τμήμα της συμβολοσειράς που είναι κοινό και στα δύο, την Gallery και την " +"εφαρμογή που την ενσωματώνει)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Μόλις αλλάξετε τις ρυθμίσεις cookie, όλοι οι καταχωρημένοι χρήστες της Gallery θα " +"πρέπει να καθαρίσουν την cache των cookie στον browser τους. Αν δεν το κάνουν, θα " +"έχουν προβλήματα με login / logout / lost session." + +msgid "Path" +msgstr "Διαδρομή" + +msgid "Invalid cookie path" +msgstr "Μη έγκυρη διαδρομή cookie" + +msgid "Domain" +msgstr "Domain" + +msgid "Invalid cookie domain" +msgstr "Μη έγκυρο cookie domain" + +msgid "Locking System" +msgstr "Κλείδωμα συστήματος" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Η Γκαλερί χρησιμοποιεί ένα σύστημα κλειδώματος για να αποτρέψει τις ταυτόχρονες αλλαγές να " +"παρεμποδίζει η μια την άλλη. Υπάρχουν δύο τύποι κλειδωμάτων, κάθε ένας με τα πλεονεκτήματα " +"και τα μειονεκτήματά του. ΑρχείοΤο κλείδωμα αρχείου είναι γρήγορο και αποδοτικό, αλλά " +"δεν θα λειτουργήσει σε NFS filesystems και θα είναι αναξιόπιστο στα windows. Βάση " +"ΔεδομένωνΤο κλείδωμα βάσεων δεδομένων είναι πιό αργό αλλά είναι πιό αξιόπιστο. Εάν είστε " +"αβέβαιοι ποιο να επιλέξετε, εμείς συστήνουμε το κλείδωμα αρχείων. Εάν παίρνετε πολλά " +"διαλείμματα κλειδαριών, μπορείτε να προσπαθήσετε στο κλείδωμα βάσεων δεδομένων αντ' αυτού. " +"Είναι εντάξει να το μεταστρέψετε πέρα δώθε." + +msgid "Lock system" +msgstr "Κλείδωμα Συστήματος" + +msgid "Helper Processes" +msgstr "Βοηθητικές Διαδικασίες" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +msgid "Priority" +msgstr "Προτεραιότητα" + +msgid "Save" +msgstr "Αποθήκευση" + +msgid "Reset" +msgstr "Επαναφορά" + +msgid "Create A New Group" +msgstr "Δημιουργία Νέας Ομάδας" + +msgid "Group Name" +msgstr "Όνομα Ομάδας" + +msgid "(required)" +msgstr "(απαιτείται)" + +msgid "You must enter a group name" +msgstr "Πρέπει να δώσετε όνομα ομάδας" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Η ομάδα '%s' υπάρχει ήδη" + +msgid "Create Group" +msgstr "Δημιουργία Ομάδας" + +msgid "Cancel" +msgstr "Ακυρο" + +msgid "Create A New User" +msgstr "Δημιουργία Νέου Χρήστη" + +msgid "You must enter a username" +msgstr "Πρέπει να δώσετε Όνομα Χρήστη" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Ο Χρήστης '%s' υπάρχει ήδη" + +msgid "Full Name" +msgstr "Πλήρες Όνομα" + +msgid "Email Address" +msgstr "Ηλεκτρονική Διεύθυνση (email)" + +msgid "You must enter an email address" +msgstr "Δώστε μία έγκυρη ηλ.διεύθυνση (email)" + +msgid "Language" +msgstr "Γλώσσα" + +msgid "You must enter a password" +msgstr "Πρέπει να δώσετε κωδικό πρόσβασης" + +msgid "Verify Password" +msgstr "Επιβεβαίωση Κωδικού" + +msgid "You must enter the password a second time" +msgstr "Πρέπει να δώσετε κωδικό πρόσβασης ξανά" + +msgid "The passwords you entered did not match" +msgstr "Οι κωδικοί που δώσατε δεν είναι οι ίδιοι" + +msgid "Create User" +msgstr "Δημιουργία Χρήστη" + +msgid "Delete A Group" +msgstr "Διαγραφή Ομάδας" + +msgid "Are you sure?" +msgstr "Είστε σίγουροι;" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Αυτό θα αφαιρέσει εντελώς τον χρήστη %s από την Γκαλερί. Δεν μπορεί να ανατραπεί αν " +"εκτελεστεί!" + +msgid "Delete" +msgstr "Διαγραφή" + +msgid "Delete a User" +msgstr "Διαγραφή Χρήστη" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "Ο χρήστης %s είναι ο ιδιοκτήτης %s αρχείων." + +#, c-format +msgid "Delete user %s and..." +msgstr "Διαγραφή χρήστη %s και..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Ανάθεση νέου ιδιοκτήτη για όλα τα αντικείμενα του %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Διαγραφή όλων των αντικειμένων του %s και ανάθεση ενός νέου ιδιοκτήτη για όλα τα " +"εναπομείναντα μη άδεια άλμπουμ. Αρχεία που %s δεν έχουν δικαίωμα διαγραφής θα επανατεθούν σε " +"νέο ιδιοκτήτη." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Νέος Ιδιοκτήτης (αφήνοντας το κενό εννοεί ένα από τους διαχειριστές)" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"Ο χρήστης '%s' δεν υπάρχει! Δεν γίνεται να ανατεθούν αντικείμενα σε χρήστη που δεν υπάρχει." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Ο νέος ιδιοκτήτης πρέπει να είναι διαφορετικός χρήστης από το χρήστη που διαγράφουμε!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Ο νέος ιδιοκτήτης δεν μπορεί να είναι επισκέπτης / Ανώνυμος χρήστης" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Αυτό θα αφαιρέσει πλήρως %s από την Gallery. Δεν υπάρχει αναίρεση!" + +msgid "Edit a group" +msgstr "Επεξεργασία Ομάδας" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Επεξεργασία Χρηστών Ομάδας '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Προστέθηκε ο χρήστης '%s' στην ομάδα '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Αφαιρέθηκε ο χρήστης '%s' από την ομάδα '%s'" +msgstr[1] "Αφαιρέθηκαν οι χρήστες '%s' από την ομάδα '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Αυτή η ομάδα έχει %d χρήστη" +msgstr[1] "Αυτή η ομάδα έχει %d χρήστες" + +msgid "Members" +msgstr "Μέλη" + +msgid "« first" +msgstr "« πρώτη" + +msgid "« back" +msgstr "« πίσω" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Σελίδα %d από %d" + +msgid "next »" +msgstr "επόμενη »" + +msgid "last »" +msgstr "τελευταία »" + +msgid "Filter" +msgstr "Φίλτρο:" + +msgid "Clear" +msgstr "Καθαρισμός" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "" +msgstr[1] "" + +msgid "Remove selected" +msgstr "Αφαίρεση επιλεγμένων" + +msgid "You must select a user to remove." +msgstr "Διαλέξτε τον χρήστη που θα αφαιρέσετε" + +msgid "You can't remove yourself from this group." +msgstr "Δεν μπορείτε να αφαιρέσετε τον εαυτό σας από αυτή την ομάδα" + +msgid "Add Member" +msgstr "Εγγραφή Νέου Μέλους" + +msgid "Add" +msgstr "Προσθήκη" + +msgid "You must enter a username." +msgstr "Πρέπει να δώσετε όνομα χρήστη." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Ο Χρήστης '%s' δεν υπάρχει." + +msgid "This user already is in this group." +msgstr "Ο Χρήστης ανοίκει ήδη σ' αυτή την ομάδα" + +msgid "Done" +msgstr "Επιτυχία" + +msgid "Edit a user" +msgstr "Επεξεργασία Χρήστη" + +msgid "That username is already in use" +msgstr "Αυτό το όνομα χρησιμοποιείται ήδη από άλλον χρήστη." + +msgid "You must enter a new username" +msgstr "Πρέπει να βάλετε ένα νέο Όνομα Χρήστη" + +msgid "E-mail Address" +msgstr "Ηλεκτρονική Διεύθυνση(email)" + +msgid "(suggested)" +msgstr "(προτείνεται)" + +msgid "Options" +msgstr "Επιλογές" + +msgid "Lock user." +msgstr "Κλείδωμα Χρήστη." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Οι κλειδωμένοι χρήστες δεν μπορούν να αλλάξουν τις πληροφορίες του λογαριασμού τους. " +"(Κωδικός πρόσβασης, όνομα, ηλεκτρονικό ταχυδρομείο, κλπ....)" + +msgid "Reset failed login count." +msgstr "Επαναφορά αποτυχεμένων μετρήσεων συνδεσης" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Διαχείριση Ομάδων" + +#, c-format +msgid "Removed group '%s'" +msgstr "Αφαιρέθηκε η ομάδα '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Δημιουργήθηκε η ομάδα '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Επεξεργάστηκε η ομάδα '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "" +msgstr[1] "" + +msgid "Edit Group" +msgstr "Επεξεργασία Ομάδας" + +msgid "Edit" +msgstr "Επεξεργασία" + +msgid "Add/Remove Users" +msgstr "Προσθαφαίρεση Χρηστών" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Η Ομάδα '%s' δεν υπάρχει." + +msgid "You cannot delete that group" +msgstr "Δεν μπορείτε να διαγράψετε αυτή την ομάδα" + +msgid "You cannot edit that group's users" +msgstr "Δεν μπορείτε να τροποποιήσετε τους χρήστες αυτής της ομάδας" + +msgid "Edit Group (by list)" +msgstr "Επεξεργασία ομάδας (κατά λίστα)" + +msgid "Action" +msgstr "Ενέργεια" + +msgid "edit" +msgstr "Επεξεργασία" + +msgid "delete" +msgstr "Διαγραφή" + +msgid "members" +msgstr "Μέλη" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "" +msgstr[1] "" + +msgid "System Maintenance" +msgstr "Συντήρηση Συστήματος" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Η ενέργεια ολοκληρώθηκε %s με επιτυχία" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Η ενέργεια απέτυχε να ολοκληρωθεί %s με επιτυχία" + +msgid "Task name" +msgstr "Όνομα Ενέργειας" + +msgid "Last run" +msgstr "Τελευταία Χρήση" + +msgid "Success/Fail" +msgstr "Επιτυχία/Αποτυχία" + +msgid "Not run yet" +msgstr "Δεν χρησιμοποιήθηκε ακόμη" + +msgid "Success" +msgstr "Επιτυχία" + +msgid "Failed" +msgstr "Αποτυχία" + +msgid "run now" +msgstr "Τρέξτε το τώρα" + +msgid "Last Run Details:" +msgstr "Λεπτομέρειες τελευταίας χρήσης:" + +msgid "Performance Tuning" +msgstr "Συντονισμός Απόδοσης" + +msgid "Updated performance settings successfully" +msgstr "Ενημερώθηκαν με επιτυχία οι ρυθμίσεις απόδοσης" + +msgid "Deleted all saved pages" +msgstr "Διαγράφηκαν όλες οι αποθηκευμένες σελίδες" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "Μερική Επιτάχυνση" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Η μερική επιτάχυνση σας δίνει την αύξηση απόδοσης κατά προσέγγιση 10-25%, αλλά μερικές " +"μορφές δυναμικών στοιχείων (όπως τις αριθμήσεις προβολής) δεν θα ενημερωθούν αμέσως. Όλο το " +"περιεχόμενο που εμφανίζεται στα μπλοκ (όπως το μπλοκ Τυχαία Φωτογραφία, οποιονδήποτε πλαϊνών " +"μπαρών, κ.λπ...) θα ενημερώνονται πάντα." + +msgid "Full Acceleration" +msgstr "Πλήρης Επιτάχυνση" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Η πλήρης επιτάχυνση δίνει μια κατά προσέγγιση αύξηση απόδοσης 90%, αλλά κανένα δυναμικό " +"στοιχείο (μπλοκ Τυχαίας Φωτογραφίας, οποιονδήποτε πλαϊνών μπαρών, αριθμός στοιχείων στην " +"κάρτα αγορών σας, αριθμήσεις προβολής, κ.λπ...) δεν θα ενημερωθεί έως ότου λήξει η σωζόμενη " +"σελίδα." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Μπορείτε πρόσθετα να διευκρινίσετε πότε οι σωζόμενες σελίδες λήγουν. Ο καθορισμός ενός πιό " +"μακροχρόνιου χρόνου λήξης θα μειώσει το φορτίο στον κεντρικό υπολογιστή σας, αλλά θα αυξήσει " +"το διάστημα προτού να δουν οι χρήστες τις αλλαγές. Οι χαμηλότεροι χρόνοι λήξης σημαίνουν ότι " +"οι χρήστες θα δουν περισσότερα τρέχοντα στοιχεία, αλλά θα τοποθετήσουν ένα υψηλότερο φορτίο " +"στον κεντρικό υπολογιστή σας" + +msgid "Here are some standard acceleration profiles:" +msgstr "Εδώ είναι μερικά τυποποιημένα σχεδιαγράμματα επιτάχυνσης:" + +msgid "Medium acceleration" +msgstr "Μέση επιτάχυνση" + +msgid "High acceleration" +msgstr "Υψηλή Επιτάχυνση" + +msgid "Guest Users" +msgstr "Επισκέπτες" + +msgid "Expires after:" +msgstr "Λήγει μετά:" + +msgid "Clear Saved Pages" +msgstr "Καθαρισμός αποθηκευμένων σελίδων" + +msgid "Status: Inactive" +msgstr "Κατάσταση: Ανενεργό" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ απενεργοποιημένο" + +msgid "Status: Active" +msgstr "Κατάσταση: Ενεργό" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ ενεργοποιήθηκε" + +msgid "Status: Not Installed" +msgstr "Κατάσταση: Μη Εγκατεστημένο" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ απεγκαταστάθηκε" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Κατάσταση: Χρειάζεται Αναβάθμιση (Ανενεργό)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Κατάσταση: Ασυμβίβαστο Plugin (Ανενεργό)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Κατάσταση: Ανενεργό (Χρειάζεται να ρυθμιστεί)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ χρειάζεται ρύθμιση" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ διαγραφτηκε" + +msgid "Warning!" +msgstr "Προειδοποίηση!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Θέλετε πραγματικά να απεγκαταστήσετε το __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Αυτό το πρόσθετο θα αποεγκατασταθεί, αλλά τα αρχεία του θα κρατηθούν έτσι ώστε μπορείτε να " +"το επανατοποθετήσετε." + +msgid "Yes" +msgstr "Ναι" + +msgid "No" +msgstr "Όχι" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Θέλετε πραγματικά να διαγράψετε το __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Αυτό το πρόσθετο θα αποεγκατασταθεί και τα αρχεία του θα διαγραφούν" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "Eκτός Λειτουργίας(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "Ενημερωμένο(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "Μη Εγκατεστημένο(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "Απαιτείται αναβάθμιση(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "ασυμβίβαστο(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Αποτυχία ολοκληρωτικής διαγραφής __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Πρόσθετα Γκαλερί" + +msgid "Get More Plugins" +msgstr "Πάρτε περισσότερα πρόσθετα" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Θέλετε περισσότερα χαρακτηριστικά; Νέα πρόσθετα είναι μόνο ένα πάτημα μακριά. Απλά πατήστε " +"τον σύνδεσμο %s." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Τα χαρακτηριστικά γνωρίσματα της γκαλερί έρχονται ως χωριστά plugins. Μπορείτε να " +"μεταφορτώσετε και να εγκαταστήσετε plugins για να προσθέσετε περισσότερα χαρακτηριστικά " +"γνωρίσματα στη γκαλερί σας, ή μπορείτε να θέσετε εκτός λειτουργίας τα χαρακτηριστικά " +"γνωρίσματα εάν δεν θέλετε να τα χρησιμοποιήσετε. Προκειμένου να χρησιμοποιηθεί ένα " +"χαρακτηριστικό γνώρισμα, πρέπει να το εγκαταστήσετε, να το διαμορφώσετε (εάν είναι " +"απαραίτητο) και να το ενεργοποιείσετε. Εάν δεν επιθυμείτε να χρησιμοποιήσετε ένα " +"χαρακτηριστικό γνώρισμα, μπορείτε να το απενεργοποιήσετε." + +msgid "Plugin Name" +msgstr "Όνομα Πρόσθετου" + +msgid "Installed" +msgstr "Εγκατεστημένο" + +msgid "Version" +msgstr "Έκδοση" + +msgid "Actions" +msgstr "Ενέργειες" + +msgid "help" +msgstr "Βοήθεια" + +#, c-format +msgid "Screenshot for %s" +msgstr "Στιγμιότυπο Οθόνης για %s" + +msgid "Incompatible plugin!" +msgstr "Ασυμβίβαστο plugin!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Core API Ζητούμενο: %s (διαθέσιμο: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Plugin API Ζητούμενο: %s (διαθέσιμο: %s)" + +msgid "configure" +msgstr "ρύθμιση" + +msgid "up to date" +msgstr "Ενημερωμένο" + +msgid "upgrade required" +msgstr "Απαιτείται Αναβάθμιση" + +msgid "not installed" +msgstr "Μη Εγκατεστημένο" + +msgid "incompatible" +msgstr "Ασυμβίβαστο" + +msgid "Repository" +msgstr "Χώρος Αποθήκευσης" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Παρακαλούμε σιγουρευτείτε ότι η σύνδεση με το διαδίκτυό σας είναι σωστά ρυθμισμένη ή " +"προσπαθήστε πάλι αργότερα." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Απέτυχε να ανιχνευτεί η κατάσταση από το plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Το τοπικό αντίγραφό της αποθήκης ήταν σπασμένο και έχει διορθωθεί. Παρακαλώ ξανακατεβάστε " +"τον κατάλογο plugin." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Απέτυχε το κατέβασμα του %s plugin επειδή τα ακόλουθοι αρχεία/κατάλογοι δεν μπόρεσαν να " +"τροποποιηθούν:" + +msgid "The repository index has been successfully updated." +msgstr "Ο κατάλογος του χώρου αποθήκευσης έχει ενημερωθεί με επιτυχία." + +msgid "All plugins are already up-to-date." +msgstr "Όλα τα plugins είναι ήδη ενημερωμένα." + +#, c-format +msgid "%s plugin updated." +msgstr "%s plugin ενημερώθηκε." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"Καμία προσωπική πληροφορία για σας ή την εγκατάσταση της Γκαλερί σας δεν αποστέλνεται στον " +"server της Γκαλερί οποιαδήποτε στιγμή." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Κατεβάστε και εγκαταστήστε καινούργια πρόσθετα γρήγορα και εύκολα. Αν αποφασίσετε ότι δεν " +"θέλετε ένα πρόσθετο, μπορείτε να το διαγράψετε από την Γκαλερί. Υπάρχουν διάφορα πρόσθετα τα " +"οποία μπορείτε να διαλέξετε ποια θέλετε να χρησιμοποιήσετε (μπορείτε να τα χρησιμοποιήσετε " +"όλα μαζί). Αφού διαλέξετε ποια θέλετε να χρησιμοποιήσετε, περιοδικά κατεβάστε την λίστα με " +"τα τελευταία πρόσθετα για να βρείτε τις διαθέσιμες αναβαθμίσεις %s Σε αργές συνδέσεις αυτό " +"μπορεί να πάρει ένα ή δύο λεπτά." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Επίσημα δημοσιευμένα plugin της Γκαλερί (%sπροτεινόμενα%s)" + +#, c-format +msgid "last updated on %s" +msgstr "Τελευταία ενημέρωση στις %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Πειραματικά Πρόσθετα της Γκαλερί (%sνέα χαρακτηριστικά γνωρίσματα, μπορεί να έχουν σφάλματα%" +"s) " + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Plugins Κοινότητας (%sχρησιμοποιήσε τα με δικό σου ρίσκο!%s)" + +msgid "Repository Error" +msgstr "Σφάλμα χώρου αποθήκευσης" + +msgid "You must select at least one repository." +msgstr "Πρέπει να διαλέξετε τουλάχιστον ένα αποθηκευτικό χώρο" + +msgid "Ok" +msgstr "ΟΚ" + +msgid "Configure your Gallery" +msgstr "Ρύθμιση Γκαλερί" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Πριν μπορέσετε να συνεχίσετε, πρέπει να αλλάξετε κάποια δικαιώματα για να μπορέσει η Γκαλερί " +"να εγκαταστήσει πρόσθετα. Είναι εύκολο. Απλά κάντε το πιο κάτω σε ένα shell ή μέσο ftp." + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Άν έχετε πρόβλημα να αλλάξετε δικαιώματα, ζητήστε την βοήθεια του διαχειριστή. Όταν " +"διορθώσετε τα δικαιώματα, πατήστε το κουμπί Συνέχισε για να προχωρήσετε." + +msgid "Continue" +msgstr "Συνέχισε" + +msgid "Download Plugin List" +msgstr "Κατέβασμα λίστας Plugin" + +msgid "Show Repository List" +msgstr "Προβολή Λίστας Χώρου Αποθήκευσης" + +msgid "Upgrade Gallery" +msgstr "Αναβάθμιση Γκάλερι" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Μια νέα έκδοση της Γκαλερί είναι διαθέσιμη, αλλά δεν μπορεί να αναβαθμιστεί μέσω αυτής της " +"διεπαφής. Η αναβάθμιση μπορεί να κάνει μερικά από τα τρέχοντα πρόσθετα σας να σταματήσουν να " +"δουλεύουν, αλλά άλλα που στηρίζονται στα χαρακτηριστικά γνωρίσματα της νέας έκδοσης μπορούν " +"να διατεθούν. Εδώ είναι τα συνιστώμενα βήματα για την αναβάθμιση:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sΚατέβασμα%s Γκαλερί core" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Διαβάστε τις %sοδηγίες αναβάθμισης%s και εκτελέστε την αναβάθμιση" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Τα ασυμβίβαστα πρόσθετα είναι μαρκαρισμένα με θαυμαστικό." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Μια νέα έκδοση core module είναι διαθέσιμη. Μπορεί να υπάρξουν plugins που είναι ασυμβίβαστα " +"με το εγκατεστημένο core module, τα οποία δεν παρουσιάζονται εδώ. Μπορείτε να δείτε την %" +"sολοκληρωμένη λίστα%s των plugins, συμπεριλαμβανομένων ασυμβίβαστων, οι οποίοι είναι " +"μαρκαρισμένοι με μια κόκκινη εικόνα." + +msgid "upgrade available" +msgstr "Διαθέσιμη αναβάθμιση" + +msgid "locked" +msgstr "κλειδωμένο" + +msgid "Theme Name" +msgstr "Όνομα Θέματος" + +msgid "Module Name" +msgstr "Όνομα Module" + +msgid "Latest" +msgstr "Πρόσφατα" + +msgid "Locked Plugin" +msgstr "Κλειδωμένο Plugin" + +msgid "Incompatible Plugin" +msgstr "Ασυμβίβαστο Plugin" + +msgid "Upgrade Available" +msgstr "Διαθέσιμη Αναβάθμιση " + +msgid "download" +msgstr "Κατέβασμα" + +msgid "modify" +msgstr "επεξεργασία" + +msgid "Upgrade All Plugins" +msgstr "Αναβάθμιση όλων των Plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Η Γκαλερί μπορεί να αναβαθμίσει αυτόματα τα θέματα και τα modules στην τελευταία διαθέσιμη " +"έκδοση. Κανένα νέο plugin δεν θα μεταφορτωθεί." + +msgid "Upgrade All" +msgstr "Αναβάθμιση όλων" + +#, c-format +msgid "Download %s" +msgstr "Κατέβασμα %s" + +msgid "No packages have been selected." +msgstr "Δεν εγκαταστάθηκε κανένα πακέτο." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Κατεβάστε ένα πακέτο για να μπορέσετε να χρησιμοποιήσετε αυτό το πρόσθετο. Μπορείτε να " +"αναβαθμίσετε με την επιλογή μιας νεώτερης έκδοσης της συσκευασίας. Οι γλωσσικές συσκευασίες " +"είναι προαιρετικές, πρέπει μόνο να μεταφορτώσετε αυτές που θέλετε να χρησιμοποιήσετε στην " +"γκαλερί σας." + +msgid "Base Packages" +msgstr "Βασικά Πακέτα" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: έκδοση %s (κατασκευή %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: έκδοση %s (κατασκευή %s) %sδεν υποστηρίζεται υποβάθμιση%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sΤρέχον εγκατεστημένη%s: έκδοση %s (κατασκευή %s)" + +msgid "Language Packages" +msgstr "Γλωσσικά πακέτα" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%sεπιλογή όλων%s%sκαμία επιλογή%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s έκδοση %s (αναβάθμιση από %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s έκδοση %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s έκδοση %s (%sνεώτερη έκδοση %s εγκαταστήθηκε%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s έκδοση %s (τρέχον εγκατεστημένη)" + +msgid "No compatible language packages available" +msgstr "Δεν βρέθηκαν διαθέσιμα συμβατά γλωσσικά πακέτα" + +msgid "You must select a base package before choosing language packs." +msgstr "Πρέπει να διαλέξετε ένα βασικό πακέτο για να διαλέξετε γλωσσικό πακέτο." + +msgid "Update" +msgstr "Ενημέρωση" + +msgid "Gallery Themes" +msgstr "Θέματα Γκαλερί" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Το θέμα ενεργοποιήθηκε %s με επιτυχία" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Το θέμα απενεργοποιήθηκε %s με επιτυχία" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Το θέμα εγκαταστάθηκε %s με επιτυχία" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Το θέμα απεγκαταστάθηκε %s με επιτυχία" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Το θέμα αναβαθμίστηκε %s με επιτυχία" + +msgid "Successfully saved default album settings" +msgstr "Οι προεπιλεγμένες ρυθμίσεις άλπουμ αποθηκεύτικαν με επιτυχία." + +msgid "Restored theme settings" +msgstr "Ανάκτιση Ρυθμίσεων Θέματος" + +msgid "Defaults" +msgstr "Προεπιλογές" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Αυτές είναι οι προεπιλεγμένες ρυθμίσεις προβολής για τα άλπουμς στην γκαλερί σας. Το κάθε " +"άλπουμ μπορεί να έχει τις δικές του ρυθμίσεις." + +msgid "Default sort order" +msgstr "Προεπιλεγμένη Ταξινόμιση" + +msgid "with" +msgstr "με" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Νέα Άλπουμς" + +msgid "Save Defaults" +msgstr "Αποθήκευση Προεπιλογών" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s Ρυθμίσεις Θέματος" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Αυτές είναι οι προεπιλεγμένες γενικές ρυθμίσεις για το θέμα. Μπορούν να αλλαχθούν στο " +"επίπεδο άλπουμ." + +msgid "Available" +msgstr "Διαθέσιμο" + +msgid "Choose a block" +msgstr "Διάλεξε Μπλοκ" + +msgid "Selected" +msgstr "Επιλεγμένο" + +msgid "Remove" +msgstr "Αφαίρεση" + +msgid "Move Up" +msgstr "Μετακίνηση προς τα πάνω" + +msgid "Move Down" +msgstr "Μετακίνηση προς τα κάτω" + +msgid "Parameter" +msgstr "Παράμετρος" + +msgid "Value" +msgstr "Αξία" + +msgid "There are no settings for this theme" +msgstr "Δεν υπάρχουν ρυθμίσεις γι' αυτό το θέμα" + +msgid "Save Theme Settings" +msgstr "Αποθήκευση Ρυθμίσεων Θέματος" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "Εργαλειοθήκη Γραφικών" + +msgid "Order" +msgstr "Ταξινόμηση" + +msgid "up" +msgstr "πάνω" + +msgid "down" +msgstr "κάτω" + +msgid "User Management" +msgstr "Διαχείριση Χρηστών" + +#, c-format +msgid "Removed user '%s'" +msgstr "Αφαιρέθηκε ο χρήστης '%s'" + +#, c-format +msgid "Created user '%s'" +msgstr "Δημιουργήθηκε ο χρήστης '%s'" + +#, c-format +msgid "Modified user '%s'" +msgstr "Τροποποιήθηκε ο χρήστης '%s'" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "" +msgstr[1] "" + +msgid "Edit User" +msgstr "Επεξεργασία Χρήστη" + +msgid "You cannot delete yourself!" +msgstr "Δεν μπορείς να διαγράψεις τον εαυτό σου!" + +msgid "You cannot delete the special guest user." +msgstr "Δεν μπορείς να διαγράψεις τον ειδικό επισκέπτη." + +msgid "Edit User (by list)" +msgstr "Επεξεργασία Χρήστη (κατά λίστα)" + +msgid "Locked" +msgstr "Κλειδωμένο" + +msgid "Failed Logins" +msgstr "Αποτυχημένες Συνδέσεις" + +msgid "Thumbnails" +msgstr "Μικρογραφίες" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Η Γκαλερί μπορεί να δημιουργήσει μικρογραφίες κατά το ανέβασμα των φωτογραφιών σας, ή να τις " +"δημιουργήσει την πρώτη φορά που θα θέλετε να δείτε την μικρογραφία. Όποιο τρόπο και να " +"διαλέξετε, η μικρογραφία θα δημιουργηθεί μια φορά και θα αποθηκευτεί. Αν την δημιουργήσετε " +"κατά το ανέβασμα της φωτογραφίας, θα πάρει περισσότερο χρόνο το ανέβασμα αλλά θα κάνει την " +"πρώτη προβολή των άλπουμ πιο γρήγορη." + +msgid "Create thumbnails now" +msgstr "Δημιουργία Μικρογραφιών Τώρα" + +msgid "This is a test email from Gallery2" +msgstr "Αυτό είναι ένα δοκιμαστικό Ηλ. Μήνυμα (email) από την Gallery2" + +msgid "Edit Conflict!" +msgstr "Επεξεργασία Σύγκρουσης!" + +msgid "Security Violation" +msgstr "Παραβίαση Ασφάλειας" + +msgid "Database Error" +msgstr "Σφάλμα Βάσης Δεδομένων" + +msgid "Platform Error" +msgstr "Σφάλμα Πλατφόρμας" + +msgid "Authentication Failure" +msgstr "Η Πιστοποίηση Απέτυχε" + +msgid "Error" +msgstr "Σφάλμα" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Η αλλαγή σας δεν μπορεί να ολοκληρωθεί επειδή κάποιος άλλος έχει κάνει μια συγκρουόμενη " +"αλλαγή στο ίδιο στοιχείο. Χρησιμοποιήστε το πίσω κουμπί στον περιηγητή σας(browswer) για να " +"επιστρέψετε στη σελίδα που ήσασταν, κατόπιν ξαναφόρτωμα εκείνη την σελίδα και " +"δοκιμάστε ξανά την αλλαγή σας." + +msgid "Go back and try again" +msgstr "Πήγαινε πίσω και δοκίμασε ξανά" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Εάν αυτό το πρόβλημα συμβαίνει επανειλημμένα, μπορεί να είναι λόγω καταστροφής στην μνήμη. " +"Οι διαχειριστές μπορούν να καθαρίσουν την μνήμη." + +msgid "Clear the cache" +msgstr "Καθαρισμός cache" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"Εναλλακτικά, μπορείτε να επιστρέψετε στην κύρια σελίδα της Γκαλερί και να επαναλάβετε την " +"περιήγηση." + +msgid "The action you attempted is not permitted." +msgstr "Η ενέργεια που προσπαθήσατε δεν επιτρέπεται." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Η αλλαγή σας δεν μπορεί να ολοκληρωθεί λόγω απώλειας στοιχείων συνεδρίας. Παρακαλώ " +"προσπαθήστε ξανά. Εάν ακόμη δεν λειτουργεί, δοκιμάστε ξανά αφού αποσυνδεθείτε και συνδεθείτε " +"ξανά." + +msgid "An error has occurred while interacting with the database." +msgstr "Δημιουργήθηκε ένα σφάλμα αλληλεπιδρώντας με τη βάση δεδομένων." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "Δημιουργήθηκε ένα σφάλμα αλληλεπιδρώντας με την πλατφόρμα." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Η ακριβής φύση του λάθους πλατφορμών είναι άγνωστη. Μια κοινή αιτία είναι οι ανεπαρκείς " +"άδειες συστημάτων αρχείων. Αυτό μπορεί να συμβεί εάν εσείς ή το webhost σας αλλάξατε κάτι " +"στο σύστημα αρχείων, π.χ. με την αποκατάσταση των στοιχείων από ένα στήριγμα(backup)." + +msgid "Item not found." +msgstr "Δεν βρέθηκε αρχείο" + +msgid "An error has occurred." +msgstr "Προέκυψε ένα σφάλμα." + +msgid "Back to the Gallery" +msgstr "Πίσω στην Γκαλερί" + +msgid "Error Detail" +msgstr "Λεπτομέρειες σφάλματος" + +msgid "System Information" +msgstr "Πληροφορίες Συστήματος" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Δεν υπάρχει ενεργοποιημένο οποιοδήποτε κουτί εργαλείων γραφικής παράστασης που μπορεί να " +"χειριστεί τις εικόνες JPEG. Εάν προσθέτετε τις εικόνες, πιθανώς να μην έχετε οποιεσδήποτε " +"μικρογραφίες." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" + +msgid "Add Sub-Album" +msgstr "Προσθήκη υπο-άλπουμ" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Το όνομα αυτού του άλπουμ στο σκληρό σας δίσκο. Πρέπει να είναι μοναδικό σε αυτό το άλπουμ. " +"Χρησιμοποιήστε μόνο αλφανουμερικούς χαρακτήρες χρήσης, υπογραμμίσης(_) ή παύλα(-). Θα είστε " +"σε θέση να το μετονομάσετε αργότερα." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Το όνομα περιέχει μη έγκυρους χαρακτήρες. Παρακαλούμε επιλέξτε ένα άλλο." + +msgid "You must enter a name for this album." +msgstr "Πρέπει να ορίσετε όνομα γι' αυτό το άλπουμ" + +msgid "The name you entered is already in use. Please enter another." +msgstr "Το όνομα που δώσατε χρησιμοποιείται ήδη. Παρακαλούμε επιλέξτε ένα άλλο." + +msgid "This is the album title." +msgstr "Τίτλος Άλπουμ" + +msgid "This is the album summary." +msgstr "Περίληψη Άλπουμ" + +msgid "Keywords are not visible, but are searchable." +msgstr "Οι λέξεις κλειδιά δεν είναι ορατές, αλλά είναι εξερευνήσιμες." + +msgid "This is the long description of the album." +msgstr "Μακροσκελής Περιγραφή Αρχείου." + +msgid "Create" +msgstr "Δημιουργία" + +msgid "Upload Complete" +msgstr "Ολοκληρώθηκε το ανέβασμα" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Προστέθηκε με επιτυχία το %d αρχείο." +msgstr[1] "Προστέθηκαν με επιτυχία τα %d αρχεία." + +msgid "No files added." +msgstr "Δεν προστέθηκε κανένα αρχείο." + +#, c-format +msgid "Added %s" +msgstr "Προστέθηκε %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Απότυχε να προστεθεί το %s" + +msgid "Add more files" +msgstr "Προσθέστε περισσότερα αρχεία" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Ο webserver σας είναι ρυθμισμένος για να απαγορεύει το ανέβασμα αρχείων από τον περιηγητή " +"σας. Επικοινωνήστε με τον διαχειριστή του συστήματος σας για βοήθεια." + +msgid "Upload files directly from your computer." +msgstr "Ανεβάστε αρχεία από τον υπολογιστή σας." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Δώστε την πλήρη διαδρομή του αρχείου και προαιρετικά ένα τίτλο στα κουτιά πιο κάτω." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Σημείωση: Μπορείτε να ανεβάσετε μέχρι %s κάθε φορά. Αν θέλετε να ανεβάσετε " +"περισσότερα, πρέπει να ανεβάσετε τα αρχεία ξεχωριστά, να χρησιμοποιήσετε διαφορετικό τρόπο " +"ανεβάσματος, ή να ζητήσετε από τον διαχειριστή του συστήματος σας να επιτρέψει μεγαλύτερα " +"ανεβάσματα." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Σημείωση: Μπορείτε να ανεβάσετε μέχρι %s κάθε φορά. Κανένα μεμονωμένο αρχείο δεν " +"μπορεί να είναι μεγαλύτερο από %s. Αν θέλετε να ανεβάσετε περισσότερα, πρέπει να ανεβάσετε " +"τα αρχεία ξεχωριστά, να χρησιμοποιήσετε διαφορετικό τρόπο ανεβάσματος, ή να ζητήσετε από τον " +"διαχειριστή του συστήματος σας να επιτρέψει μεγαλύτερα ανεβάσματα." + +msgid "More Upload Boxes..." +msgstr "Περισσότερα κουτιά ανεβάσματος..." + +msgid "Set item titles from:" +msgstr "Καθορίστε τους τίτλους των αρχείων από:" + +msgid "Assign caption to:" +msgstr "Ορίστε τον τίτλο σε:" + +msgid "No Thumbnail" +msgstr "Καμία μικρογραφία" + +msgid "Delete Items" +msgstr "Διαγραφή Αρχείου" + +msgid "No items were selected for deletion" +msgstr "Δεν επιλέγχθηκε κανένα αρχείο για διαγραφή" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to delete" +msgstr "Το άλπουμ δεν περιέχει κανένα αρχείο για διαγραφή" + +msgid "Choose the items you want to delete" +msgstr "Επιλέξτε τα αρχεία που θέλετε να διαγράψετε" + +#, c-format +msgid "(page %d of %d)" +msgstr "(σελίδα %d από %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Τα αρχεία που είναι διαλεγμένα εδώ θα παραμείνουν διαλεγμένα κατά την μετακίνηση σε άλλες " +"σελίδες" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "(στοιχεία)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "" +msgstr[1] "" + +msgid "(empty album)" +msgstr "(κενό άλπουμ)" + +msgid "Check All" +msgstr "Επιλογή όλων" + +msgid "Check None" +msgstr "Επιλογή καμία" + +msgid "Invert" +msgstr "Αναστρέψτε" + +msgid "Previous Page" +msgstr "Προηγούμενη σελίδα" + +msgid "Next Page" +msgstr "Επόμενη Σελίδα" + +msgid "Deletion Complete" +msgstr "Η Διαγραφή ολοκληρώθηκε" + +msgid "Item successfully deleted" +msgstr "Το αρχείο διαγράφτηκε με επιτυχία." + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Είστε σίγουροι ότι θέλετε οπωσδήποτε να διαγράψετε το %s;" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "Δεν υπάρχει αναίρεση!" + +msgid "There was a problem processing your request." +msgstr "Υπήρξε ένα πρόβλημα κατά την επεξεργασία της αίτησης σας." + +msgid "Sort order" +msgstr "Ταξινόμιση" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Αυτό δηλώνει την ταξινόμηση του άλμπουμ. Εφαρμόζεται σε όλα τα υπάρχοντα αρχεία και " +"οποιαδήποτε νέα αρχεία ανεβάσετε." + +msgid "Apply to all subalbums" +msgstr "Εφαρμογή σε όλα τα υπο-άλπουμς" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" +"Το κάθε άλπουμ χρειάζεται μια μικρογραφία. Δώστε το προεπιλεγμένο μέγεθος σε pixels εδώ." + +msgid "You must enter a number (greater than zero)" +msgstr "Πρέπει να εισαγάγετε ένα αριθμό (μεγαλύτερο από το μηδέν)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Χρησιμοποιήστε αυτή την μικρογραφία σε όλα τα υπο-άλπουμς" + +msgid "Resized Images" +msgstr "Φωτογραφίες άλλου μεγεθους" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Το κάθε αρχείο στο άλπουμ σας μπορεί να έχει διαφορετικά μεγέθη. Προσδιορίστε τα " +"προεπιλεγμένο μέγεθη εδώ." + +msgid "Active" +msgstr "Ενεργό" + +msgid "Target Size (pixels)" +msgstr "Μέγεθος (pixels)" + +msgid "You must enter a valid size" +msgstr "Πρέπει να εισαγάγετε ένα έγκυρο μέγεθος" + +msgid "Use these target sizes in all subalbums" +msgstr "Χρησιμοποίησε αυτό το μέγεθος σε όλα τα υπο-άλπουμς" + +msgid "Apply settings to existing items" +msgstr "Εφαρμογή Ρυθμίσεων στα υπάρχοντα αρχεία" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Οι ρυθμίσεις μικρογραφιών και άλλων μεγεθών είναι για όλα τα νέα αρχεία. Για να εφαρμόσετε " +"αυτές τις ρυθμίσεις σε όλα τα αρχεία στο άλμπουμ σας, επιλέξτε το ανάλογο κουτί. " +"Συμπεριλαμβανομένων και των υπό-άλμπουμ θα εφαρμοστεί στις ρυθμίσεις του κάθε άλμπουμ στις " +"μικρογραφίες/άλλα μεγέθη, οι οποίες μπορεί να είναι διαφορετικές από τις πιο πάνω. Η " +"κατασκευή των φωτογραφιών τώρα παίρνει μεγαλύτερο χρόνο, αλλά εξοικονομεί χρόνο στην " +"κατασκευή και να αποθηκεύσει το κάθε αρχείο κατά την πρώτη προβολή του αρχείου." + +msgid "Apply album setting to thumbnails" +msgstr "Εφαρμόστε τις ρυθμίσεις του άλπουμ στην μικρογραφία" + +msgid "... and for all subalbums" +msgstr "...και σε όλα τα υπο-άλπουμς" + +msgid "Build thumbnails too" +msgstr "Κατασκευάστε και τις μικρογραφίες" + +msgid "Apply album setting to resized images" +msgstr "Εφαρμόστε τις ρυθμίσεις του άλπουμ στις φωτογραφίες διαφορετικού μεγέθους" + +msgid "Build resizes too" +msgstr "Κατασκευαστε και τις φωτογραφίες διαφορετικού μεγεθους" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Για να μπορέσει η Γκαλερί να εμφανίσει αυτή την κινούμενη εικόνα, πρέπει να γνωρίζει το " +"πλάτος και το μέγεθος της. Αν εγκαταστήσατε εργαλειοθήκη γραφικών που να υποστηρίζει τύπους " +"κινούμενων εικόνων (animations), τότε αυτές οι τιμές μπορεί να έχουν ήδη οριστεί. Αν όχι, " +"μπορεί να ορίστηκαν στο 0. Αν δεν δώσετε τις σωστές τιμές εδώ, η κινούμενη εικόνα μπορεί να " +"εμφανιστεί διαστρεβλωμένη στον περιηγητή σας. Σημειώστε ότι με το να αλλάξετε αυτές τις " +"τιμές δεν αλλάζει η ίδια η κινούμενη εικόνα γι' αυτό οποιοσδήποτε πειραματισμός δεν " +"θα προκαλέσει ζημία." + +msgid "Width" +msgstr "Πλάτος" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Πρέπει να εισαγάγετε μεγαλύτερο ή ίσο με το 0" + +msgid "Height" +msgstr "Ύψος" + +msgid "There were errors saving some items" +msgstr "Υπήρξαν σφάλματα στην αποθήκευση κάποιων αρχείων" + +msgid "There were errors saving all items" +msgstr "Υπήρξαν σφάλματα στην αποθήκευση όλων των αρχείων" + +msgid "Successfully saved all items" +msgstr "Όλα τα αρχεία αποθηκεύτηκαν με επιτυχία." + +msgid "This album contains no items" +msgstr "Το άλπουμ δεν περιέχει κανένα αρχείο" + +msgid "Saved successfully." +msgstr "Αποθηκεύτηκε με επιτυχία." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "Το αρχείο τροποποιήθηκε από κάποιον άλλο την ίδια στιγμή. Οι αλλαγές σας χάθηκαν." + +msgid "You do not have permissions to modify this item." +msgstr "Δεν έχετε δικαιώματα επεξεργασίας αυτού του αρχείου." + +msgid "Save and Done" +msgstr "Φυλάξτε και τελειώσατε" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Φυλάξτε και τροποποιήστε το προηγούμενο %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Φυλάξτε και τροποποιήστε το επόμενο %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Το όνομα αυτού του αρχείου στον δίσκο σας. Πρέπει να είναι μοναδικό σ' αυτό το άλμπουμ. " +"Χρησιμοποιήστε αλφανουμερικούς χαρακτήρες, υπογράμμιση (_) ή παύλες (-)." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Το όνομα σας περιέχει άκυρους χαρακτήρες. Διαλέξτε ένα άλλο." + +msgid "You must enter a name for this item." +msgstr "Πρέπει να εισαγάγετε ένα όνομα γι' αυτό το αρχείο" + +msgid "The name you entered is already in use. Please choose another." +msgstr "Το όνομα που διαλέξατε χρησιμοποιείται ήδη. Διαλέξτε ένα άλλο" + +msgid "The title of this item." +msgstr "Τίτλος Αρχείου" + +msgid "The root album must have a title." +msgstr "Το κυρίος άλπουμ πρέπει να έχει ένα τίτλο" + +msgid "The summary of this item." +msgstr "Περίληψη Αρχείου" + +msgid "This is the long description of the item." +msgstr "Μακροσκελής Περιγραφή Αρχείου." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Ημερομηνία και Ώρα" + +msgid "Set the date and time when this image was captured." +msgstr "Δώστε την ημερομηνία και την ώρα που βγάλατε αυτή την φωτογραφία" + +msgid "Set the date and time to be displayed for this item." +msgstr "Δώστε την ημερομηνία και την ώρα γι' αυτό το αρχείο" + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Δώστε την ημερομηνία και την ώρα γι' αυτό %s." + +msgid "Date:" +msgstr "Ημερομηνία:" + +msgid "Time:" +msgstr "Ώρα:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Χρησιμοποιήστε την αρχική ημερομηνία και το χρόνο σύλληψης από τις πληροφορίες αρχείων (π.χ. " +"ετικέττα Exif): " + +msgid "You must enter a valid date and time" +msgstr "Πρέπει να εισαγάγετε μια έγκυρη ημερομηνία και ώρα" + +msgid "Thumbnail" +msgstr "Μικρογραφία" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Δηλώστε το μέγεθος της μικρογραφίας. Η μεγαλύτερη μεριά της μικρογραφίας δεν θα είναι " +"μεγαλύτερη από αυτή την τιμή. Αφήστε κενό αν δεν θέλετε καμία μικρογραφία." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Δεν υπάρχει ενεργοποιημένη καμία εργαλειοθήκη που να υποστηρίζει αυτό τον τύπο φωτογραφίας, " +"γι' αυτό δεν μπορεί να δημιουργηθεί ή να επεξεργασθεί μικρογραφία." + +msgid "Unable to create a thumbnail for this item" +msgstr "Αδυναμία δημιουργίας μικρογραφίας γι' αυτό το αρχείο" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Για να μπορέσει η Γκαλερί να προβάλει αυτή την ταινία όπως πρέπει, χρειάζεται να γνωρίζει το " +"πλάτος και το ύψος της ταινίας. Αν έχετε εγκαταστήσει μία εργαλειοθήκη γραφικών η οποία " +"μπορεί να χειριστεί ταινίες, τότε ίσως οι τιμές αυτές να έχουν ήδη οριστεί. Αν όχι, μπορεί " +"να είναι ορισμένες σε 0. Αν δεν δώσετε τις σωστές τιμές εδώ, η ταινία μπορεί να εμφανιστεί " +"διαστρεβλωμένη στον περιηγητή σας. Σημειώστε ότι αλλάζοντας αυτές τις τιμές δεν " +"αλλάζει η ταινία γι' αυτό ο οποιοσδήποτε πειραματισμός δεν θα βλάψει." + +msgid "Resized Photos" +msgstr "Φωτογραφίες άλλου μεγεθους" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Αυτά τα μεγέθη είναι εκδόσεις άλλων μεγεθών του πρωτότυπου που θα θέλατε να είναι διαθέσιμα " +"για εμφάνιση." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Δεν υπάρχει ενεργοποιημένη καμία εργαλειοθήκη που να υποστηρίζει αυτό τον τύπο φωτογραφίας, " +"γι' αυτό δεν μπορεί να δημιουργηθούν ή να επεξεργασθούν φωτογραφίες άλλων μεγεθών." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Μπορείτε να διαλέξετε πιο κομμάτι της φωτογραφίας θα χρησιμοποιηθεί για μικρογραφία. Αυτό " +"δεν θα έχει καμία επίδραση στις φωτογραφίες διαφορετικού μεγέθους ή στις προτώτυπες " +"φωτογραφίες." + +msgid "Aspect Ratio: " +msgstr "Αναλογίας Μεγέθους" + +msgid "Crop" +msgstr "Ξάκρισμα" + +msgid "Undo Changes" +msgstr "Αναίρεση αλλαγών" + +msgid "Reset to default" +msgstr "Επαναφορά στις προεπιλογές" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Δεν υπάρχει καμία εργαλειοθήκη γραφικών ενεργοποιημένη που να υποστηρίζει αυτό τον τύπο " +"φωτογραφίας, γι' αυτό δεν μπορεί να ξακριστεί η μικρογραφία." + +msgid "Rotate" +msgstr "Περιστροφή" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Μπορείτε να περιστρέψετε την φωτογραφία μόνο κατά 90 μοίρες" + +msgid "CC 90°" +msgstr "Αριστερά 90°" + +msgid "180°" +msgstr "Περιστροφή 180°" + +msgid "C 90°" +msgstr "Δεξιά 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Δεν υπάρχει καμία εργαλειοθήκη γραφικών ενεργοποιημένη που να υποστηρίζει αυτό τον τύπο " +"φωτογραφίας, γι' αυτό δεν μπορεί περιστραφεί η φωτογραφία." + +msgid "Scale" +msgstr "Κλιμάκωση" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Συρρικνώστε ή μεγαλώστε την πρωτότυπη φωτογραφία. Όταν η Γκαλερί κλιμακώνει μια φωτογραφία, " +"διατηρεί την αναλογία διαστάσεων (ύψος προς πλάτος) της πρωτότυπης φωτογραφίας για να " +"αποφύγει οποιαδήποτε διαστρέβλωση. Η φωτογραφία σας θα κλιμακωθεί στο μέγεθος που δώσατε " +"εδώ." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Δεν υπάρχει καμία εργαλειοθήκη γραφικών ενεργοποιημένη που να υποστηρίζει αυτό τον τύπο " +"φωτογραφίας, γι' αυτό δεν μπορεί να κλιμακωθεί η φωτογραφία." + +msgid "You must enter a size" +msgstr "Πρέπει να εισαγάγετε μέγεθος" + +msgid "Preserve Original" +msgstr "Διατήρηση Πρωτότυπου" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Η Γκαλερί δεν τροποποιεί τις πρωτότυπες φωτογραφίες κατά την περιστροφή ή την κλιμάκωση. " +"Δημιουργεί αντίγραφο της φωτογραφίας και δουλεύει με τα αντίγραφα. Αυτό απαιτεί λίγο " +"επιπλέον χώρο στον δίσκο αλλά αποτρέπει την καταστροφή των πρωτότυπων φωτογραφιών. " +"Απενεργοποιώντας αυτή την επιλογή οποιαδήποτε λειτουργία (περιστροφής, κλιμάκωσης, κτλ) θα " +"τροποποιήσει την πρωτότυπη φωτογραφία." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" +"Αυτή είναι μια σύνδεση σε μια άλλη φωτογραφία γι' αυτό δεν μπορείτε να αλλάξετε την πρωτότυπη" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Υπάρχουν συνδέσμοι σ' αυτή την φωτογραφία και δεν μπορείται να αλλάξετε την πρωτότυπη." + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Δεν υπάρχει καμία υποστήριξη εργαλειοθήκης για επεξεργασία της πρωτότυπης γι' αυτό οι " +"λειτουργίες θα εφαρμοσθούν μόνο στα αντίγραφα" + +msgid "Preserve Original Photo" +msgstr "Διατήρηση Πρωτότυπης Φωτογραφίας" + +msgid "Modified Photo" +msgstr "Επεξεργασμένη Φωτογραφία" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Χρησιμοποιείτε αντίγραφο της πρωτότυπης φωτογραφίας το οποίο έχει κλιμακωθεί ή περιστραφεί. " +"Η πρωτότυπη φωτογραφία είναι ακόμη διαθέσιμη, αλλά δεν χρησιμοποιείται πλέον. Οποιεσδήποτε " +"αλλαγές κάνετε θα εφαρμοσθούν στο αντίγραφο." + +msgid "Restore original" +msgstr "Επανακτίστε το πρότυπο" + +msgid "Choose a theme" +msgstr "Επιλέξτε Θέμα" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Τα θέματα ελέγχουν τον τρόπο προβολής και εμφάνισης του άλπουμ. Μπορείτε να διαλέξετε " +"διαφορετικό θέμα για κάθε άλπουμ. Αν δεν διαλέξετε ένα θέμα, θα χρησιμοποιηθεί το %s θέμα " +"που είναι προεπιλεγμένο." + +msgid "Use this theme in all subalbums" +msgstr "Χρησιμοποιήστε αυτό το θέμα σε όλα τα υπο-άλπουμ" + +msgid "Choose Theme" +msgstr "Διαλέξτε Θέμα" + +#, c-format +msgid "Configure the %s theme" +msgstr "Ρύθμισει του θέματος %s" + +msgid "These settings only apply to the theme for this album." +msgstr "Αυτές οι ρυθμίσεις ενεργοποιούνται μόνο στο θέμα γι' αυτό το άλπουμ" + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Χρησιμοποιήστε αυτές τις ρυθμίσεις σε όλα τα υπο-άλπουμς που χρησιμοποιούν το θέμα %s" + +msgid "Album Highlight" +msgstr "Κύριο Σημείο Άλπουμ" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" +"Μπορείτε να κάνετε αυτό το αρχείο μικρογραφία για το γονικό άλπουμ ή όποιοδήποτε άλλο άλπουμ." + +msgid "Highlight for:" +msgstr "Κύριο Σημείο για:" + +msgid "Highlight" +msgstr "Κύριο Σημείο" + +msgid "Move an Item" +msgstr "Μετακίνηση Αρχείου" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to move." +msgstr "Αυτό το άλπουμ δεν περιέχει αρχεία για μετακίνηση" + +msgid "Source" +msgstr "Πηγή" + +msgid "Choose the items you want to move" +msgstr "Επιλέξτε τα αρχεία που θέλετε να μεταφέρετε" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"Ο προορισμός που επιλέγξατε δεν δέχεται υπο-άλπουμ, γι' αυτό όλα υπο-άλπουμ έχουν " +"απεπιλεγχθεί." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Ο προορισμός που επιλέγξατε δέχεται μόνο υπο-άλπουμ, γι' αυτό όλα τα μη άλπουμς έχουν " +"απεπιλεγχθεί." + +msgid "You are not allowed to move this item away from here." +msgstr "Δεν επιτρέπεται να μετακινήσετε αυτό το αρχείο από εδώ." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Δεν επιτρέπεται να μετακινήσετε ένα άλπουμ στον προορισμό που διαλέξατε" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Δεν επιτρέπεται να μετακινήσετε ένα αρχείο στον προορισμό που διαλέξατε" + +msgid "You cannot move an album into its own subtree." +msgstr "Δεν μπορείτε να μετακινήσετε ένα άλπουμ στο δικό του υπο-δέντρο" + +msgid "Destination" +msgstr "Προορισμός" + +msgid "Choose a new album for them" +msgstr "Διαλέξτε ένα νέο άλπουμ γι' αυτά" + +msgid "You don't have the permission to add items in this album" +msgstr "Δεν έχετε δικαίωμα να προσθέσετε αρχεία σ' αυτό το άλπουμ" + +msgid "No destination chosen" +msgstr "Δεν επιλέχθηκε κανένας προορισμός" + +msgid "Move" +msgstr "Μετακίνηση" + +msgid "Successfully moved" +msgstr "Μετακινήθηκε με επιτυχία" + +msgid "Choose a destination album" +msgstr "Επιλέξτε το άλπουμ προορισμού" + +msgid "Permissions" +msgstr "Δικαιώματα" + +msgid "Owner changed successfully" +msgstr "Η αλλαγή ιδιοκτήτη έγινε με επιτυχία" + +msgid "Group permission added successfully" +msgstr "Τα δικαιώματα της ομάδας προστέθηκαν με επιτυχία" + +msgid "User permission added successfully" +msgstr "Τα δικαιώματα του Χρήστη προστέθηκαν με επιτυχία" + +msgid "Group permission removed successfully" +msgstr "Τα δικαιώματα της ομάδας αφαιρέθηκαν με επιτυχία" + +msgid "User permission removed successfully" +msgstr "Τα δικαιώματα του Χρήστη αφαιρέθηκαν με επιτυχία" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Κάθε αρχείο έχει ανεξάρτητο δικό του σύνολο δικαιωμάτων. Αλλάζοντας τα δικαιώματα του " +"γονικού δεν έχει καμία επίδραση στα δικαιώματα του θυγατρικού. Αυτό σας επιτρέπει να " +"περιορίσετε την πρόσβαση στο γονικό στοιχείο αρχείο, αλλά ακόμα χορηγεί την πλήρη πρόσβαση " +"σε αυτό το αρχείο, ή αντίστροφα. Ο αποδοτικότερος τρόπος να χρησιμοποιηθεί αυτό το σύστημα " +"δικαιωμάτων είναι να δημιουργηθούν ομάδες και να οριστούν δικαιώματα σε αυτές. Κατόπιν εάν " +"θέλετε να χορηγήσετε δικαιώματα σε έναν συγκεκριμένο χρήστη, μπορείτε να προσθέσετε (ή να " +"αφαιρέσετε) το χρήστη από την αρμόδια ομάδα. " + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Το αρχείο είναι ιδιοκτησία του χρήστη: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Το αρχείο είναι ιδιοκτησία του χρήστη: %s (%s)" + +msgid "New owner" +msgstr "Νέος ιδιοκτήτης" + +msgid "Change" +msgstr "Αλλαγή" + +msgid "Apply new owner to sub-items" +msgstr "Εφαρμογή νέου ιδιοκτήτη στα υπο-αρχεία" + +msgid "You must enter a user name" +msgstr "Πρέπει να δώσετε όνομα χρήστη" + +msgid "The user name you entered is invalid" +msgstr "Το όνομα χρήστη που καταχωρήσατε είναι μη έγκυρο" + +msgid "Apply changes" +msgstr "Αποθήκευση Αλλαγών" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Αυτό το αρχείο έχει υπο-αρχεία. Οι αλλαγές που κάνετε εδώ μπορούν να εφαρμοστούν ακριβώς σε " +"αυτό το αρχείο, ή μπορείτε να τις εφαρμόσετε σε όλα τα υπο-αρχεία. Σημειώστε ότι η εφαρμογή " +"των αλλαγών στα υπο-αρχεία θα συγχωνεύσει την αλλαγή σας στις υπάρχουσες άδειες των υπο-" +"υποαρχείων και μπορεί να πάρει πολύ χρόνο εάν έχετε πολλά υπο-αρχεία. Είναι αποδοτικότερο να " +"χορηγηθούν οι άδειες στις ομάδες και να προσταφαιρεθούν χρήστες στις ομάδες όποτε είναι " +"δυνατόν. Οι αλλαγές εφαρμόζονται στα υπο-αρχεία εξ ορισμού." + +msgid "Apply to sub-items" +msgstr "Εφαρμογή σε όλα τα υπο-αρχεία" + +msgid "Group Permissions" +msgstr "Δικαιώματα Ομάδας" + +msgid "Group name" +msgstr "Όνομα Ομάδας: " + +msgid "Permission" +msgstr "Δικαιώματα" + +msgid "New Group Permission" +msgstr "Δικαιώματα Νέας Ομάδας" + +msgid "Add Permission" +msgstr "Δώστε δικαιώματα" + +msgid "The permission you chose is invalid" +msgstr "Το δικαίωμα που διαλέξατε είναι μη έγκυρο" + +msgid "The group name you entered is invalid" +msgstr "Η ομάδα που καταχωρήσατε είναι μη έγκυρη" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Η ομάδα έχει ήδη τα δικαιώματα της (ελέγξτε τα υπο-δικαιώματα)" + +msgid "User Permissions" +msgstr "Δικαιώματα Χρήστη" + +msgid "User name" +msgstr "Όνομα Χρήστη" + +msgid "New User Permission" +msgstr "Δικαιώματα Νέου Χρήστη" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Ο χρήστης έχει ήδη αυτό το δικαίωμα (ελέγξτε τα υπο-δικαιώματα)" + +msgid "Reorder Album" +msgstr "Αναταξινόμηση Άλπουμ" + +msgid "Order saved successfully" +msgstr "Η ταξινόμηση αποθηκεύτηκε με επιτυχία" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Αυτό το άλπουμ είναι δηλωμένο για αυτόματη ταξινόμηση, και δεν μπορείτε να αναταξινομήσετε " +"τα αρχεία. Πρέπει να αφαιρέσετε την αυτόματη ταξινόμηση για να μπορέσετε να συνεχίσετε" + +msgid "change" +msgstr "Αλλαγή" + +msgid "Change the order of the items in this album." +msgstr "Αλλάγή ταξινόμησης γι' αυτό το άλπουμ" + +msgid "Move this item" +msgstr "Μετακίνηση Αρχείου" + +msgid "before" +msgstr "πριν" + +msgid "after" +msgstr "μετά" + +msgid "Reorder" +msgstr "Αναταξινόμηση" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"Για να λειτουργήσει κανονικά αυτή η λειτουργία χρειάζεται να είναι ενεργοποιημένη η " +"JavaScript. Από ότι φαίνεται η JavaScript σας είναι απενεργοποιημένη ή δεν υποστηρίζεται απο " +"τον περιηγητή σας. Παρακαλούμε ενεργοποιήστε την JavaScript αλλάζοντας τις ρυθμίσεις του " +"περιηγητή σας, και δοκιμάστε ξανά." + +msgid "Site is temporarily down for maintenance." +msgstr "Η σελίδα είναι προσωρινά ανενεργή για συντήρηση" + +msgid "Admin Login" +msgstr "Σύνδεση Διαχειριστή" + +msgid "Enter a URL" +msgstr "Δώστε ένα σύνδεσμο" + +msgid "Enter some text describing the URL" +msgstr "Δώστε μια περιγραφή για τον σύνδεσμο" + +msgid "Enter an image URL" +msgstr "Δώστε τον σύνδεσμο της εικόνας" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "λίστα" + +msgid "bullet" +msgstr "bullet" + +msgid "url" +msgstr "σύνδεσμος" + +msgid "image" +msgstr "Φωτογραφία" + +msgid "color" +msgstr "χρώμα" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "Σφάλμα Ρυθμίσεων: Ελλειπόν Θέμα" + +msgid "Missing Theme" +msgstr "Ελλειπόν Θέμα" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Αυτή η σελίδα είναι ρυθμισμένη για το θέμα %s, αλλά είτε είναι ανενεργό, μη εγκατεστημένο, ή " +"ασυμβίβαστο." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Αυτό το άλπουμ είναι ρυθμισμένο για το θέμα %s, αλλά είτε είναι ανενεργό, μη εγκατεστημένο, " +"ή ασυμβίβαστο." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Για να διορθώσετε αυτό το πρόβλημα μπορείτε %s να εγκαταστήσετε ή να ενεργοποιήσετε αυτό το " +"θέμα %s ή να επιλέξετε ένα άλλο θέμα προεπιλογής." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Για να διορθώσετε αυτό το πρόβλημα μπορείτε %s να συνδεθείτε ως διαχειριστής %s και μετά %s " +"να εγκαταστήσετε ή να ενεργοποιήσετε αυτό το θέμα %s ή να επιλέξετε ένα άλλο θέμα " +"προεπιλογής." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Για να διορθώσετε αυτό το πρόβλημα μπορείτε είτε %s να διαλέξετε ένα νέο θέμα για το άλπουμ " +"%s ή %s να εγκαταστήσετε ή να ενεργοποιήσετε αυτό το θέμα %s" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Για να διορθώσετε αυτό το πρόβλημα %sεπιλέξτε ένα νέο θέμα γι΄ αυτό το άλμπουμ%s ή %" +"sσυνδεθείτε ως διαχειριστής%s και μετά %sεγκαταστήστε ή ενεργοποιήστε αυτό το θέμα%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Για να διορθώσετε αυτό το πρόβλημα μπορείτε να %sσυνδεθείτε%s και μετά %sνα επιλέξετε ένα " +"νέο θέμα γι' αυτό το άλμπουμ%s ή %sσυνδεθείτε ως διαχειριστής%s και μετά %s εγκαταστήστε ή " +"ενεργοποιήστε αυτό το θέμα%s." + +msgid "Admin Options" +msgstr "Επιλογές Διαχειριστή" + +msgid "User Options" +msgstr "Επιλογές Χρήστη" + +msgid "Password changed successfully" +msgstr "Ο κωδικός σας άλλαξε με επιτυχία" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Πρέπει να δώσετε τον τρέχον κωδικό πρόσβασης σας για να αποδείξετε ότι είστε εσείς, μετά " +"δώστε τον καινούργιο σας κωδικό δύο φορές και φροντίστε να μην κάνετε λαθος." + +msgid "Current Password" +msgstr "Τρέχον κωδικός πρόσβασης" + +msgid "You must enter your current password" +msgstr "Βάλτε τον τρέχον κωδικό σας" + +msgid "Incorrect password" +msgstr "Λανθασμένος κωδικός πρόσβασης" + +msgid "New Password" +msgstr "Νέος κωδικός πρόσβασης" + +msgid "You must enter a new password" +msgstr "Βάλτε ένα νέο κωδικό" + +msgid "Verify New Password" +msgstr "Επιβεβαίωση Νέου Κωδικού" + +msgid "You must enter your new password again!" +msgstr "Βάλτε τον νέο κωδικό ξανά!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Αυτός ο λογαριασμός δεν επιτρέπεται να τροποποιήσει ρυθμίσεις λογαριασμού. Παρακαλούμε " +"επικονωνήστε με τον διαχειριστή της Γκαλερί." + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Ο διαχειριστής έχει κλειδώσει αυτό τον λογαριασμό, αποτρέποντας αλλαγές στις πληροφορίες του " +"λογαριασμού." + +msgid "Login to your account" +msgstr "Σύνδεση στον λογαριασμό σας" + +msgid "Your password has been recovered, please login." +msgstr "Ο Κωδικός πρόσβασης σας έχει ανακτηθεί, παρακαλούμε συνδεθείτε" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Οι συνδέσεις γι' αυτό τον λογαριασμό έχουν κλειδωθεί προσωρινά λόγο πολλών αποτυχημένων " +"προσπαθειών σύνδεσης. Περιμένετε για να σας δωθεί ξανά η άδεια να συνδεθείτε, ή " +"χρησιμοποιήστε το recover password για να επανεργοποιήσετε τον λογαριασμό." + +msgid "Your login information is incorrect. Please try again." +msgstr "Οι πληροφορίες σύνδεσης σας είναι λανθασμένες. Παρακαλούμε δοκιμάστε ξανά." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Χαμένοι ή ξεχασμένοι κωδικοί πρόσβασης μπορούν να ανακτηθούν χρησιμοποιόντας την σελίδα Ανάκτηση Κωδικού" + +#, c-format +msgid "Welcome, %s!" +msgstr "Καλοσώρισες, %s!" + +msgid "Account settings saved successfully" +msgstr "Οι ρυθμίσεις του λογαριασμού αποθηκεύτηκαν με επιτυχία" + +msgid "(required, password required for change)" +msgstr "(απαραίτητο, κωδικός πρόσβασης απαραίτητος για αλλαγή)" + +msgid "(suggested, password required for change)" +msgstr "(προτεινόμενο, κωδικός πρόσβασης απαιτείται για αλλαγή)" + +msgid "(required to change the e-mail address)" +msgstr "(Απαιτείται για αλλαγή ηλεκτρονικής διεύθυνσης-email)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "" +"Πρέπει να εισαγάγετε τον κωδικό πρόσβασης σας για να αλλάξετε την ηλεκτρονική σας διεύθυνση " +"(email)" + +msgid "Recover a lost or forgotten password" +msgstr "Ανάκτηση χαμένου ή ξεχασμένου κωδικού πρόσβασης" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Για να ανακτήσετε τον κωδικό πρόσβασης πρέπει απαραίτητα να έχετε μια προσβάσιμη σε σας " +"ηλεκτρονική διεύθυνση (email), δηλωμένη στον λογαριασμό σας. Θα σας σταλεί επιβεβαίωση στο " +"email που έχετε δηλωσει στον λογαριασμό σας η οποία θα περιλαμβάνει ένα σύνδεσμο τον οποίο " +"θα πρέπει να επισκεφτείτε για να δηλώσετε τον καινούργιο σας κωδικό. Για αποφυγή " +"οποιασδήποτε κατάχρησης, μπορείτε να προσπαθήσετε να ανακτήσετε τον κωδικό σας μια φορά κάθε " +"20 λεπτά. Μια επιβεβαίωση αποκατάστασης ισχύει για επτά (7) ημέρες. Εάν δεν χρησιμοποιηθεί " +"κατά τη διάρκεια εκείνου του χρόνου, θα πρέπει να υποβάλετε ξανά το αίτημα σας για ανάκτηση " +"κωδικού." + +msgid "Your recovery request has been sent!" +msgstr "Η αίτηση σας για ανάκτηση έχει σταλεί!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Σημειώστε ότι αν ο λογαριασμός σας δεν έχει μια έγκυρη ηλεκτρονική διεύθυνση (email), δεν θα " +"μπορέσετε να λάμβάνετε μηνύματα (email) και θα πρέπει να επικοινωνήσετε με τον διαχειριστή " +"για βοήθεια." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Οι διαχειριστές μπορούν να χρησιμοποιήσουν την σελίδα %sΈκτακτη Ανάγκη Ανάκτησης Κωδικού%s " +"για να επανακτήσουν τον λογαριασμό διαχείρισης σε περίπτωση που αποτύχουν να πάρουν το " +"ηλεκτρονικό μήνυμα ανάκτησης λόγο προβλημάτων στον server, ή έλλειψης ενεργής ηλεκτρονικής " +"διεύθυνσης." + +msgid "Recover" +msgstr "Ανάκτηση" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Για να μπορέσετε να προχωρήσετε με την επαναφορά του κωδικού σας, πρέπει να επαληθεύσουμε " +"ότι είστε αυτός που λέτε. Ο καλύτερος τρόπος για να είμαστε σίγουροι είναι να σας ζητήσουμε " +"να κάνετε μία μικρή αλλαγή στον κατάλογο της Γκαλερί σας η οποία θα αποδείξει ότι έχετε τα " +"σωστά δικαιώματα. Γι' αυτό θα σας ζητήσουμε να δημιουργήσετε ένα αρχείο κειμένου το οποίο θα " +"ονομάσετε %s και να το ανεβάσετε στον κατάλογο της Γκαλερί σας. Πρέπει να περιέχει τους " +"ακόλουθους τυχαίους χαρακτήρες:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Για την ευκολία σας, έχουμε ετοιμάσει μια %s ορθή έκδοση σύνδεσης του login.txt%s για σένα. " +"Κατεβάστε το αρχείο, και τοποθετήστε το στον κατάλογο εγκατάστασης της Γκαλερί και είστε " +"έτοιμοι." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Μόλις φορτώσετε το αρχείο, επαναφορτίστε (refresh) για να συνεχίσετε." + +msgid "Emergency Administrator Password Reset" +msgstr "Ανάγκη Επαναφοράς Κωδικού Διαχειριστή" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Αυτή η σελίδα μπορεί να χρησιμοποιηθεί από έναν διαχειριστή για να επαναρυθμίσει με ασφάλεια " +"τον κωδικό πρόσβασης σε οποιοδήποτε λογαριασμό." + +msgid "Authorization Confirmed" +msgstr "Η έγκριση επιβεβαιώθηκε" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Η έγκριση σας επιβεβαιώθηκε. Παρακαλούμε δώστε τον καινούργιο κωδικό πρόσβασης σας πιο " +"κάτω. Αφού ρυθμίσετε τον καινούργιο σας κωδικό θα μεταφερθείτε στην σελίδα σύνδεσης." + +msgid "Recover Password for Username" +msgstr "Ανάκτηση Κωδικού Πρόσβασης για Χρήστη" + +msgid "You must enter a username to recover the password for." +msgstr "Πρέπει να εισαγάγετε ένα όνομα χρήστη για να ανακτήσετε τον κωδικό πρόσβασης για." + +msgid "The username you entered does not exist." +msgstr "Ο Χρήστης που επιλέξατε δεν υπάρχει." + +msgid "Authorization Incorrect" +msgstr "Λανθασμένη Έγκριση" + +msgid "Recovery Instructions" +msgstr "Οδηγίες Ανάκτησης" + +msgid "AuthFile Missing" +msgstr "Λείπει το AuthFile" + +msgid "AuthFile Unreadable" +msgstr "Δυσανάγνωστο AuthFile" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"%s Το αρχείο σας δεν είναι αναγνώσιμο. Παρακαλώ δώστε στην Γκαλερί δικαιώματα για να " +"μπορέσει να διαβάσει το αρχείο." + +msgid "Refresh" +msgstr "Ανανέωση" + +msgid "This page will allow you to reset the password on your account." +msgstr "Σ' αυτή την σελίδα θα μπορέσετε να επαναφέρετε τον κωδικό πρόσβασης σας" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "Έλλειπής Έγκριση" + +msgid "Username missing" +msgstr "Λείπει το όνομα χρήστη" + +msgid "Submit" +msgstr "Υποβολή" + +#, c-format +msgid "Hello %s," +msgstr "Γεια σου %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "Λαβατε αυτό το email γιατί ζητήθηκε ανάκτηση κωδικού πρόσβασης για %s από %s στο %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Το όνομα χρήστη σας είναι: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Για να ανακτήσετε τον κωδικό πρόσβασής σας, παρακαλούμε όπως κάνετε κλικ στον ακόλουθο " +"σύνδεσμο και δώσετε τις απαραίτητες πληροφορίες:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" +"Αν δεν ζητήσατε ανάκτηση του κωδικού πρόσβασης σας, μην ανησυχείτε. Μπορείτε να αγνοήσετε " +"αυτό το email." + +msgid "Thank you!" +msgstr "Ευχαριστώ!" + +msgid "guest" +msgstr "επισκέπτης" + +#, c-format +msgid "display mode: %s" +msgstr "Τρόπος προβολής: %s" + +#, c-format +msgid "Date: %s" +msgstr "Ημερομηνία: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Ιδιοκτήτης: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Μέγεθος: %d Αρχείο" +msgstr[1] "Μέγεθος: %d Αρχεία" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d σύνολο αρχείου)" +msgstr[1] "(%d σύνολο αρχείων)" + +#, c-format +msgid "Views: %d" +msgstr "Προβολές: %d" + +msgid "« album actions »" +msgstr "« ενέργειες άλπουμ »" + +msgid "« item actions »" +msgstr "«ενέργειες αρχείου »" + +msgid "Go" +msgstr "Πήγαινε" + +msgid "Navigation" +msgstr "Πλοήγηση" + +msgid "next" +msgstr "επόμενη" + +msgid "last" +msgstr "τελευταία" + +#, c-format +msgid "Page %d of %d" +msgstr "Σελίδα %d από %d" + +#, c-format +msgid "%d of %d" +msgstr "%d από %d" + +msgid "first" +msgstr "πρώτη" + +msgid "previous" +msgstr "προηγούμενη" + +msgid "Page:" +msgstr "Σελίδα:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Μέγεθος:" + +msgid "Unknown" +msgstr "Άγνωστο" + +msgid "Full size: " +msgstr "Πλήρες Μέγεθος:" + +msgid "Setting" +msgstr "Ρυθμίσεις" + +msgid "Use Global" +msgstr "Χρησιμοποιήστε Καθολικές Ρυθμίσεις" + +msgid "Language selector" +msgstr "Επιλογή Γλώσσας" + +msgid "Item actions" +msgstr "Ενέργειες Αρχείων" + +msgid "Use dropdown menu" +msgstr "Χρησιμοποιήστε το dropdown μενού" + +msgid "Login block" +msgstr "Μπλοκ Σύνδεσης" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/en_GB.po b/Source/gallery2/modules/core/po/en_GB.po new file mode 100644 index 0000000..a2dce41 --- /dev/null +++ b/Source/gallery2/modules/core/po/en_GB.po @@ -0,0 +1,3682 @@ +# $Id: en_GB.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-06 18:59+0100\n" +"Last-Translator: Stephen Ryan \n" +"Language-Team: British \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Gallery Email Test" +msgstr "Gallery Email Test" + +msgid "forever" +msgstr "forever" + +msgid "High Priority (Me first!)" +msgstr "High Priority (Me first!)" + +msgid "Low Priority (I want to share!)" +msgstr "Low Priority (I want to share!)" + +msgid "No Markup" +msgstr "No Markup" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Raw HTML" + +msgid "Database" +msgstr "Database" + +msgid "File" +msgstr "File" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minute" +msgstr[1] "%d minutes" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hour" +msgstr[1] "%d hours" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d day" +msgstr[1] "%d days" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d week" +msgstr[1] "%d weeks" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "No acceleration" + +msgid "Partial acceleration" +msgstr "Partial acceleration" + +msgid "Full acceleration" +msgstr "Full acceleration" + +msgid "Themes" +msgstr "Themes" + +msgid "Updating Repository Index" +msgstr "Updating Repository Index" + +msgid "Scanning plugins" +msgstr "Scanning plugins" + +msgid "Update Plugin List" +msgstr "Update Plugin List" + +msgid "Done." +msgstr "Done." + +msgid "Updating Packages" +msgstr "Updating Packages" + +#, c-format +msgid "Preparing %s" +msgstr "Preparing %s" + +#, c-format +msgid "Downloading %s" +msgstr "Downloading %s" + +#, c-format +msgid "Activating %s" +msgstr "Activating %s" + +msgid "Deleting Language Packs" +msgstr "Deleting Language Packs" + +msgid "Update completed with errors." +msgstr "Update completed with errors." + +msgid "Update complete." +msgstr "Update complete." + +msgid "install" +msgstr "install" + +msgid "upgrade" +msgstr "upgrade" + +msgid "activate" +msgstr "activate" + +msgid "uninstall" +msgstr "uninstall" + +msgid "deactivate" +msgstr "deactivate" + +msgid "Inherit settings from parent album" +msgstr "Inherit settings from parent album" + +msgid "Use these settings" +msgstr "Use these settings" + +msgid "Installing the core module" +msgstr "Installing the core module" + +msgid "key" +msgstr "key" + +msgid "All access" +msgstr "All access" + +msgid "[core] View item" +msgstr "[core] View item" + +msgid "[core] View resized version(s)" +msgstr "[core] View resized version(s)" + +msgid "[core] View original version" +msgstr "[core] View original version" + +msgid "[core] View all versions" +msgstr "[core] View all versions" + +msgid "[core] Add sub-album" +msgstr "[core] Add sub-album" + +msgid "[core] Add sub-item" +msgstr "[core] Add sub-item" + +msgid "[core] Edit item" +msgstr "[core] Edit item" + +msgid "[core] Change item permissions" +msgstr "[core] Change item permissions" + +msgid "[core] Delete item" +msgstr "[core] Delete item" + +msgid "Upgrading permissions" +msgstr "Upgrading permissions" + +msgid "Deleting old permission tables" +msgstr "Deleting old permission tables" + +msgid "Registered Users" +msgstr "Registered Users" + +msgid "All Users" +msgstr "All Users" + +msgid "Detecting broken derivatives" +msgstr "Detecting broken derivatives" + +msgid "Clearing fast-download cache" +msgstr "Clearing fast-download cache" + +msgid "Deleting old fast-download cache" +msgstr "Deleting old fast-download cache" + +msgid "Updating panorama items" +msgstr "Updating panorama items" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimizing AccessSubscriberMap table" + +msgid "Converting Schema Table" +msgstr "Converting Schema Table" + +msgid "Loading Table Descriptions" +msgstr "Loading Table Descriptions" + +msgid "Site Admins" +msgstr "Site Admins" + +msgid "Everybody" +msgstr "Everybody" + +msgid "Guest" +msgstr "Guest" + +msgid "Gallery" +msgstr "Gallery" + +msgid "This is the main page of your Gallery" +msgstr "This is the main page of your Gallery" + +msgid "Converting MySQL data to UTF8" +msgstr "Converting MySQL data to UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Upgrading permissions (%d items complete, %d remaining)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Detecting broken derivatives (%d derivatives checked, %d remaining)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Deleting old session files (iteration %d)" + +msgid "add items" +msgstr "add items" + +msgid "Album created successfully." +msgstr "Album created successfully." + +msgid "add sub-album" +msgstr "add sub-album" + +msgid "add items confirmation" +msgstr "add items confirmation" + +msgid "Base filename" +msgstr "Base filename" + +msgid "Caption" +msgstr "Caption" + +msgid "Blank" +msgstr "Blank" + +msgid "From Web Browser" +msgstr "From Web Browser" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabytes" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobytes" +msgstr[1] "%d kilobytes" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Input file %s exceeds maximum permitted file size" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Input file %s exceeds file size specified in the form" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Input file %s was only partially uploaded" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Input file %s was not uploaded. Error %d" + +msgid "Gallery Item Administration" +msgstr "Gallery Item Administration" + +msgid "delete an item" +msgstr "delete an item" + +msgid "delete confirmation" +msgstr "delete confirmation" + +#, c-format +msgid "delete %s" +msgstr "delete %s" + +#, c-format +msgid "edit %s" +msgstr "edit %s" + +msgid "Settings saved successfully." +msgstr "Settings saved successfully." + +msgid "Apply resized image settings" +msgstr "Apply resized image settings" + +msgid "Preparing..." +msgstr "Preparing..." + +msgid "Apply thumbnail settings" +msgstr "Apply thumbnail settings" + +msgid "Rebuilding thumbnails..." +msgstr "Rebuilding thumbnails..." + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Processing image %d of %d" + +msgid "Changes saved successfully" +msgstr "Changes saved successfully" + +msgid "Animation Size" +msgstr "Animation Size" + +msgid "edit captions" +msgstr "edit captions" + +msgid "General" +msgstr "General" + +msgid "Movie Size" +msgstr "Movie Size" + +msgid "Photo" +msgstr "Photo" + +msgid "Thumbnail cropped successfully" +msgstr "Thumbnail cropped successfully" + +msgid "Thumbnail reset successfully" +msgstr "Thumbnail reset successfully" + +msgid "Photo 5x3" +msgstr "Photo 5x3" + +msgid "Photo 6x4" +msgstr "Photo 6x4" + +msgid "Photo 7x5" +msgstr "Photo 7x5" + +msgid "Photo 10x8" +msgstr "Photo 10x8" + +msgid "Fullscreen 4x3" +msgstr "Fullscreen 4x3" + +msgid "Widescreen 16x9" +msgstr "Widescreen 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Square 1x1" + +msgid "As Image" +msgstr "As Image" + +msgid "Landscape" +msgstr "Landscape" + +msgid "Portrait" +msgstr "Portrait" + +msgid "Crop Thumbnail" +msgstr "Crop Thumbnail" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Reverted rotate and scale changes successfully" + +msgid "Rotated photo successfully" +msgstr "Rotated photo successfully" + +msgid "Scaled photo successfully" +msgstr "Scaled photo successfully" + +msgid "Modify Photo" +msgstr "Modify Photo" + +msgid "Successfully changed theme" +msgstr "Successfully changed theme" + +msgid "« default theme »" +msgstr "« default theme »" + +msgid "Theme" +msgstr "Theme" + +msgid "make highlight" +msgstr "make highlight" + +msgid "move item" +msgstr "move item" + +#, c-format +msgid "move %s" +msgstr "move %s" + +#, c-format +msgid "edit %s permissions" +msgstr "edit %s permissions" + +msgid "reorder items" +msgstr "reorder items" + +msgid "Maintenance" +msgstr "Maintenance" + +msgid "Gallery Site Administration" +msgstr "Gallery Site Administration" + +msgid "site admin" +msgstr "site admin" + +msgid "Gallery User Administration" +msgstr "Gallery User Administration" + +msgid "change password" +msgstr "change password" + +msgid "your account" +msgstr "your account" + +msgid "Password Recovery" +msgstr "Password Recovery" + +msgid "Core" +msgstr "Core" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Core Module" + +msgid "Add Items" +msgstr "Add Items" + +msgid "Edit Album" +msgstr "Edit Album" + +msgid "Edit Photo" +msgstr "Edit Photo" + +msgid "Edit Movie" +msgstr "Edit Movie" + +msgid "Add Album" +msgstr "Add Album" + +msgid "Edit Permissions" +msgstr "Edit Permissions" + +msgid "View Permissions" +msgstr "View Permissions" + +msgid "Delete Album" +msgstr "Delete Album" + +msgid "Delete Photo" +msgstr "Delete Photo" + +msgid "Delete Movie" +msgstr "Delete Movie" + +msgid "Move Album" +msgstr "Move Album" + +msgid "Move Photo" +msgstr "Move Photo" + +msgid "Move Movie" +msgstr "Move Movie" + +msgid "Edit Captions" +msgstr "Edit Captions" + +msgid "Make Highlight" +msgstr "Make Highlight" + +msgid "Reorder Items" +msgstr "Reorder Items" + +msgid "Site Admin" +msgstr "Site Admin" + +msgid "Login" +msgstr "Login" + +msgid "Your Account" +msgstr "Your Account" + +msgid "Logout" +msgstr "Logout" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Users" + +msgid "Groups" +msgstr "Groups" + +msgid "Performance" +msgstr "Performance" + +msgid "Toolkit Priority" +msgstr "Toolkit Priority" + +msgid "Graphics Toolkits" +msgstr "Graphics Toolkits" + +msgid "Account Settings" +msgstr "Account Settings" + +msgid "Change Password" +msgstr "Change Password" + +#, c-format +msgid "Edit %s" +msgstr "Edit %s" + +#, c-format +msgid "Delete %s" +msgstr "Delete %s" + +#, c-format +msgid "Move %s" +msgstr "Move %s" + +msgid "Build all thumbnails/resizes" +msgstr "Build all thumbnails/resizes" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." + +msgid "Build All Thumbnails/Resizes" +msgstr "Build All Thumbnails/Resizes" + +msgid "Debug output for failed items:" +msgstr "Debug output for failed items:" + +#, c-format +msgid "Checked %d items" +msgstr "Checked %d items" + +#, c-format +msgid "%d items built" +msgstr "%d items built" + +#, c-format +msgid "%d items failed" +msgstr "%d items failed" + +msgid "Convert MySQL database to UTF8" +msgstr "Convert MySQL database to UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." + +msgid "Database successfully converted to UTF8" +msgstr "Database successfully converted to UTF8" + +msgid "No conversion required" +msgstr "No conversion required" + +msgid "Delete user sessions" +msgstr "Delete user sessions" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Delete all persistent user sessions according to your current session expiration settings." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Deleted %d sessions." + +msgid "Delete database cache" +msgstr "Delete database cache" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Successfully deleted directory: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Unable to delete directory: %s" + +msgid "Delete template cache" +msgstr "Delete template cache" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." + +msgid "Template cache deleted successfully" +msgstr "Template cache deleted successfully" + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animation" + +msgid "animation" +msgstr "animation" + +msgid "Gallery Core" +msgstr "Gallery Core" + +msgid "Gallery Core Module" +msgstr "Gallery Core Module" + +msgid "Search descriptions" +msgstr "Search descriptions" + +msgid "Search keywords" +msgstr "Search keywords" + +msgid "Search summaries" +msgstr "Search summaries" + +msgid "Search titles" +msgstr "Search titles" + +msgid "Description" +msgstr "Description" + +msgid "Keywords" +msgstr "Keywords" + +msgid "Summary" +msgstr "Summary" + +msgid "Title" +msgstr "Title" + +msgid "Owner" +msgstr "Owner" + +msgid "Dynamic Album" +msgstr "Dynamic Album" + +msgid "dynamic album" +msgstr "dynamic album" + +msgid "Group" +msgstr "Group" + +msgid "group" +msgstr "group" + +msgid "Other" +msgstr "Other" + +msgid "Movie" +msgstr "Movie" + +msgid "movie" +msgstr "movie" + +msgid "photo" +msgstr "photo" + +msgid "Couldn't create repository cache path." +msgstr "Couldn't create repository cache path." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." + +msgid "Official Release Repository" +msgstr "Official Release Repository" + +msgid "Experimental Repository" +msgstr "Experimental Repository" + +msgid "Community Repository" +msgstr "Community Repository" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Error downloading index from '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Error downloading index hash from '%s'." + +msgid "Index integrity check failed." +msgstr "Index integrity check failed." + +msgid "« default sort order »" +msgstr "« default sort order »" + +msgid "Manual sort order" +msgstr "Manual sort order" + +msgid "Origination Date" +msgstr "Origination Date" + +msgid "Creation Date" +msgstr "Creation Date" + +msgid "Last Changed Date" +msgstr "Last Changed Date" + +msgid "Name" +msgstr "Name" + +msgid "View Count" +msgstr "View Count" + +msgid "Random" +msgstr "Random" + +msgid "« no presort »" +msgstr "« no presort »" + +msgid "Albums First" +msgstr "Albums First" + +msgid "Most Viewed First" +msgstr "Most Viewed First" + +msgid "Ascending" +msgstr "Ascending" + +msgid "Descending" +msgstr "Descending" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validation disabled until you set allowSessionAccess in config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "This page is valid XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Donate to the Gallery project" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Estimated time remaining: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Memory used: %s, total: %s" + +msgid "Rows per album page" +msgstr "Rows per album page" + +msgid "Columns per album page" +msgstr "Columns per album page" + +msgid "Number of items to show per page" +msgstr "Number of items to show per page" + +msgid "Row height (pixels)" +msgstr "Row height (pixels)" + +msgid "Column width (pixels)" +msgstr "Column width (pixels)" + +msgid "Show image owners" +msgstr "Show image owners" + +msgid "Show album owners" +msgstr "Show album owners" + +msgid "Show micro navigation thumbnails" +msgstr "Show micro navigation thumbnails" + +msgid "Blocks to show in the sidebar" +msgstr "Blocks to show in the sidebar" + +msgid "Blocks to show on album pages" +msgstr "Blocks to show on album pages" + +msgid "Blocks to show on photo pages" +msgstr "Blocks to show on photo pages" + +msgid "Thumbnail links in dynamic albums" +msgstr "Thumbnail links in dynamic albums" + +msgid "Browse dynamic album" +msgstr "Browse dynamic album" + +msgid "Jump to original album" +msgstr "Jump to original album" + +msgid "Separate link to original album" +msgstr "Separate link to original album" + +msgid "View Samples" +msgstr "View Samples" + +msgid "Album Frame" +msgstr "Album Frame" + +msgid "Item Frame" +msgstr "Item Frame" + +msgid "Photo Frame" +msgstr "Photo Frame" + +msgid "Color Pack" +msgstr "Colour Pack" + +msgid "You must enter a number greater than 0" +msgstr "You must enter a number greater than 0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "Error reading block settings. Clear your browser cache and try again." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Archive" + +msgid "archive" +msgstr "archive" + +msgid "Document" +msgstr "Document" + +msgid "document" +msgstr "document" + +msgid "Spreadsheet" +msgstr "Spreadsheet" + +msgid "spreadsheet" +msgstr "spreadsheet" + +msgid "file" +msgstr "file" + +msgid "Back" +msgstr "Back" + +#, c-format +msgid "Back to %s" +msgstr "Back to %s" + +msgid "User" +msgstr "User" + +msgid "user" +msgstr "user" + +msgid "Optimize database" +msgstr "Optimize database" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." + +msgid "Database optimized successfully" +msgstr "Database optimized successfully" + +msgid "Reset view counts" +msgstr "Reset view counts" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." + +msgid "View counts reset successfully" +msgstr "View counts reset successfully" + +msgid "Refresh capture dates" +msgstr "Refresh capture dates" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." + +msgid "Processing..." +msgstr "Processing..." + +msgid "Refresh Capture Dates" +msgstr "Refresh Capture Dates" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Processing item %d of %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Updated %d of %d items" + +msgid "System information" +msgstr "System information" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Get system details; useful for copy/paste into G2 support forum." + +msgid "core" +msgstr "core" + +msgid "unknown" +msgstr "unknown" + +msgid "Gallery version" +msgstr "Gallery version" + +msgid "PHP version" +msgstr "PHP version" + +msgid "Webserver" +msgstr "Webserver" + +msgid "Toolkits" +msgstr "Toolkits" + +msgid "Acceleration" +msgstr "Acceleration" + +msgid "Operating system" +msgstr "Operating system" + +msgid "Default theme" +msgstr "Default theme" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "enabled" + +msgid "disabled" +msgstr "disabled" + +msgid "Locale" +msgstr "Locale" + +msgid "Browser" +msgstr "Browser" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Rows in %s table = %d" + +msgid "Successfully saved theme settings" +msgstr "Successfully saved theme settings" + +msgid "General Settings" +msgstr "General Settings" + +msgid "Settings saved successfully" +msgstr "Settings saved successfully" + +msgid "Added local upload directory successfully" +msgstr "Added local upload directory successfully" + +msgid "Removed local upload directory successfully" +msgstr "Removed local upload directory successfully" + +msgid "Test email sent successfully" +msgstr "Test email sent successfully" + +msgid "There was a problem processing your request, see below for details." +msgstr "There was a problem processing your request, see below for details." + +msgid "Error sending test email, see below for details." +msgstr "Error sending test email, see below for details." + +msgid "Language Settings" +msgstr "Language Settings" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." + +msgid "Default language" +msgstr "Default language" + +msgid "Check Browser Preference" +msgstr "Check Browser Preference" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." + +msgid "Date Formats" +msgstr "Date Formats" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." + +msgid "Style" +msgstr "Style" + +msgid "Format" +msgstr "Format" + +msgid "Sample" +msgstr "Sample" + +msgid "Date" +msgstr "Date" + +msgid "Time" +msgstr "Time" + +msgid "Date/Time" +msgstr "Date/Time" + +msgid "Filesystem Permissions" +msgstr "Filesystem Permissions" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." + +msgid "New directories" +msgstr "New directories" + +msgid "New files" +msgstr "New files" + +msgid "Session Settings" +msgstr "Session Settings" + +msgid "Session Lifetime" +msgstr "Session Lifetime" + +msgid "Inactivity Timeout" +msgstr "Inactivity Timeout" + +msgid "Embedded Markup" +msgstr "Embedded Markup" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." + +msgid "Markup" +msgstr "Markup" + +msgid "Email" +msgstr "Email" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Username" + +msgid "Password" +msgstr "Password" + +msgid "SMTP From Address" +msgstr "SMTP From Address" + +msgid "Invalid email address" +msgstr "Invalid email address" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." + +msgid "Send Email" +msgstr "Send Email" + +msgid "Email Test Error" +msgstr "Email Test Error" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." + +msgid "Path" +msgstr "Path" + +msgid "Invalid cookie path" +msgstr "Invalid cookie path" + +msgid "Domain" +msgstr "Domain" + +msgid "Invalid cookie domain" +msgstr "Invalid cookie domain" + +msgid "Locking System" +msgstr "Locking System" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." + +msgid "Lock system" +msgstr "Lock system" + +msgid "Helper Processes" +msgstr "Helper Processes" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." + +msgid "Priority" +msgstr "Priority" + +msgid "Save" +msgstr "Save" + +msgid "Reset" +msgstr "Reset" + +msgid "Create A New Group" +msgstr "Create A New Group" + +msgid "Group Name" +msgstr "Group Name" + +msgid "(required)" +msgstr "(required)" + +msgid "You must enter a group name" +msgstr "You must enter a group name" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Group '%s' already exists" + +msgid "Create Group" +msgstr "Create Group" + +msgid "Cancel" +msgstr "Cancel" + +msgid "Create A New User" +msgstr "Create A New User" + +msgid "You must enter a username" +msgstr "You must enter a username" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Username '%s' already exists" + +msgid "Full Name" +msgstr "Full Name" + +msgid "Email Address" +msgstr "Email Address" + +msgid "You must enter an email address" +msgstr "You must enter an email address" + +msgid "Language" +msgstr "Language" + +msgid "You must enter a password" +msgstr "You must enter a password" + +msgid "Verify Password" +msgstr "Verify Password" + +msgid "You must enter the password a second time" +msgstr "You must enter the password a second time" + +msgid "The passwords you entered did not match" +msgstr "The passwords you entered did not match" + +msgid "Create User" +msgstr "Create User" + +msgid "Delete A Group" +msgstr "Delete A Group" + +msgid "Are you sure?" +msgstr "Are you sure?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "This will completely remove %s from Gallery. There is no undo!" + +msgid "Delete" +msgstr "Delete" + +msgid "Delete a User" +msgstr "Delete a User" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "User %s is the owner of %s items." + +#, c-format +msgid "Delete user %s and..." +msgstr "Delete user %s and..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Assign a new owner for all items of %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "New owner (leaving blank means one of the Site Admins):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "User '%s' does not exist! Cannot assign items to a nonexistent user." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "The new owner must be a different user than the user we are deleting!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "The new owner cannot be a Guest / Anonymous user!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "This will completely remove %s from Gallery. There is no undo!" + +msgid "Edit a group" +msgstr "Edit a group" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Edit Members of Group '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Added user '%s' to group '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Removed user '%s' from group '%s'" +msgstr[1] "Removed %s users from group '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "This group contains %d user" +msgstr[1] "This group contains %d users" + +msgid "Members" +msgstr "Members" + +msgid "« first" +msgstr "« first" + +msgid "« back" +msgstr "« back" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Viewing page %d of %d" + +msgid "next »" +msgstr "next »" + +msgid "last »" +msgstr "last »" + +msgid "Filter" +msgstr "Filter" + +msgid "Clear" +msgstr "Clear" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d user matches your filter" +msgstr[1] "%d users match your filter" + +msgid "Remove selected" +msgstr "Remove selected" + +msgid "You must select a user to remove." +msgstr "You must select a user to remove." + +msgid "You can't remove yourself from this group." +msgstr "You can't remove yourself from this group." + +msgid "Add Member" +msgstr "Add Member" + +msgid "Add" +msgstr "Add" + +msgid "You must enter a username." +msgstr "You must enter a username." + +#, c-format +msgid "User '%s' does not exist." +msgstr "User '%s' does not exist." + +msgid "This user already is in this group." +msgstr "This user already is in this group." + +msgid "Done" +msgstr "Done" + +msgid "Edit a user" +msgstr "Edit a user" + +msgid "That username is already in use" +msgstr "That username is already in use" + +msgid "You must enter a new username" +msgstr "You must enter a new username" + +msgid "E-mail Address" +msgstr "E-mail Address" + +msgid "(suggested)" +msgstr "(suggested)" + +msgid "Options" +msgstr "Options" + +msgid "Lock user." +msgstr "Lock user." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" + +msgid "Reset failed login count." +msgstr "Reset failed login count." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d failed login attempt since the last successful login." +msgstr[1] "%d failed login attempts since the last successful login." + +msgid "Group Management" +msgstr "Group Management" + +#, c-format +msgid "Removed group '%s'" +msgstr "Removed group '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Created group '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Modified group '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "There is %d group in the system." +msgstr[1] "There are %d total groups in the system." + +msgid "Edit Group" +msgstr "Edit Group" + +msgid "Edit" +msgstr "Edit" + +msgid "Add/Remove Users" +msgstr "Add/Remove Users" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Group '%s' does not exist." + +msgid "You cannot delete that group" +msgstr "You cannot delete that group" + +msgid "You cannot edit that group's users" +msgstr "You cannot edit that group's users" + +msgid "Edit Group (by list)" +msgstr "Edit Group (by list)" + +msgid "Action" +msgstr "Action" + +msgid "edit" +msgstr "edit" + +msgid "delete" +msgstr "delete" + +msgid "members" +msgstr "members" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d group matches your filter" +msgstr[1] "%d groups match your filter" + +msgid "System Maintenance" +msgstr "System Maintenance" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Completed %s task successfully." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "The %s task failed to complete successfully." + +msgid "Task name" +msgstr "Task name" + +msgid "Last run" +msgstr "Last run" + +msgid "Success/Fail" +msgstr "Success/Fail" + +msgid "Not run yet" +msgstr "Not run yet" + +msgid "Success" +msgstr "Success" + +msgid "Failed" +msgstr "Failed" + +msgid "run now" +msgstr "run now" + +msgid "Last Run Details:" +msgstr "Last Run Details:" + +msgid "Performance Tuning" +msgstr "Performance Tuning" + +msgid "Updated performance settings successfully" +msgstr "Updated performance settings successfully" + +msgid "Deleted all saved pages" +msgstr "Deleted all saved pages" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." + +msgid "Partial Acceleration" +msgstr "Partial Acceleration" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." + +msgid "Full Acceleration" +msgstr "Full Acceleration" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." + +msgid "Here are some standard acceleration profiles:" +msgstr "Here are some standard acceleration profiles:" + +msgid "Medium acceleration" +msgstr "Medium acceleration" + +msgid "High acceleration" +msgstr "High acceleration" + +msgid "Guest Users" +msgstr "Guest Users" + +msgid "Expires after:" +msgstr "Expires after:" + +msgid "Clear Saved Pages" +msgstr "Clear Saved Pages" + +msgid "Status: Inactive" +msgstr "Status: Inactive" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ deactivated" + +msgid "Status: Active" +msgstr "Status: Active" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ activated" + +msgid "Status: Not Installed" +msgstr "Status: Not Installed" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ uninstalled" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Status: Upgrade Required (Inactive)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Status: Incompatible Plugin (Inactive)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Status: Inactive (Configuration Required)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ needs configuration" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ deleted" + +msgid "Warning!" +msgstr "Warning!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Do you really want to uninstall __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "This will also remove any permissions and clean up any data created by this module." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." + +msgid "Yes" +msgstr "Yes" + +msgid "No" +msgstr "No" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Do you really want to delete __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "This plugin will be uninstalled and its files will be deleted." + +msgid "The files of this plugin will be deleted permanently." +msgstr "The files of this plugin will be deleted permanently." + +msgid "disabled(__COUNT__)" +msgstr "disabled(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "up to date(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "not installed(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "upgrade required(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "incompatible(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Failed to completely delete __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Gallery Plugins" + +msgid "Get More Plugins" +msgstr "Get More Plugins" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." + +msgid "Plugin Name" +msgstr "Plugin Name" + +msgid "Installed" +msgstr "Installed" + +msgid "Version" +msgstr "Version" + +msgid "Actions" +msgstr "Actions" + +msgid "help" +msgstr "help" + +#, c-format +msgid "Screenshot for %s" +msgstr "Screenshot for %s" + +msgid "Incompatible plugin!" +msgstr "Incompatible plugin!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Core API Required: %s (available: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Plugin API Required: %s (available: %s)" + +msgid "configure" +msgstr "configure" + +msgid "up to date" +msgstr "up to date" + +msgid "upgrade required" +msgstr "upgrade required" + +msgid "not installed" +msgstr "not installed" + +msgid "incompatible" +msgstr "incompatible" + +msgid "Repository" +msgstr "Repository" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "Please make sure that your internet connection is set up properly or try again later." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Failed to scan status from plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" + +msgid "The repository index has been successfully updated." +msgstr "The repository index has been successfully updated." + +msgid "All plugins are already up-to-date." +msgstr "All plugins are already up-to-date." + +#, c-format +msgid "%s plugin updated." +msgstr "%s plugin updated." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d language pack deleted." +msgstr[1] "%d language packs deleted." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Officially Released Gallery Project plugins (%srecommended%s)" + +#, c-format +msgid "last updated on %s" +msgstr "last updated on %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Community plugins (%suse at your own risk!%s)" + +msgid "Repository Error" +msgstr "Repository Error" + +msgid "You must select at least one repository." +msgstr "You must select at least one repository." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Configure your Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." + +msgid "Continue" +msgstr "Continue" + +msgid "Download Plugin List" +msgstr "Download Plugin List" + +msgid "Show Repository List" +msgstr "Show Repository List" + +msgid "Upgrade Gallery" +msgstr "Upgrade Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sDownload%s Gallery core" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Read the %supgrade instructions%s and perform the upgrade" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Incompatible plugins are marked with an exclamation icon." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." + +msgid "upgrade available" +msgstr "upgrade available" + +msgid "locked" +msgstr "locked" + +msgid "Theme Name" +msgstr "Theme Name" + +msgid "Module Name" +msgstr "Module Name" + +msgid "Latest" +msgstr "Latest" + +msgid "Locked Plugin" +msgstr "Locked Plugin" + +msgid "Incompatible Plugin" +msgstr "Incompatible Plugin" + +msgid "Upgrade Available" +msgstr "Upgrade Available" + +msgid "download" +msgstr "download" + +msgid "modify" +msgstr "modify" + +msgid "Upgrade All Plugins" +msgstr "Upgrade All Plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." + +msgid "Upgrade All" +msgstr "Upgrade All" + +#, c-format +msgid "Download %s" +msgstr "Download %s" + +msgid "No packages have been selected." +msgstr "No packages have been selected." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." + +msgid "Base Packages" +msgstr "Base Packages" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: version %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: version %s (build %s) %sdowngrading is not supported!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sCurrently Installed%s: version %s (build %s)" + +msgid "Language Packages" +msgstr "Language Packages" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%sselect all%s%sselect none%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s version %s (upgrading from %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s version %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s version %s (%snewer version %s is installed%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s version %s (currently installed)" + +msgid "No compatible language packages available" +msgstr "No compatible language packages available" + +msgid "You must select a base package before choosing language packs." +msgstr "You must select a base package before choosing language packs." + +msgid "Update" +msgstr "Update" + +msgid "Gallery Themes" +msgstr "Gallery Themes" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Successfully activated theme %s" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Successfully deactivated theme %s" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Successfully installed theme %s" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Successfully uninstalled theme %s" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Successfully upgraded theme %s" + +msgid "Successfully saved default album settings" +msgstr "Successfully saved default album settings" + +msgid "Restored theme settings" +msgstr "Restored theme settings" + +msgid "Defaults" +msgstr "Defaults" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." + +msgid "Default sort order" +msgstr "Default sort order" + +msgid "with" +msgstr "with" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." + +msgid "New albums" +msgstr "New albums" + +msgid "Save Defaults" +msgstr "Save Defaults" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s Theme Settings" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"These are the global settings for the theme. They can be overridden at the album level." + +msgid "Available" +msgstr "Available" + +msgid "Choose a block" +msgstr "Choose a block" + +msgid "Selected" +msgstr "Selected" + +msgid "Remove" +msgstr "Remove" + +msgid "Move Up" +msgstr "Move Up" + +msgid "Move Down" +msgstr "Move Down" + +msgid "Parameter" +msgstr "Parameter" + +msgid "Value" +msgstr "Value" + +msgid "There are no settings for this theme" +msgstr "There are no settings for this theme" + +msgid "Save Theme Settings" +msgstr "Save Theme Settings" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." + +msgid "Toolkit" +msgstr "Toolkit" + +msgid "Order" +msgstr "Order" + +msgid "up" +msgstr "up" + +msgid "down" +msgstr "down" + +msgid "User Management" +msgstr "User Management" + +#, c-format +msgid "Removed user '%s'" +msgstr "Removed user '%s'" + +#, c-format +msgid "Created user '%s'" +msgstr "Created user '%s'" + +#, c-format +msgid "Modified user '%s'" +msgstr "Modified user '%s'" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "There is %d user in the system." +msgstr[1] "There are %d total users in the system." + +msgid "Edit User" +msgstr "Edit User" + +msgid "You cannot delete yourself!" +msgstr "You cannot delete yourself!" + +msgid "You cannot delete the special guest user." +msgstr "You cannot delete the special guest user." + +msgid "Edit User (by list)" +msgstr "Edit User (by list)" + +msgid "Locked" +msgstr "Locked" + +msgid "Failed Logins" +msgstr "Failed Logins" + +msgid "Thumbnails" +msgstr "Thumbnails" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." + +msgid "Create thumbnails now" +msgstr "Create thumbnails now" + +msgid "This is a test email from Gallery2" +msgstr "This is a test email from Gallery2" + +msgid "Edit Conflict!" +msgstr "Edit Conflict!" + +msgid "Security Violation" +msgstr "Security Violation" + +msgid "Database Error" +msgstr "Database Error" + +msgid "Platform Error" +msgstr "Platform Error" + +msgid "Authentication Failure" +msgstr "Authentication Failure" + +msgid "Error" +msgstr "Error" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." + +msgid "Go back and try again" +msgstr "Go back and try again" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." + +msgid "Clear the cache" +msgstr "Clear the cache" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Alternatively, you can return to the main Gallery page and resume browsing." + +msgid "The action you attempted is not permitted." +msgstr "The action you attempted is not permitted." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." + +msgid "An error has occurred while interacting with the database." +msgstr "An error has occurred while interacting with the database." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." + +msgid "An error has occurred while interacting with the platform." +msgstr "An error has occurred while interacting with the platform." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." + +msgid "Item not found." +msgstr "Item not found." + +msgid "An error has occurred." +msgstr "An error has occurred." + +msgid "Back to the Gallery" +msgstr "Back to the Gallery" + +msgid "Error Detail" +msgstr "Error Detail" + +msgid "System Information" +msgstr "System Information" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Visit the Modules page to activate a Graphics Toolkit." + +msgid "Add Sub-Album" +msgstr "Add Sub-Album" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Your name contains invalid characters. Please enter another." + +msgid "You must enter a name for this album." +msgstr "You must enter a name for this album." + +msgid "The name you entered is already in use. Please enter another." +msgstr "The name you entered is already in use. Please enter another." + +msgid "This is the album title." +msgstr "This is the album title." + +msgid "This is the album summary." +msgstr "This is the album summary." + +msgid "Keywords are not visible, but are searchable." +msgstr "Keywords are not visible, but are searchable." + +msgid "This is the long description of the album." +msgstr "This is the long description of the album." + +msgid "Create" +msgstr "Create" + +msgid "Upload Complete" +msgstr "Upload Complete" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Successfully added %d file." +msgstr[1] "Successfully added %d files." + +msgid "No files added." +msgstr "No files added." + +#, c-format +msgid "Added %s" +msgstr "Added %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Failed to add %s" + +msgid "Add more files" +msgstr "Add more files" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." + +msgid "Upload files directly from your computer." +msgstr "Upload files directly from your computer." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Enter the full path to the file and an optional caption in the boxes below." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." + +msgid "More Upload Boxes..." +msgstr "More Upload Boxes..." + +msgid "Set item titles from:" +msgstr "Set item titles from:" + +msgid "Assign caption to:" +msgstr "Assign caption to:" + +msgid "No Thumbnail" +msgstr "No Thumbnail" + +msgid "Delete Items" +msgstr "Delete Items" + +msgid "No items were selected for deletion" +msgstr "No items were selected for deletion" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Successfully deleted %d item" +msgstr[1] "Successfully deleted %d items" + +msgid "This album contains no items to delete" +msgstr "This album contains no items to delete" + +msgid "Choose the items you want to delete" +msgstr "Choose the items you want to delete" + +#, c-format +msgid "(page %d of %d)" +msgstr "(page %d of %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Items selected here will remain selected when moving between pages." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "One item selected on other pages." +msgstr[1] "%d items selected on other pages." + +msgid "(data)" +msgstr "(data)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(album containing %d item)" +msgstr[1] "(album containing %d items)" + +msgid "(empty album)" +msgstr "(empty album)" + +msgid "Check All" +msgstr "Check All" + +msgid "Check None" +msgstr "Check None" + +msgid "Invert" +msgstr "Invert" + +msgid "Previous Page" +msgstr "Previous Page" + +msgid "Next Page" +msgstr "Next Page" + +msgid "Deletion Complete" +msgstr "Deletion Complete" + +msgid "Item successfully deleted" +msgstr "Item successfully deleted" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Are you sure you want to delete this %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "It contains %d item." +msgstr[1] "It contains %d items." + +msgid "There is no undo!" +msgstr "There is no undo!" + +msgid "There was a problem processing your request." +msgstr "There was a problem processing your request." + +msgid "Sort order" +msgstr "Sort order" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." + +msgid "Apply to all subalbums" +msgstr "Apply to all subalbums" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Every item requires a thumbnail. Set the default size in pixels here." + +msgid "You must enter a number (greater than zero)" +msgstr "You must enter a number (greater than zero)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Use this thumbnail size in all subalbums" + +msgid "Resized Images" +msgstr "Resized Images" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "Each item in your album can have multiple sizes. Define the default sizes here." + +msgid "Active" +msgstr "Active" + +msgid "Target Size (pixels)" +msgstr "Target Size (pixels)" + +msgid "You must enter a valid size" +msgstr "You must enter a valid size" + +msgid "Use these target sizes in all subalbums" +msgstr "Use these target sizes in all subalbums" + +msgid "Apply settings to existing items" +msgstr "Apply settings to existing items" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." + +msgid "Apply album setting to thumbnails" +msgstr "Apply album setting to thumbnails" + +msgid "... and for all subalbums" +msgstr "... and for all subalbums" + +msgid "Build thumbnails too" +msgstr "Build thumbnails too" + +msgid "Apply album setting to resized images" +msgstr "Apply album setting to resized images" + +msgid "Build resizes too" +msgstr "Build resizes too" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." + +msgid "Width" +msgstr "Width" + +msgid "You must enter a value greater than or equal to 0" +msgstr "You must enter a value greater than or equal to 0" + +msgid "Height" +msgstr "Height" + +msgid "There were errors saving some items" +msgstr "There were errors saving some items" + +msgid "There were errors saving all items" +msgstr "There were errors saving all items" + +msgid "Successfully saved all items" +msgstr "Successfully saved all items" + +msgid "This album contains no items" +msgstr "This album contains no items" + +msgid "Saved successfully." +msgstr "Saved successfully." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "This item was modified by somebody else at the same time. Your changes were lost." + +msgid "You do not have permissions to modify this item." +msgstr "You do not have permissions to modify this item." + +msgid "Save and Done" +msgstr "Save and Done" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Save and Edit Previous %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Save and Edit Next %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Your name contains invalid characters. Please choose another." + +msgid "You must enter a name for this item." +msgstr "You must enter a name for this item." + +msgid "The name you entered is already in use. Please choose another." +msgstr "The name you entered is already in use. Please choose another." + +msgid "The title of this item." +msgstr "The title of this item." + +msgid "The root album must have a title." +msgstr "The root album must have a title." + +msgid "The summary of this item." +msgstr "The summary of this item." + +msgid "This is the long description of the item." +msgstr "This is the long description of the item." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Date and Time" + +msgid "Set the date and time when this image was captured." +msgstr "Set the date and time when this image was captured." + +msgid "Set the date and time to be displayed for this item." +msgstr "Set the date and time to be displayed for this item." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Set the date and time to be displayed for this %s." + +msgid "Date:" +msgstr "Date:" + +msgid "Time:" +msgstr "Time:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "Use the original capture date and time from file information (e.g. Exif tag):" + +msgid "You must enter a valid date and time" +msgstr "You must enter a valid date and time" + +msgid "Thumbnail" +msgstr "Thumbnail" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." + +msgid "Unable to create a thumbnail for this item" +msgstr "Unable to create a thumbnail for this item" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." + +msgid "Resized Photos" +msgstr "Resized Photos" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." + +msgid "Aspect Ratio: " +msgstr "Aspect Ratio: " + +msgid "Crop" +msgstr "Crop" + +msgid "Undo Changes" +msgstr "Undo Changes" + +msgid "Reset to default" +msgstr "Reset to default" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." + +msgid "Rotate" +msgstr "Rotate" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "You can only rotate the photo in 90 degree increments." + +msgid "CC 90°" +msgstr "CC 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." + +msgid "Scale" +msgstr "Scale" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." + +msgid "You must enter a size" +msgstr "You must enter a size" + +msgid "Preserve Original" +msgstr "Preserve Original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "This is a link to another photo, so you cannot change the original" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "There are links to this photo, so you cannot change the original" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" + +msgid "Preserve Original Photo" +msgstr "Preserve Original Photo" + +msgid "Modified Photo" +msgstr "Modified Photo" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." + +msgid "Restore original" +msgstr "Restore original" + +msgid "Choose a theme" +msgstr "Choose a theme" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." + +msgid "Use this theme in all subalbums" +msgstr "Use this theme in all subalbums" + +msgid "Choose Theme" +msgstr "Choose Theme" + +#, c-format +msgid "Configure the %s theme" +msgstr "Configure the %s theme" + +msgid "These settings only apply to the theme for this album." +msgstr "These settings only apply to the theme for this album." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Use these settings in all subalbums that use the %s theme" + +msgid "Album Highlight" +msgstr "Album Highlight" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "You can make this item the thumbnail for its parent or any ancestor album." + +msgid "Highlight for:" +msgstr "Highlight for:" + +msgid "Highlight" +msgstr "Highlight" + +msgid "Move an Item" +msgstr "Move an Item" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Successfully moved %d item" +msgstr[1] "Successfully moved %d items" + +msgid "This album contains no items to move." +msgstr "This album contains no items to move." + +msgid "Source" +msgstr "Source" + +msgid "Choose the items you want to move" +msgstr "Choose the items you want to move" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." + +msgid "You are not allowed to move this item away from here." +msgstr "You are not allowed to move this item away from here." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "You are not allowed to move an album to the chosen destination." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "You are not allowed to move an item to the chosen destination." + +msgid "You cannot move an album into its own subtree." +msgstr "You cannot move an album into its own subtree." + +msgid "Destination" +msgstr "Destination" + +msgid "Choose a new album for them" +msgstr "Choose a new album for them" + +msgid "You don't have the permission to add items in this album" +msgstr "You don't have the permission to add items in this album" + +msgid "No destination chosen" +msgstr "No destination chosen" + +msgid "Move" +msgstr "Move" + +msgid "Successfully moved" +msgstr "Successfully moved" + +msgid "Choose a destination album" +msgstr "Choose a destination album" + +msgid "Permissions" +msgstr "Permissions" + +msgid "Owner changed successfully" +msgstr "Owner changed successfully" + +msgid "Group permission added successfully" +msgstr "Group permission added successfully" + +msgid "User permission added successfully" +msgstr "User permission added successfully" + +msgid "Group permission removed successfully" +msgstr "Group permission removed successfully" + +msgid "User permission removed successfully" +msgstr "User permission removed successfully" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "This item is owned by user: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "This item is owned by user: %s (%s)" + +msgid "New owner" +msgstr "New owner" + +msgid "Change" +msgstr "Change" + +msgid "Apply new owner to sub-items" +msgstr "Apply new owner to sub-items" + +msgid "You must enter a user name" +msgstr "You must enter a user name" + +msgid "The user name you entered is invalid" +msgstr "The user name you entered is invalid" + +msgid "Apply changes" +msgstr "Apply changes" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." + +msgid "Apply to sub-items" +msgstr "Apply to sub-items" + +msgid "Group Permissions" +msgstr "Group Permissions" + +msgid "Group name" +msgstr "Group name" + +msgid "Permission" +msgstr "Permission" + +msgid "New Group Permission" +msgstr "New Group Permission" + +msgid "Add Permission" +msgstr "Add Permission" + +msgid "The permission you chose is invalid" +msgstr "The permission you chose is invalid" + +msgid "The group name you entered is invalid" +msgstr "The group name you entered is invalid" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Group already has this permission (check sub-permissions)" + +msgid "User Permissions" +msgstr "User Permissions" + +msgid "User name" +msgstr "User name" + +msgid "New User Permission" +msgstr "New User Permission" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "The user already has this permission (check sub-permissions)" + +msgid "Reorder Album" +msgstr "Reorder Album" + +msgid "Order saved successfully" +msgstr "Order saved successfully" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." + +msgid "change" +msgstr "change" + +msgid "Change the order of the items in this album." +msgstr "Change the order of the items in this album." + +msgid "Move this item" +msgstr "Move this item" + +msgid "before" +msgstr "before" + +msgid "after" +msgstr "after" + +msgid "Reorder" +msgstr "Reorder" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." + +msgid "Site is temporarily down for maintenance." +msgstr "Site is temporarily down for maintenance." + +msgid "Admin Login" +msgstr "Admin Login" + +msgid "Enter a URL" +msgstr "Enter a URL" + +msgid "Enter some text describing the URL" +msgstr "Enter some text describing the URL" + +msgid "Enter an image URL" +msgstr "Enter an image URL" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "list" + +msgid "bullet" +msgstr "bullet" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "image" + +msgid "color" +msgstr "colour" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "You can also use the colour name for example: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Configuration Error: Missing Theme" + +msgid "Missing Theme" +msgstr "Missing Theme" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." + +msgid "Admin Options" +msgstr "Admin Options" + +msgid "User Options" +msgstr "User Options" + +msgid "Password changed successfully" +msgstr "Password changed successfully" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." + +msgid "Current Password" +msgstr "Current Password" + +msgid "You must enter your current password" +msgstr "You must enter your current password" + +msgid "Incorrect password" +msgstr "Incorrect password" + +msgid "New Password" +msgstr "New Password" + +msgid "You must enter a new password" +msgstr "You must enter a new password" + +msgid "Verify New Password" +msgstr "Verify New Password" + +msgid "You must enter your new password again!" +msgstr "You must enter your new password again!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." + +msgid "Login to your account" +msgstr "Login to your account" + +msgid "Your password has been recovered, please login." +msgstr "Your password has been recovered, please login." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." + +msgid "Your login information is incorrect. Please try again." +msgstr "Your login information is incorrect. Please try again." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" + +#, c-format +msgid "Welcome, %s!" +msgstr "Welcome, %s!" + +msgid "Account settings saved successfully" +msgstr "Account settings saved successfully" + +msgid "(required, password required for change)" +msgstr "(required, password required for change)" + +msgid "(suggested, password required for change)" +msgstr "(suggested, password required for change)" + +msgid "(required to change the e-mail address)" +msgstr "(required to change the e-mail address)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "You must enter your current password to change the e-mail address" + +msgid "Recover a lost or forgotten password" +msgstr "Recover a lost or forgotten password" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." + +msgid "Your recovery request has been sent!" +msgstr "Your recovery request has been sent!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." + +msgid "Recover" +msgstr "Recover" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Once you've uploaded the file, click refresh to continue." + +msgid "Emergency Administrator Password Reset" +msgstr "Emergency Administrator Password Reset" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"This page can be used by a system administrator to securely reset the password on any " +"account." + +msgid "Authorization Confirmed" +msgstr "Authorization Confirmed" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." + +msgid "Recover Password for Username" +msgstr "Recover Password for Username" + +msgid "You must enter a username to recover the password for." +msgstr "You must enter a username to recover the password for." + +msgid "The username you entered does not exist." +msgstr "The username you entered does not exist." + +msgid "Authorization Incorrect" +msgstr "Authorization Incorrect" + +msgid "Recovery Instructions" +msgstr "Recovery Instructions" + +msgid "AuthFile Missing" +msgstr "AuthFile Missing" + +msgid "AuthFile Unreadable" +msgstr "AuthFile Unreadable" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Your %s file is not readable. Please give Gallery read permissions on the file." + +msgid "Refresh" +msgstr "Refresh" + +msgid "This page will allow you to reset the password on your account." +msgstr "This page will allow you to reset the password on your account." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." + +msgid "Authorization missing" +msgstr "Authorization missing" + +msgid "Username missing" +msgstr "Username missing" + +msgid "Submit" +msgstr "Submit" + +#, c-format +msgid "Hello %s," +msgstr "Hello %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "You receive this email because a password recovery for %s was requested by %s at %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Your username is: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"To finish the password recovery process please click the following link and enter the " +"required information:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "If you did not request this recovery email, you may safely ignore it." + +msgid "Thank you!" +msgstr "Thank you!" + +msgid "guest" +msgstr "guest" + +#, c-format +msgid "display mode: %s" +msgstr "display mode: %s" + +#, c-format +msgid "Date: %s" +msgstr "Date: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Owner: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Size: %d item" +msgstr[1] "Size: %d items" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d item total)" +msgstr[1] "(%d items total)" + +#, c-format +msgid "Views: %d" +msgstr "Views: %d" + +msgid "« album actions »" +msgstr "« album actions »" + +msgid "« item actions »" +msgstr "« item actions »" + +msgid "Go" +msgstr "Go" + +msgid "Navigation" +msgstr "Navigation" + +msgid "next" +msgstr "next" + +msgid "last" +msgstr "last" + +#, c-format +msgid "Page %d of %d" +msgstr "Page %d of %d" + +#, c-format +msgid "%d of %d" +msgstr "%d of %d" + +msgid "first" +msgstr "first" + +msgid "previous" +msgstr "previous" + +msgid "Page:" +msgstr "Page:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Size: " + +msgid "Unknown" +msgstr "Unknown" + +msgid "Full size: " +msgstr "Full size: " + +msgid "Setting" +msgstr "Setting" + +msgid "Use Global" +msgstr "Use Global" + +msgid "Language selector" +msgstr "Language selector" + +msgid "Item actions" +msgstr "Item actions" + +msgid "Use dropdown menu" +msgstr "Use dropdown menu" + +msgid "Login block" +msgstr "Login block" + +msgid "Links to album/photo peers" +msgstr "Links to album/photo peers" diff --git a/Source/gallery2/modules/core/po/es.po b/Source/gallery2/modules/core/po/es.po new file mode 100644 index 0000000..88371d2 --- /dev/null +++ b/Source/gallery2/modules/core/po/es.po @@ -0,0 +1,3744 @@ +# $Id: es.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Oscar Garcia Amor +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-01-23 17:31+0100\n" +"Last-Translator: Oscar Garcia Amor \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Gallery Email Test" +msgstr "Prueba de Correo de Gallery" + +msgid "forever" +msgstr "para siempre" + +msgid "High Priority (Me first!)" +msgstr "Prioridad Alta (¡Yo Primero!)" + +msgid "Low Priority (I want to share!)" +msgstr "Prioridad Baja (¡Quiero compartir!)" + +msgid "No Markup" +msgstr "Sin formato" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML Raw" + +msgid "Database" +msgstr "Base de Datos" + +msgid "File" +msgstr "Archivo" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuto" +msgstr[1] "%d minutos" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d días" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d semana" +msgstr[1] "%d semanas" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Sin aceleración" + +msgid "Partial acceleration" +msgstr "Aceleración parcial" + +msgid "Full acceleration" +msgstr "Aceleración completa" + +msgid "Themes" +msgstr "Temas" + +msgid "Updating Repository Index" +msgstr "Actualizando Índice del Repositorio" + +msgid "Scanning plugins" +msgstr "Escaneando plugins" + +msgid "Update Plugin List" +msgstr "Actualizar lista de Plugins" + +msgid "Done." +msgstr "Hecho." + +msgid "Updating Packages" +msgstr "Actualizando Paquetes" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Preparando..." + +#, c-format +msgid "Downloading %s" +msgstr "Descargando %s" + +#, c-format +msgid "Activating %s" +msgstr "Activando %s" + +msgid "Deleting Language Packs" +msgstr "Borrando Paquetes de Idioma" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Actualización completa." + +msgid "Update complete." +msgstr "Actualización completa." + +msgid "install" +msgstr "instalar" + +msgid "upgrade" +msgstr "actualizar" + +msgid "activate" +msgstr "activar" + +msgid "uninstall" +msgstr "desinstalar" + +msgid "deactivate" +msgstr "desactivar" + +msgid "Inherit settings from parent album" +msgstr "Heredar configuración del álbum superior" + +msgid "Use these settings" +msgstr "Usar esta configuración" + +msgid "Installing the core module" +msgstr "Instalando el módulo principal" + +msgid "key" +msgstr "llave" + +msgid "All access" +msgstr "Acceso Total" + +msgid "[core] View item" +msgstr "[núcleo] Ver elemento" + +msgid "[core] View resized version(s)" +msgstr "[núcleo] Ver version(es) escalada(s) " + +msgid "[core] View original version" +msgstr "[núcleo] Ver la versión original" + +msgid "[core] View all versions" +msgstr "[núcleo] Ver todas las versiones" + +msgid "[core] Add sub-album" +msgstr "[núcleo] Agregar sub-álbum" + +msgid "[core] Add sub-item" +msgstr "[núcleo] Agregar sub-elemento" + +msgid "[core] Edit item" +msgstr "[núcleo] Editar elemento" + +msgid "[core] Change item permissions" +msgstr "[núcleo] Cambiar los permisos del elemento" + +msgid "[core] Delete item" +msgstr "[núcleo] Borrar elemento" + +msgid "Upgrading permissions" +msgstr "Actualizando permisos" + +msgid "Deleting old permission tables" +msgstr "Borrando las tablas de permisos antiguas" + +msgid "Registered Users" +msgstr "Usuarios Registrados" + +msgid "All Users" +msgstr "Todos los Usuarios" + +msgid "Detecting broken derivatives" +msgstr "Detectando derivadas rotas" + +msgid "Clearing fast-download cache" +msgstr "Borrando la cache de descarga rápida" + +msgid "Deleting old fast-download cache" +msgstr "Borrando la cache de descarga rápida antigua" + +msgid "Updating panorama items" +msgstr "Actualizando elementos de panorama" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimizando tabla AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "Convirtiendo el Esquema de la Tabla" + +msgid "Loading Table Descriptions" +msgstr "Cargando las Descripciones de la Tabla" + +msgid "Site Admins" +msgstr "Administradores del Sitio" + +msgid "Everybody" +msgstr "Todos" + +msgid "Guest" +msgstr "Invitado" + +msgid "Gallery" +msgstr "Galería" + +msgid "This is the main page of your Gallery" +msgstr "Esta es la página principal de tu Galería" + +msgid "Converting MySQL data to UTF8" +msgstr "Convirtiendo los datos en MySQL a UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Actualizando permisos (%d elementos competos, faltan %d)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, cargando (%d derivadas comprobadas, faltan %d)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, guardando (%d derivadas comprobadas, faltan %d)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, guardando (%d derivadas comprobadas, faltan %d)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Detectando derivadas rotas, guardando elemento %d de %d (%d derivadas competas, faltan %d)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Borrando los ficheros de sesión antiguos (interacción %d)" + +msgid "add items" +msgstr "agregar elementos" + +msgid "Album created successfully." +msgstr "Álbum creado con éxito." + +msgid "add sub-album" +msgstr "agregar sub-álbum" + +msgid "add items confirmation" +msgstr "confirmación para agregar elementos" + +msgid "Base filename" +msgstr "Nombre del fichero raíz" + +msgid "Caption" +msgstr "Etiqueta" + +msgid "Blank" +msgstr "En blanco" + +msgid "From Web Browser" +msgstr "Desde el Navegador" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabytes" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobyte" +msgstr[1] "%d kilobytes" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "El archivo de entrada %s excede del tamaño máximo de archivo permido" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "El archivo de entrada %s excede del tamaño de archivo especificado en el formulario" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "El archivo de entrada %s solo ha sido cargado parcialmente" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "El archivo de entrada %s no ha sido cargado. Error %d" + +msgid "Gallery Item Administration" +msgstr "Administración de Elementos de Gallery" + +msgid "delete an item" +msgstr "borrar un elemento" + +msgid "delete confirmation" +msgstr "confirmación de borrado" + +#, c-format +msgid "delete %s" +msgstr "borrar %s" + +#, c-format +msgid "edit %s" +msgstr "editar %s" + +msgid "Settings saved successfully." +msgstr "Ajustes guardados con éxito." + +msgid "Apply resized image settings" +msgstr "Aplicar configuración de imagen redimensionada" + +msgid "Preparing..." +msgstr "Preparando..." + +msgid "Apply thumbnail settings" +msgstr "Aplicar configuración de miniaturas" + +msgid "Rebuilding thumbnails..." +msgstr "Reconstruyendo miniaturas..." + +msgid "Album" +msgstr "Álbum" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Procesando imagen %d de %d" + +msgid "Changes saved successfully" +msgstr "Los cambios han sido guardados con éxito" + +msgid "Animation Size" +msgstr "Tamaño de la animació" + +msgid "edit captions" +msgstr "editar etiquetas" + +msgid "General" +msgstr "General" + +msgid "Movie Size" +msgstr "Tamaño de la Película" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Miniatura recortada con éxito" + +msgid "Thumbnail reset successfully" +msgstr "Miniatura reiniciada con éxito" + +msgid "Photo 5x3" +msgstr "Fotografía 5x3" + +msgid "Photo 6x4" +msgstr "Fotografía 6x4" + +msgid "Photo 7x5" +msgstr "Fotografía 7x5" + +msgid "Photo 10x8" +msgstr "Fotografía 10x8" + +msgid "Fullscreen 4x3" +msgstr "Pantalla completa 4x3" + +msgid "Widescreen 16x9" +msgstr "Formato Panorámico 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Cuadrado 1x1" + +msgid "As Image" +msgstr "Como Imagen" + +msgid "Landscape" +msgstr "Apaisado" + +msgid "Portrait" +msgstr "Retrato" + +msgid "Crop Thumbnail" +msgstr "Recortar Miniatura" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Se ha deshecho la rotación y el escalado con éxito" + +msgid "Rotated photo successfully" +msgstr "Foto rotada con éxito" + +msgid "Scaled photo successfully" +msgstr "Foto escalada con éxito" + +msgid "Modify Photo" +msgstr "Modicar foto" + +msgid "Successfully changed theme" +msgstr "Tema cambiado con éxito" + +msgid "« default theme »" +msgstr "« tema por defecto »" + +msgid "Theme" +msgstr "Tema" + +msgid "make highlight" +msgstr "destacar" + +msgid "move item" +msgstr "mover elemento" + +#, c-format +msgid "move %s" +msgstr "mover %s" + +#, c-format +msgid "edit %s permissions" +msgstr "editar los permisos de %s" + +msgid "reorder items" +msgstr "reordenar elementos" + +msgid "Maintenance" +msgstr "Mantenimiento" + +msgid "Gallery Site Administration" +msgstr "Administración de Gallery" + +msgid "site admin" +msgstr "administrar sitio" + +msgid "Gallery User Administration" +msgstr "Administrador de usuarios" + +msgid "change password" +msgstr "cambiar contraseña" + +msgid "your account" +msgstr "tu cuenta" + +msgid "Password Recovery" +msgstr "Recuperar contraseña" + +msgid "Core" +msgstr "Núcleo" + +msgid "Gallery 2 Core Module" +msgstr "Módulo Principal de Gallery 2" + +msgid "Add Items" +msgstr "Agregar Elementos" + +msgid "Edit Album" +msgstr "Editar Álbum" + +msgid "Edit Photo" +msgstr "Editar Foto" + +msgid "Edit Movie" +msgstr "Editar Película" + +msgid "Add Album" +msgstr "Agregar Álbum" + +msgid "Edit Permissions" +msgstr "Editar Permisos" + +msgid "View Permissions" +msgstr "Ver Permisos" + +msgid "Delete Album" +msgstr "Borrar Álbum" + +msgid "Delete Photo" +msgstr "Borrar Foto" + +msgid "Delete Movie" +msgstr "Borrar Película" + +msgid "Move Album" +msgstr "Mover Álbum" + +msgid "Move Photo" +msgstr "Mover Foto" + +msgid "Move Movie" +msgstr "Mover Película" + +msgid "Edit Captions" +msgstr "Editar Etiquetas" + +msgid "Make Highlight" +msgstr "Destacar" + +msgid "Reorder Items" +msgstr "Reordenar Elementos" + +msgid "Site Admin" +msgstr "Administrar Sitio" + +msgid "Login" +msgstr "Iniciar Sesión" + +msgid "Your Account" +msgstr "Tu Cuenta" + +msgid "Logout" +msgstr "Cerrar Sesión" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Usuarios" + +msgid "Groups" +msgstr "Grupos" + +msgid "Performance" +msgstr "Rendimiento" + +msgid "Toolkit Priority" +msgstr "Prioridad de las Herramientas" + +msgid "Graphics Toolkits" +msgstr "Herramientas Gráficas" + +msgid "Account Settings" +msgstr "Propiedades de la Cuenta" + +msgid "Change Password" +msgstr "Cambiar Contraseña" + +#, c-format +msgid "Edit %s" +msgstr "Editar %s" + +#, c-format +msgid "Delete %s" +msgstr "Borrar %s" + +#, c-format +msgid "Move %s" +msgstr "Mover %s" + +msgid "Build all thumbnails/resizes" +msgstr "Crear todas las miniaturas/Imágenes redimensionadas" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Asegúrate que los archivos de datos para todas las derivadas (miniaturas, etc.) han sido " +"construidos y reconstruye los que estén corruptos." + +msgid "Build All Thumbnails/Resizes" +msgstr "Crear Todas las Miniaturas/Imágenes Redimensionadas" + +msgid "Debug output for failed items:" +msgstr "Salida de depuración para los elementos fallidos:" + +#, c-format +msgid "Checked %d items" +msgstr "%d elementos seleccionados" + +#, c-format +msgid "%d items built" +msgstr "%d elementos creados" + +#, c-format +msgid "%d items failed" +msgstr "%d elementos fallidos" + +msgid "Convert MySQL database to UTF8" +msgstr "Convertir la base de datos MySQL a UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Si has creado la base de dartos con MySQL 3.x y actualizas a MySQL 4.x, experimentaras " +"caracteres cambiados hasta que conviertas la base de datos para que use UTF8. Esta " +"operación es inofensiva si tu base de datos ya está convertida, por lo que es seguro que " +"pruebes si no estás seguro/a. Despues de usar esto, deberias ejecutar la tarea 'Borrar la " +"caché de la base de datos' para desacerte de cualquier corupcción en la caché." + +msgid "Database successfully converted to UTF8" +msgstr "Base de dato convertida a UTF8 con éxito" + +msgid "No conversion required" +msgstr "No se requiere conversión" + +msgid "Delete user sessions" +msgstr "Borrar las sesiones de usuario" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Borra todas las sesiones persistentes de usuario de acuerdo con tus ajustes de expiración de " +"sesión." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Borradas %d sesiones." + +msgid "Delete database cache" +msgstr "Borrar la cache de la base de datos" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery almacena la información de la base de datos mas frecuentemente usada en disco para " +"incrementar el rendimiento. Si modificas directamente la base de datos, debes ejecutar esta " +"tarea para borrar la cache y forzar a Gallery a recargar la información desde base de datos." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "El directorio %s se ha eliminado con éxito" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "No es posible eliminar el directorio %s" + +msgid "Delete template cache" +msgstr "Borrar la cache de las plantillas" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compila los ficheros de las plantillas y los guarda para incrementar el " +"rendimiento. Si estas experimentando problemas del tipo Smarty error puedes intentar " +"ejecutar esta tarea. Ejecuta también esta tarea si borras algún fichero de local/*.tpl para " +"que «Smarty» vuelva al archivo tpl por defecto." + +msgid "Template cache deleted successfully" +msgstr "La cache de plantillas se ha borrado con éxito" + +msgid "album" +msgstr "álbum" + +msgid "Animation" +msgstr "Animación" + +msgid "animation" +msgstr "animación" + +msgid "Gallery Core" +msgstr "Núcleo de Gallery" + +msgid "Gallery Core Module" +msgstr "Módulo Principal de Gallery" + +msgid "Search descriptions" +msgstr "Buscar en las descripciones" + +msgid "Search keywords" +msgstr "Buscar en las palabras clave" + +msgid "Search summaries" +msgstr "Buscar en los sumarios" + +msgid "Search titles" +msgstr "Buscar en los títulos" + +msgid "Description" +msgstr "Descripción" + +msgid "Keywords" +msgstr "Palabras clave" + +msgid "Summary" +msgstr "Resumen" + +msgid "Title" +msgstr "Título" + +msgid "Owner" +msgstr "Propietario" + +msgid "Dynamic Album" +msgstr "Álbum Dinámico" + +msgid "dynamic album" +msgstr "álbum dinámico" + +msgid "Group" +msgstr "Grupo" + +msgid "group" +msgstr "grupo" + +msgid "Other" +msgstr "Otro(s)" + +msgid "Movie" +msgstr "Película" + +msgid "movie" +msgstr "película" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "No puedo crear la ruta del repositorio cache." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"No puedo crear el subdirectorio de cache. Asegurate de que el servidor web tiene permiso de " +"escritura en él." + +msgid "Official Release Repository" +msgstr "Repositorio de la Versión Oficial" + +msgid "Experimental Repository" +msgstr "Repositorio Experimental" + +msgid "Community Repository" +msgstr "Repositorio de la Comunidad" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Error descargando índice desde '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Error descargando el hash del índice desde '%s'." + +msgid "Index integrity check failed." +msgstr "La comprobación de integridad del índice ha fallado." + +msgid "« default sort order »" +msgstr "« orden de colocación por defecto »" + +msgid "Manual sort order" +msgstr "Orden de colocación manual" + +msgid "Origination Date" +msgstr "Fecha de origen" + +msgid "Creation Date" +msgstr "Fecha de creación" + +msgid "Last Changed Date" +msgstr "Fecha del último cambio" + +msgid "Name" +msgstr "Nombre" + +msgid "View Count" +msgstr "Ver Contador" + +msgid "Random" +msgstr "Aleatorio" + +msgid "« no presort »" +msgstr "« sin orden »" + +msgid "Albums First" +msgstr "Álbumes Primero" + +msgid "Most Viewed First" +msgstr "Las mas vistas primero" + +msgid "Ascending" +msgstr "Ascendente" + +msgid "Descending" +msgstr "Descendente" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validació deshabilitada hasta que se configure allowSessionAccess en config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Esta página es XHTML 1.0 válido" + +msgid "Donate to the Gallery project" +msgstr "Dona al proyecto Gallery" + +msgid "G2.2: Double Double" +msgstr "G2.2: Doble Doble" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Potenciado por Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Tiempo restante estimado: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Memoria usada: %s, total: %s" + +msgid "Rows per album page" +msgstr "Filas por página de álbum" + +msgid "Columns per album page" +msgstr "Columnas por página de álbum" + +msgid "Number of items to show per page" +msgstr "Numero de elementos por página" + +msgid "Row height (pixels)" +msgstr "Alto de la fila (píxeles)" + +msgid "Column width (pixels)" +msgstr "Ancho de la columna (píxeles)" + +msgid "Show image owners" +msgstr "Mostrar propietarios de las imágenes" + +msgid "Show album owners" +msgstr "Mostrar propietarios de los álbumes" + +msgid "Show micro navigation thumbnails" +msgstr "Mostrar micro miniaturas de navegació" + +msgid "Blocks to show in the sidebar" +msgstr "Bloques para mostrar en la barra lateral" + +msgid "Blocks to show on album pages" +msgstr "Bloques para mostrar en las páginas de los álbumes" + +msgid "Blocks to show on photo pages" +msgstr "Bloques para mostrar en las páginas de las fotos" + +msgid "Thumbnail links in dynamic albums" +msgstr "Enlaces de miniaturas en los álbumes dinámicos" + +msgid "Browse dynamic album" +msgstr "Navegar por el álbum dinámico" + +msgid "Jump to original album" +msgstr "Saltar al álbum original" + +msgid "Separate link to original album" +msgstr "Enlace separado al álbum original" + +msgid "View Samples" +msgstr "Ver Ejemplos" + +msgid "Album Frame" +msgstr "Marco del Álbum" + +msgid "Item Frame" +msgstr "Marco del Elemento" + +msgid "Photo Frame" +msgstr "Marco de la foto" + +msgid "Color Pack" +msgstr "Pack de Color" + +msgid "You must enter a number greater than 0" +msgstr "Debes escribir un numero mayor que cero" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Error leyendo la configuración del bloque. Borra la caché de tu navegador e intentalo de " +"nuevo." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Archivo" + +msgid "archive" +msgstr "archivo" + +msgid "Document" +msgstr "Documento" + +msgid "document" +msgstr "documento" + +msgid "Spreadsheet" +msgstr "Hoja de Cálculo" + +msgid "spreadsheet" +msgstr "hoja de cálculo" + +msgid "file" +msgstr "archivo" + +msgid "Back" +msgstr "Atrás" + +#, c-format +msgid "Back to %s" +msgstr "Volver a %s" + +msgid "User" +msgstr "Usuario" + +msgid "user" +msgstr "usuario" + +msgid "Optimize database" +msgstr "Optimizar base de datos" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Mejora el rendimiento de tu base de datos. Los resultados variaran dependiendo con que base " +"de datos estés trabajando, pero esta rutina de mantenimiento hará que tu Gallery funcione " +"mas rápido. Especialmente practico después de agregar o borrar muchos elementos." + +msgid "Database optimized successfully" +msgstr "La Base de Datos se ha optimizado con éxito" + +msgid "Reset view counts" +msgstr "Reiniciar contadores de visitas" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Reinicia el numero de visitas a cero en todos los álbumes y elementos. Esta tarea borra " +"también la cache de la base de datos." + +msgid "View counts reset successfully" +msgstr "Los contadores de visitas se han reiniciado con éxito" + +msgid "Refresh capture dates" +msgstr "Actualizar las fechas de las capturas" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Actualiza la fecha de captura almacenada en Gallery en todos los elementos que tengan la " +"tengan disponible en el fichero original (normalmente desde los datos EXIF)." + +msgid "Processing..." +msgstr "Procesando..." + +msgid "Refresh Capture Dates" +msgstr "Actualizar las Fechas de las Capturas" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Procesando elemento %d de %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Actualizados %d de %d elementos" + +msgid "System information" +msgstr "Información del Sistema" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Obtiene los detalles del sistema; practico para hacer un copiar/pegar en el foro de soporte " +"de G2." + +msgid "core" +msgstr "núcleo" + +msgid "unknown" +msgstr "desconocido" + +msgid "Gallery version" +msgstr "Versión de Gallery" + +msgid "PHP version" +msgstr "Versión de PHP" + +msgid "Webserver" +msgstr "Servidor Web" + +msgid "Toolkits" +msgstr "Herramientas" + +msgid "Acceleration" +msgstr "Aceleración" + +msgid "Operating system" +msgstr "Sistema Operativo" + +msgid "Default theme" +msgstr "Tema por defecto" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "habilitado" + +msgid "disabled" +msgstr "deshabilitado" + +msgid "Locale" +msgstr "Fichero de idioma" + +msgid "Browser" +msgstr "Buscador" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Filas en la tabla %s = %d" + +msgid "Successfully saved theme settings" +msgstr "La configuración del tema se ha guardado con éxito" + +msgid "General Settings" +msgstr "Configuración General" + +msgid "Settings saved successfully" +msgstr "La configuración se ha guardado con éxito" + +msgid "Added local upload directory successfully" +msgstr "Se ha creado el directorio local de subida con éxito" + +msgid "Removed local upload directory successfully" +msgstr "Se ha eliminado el directorio local de subida con éxito" + +msgid "Test email sent successfully" +msgstr "Prueba de envío de correo concluida con éxito" + +msgid "There was a problem processing your request, see below for details." +msgstr "Ha habido un problema procesando tu petición, mirar abajo para ver los detalles." + +msgid "Error sending test email, see below for details." +msgstr "Ha habido un error enviando el correo de prueba, mirar abajo para ver los detalles." + +msgid "Language Settings" +msgstr "Configuración del Idioma" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Selecciona el idioma por defecto de Gallery. Los usuarios pueden anular esta configuración " +"en sus preferencias personales o vía bloque selector de idioma si está disponible. Gallery " +"puede intentar detectar automaticamente las preferencias de idioma para cada usuario si " +"chequear las preferencias del navegador esta activado." + +msgid "Default language" +msgstr "Idioma por defecto" + +msgid "Check Browser Preference" +msgstr "Chequear las Preferencias del Navegador" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Tu servidor web no soporta localización. Por favor avisa a tu administrador del sistema " +"para que reconfigure PHP con la opción %s habilitada." + +msgid "Date Formats" +msgstr "Formatos de Fecha" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Especifica como las fechas y las horas se muestran en Gallery. Visita %sphp.net%s para ver " +"detalles de como introducir el formato de las cadenas. Nota que la representación de las " +"cadenas varía dependiendo del idioma activo." + +msgid "Style" +msgstr "Modelo" + +msgid "Format" +msgstr "Formato" + +msgid "Sample" +msgstr "Ejemplo" + +msgid "Date" +msgstr "Fecha" + +msgid "Time" +msgstr "Hora" + +msgid "Date/Time" +msgstr "Fecha/Hora" + +msgid "Filesystem Permissions" +msgstr "Permisos del Sistema de Archivos" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Especifica los permisos por defecto para los archivos y directorios que Gallery crea. Esto " +"no es aplicable a los archivos/directorios que Gallery ya haya creado." + +msgid "New directories" +msgstr "Nuevos directorios" + +msgid "New files" +msgstr "Nuevos ficheros" + +msgid "Session Settings" +msgstr "Ajustes de la Sesión" + +msgid "Session Lifetime" +msgstr "Tiempo de vida de la Sesión" + +msgid "Inactivity Timeout" +msgstr "Interrupción por Inactividad" + +msgid "Embedded Markup" +msgstr "Formato Embebido" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"¿Qué tipo de formato debemos de usar en los campos de usuarios? Por cuestiones de " +"seguridad recomendamos que no se utilice HTML puro. El código BB es una clase especial de " +"formato seguro que permite el formateado simple del texto como: negritas, itálicas, listas, " +"imágenes y urls." + +msgid "Markup" +msgstr "Formato" + +msgid "Email" +msgstr "Correo Electrónico" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Por defecto Gallery usa la función de correo interna de PHP para enviar correos lo cual no " +"requiere configuración. Para usar un servidor de correo smtp introduce la información a " +"continuación, incluyendo la información de autenticación si es necesario. Opcionalmente " +"agrega :puerto después del nombre del servidor para usar un puerto no estándar." + +msgid "Server" +msgstr "Servidor" + +msgid "Username" +msgstr "Usuario" + +msgid "Password" +msgstr "Contraseña" + +msgid "SMTP From Address" +msgstr "Dirección de Respuesta" + +msgid "Invalid email address" +msgstr "Dirección de correo no válida" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Envía un mensaje de correo de prueba para verificar que tu configuración es correcta (tanto " +"si se usa la función de correo PHP como la configuración SMTP). A continuación introduce la " +"dirección del destinatario para el mensaje de prueba." + +msgid "Send Email" +msgstr "Enviar Correo Electrónico" + +msgid "Email Test Error" +msgstr "La Prueba de Correo ha notificado Error" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Cuando Gallery está embebido en otra aplicación (portal, CMS, foro, etc.), puedes elegir " +"entre dos opciones. En cualquier otro caso no debes preocuparte por los ajustes de la " +"cookie. Sigue leyendo para mas detalles." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Si Gallery está embebida y dejas los siguientes campos vacíos, entonces todos los enlaces " +"Descargar Elemento (las URLs de las imágenes y otros objetos) en Gallery embebida tendrán " +"una cadena de texto GALLERYSID añadida en la URL lo que supone un riesgo de " +"seguridad menor cuando los usuarios de Gallery comiencen a copiar y pegar las URLs de " +"las imágenes en foros, libros de visita, etc. La alternativa es configurar la ruta a la " +"cookie. Gallery entonces no añadirá la GALLERYSID a las URLs embebidas de Descargar " +"Elemento. Ej. cuando Gallery es alcanzable en http://www.example.com/application/" +"gallery2/ y la aplicación que la esta embebiendo en http://www.example.com/application/, " +"entonces deberás comparar la ruta /application/gallery2/ con /application/. La ruta de la " +"cookie es la parte de las rutas que es igual, en este caso es '/application/'. Por lo " +"general suele ser solo '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"El dominio de la cookie es solamente necesario para instalaciones embebidas de " +"Gallery y solo si te quieres deshacer de la cadena de texto GALLERYSID en las URLs embebidas " +"de Descargar Elemento. En la mayoría de los casos, el dominio de la cookie se puede dejar " +"en blanco. Habilítalo solo si Gallery y la aplicación que la esta embebiendo sean " +"únicamente alcanzables con diferentes subdominios. Ej. cuando Gallery esté en http://" +"photos.example.com/ y la aplicación esté en http://www.example.com/, entonces deberás " +"habilitar el dominio de la cookie example.com (la parte de la cadena de texto del servidor " +"que es común en ambos, Gallery y la aplicación que la esta embebiendo." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Una vez que cambies las configuraciones de la cookie, todos los usuarios registrados " +"de tu Gallery deberán limpiar la caché de las cookies de sus navegadores. Si no lo " +"hacen, experimentaran problemas de autenticación / cierre de sesión / perdida de sesión." + +msgid "Path" +msgstr "Ruta" + +msgid "Invalid cookie path" +msgstr "La ruta a la cookie no es válida" + +msgid "Domain" +msgstr "Dominio" + +msgid "Invalid cookie domain" +msgstr "El dominio de la cookie no es válido" + +msgid "Locking System" +msgstr "Sistema de Bloqueo" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery utiliza un sistema de bloqueos que previene cambios simultáneos que interfieran con " +"otros. Hay dos tipos de bloqueo, cada uno con sus ventajas e inconvenientes. El sistema de " +"bloqueo basado en Archivo es rápido y eficiente, pero no funciona en un sistema de " +"ficheros NFS y en Windows es poco fiable. El sistema de bloqueo basado en Base de " +"Datos es mas lento pero mas fiable. Si no estas seguro de lo que escoger, nosotros " +"recomendamos el sistema de bloqueo basado en archivo. Si estas teniendo muchos problemas de " +"tiempo de espera, puedes intentar cambiar a la base de datos. Se puede cambiar de un sistema " +"a otro sin problemas" + +msgid "Lock system" +msgstr "Sistema de bloqueo" + +msgid "Helper Processes" +msgstr "Procesos de Apoyo" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Algunos módulos de Gallery usan programas de tu servidor web para hacer procesado de " +"imágenes, archivado y otras operaciones. Esos programas pueden hacer un uso muy intensivo " +"de la maquina podiendo impactar en el rendimiento global de un servidor compartido. Puedes " +"hacer que esos programas se ejecuten con una prioridad mas baja de modo que sean menos " +"intrusivos. Si estás en un hosting compartido y tu anfitrión web se queja, intenta poner la " +"prioridad baja." + +msgid "Priority" +msgstr "Prioridad" + +msgid "Save" +msgstr "Guardar" + +msgid "Reset" +msgstr "Reiniciar" + +msgid "Create A New Group" +msgstr "Crear Un Nuevo Grupo" + +msgid "Group Name" +msgstr "Nombre del Grupo" + +msgid "(required)" +msgstr "(requerido)" + +msgid "You must enter a group name" +msgstr "Debes introducir un nombre para el grupo" + +#, c-format +msgid "Group '%s' already exists" +msgstr "El grupo '%s' ya existe" + +msgid "Create Group" +msgstr "Crear Grupo" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Create A New User" +msgstr "Crear Un Nuevo Usuario" + +msgid "You must enter a username" +msgstr "Debes introducir un nombre para el usuario" + +#, c-format +msgid "Username '%s' already exists" +msgstr "El usuario '%s' ya existe" + +msgid "Full Name" +msgstr "Nombre Completo" + +msgid "Email Address" +msgstr "Dirección de Correo Electrónico" + +msgid "You must enter an email address" +msgstr "Debes introducir una direción de correo electrónico" + +msgid "Language" +msgstr "Idioma" + +msgid "You must enter a password" +msgstr "Debes introducir una contraseña" + +msgid "Verify Password" +msgstr "Verificar Contraseña" + +msgid "You must enter the password a second time" +msgstr "Debes introducir una contraseña por segunda vez" + +msgid "The passwords you entered did not match" +msgstr "Las contraseñas que has escrito no coinciden" + +msgid "Create User" +msgstr "Crear Usuario" + +msgid "Delete A Group" +msgstr "Borrar Un Grupo" + +msgid "Are you sure?" +msgstr "¿Estás seguro?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Esto eliminara completamente a %s de Gallery. ¡No hay vuelta atras!" + +msgid "Delete" +msgstr "Borrar" + +msgid "Delete a User" +msgstr "Borrar un Usuario" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "El usuario %s es el propietario de %s elementos." + +#, c-format +msgid "Delete user %s and..." +msgstr "Borrar usuario %s y ..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Asignar un nuevo propietario para todos los elementos de %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Borrar todos los elementos de %s y asignar un nuevo usuario para todos los álbumes no vacíos " +"que queden. Los elementos que %s no tengan permiso de borrado serán además reasignados para " +"el nuevo usuario." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "" +"Nuevo propietario (si se deja en blanco se interpreta uno de los Administradores del Sitio):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"¡El usuario '%s' no existe! No puedo asignar elementos a un usuario que no existe." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "¡El nuevo propietario debe de ser diferente al usuario que estamos borrando!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "¡El nuevo propietario no puede ser un usuario Invitado / Anónimo!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Esto eliminara completamente %s de Gallery. ¡No hay vuelta atrás!" + +msgid "Edit a group" +msgstr "Editar un grupo" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Editar los Miembros del Grupo '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Agregado el usuario '%s' al grupo '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Eliminado el usuario '%s' del grupo '%s'" +msgstr[1] "Eliminados los usuarios %s del grupo '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Este grupo contiene %d usuario" +msgstr[1] "Este grupo contiene %d usuarios" + +msgid "Members" +msgstr "Miembros" + +msgid "« first" +msgstr "« primero" + +msgid "« back" +msgstr "« anterior" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Mostrando página %d de %d" + +msgid "next »" +msgstr "siguiente »" + +msgid "last »" +msgstr "ultimo »" + +msgid "Filter" +msgstr "Filtrar" + +msgid "Clear" +msgstr "Limpiar" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d usuario coincide con tu filtro" +msgstr[1] "%d usuarios coinciden con tu filtro" + +msgid "Remove selected" +msgstr "Eliminar seleccionado" + +msgid "You must select a user to remove." +msgstr "Debes elegir un usuario para eliminar" + +msgid "You can't remove yourself from this group." +msgstr "No puedes eliminarte a ti mismo de este grupo." + +msgid "Add Member" +msgstr "Agregar Miembro" + +msgid "Add" +msgstr "Agregar" + +msgid "You must enter a username." +msgstr "Debes introducir un nombre de usuario." + +#, c-format +msgid "User '%s' does not exist." +msgstr "El usuario '%s' no exite." + +msgid "This user already is in this group." +msgstr "Este usuario ya pertenece a este grupo." + +msgid "Done" +msgstr "Hecho" + +msgid "Edit a user" +msgstr "Editar un usuario" + +msgid "That username is already in use" +msgstr "El nombre de usuario ya esta en uso" + +msgid "You must enter a new username" +msgstr "Debes introducir un nuevo nombre de usuario" + +msgid "E-mail Address" +msgstr "Dirección de Correo Electrónico" + +msgid "(suggested)" +msgstr "(sugerido)" + +msgid "Options" +msgstr "Opciones" + +msgid "Lock user." +msgstr "Bloquear usuario." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Los usuarios bloqueados no pueden editar la información de su propia cuenta. (Contraseña, " +"Nombre, Dirección de correo electrónico, etc.)" + +msgid "Reset failed login count." +msgstr "Reiniciar contadores de fallos de autenticación." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d fallo de autenticación desde la última conexión con éxito." +msgstr[1] "%d fallos de autenticación desde la última conexión con éxito." + +msgid "Group Management" +msgstr "Gestión de Grupos" + +#, c-format +msgid "Removed group '%s'" +msgstr "Eliminado grupo '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Creado grupo '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Modificado grupo '%s'" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Hay %d grupo en el sistema." +msgstr[1] "Hay un total de %d grupos en el sistema." + +msgid "Edit Group" +msgstr "Editar Grupo" + +msgid "Edit" +msgstr "Editar" + +msgid "Add/Remove Users" +msgstr "Agregar/Eliminar Usuarios" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "El grupo '%s' no existe." + +msgid "You cannot delete that group" +msgstr "No puedes eliminar ese grupo" + +msgid "You cannot edit that group's users" +msgstr "No puedes editar los usuarios de ese grupo" + +msgid "Edit Group (by list)" +msgstr "Editar Grupo (por lista)" + +msgid "Action" +msgstr "Acción" + +msgid "edit" +msgstr "editar" + +msgid "delete" +msgstr "eliminar" + +msgid "members" +msgstr "miembros" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d grupo coincide con tu filtro" +msgstr[1] "%d grupos coinciden con tu filtro" + +msgid "System Maintenance" +msgstr "Mantenimiento del Sistema" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Completada la tarea %s con éxito." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "La tarea %s fallo antes de completarse" + +msgid "Task name" +msgstr "Nombre de la tarea" + +msgid "Last run" +msgstr "Ultima vez que se ejecutó" + +msgid "Success/Fail" +msgstr "Éxito/Fracaso" + +msgid "Not run yet" +msgstr "No se ha ejecutado todavía" + +msgid "Success" +msgstr "Éxito" + +msgid "Failed" +msgstr "Fracaso" + +msgid "run now" +msgstr "ejecutar ahora" + +msgid "Last Run Details:" +msgstr "Detalles de la última ejecución" + +msgid "Performance Tuning" +msgstr "Ajuste de Rendimiento" + +msgid "Updated performance settings successfully" +msgstr "Ajustes de rendimiento actualizados con éxito" + +msgid "Deleted all saved pages" +msgstr "Borradas todas las páginas guardadas" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Mejora el funcionamiento de Gallery almacenando las páginas web enteras en la base de " +"datos. Esto puede reducir considerablemente los recursos requeridos por el servidor web y " +"la base de datos para mostrar una página web. En contrapartida la página web que ves podría " +"estar un poco anticuada, sin embargo puedes obtener la versión mas reciente de la página " +"forzando un refresco en tu navegador (tipicamente mantenendo pulsada la tecla shift mientras " +"haces click en el botón de recargar)." + +msgid "Partial Acceleration" +msgstr "Aceleración Parcial" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"La aceleración parcial obtiene un aumento aproximado del rendimiento de 10-25%, pero algunos " +"formularios con datos dinámicos (como los contadores de visitas) no serán actualizados al " +"momento. Todo el contenido que aparezca en bloques (como el bloque de imagen aleatoria, " +"cualquier bloque de la barra lateral, etc) siempre estará actualizado." + +msgid "Full Acceleration" +msgstr "Aceleración Completa" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"La aceleración completa obtiene un aumento aproximado del rendimiento de 90%, pero ningun " +"dato dinámico (el bloque de imagen aleatoria, otros bloques de la barra lateral, el numero " +"de elementos en tu carrito de la compra, los contadores de visitas, etc) será actualizado " +"hasta que la web almacenada expire." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Puedes especificar de forma adicional cuando expiran las páginas almacenadas. Configurando " +"un tiempo de expiración largo reducirás la carga de tu servidor, pero incrementarás el " +"intervalo entre que los usuarios ven los cambios. Un tiempo de expiración mas bajo " +"significa que los usuarios verán datos mas actuales, pero habrá mas carga en tu servidor." + +msgid "Here are some standard acceleration profiles:" +msgstr "Aquí hay algunos perfiles de aceleración estándar:" + +msgid "Medium acceleration" +msgstr "Aceleración media" + +msgid "High acceleration" +msgstr "Aceleración alta" + +msgid "Guest Users" +msgstr "Usuarios Invitados" + +msgid "Expires after:" +msgstr "Expira después de:" + +msgid "Clear Saved Pages" +msgstr "Borrar Paginas Guardadas" + +msgid "Status: Inactive" +msgstr "Estado: Inactivo" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ desactivado" + +msgid "Status: Active" +msgstr "Estado: Activo" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ activado" + +msgid "Status: Not Installed" +msgstr "Estado: No Instalado" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ desinstalado" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Estado: Requiere actualización (Inactivo)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Estado: Plugin Incompatible (Inactivo)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Estado: Inactivo (Requiere Configuración)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ necesita configuración" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ borrado" + +msgid "Warning!" +msgstr "¡Atención!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "¿Estás seguro de que quieres desinstalar __PLUGIN__?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Esto también quitará cualquier permiso y limpiará cualquier información temporal creada por " +"este módulo." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Este plugin será desinstalado, pero sus ficheros serán guardados de modo que puedas " +"reinstalarlo de nuevo." + +msgid "Yes" +msgstr "Sí" + +msgid "No" +msgstr "No" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "¿Estás seguro de que quieres borrar __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Este plugin será desinstalado y sus archivos borrados." + +msgid "The files of this plugin will be deleted permanently." +msgstr "Los archivos de este plugin serán borrados permanentemente." + +msgid "disabled(__COUNT__)" +msgstr "deshabilitados(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "actualizados(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "no instalados(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "requieren actualización(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "incompatibles(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "El borrado de __PLUGIN__ falló" + +msgid "Gallery Plugins" +msgstr "Gallery Plugins" + +msgid "Get More Plugins" +msgstr "Obtener Mas Plugins" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"¿Quieres mas características? Los nuevos plugins están a un clic de distancia. Haz click " +"ahora en el enlace %s para comenzar." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Las características de Gallery vienen como plugins separados. Puedes descargar e instalar " +"plugins para agregar mas características a Gallery, o bien puedes deshabilitar las " +"características que no quieras usar. Para usar una característica debes, instalarla, " +"configurarla (si es necesario) y activarla. Si no quieres usar una característica, puedes " +"desactivarla." + +msgid "Plugin Name" +msgstr "Nombre del Plugin" + +msgid "Installed" +msgstr "Instalado" + +msgid "Version" +msgstr "Versión" + +msgid "Actions" +msgstr "Acciones" + +msgid "help" +msgstr "ayuda" + +#, c-format +msgid "Screenshot for %s" +msgstr "Captura de pantalla para %s" + +msgid "Incompatible plugin!" +msgstr "¡Plugin Incompatible!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "API del Núcleo Requerida: %s (disponible: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "API del Plugin Requerida: %s (disponible: %s)" + +msgid "configure" +msgstr "configurar" + +msgid "up to date" +msgstr "actualizar" + +msgid "upgrade required" +msgstr "requiere actualizar" + +msgid "not installed" +msgstr "no instalado" + +msgid "incompatible" +msgstr "incompatible" + +msgid "Repository" +msgstr "Repositorio" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Por favor asegurate de que tu conexión a internet está configurada de forma correcta o " +"intentalo de nuevo más tarde." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Fallo al escanear el estado del plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Tu copia local del repositorio estaba rota y ha sido reparada. Por favor descarga la lista " +"de plugins de nuevo." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "El índice del repositorio ha sido actualizado con éxito." + +msgid "All plugins are already up-to-date." +msgstr "Todos los plugins estan actualizados." + +#, c-format +msgid "%s plugin updated." +msgstr "Plugin %s actualizado." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d paquete de idioma borrado." +msgstr[1] "%d paquetes de idioma borrados." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"No se envía información personal sobre ti o tu instalación de Gallery al servidor de Gallery " +"en ningún momento." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Descarga e instala nuevos plugins de forma fácil y rápida. Si decides que no quieres un " +"plugin, puedes borrarlo de tu Gallery. Hay multiples diferentes repositorios de plugins, " +"puedes elegir cual de ellos quieres usar (se pueden usar todos ellos a la vez). Una vez que " +"hayas elegido, debes descargar de forma periodica la última lista de plugins para buscar " +"posibles actualizaciones. %s En conexiones lentas este proceso puede llevar un minuto o dos." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Plugins Desarrollados de forma Oficial por el Proyecto Gallery (%srecomendado%s)" + +#, c-format +msgid "last updated on %s" +msgstr "última actualización el %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Plugins Experimentales del Proyecto Gallery (%snuevas características molonas, podrian dar " +"fallos%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Plugins de la Comunidad (%s¡úsalos por tu cuenta y riesgo!%s)" + +msgid "Repository Error" +msgstr "Error de Repositorio" + +msgid "You must select at least one repository." +msgstr "Debes elegir al menos un repositorio." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Configurar tu Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Antes de que puedas proceder, debes cambiar algunos permisos para que Gallery pueda instalar " +"plugins por ti. Es fácil. Solamente ejecuta lo siguiente en una consola o via cliente ftp:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Si tienes problemas cambiando los permisos, preguntale a tu administrador del sistema para " +"obtener ayuda. Cuando hayas solucionado los permisos, haz click en el botón continuar para " +"proceder." + +msgid "Continue" +msgstr "Continuar" + +msgid "Download Plugin List" +msgstr "Descargar Lista de Plugins" + +msgid "Show Repository List" +msgstr "Mostar la Lista de Repositorios" + +msgid "Upgrade Gallery" +msgstr "Actualizar Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Una nueva versión de Gallery está disponible, pero no puede ser actualizada a traves de esta " +"interfaz. La actualización podría hacer que algunos de tus plugins dejen de trabajar, pero " +"puede haber otros disponibles que dependan de esa nueva version. Aquí estan los pasos " +"recomendados para hacer la actualización:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sDescargar%s el núcleo de Gallery" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Leer las %sinstrucciones de actualización%s y realizar la misma" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Los plugins incompatibles estan marcados con un icono de exclamación." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Un nueva versión del módulo principal está disponible. Puede haber plugins que sean " +"incompatibles con el módulo principal instalado, que no muestran aquí. Puede ver una %slista " +"completa%s de plugins, incluyendo incompatibles, los cuales son marcados con un icono rojo. " + +msgid "upgrade available" +msgstr "actualización disponible" + +msgid "locked" +msgstr "bloqueado" + +msgid "Theme Name" +msgstr "Nombre del Tema" + +msgid "Module Name" +msgstr "Nombre del Módulo" + +msgid "Latest" +msgstr "El último" + +msgid "Locked Plugin" +msgstr "Plugin Bloqueado" + +msgid "Incompatible Plugin" +msgstr "Plugin Incompatible" + +msgid "Upgrade Available" +msgstr "Actualización Disponible" + +msgid "download" +msgstr "descargar" + +msgid "modify" +msgstr "modificar" + +msgid "Upgrade All Plugins" +msgstr "Actualizar todos los Plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery puede actualizar automáticamente tus temas y módulos a las últimas versiones " +"disponibles. No se descargarán nuevos plugins." + +msgid "Upgrade All" +msgstr "Actualizar Todo" + +#, c-format +msgid "Download %s" +msgstr "Descarga %s" + +msgid "No packages have been selected." +msgstr "No se han seleccionado paquetes." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Descarga un paquete para usar este plugin. Puedes actualizar escogiendo una nueva version " +"del paquete a descargar. Los paquetes de idioma son opcionales, sólo necesitas descargar " +"aquellos que quieras usar en tu sitio." + +msgid "Base Packages" +msgstr "Paquetes de Base" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: versión %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: versión %s (build %s) %s¡El degradar no está soportado!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sInstalado Actualmente%s: versión %s (build %s)" + +msgid "Language Packages" +msgstr "Paquetes de Idioma" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%sseleccionar todos%s%sdeseleccionar todos%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s versión %s (actualizando desde %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s versión %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s versión %s (%suna nueva versión %s está instalada%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s versión %s (actualmente instalado)" + +msgid "No compatible language packages available" +msgstr "Paquetes de idioma compatibles no disponibles" + +msgid "You must select a base package before choosing language packs." +msgstr "Debes seleccionar un paquete de base antes de seleccionar paquetes de idioma." + +msgid "Update" +msgstr "Actualizar" + +msgid "Gallery Themes" +msgstr "Temas de Gallery" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Tema %s activado con éxito" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Tema %s desactivado con éxito" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Tema %s instalado con éxito" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Tema %s desinstalado con éxito" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Tema %s actualizado con éxito" + +msgid "Successfully saved default album settings" +msgstr "Configuración predeterminada del álbum guardada con éxito" + +msgid "Restored theme settings" +msgstr "Restaurar la configuración del tema" + +msgid "Defaults" +msgstr "Por defecto" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Esa es la configuración visual por defecto de los álbumes en Gallery. Puede ser anulada en " +"cada álbum." + +msgid "Default sort order" +msgstr "Orden de colocación por defecto" + +msgid "with" +msgstr "con" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" +"El tema %s es incompatible con tu versión de Gallery o no está disponible. Por favor " +"actualiza el tema %s o escoge otro tema por defecto." + +msgid "New albums" +msgstr "Nuevos álbumes" + +msgid "Save Defaults" +msgstr "Guardar cómo predeterminada" + +#, c-format +msgid "%s Theme Settings" +msgstr "Configuración del Tema %s" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Esa es la configuración global para el tema. Puede ser anulada a nivel de álbum." + +msgid "Available" +msgstr "Disponible" + +msgid "Choose a block" +msgstr "Escoge un bloque" + +msgid "Selected" +msgstr "Seleccionado" + +msgid "Remove" +msgstr "Quitar" + +msgid "Move Up" +msgstr "Subir" + +msgid "Move Down" +msgstr "Bajar" + +msgid "Parameter" +msgstr "Parámetro" + +msgid "Value" +msgstr "Valor" + +msgid "There are no settings for this theme" +msgstr "Este tema no tiene configuración" + +msgid "Save Theme Settings" +msgstr "Guardar la Configuración del Tema" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Las herramientas mostradas a continuación pueden solaparse en las operaciones y tipos mime " +"que soportan. Clasifica las herramientas aquí para determinar que realizara esas " +"operaciones." + +msgid "Toolkit" +msgstr "Herramienta" + +msgid "Order" +msgstr "Orden" + +msgid "up" +msgstr "subir" + +msgid "down" +msgstr "bajar" + +msgid "User Management" +msgstr "Gestión de Usuarios" + +#, c-format +msgid "Removed user '%s'" +msgstr "Usuario '%s' eliminado" + +#, c-format +msgid "Created user '%s'" +msgstr "Usuario '%s' creado" + +#, c-format +msgid "Modified user '%s'" +msgstr "Usuario '%s' modificado" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Hay %d usuario en el sistema." +msgstr[1] "Hay un total de %d usuarios en el sistema." + +msgid "Edit User" +msgstr "Editar Usuario" + +msgid "You cannot delete yourself!" +msgstr "¡No puedes eliminarte a ti mismo!" + +msgid "You cannot delete the special guest user." +msgstr "No puedes eliminar el usuario especial invitado." + +msgid "Edit User (by list)" +msgstr "Editar Usuario (por lista)" + +msgid "Locked" +msgstr "Bloqueado" + +msgid "Failed Logins" +msgstr "Conexiones Fallidas" + +msgid "Thumbnails" +msgstr "Miniaturas" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery puede crear las miniaturas en tiempo de subida, o la primera vez que se visualicen. " +"En cualquier caso, creará y guardará la miniatura solo una vez, pero si las creas en el " +"momento de la subida los álbumes se mostraran más rápido la primera vez a cargo de un mayor " +"tiempo de subida." + +msgid "Create thumbnails now" +msgstr "Crear miniaturas ahora" + +msgid "This is a test email from Gallery2" +msgstr "Esto es un correo de prueba de Gallery2" + +msgid "Edit Conflict!" +msgstr "¡Conflicto de Revisión!" + +msgid "Security Violation" +msgstr "Violación de Seguridad" + +msgid "Database Error" +msgstr "Error en la Base de Datos" + +msgid "Platform Error" +msgstr "Error de Plataforma" + +msgid "Authentication Failure" +msgstr "Fallo de Autenticación" + +msgid "Error" +msgstr "Error" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Tu cambio no se ha completado porque alguien más ha hecho un cambio conflictivo en el mismo " +"elemento. Usa el botón de atrás de tu navegador para regresar a la página donde te " +"encontrabas, luego recarga esa página e intenta hacer el cambio de nuevo." + +msgid "Go back and try again" +msgstr "Vuelve e intentarlo de nuevo" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Si este problema sucede en repetidas ocasiones, puede ser por una corrupcion en tu caché. " +"Los Administradores del Sitio pueden limpiar esta caché." + +msgid "Clear the cache" +msgstr "Vaciar la caché" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"Como alternativa, puedes volver a la página principal de Gallery y reanudar la búsqueda." + +msgid "The action you attempted is not permitted." +msgstr "La acción que has intentado hacer no está permitida." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Tu cambio no se puede completar debido a una perdida de datos de sesión. Por favor " +"reintentalo. Si sigue sin funcionar, intenta desconectarte y volver a conectarte de nuevo." + +msgid "An error has occurred while interacting with the database." +msgstr "Ha ocurrido un error interactuando con la base de datos." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"La naturaleza exacta de los errores de la base de datos no son capturados a no ser que este " +"activo el modo de depuración de Gallery en config.php. Antes de pedir ayuda para este error " +"por favor habilita la salida de depuración de memoria intermedia y reintenta la operación. " +"Revisa la última parte de la larga salida de depuración para encontrar detalles sobre el " +"error." + +msgid "An error has occurred while interacting with the platform." +msgstr "Ha ocurrido un error interactuando con la base plataformaº." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"La naturaleza extacta del error de la plataforma es desconocida. Una causa común son " +"permisos insuficientes en el sistema de archivos. Esto puede suceder si tú o tu servidor web " +"cambio algo en el sistema de ficheros, e.j. restaurando datos desde una copia de seguridad." + +msgid "Item not found." +msgstr "Elemento no encontrado." + +msgid "An error has occurred." +msgstr "Ha ocurrido un error." + +msgid "Back to the Gallery" +msgstr "Volver a Gallery" + +msgid "Error Detail" +msgstr "Detalle del Error" + +msgid "System Information" +msgstr "Información del sistema" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"No tienes ninguna Herramienta Gráfica activada que pueda manejar imágenes JPEG. Si agregas " +"imágenes, probablemente no se generará ninguna miniatura." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Visita la página de Módulos para activar una Herramienta Gráfica." + +msgid "Add Sub-Album" +msgstr "Agregar Sub-Álbum" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"El nombre de este álbum en tu disco duro. Debe de ser único en este álbum. Usa solamente " +"carácteres alfanuméricos, líneas bajas o guiones. Podrás renombrarlo mas adelante." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "El nombre contiene carácteres no válidos. Por favor introduce otro." + +msgid "You must enter a name for this album." +msgstr "Debes introducir un nombre para este álbum." + +msgid "The name you entered is already in use. Please enter another." +msgstr "El nombre que has escogido ya esta en uso. Por favor escoge otro." + +msgid "This is the album title." +msgstr "Este es el titulo del álbum." + +msgid "This is the album summary." +msgstr "Este es el resumen del álbum." + +msgid "Keywords are not visible, but are searchable." +msgstr "Las palabras clave no son visibles, pero se puede buscar por ellas" + +msgid "This is the long description of the album." +msgstr "Esta es la descripción larga del álbum." + +msgid "Create" +msgstr "Crear" + +msgid "Upload Complete" +msgstr "Carga Completa" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d archivo agregado con éxito." +msgstr[1] "%d archivos agregados con éxito." + +msgid "No files added." +msgstr "No se agregaron ficheros." + +#, c-format +msgid "Added %s" +msgstr "Agregado %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Fallo al agregar %s" + +msgid "Add more files" +msgstr "Agregar mas archivos" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Tu servidor web está configurado para rechazar la subida de archivos desde el navegador en " +"este momento. Por favor contacta con el administrador del sistema para recibir ayuda." + +msgid "Upload files directly from your computer." +msgstr "Subir archivos directamente desde tu ordenador." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" +"Introduce a continuación en las cajas de texto la ruta completa al archivo, de forma " +"opcional puedes introducir un título." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Nota: Puedes subir hasta %s de por vez. Si quieres subir una mayor cantidad de " +"datos, debes subir los archivos por bloques, usar un formato diferente de subida, o pedirle " +"al administrador de sistemas que habilite un mayor ratio de subida." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Nota: Puedes subir hasta %s de por vez. Los ficheros no deben sobrepasar los %s " +"megas de forma individual. Si quieres subir una mayor cantidad de datos, debes subir los " +"archivos por bloques, usar un formato diferente de subida, o pedirle al administrador de " +"sistemas que habilite un mayor ratio de subida." + +msgid "More Upload Boxes..." +msgstr "Mas Cajas de Subida..." + +msgid "Set item titles from:" +msgstr "Establecer los títulos de los elementos de:" + +msgid "Assign caption to:" +msgstr "Asignar etiqueta a:" + +msgid "No Thumbnail" +msgstr "Sin Miniatura" + +msgid "Delete Items" +msgstr "Borrar Elementos" + +msgid "No items were selected for deletion" +msgstr "No se han seleccionado elementos para eliminar" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d elemento eliminado con éxito" +msgstr[1] "%d elementos eliminados con éxito" + +msgid "This album contains no items to delete" +msgstr "Este ábum no contiene elementos para eliminar" + +msgid "Choose the items you want to delete" +msgstr "Elige los elementos que quieres eliminar" + +#, c-format +msgid "(page %d of %d)" +msgstr "(página %d de %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Los elementos que has seleccionado aquí quedaran seleccionados mientras te mueves entre las " +"páginas." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Un elemento seleccionado en otras páginas" +msgstr[1] "%d elementos seleccionados en otras páginas" + +msgid "(data)" +msgstr "(datos)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(el álbum contiene %d elemento)" +msgstr[1] "(el álbum contiene %d elementos)" + +msgid "(empty album)" +msgstr "(álbum vacío)" + +msgid "Check All" +msgstr "Seleccionar todos" + +msgid "Check None" +msgstr "Deseleccionar todos" + +msgid "Invert" +msgstr "Invertir" + +msgid "Previous Page" +msgstr "Página Anterior" + +msgid "Next Page" +msgstr "Página Siguiente" + +msgid "Deletion Complete" +msgstr "Borrado Completo" + +msgid "Item successfully deleted" +msgstr "Elemento eliminado con éxito" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "¿Estás seguro de querer eliminar este %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Contiene %d elemento." +msgstr[1] "Contiene %d elementos." + +msgid "There is no undo!" +msgstr "¡No se puede deshacer!" + +msgid "There was a problem processing your request." +msgstr "Ha habido un problema procesando tu petición" + +msgid "Sort order" +msgstr "Orden de Colocación" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Configura el orden de colocación para el álbum. Se aplica tanto a todos los elementos " +"actuales como a los nuevos elementos agregados." + +msgid "Apply to all subalbums" +msgstr "Aplicar a todos los subálbumes" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" +"Todo elemento requiere una miniatura. Selecciona el tamaño por defecto en pixeles aquí." + +msgid "You must enter a number (greater than zero)" +msgstr "Debes escribir un numero (mayor que cero)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Usar este tamaño de miniatura en todos los subálbumes" + +msgid "Resized Images" +msgstr "Imágenes Redimensionadas" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Todo elemento en tu álbum puede tener múltiples tamaños. Define los tamaños por defecto aquí." + +msgid "Active" +msgstr "Activo" + +msgid "Target Size (pixels)" +msgstr "Tamaño del Objetivo (píxeles)" + +msgid "You must enter a valid size" +msgstr "Debes escribir un tamaño válido" + +msgid "Use these target sizes in all subalbums" +msgstr "Usar esos tamaños de objetivo en todos los subálbumes" + +msgid "Apply settings to existing items" +msgstr "Aplicar configuración a los elementos existentes" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"La configuración de la miniatura y la imagen redimensionada son para todos los elementos " +"nuevos. Para aplicar esa caonfiguración a todos los elementos en tu album, marca la opción " +"apropiada. Incluyendo subalbums aplicará los propios ajustes de cada álbum a sus miniaturas/" +"imágenes redimensionadas, que pueden no coincidir con la configuración de arriba. " +"Construyendo las imágenes ahora la operación puede tomarse un tiempo, pero ahorra lo que " +"tarda en construir y cachear cada fichero cuando es visto por primera vez. " + +msgid "Apply album setting to thumbnails" +msgstr "Aplicar la configuración del álbum a las miniaturas" + +msgid "... and for all subalbums" +msgstr "... y para todos los subálbumes" + +msgid "Build thumbnails too" +msgstr "Constuir también miniaturas" + +msgid "Apply album setting to resized images" +msgstr "Aplicar la configuración del álbum a las imágenes redimensionadas" + +msgid "Build resizes too" +msgstr "Construir también imágenes redimensionadas" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Para que Gallery muestre correctamente esta animación, ha de saber el alto y ancho de la " +"misma. Si tienes instalada una herramienta gráfica que maneje archivos de animación, " +"entonces estos valores deberían estar ya configurados. En caso contrario, deberían estar " +"puestos a 0. Si no introduces aquí los valores correctos, la animación podría aparecer " +"distorsionada cuando se visione en tu navegador web. Date cuenta que cambiar estos valores " +"no cambia la animación en si misma por lo que experimentar no causa ningún daño." + +msgid "Width" +msgstr "Ancho" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Debes escribir un valor mayor o igual a cero" + +msgid "Height" +msgstr "Alto" + +msgid "There were errors saving some items" +msgstr "Ha habido errores guardando algunos elementos" + +msgid "There were errors saving all items" +msgstr "Ha habido errores guardando todos los elementos" + +msgid "Successfully saved all items" +msgstr "Todos los elementos guardados con éxito" + +msgid "This album contains no items" +msgstr "Este álbum no contiene elementos" + +msgid "Saved successfully." +msgstr "Guardado con éxito." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Este elemento ha sido modificado por alguien más en el mismo momento. Tus cambios se " +"perdieron." + +msgid "You do not have permissions to modify this item." +msgstr "No tienes permisos para modificar este elemento." + +msgid "Save and Done" +msgstr "Guardar y Listo" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Guardar y Editar los %s anteriores" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Guardar y Editar los %s próximos" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"El nombre de este elemento en el disco duro. Debe de ser único en este álbum. Usa " +"solamente caracteres alfanuméricos, líneas bajas o guiones." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "El nombre contiene caracteres no válidos. Por favor escoge otro." + +msgid "You must enter a name for this item." +msgstr "Debes escribir un nombre para este elemento." + +msgid "The name you entered is already in use. Please choose another." +msgstr "El nombre que has escrito ya está en uso. Por favor escoge otro." + +msgid "The title of this item." +msgstr "El titulo de este elemento." + +msgid "The root album must have a title." +msgstr "El álbum principal debe tener un título." + +msgid "The summary of this item." +msgstr "El resumen para este elemento." + +msgid "This is the long description of the item." +msgstr "Esta es la descripción larga del elemento." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Fecha y Hora" + +msgid "Set the date and time when this image was captured." +msgstr "Ajusta la fecha y hora a cuando la imagen fue capturada." + +msgid "Set the date and time to be displayed for this item." +msgstr "Ajusta la fecha y hora para ser mostrada por este elemento." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Ajusta la fecha y hora para ser mostrada por este %s." + +msgid "Date:" +msgstr "Fecha:" + +msgid "Time:" +msgstr "Hora:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Usar la fecha y hora de la captura original desde la información del archivo (ej. Exif tag):" + +msgid "You must enter a valid date and time" +msgstr "Debes escribir una fecha y hora válidas" + +msgid "Thumbnail" +msgstr "Miniatura" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Establece el tamaño de la miniatura. El lado más grande de la miniatura no será mayor que " +"este valor. Deja este campo en blanco si no quieres miniatura." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de elemento, de modo que no " +"podemos crear o modificar una miniatura." + +msgid "Unable to create a thumbnail for this item" +msgstr "No es posible crear una miniatura para este elemento" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Para que Gallery muestre correctamente esta película, ha de saber el alto y ancho de la " +"misma. Si tienes instalada una herramienta gráfica que maneje archivos de vídeo, " +"entonces estos valores deberían estar ya configurados. En caso contrario, deberían estar " +"puestos a 0. Si no introduces aqui los valores correctos, la película podría aparecer " +"distorsionada cuando se visione en tu navegador web. Date cuenta que cambiar estos valores " +"no cambia la película en si misma por lo que experimentar no causa ningún daño." + +msgid "Resized Photos" +msgstr "Fotos Redimensionadas" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Estos tamaños son versiones alternativas redimensionadas del original que te gustaría tener " +"disponibles para mostrar." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos crear o modificar las versiones redimensionadas." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Puedes seleccionar que parte de la foto será usada para la miniatura. Esto no afectará a " +"las versiones redimensionadas o al original de la imagen." + +msgid "Aspect Ratio: " +msgstr "Relación de Aspecto: " + +msgid "Crop" +msgstr "Recortar" + +msgid "Undo Changes" +msgstr "Deshacer Cambios" + +msgid "Reset to default" +msgstr "Reiniciar a valores por defecto" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos cortar la miniatura." + +msgid "Rotate" +msgstr "Rotar" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Solamente puedes rotar la foto en intervalos de 90 grados." + +msgid "CC 90°" +msgstr "CC 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos rotarla." + +msgid "Scale" +msgstr "Escalar" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Encoger o agrandar la foto original. Cuando Gallery escala una foto, mantiene la misma " +"relación de aspecto (alto por ancho) que la foto original para evitar distorsión. Tu foto " +"será escalada hasta que quepa dentro del recuadro que forme el tamaño que introduzcas aquí." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos escalarla." + +msgid "You must enter a size" +msgstr "Debes escribir un tama&ntide;o" + +msgid "Preserve Original" +msgstr "Mantener el Original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery no modifica tu foto original cuando la rota y la escala. En cambio, duplica la foto " +"y trabaja con copias. Esto requiere una pequeña cantidad de espacio extra en el disco pero " +"previene que el original se dañe. Deshabilitando esta opción, se provocará que cualquier " +"acción (rotado, escalado, etc) modifique el original" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Este es un enlace a otra foto, de modo que no puedes cambiar el original" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Hay enlaces a esta foto, de modo que no puedes cambiar el original" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"No hay herramientas gráficas que soporten modificar el original así que las operaciones solo " +"se pueden aplicar a las copias" + +msgid "Preserve Original Photo" +msgstr "Mantener la Foto Original" + +msgid "Modified Photo" +msgstr "Foto Modificada" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Estas usando una copia de la foto original que ha sido escalada o rotada. La foto original " +"todavía esta disponible, pero ya no esta siendo usada. Cualquier cambio que hagas se " +"aplicará a la copia." + +msgid "Restore original" +msgstr "Restaurar original" + +msgid "Choose a theme" +msgstr "Escoge un tema" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" +"Este álbum está configurado para usar el tema %s el cual o bien es incompatible con Gallery " +"o no está disponible. Por favor actualiza el tema %s o usa otro tema para este álbum." + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Los temas controlan el 'look and feel' del álbum. Puedes escoger un tema diferente para " +"cada álbum. Si no eliges un tema, usaremos el tema %s por defecto." + +msgid "Use this theme in all subalbums" +msgstr "Usar este tema en todos los subálbumes" + +msgid "Choose Theme" +msgstr "Escoger Tema" + +#, c-format +msgid "Configure the %s theme" +msgstr "Configura el tema %s" + +msgid "These settings only apply to the theme for this album." +msgstr "Esta configuración solo se aplicará al tema de este álbum." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Usar esta configuración en todos los subálbumes que usen el tema %s" + +msgid "Album Highlight" +msgstr "Destacar Álbum" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Puedes hacer de este elemento la miniatura para cualquier álbum superior." + +msgid "Highlight for:" +msgstr "Destacar para:" + +msgid "Highlight" +msgstr "Destacar" + +msgid "Move an Item" +msgstr "Mover un Elemento" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d elemento movido con éxito" +msgstr[1] "%d elementos movidos con éxito" + +msgid "This album contains no items to move." +msgstr "Este álbum no contiene elementos para mover." + +msgid "Source" +msgstr "Fuente" + +msgid "Choose the items you want to move" +msgstr "Escoge los elementos que quieres mover" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"El destino que has elegido no acepta sub-álbumes, de modo que todos los sub-álbumes han sido " +"deseleccionados." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"El destino que has elegido solo acepta sub-álbumes, de modo que todo lo que no sea álbum ha " +"sido deseleccionado." + +msgid "You are not allowed to move this item away from here." +msgstr "No estas autorizado a mover este elemento fuera de aquí." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "No estas autorizado a mover el álbum al destino escogido." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "No estas autorizado a mover un elemento al destino escogido." + +msgid "You cannot move an album into its own subtree." +msgstr "No puedes mover un álbum dentro de su propio subárbol." + +msgid "Destination" +msgstr "Destino" + +msgid "Choose a new album for them" +msgstr "Escoje un nuevo álbum para ellos" + +msgid "You don't have the permission to add items in this album" +msgstr "No tienes permiso para agregar elementos en este álbum" + +msgid "No destination chosen" +msgstr "No se escogió un destino" + +msgid "Move" +msgstr "Mover" + +msgid "Successfully moved" +msgstr "Movido con éxito" + +msgid "Choose a destination album" +msgstr "Elige un álbum de destino" + +msgid "Permissions" +msgstr "Permisos" + +msgid "Owner changed successfully" +msgstr "Propietario modificado con éxito" + +msgid "Group permission added successfully" +msgstr "Permiso de grupo agregado con éxito" + +msgid "User permission added successfully" +msgstr "Permiso de usuario agregado con éxito" + +msgid "Group permission removed successfully" +msgstr "Permiso de grupo eliminado con éxito" + +msgid "User permission removed successfully" +msgstr "Permiso de usuario eliminado con éxito" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Cada elemento tiene su propio juego independiente de permisos. El cambio de permisos en el " +"objeto padre no tiene ningún efecto sobre el objetohijo. Esto permite restringir el acceso " +"al objeto padre de este elemento, pero conceder acceso total al mismo, o viceversa. El modo " +"más eficiente de usar este sistema de permisos es crear grupos y asignarles permisos. " +"Entonces si se quieren conceder permisos a un usuario especifico, puedes agregar (o quitar) " +"dicho usuario del grupo apropiado." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Este elemento es propiedad del usuario: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Este elemento es propiedad del usuario: %s (%s)" + +msgid "New owner" +msgstr "Nuevo propietario" + +msgid "Change" +msgstr "Cambiar" + +msgid "Apply new owner to sub-items" +msgstr "Aplicar el nuevo propietario a los subelementos" + +msgid "You must enter a user name" +msgstr "Debes escribir un nombre de usuario" + +msgid "The user name you entered is invalid" +msgstr "El nombre de usuario que has escrito no es válido" + +msgid "Apply changes" +msgstr "Aplicar cambios" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Este elemento contiene subelementos. Los cambios que haces aquí pueden ser aplicados a este " +"elemento, o bien pueden aplicarse a todos los subelementos. Date cuenta que aplicar los " +"cambios a los subelementos combinará dichos cambios con los permisos existentes en los " +"subelementos y podría consumir mucho tiempo si se tienen muchos subelementos. Es más " +"eficiente conceder permisos a grupos y luego agregar y quitar usuarios de los mismos siempre " +"que sea posible. Los cambios se aplican a los subelementos por defecto." + +msgid "Apply to sub-items" +msgstr "Aplicar a los subelementos" + +msgid "Group Permissions" +msgstr "Permisos de Grupo" + +msgid "Group name" +msgstr "Nombre del grupo" + +msgid "Permission" +msgstr "Permiso" + +msgid "New Group Permission" +msgstr "Nuevo Permiso de Grupo" + +msgid "Add Permission" +msgstr "Añadir Permiso" + +msgid "The permission you chose is invalid" +msgstr "El permiso que has escogido no es válido" + +msgid "The group name you entered is invalid" +msgstr "El nombre del grupo que has escrito no es válido" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "El grupo ya tiene este permiso (comprueba los sub-permisos)" + +msgid "User Permissions" +msgstr "Permisos de Usuario" + +msgid "User name" +msgstr "Nombre de usuario" + +msgid "New User Permission" +msgstr "Nuevo Permiso de Usuario" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "El usuario ya tiene ese permiso (comprueba los sub-permisos)" + +msgid "Reorder Album" +msgstr "Reordenar Álbum" + +msgid "Order saved successfully" +msgstr "Pedido guardado con éxito" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Este álbum tiene un orden de colocación automático especificado, de modo que no puedes " +"cambiar el orden de los elemento manualmente. Deberías quitar el orden de colocación " +"automático para continuar." + +msgid "change" +msgstr "cambiar" + +msgid "Change the order of the items in this album." +msgstr "Cambia el orden de los elementos en este álbum." + +msgid "Move this item" +msgstr "Mover este elemento" + +msgid "before" +msgstr "antes" + +msgid "after" +msgstr "después" + +msgid "Reorder" +msgstr "Reordenar" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript debe ser habilitado para que esta página funcione correctamente. Sin embargo, " +"parece que JavaScript está deshabilitado o bien no está soportado por tu navegador. Por " +"favor habilita JavaScript cambiando las opciones de tu navegador e intentalo de nuevo." + +msgid "Site is temporarily down for maintenance." +msgstr "El sitio está caido de forma temporal por mantenimiento." + +msgid "Admin Login" +msgstr "Identificación de Administrador" + +msgid "Enter a URL" +msgstr "Escribe la URL" + +msgid "Enter some text describing the URL" +msgstr "Escribe algún texto describiendo la URL" + +msgid "Enter an image URL" +msgstr "Escribe la URL de la imagen" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lista" + +msgid "bullet" +msgstr "elemento de lista" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "imagen" + +msgid "color" +msgstr "color" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Puedes usar tambien el nombre del color, por ejemplo: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Error de configuración: No se encuentra el Tema" + +msgid "Missing Theme" +msgstr "No se encuentra el Tema" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Esta página está configurada para utilizar el tema %s, pero o se encuentra inactivo, o no " +"está instalado, o es incompatible." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Este álbum está configurado para utilizar el tema %s, pero o se encuentra inactivo, no está " +"instalado, o es incompatible." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Para arreglar este problema puedes %sinstalar o activar este tema%s o seleccionar otro tema " +"por defecto." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Para arreglar este problema puedes %sentrar como administrador del sitio%s y luego %" +"sinstalar o activar este tema%s o seleccionar otro tema por defecto." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sescoger un nuevo tema para este álbum%s o %sinstalar o " +"activar este tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sescoger un nuevo tema para este álbum%s o %sentrar como " +"administrador del sitio%s y luego %sinstalar o activar este tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sidentificarte%s y luego %sescoger un nuevo tema para " +"este álbum%s o %sentrar como administrador del sitio%s y luego %sinstalar o activar este tema" +"%s." + +msgid "Admin Options" +msgstr "Opciones del Administrador" + +msgid "User Options" +msgstr "Opciones del Usuario" + +msgid "Password changed successfully" +msgstr "Contraseña modificada con éxito" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Debes introducir tu contraseña actual para comprobar que eres tú, luego introduce la nueva " +"contraseña dos veces para asegurarte de que no has cometido error." + +msgid "Current Password" +msgstr "Contraseña Actual" + +msgid "You must enter your current password" +msgstr "Debes escribir tu contraseña actual" + +msgid "Incorrect password" +msgstr "Contraseña incorrecta" + +msgid "New Password" +msgstr "Nueva Contraseña" + +msgid "You must enter a new password" +msgstr "Debes escribir una nueva contraseña" + +msgid "Verify New Password" +msgstr "Verifica la nueva contraseña" + +msgid "You must enter your new password again!" +msgstr "¡Debes escribir otra vez la nueva contraseña!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Esta cuenta no está habilitada para modificar la configuracion de la cuenta. Porfavor " +"contacta con tu administrador de Gallery." + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Tu administrado ha bloqueado esta cuenta, impidiendo hacer cambios a la información de la " +"cuenta." + +msgid "Login to your account" +msgstr "Iniciar sesión a tu cuenta" + +msgid "Your password has been recovered, please login." +msgstr "Tu contraseña ha sido recuperada, por favor inicia sesión." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"La conexión a esta cuenta se encuentra deshabilitada temporalmente debido a multiples " +"intentos fallidos de autenticación. Espera a que el acceso sea reestablecido o usa la página de recuperación de contraseña para rehabilitar esta cuenta." + +msgid "Your login information is incorrect. Please try again." +msgstr "Tu información de inicio de sesión es incorrecta. Por favorinténtalo de nuevo." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Las contraseñas perdidas u olvidadas se pueden recuperar usando la página de recuperar contraseña" + +#, c-format +msgid "Welcome, %s!" +msgstr "¡Bienvenido, %s!" + +msgid "Account settings saved successfully" +msgstr "La configuración de la cuenta se ha guardado con éxito" + +msgid "(required, password required for change)" +msgstr "(requerido, se requiere contraseña para cambiarlo)" + +msgid "(suggested, password required for change)" +msgstr "(sugerido, se requiere contraseña para cambiarlo)" + +msgid "(required to change the e-mail address)" +msgstr "(requerido para cambiar la direción de correo electrónico)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Debes escribir tu contraseña actual para cambiar la direccion de correo electrónico" + +msgid "Recover a lost or forgotten password" +msgstr "Recuperar contraseña perdida u olvidada" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Recuperar tu contraseña requiere que tu cuenta de usuario tenga una dirección de correo " +"electrónico asignada, y que tengas acceso a dicha dirección de correo electrónico " +"catalogada. Un mensaje de confirmación te será enviado por correo electrónico conteniendo " +"una URL que debes visitar para configurar una nueva contraseña para su cuenta. Para prevenir " +"el abuso, las peticiones de recuperación de contraseña no pueden ser solicitadas más de una " +"vez en un período de 20 minutos. Una confirmación de recuperación es válida durante siete " +"días. Si no se utiliza durante ese tiempo, será purgada del sistema y tendrá que hacerse una " +"nueva petición." + +msgid "Your recovery request has been sent!" +msgstr "¡Tu petición de recuperación ha sido enviada!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Date cuenta que si tu cuenta no tiene asociada una dirección de correo electrónico, no " +"podrás recibir el correo electrónico y tendrás que ponerte en contacto con tu administrador " +"del sistema para recibir asistencia." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Los administradores pueden usar la página del %sRecuperación de Contraseña de Emergencia%s " +"para recuperar la cuenta de administación si les falla la recepción del correo electrónico " +"de recuperación debido a un problema en el servidor, o a la falta de una dirección de correo " +"electrónico funcional." + +msgid "Recover" +msgstr "Recuperar" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Para continuar con la puesta a cero de contraseña, tenemos que verificarque eres quién dice " +"ser. El mejor modo de estar seguro es de pedirte que hagas un cambio diminuto en el " +"directorio de Gallery lo que demostraráque tienes los permisos correctos. Así que, vamos a " +"pedirte que crees un nuevo archivo de texto llamado %s en el directorio de gallery2. Dicho " +"archivo debe contener los siguientes carácteres generados al azar:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Para tu comodidad, hemos preparado una %sversión correcta del archivo login.txt%s para ti. " +"Descárgala y cópiala en tu directorio de instalación y tendrás todo listo." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Una vez que hayas subido el fichero, haz click en refrescar para continuar." + +msgid "Emergency Administrator Password Reset" +msgstr "Recuperación de Contraseña de Administrador de Emergencia" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Esta página puede ser usada por un administrador del sistema para reiniciar de forma segura " +"la contraseña de cualquier cuenta." + +msgid "Authorization Confirmed" +msgstr "Autorización Confirmada" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Tu autorización ha sido confirmada. Por favor introduce tu nueva contraseña a " +"continuación. Después de configurar tu nueva contraseña serás llevado a la página de inicio " +"de sesión." + +msgid "Recover Password for Username" +msgstr "Recuperar Contraseña para el Usuario" + +msgid "You must enter a username to recover the password for." +msgstr "Debes escribir un nombre de usuario para recuperar la contraseña." + +msgid "The username you entered does not exist." +msgstr "El nombre de usuario que has escrito no existe." + +msgid "Authorization Incorrect" +msgstr "Autorización Incorrecta" + +msgid "Recovery Instructions" +msgstr "Instrucciones de Recuperación" + +msgid "AuthFile Missing" +msgstr "Fichero de Autenticación no encontrado" + +msgid "AuthFile Unreadable" +msgstr "Fichero de Autenticación ilegible" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"Tu fichero %s no tiene permisos de lectura. Por favor da a Gallery permisos de lectura sobre " +"el fichero." + +msgid "Refresh" +msgstr "Refrescar" + +msgid "This page will allow you to reset the password on your account." +msgstr "Esta página te permite reiniciar la contraseña de tu cuenta." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"No hay ninguna petición que coincida con el nombre de usuario y la autorización facilitada. " +"Solicita una nueva autorización desde la página de recordar contrañas." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"La petición a la que estas intentando acceder ha expirado. Solicita una nueva autorización " +"desde la página de recordar contrañas." + +msgid "Authorization missing" +msgstr "Autorización no encontrada" + +msgid "Username missing" +msgstr "Nombre de usuario no encontrado" + +msgid "Submit" +msgstr "Enviar" + +#, c-format +msgid "Hello %s," +msgstr "Hola %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Has recibido este correo porque una recuperación de contraseña para %s fue solicitada por %s " +"a las %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Tu nombre de usuario es: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Para finalizar el proceso de recuperación de contraseña por favor haz click en el siguiente " +"vinculo e introduce la información requerida:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Si no has solicitado este correo electrónico, puedes ignorarlo." + +msgid "Thank you!" +msgstr "¡Gracias!" + +msgid "guest" +msgstr "Invitado" + +#, c-format +msgid "display mode: %s" +msgstr "modo de visualización: %s" + +#, c-format +msgid "Date: %s" +msgstr "Fecha: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Propietario: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "%d elemento" +msgstr[1] "%d elementos" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d elemento en total)" +msgstr[1] "(%d elementos en total)" + +#, c-format +msgid "Views: %d" +msgstr "Visitas: %d" + +msgid "« album actions »" +msgstr "« acciones del álbum »" + +msgid "« item actions »" +msgstr "« acciones del elemento »" + +msgid "Go" +msgstr "Ir" + +msgid "Navigation" +msgstr "Navegación" + +msgid "next" +msgstr "siguiente" + +msgid "last" +msgstr "último" + +#, c-format +msgid "Page %d of %d" +msgstr "Página %d de %d" + +#, c-format +msgid "%d of %d" +msgstr "%d de %d" + +msgid "first" +msgstr "primero" + +msgid "previous" +msgstr "anterior" + +msgid "Page:" +msgstr "Página: " + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Tamaño: " + +msgid "Unknown" +msgstr "Desconocido" + +msgid "Full size: " +msgstr "Tamaño total: " + +msgid "Setting" +msgstr "Ajuste" + +msgid "Use Global" +msgstr "Usar Globales" + +msgid "Language selector" +msgstr "Selección de idioma" + +msgid "Item actions" +msgstr "Acciones de los elementos" + +msgid "Use dropdown menu" +msgstr "Usa el menú desplegable" + +msgid "Login block" +msgstr "Bloque de Inicio de Sesión" + +msgid "Links to album/photo peers" +msgstr "Enlaces a los pares de álbum/foto" diff --git a/Source/gallery2/modules/core/po/es_AR.po b/Source/gallery2/modules/core/po/es_AR.po new file mode 100644 index 0000000..e45797c --- /dev/null +++ b/Source/gallery2/modules/core/po/es_AR.po @@ -0,0 +1,4067 @@ +# $Id: es_AR.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 15:26+0100\n" +"Last-Translator: Alvaro Cortizo \n" +"Language-Team: Argentine Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Gallery Email Test" +msgstr "Prueba de Correo de Gallery" + +msgid "forever" +msgstr "para siempre" + +msgid "High Priority (Me first!)" +msgstr "Prioridad Alta (¡Yo Primero!)" + +msgid "Low Priority (I want to share!)" +msgstr "Prioridad Baja (¡Quiero compartir!)" + +msgid "No Markup" +msgstr "Sin formato" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML Raw" + +msgid "Database" +msgstr "Base de Datos" + +#, fuzzy +msgid "File" +msgstr "Archivo: " + +#, fuzzy, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "minuto %d" +msgstr[1] "minuto %d" + +#, fuzzy, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "hora %d" +msgstr[1] "hora %d" + +#, fuzzy, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "día %d" +msgstr[1] "día %d" + +#, fuzzy, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "semana %d" +msgstr[1] "semana %d" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Sin aceleración" + +msgid "Partial acceleration" +msgstr "Aceleración parcial" + +msgid "Full acceleration" +msgstr "Aceleración completa" + +#, fuzzy +msgid "Themes" +msgstr "Tema" + +msgid "Updating Repository Index" +msgstr "Actualizando Índice del Repositorio" + +msgid "Scanning plugins" +msgstr "Escaneando plugins" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Gallery" + +#, fuzzy +msgid "Done." +msgstr "Hecho" + +msgid "Updating Packages" +msgstr "Actualizando Paquetes" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Preparando..." + +#, c-format +msgid "Downloading %s" +msgstr "Descargando %s" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Acciones" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Lenguaje por defecto" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Actualización completa." + +#, fuzzy +msgid "Update complete." +msgstr "Carga Completa" + +msgid "install" +msgstr "instalar" + +msgid "upgrade" +msgstr "actualizar" + +msgid "activate" +msgstr "activar" + +#, fuzzy +msgid "uninstall" +msgstr "instalar" + +msgid "deactivate" +msgstr "desactivar" + +msgid "Inherit settings from parent album" +msgstr "Heredar configuración del álbum superior" + +#, fuzzy +msgid "Use these settings" +msgstr "Opciones del Album" + +#, fuzzy +msgid "Installing the core module" +msgstr "Gallery" + +msgid "key" +msgstr "llave" + +msgid "All access" +msgstr "Acceso Total" + +msgid "[core] View item" +msgstr "[core] Ver item" + +msgid "[core] View resized version(s)" +msgstr "[core] Ver version(es) escaladas" + +msgid "[core] View original version" +msgstr "[core] Ver versión original" + +msgid "[core] View all versions" +msgstr "[core] Ver todas las versiones" + +msgid "[core] Add sub-album" +msgstr "[core] Agregar sub-albums" + +msgid "[core] Add sub-item" +msgstr "[core] Agregar sub-items" + +#, fuzzy +msgid "[core] Edit item" +msgstr "[core] Ver item" + +msgid "[core] Change item permissions" +msgstr "[core] Cambiar permisos del item" + +msgid "[core] Delete item" +msgstr "[core] Borrar item" + +#, fuzzy +msgid "Upgrading permissions" +msgstr "permisos" + +#, fuzzy +msgid "Deleting old permission tables" +msgstr "permisos" + +#, fuzzy +msgid "Registered Users" +msgstr "Editar un usuario" + +#, fuzzy +msgid "All Users" +msgstr "Usuarios" + +msgid "Detecting broken derivatives" +msgstr "Detectando derivadas rotas" + +msgid "Clearing fast-download cache" +msgstr "Borrando la cache de descarga rápida" + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "permisos" + +msgid "Updating panorama items" +msgstr "Actualizando elementos de panorama" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimizando tabla AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "Convirtiendo el Esquema de la Tabla" + +msgid "Loading Table Descriptions" +msgstr "Cargando las Descripciones de la Tabla" + +#, fuzzy +msgid "Site Admins" +msgstr "site admin" + +msgid "Everybody" +msgstr "Todos" + +msgid "Guest" +msgstr "Invitado" + +msgid "Gallery" +msgstr "Gallery" + +#, fuzzy +msgid "This is the main page of your Gallery" +msgstr "Esto es la parte superior de su Gallery" + +msgid "Converting MySQL data to UTF8" +msgstr "Convirtiendo los datos en MySQL a UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Actualizando permisos (%d elementos competos, faltan %d)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, cargando " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, guardando " + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, guardando " + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Actualizando permisos (%d elementos competos, faltan %d)" + +#, fuzzy, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "permisos" + +#, fuzzy +msgid "add items" +msgstr "agregar item" + +#, fuzzy +msgid "Album created successfully." +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "add sub-album" +msgstr "agregar album" + +#, fuzzy +msgid "add items confirmation" +msgstr "Destino" + +#, fuzzy +msgid "Base filename" +msgstr "Nombre completo" + +#, fuzzy +msgid "Caption" +msgstr "Subtítulo: " + +#, fuzzy +msgid "Blank" +msgstr "<< Atrás" + +msgid "From Web Browser" +msgstr "Desde el Navegador" + +#, fuzzy, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "minuto %d" +msgstr[1] "minuto %d" + +#, fuzzy, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "minuto %d" +msgstr[1] "minuto %d" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "El archivo de entrada %s excede del tamaño máximo de archivo permido" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "El archivo de entrada %s excede del tamaño de archivo especificado en el formulario" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "El archivo de entrada %s solo ha sido cargado parcialmente" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "El archivo de entrada %s no ha sido cargado. Error %d" + +msgid "Gallery Item Administration" +msgstr "Administrador de items" + +#, fuzzy +msgid "delete an item" +msgstr "borrar item" + +#, fuzzy +msgid "delete confirmation" +msgstr "borrar item" + +#, fuzzy, c-format +msgid "delete %s" +msgstr "Borrar un usuario" + +#, fuzzy, c-format +msgid "edit %s" +msgstr "Editar un usuario" + +msgid "Settings saved successfully." +msgstr "Ajustes guardados con éxito." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Restaurar la configuración del tema" + +#, fuzzy +msgid "Preparing..." +msgstr "Procesando..." + +msgid "Apply thumbnail settings" +msgstr "Aplicar configuración de miniaturas" + +#, fuzzy +msgid "Rebuilding thumbnails..." +msgstr "Recrear miniaturas" + +#, fuzzy +msgid "Album" +msgstr "Agregar Album" + +#, fuzzy, c-format +msgid "Processing image %d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy +msgid "Changes saved successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Animation Size" +msgstr "Acción" + +#, fuzzy +msgid "edit captions" +msgstr "Acciones" + +msgid "General" +msgstr "General" + +#, fuzzy +msgid "Movie Size" +msgstr "Opciones Disponibles" + +msgid "Photo" +msgstr "Foto" + +#, fuzzy +msgid "Thumbnail cropped successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Thumbnail reset successfully" +msgstr "El usuario '%s' a sido modificado." + +msgid "Photo 5x3" +msgstr "Fotografía 5x3" + +msgid "Photo 6x4" +msgstr "Fotografía 6x4" + +msgid "Photo 7x5" +msgstr "Fotografía 7x5" + +msgid "Photo 10x8" +msgstr "Fotografía 10x8" + +msgid "Fullscreen 4x3" +msgstr "Pantalla completa 4x3" + +msgid "Widescreen 16x9" +msgstr "Formato Panorámico 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Cuadrado 1x1" + +#, fuzzy +msgid "As Image" +msgstr "Editar Imagen" + +msgid "Landscape" +msgstr "Apaisado" + +msgid "Portrait" +msgstr "Retrato" + +#, fuzzy +msgid "Crop Thumbnail" +msgstr "Sin Miniatura" + +#, fuzzy +msgid "Reverted rotate and scale changes successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Rotated photo successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Scaled photo successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Modify Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "Tema %s activado con éxito" + +#, fuzzy +msgid "« default theme »" +msgstr "* Sin Ordenar *" + +msgid "Theme" +msgstr "Tema" + +msgid "make highlight" +msgstr "hacer carátula" + +msgid "move item" +msgstr "mover item" + +#, fuzzy, c-format +msgid "move %s" +msgstr "Mover" + +#, fuzzy, c-format +msgid "edit %s permissions" +msgstr "permisos" + +#, fuzzy +msgid "reorder items" +msgstr "mover item" + +msgid "Maintenance" +msgstr "Mantenimiento" + +msgid "Gallery Site Administration" +msgstr "Administrador de Gallery" + +msgid "site admin" +msgstr "site admin" + +#, fuzzy +msgid "Gallery User Administration" +msgstr "Administrador de items" + +#, fuzzy +msgid "change password" +msgstr "Contraseña" + +msgid "your account" +msgstr "tu cuenta" + +#, fuzzy +msgid "Password Recovery" +msgstr "Contraseña" + +#, fuzzy +msgid "Core" +msgstr "configurar" + +#, fuzzy +msgid "Gallery 2 Core Module" +msgstr "Gallery" + +msgid "Add Items" +msgstr "Agregar Items" + +#, fuzzy +msgid "Edit Album" +msgstr "Agregar un Album" + +#, fuzzy +msgid "Edit Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "Edit Movie" +msgstr "Mover" + +#, fuzzy +msgid "Add Album" +msgstr "Agregar un Album" + +#, fuzzy +msgid "Edit Permissions" +msgstr "Permisos" + +#, fuzzy +msgid "View Permissions" +msgstr "Permisos" + +#, fuzzy +msgid "Delete Album" +msgstr "Borrar un grupo" + +#, fuzzy +msgid "Delete Photo" +msgstr "Borrar un usuario" + +#, fuzzy +msgid "Delete Movie" +msgstr "Borrar un usuario" + +#, fuzzy +msgid "Move Album" +msgstr "Agregar Album" + +#, fuzzy +msgid "Move Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "Move Movie" +msgstr "Opciones Disponibles" + +#, fuzzy +msgid "Edit Captions" +msgstr "Administrador de Gallery" + +msgid "Make Highlight" +msgstr "Hacer carátula" + +#, fuzzy +msgid "Reorder Items" +msgstr "mover item" + +#, fuzzy +msgid "Site Admin" +msgstr "site admin" + +msgid "Login" +msgstr "Login" + +msgid "Your Account" +msgstr "Tu Cuenta" + +#, fuzzy +msgid "Logout" +msgstr "desconectarse" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Usuarios" + +msgid "Groups" +msgstr "Grupos" + +msgid "Performance" +msgstr "Rendimiento" + +msgid "Toolkit Priority" +msgstr "Prioridad de las Herramientas" + +msgid "Graphics Toolkits" +msgstr "Herramientas Gráficas" + +#, fuzzy +msgid "Account Settings" +msgstr "Opciones del Album" + +#, fuzzy +msgid "Change Password" +msgstr "Contraseña" + +#, fuzzy, c-format +msgid "Edit %s" +msgstr "Editar un usuario" + +#, fuzzy, c-format +msgid "Delete %s" +msgstr "Borrar un usuario" + +#, fuzzy, c-format +msgid "Move %s" +msgstr "Mover" + +#, fuzzy +msgid "Build all thumbnails/resizes" +msgstr "Miniaturas" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Asegúrate que los archivos de datos para todas las derivadas (miniaturas, etc.) han sido " +"construidos y reconstruye los que estén corruptos." + +#, fuzzy +msgid "Build All Thumbnails/Resizes" +msgstr "Miniaturas" + +msgid "Debug output for failed items:" +msgstr "Salida de depuración para los elementos fallidos:" + +#, fuzzy, c-format +msgid "Checked %d items" +msgstr "agregar item" + +#, fuzzy, c-format +msgid "%d items built" +msgstr "agregar item" + +#, c-format +msgid "%d items failed" +msgstr "%d elementos fallidos" + +msgid "Convert MySQL database to UTF8" +msgstr "Convertir la base de datos MySQL a UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Si has creado la base de dartos con MySQL 3.x y actualizas a MySQL 4.x, experimentaras " +"caracteres cambiados hasta que conviertas la base de datos para que use UTF8. Esta " +"operación es inofensiva si tu base de datos ya está convertida, por lo que es seguro que " +"pruebes si no estás seguro/a. Despues de usar esto, deberias ejecutar la tarea 'Borrar la " +"caché de la base de datos' para desacerte de cualquier corupcción en la caché." + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "Elemento eliminado con éxito" + +msgid "No conversion required" +msgstr "No se requiere conversión" + +#, fuzzy +msgid "Delete user sessions" +msgstr "Permisos del Sistema" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Borra todas las sesiones persistentes de usuario de acuerdo con tus ajustes de expiración de " +"sesión." + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Permisos del Sistema" + +msgid "Delete database cache" +msgstr "Borrar la cache de la base de datos" + +#, fuzzy +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery almacena la información de la base de datos mas frecuentemente usada en disco para " +"incrementar el rendimiento. Si modificas directamente la base de datos, debes ejecutar esta " +"tarea para borrar la cache y forzar a Gallery a recargar la información de la base de datos." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "El directorio %s se ha eliminado con éxito" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "No es posible eliminar el directorio %s" + +#, fuzzy +msgid "Delete template cache" +msgstr "Borrar í" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compila los ficheros de las plantillas y los guarda para incrementar el " +"rendimiento. Si estas experimentando problemas del tipo Smarty error puedes intentar " +"ejecutar esta tarea. Ejecuta también esta tarea si borras algún fichero de local/*.tpl para " +"que «Smarty» vuelva al archivo tplpor defecto." + +#, fuzzy +msgid "Template cache deleted successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "album" +msgstr "(álbum)" + +#, fuzzy +msgid "Animation" +msgstr "Acción" + +#, fuzzy +msgid "animation" +msgstr "Acción" + +#, fuzzy +msgid "Gallery Core" +msgstr "Gallery" + +#, fuzzy +msgid "Gallery Core Module" +msgstr "Gallery" + +#, fuzzy +msgid "Search descriptions" +msgstr "Descripción" + +#, fuzzy +msgid "Search keywords" +msgstr "Palabras Clave" + +msgid "Search summaries" +msgstr "Buscar en los sumarios" + +#, fuzzy +msgid "Search titles" +msgstr "desactivar" + +msgid "Description" +msgstr "Descripción" + +msgid "Keywords" +msgstr "Palabras Clave" + +msgid "Summary" +msgstr "Resumen" + +msgid "Title" +msgstr "Título" + +msgid "Owner" +msgstr "Dueño" + +#, fuzzy +msgid "Dynamic Album" +msgstr "Agregar un Album" + +#, fuzzy +msgid "dynamic album" +msgstr "agregar album" + +#, fuzzy +msgid "Group" +msgstr "Grupos" + +#, fuzzy +msgid "group" +msgstr "Grupos" + +msgid "Other" +msgstr "Otro(s)" + +#, fuzzy +msgid "Movie" +msgstr "Mover" + +#, fuzzy +msgid "movie" +msgstr "Mover" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "No puedo crear la ruta del repositorio cache." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"No puedo crear el subdirectorio de cache. Asegurate de que el servidor web tiene permiso de " +"escritura en él." + +#, fuzzy +msgid "Official Release Repository" +msgstr "Repositorio de la Versión Oficial" + +msgid "Experimental Repository" +msgstr "Repositorio Experimental" + +msgid "Community Repository" +msgstr "Repositorio de la Comunidad" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Error descargando índice desde '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Error descargando el hash del índice desde '%s'." + +msgid "Index integrity check failed." +msgstr "La comprobación de integridad del índice ha fallado." + +#, fuzzy +msgid "« default sort order »" +msgstr "* Sin Ordenar *" + +#, fuzzy +msgid "Manual sort order" +msgstr "Ordenar el Album" + +#, fuzzy +msgid "Origination Date" +msgstr "Fecha de Creación" + +msgid "Creation Date" +msgstr "Fecha de Creación" + +msgid "Last Changed Date" +msgstr "Última fecha de cambio" + +msgid "Name" +msgstr "Nombre" + +msgid "View Count" +msgstr "Ver Contador" + +msgid "Random" +msgstr "Aleatorio" + +#, fuzzy +msgid "« no presort »" +msgstr "* Sin Ordenar *" + +#, fuzzy +msgid "Albums First" +msgstr "Opciones del Album" + +msgid "Most Viewed First" +msgstr "Las mas vistas primero" + +msgid "Ascending" +msgstr "Ascendente" + +msgid "Descending" +msgstr "Descendente" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validació deshabilitada hasta que se configure allowSessionAccess en config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Esta página es XHTML 1.0 válido" + +#, fuzzy +msgid "Donate to the Gallery project" +msgstr "Ver Galería" + +msgid "G2.2: Double Double" +msgstr "G2.2: Doble Doble" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Potenciado por Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Tiempo restante estimado: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Memoria usada: %s, total: %s" + +msgid "Rows per album page" +msgstr "Filas por página de álbum" + +msgid "Columns per album page" +msgstr "Columnas por página de álbum" + +msgid "Number of items to show per page" +msgstr "Numero de elementos por página" + +msgid "Row height (pixels)" +msgstr "Alto de la fila (píxeles)" + +msgid "Column width (pixels)" +msgstr "Ancho de la columna (píxeles)" + +msgid "Show image owners" +msgstr "Mostrar propietarios de las imágenes" + +msgid "Show album owners" +msgstr "Mostrar propietarios de los álbumes" + +msgid "Show micro navigation thumbnails" +msgstr "Mostrar micro miniaturas de navegació" + +msgid "Blocks to show in the sidebar" +msgstr "Bloques para mostrar en la barra lateral" + +msgid "Blocks to show on album pages" +msgstr "Bloques para mostrar en las páginas de los álbumes" + +msgid "Blocks to show on photo pages" +msgstr "Bloques para mostrar en las páginas de las fotos" + +msgid "Thumbnail links in dynamic albums" +msgstr "Enlaces de miniaturas en los álbumes dinámicos" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "Editar Álbum" + +msgid "Jump to original album" +msgstr "Saltar al álbum original" + +msgid "Separate link to original album" +msgstr "Enlace separado al álbum original" + +msgid "View Samples" +msgstr "Ver Ejemplos" + +#, fuzzy +msgid "Album Frame" +msgstr "Opciones del Album" + +#, fuzzy +msgid "Item Frame" +msgstr "Items a mover" + +msgid "Photo Frame" +msgstr "Cuadro de la foto" + +msgid "Color Pack" +msgstr "Pack de Color" + +#, fuzzy +msgid "You must enter a number greater than 0" +msgstr "Tiene que ingresar un número (mayor que cero)" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Error leyendo la configuración del bloque. Borra la caché de tu navegador e intentalo de " +"nuevo." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +#, fuzzy +msgid "Audio" +msgstr "Undo" + +#, fuzzy +msgid "audio" +msgstr "Undo" + +#, fuzzy +msgid "Archive" +msgstr "Activo" + +#, fuzzy +msgid "archive" +msgstr "activar" + +msgid "Document" +msgstr "Documento" + +msgid "document" +msgstr "documento" + +#, fuzzy +msgid "Spreadsheet" +msgstr "Resetear" + +#, fuzzy +msgid "spreadsheet" +msgstr "Resetear" + +#, fuzzy +msgid "file" +msgstr "Archivo: " + +#, fuzzy +msgid "Back" +msgstr "<< Atrás" + +#, c-format +msgid "Back to %s" +msgstr "Volver a %s" + +#, fuzzy +msgid "User" +msgstr "Usuarios" + +#, fuzzy +msgid "user" +msgstr "Usuarios" + +msgid "Optimize database" +msgstr "Optimizar base de datos" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Mejora el rendimiento de tú base de datos. Los resultados variaran dependiendo con que base " +"de datos estés trabajando, pero esta rutina de mantenimiento hará que tu Gallery funcione " +"mas rápido. Especialmente practico después de agregar o borrar muchos elementos." + +#, fuzzy +msgid "Database optimized successfully" +msgstr "El usuario '%s' a sido modificado." + +msgid "Reset view counts" +msgstr "Reiniciar contadores de visitas" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Reinicia el numero de visitas a cero en todos los álbumes y elementos. Esta tarea borra " +"también la cache de la base de datos." + +#, fuzzy +msgid "View counts reset successfully" +msgstr "El usuario '%s' a sido modificado." + +msgid "Refresh capture dates" +msgstr "Actualizar las fechas de las capturas" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Actualiza la fecha de captura almacenada en Gallery en todos los elementos que tengan la " +"tengan disponible en el fichero original (normalmente desde los datos EXIF)." + +msgid "Processing..." +msgstr "Procesando..." + +msgid "Refresh Capture Dates" +msgstr "Actualizar las Fechas de las Capturas" + +#, fuzzy, c-format +msgid "Processing item %d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy, c-format +msgid "Updated %d of %d items" +msgstr "Visualizando página %d de %d" + +#, fuzzy +msgid "System information" +msgstr "Destino" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Obtiene los detalles del sistema; practico para hacer un copiar/pegar enel foro de soporte " +"de G2." + +#, fuzzy +msgid "core" +msgstr "configurar" + +msgid "unknown" +msgstr "desconocido" + +#, fuzzy +msgid "Gallery version" +msgstr "Gallery" + +#, fuzzy +msgid "PHP version" +msgstr "Versión" + +#, fuzzy +msgid "Webserver" +msgstr "Borrar" + +msgid "Toolkits" +msgstr "Herramientas" + +#, fuzzy +msgid "Acceleration" +msgstr "Acción" + +msgid "Operating system" +msgstr "Sistema Operativo" + +msgid "Default theme" +msgstr "Tema por defecto" + +msgid "gettext" +msgstr "gettext" + +#, fuzzy +msgid "enabled" +msgstr "instalar" + +#, fuzzy +msgid "disabled" +msgstr "%d elementos fallidos" + +#, fuzzy +msgid "Locale" +msgstr "Escalar" + +#, fuzzy +msgid "Browser" +msgstr "Ver Galería" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Filas en la tabla %s = %d" + +#, fuzzy +msgid "Successfully saved theme settings" +msgstr "Opciones del Album" + +msgid "General Settings" +msgstr "Opciones Generales" + +msgid "Settings saved successfully" +msgstr "La configuración se ha guardado con éxito" + +#, fuzzy +msgid "Added local upload directory successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Removed local upload directory successfully" +msgstr "Volver al original" + +#, fuzzy +msgid "Test email sent successfully" +msgstr "El usuario '%s' a sido modificado." + +msgid "There was a problem processing your request, see below for details." +msgstr "Ha habido un problema procesando tu petición, mirar abajo para ver los detalles." + +msgid "Error sending test email, see below for details." +msgstr "Ha habido un error enviando el correo de prueba, mirar abajo para ver los detalles." + +#, fuzzy +msgid "Language Settings" +msgstr "Preferencias de idioma" + +#, fuzzy +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Seleccione el Idioma por defecto para Gallery. Los usuarios pueden cambiar esta opció" +"n en sus preferencias personales." + +msgid "Default language" +msgstr "Lenguaje por defecto" + +msgid "Check Browser Preference" +msgstr "Chequear las Preferencias del Navegador" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Tú servidor web no soporta localización. Por favor avisa a tu administrador del sistema " +"para que reconfigure PHP con la opción %s habilitada." + +#, fuzzy +msgid "Date Formats" +msgstr "Borrar un usuario" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Especifica como las fechas y las horas se muestran en Gallery. Visita %sphp.net%s para ver " +"detalles de como introducir el formato de las cadenas. Nota que la representación de las " +"cadenas varía dependiendo del idioma activo." + +#, fuzzy +msgid "Style" +msgstr "Escalar" + +msgid "Format" +msgstr "Formato" + +#, fuzzy +msgid "Sample" +msgstr "Escalar" + +#, fuzzy +msgid "Date" +msgstr "Borrar un usuario" + +#, fuzzy +msgid "Time" +msgstr "mover item" + +msgid "Date/Time" +msgstr "Fecha/Hora" + +msgid "Filesystem Permissions" +msgstr "Permisos del Sistema" + +#, fuzzy +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Aquí puede especificar los permisos por defecto que crea Gallery para los archivos y " +"carpetas. Esto no se aplica a los archivos/carpetas que Gallery ya creó" + +msgid "New directories" +msgstr "Nuevas carpetas" + +msgid "New files" +msgstr "Nuevos archivos" + +msgid "Session Settings" +msgstr "Características de sesión" + +#, fuzzy +msgid "Session Lifetime" +msgstr "Características de sesión" + +msgid "Inactivity Timeout" +msgstr "Timeout por inactividad" + +msgid "Embedded Markup" +msgstr "Formato Embebido" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"¿Qué tipo de formato debemos de usar en los campos de usuarios? Por cuestiones de " +"seguridad recomendamos que no se utilice HTML puro. El código BB es una clase especial de " +"formato seguro que permite el formateado simple del texto como: negritas, itálicas, listas, " +"imágenes y urls." + +msgid "Markup" +msgstr "Formato" + +msgid "Email" +msgstr "Correo Electrónico" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Por defecto Gallery usa la función de correo interna de PHP para enviar correos lo cual no " +"requiere configuración. Para usar un servidor de correo smtp introduce la información a " +"continuación, incluyendo la información de autenticació si es necesario. Opcionalmente " +"agrega :puerto después del nombre del servidor para usar un puerto no estándar." + +#, fuzzy +msgid "Server" +msgstr "Borrar" + +msgid "Username" +msgstr "Nombre de usuario" + +msgid "Password" +msgstr "Contraseña" + +#, fuzzy +msgid "SMTP From Address" +msgstr "Dirección de correo" + +#, fuzzy +msgid "Invalid email address" +msgstr "Dirección de correo" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Envía un mensaje de correo de prueba para verificar que tu configuración es correcta (tanto " +"si se usa la función de correo PHP como la configuración SMTP). A continuación introduce la " +"dirección del destinatario para el mensaje de prueba." + +msgid "Send Email" +msgstr "Enviar Correo Electrónico" + +msgid "Email Test Error" +msgstr "La Prueba de Correo ha notificado Error" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Cuando Gallery está embebido en otra aplicación (portal, CMS, foro, etc.), puedes elegir " +"entre dos opciones. En cualquier otro caso no debes preocuparte por los ajustes de la " +"cookie. Sigue leyendo para mas detalles." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Si Gallery está embebida y dejas los siguientes campos vacíos, entonces todos los enlaces " +"Descargar Elemento (las URLs de las imágenes y otros objetos) en Gallery embebida tendrán " +"una cadena de texto GALLERYSID añadida en la URL lo que supone un riesgo de " +"seguridad menor cuando los usuarios de Gallery comiencen a copiar y pegar las URLs de " +"las imágenes en foros, libros de visita, etc. La alternativa es configurar la ruta a la " +"cookie. Gallery entonces no añadirá la GALLERYSID a las URLs embebidas de Descargar " +"Elemento. Ej. cuando Gallery es alcanzable en http://www.example.com/application/" +"gallery2/ y la aplicación que la esta embebiendo en http://www.example.com/application/, " +"entonces deberás comparar la ruta /application/gallery2/ con /application/. La ruta de la " +"cookie es la parte de las rutas que es igual, en este caso es '/application/'. Por lo " +"general suele ser solo '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"El dominio de la cookie es solamente necesario para instalaciones embebidas de " +"Gallery y solo si te quieres deshacer de la cadena de texto GALLERYSID en las URLs embebidas " +"de Descargar Elemento. En la mayoría de los casos, el dominio de la cookie se puede dejar " +"en blanco. Habilítalo solo si Gallery y la aplicación que la esta embebiendo sean " +"únicamente alcanzables con diferentes subdominios. Ej. cuando Gallery esté en http://" +"photos.example.com/ y la aplicación esté en http://www.example.com/, entonces deberás " +"habilitar el dominio de la cookie example.com (la parte de la cadena de texto del servidor " +"que es común en ambos, Gallery y la aplicación que la esta embebiendo." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Una vez que cambies las configuraciones de la cookie, todos los usuarios registrados " +"de tu Gallery deberán limpiar la caché de las cookies de sus navegadores. Si no lo " +"hacen, experimentaran problemas de autenticación / cierre de sesión / perdida de sesión." + +msgid "Path" +msgstr "Ruta" + +msgid "Invalid cookie path" +msgstr "La ruta a la cookie no es válida" + +msgid "Domain" +msgstr "Dominio" + +msgid "Invalid cookie domain" +msgstr "El dominio de la cookie no es válido" + +msgid "Locking System" +msgstr "Sistema de Bloqueo" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery utiliza un sistema de bloqueos que previene cambios simultáneos que interfieran con " +"otros. Hay dos tipos de bloqueo, cada uno con sus ventajas e inconvenientes. El sistema de " +"bloqueo basado en Archivo es rápido y eficiente, pero no funciona en un sistema de " +"ficheros NFS y en Windows es poco fiable. El sistema de bloqueo basado en Base de " +"Datos es mas lento pero mas fiable. Si no estas seguro de lo que escoger, nosotros " +"recomendamos el sistema de bloqueo basado en archivo. Si estas teniendo muchos problemas de " +"tiempo de espera, puedes intentar cambiar a la base de datos. Se puede cambiar de un sistema " +"a otro sin problemas" + +msgid "Lock system" +msgstr "Sistema de bloqueo" + +msgid "Helper Processes" +msgstr "Procesos de Apoyo" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Algunos módulos de Gallery usan programas de tu servidor web para hacer procesado de " +"imágenes, archivado y otras operaciones. Esos programas pueden hacer un uso muy intensivo " +"de la maquina podiendo impactar en el rendimiento global de un servidor compartido. Puedes " +"hacer que esos programas se ejecuten con una prioridad mas baja de modo que sean menos " +"intrusivos. Si estás en un hosting compartido y tu anfitrión web se queja, intenta poner la " +"prioridad baja." + +#, fuzzy +msgid "Priority" +msgstr "Prioridad de las Herramientas" + +msgid "Save" +msgstr "Guardar" + +#, fuzzy +msgid "Reset" +msgstr "Resetear" + +#, fuzzy +msgid "Create A New Group" +msgstr "Crear un nuevo grupo" + +msgid "Group Name" +msgstr "Nombre del grupo" + +#, fuzzy +msgid "(required)" +msgstr "[required]" + +msgid "You must enter a group name" +msgstr "Tiene que ingresar un nombre de grupo" + +#, c-format +msgid "Group '%s' already exists" +msgstr "El grupo '%s' ya existe" + +msgid "Create Group" +msgstr "Crear Grupo" + +msgid "Cancel" +msgstr "Cancelar" + +#, fuzzy +msgid "Create A New User" +msgstr "Crear un nuevo usuario" + +msgid "You must enter a username" +msgstr "Tiene que ingresar un nombre de usuario" + +#, c-format +msgid "Username '%s' already exists" +msgstr "El usuario '%s' ya existe" + +#, fuzzy +msgid "Full Name" +msgstr "Nombre completo" + +#, fuzzy +msgid "Email Address" +msgstr "Dirección de correo" + +msgid "You must enter an email address" +msgstr "Tiene que ingresar una dirección de correo" + +msgid "Language" +msgstr "Lenguaje" + +msgid "You must enter a password" +msgstr "Tiene que ingresar una contraseña" + +#, fuzzy +msgid "Verify Password" +msgstr "Verificar la contraseña" + +msgid "You must enter the password a second time" +msgstr "Tiene que ingresar la contraseña por 2da vez" + +msgid "The passwords you entered did not match" +msgstr "Las contrase˜as que ingresó no coinciden" + +msgid "Create User" +msgstr "Crear Usuario" + +#, fuzzy +msgid "Delete A Group" +msgstr "Borrar un grupo" + +msgid "Are you sure?" +msgstr "¿Estás seguro?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Esto eliminara completamente a %s de Gallery. ¡No hay vuelta atras!" + +msgid "Delete" +msgstr "Borrar" + +#, fuzzy +msgid "Delete a User" +msgstr "Borrar un usuario" + +#, fuzzy, c-format +msgid "User %s is the owner of %s items." +msgstr "Una descripció mas larga de este ím" + +#, c-format +msgid "Delete user %s and..." +msgstr "Borrar usuario %s y ..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Asignar un nuevo propietario para todos los elementos de %s" + +#, fuzzy, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Borrar todos los elementos de %s y asignar un nuevo usuario para todos los álbumes no vacíos " +"que queden" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "" +"Nuevo propietario (si se deja en blanco se interpreta uno de los Administradores del Sitio):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"¡El usuario '%s' no existe! No puedo asignar elementos a un usuario que no existe." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "¡El nuevo propietario debe de ser diferente al usuario que estamos borrando!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "¡El nuevo propietario no puede ser un usuario Invitado / Anónimo!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Esto eliminara completamente %s de Gallery. ¡No hay vuelta atrás!" + +msgid "Edit a group" +msgstr "Editar un grupo" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Editar los Miembros del Grupo '%s'" + +#, fuzzy, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Agregados '%s' usuarios al grupo" + +#, fuzzy, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Borrar el usuario '%s' del grupo" +msgstr[1] "Borrar el usuario '%s' del grupo" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Este grupo contiene %d usuario" +msgstr[1] "Este grupo contiene %d usuarios" + +#, fuzzy +msgid "Members" +msgstr "Agregar Items" + +msgid "« first" +msgstr "« primero" + +msgid "« back" +msgstr "« anterior" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Visualizando página %d de %d" + +msgid "next »" +msgstr "siguiente »" + +msgid "last »" +msgstr "ultimo »" + +#, fuzzy +msgid "Filter" +msgstr "Filtro:" + +msgid "Clear" +msgstr "Limpiar" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d usuario coincide con su filtro" +msgstr[1] "%d usuarios coinciden con su filtro" + +#, fuzzy +msgid "Remove selected" +msgstr "mover item" + +msgid "You must select a user to remove." +msgstr "Tiene que seleccionar el usuario a borrar." + +#, fuzzy +msgid "You can't remove yourself from this group." +msgstr "No puede agregar o borrar usuarios de este grupo" + +#, fuzzy +msgid "Add Member" +msgstr "Agregar Items" + +msgid "Add" +msgstr "Agregar" + +msgid "You must enter a username." +msgstr "Tiene que ingresar un nombre de usuario." + +#, c-format +msgid "User '%s' does not exist." +msgstr "El usuario '%s' no existe." + +#, fuzzy +msgid "This user already is in this group." +msgstr "El usuario '%s' ya existe" + +msgid "Done" +msgstr "Hecho" + +msgid "Edit a user" +msgstr "Editar un usuario" + +#, fuzzy +msgid "That username is already in use" +msgstr "El usuario '%s' ya existe" + +#, fuzzy +msgid "You must enter a new username" +msgstr "Tiene que ingresar un nombre de usuario" + +#, fuzzy +msgid "E-mail Address" +msgstr "Dirección de correo" + +msgid "(suggested)" +msgstr "(sugerido)" + +#, fuzzy +msgid "Options" +msgstr "Acciones" + +#, fuzzy +msgid "Lock user." +msgstr "Sistema de bloqueo" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Los usuarios bloqueados no pueden editar la información de su propia cuenta. (Contraseña, " +"Nombre, Dirección de correo electrónico, etc.)" + +#, fuzzy +msgid "Reset failed login count." +msgstr "Reiniciar contadores de visitas" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Manejo de grupos" + +#, c-format +msgid "Removed group '%s'" +msgstr "Borrar grupo '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Grupo '%s' creado" + +#, c-format +msgid "Modified group '%s'" +msgstr "Grupo '%s' modificado" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Hay %d grupo en el sistema." +msgstr[1] "Hay %d grupos en el sistema." + +#, fuzzy +msgid "Edit Group" +msgstr "Editar un grupo" + +msgid "Edit" +msgstr "Editar" + +msgid "Add/Remove Users" +msgstr "Agregar/Eliminar Usuarios" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "El grupo '%s' no existe." + +#, fuzzy +msgid "You cannot delete that group" +msgstr "No puede borrar el grupo administradores" + +#, fuzzy +msgid "You cannot edit that group's users" +msgstr "No puede borrar el usuario anónimo!" + +#, fuzzy +msgid "Edit Group (by list)" +msgstr "Editando Grupo '%s'" + +msgid "Action" +msgstr "Acción" + +#, fuzzy +msgid "edit" +msgstr "Editar" + +#, fuzzy +msgid "delete" +msgstr "Borrar" + +#, fuzzy +msgid "members" +msgstr "mover item" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d grupo coincide con su filtro" +msgstr[1] "%d grupos coinciden con su grupo" + +msgid "System Maintenance" +msgstr "Mantenimiento del Sistema" + +#, fuzzy, c-format +msgid "Completed %s task successfully." +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy, c-format +msgid "The %s task failed to complete successfully." +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Task name" +msgstr "Nombre de usuario" + +msgid "Last run" +msgstr "Ultima vez que se ejecuto" + +msgid "Success/Fail" +msgstr "Éxito/Fracaso" + +#, fuzzy +msgid "Not run yet" +msgstr "Todavia no implementado" + +msgid "Success" +msgstr "Éxito" + +#, fuzzy +msgid "Failed" +msgstr "Archivo: " + +msgid "run now" +msgstr "ejecutar ahora" + +msgid "Last Run Details:" +msgstr "Detalles de la última ejecución" + +msgid "Performance Tuning" +msgstr "Ajuste de Rendimiento" + +#, fuzzy +msgid "Updated performance settings successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Deleted all saved pages" +msgstr "Borrar un usuario" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Mejora el funcionamiento de Gallery almacenando las páginas web enteras en la base de " +"datos. Esto puede reducir considerablemente los recursos requeridos por el servidor web y " +"la base de datos para mostrar una página web. En contrapartida la página web que ves podría " +"estar un poco anticuada, sin embargo puedes obtener la versión mas reciente de la página " +"forzando un refresco en tu navegador (tipicamente mantenendo pulsada la tecla shift mientras " +"haces click en el botón de recargar)." + +msgid "Partial Acceleration" +msgstr "Aceleración Parcial" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"La aceleración parcial obtiene un aumento aproximado del rendimiento de 10-25%, pero algunos " +"formularios con datos dinámicos (como los contadores de visitas) no serán actualizados al " +"momento. Todo el contenido que aparezca en bloques (como el bloque de imagen aleatoria, " +"cualquier bloque de la barra lateral, etc) siempre estará actualizado." + +msgid "Full Acceleration" +msgstr "Aceleración Completa" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"La aceleración completa obtiene un aumento aproximado del rendimiento de 90%, pero ningun " +"dato dinámico (el bloque de imagen aleatoria, otros bloques de la barra lateral, el numero " +"de elementos en tu carrito de la compra, los contadores de visitas, etc) será actualizado " +"hasta que la web almacenada expire." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Puedes especificar de forma adicional cuando expiran las páginas almacenadas. Configurando " +"un tiempo de expiración largo reducirás la carga de tu servidor, pero incrementarás el " +"intervalo entre que los usuarios ven los cambios. Un tiempo de expiración mas bajo " +"significa que los usuarios verán datos mas actuales, pero habrá mas carga en tu servidor." + +msgid "Here are some standard acceleration profiles:" +msgstr "Aquí hay algunos perfiles de aceleración estándar:" + +#, fuzzy +msgid "Medium acceleration" +msgstr "Acciones" + +msgid "High acceleration" +msgstr "Aceleración alta" + +#, fuzzy +msgid "Guest Users" +msgstr "Editar un usuario" + +msgid "Expires after:" +msgstr "Expira después de:" + +msgid "Clear Saved Pages" +msgstr "Borrar Paginas Guardadas" + +msgid "Status: Inactive" +msgstr "Estado: Inactivo" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "desactivar __PLUGIN__" + +#, fuzzy +msgid "Status: Active" +msgstr "Activo" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ activado" + +#, fuzzy +msgid "Status: Not Installed" +msgstr "instalar" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ desinstalado" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Estado: Requiere actualización (Inactivo)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Estado: Módulo Incompatible (Inactivo)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Estado: Inactivo (Requiere Configuración)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ necesita configuración" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "desactivar __PLUGIN__" + +msgid "Warning!" +msgstr "¡Atención!" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Realmente quiere borrar al usuario '__PLUGIN__'?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Esto también quitará cualquier permiso y limpiará cualquier información temporal creada por " +"este módulo." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Este plugin será desinstalado, pero sus ficheros serán guardados de modo que puedas " +"reinstalarlo de nuevo." + +msgid "Yes" +msgstr "Sí" + +msgid "No" +msgstr "No" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Realmente quiere borrar al usuario '__PLUGIN__'?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Este plugin será desinstalado y sus archivos borrados." + +msgid "The files of this plugin will be deleted permanently." +msgstr "Los archivos de este plugin serán borrados permanentemente." + +msgid "disabled(__COUNT__)" +msgstr "deshabilitados(__COUNT__)" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "Fecha (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "instalar (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "(requerido) (__COUNT__)" + +#, fuzzy +msgid "incompatible(__COUNT__)" +msgstr "¡Módulo Incompatible! (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "El borrado de __PLUGIN__ falló" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Gallery" + +#, fuzzy +msgid "Get More Plugins" +msgstr "Gallery" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"¿Quieres mas características? Los nuevos plugins están a un clic de distancia. Haz click " +"ahora en el enlace %s para comenzar." + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Las características de Gallery vienen como módulos separados. Puedes descargar e instalar " +"módulos para agregar mas características a Gallery, o bien puedes deshabilitar las " +"características que no quieras usar. Para usar una característica debes, instalarla, " +"configurarla (si es necesario) y activarla. Si no quieres usar una característica, puedes " +"desactivarla." + +#, fuzzy +msgid "Plugin Name" +msgstr "Nombre completo" + +#, fuzzy +msgid "Installed" +msgstr "instalar" + +msgid "Version" +msgstr "Versión" + +msgid "Actions" +msgstr "Acciones" + +msgid "help" +msgstr "ayuda" + +#, c-format +msgid "Screenshot for %s" +msgstr "Captura de pantalla para %s" + +#, fuzzy +msgid "Incompatible plugin!" +msgstr "¡Módulo Incompatible!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "API del Core Requerida: %s (disponible: %s)" + +#, fuzzy, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "API del Módulo Requerida: %s (disponible: %s)" + +msgid "configure" +msgstr "configurar" + +#, fuzzy +msgid "up to date" +msgstr "Borrar un usuario" + +#, fuzzy +msgid "upgrade required" +msgstr "[required]" + +#, fuzzy +msgid "not installed" +msgstr "instalar" + +#, fuzzy +msgid "incompatible" +msgstr "¡Módulo Incompatible!" + +msgid "Repository" +msgstr "Repositorio" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Por favor asegurate de que tu conexión a internet está configurada de forma correcta o " +"intentalo de nuevo más tarde." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Fallo al escanear el estado del plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Tu copia local del repositorio estaba rota y ha sido reparada. Por favor descarga la lista " +"de plugins de nuevo." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "El índice del repositorio ha sido actualizado con éxito." + +msgid "All plugins are already up-to-date." +msgstr "Todos los plugins estan actualizados." + +#, c-format +msgid "%s plugin updated." +msgstr "Plugin %s actualizado." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"No se envía información personal sobre ti o tu instalación de Gallery al servidor de Gallery " +"en ningún momento." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Descarga e instala nuevos plugins de forma fácil y rápida. Si decides que no quieres un " +"plugin, puedes borrarlo de tu Gallery. Hay multiples diferentes repositorios de plugins, " +"puedes elegir cual de ellos quieres usar (se pueden usar todos ellos a la vez). Una vez que " +"hayas elegido, debes descargar de forma periodica la última lista de plugins para buscar " +"posibles actualizaciones. %s En conexiones lentas este proceso puede llevar un minuto o dos." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Plugins Desarrollados de forma Oficial por el Proyecto Gallery (%srecomendado%s)" + +#, c-format +msgid "last updated on %s" +msgstr "última actualización el %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Plugins Experimentales del Proyecto Gallery (%snuevas características molonas, podrian dar " +"fallos%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Plugins de la Comunidad (%s¡úsalos por tu cuenta y riesgo!%s)" + +msgid "Repository Error" +msgstr "Error de Repositorio" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Debes elegir un usuario para eliminar" + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Configurar tu Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Antes de que puedas proceder, debes cambiar algunos permisos para que Gallery pueda instalar " +"plugins por ti. Es fácil. Solamente ejecuta lo siguiente en una consola o via cliente ftp:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Si tienes problemas cambiando los permisos, preguntale a tu administrador del sistema para " +"obtener ayuda. Cuando hayas solucionado los permisos, haz click en el botón continuar para " +"proceder." + +#, fuzzy +msgid "Continue" +msgstr "Continuar..." + +msgid "Download Plugin List" +msgstr "Descargar Lista de Plugins" + +msgid "Show Repository List" +msgstr "Mostar la Lista de Repositorios" + +#, fuzzy +msgid "Upgrade Gallery" +msgstr "Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Una nueva versión de Gallery está disponible, pero no puede ser actualizada a traves de esta " +"interfaz. La actualización podría hacer que algunos de tus plugins dejen de trabajar, pero " +"puede haber otros disponibles que dependan de esa nueva version. Aquí estan los pasos " +"recomendados para hacer la actualización:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sDescargar%s el núcleo de Gallery" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Leer las %sinstrucciones de actualización%s y realizar la misma" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Los plugins incompatibles estan marcados con un icono de exclamación." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Un nueva versión del módulo principal está disponible. Puede haber plugins que sean " +"incompatibles con el módulo principal instalado, que no muestran aquí. Puede ver una %slista " +"completa%s de plugins, incluyendo incompatibles, los cuales son marcados con un icono rojo. " + +#, fuzzy +msgid "upgrade available" +msgstr "Gallery" + +msgid "locked" +msgstr "bloqueado" + +#, fuzzy +msgid "Theme Name" +msgstr "Tema" + +msgid "Module Name" +msgstr "Nombre del Módulo" + +#, fuzzy +msgid "Latest" +msgstr "Borrar un usuario" + +msgid "Locked Plugin" +msgstr "Plugin Bloqueado" + +#, fuzzy +msgid "Incompatible Plugin" +msgstr "¡Módulo Incompatible!" + +#, fuzzy +msgid "Upgrade Available" +msgstr "actualizar" + +#, fuzzy +msgid "download" +msgstr "bajar" + +msgid "modify" +msgstr "modificar" + +msgid "Upgrade All Plugins" +msgstr "Actualizar todos los Plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery puede actualizar automáticamente tus temas y módulos a las últimas versiones " +"disponibles. No se descargarán nuevos plugins." + +#, fuzzy +msgid "Upgrade All" +msgstr "actualizar" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "bajar" + +msgid "No packages have been selected." +msgstr "No se han seleccionado paquetes." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Descarga un paquete para usar este plugin. Puedes actualizar escogiendo una nueva version " +"del paquete a descargar. Los paquetes de idioma son opcionales, sólo necesitas descargar " +"aquellos que quieras usar en tu sitio." + +#, fuzzy +msgid "Base Packages" +msgstr "Nombre completo" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: versión %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: versión %s (build %s) %s¡El degradar no está soportado!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sInstalado Actualmente%s: versión %s (build %s)" + +#, fuzzy +msgid "Language Packages" +msgstr "Preferencias de idioma" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%sseleccionar todos%s%sdeseleccionar todos%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s versión %s (actualizando desde %s)" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "Versió de PHP" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s versión %s (%suna nueva versión %s está instalada%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s versión %s (actualmente instalado)" + +msgid "No compatible language packages available" +msgstr "Paquetes de idioma compatibles no disponibles" + +msgid "You must select a base package before choosing language packs." +msgstr "Debes seleccionar un paquete de base antes de seleccionar paquetes de idioma." + +#, fuzzy +msgid "Update" +msgstr "Borrar un usuario" + +#, fuzzy +msgid "Gallery Themes" +msgstr "Gallery" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Tema %s activado con éxito" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Tema %s desactivado con éxito" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Tema %s instalado con éxito" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Tema %s desinstalado con éxito" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Tema %s actualizado con éxito" + +msgid "Successfully saved default album settings" +msgstr "Configuración del álbum por defecto guardada con éxito" + +#, fuzzy +msgid "Restored theme settings" +msgstr "Opciones del Album" + +msgid "Defaults" +msgstr "Por defecto" + +#, fuzzy +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "Estos son los valores por defecto. Puedes ser cambiados pora cada album" + +#, fuzzy +msgid "Default sort order" +msgstr "Ordenar el Album" + +msgid "with" +msgstr "con" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" +"El tema %s es incompatible con tu versión de Gallery o no está disponible. Por favor " +"actualiza el tema %s o escoge otro tema por defecto." + +#, fuzzy +msgid "New albums" +msgstr "editar album" + +#, fuzzy +msgid "Save Defaults" +msgstr "Por defecto" + +#, fuzzy, c-format +msgid "%s Theme Settings" +msgstr "Opciones del Album" + +#, fuzzy +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Estos son los valores por defecto. Puedes ser cambiados pora cada album" + +msgid "Available" +msgstr "Disponible" + +msgid "Choose a block" +msgstr "Escoge un bloque" + +#, fuzzy +msgid "Selected" +msgstr "Borrar" + +msgid "Remove" +msgstr "Borrar" + +#, fuzzy +msgid "Move Up" +msgstr "Mover" + +#, fuzzy +msgid "Move Down" +msgstr "Mover" + +msgid "Parameter" +msgstr "Parámetro" + +#, fuzzy +msgid "Value" +msgstr "Escalar" + +msgid "There are no settings for this theme" +msgstr "Este tema no tiene configuración" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "Opciones del Album" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Las herramientas mostradas a continuación pueden solaparse en las operaciones y tipos mime " +"que soportan. Clasifica las herramientas aquí para determinar que realizara esas " +"operaciones." + +msgid "Toolkit" +msgstr "Herramienta" + +#, fuzzy +msgid "Order" +msgstr "Borrar" + +msgid "up" +msgstr "subir" + +msgid "down" +msgstr "bajar" + +msgid "User Management" +msgstr "Manejo de Usuarios" + +#, c-format +msgid "Removed user '%s'" +msgstr "Usuario '%s' eliminado" + +#, c-format +msgid "Created user '%s'" +msgstr "Usuario '%s' creado" + +#, c-format +msgid "Modified user '%s'" +msgstr "Usuario '%s'modificado" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Hay %d usuario en el sistema." +msgstr[1] "Hay %d usuarios en el sistema." + +#, fuzzy +msgid "Edit User" +msgstr "Editar un usuario" + +msgid "You cannot delete yourself!" +msgstr "No se puede borrar a si mismo!" + +#, fuzzy +msgid "You cannot delete the special guest user." +msgstr "No puede borrar el usuario anónimo!" + +msgid "Edit User (by list)" +msgstr "Editar Usuario (por lista)" + +#, fuzzy +msgid "Locked" +msgstr "bloqueado" + +#, fuzzy +msgid "Failed Logins" +msgstr "Fracaso" + +msgid "Thumbnails" +msgstr "Miniaturas" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery puede crear las miniaturas en tiempo de subida, o la primera vez que se visualicen. " +"En cualquier caso, creará y guardará la miniatura solo una vez, pero si las creas en el " +"momento de la subida los álbumes se mostraran más rápido la primera vez a cargo de un mayor " +"tiempo de subida." + +#, fuzzy +msgid "Create thumbnails now" +msgstr "Recrear miniaturas" + +#, fuzzy +msgid "This is a test email from Gallery2" +msgstr "Esto es la parte superior de su Gallery" + +msgid "Edit Conflict!" +msgstr "¡Conflicto de Revisión!" + +#, fuzzy +msgid "Security Violation" +msgstr "Violació de Seguridad!" + +msgid "Database Error" +msgstr "Error en la Base de Datos" + +msgid "Platform Error" +msgstr "Error de Plataforma" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Autorización Confirmada" + +msgid "Error" +msgstr "Error" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Tú cambio no se ha completado porque alguien más ha hecho un cambio conflictivo en el mismo " +"elemento. Usa el botón de atrás de tu navegador para regresar a la página donde te " +"encontrabas, luego recarga esa página e intenta hacer el cambio de nuevo." + +msgid "Go back and try again" +msgstr "Vuelve e intentarlo de nuevo" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Si este problema sucede en repetidas ocasiones, puede ser por una corrupcion en tu caché. " +"Los Administradores del Sitio pueden limpiar esta caché." + +#, fuzzy +msgid "Clear the cache" +msgstr "Borrar Paginas Guardadas" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"Como alternativa, puedes volver a la página principal de Gallery y reanudar la búsqueda." + +msgid "The action you attempted is not permitted." +msgstr "La acción que has intentado hacer no está permitida." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Tu cambio no se puede completar debido a una perdida de datos de sesión. Por favor " +"reintentalo. Si sigue sin funcionar, intenta desconectarte y volver a conectarte de nuevo." + +msgid "An error has occurred while interacting with the database." +msgstr "Ha ocurrido un error interactuando con la base de datos." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"La naturaleza exacta de los errores de la base de datos no son capturados a no ser que este " +"activo el modo de depuración de Gallery en config.php. Antes de pedir ayuda para este error " +"por favor habilita la salida de depuración de memoria intermedia y reintenta la operación. " +"Revisa la última parte de la larga salida de depuración para encontrar detalles sobre el " +"error." + +#, fuzzy +msgid "An error has occurred while interacting with the platform." +msgstr "Ha ocurrido un error interactuando con la base de datos." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"La naturaleza extacta del error de la plataforma es desconocida. Una causa común son " +"permisos insuficientes en el sistema de archivos. Esto puede suceder si tú o tu servidor web " +"cambio algo en el sistema de ficheros, e.j. restaurando datos desde una copia de seguridad." + +msgid "Item not found." +msgstr "Elemento no encontrado." + +msgid "An error has occurred." +msgstr "Ha ocurrido un error." + +#, fuzzy +msgid "Back to the Gallery" +msgstr "Ver Galería" + +msgid "Error Detail" +msgstr "Detalle del Error" + +#, fuzzy +msgid "System Information" +msgstr "Destino" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"No tienes ninguna Herramienta Gráfica activada que pueda manejar imágenes JPEG. Si agregas " +"imágenes, probablemente no se generará ninguna miniatura." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Visita la página de Módulos para activar una Herramienta Gráfica." + +#, fuzzy +msgid "Add Sub-Album" +msgstr "Agregar Album" + +#, fuzzy +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Este nombre representa la localizacion de este item en su disco duro. No es visible en " +"ningun lado, excepto posiblemente en el URL. Debe ser unico en este album. Nota: " +"Unicamente puede usar caracteres alfanumericos, guiones (-) y rayas (_) en sus nombres." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Su nombre contiene caracteres inválidos. Ingrese otro." + +msgid "You must enter a name for this album." +msgstr "Tiene que ingresar un nombre para este album" + +msgid "The name you entered is already in use. Please enter another." +msgstr "Ese nombre ya está en uso. Ingrese otro." + +msgid "This is the album title." +msgstr "Este es el titulo del álbum." + +msgid "This is the album summary." +msgstr "Este es el resumen del álbum." + +msgid "Keywords are not visible, but are searchable." +msgstr "Las palabras clave no son visibles, pero se puede buscar por ellas" + +#, fuzzy +msgid "This is the long description of the album." +msgstr "Una descripció mas larga de este ím" + +msgid "Create" +msgstr "Crear" + +msgid "Upload Complete" +msgstr "Carga Completa" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "" +msgstr[1] "" + +msgid "No files added." +msgstr "No se agregaron ficheros." + +#, c-format +msgid "Added %s" +msgstr "Agregado %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Fallo al agregar %s" + +#, fuzzy +msgid "Add more files" +msgstr "Agregar Items" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Tú servidor web está configurado para rechazar la subida de archivos desde el navegador en " +"este momento. Por favor contacta con el administrador del sistema para recibir ayuda." + +#, fuzzy +msgid "Upload files directly from your computer." +msgstr "Subir un archivo desde su computadora." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Ingrese el path completo al archivo y un subtítulo opcional en los campos." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Nota: Puedes subir hasta %s de por vez. Si quieres subir una mayor cantidad de " +"datos, debes subir los archivos por bloques, usar un formato diferente de subida, o pedirle " +"al administrador de sistemas que habilite un mayor ratio de subida." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Nota: Puedes subir hasta %s de por vez. Los ficheros no deben sobrepasar los %s " +"megas de forma individual. Si quieres subir una mayor cantidad de datos, debes subir los " +"archivos por bloques, usar un formato diferente de subida, o pedirle al administrador de " +"sistemas que habilite un mayor ratio de subida." + +msgid "More Upload Boxes..." +msgstr "Mas Cajas de Subida..." + +msgid "Set item titles from:" +msgstr "Establecer los títulos de los elementos de:" + +#, fuzzy +msgid "Assign caption to:" +msgstr "Administrador de Gallery" + +msgid "No Thumbnail" +msgstr "Sin Miniatura" + +#, fuzzy +msgid "Delete Items" +msgstr "Borrar í" + +msgid "No items were selected for deletion" +msgstr "No se han seleccionado elementos para eliminar" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to delete" +msgstr "Este ábum no contiene elementos para eliminar" + +#, fuzzy +msgid "Choose the items you want to delete" +msgstr "Elija los ítems que desea mover" + +#, fuzzy, c-format +msgid "(page %d of %d)" +msgstr "Visualizando página %d de %d" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Los elementos que has seleccionado aquí quedaran seleccionados mientras te mueves entre las " +"páginas." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "(datos)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy +msgid "(empty album)" +msgstr "(álbum)" + +msgid "Check All" +msgstr "Seleccionar todos" + +msgid "Check None" +msgstr "Deseleccionar todos" + +msgid "Invert" +msgstr "Invertir" + +msgid "Previous Page" +msgstr "Página Anterior" + +#, fuzzy +msgid "Next Page" +msgstr "Útima >|" + +msgid "Deletion Complete" +msgstr "Borrado Completo" + +msgid "Item successfully deleted" +msgstr "Elemento eliminado con éxito" + +#, fuzzy, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Realmente quiere borrar este ítem?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "¡No se puede deshacer!" + +msgid "There was a problem processing your request." +msgstr "Ha habido un problema procesando tu petición" + +msgid "Sort order" +msgstr "Ordenar por" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Configura el orden de colocación para el álbum. Se aplica tanto a todos los elementos " +"actuales como a los nuevos elementos agregados." + +#, fuzzy +msgid "Apply to all subalbums" +msgstr "Aplicar a sub-items" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" +"Todo elemento requiere una miniatura. Selecciona el tamaño por defecto en pixeles aquí." + +msgid "You must enter a number (greater than zero)" +msgstr "Tiene que ingresar un número (mayor que cero)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Usar este tamaño de miniatura en todos los subálbumes" + +msgid "Resized Images" +msgstr "Imagenes Escaladas" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Todo elemento en tu álbum puede tener múltiples tamaños. Define los tamaños por defecto aquí." + +msgid "Active" +msgstr "Activo" + +#, fuzzy +msgid "Target Size (pixels)" +msgstr "Destino (Pixeles)" + +msgid "You must enter a valid size" +msgstr "Tiene que ingresar un tamaño válido" + +msgid "Use these target sizes in all subalbums" +msgstr "Usar esos tamaños de objetivo en todos los subálbumes" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Aplicar a los subelementos" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"La configuración de la miniatura y la imagen redimensionada son para todos los elementos " +"nuevos. Para aplicar esa caonfiguración a todos los elementos en tu album, marca la opción " +"apropiada. Incluyendo subalbums aplicará los propios ajustes de cada álbum a sus miniaturas/" +"imágenes redimensionadas, que pueden no coincidir con la configuración de arriba. " +"Construyendo las imágenes ahora la operación puede tomarse un tiempo, pero ahorra lo que " +"tarda en construir y cachear cada fichero cuando es visto por primera vez. " + +msgid "Apply album setting to thumbnails" +msgstr "Aplicar la configuración del álbum a las miniaturas" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "Aplicar a los subelementos" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Rehacer miniaturas" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Rehacer imágenes redimensionadas" + +msgid "Build resizes too" +msgstr "Construir también imágenes redimensionadas" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Para que Gallery muestre correctamente esta animación, ha de saber el alto y ancho de la " +"misma. Si tienes instalada una herramienta gráfica que maneje archivos de animación, " +"entonces estos valores deberían estar ya configurados. En caso contrario, deberían estar " +"puestos a 0. Si no introduces aquí los valores correctos, la animación podría aparecer " +"distorsionada cuando se visione en tu navegador web. Date cuenta que cambiar estos valores " +"no cambia la animación en si misma por lo que experimentar no causa ningún daño." + +msgid "Width" +msgstr "Ancho" + +#, fuzzy +msgid "You must enter a value greater than or equal to 0" +msgstr "Tiene que ingresar un número (mayor que cero)" + +msgid "Height" +msgstr "Alto" + +msgid "There were errors saving some items" +msgstr "Ha habido errores guardando algunos elementos" + +msgid "There were errors saving all items" +msgstr "Ha habido errores guardando todos los elementos" + +msgid "Successfully saved all items" +msgstr "Todos los elementos guardados con éxito" + +#, fuzzy +msgid "This album contains no items" +msgstr "Este grupo contiene %d usuario" + +#, fuzzy +msgid "Saved successfully." +msgstr "El usuario '%s' a sido modificado." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Este elemento ha sido modificado por alguien más en el mismo momento. Tus cambios se " +"perdieron." + +#, fuzzy +msgid "You do not have permissions to modify this item." +msgstr "No tiene permisos suficientes como para agregar items a este album" + +#, fuzzy +msgid "Save and Done" +msgstr "Guardar cambios" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Guardar y Editar los %s anteriores" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Guardar y Editar los %s próximos" + +#, fuzzy +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Este nombre representa la localizacion de este item en su disco duro. No es visible en " +"ningun lado, excepto posiblemente en el URL. Debe ser unico en este album. Nota: " +"Unicamente puede usar caracteres alfanumericos, guiones (-) y rayas (_) en sus nombres." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Su nombre contiene caracteres inválidos. Ingrese otro." + +msgid "You must enter a name for this item." +msgstr "Tiene que ingresar un nombre para este item." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Ese nombre ya está en uso. Seleccione otro." + +#, fuzzy +msgid "The title of this item." +msgstr "Editando este item" + +msgid "The root album must have a title." +msgstr "El álbum principal debe tener un título." + +#, fuzzy +msgid "The summary of this item." +msgstr "Editando este item" + +#, fuzzy +msgid "This is the long description of the item." +msgstr "Una descripció mas larga de este ím" + +#, c-format +msgid "%s Date and Time" +msgstr "%s Fecha y Hora" + +msgid "Set the date and time when this image was captured." +msgstr "Ajusta la fecha y hora a cuando la imagen fue capturada." + +msgid "Set the date and time to be displayed for this item." +msgstr "Ajusta la fecha y hora para ser mostrada por este elemento." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Ajusta la fecha y hora para ser mostrada por este %s." + +msgid "Date:" +msgstr "Fecha:" + +#, fuzzy +msgid "Time:" +msgstr "mover item" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Usar la fecha y hora de la captura original desde la información del archivo (ej. Exif tag):" + +#, fuzzy +msgid "You must enter a valid date and time" +msgstr "Tiene que ingresar un tamaño válido" + +#, fuzzy +msgid "Thumbnail" +msgstr "Miniaturas" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Establece el tamaño de la miniatura. El lado más grande de la miniatura no será mayor que " +"este valor. Deja este campo en blanco si no quieres miniatura." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de elemento, de modo que no " +"podemos crear o modificar una miniatura." + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "Tiene que ingresar un nombre para este item." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Para que Gallery muestre correctamente esta película, ha de saber el alto y ancho de la " +"misma. Si tienes instalada una herramienta gráfica que maneje archivos de vídeo, " +"entonces estos valores deberían estar ya configurados. En caso contrario, deberían estar " +"puestos a 0. Si no introduces aqui los valores correctos, la película podría aparecer " +"distorsionada cuando se visione en tu navegador web. Date cuenta que cambiar estos valores " +"no cambia la película en si misma por lo que experimentar no causa ningún daño." + +#, fuzzy +msgid "Resized Photos" +msgstr "Imagenes Escaladas" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Estos tamaños son versiones alternativas redimensionadas del original que te gustaría tener " +"disponibles para mostrar." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos crear o modificar las versiones redimensionadas." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Puedes seleccionar que parte de la foto será usada para la miniatura. Esto no afectará a " +"las versiones redimensionadas o al original de la imagen." + +msgid "Aspect Ratio: " +msgstr "Relación de Aspecto: " + +msgid "Crop" +msgstr "Recortar" + +#, fuzzy +msgid "Undo Changes" +msgstr "Cambiar" + +msgid "Reset to default" +msgstr "Reiniciar a valores por defecto" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos cortar la miniatura." + +msgid "Rotate" +msgstr "Rotar" + +#, fuzzy +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Unicamente puede rotar la imagen en incrementos de 90°." + +#, fuzzy +msgid "CC 90°" +msgstr "Horario 90°" + +#, fuzzy +msgid "180°" +msgstr "Rotar 180°" + +#, fuzzy +msgid "C 90°" +msgstr "Horario 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos rotarla." + +msgid "Scale" +msgstr "Escalar" + +#, fuzzy +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Reducir o agrandar la imagen original. Cuando Gallery modifica una imagen puede mantener el " +"mismo aspecto (relación alto/ancho) que la imagen original para evitar distorsiones. " +"El valor que ingrese abajo forma un tope en pixeles. Gallery modificará la imagen " +"hasta que entre dentro de estas medidas." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"No hay herramientas gráficas habilitadas que soporten este tipo de foto, de modo que no " +"podemos escalarla." + +msgid "You must enter a size" +msgstr "Tiene que ingresar un tamaño" + +msgid "Preserve Original" +msgstr "Preservar Original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery no modifica tu foto original cuando la rota y la escala. En cambio, duplica la foto " +"y trabaja con copias. Esto requiere una pequeña cantidad de espacio extra en el disco pero " +"previene que el original se dañe. Deshabilitando esta opción, se provocará que cualquier " +"acción (rotado, escalado, etc) modifique el original" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Este es un enlace a otra foto, de modo que no puedes cambiar el original" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Hay enlaces a esta foto, de modo que no puedes cambiar el original" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"No hay herramientas gráficas que soporten modificar el original así que las operaciones solo " +"se pueden aplicar a las copias" + +#, fuzzy +msgid "Preserve Original Photo" +msgstr "Preservar Original" + +#, fuzzy +msgid "Modified Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Está usando una copia de lo imagen original. La imagen original todavía " +"está disponible, pero es usada actualmente.Cualquier cambio que haga será " +"hecho unicamente en la copia" + +#, fuzzy +msgid "Restore original" +msgstr "Volver al original" + +#, fuzzy +msgid "Choose a theme" +msgstr "Escoge un bloque" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" +"Este álbum está configurado para usar el tema %s el cual o bien es incompatible con Gallery " +"o no está disponible. Por favor actualiza el tema %s o usa otro tema para este álbum." + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Los temas controlan el 'look and feel' del álbum. Puedes escoger un tema diferente para " +"cada álbum. Si no eliges un tema, usaremos el tema %s por defecto." + +msgid "Use this theme in all subalbums" +msgstr "Usar este tema en todos los subálbumes" + +msgid "Choose Theme" +msgstr "Escoger Tema" + +#, fuzzy, c-format +msgid "Configure the %s theme" +msgstr "Tema de prueba de unidad" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"Este álbum esta configurado para usar el tema %s. Estos ajustes solo se aplican al " +"tema de este álbum." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Usar esta configuración en todos los subálbumes que usen el tema %s" + +#, fuzzy +msgid "Album Highlight" +msgstr "Hacer carátula" + +#, fuzzy +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Quiere hacer este ítem la carátula del album padre?" + +#, fuzzy +msgid "Highlight for:" +msgstr "Hacer carátula" + +#, fuzzy +msgid "Highlight" +msgstr "Hacer carátula" + +msgid "Move an Item" +msgstr "Mover un item" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to move." +msgstr "Este álbum no contiene elementos para mover." + +msgid "Source" +msgstr "Fuente" + +msgid "Choose the items you want to move" +msgstr "Elija los ítems que desea mover" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"El destino que elijio no acepta sub-albums, por lo tanto todos los sub-albums han sido " +"deseleccionados" + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"El destino que elijio acepta unicamente sub-albums, por lo tanto todo lo que no sea un " +"album a sido deseleccionados" + +msgid "You are not allowed to move this item away from here." +msgstr "No puede mover este de aquí." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "No puede mover este album al destino seleccionado" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "No puede mover este item al destino seleccionado" + +msgid "You cannot move an album into its own subtree." +msgstr "No puede mover el album dentro de si mismo." + +msgid "Destination" +msgstr "Destino" + +msgid "Choose a new album for them" +msgstr "Escoje un nuevo álbum para ellos" + +msgid "You don't have the permission to add items in this album" +msgstr "No tiene permisos suficientes como para agregar items a este album" + +msgid "No destination chosen" +msgstr "No se elijio destino" + +msgid "Move" +msgstr "Mover" + +msgid "Successfully moved" +msgstr "Movido con éxito" + +#, fuzzy +msgid "Choose a destination album" +msgstr "Elija el destino para los ítems seleccionados" + +msgid "Permissions" +msgstr "Permisos" + +#, fuzzy +msgid "Owner changed successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Group permission added successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "User permission added successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "Group permission removed successfully" +msgstr "El usuario '%s' a sido modificado." + +#, fuzzy +msgid "User permission removed successfully" +msgstr "El usuario '%s' a sido modificado." + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Cada item tiene su propio conjunto de permisos. Cambiar los permisos padre no tiene efecto " +"sobre los permisos del hijo. Esto le permite restringir el acceso al padre de este item, " +"pero permitir acceso total a este item, o viceversa. La manera mas eficiente de usar este " +"sistema de permisos es crear grupos y asignarle permisos. Luego, si quiere concederle " +"permisos especiales a un usuario en particular, puede agregar (o quitar) este usario del " +"grupo respectivo." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Este item pertenece al usuario: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Este item pertenece al usuario: %s (%s)" + +msgid "New owner" +msgstr "Nuevo propietario" + +msgid "Change" +msgstr "Cambiar" + +#, fuzzy +msgid "Apply new owner to sub-items" +msgstr "Aplicar a sub-items" + +msgid "You must enter a user name" +msgstr "Tiene que ingresar un nombre de usuario" + +msgid "The user name you entered is invalid" +msgstr "El nombre de usuario que ingresó es inválido" + +msgid "Apply changes" +msgstr "Guardar cambios" + +#, fuzzy +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Este item tiene sub-items. Los cambios que haga aquí pueden realizarse unicamente " +"este item, o pueden ser realizados a todos los sub-items. Tome nota que al hacer cambios a " +"los sub-items mezclará su cambio entre los permisos existentes de los sub-items y " +"puede tomar mucho tiempo si tiene muchos sub items. Es mas eficiente garantizar permisos a " +"grupos y luego agregar y remover usuarios de los grupos cuando es posible hacerlo." + +msgid "Apply to sub-items" +msgstr "Aplicar a sub-items" + +msgid "Group Permissions" +msgstr "Permisos del grupo" + +#, fuzzy +msgid "Group name" +msgstr "Nombre del Grupo:" + +msgid "Permission" +msgstr "Permiso" + +#, fuzzy +msgid "New Group Permission" +msgstr "Permisos del grupo" + +msgid "Add Permission" +msgstr "Agregar Permiso" + +msgid "The permission you chose is invalid" +msgstr "Los permisos que seleccionó no son válidos" + +msgid "The group name you entered is invalid" +msgstr "El nombre de grupo ingresado es invalido" + +#, fuzzy +msgid "Group already has this permission (check sub-permissions)" +msgstr "" +"El grupo ya tiene este permiso (quizás ya estaba en uno de los permisos que el grupo " +"tenía)" + +msgid "User Permissions" +msgstr "Permisos de Usuarios" + +msgid "User name" +msgstr "Nombre de usuario" + +#, fuzzy +msgid "New User Permission" +msgstr "Permisos de Usuarios" + +#, fuzzy +msgid "The user already has this permission (check sub-permissions)" +msgstr "" +"El usuario ya tenía este permiso (quizás ya estaba en uno de los permisos que " +"tenía enteriormente)" + +#, fuzzy +msgid "Reorder Album" +msgstr "Agregar Album" + +#, fuzzy +msgid "Order saved successfully" +msgstr "El usuario '%s' a sido modificado." + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Este álbum tiene un orden de colocación automático especificado, de modo que no puedes " +"cambiar el orden de los elemento manualmente. Deberías quitar el orden de colocación " +"automático para continuar." + +#, fuzzy +msgid "change" +msgstr "Cambiar" + +#, fuzzy +msgid "Change the order of the items in this album." +msgstr "No tiene permisos suficientes como para agregar items a este album" + +#, fuzzy +msgid "Move this item" +msgstr "mover item" + +#, fuzzy +msgid "before" +msgstr "Borrar" + +msgid "after" +msgstr "después" + +#, fuzzy +msgid "Reorder" +msgstr "Borrar" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript debe ser habilitado para que esta página funcione correctamente. Sin embargo, " +"parece que JavaScript está deshabilitado o bien no está soportado por tu navegador. Por " +"favor habilita JavaScript cambiando las opciones de tu navegador e intentalo de nuevo." + +msgid "Site is temporarily down for maintenance." +msgstr "El sitio está caido de forma temporal por mantenimiento." + +#, fuzzy +msgid "Admin Login" +msgstr "Acciones" + +msgid "Enter a URL" +msgstr "Escribe la URL" + +msgid "Enter some text describing the URL" +msgstr "Escribe algún texto describiendo la URL" + +msgid "Enter an image URL" +msgstr "Escribe la URL de la imagen" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lista" + +msgid "bullet" +msgstr "elemento de lista" + +msgid "url" +msgstr "url" + +#, fuzzy +msgid "image" +msgstr "mover item" + +#, fuzzy +msgid "color" +msgstr "central" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Puedes usar tambien el nombre del color, por ejemplo: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Error de configuración: No se encuentra el Tema" + +msgid "Missing Theme" +msgstr "No se encuentra el Tema" + +#, fuzzy, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Este álbum está configurado para utilizar el tema %s, pero se encuentra inactivo o no está " +"instalado." + +#, fuzzy, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Este álbum está configurado para utilizar el tema %s, pero se encuentra inactivo o no está " +"instalado." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Para arreglar este problema puedes %sinstalar o activar este tema%s o seleccionar otro tema " +"por defecto." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Para arreglar este problema puedes %sentrar como administrador del sitio%s y luego %" +"sinstalar o activar este tema%s o seleccionar otro tema por defecto." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sescoger un nuevo tema para este álbum%s o %sinstalar o " +"activar este tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sescoger un nuevo tema para este álbum%s o %sentrar como " +"administrador del sitio%s y luego %sinstalar o activar este tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sidentificarte%s y luego %sescoger un nuevo tema para " +"este álbum%s o %sentrar como administrador del sitio%s y luego %sinstalar o activar este tema" +"%s." + +#, fuzzy +msgid "Admin Options" +msgstr "Acciones" + +#, fuzzy +msgid "User Options" +msgstr "Permisos de Usuarios" + +msgid "Password changed successfully" +msgstr "Contraseña modificada con éxito" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Debes introducir tu contraseña actual para comprobar que eres tú, luego introduce la nueva " +"contraseña dos veces para asegurarte de que no has cometido error." + +#, fuzzy +msgid "Current Password" +msgstr "Contraseña" + +#, fuzzy +msgid "You must enter your current password" +msgstr "Tiene que ingresar una contraseña" + +#, fuzzy +msgid "Incorrect password" +msgstr "Contraseña" + +#, fuzzy +msgid "New Password" +msgstr "Contraseña" + +#, fuzzy +msgid "You must enter a new password" +msgstr "Tiene que ingresar una contraseña" + +#, fuzzy +msgid "Verify New Password" +msgstr "Verificar la contraseña" + +#, fuzzy +msgid "You must enter your new password again!" +msgstr "Tiene que ingresar una contraseña" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Esta cuenta no está habilitada para modificar la configuracion de la cuenta. Porfavor " +"contacta con tu administrador de Gallery." + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Tu administrado ha bloqueado esta cuenta, impidiendo hacer cambios a la información de la " +"cuenta." + +msgid "Login to your account" +msgstr "Iniciar sesión a tu cuenta" + +msgid "Your password has been recovered, please login." +msgstr "Tu contraseña ha sido recuperada, por favor inicia sesión." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"La conexión a esta cuenta se encuentra deshabilitada temporalmente debido a multiples " +"intentos fallidos de autenticación. Espera a que el acceso sea reestablecido o usa la página de recuperación de contraseña para rehabilitar esta cuenta." + +msgid "Your login information is incorrect. Please try again." +msgstr "Ingreso incorrecto. Por favor intente nuevamente." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Las contraseñas perdidas u olvidadas se pueden recuperar usando la página de recuperar contraseña" + +#, c-format +msgid "Welcome, %s!" +msgstr "¡Bienvenido, %s!" + +msgid "Account settings saved successfully" +msgstr "La configuración de la cuenta se ha guardado con éxito" + +msgid "(required, password required for change)" +msgstr "(requerido, se requiere contraseña para cambiarlo)" + +msgid "(suggested, password required for change)" +msgstr "(sugerido, se requiere contraseña para cambiarlo)" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "Tiene que ingresar una dirección de correo" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "Tiene que ingresar una contraseña" + +msgid "Recover a lost or forgotten password" +msgstr "Recuperar contraseña perdida u olvidada" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Recuperar tu contraseña requiere que tu cuenta de usuario tenga una dirección de correo " +"electrónico asignada, y que tengas acceso a dicha dirección de correo electrónico " +"catalogada. Un mensaje de confirmación te será enviado por correo electrónico conteniendo " +"una URL que debes visitar para configurar una nueva contraseña para su cuenta. Para prevenir " +"el abuso, las peticiones de recuperación de contraseña no pueden ser solicitadas más de una " +"vez en un período de 20 minutos. Una confirmación de recuperación es válida durante siete " +"días. Si no se utiliza durante ese tiempo, será purgada del sistema y tendrá que hacerse una " +"nueva petición." + +msgid "Your recovery request has been sent!" +msgstr "¡Tu petición de recuperación ha sido enviada!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Date cuenta que si tu cuenta no tiene asociada una dirección de correo electrónico, no " +"podrás recibir el correo electrónico y tendrás que ponerte en contacto con tu administrador " +"del sistema para recibir asistencia." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Los administradores pueden usar la página del %sRecuperación de Contraseña de Emergencia%s " +"para recuperar la cuenta de administación si les falla la recepción del correo electrónico " +"de recuperación debido a un problema en el servidor, o a la falta de una dirección de correo " +"electrónico funcional." + +#, fuzzy +msgid "Recover" +msgstr "Borrar" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Para continuar con la puesta a cero de contraseña, tenemos que verificarque eres quién dice " +"ser. El mejor modo de estar seguro es de pedirte que hagas un cambio diminuto en el " +"directorio de Gallery lo que demostraráque tienes los permisos correctos. Así que, vamos a " +"pedirte que crees un nuevo archivo de texto llamado %s en el directorio de gallery2. Dicho " +"archivo debe contener los siguientes carácteres generados al azar:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Para tu comodidad, hemos preparado una %sversión correcta del archivo login.txt%s para ti. " +"Descárgala y cópiala en tu directorio de instalación y tendrás todo listo." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Una vez que hayas subido el fichero, haz click en refrescar para continuar." + +msgid "Emergency Administrator Password Reset" +msgstr "Recuperación de Contraseña de Administrador de Emergencia" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Esta página puede ser usada por un administrador del sistema para reiniciar de forma segura " +"la contraseña de cualquier cuenta." + +msgid "Authorization Confirmed" +msgstr "Autorización Confirmada" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Tu autorización ha sido confirmada. Por favor introduce tu nueva contraseña a " +"continuación. Después de configurar tu nueva contraseña serás llevado a la página de inicio " +"de sesión." + +msgid "Recover Password for Username" +msgstr "Recuperar Contraseña para el Usuario" + +#, fuzzy +msgid "You must enter a username to recover the password for." +msgstr "Tiene que ingresar la contraseña por 2da vez" + +#, fuzzy +msgid "The username you entered does not exist." +msgstr "El nombre de usuario que ingresó es inválido" + +msgid "Authorization Incorrect" +msgstr "Autorización Incorrecta" + +msgid "Recovery Instructions" +msgstr "Instrucciones de Recuperación" + +msgid "AuthFile Missing" +msgstr "Fichero de Autenticación no encontrado" + +msgid "AuthFile Unreadable" +msgstr "Fichero de Autenticación ilegible" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"Tu fichero %s no tiene permisos de lectura. Por favor da a Gallery permisos de lectura sobre " +"el fichero." + +#, fuzzy +msgid "Refresh" +msgstr "Borrar" + +msgid "This page will allow you to reset the password on your account." +msgstr "Esta página te permite reiniciar la contraseña de tu cuenta." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"No hay ninguna petición que coincida con el nombre de usuario y la autorización facilitada. " +"Solicita una nueva autorización desde la página de recordar contrañas." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"La petición a la que estas intentando acceder ha expirado. Solicita una nueva autorización " +"desde la página de recordar contrañas." + +msgid "Authorization missing" +msgstr "Autorización no encontrada" + +#, fuzzy +msgid "Username missing" +msgstr "Permisos de Usuarios" + +msgid "Submit" +msgstr "Enviar" + +#, c-format +msgid "Hello %s," +msgstr "Hola %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Has recibido este correo porque una recuperación de contraseña para %s fue solicitada por %s " +"a las %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Tu nombre de usuario es: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Para finalizar el proceso de recuperación de contraseña por favor haz click en el siguiente " +"vinculo e introduce la información requerida:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Si no has solicitado este correo electrónico, puedes ignorarlo." + +msgid "Thank you!" +msgstr "¡Gracias!" + +msgid "guest" +msgstr "Invitado" + +#, c-format +msgid "display mode: %s" +msgstr "modo de visualización: %s" + +#, fuzzy, c-format +msgid "Date: %s" +msgstr "Borrar un usuario" + +#, fuzzy, c-format +msgid "Owner: %s" +msgstr "Dueño" + +#, fuzzy, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "minuto %d" +msgstr[1] "minuto %d" + +#, fuzzy, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "minuto %d" +msgstr[1] "minuto %d" + +#, c-format +msgid "Views: %d" +msgstr "Visitas: %d" + +#, fuzzy +msgid "« album actions »" +msgstr "* Sin Ordenar *" + +#, fuzzy +msgid "« item actions »" +msgstr "* Sin Ordenar *" + +msgid "Go" +msgstr "Ir" + +msgid "Navigation" +msgstr "Navegación" + +msgid "next" +msgstr "siguiente" + +msgid "last" +msgstr "último" + +#, fuzzy, c-format +msgid "Page %d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy, c-format +msgid "%d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy +msgid "first" +msgstr "|< Primero" + +msgid "previous" +msgstr "anterior" + +msgid "Page:" +msgstr "Página: " + +#, fuzzy, c-format +msgid "%d. %s" +msgstr "Editar un usuario" + +#, fuzzy +msgid "Size: " +msgstr "Editar Tamaño" + +msgid "Unknown" +msgstr "Desconocido" + +msgid "Full size: " +msgstr "Tamaño total: " + +#, fuzzy +msgid "Setting" +msgstr "Ajustes de Gallery" + +msgid "Use Global" +msgstr "Usar Globales" + +#, fuzzy +msgid "Language selector" +msgstr "Preferencias de idioma" + +#, fuzzy +msgid "Item actions" +msgstr "Permisos del item" + +msgid "Use dropdown menu" +msgstr "Usa el menú desplegable" + +#, fuzzy +msgid "Login block" +msgstr "Login" + +msgid "Links to album/photo peers" +msgstr "Enlaces a los pares de álbum/foto" diff --git a/Source/gallery2/modules/core/po/es_MX.po b/Source/gallery2/modules/core/po/es_MX.po new file mode 100644 index 0000000..98fec13 --- /dev/null +++ b/Source/gallery2/modules/core/po/es_MX.po @@ -0,0 +1,4092 @@ +# $Id: es_MX.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 15:47+0100\n" +"Last-Translator: Wieland E. Kublun , www.kublun.com\n" +"Language-Team: Mexican Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Mexican Spanish\n" +"X-Poedit-Country: MEXICO\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#, fuzzy +msgid "Gallery Email Test" +msgstr "Módulos de Gallery" + +msgid "forever" +msgstr "para siempre" + +msgid "High Priority (Me first!)" +msgstr "Prioridad Alta (¡Yo Primero!)" + +msgid "Low Priority (I want to share!)" +msgstr "Prioridad Baja (¡Quiero compartir!)" + +msgid "No Markup" +msgstr "Sin markup" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML Raw" + +msgid "Database" +msgstr "Base de Datos" + +#, fuzzy +msgid "File" +msgstr "Archivo: " + +#, fuzzy, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuto" +msgstr[1] "%d minutos" + +#, fuzzy, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#, fuzzy, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d día" +msgstr[1] "%d días" + +#, fuzzy, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d semana" +msgstr[1] "%d semanas" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Sin aceleración" + +msgid "Partial acceleration" +msgstr "Aceleración parcial" + +msgid "Full acceleration" +msgstr "Aceleración completa" + +#, fuzzy +msgid "Themes" +msgstr "Tema/Skin" + +msgid "Updating Repository Index" +msgstr "Actualizando Índice del Repositorio" + +msgid "Scanning plugins" +msgstr "Escaneando plugins" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Módulos de Gallery" + +#, fuzzy +msgid "Done." +msgstr "Hecho" + +msgid "Updating Packages" +msgstr "Actualizando Paquetes" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Preparando..." + +#, c-format +msgid "Downloading %s" +msgstr "Descargando %s" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Acciones" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Lenguaje por defecto" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Actualización completa." + +#, fuzzy +msgid "Update complete." +msgstr "Carga completa" + +msgid "install" +msgstr "instalar" + +msgid "upgrade" +msgstr "actualizar" + +msgid "activate" +msgstr "activar" + +#, fuzzy +msgid "uninstall" +msgstr "desinstalar" + +msgid "deactivate" +msgstr "desactivar" + +msgid "Inherit settings from parent album" +msgstr "Heredar configuración del álbum superior" + +#, fuzzy +msgid "Use these settings" +msgstr "Opciones de vista restauradas" + +#, fuzzy +msgid "Installing the core module" +msgstr "Módulo Core de Gallery" + +msgid "key" +msgstr "llave" + +msgid "All access" +msgstr "Acceso Total" + +msgid "[core] View item" +msgstr "[core] Ver elemento" + +msgid "[core] View resized version(s)" +msgstr "[core] Ver version(es) escaladas" + +msgid "[core] View original version" +msgstr "[core] Ver versión original" + +msgid "[core] View all versions" +msgstr "[core] Ver todas las versiones" + +msgid "[core] Add sub-album" +msgstr "[core] Agregar sub-albums" + +msgid "[core] Add sub-item" +msgstr "[core] Agregar sub-elementos" + +#, fuzzy +msgid "[core] Edit item" +msgstr "[core] Editar elemento" + +msgid "[core] Change item permissions" +msgstr "[core] Cambiar permisos del elemento" + +msgid "[core] Delete item" +msgstr "[core] Borrar elemento" + +#, fuzzy +msgid "Upgrading permissions" +msgstr "editar permisos" + +#, fuzzy +msgid "Deleting old permission tables" +msgstr "editar permisos %s" + +msgid "Registered Users" +msgstr "Usuarios Registrados" + +#, fuzzy +msgid "All Users" +msgstr "Todos los usuarios" + +msgid "Detecting broken derivatives" +msgstr "Detectando derivadas rotas" + +msgid "Clearing fast-download cache" +msgstr "Borrando la cache de descarga rápida" + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "editar permisos %s" + +msgid "Updating panorama items" +msgstr "Actualizando elementos de panorama" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimizando tabla AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "Convirtiendo el Esquema de la Tabla" + +msgid "Loading Table Descriptions" +msgstr "Cargando las Descripciones de la Tabla" + +#, fuzzy +msgid "Site Admins" +msgstr "Admins del sitio" + +msgid "Everybody" +msgstr "Todos" + +msgid "Guest" +msgstr "Invitado" + +msgid "Gallery" +msgstr "Gallery" + +#, fuzzy +msgid "This is the main page of your Gallery" +msgstr "Esto es la parte superior de su Gallery" + +msgid "Converting MySQL data to UTF8" +msgstr "Convirtiendo los datos en MySQL a UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Actualizando permisos (%d elementos competos, faltan %d)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, cargando " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, guardando " + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Detectando derivadas rotas, guardando " + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Actualizando permisos (%d elementos competos, faltan %d)" + +#, fuzzy, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "editar permisos %s" + +#, fuzzy +msgid "add items" +msgstr "agregar elementos" + +#, fuzzy +msgid "Album created successfully." +msgstr "El album se ha creado con éxito." + +#, fuzzy +msgid "add sub-album" +msgstr "agregar sub-album" + +#, fuzzy +msgid "add items confirmation" +msgstr "Agregar confirmación de elementos" + +#, fuzzy +msgid "Base filename" +msgstr "Nombre de usuario" + +#, fuzzy +msgid "Caption" +msgstr "Subtítulo: " + +#, fuzzy +msgid "Blank" +msgstr "<< Atrás" + +msgid "From Web Browser" +msgstr "Agregar desde su navegador web" + +#, fuzzy, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabytes" + +#, fuzzy, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobyte" +msgstr[1] "%d kilobytes" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "El archivo de entrada %s excede del tamaño máximo de archivo permido" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "El archivo de entrada %s excede del tamaño de archivo especificado en el formulario" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "El archivo de entrada %s solo ha sido cargado parcialmente" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "El archivo de entrada %s no ha sido cargado. Error %d" + +msgid "Gallery Item Administration" +msgstr "Administrador de elementos" + +#, fuzzy +msgid "delete an item" +msgstr "borrar elemento" + +#, fuzzy +msgid "delete confirmation" +msgstr "confirmación de borrado" + +#, fuzzy, c-format +msgid "delete %s" +msgstr "Borrar %s" + +#, fuzzy, c-format +msgid "edit %s" +msgstr "Editar %s" + +msgid "Settings saved successfully." +msgstr "Propiedades guardadas con éxito" + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Restaurar la configuración del tema" + +#, fuzzy +msgid "Preparing..." +msgstr "Procesando..." + +msgid "Apply thumbnail settings" +msgstr "Aplicar configuración de miniaturas" + +#, fuzzy +msgid "Rebuilding thumbnails..." +msgstr "Recrear miniaturas" + +#, fuzzy +msgid "Album" +msgstr "Agregar Album" + +#, fuzzy, c-format +msgid "Processing image %d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy +msgid "Changes saved successfully" +msgstr "Los cambios han sido guardados con éxito." + +#, fuzzy +msgid "Animation Size" +msgstr "Tamaño de animación" + +#, fuzzy +msgid "edit captions" +msgstr "Opciones administrativas" + +msgid "General" +msgstr "General" + +#, fuzzy +msgid "Movie Size" +msgstr "Tamaño de la película" + +msgid "Photo" +msgstr "Fotografía" + +#, fuzzy +msgid "Thumbnail cropped successfully" +msgstr "Miniatura a sido modificada." + +#, fuzzy +msgid "Thumbnail reset successfully" +msgstr "Miniatura a sido modificada." + +msgid "Photo 5x3" +msgstr "Fotografía 5x3" + +msgid "Photo 6x4" +msgstr "Fotografía 6x4" + +msgid "Photo 7x5" +msgstr "Fotografía 7x5" + +msgid "Photo 10x8" +msgstr "Fotografía 10x8" + +#, fuzzy +msgid "Fullscreen 4x3" +msgstr "Pantalla 4x3" + +msgid "Widescreen 16x9" +msgstr "Formato Panorámico 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Cuadrado 1x1" + +#, fuzzy +msgid "As Image" +msgstr "Como imagen" + +msgid "Landscape" +msgstr "Apaisada" + +msgid "Portrait" +msgstr "Portaretrato" + +#, fuzzy +msgid "Crop Thumbnail" +msgstr "Sin Miniatura" + +#, fuzzy +msgid "Reverted rotate and scale changes successfully" +msgstr "Se ha revertido la rotación y escala satisfactoriamente." + +#, fuzzy +msgid "Rotated photo successfully" +msgstr "Foto rotada satisfactoriamente" + +#, fuzzy +msgid "Scaled photo successfully" +msgstr "Foto escalada con éxito." + +#, fuzzy +msgid "Modify Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "Tema %s activado con éxito" + +#, fuzzy +msgid "« default theme »" +msgstr "« Tema por defecto »" + +msgid "Theme" +msgstr "Tema/Skin" + +msgid "make highlight" +msgstr "destacar" + +msgid "move item" +msgstr "mover elemento" + +#, fuzzy, c-format +msgid "move %s" +msgstr "Mover %s" + +#, fuzzy, c-format +msgid "edit %s permissions" +msgstr "editar permisos %s" + +#, fuzzy +msgid "reorder items" +msgstr "reordenar elementos" + +msgid "Maintenance" +msgstr "Mantenimiento" + +msgid "Gallery Site Administration" +msgstr "Administrador de Gallery" + +msgid "site admin" +msgstr "admin del sitio" + +#, fuzzy +msgid "Gallery User Administration" +msgstr "Administrador de usuarios" + +#, fuzzy +msgid "change password" +msgstr "cambiar contraseña" + +msgid "your account" +msgstr "su cuenta" + +#, fuzzy +msgid "Password Recovery" +msgstr "Contraseña" + +#, fuzzy +msgid "Core" +msgstr "configurar" + +#, fuzzy +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Módulo Core" + +msgid "Add Items" +msgstr "Agregar Elementos" + +#, fuzzy +msgid "Edit Album" +msgstr "Agregar Sub-Album" + +#, fuzzy +msgid "Edit Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "Edit Movie" +msgstr "Película" + +#, fuzzy +msgid "Add Album" +msgstr "Agregar Sub-Album" + +#, fuzzy +msgid "Edit Permissions" +msgstr "Editar Permisos" + +#, fuzzy +msgid "View Permissions" +msgstr "Permisos" + +#, fuzzy +msgid "Delete Album" +msgstr "Borrar un grupo" + +#, fuzzy +msgid "Delete Photo" +msgstr "Borrar %s" + +#, fuzzy +msgid "Delete Movie" +msgstr "Borrar %s" + +#, fuzzy +msgid "Move Album" +msgstr "Reordenar Album" + +#, fuzzy +msgid "Move Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "Move Movie" +msgstr "Tamaño de la película" + +#, fuzzy +msgid "Edit Captions" +msgstr "Subtítulo: " + +msgid "Make Highlight" +msgstr "Destacar" + +#, fuzzy +msgid "Reorder Items" +msgstr "Reordenar elementos" + +#, fuzzy +msgid "Site Admin" +msgstr "Admin del sitio" + +msgid "Login" +msgstr "Login" + +msgid "Your Account" +msgstr "Su cuenta" + +#, fuzzy +msgid "Logout" +msgstr "desconectarse" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Usuarios" + +msgid "Groups" +msgstr "Grupos" + +msgid "Performance" +msgstr "Rendimiento" + +msgid "Toolkit Priority" +msgstr "Prioridad de la herramienta" + +msgid "Graphics Toolkits" +msgstr "Herramientas Gráficas" + +#, fuzzy +msgid "Account Settings" +msgstr "Opciones de la cuenta" + +#, fuzzy +msgid "Change Password" +msgstr "Cambiar contraseña" + +#, fuzzy, c-format +msgid "Edit %s" +msgstr "Editar %s" + +#, fuzzy, c-format +msgid "Delete %s" +msgstr "Borrar %s" + +#, fuzzy, c-format +msgid "Move %s" +msgstr "Mover %s" + +#, fuzzy +msgid "Build all thumbnails/resizes" +msgstr "Recrear miniaturas y escalas" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Asegúrate que los archivos de datos para todas las derivadas (miniaturas, etc.) han sido " +"construidos y reconstruye los que estén corruptos." + +msgid "Build All Thumbnails/Resizes" +msgstr "Crear Todas las Miniaturas/Imágenes Redimensionadas" + +msgid "Debug output for failed items:" +msgstr "Salida de depuración para los elementos fallidos:" + +#, fuzzy, c-format +msgid "Checked %d items" +msgstr "agregar elementos" + +#, fuzzy, c-format +msgid "%d items built" +msgstr "agregar elementos" + +#, c-format +msgid "%d items failed" +msgstr "%d elementos fallidos" + +msgid "Convert MySQL database to UTF8" +msgstr "Convertir la base de datos MySQL a UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Si has creado la base de dartos con MySQL 3.x y actualizas a MySQL 4.x, experimentaras " +"caracteres cambiados hasta que conviertas la base de datos para que use UTF8. Esta " +"operación es inofensiva si tu base de datos ya está convertida, por lo que es seguro que " +"pruebes si no estás seguro/a. Despues de usar esto, deberias ejecutar la tarea 'Borrar la " +"caché de la base de datos' para desacerte de cualquier corupcción en la caché." + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "Elemento borrado con éxito" + +msgid "No conversion required" +msgstr "No se requiere conversión" + +#, fuzzy +msgid "Delete user sessions" +msgstr "Permisos del Sistema" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Borra todas las sesiones persistentes de usuario de acuerdo con tus ajustes de expiración de " +"sesión." + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Permisos del Sistema" + +msgid "Delete database cache" +msgstr "Borrar la cache de la base de datos" + +#, fuzzy +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery almacena la información de la base de datos mas frecuentemente usada en disco para " +"incrementar el rendimiento. Si modificas directamente la base de datos, debes ejecutar esta " +"tarea para borrar la cache y forzar a Gallery a recargar la información de la base de datos." + +#, fuzzy, c-format +msgid "Successfully deleted directory: %s" +msgstr "Se borró %d elemento." + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "No es posible eliminar el directorio %s" + +#, fuzzy +msgid "Delete template cache" +msgstr "Borrar elemento" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compila los ficheros de las plantillas y los guarda para incrementar el " +"rendimiento. Si estas experimentando problemas del tipo Smarty error puedes intentar " +"ejecutar esta tarea. Ejecuta también esta tarea si borras algún fichero de local/*.tpl para " +"que «Smarty» vuelva al archivo tplpor defecto." + +#, fuzzy +msgid "Template cache deleted successfully" +msgstr "El album se ha creado con éxito." + +#, fuzzy +msgid "album" +msgstr "álbum" + +#, fuzzy +msgid "Animation" +msgstr "Animación" + +#, fuzzy +msgid "animation" +msgstr "animación" + +#, fuzzy +msgid "Gallery Core" +msgstr "Gallery Core" + +#, fuzzy +msgid "Gallery Core Module" +msgstr "Módulo Core de Gallery" + +#, fuzzy +msgid "Search descriptions" +msgstr "Descripción de búsqueda" + +#, fuzzy +msgid "Search keywords" +msgstr "Palabras Clave de búsqueda" + +msgid "Search summaries" +msgstr "Resumen de búsqueda" + +#, fuzzy +msgid "Search titles" +msgstr "Títulos de búsqueda" + +msgid "Description" +msgstr "Descripción" + +msgid "Keywords" +msgstr "Palabras Clave" + +msgid "Summary" +msgstr "Resumen" + +msgid "Title" +msgstr "Título" + +msgid "Owner" +msgstr "Dueño" + +#, fuzzy +msgid "Dynamic Album" +msgstr "Agregar Sub-Album" + +#, fuzzy +msgid "dynamic album" +msgstr "agregar sub-album" + +#, fuzzy +msgid "Group" +msgstr "Grupo" + +#, fuzzy +msgid "group" +msgstr "Grupos" + +msgid "Other" +msgstr "Otro(s)" + +#, fuzzy +msgid "Movie" +msgstr "Película" + +#, fuzzy +msgid "movie" +msgstr "Película" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "No puedo crear la ruta del repositorio cache." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"No puedo crear el subdirectorio de cache. Asegurate de que el servidor web tiene permiso de " +"escritura en él." + +#, fuzzy +msgid "Official Release Repository" +msgstr "Repositorio de la Versión Oficial" + +msgid "Experimental Repository" +msgstr "Repositorio Experimental" + +msgid "Community Repository" +msgstr "Repositorio de la Comunidad" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Error descargando índice desde '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Error descargando el hash del índice desde '%s'." + +msgid "Index integrity check failed." +msgstr "La comprobación de integridad del índice ha fallado." + +#, fuzzy +msgid "« default sort order »" +msgstr "« Ordenamiento por defecto »" + +#, fuzzy +msgid "Manual sort order" +msgstr "Ordenar el Album" + +#, fuzzy +msgid "Origination Date" +msgstr "Fecha de Creación" + +msgid "Creation Date" +msgstr "Fecha de Creación" + +msgid "Last Changed Date" +msgstr "Última fecha de cambio" + +msgid "Name" +msgstr "Nombre" + +msgid "View Count" +msgstr "Ver conteo" + +msgid "Random" +msgstr "Aleatorio" + +#, fuzzy +msgid "« no presort »" +msgstr "« Ninguna »" + +#, fuzzy +msgid "Albums First" +msgstr "Opciones básicas del Album" + +msgid "Most Viewed First" +msgstr "Las mas vistas primero" + +msgid "Ascending" +msgstr "Ascendente" + +msgid "Descending" +msgstr "Descendente" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validació deshabilitada hasta que se configure allowSessionAccess en config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Esta página es válida XHTML 1.0" + +#, fuzzy +msgid "Donate to the Gallery project" +msgstr "Volver a la Galería" + +msgid "G2.2: Double Double" +msgstr "G2.2: Doble Doble" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Potenciado por Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Tiempo restante estimado: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Memoria usada: %s, total: %s" + +msgid "Rows per album page" +msgstr "Filas por página de álbum" + +msgid "Columns per album page" +msgstr "Columnas por página de álbum" + +msgid "Number of items to show per page" +msgstr "Numero de elementos por página" + +msgid "Row height (pixels)" +msgstr "Alto de la fila (píxeles)" + +msgid "Column width (pixels)" +msgstr "Ancho de la columna (píxeles)" + +msgid "Show image owners" +msgstr "Mostrar propietarios de las imágenes" + +msgid "Show album owners" +msgstr "Mostrar propietarios de los álbumes" + +msgid "Show micro navigation thumbnails" +msgstr "Mostrar micro miniaturas de navegació" + +msgid "Blocks to show in the sidebar" +msgstr "Bloques para mostrar en la barra lateral" + +msgid "Blocks to show on album pages" +msgstr "Bloques para mostrar en las páginas de los álbumes" + +msgid "Blocks to show on photo pages" +msgstr "Bloques para mostrar en las páginas de las fotos" + +msgid "Thumbnail links in dynamic albums" +msgstr "Enlaces de miniaturas en los álbumes dinámicos" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "Editar Álbum" + +msgid "Jump to original album" +msgstr "Saltar al álbum original" + +msgid "Separate link to original album" +msgstr "Enlace separado al álbum original" + +msgid "View Samples" +msgstr "Ver Ejemplos" + +#, fuzzy +msgid "Album Frame" +msgstr "Opciones básicas del Album" + +msgid "Item Frame" +msgstr "Cuadro del Elemento" + +#, fuzzy +msgid "Photo Frame" +msgstr "Fotografía" + +msgid "Color Pack" +msgstr "Pack de Color" + +#, fuzzy +msgid "You must enter a number greater than 0" +msgstr "Tiene que ingresar un número (mayor que cero)" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Error leyendo la configuración del bloque. Borra la caché de tu navegador e intentalo de " +"nuevo." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +#, fuzzy +msgid "Audio" +msgstr "Audio" + +#, fuzzy +msgid "audio" +msgstr "audio" + +#, fuzzy +msgid "Archive" +msgstr "Archivo" + +#, fuzzy +msgid "archive" +msgstr "archivo" + +msgid "Document" +msgstr "Documento" + +msgid "document" +msgstr "documento" + +#, fuzzy +msgid "Spreadsheet" +msgstr "Hoja de cálculo" + +#, fuzzy +msgid "spreadsheet" +msgstr "Hoja de cálculo" + +#, fuzzy +msgid "file" +msgstr "Archivo: " + +#, fuzzy +msgid "Back" +msgstr "<< Atrás" + +#, c-format +msgid "Back to %s" +msgstr "Regresar a %s" + +#, fuzzy +msgid "User" +msgstr "Usuario" + +#, fuzzy +msgid "user" +msgstr "Usuario" + +msgid "Optimize database" +msgstr "Optimizar base de datos" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Mejora el rendimiento de tú base de datos. Los resultados variaran dependiendo con que base " +"de datos estés trabajando, pero esta rutina de mantenimiento hará que tu Gallery funcione " +"mas rápido. Especialmente practico después de agregar o borrar muchos elementos." + +#, fuzzy +msgid "Database optimized successfully" +msgstr "Foto rotada satisfactoriamente" + +msgid "Reset view counts" +msgstr "Reiniciar contadores de visitas" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Reinicia el numero de visitas a cero en todos los álbumes y elementos. Esta tarea borra " +"también la cache de la base de datos." + +#, fuzzy +msgid "View counts reset successfully" +msgstr "Miniatura a sido modificada." + +msgid "Refresh capture dates" +msgstr "Actualizar las fechas de las capturas" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Actualiza la fecha de captura almacenada en Gallery en todos los elementos que tengan la " +"tengan disponible en el fichero original (normalmente desde los datos EXIF)." + +msgid "Processing..." +msgstr "Procesando..." + +msgid "Refresh Capture Dates" +msgstr "Actualizar las Fechas de las Capturas" + +#, fuzzy, c-format +msgid "Processing item %d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy, c-format +msgid "Updated %d of %d items" +msgstr "Visualizando página %d de %d" + +#, fuzzy +msgid "System information" +msgstr "Agregar confirmación de elementos" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Obtiene los detalles del sistema; practico para hacer un copiar/pegar enel foro de soporte " +"de G2." + +#, fuzzy +msgid "core" +msgstr "configurar" + +msgid "unknown" +msgstr "desconocido" + +#, fuzzy +msgid "Gallery version" +msgstr "Gallery %s" + +#, fuzzy +msgid "PHP version" +msgstr "Versión" + +#, fuzzy +msgid "Webserver" +msgstr "Servidor" + +#, fuzzy +msgid "Toolkits" +msgstr "Herramienta" + +#, fuzzy +msgid "Acceleration" +msgstr "Acción" + +msgid "Operating system" +msgstr "Sistema Operativo" + +msgid "Default theme" +msgstr "Tema (skin) por defecto" + +msgid "gettext" +msgstr "gettext" + +#, fuzzy +msgid "enabled" +msgstr "instalado" + +#, fuzzy +msgid "disabled" +msgstr "%d elementos fallidos" + +#, fuzzy +msgid "Locale" +msgstr "Escalar" + +#, fuzzy +msgid "Browser" +msgstr "Agregar desde su navegador web" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Filas en la tabla %s = %d" + +#, fuzzy +msgid "Successfully saved theme settings" +msgstr "Satisfactoriamente se salvaron los ajustes de la disposición" + +msgid "General Settings" +msgstr "Opciones Generales" + +msgid "Settings saved successfully" +msgstr "Propiedades guardadas con éxito" + +#, fuzzy +msgid "Added local upload directory successfully" +msgstr "Se ha agregado directorio local de subida con éxito" + +#, fuzzy +msgid "Removed local upload directory successfully" +msgstr "Se ha borrado directorio local con éxito" + +#, fuzzy +msgid "Test email sent successfully" +msgstr "Miniatura a sido modificada." + +#, fuzzy +msgid "There was a problem processing your request, see below for details." +msgstr "Hubo un problema procesando tu acción." + +msgid "Error sending test email, see below for details." +msgstr "Ha habido un error enviando el correo de prueba, mirar abajo para ver los detalles." + +#, fuzzy +msgid "Language Settings" +msgstr "Preferencias del idioma" + +#, fuzzy +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Seleccione el Idioma por defecto para Gallery. Los usuarios pueden cambiar esta opció" +"n en sus preferencias personales." + +msgid "Default language" +msgstr "Lenguaje por defecto" + +msgid "Check Browser Preference" +msgstr "Chequear las Preferencias del Navegador" + +#, fuzzy, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Su servidor web no soporta localización. Por favor diga a su administrador que " +"reconfigure PHP con la opción gettext " +"activada. " + +#, fuzzy +msgid "Date Formats" +msgstr "después" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Especifica como las fechas y las horas se muestran en Gallery. Visita %sphp.net%s para ver " +"detalles de como introducir el formato de las cadenas. Nota que la representación de las " +"cadenas varía dependiendo del idioma activo." + +#, fuzzy +msgid "Style" +msgstr "Escalar" + +msgid "Format" +msgstr "Formato" + +#, fuzzy +msgid "Sample" +msgstr "Escalar" + +#, fuzzy +msgid "Date" +msgstr "después" + +#, fuzzy +msgid "Time" +msgstr "imagen" + +msgid "Date/Time" +msgstr "Fecha/Hora" + +msgid "Filesystem Permissions" +msgstr "Permisos del Sistema" + +#, fuzzy +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Aquí puede especificar los permisos por defecto que crea Gallery para los archivos y " +"carpetas. Esto no se aplica a los archivos/carpetas que Gallery ya creó" + +msgid "New directories" +msgstr "Nuevas carpetas" + +msgid "New files" +msgstr "Nuevos archivos" + +msgid "Session Settings" +msgstr "Características de la sesión" + +#, fuzzy +msgid "Session Lifetime" +msgstr "Duración de la sesión" + +msgid "Inactivity Timeout" +msgstr "Timeout por inactividad" + +msgid "Embedded Markup" +msgstr "Markup embebido" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Que tipo de formato debemos de usar en los campos de usuarios? Por cuestiones de seguridad " +"recomendamos que no utilice HTML puro. el código BB es un formato especial que es " +"seguro y deja hacer libre formato como: negritas, itálicas, listas, imágenes y " +"Urls." + +msgid "Markup" +msgstr "Markup" + +msgid "Email" +msgstr "Correo-e" + +#, fuzzy +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Por defecto Gallery usa las características PHP para mandar correos y no requiere " +"configuración. Para usar un servidor smtp que requiere autenticación llene " +"los siguientes valores." + +#, fuzzy +msgid "Server" +msgstr "Servidor" + +msgid "Username" +msgstr "Nombre de usuario" + +msgid "Password" +msgstr "Contraseña" + +#, fuzzy +msgid "SMTP From Address" +msgstr "SMTP de la direción" + +#, fuzzy +msgid "Invalid email address" +msgstr "Dirección de correo-e inv´lida" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Envía un mensaje de correo de prueba para verificar que tu configuración es correcta (tanto " +"si se usa la función de correo PHP como la configuración SMTP). A continuación introduce la " +"dirección del destinatario para el mensaje de prueba." + +#, fuzzy +msgid "Send Email" +msgstr "Correo-e" + +msgid "Email Test Error" +msgstr "La Prueba de Correo ha notificado Error" + +#, fuzzy +msgid "Cookies" +msgstr "Herramienta" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Cuando Gallery está embebido en otra aplicación (portal, CMS, foro, etc.), puedes elegir " +"entre dos opciones. En cualquier otro caso no debes preocuparte por los ajustes de la " +"cookie. Sigue leyendo para mas detalles." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Si Gallery está embebida y dejas los siguientes campos vacíos, entonces todos los enlaces " +"Descargar Elemento (las URLs de las imágenes y otros objetos) en Gallery embebida tendrán " +"una cadena de texto GALLERYSID añadida en la URL lo que supone un riesgo de " +"seguridad menor cuando los usuarios de Gallery comiencen a copiar y pegar las URLs de " +"las imágenes en foros, libros de visita, etc. La alternativa es configurar la ruta a la " +"cookie. Gallery entonces no añadirá la GALLERYSID a las URLs embebidas de Descargar " +"Elemento. Ej. cuando Gallery es alcanzable en http://www.example.com/application/" +"gallery2/ y la aplicación que la esta embebiendo en http://www.example.com/application/, " +"entonces deberás comparar la ruta /application/gallery2/ con /application/. La ruta de la " +"cookie es la parte de las rutas que es igual, en este caso es '/application/'. Por lo " +"general suele ser solo '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"El dominio de la cookie es solamente necesario para instalaciones embebidas de " +"Gallery y solo si te quieres deshacer de la cadena de texto GALLERYSID en las URLs embebidas " +"de Descargar Elemento. En la mayoría de los casos, el dominio de la cookie se puede dejar " +"en blanco. Habilítalo solo si Gallery y la aplicación que la esta embebiendo sean " +"únicamente alcanzables con diferentes subdominios. Ej. cuando Gallery esté en http://" +"photos.example.com/ y la aplicación esté en http://www.example.com/, entonces deberás " +"habilitar el dominio de la cookie example.com (la parte de la cadena de texto del servidor " +"que es común en ambos, Gallery y la aplicación que la esta embebiendo." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Una vez que cambies las configuraciones de la cookie, todos los usuarios registrados " +"de tu Gallery deberán limpiar la caché de las cookies de sus navegadores. Si no lo " +"hacen, experimentaran problemas de autenticación / cierre de sesión / perdida de sesión." + +msgid "Path" +msgstr "Path" + +msgid "Invalid cookie path" +msgstr "La ruta a la cookie no es válida" + +msgid "Domain" +msgstr "Dominio" + +msgid "Invalid cookie domain" +msgstr "El dominio de la cookie no es válido" + +msgid "Locking System" +msgstr "Sistema de Bloqueo" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery utiliza un sistema de bloqueos que previene cambios simultáneos que interfieran con " +"otros. Hay dos tipos de bloqueo, cada uno con sus ventajas e inconvenientes. El sistema de " +"bloqueo basado en Archivo es rápido y eficiente, pero no funciona en un sistema de " +"ficheros NFS y en Windows es poco fiable. El sistema de bloqueo basado en Base de " +"Datos es mas lento pero mas fiable. Si no estas seguro de lo que escoger, nosotros " +"recomendamos el sistema de bloqueo basado en archivo. Si estas teniendo muchos problemas de " +"tiempo de espera, puedes intentar cambiar a la base de datos. Se puede cambiar de un sistema " +"a otro sin problemas" + +msgid "Lock system" +msgstr "Sistema de bloqueo" + +msgid "Helper Processes" +msgstr "Procesos de Apoyo" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Algunos módulos de Gallery usan programas de tu servidor web para hacer procesado de " +"imágenes, archivado y otras operaciones. Esos programas pueden hacer un uso muy intensivo " +"de la maquina podiendo impactar en el rendimiento global de un servidor compartido. Puedes " +"hacer que esos programas se ejecuten con una prioridad mas baja de modo que sean menos " +"intrusivos. Si estás en un hosting compartido y tu anfitrión web se queja, intenta poner la " +"prioridad baja." + +#, fuzzy +msgid "Priority" +msgstr "Prioridad de la herramienta" + +msgid "Save" +msgstr "Guardar" + +#, fuzzy +msgid "Reset" +msgstr "Resetear" + +#, fuzzy +msgid "Create A New Group" +msgstr "Crear un nuevo grupo" + +msgid "Group Name" +msgstr "Nombre del grupo" + +#, fuzzy +msgid "(required)" +msgstr "(requerido)" + +msgid "You must enter a group name" +msgstr "Tiene que ingresar un nombre de grupo" + +#, c-format +msgid "Group '%s' already exists" +msgstr "El grupo '%s' ya existe" + +msgid "Create Group" +msgstr "Crear Grupo" + +msgid "Cancel" +msgstr "Cancelar" + +#, fuzzy +msgid "Create A New User" +msgstr "Crear un nuevo usuario" + +msgid "You must enter a username" +msgstr "Tiene que ingresar un nombre de usuario" + +#, c-format +msgid "Username '%s' already exists" +msgstr "El usuario '%s' ya existe" + +#, fuzzy +msgid "Full Name" +msgstr "Nombre completo" + +#, fuzzy +msgid "Email Address" +msgstr "Dirección de correo" + +msgid "You must enter an email address" +msgstr "Tiene que ingresar una dirección de correo-e" + +msgid "Language" +msgstr "Lenguaje" + +msgid "You must enter a password" +msgstr "Tiene que ingresar una contraseña" + +#, fuzzy +msgid "Verify Password" +msgstr "Verificar la contraseña" + +msgid "You must enter the password a second time" +msgstr "Tiene que ingresar la contraseña por 2da vez" + +msgid "The passwords you entered did not match" +msgstr "Las contrase˜as que ingresó no coinciden" + +msgid "Create User" +msgstr "Crear Usuario" + +#, fuzzy +msgid "Delete A Group" +msgstr "Borrar un grupo" + +msgid "Are you sure?" +msgstr "¿Está seguro?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Esto borrará completamente %s de Gallery. No hay marcha atrás !!" + +msgid "Delete" +msgstr "Borrar" + +#, fuzzy +msgid "Delete a User" +msgstr "Borrar un usuario" + +#, fuzzy, c-format +msgid "User %s is the owner of %s items." +msgstr "El usuario %s es el dueño de %s elementos." + +#, c-format +msgid "Delete user %s and..." +msgstr "Borrar el usuario %s y ..." + +#, fuzzy, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Asignar nuevo dueño a todos los elementos de %s." + +#, fuzzy, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Borrar todos los elementos de %s y asignar un nuevo dueño a todos los albumes " +"vacíos." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Nuevo dueño (dejarlo en blanco significa admin):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "El usuario '%s' no existe ! No se pueden asignar elementos a un usuario inexistente." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "El nuevo dueño debe ser un usuario diferente al que estamos borrando!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "El nuevo dueño no puede ser usuario Invitado / Anónimo" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Esto borrará completamente %s de Gallery. No hay marcha atrá" +"s !!" + +msgid "Edit a group" +msgstr "Editar un grupo" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Editar miembros del grupo '%s'" + +#, fuzzy, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Se agregó usuario '%s' al grupo '%s'" + +#, fuzzy, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Borrado usuario '%s' del grupo '%s'" +msgstr[1] "Borrado usuario '%s' del grupo '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Este grupo contiene %d usuario" +msgstr[1] "Este grupo contiene %d usuarios" + +#, fuzzy +msgid "Members" +msgstr "Miembros" + +msgid "« first" +msgstr "« primero" + +msgid "« back" +msgstr "« atrás" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Visualizando página %d de %d" + +msgid "next »" +msgstr "siguiente »" + +msgid "last »" +msgstr "último »" + +#, fuzzy +msgid "Filter" +msgstr "Filtro:" + +msgid "Clear" +msgstr "Limpiar" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d usuario coincide con su filtro" +msgstr[1] "%d usuarios coinciden con su filtro" + +#, fuzzy +msgid "Remove selected" +msgstr "Quitar seleccionado" + +msgid "You must select a user to remove." +msgstr "Tiene que seleccionar el usuario a borrar." + +#, fuzzy +msgid "You can't remove yourself from this group." +msgstr "No puede borrarse ud. mismo de este grupo." + +#, fuzzy +msgid "Add Member" +msgstr "Agregar Miembro" + +msgid "Add" +msgstr "Agregar" + +msgid "You must enter a username." +msgstr "Tiene que ingresar un nombre de usuario." + +#, c-format +msgid "User '%s' does not exist." +msgstr "El usuario '%s' no existe." + +#, fuzzy +msgid "This user already is in this group." +msgstr "Ese usuario ya existe" + +msgid "Done" +msgstr "Hecho" + +msgid "Edit a user" +msgstr "Editar un usuario" + +#, fuzzy +msgid "That username is already in use" +msgstr "Ese usuario ya existe" + +#, fuzzy +msgid "You must enter a new username" +msgstr "Tiene que ingresar un nombre de usuario" + +#, fuzzy +msgid "E-mail Address" +msgstr "Dirección de correo-e" + +msgid "(suggested)" +msgstr "(sugerido)" + +#, fuzzy +msgid "Options" +msgstr "Opciones" + +#, fuzzy +msgid "Lock user." +msgstr "Sistema de bloqueo" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Los usuarios bloqueados no pueden editar la información de su propia cuenta. (Contraseña, " +"Nombre, Dirección de correo electrónico, etc.)" + +#, fuzzy +msgid "Reset failed login count." +msgstr "Reiniciar contadores de visitas" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Manejo de grupos" + +#, c-format +msgid "Removed group '%s'" +msgstr "Borrar grupo '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Grupo '%s' creado" + +#, c-format +msgid "Modified group '%s'" +msgstr "Grupo '%s' modificado" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Hay %d grupo en el sistema." +msgstr[1] "Hay %d grupos en el sistema." + +#, fuzzy +msgid "Edit Group" +msgstr "Editar un grupo" + +msgid "Edit" +msgstr "Editar" + +msgid "Add/Remove Users" +msgstr "Agregar/Eliminar Usuarios" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "El grupo '%s' no existe." + +#, fuzzy +msgid "You cannot delete that group" +msgstr "No puede borrar el grupo administradores" + +#, fuzzy +msgid "You cannot edit that group's users" +msgstr "No puede editar ese grupo de usuarios!" + +#, fuzzy +msgid "Edit Group (by list)" +msgstr "Editar grupo (por lista)" + +msgid "Action" +msgstr "Acción" + +#, fuzzy +msgid "edit" +msgstr "Editar" + +#, fuzzy +msgid "delete" +msgstr "Borrar" + +#, fuzzy +msgid "members" +msgstr "miembros" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d grupo coincide con su filtro" +msgstr[1] "%d grupos coinciden con su grupo" + +msgid "System Maintenance" +msgstr "Mantenimiento del Sistema" + +#, fuzzy, c-format +msgid "Completed %s task successfully." +msgstr "Foto rotada satisfactoriamente" + +#, fuzzy, c-format +msgid "The %s task failed to complete successfully." +msgstr "Miniatura a sido modificada." + +#, fuzzy +msgid "Task name" +msgstr "Nombre de usuario" + +#, fuzzy +msgid "Last run" +msgstr "último »" + +msgid "Success/Fail" +msgstr "Éxito/Fracaso" + +msgid "Not run yet" +msgstr "No se ha ejecutado todavía" + +#, fuzzy +msgid "Success" +msgstr "Fuente" + +#, fuzzy +msgid "Failed" +msgstr "Archivo: " + +#, fuzzy +msgid "run now" +msgstr "desconocido" + +msgid "Last Run Details:" +msgstr "Detalles de la última ejecución" + +msgid "Performance Tuning" +msgstr "Ajuste de Rendimiento" + +#, fuzzy +msgid "Updated performance settings successfully" +msgstr "Miniatura a sido modificada." + +#, fuzzy +msgid "Deleted all saved pages" +msgstr "Borrar un usuario" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Mejora el funcionamiento de Gallery almacenando las páginas web enteras en la base de " +"datos. Esto puede reducir considerablemente los recursos requeridos por el servidor web y " +"la base de datos para mostrar una página web. En contrapartida la página web que ves podría " +"estar un poco anticuada, sin embargo puedes obtener la versión mas reciente de la página " +"forzando un refresco en tu navegador (tipicamente mantenendo pulsada la tecla shift mientras " +"haces click en el botón de recargar)." + +msgid "Partial Acceleration" +msgstr "Aceleración Parcial" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"La aceleración parcial obtiene un aumento aproximado del rendimiento de 10-25%, pero algunos " +"formularios con datos dinámicos (como los contadores de visitas) no serán actualizados al " +"momento. Todo el contenido que aparezca en bloques (como el bloque de imagen aleatoria, " +"cualquier bloque de la barra lateral, etc) siempre estará actualizado." + +msgid "Full Acceleration" +msgstr "Aceleración Completa" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"La aceleración completa obtiene un aumento aproximado del rendimiento de 90%, pero ningun " +"dato dinámico (el bloque de imagen aleatoria, otros bloques de la barra lateral, el numero " +"de elementos en tu carrito de la compra, los contadores de visitas, etc) será actualizado " +"hasta que la web almacenada expire." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Puedes especificar de forma adicional cuando expiran las páginas almacenadas. Configurando " +"un tiempo de expiración largo reducirás la carga de tu servidor, pero incrementarás el " +"intervalo entre que los usuarios ven los cambios. Un tiempo de expiración mas bajo " +"significa que los usuarios verán datos mas actuales, pero habrá mas carga en tu servidor." + +msgid "Here are some standard acceleration profiles:" +msgstr "Aquí hay algunos perfiles de aceleración estándar:" + +#, fuzzy +msgid "Medium acceleration" +msgstr "Opciones administrativas" + +msgid "High acceleration" +msgstr "Aceleración alta" + +#, fuzzy +msgid "Guest Users" +msgstr "Crear Usuario" + +msgid "Expires after:" +msgstr "Expira después de:" + +msgid "Clear Saved Pages" +msgstr "Borrar Paginas Guardadas" + +msgid "Status: Inactive" +msgstr "Estado: Inactivo" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "desactivar __PLUGIN__" + +#, fuzzy +msgid "Status: Active" +msgstr "Estado: Activo" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ activado" + +#, fuzzy +msgid "Status: Not Installed" +msgstr "Estado: Inactivo" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ desinstalado" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Estado: Actualización requerida (Inactivo)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Estado: Módulo incompatible (Inactivo)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Estado: Inactivo (Requiere Configuración)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ necesita configuración" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "desactivar __PLUGIN__" + +msgid "Warning!" +msgstr "¡Atención!" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Realmente quiere borrar el módulo '__PLUGIN__'?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Esto también borrará cualquier permiso y borrará cualquier dato " +"temporal creado por este módulo." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Este plugin será desinstalado, pero sus ficheros serán guardados de modo que puedas " +"reinstalarlo de nuevo." + +msgid "Yes" +msgstr "Sí" + +msgid "No" +msgstr "No" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Realmente quiere borrar el módulo '__PLUGIN__'?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Este plugin será desinstalado y sus archivos borrados." + +msgid "The files of this plugin will be deleted permanently." +msgstr "Los archivos de este plugin serán borrados permanentemente." + +msgid "disabled(__COUNT__)" +msgstr "deshabilitados(__COUNT__)" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "Fecha (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "desinstalar (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "(requerido) (__COUNT__)" + +#, fuzzy +msgid "incompatible(__COUNT__)" +msgstr "Módulo incompatible! (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "El borrado de __PLUGIN__ falló" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Módulos de Gallery" + +#, fuzzy +msgid "Get More Plugins" +msgstr "Módulos de Gallery" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"¿Quieres mas características? Los nuevos plugins están a un clic de distancia. Haz click " +"ahora en el enlace %s para comenzar." + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Las características de Gallery vienen en módulos separados. Usted puede bajar " +"e instalar módulos para agregar más características especiales a su " +"Gallery, o usted puede desactivar estas opciones si usted no desea usarlas. Para poder usar " +"una opción especial, usted debe instalarla, configurarla (si es necesario) y " +"activarla. Si usted no desea usar alguna opción especial, puede desactivarla con " +"gusto." + +#, fuzzy +msgid "Plugin Name" +msgstr "Nombre completo" + +#, fuzzy +msgid "Installed" +msgstr "instalado" + +msgid "Version" +msgstr "Versión" + +msgid "Actions" +msgstr "Acciones" + +msgid "help" +msgstr "ayuda" + +#, c-format +msgid "Screenshot for %s" +msgstr "Captura de pantalla para %s" + +#, fuzzy +msgid "Incompatible plugin!" +msgstr "Módulo incompatible!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Core API requerida: %s (encontradas: %s)" + +#, fuzzy, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "API del módulo requerida: %s (encontradas: %s)" + +msgid "configure" +msgstr "configurar" + +#, fuzzy +msgid "up to date" +msgstr "después" + +#, fuzzy +msgid "upgrade required" +msgstr "(requerido)" + +#, fuzzy +msgid "not installed" +msgstr "desinstalar" + +#, fuzzy +msgid "incompatible" +msgstr "Módulo incompatible!" + +msgid "Repository" +msgstr "Repositorio" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Por favor asegurate de que tu conexión a internet está configurada de forma correcta o " +"intentalo de nuevo más tarde." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Fallo al escanear el estado del plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Tu copia local del repositorio estaba rota y ha sido reparada. Por favor descarga la lista " +"de plugins de nuevo." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "El índice del repositorio ha sido actualizado con éxito." + +msgid "All plugins are already up-to-date." +msgstr "Todos los plugins estan actualizados." + +#, c-format +msgid "%s plugin updated." +msgstr "Plugin %s actualizado." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"No se envía información personal sobre ti o tu instalación de Gallery al servidor de Gallery " +"en ningún momento." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Descarga e instala nuevos plugins de forma fácil y rápida. Si decides que no quieres un " +"plugin, puedes borrarlo de tu Gallery. Hay multiples diferentes repositorios de plugins, " +"puedes elegir cual de ellos quieres usar (se pueden usar todos ellos a la vez). Una vez que " +"hayas elegido, debes descargar de forma periodica la última lista de plugins para buscar " +"posibles actualizaciones. %s En conexiones lentas este proceso puede llevar un minuto o dos." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Plugins Desarrollados de forma Oficial por el Proyecto Gallery (%srecomendado%s)" + +#, c-format +msgid "last updated on %s" +msgstr "última actualización el %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Plugins Experimentales del Proyecto Gallery (%snuevas características molonas, podrian dar " +"fallos%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Plugins de la Comunidad (%s¡úsalos por tu cuenta y riesgo!%s)" + +msgid "Repository Error" +msgstr "Error de Repositorio" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Debes elegir un usuario para eliminar" + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Configurar tu Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Antes de que puedas proceder, debes cambiar algunos permisos para que Gallery pueda instalar " +"plugins por ti. Es fácil. Solamente ejecuta lo siguiente en una consola o via cliente ftp:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Si tienes problemas cambiando los permisos, preguntale a tu administrador del sistema para " +"obtener ayuda. Cuando hayas solucionado los permisos, haz click en el botón continuar para " +"proceder." + +#, fuzzy +msgid "Continue" +msgstr "Continuar..." + +msgid "Download Plugin List" +msgstr "Descargar Lista de Plugins" + +msgid "Show Repository List" +msgstr "Mostar la Lista de Repositorios" + +#, fuzzy +msgid "Upgrade Gallery" +msgstr "Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Una nueva versión de Gallery está disponible, pero no puede ser actualizada a traves de esta " +"interfaz. La actualización podría hacer que algunos de tus plugins dejen de trabajar, pero " +"puede haber otros disponibles que dependan de esa nueva version. Aquí estan los pasos " +"recomendados para hacer la actualización:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sDescargar%s el núcleo de Gallery" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Leer las %sinstrucciones de actualización%s y realizar la misma" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Los plugins incompatibles estan marcados con un icono de exclamación." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Un nueva versión del módulo principal está disponible. Puede haber plugins que sean " +"incompatibles con el módulo principal instalado, que no muestran aquí. Puede ver una %slista " +"completa%s de plugins, incluyendo incompatibles, los cuales son marcados con un icono rojo. " + +#, fuzzy +msgid "upgrade available" +msgstr "Gallery" + +msgid "locked" +msgstr "bloqueado" + +#, fuzzy +msgid "Theme Name" +msgstr "Tema/Skin" + +msgid "Module Name" +msgstr "Nombre del Módulo" + +#, fuzzy +msgid "Latest" +msgstr "lista" + +msgid "Locked Plugin" +msgstr "Plugin Bloqueado" + +#, fuzzy +msgid "Incompatible Plugin" +msgstr "Módulo incompatible!" + +#, fuzzy +msgid "Upgrade Available" +msgstr "actualizar" + +#, fuzzy +msgid "download" +msgstr "abajo" + +msgid "modify" +msgstr "modificar" + +msgid "Upgrade All Plugins" +msgstr "Actualizar todos los Plugins" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery puede actualizar automáticamente tus temas y módulos a las últimas versiones " +"disponibles. No se descargarán nuevos plugins." + +#, fuzzy +msgid "Upgrade All" +msgstr "actualizar" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "bajar" + +msgid "No packages have been selected." +msgstr "No se han seleccionado paquetes." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Descarga un paquete para usar este plugin. Puedes actualizar escogiendo una nueva version " +"del paquete a descargar. Los paquetes de idioma son opcionales, sólo necesitas descargar " +"aquellos que quieras usar en tu sitio." + +#, fuzzy +msgid "Base Packages" +msgstr "Nombre de usuario" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: versión %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: versión %s (build %s) %s¡El degradar no está soportado!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sInstalado Actualmente%s: versión %s (build %s)" + +#, fuzzy +msgid "Language Packages" +msgstr "Preferencias del idioma" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%sseleccionar todos%s%sdeseleccionar todos%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s versión %s (actualizando desde %s)" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "Versió de PHP" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s versión %s (%suna nueva versión %s está instalada%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s versión %s (actualmente instalado)" + +msgid "No compatible language packages available" +msgstr "Paquetes de idioma compatibles no disponibles" + +msgid "You must select a base package before choosing language packs." +msgstr "Debes seleccionar un paquete de base antes de seleccionar paquetes de idioma." + +#, fuzzy +msgid "Update" +msgstr "después" + +#, fuzzy +msgid "Gallery Themes" +msgstr "Gallery %s" + +#, fuzzy, c-format +msgid "Successfully activated theme %s" +msgstr "Módulo %s activado" + +#, fuzzy, c-format +msgid "Successfully deactivated theme %s" +msgstr "Módulo %s desactivado" + +#, fuzzy, c-format +msgid "Successfully installed theme %s" +msgstr "Módulo %s instalado satisfactoriamente" + +#, fuzzy, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Satisfactoriamente se desinstaló el módulo %s" + +#, fuzzy, c-format +msgid "Successfully upgraded theme %s" +msgstr "Satisfactoriamente de actualizó el módulo %s" + +msgid "Successfully saved default album settings" +msgstr "Satisfactoriamente se salvaron los ajustes del album" + +#, fuzzy +msgid "Restored theme settings" +msgstr "Opciones de vista restauradas" + +msgid "Defaults" +msgstr "Por defecto" + +#, fuzzy +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "Estos son los valores por defecto. Pueden ser cambiados para cada album." + +#, fuzzy +msgid "Default sort order" +msgstr "Orden del album por defecto" + +#, fuzzy +msgid "with" +msgstr "Ancho" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" +"El tema %s es incompatible con tu versión de Gallery o no está disponible. Por favor " +"actualiza el tema %s o escoge otro tema por defecto." + +#, fuzzy +msgid "New albums" +msgstr "álbum" + +#, fuzzy +msgid "Save Defaults" +msgstr "Por defecto" + +#, fuzzy, c-format +msgid "%s Theme Settings" +msgstr "Opciones de vista restauradas" + +#, fuzzy +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Estos son los valores por defecto. Pueden ser cambiados para cada album." + +msgid "Available" +msgstr "Disponible" + +msgid "Choose a block" +msgstr "Escoge un bloque" + +#, fuzzy +msgid "Selected" +msgstr "Borrar" + +msgid "Remove" +msgstr "Borrar" + +#, fuzzy +msgid "Move Up" +msgstr "Mover" + +#, fuzzy +msgid "Move Down" +msgstr "Mover %s" + +msgid "Parameter" +msgstr "Parámetro" + +#, fuzzy +msgid "Value" +msgstr "Valor" + +#, fuzzy +msgid "There are no settings for this theme" +msgstr "No se encontraron ajustes para este tipo de disposición" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "Opciones de vista restauradas" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Las herramientas gráficas mostradas abajo tienen restricciones en operaciones " +"soportadas y tipos Mime Selecciona las herramientas en rangos para determinar cual va a " +"hacer las operaciones en primer lugar. " + +msgid "Toolkit" +msgstr "Herramienta" + +#, fuzzy +msgid "Order" +msgstr "Orden" + +msgid "up" +msgstr "arriba" + +msgid "down" +msgstr "abajo" + +msgid "User Management" +msgstr "Manejo de Usuarios" + +#, c-format +msgid "Removed user '%s'" +msgstr "Usuario '%s' eliminado" + +#, c-format +msgid "Created user '%s'" +msgstr "Usuario '%s' creado" + +#, c-format +msgid "Modified user '%s'" +msgstr "Usuario '%s' modificado" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Hay %d usuario en el sistema." +msgstr[1] "Hay %d usuarios en el sistema." + +#, fuzzy +msgid "Edit User" +msgstr "Editar un usuario" + +msgid "You cannot delete yourself!" +msgstr "No se puede borrar a si mismo!" + +#, fuzzy +msgid "You cannot delete the special guest user." +msgstr "No puede borrar el usuario anónimo!" + +msgid "Edit User (by list)" +msgstr "Editar usuario (por lista)" + +#, fuzzy +msgid "Locked" +msgstr "bloqueado" + +#, fuzzy +msgid "Failed Logins" +msgstr "Fracaso" + +msgid "Thumbnails" +msgstr "Miniaturas" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery puede crear las miniaturas al momento de subir las fotos, o al vuelo mientras usted " +"los ve . De cualquier manera, Gallery creará la miniatura una vez y lo " +"guardará , pero si usted los crea al momento de subir las fotos entonces el tiempo de " +"espera al verlos será mucho más rápido. " + +#, fuzzy +msgid "Create thumbnails now" +msgstr "Recrear miniaturas ahora" + +#, fuzzy +msgid "This is a test email from Gallery2" +msgstr "Esto es la parte superior de su Gallery" + +msgid "Edit Conflict!" +msgstr "Editar conflicto!" + +#, fuzzy +msgid "Security Violation" +msgstr "Violación de Seguridad!" + +msgid "Database Error" +msgstr "Error en la Base de Datos" + +msgid "Platform Error" +msgstr "Error de Plataforma" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Autorización Confirmada" + +msgid "Error" +msgstr "Error" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Sus cambios no pudieron ser completados porque alguien ha estado moviendo el mismo elemento " +"a la vez. Use el botón para atrás, después, Actualice la pá" +"gina-reload- y trate de nuevo." + +msgid "Go back and try again" +msgstr "Vuelva a atrás e intente de nuevo" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Si este problema sucede en repetidas ocasiones, puede ser por una corrupcion en tu caché. " +"Los Administradores del Sitio pueden limpiar esta caché." + +#, fuzzy +msgid "Clear the cache" +msgstr "Borrar Paginas Guardadas" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"Alternativamente, usted puede regresar a la Galería principal y resumir la " +"navegación." + +msgid "The action you attempted is not permitted." +msgstr "La acción no es permitida" + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Tu cambio no se puede completar debido a una perdida de datos de sesión. Por favor " +"reintentalo. Si sigue sin funcionar, intenta desconectarte y volver a conectarte de nuevo." + +msgid "An error has occurred while interacting with the database." +msgstr "Ha ocurrido un error interactuando con la base de datos." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"La naturaleza exacta de los errores de la base de datos no son capturados a no ser que este " +"activo el modo de depuración de Gallery en config.php. Antes de pedir ayuda para este error " +"por favor habilita la salida de depuración de memoria intermedia y reintenta la operación. " +"Revisa la última parte de la larga salida de depuración para encontrar detalles sobre el " +"error." + +#, fuzzy +msgid "An error has occurred while interacting with the platform." +msgstr "Ha ocurrido un error interactuando con la base de datos." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"La naturaleza extacta del error de la plataforma es desconocida. Una causa común son " +"permisos insuficientes en el sistema de archivos. Esto puede suceder si tú o tu servidor web " +"cambio algo en el sistema de ficheros, e.j. restaurando datos desde una copia de seguridad." + +msgid "Item not found." +msgstr "Elemento no encontrado." + +msgid "An error has occurred." +msgstr "Ha ocurrido un error." + +#, fuzzy +msgid "Back to the Gallery" +msgstr "Volver a la Galería" + +msgid "Error Detail" +msgstr "Detalle del Error" + +#, fuzzy +msgid "System Information" +msgstr "Agregar confirmación de elementos" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Usted no tiene niguna herramienta gráfica activada (ImageMagick, GD) que maneje " +"imáGenes JPEG , si usted agrega fotos, probablemente no tendrá ninguna " +"miniatura. " + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Visite Modulos para activar una herramienta gráfica." + +#, fuzzy +msgid "Add Sub-Album" +msgstr "Agregar Sub-Album" + +#, fuzzy +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Este nombre representa la localización de este elemento en su disco duro. No es " +"visible en ningún lado, excepto posiblemente en el URL. Debe ser único en este " +"album. Nota: Únicamente pueden usar caracteres alfanuméricos, guiones " +"(-) y rayas (_) en sus nombres." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Su nombre contiene caracteres inválidos. Ingrese otro." + +msgid "You must enter a name for this album." +msgstr "Tiene que ingresar un nombre para este album." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Ese nombre ya está en uso. Ingrese otro." + +msgid "This is the album title." +msgstr "Este es el título del album." + +msgid "This is the album summary." +msgstr "Este es el resumen del album." + +msgid "Keywords are not visible, but are searchable." +msgstr "Las palabras clave no son visibles, pero pueden ser buscadas" + +#, fuzzy +msgid "This is the long description of the album." +msgstr "Una descripció mas larga de este album." + +msgid "Create" +msgstr "Crear" + +msgid "Upload Complete" +msgstr "Carga completa" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Se agregó %d archivo." +msgstr[1] "Se agregaron %d archivos." + +msgid "No files added." +msgstr "No se agregaron archivos." + +#, c-format +msgid "Added %s" +msgstr "Agregado %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Fallo al agregar %s" + +#, fuzzy +msgid "Add more files" +msgstr "Agregar más archivos" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Su servidor web está configurado para desactivar carga de archivos desde su navegador " +"web en este momento. Por favor contacte a su SysAdmin para asistencia." + +#, fuzzy +msgid "Upload files directly from your computer." +msgstr "Subir un archivo desde su computadora." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Ingrese el path completo al archivo y un subtítulo opcional en los campos." + +#, fuzzy, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Nota: Puede agregar hasta %s al mismo tiempo. Si usted desea agregar más de " +"eso, usted tiene que subir las fotos por separado, o usar un formato para subirlas" + +#, fuzzy, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Nota: Puede agregar hasta %s al mismo tiempo. Si usted desea agregar más de " +"eso, usted tiene que subir las fotos por separado, o usar un formato para subirlas" + +msgid "More Upload Boxes..." +msgstr "Mas Cajas de Subida..." + +msgid "Set item titles from:" +msgstr "Establecer los títulos de los elementos de:" + +#, fuzzy +msgid "Assign caption to:" +msgstr "editar permisos" + +msgid "No Thumbnail" +msgstr "Sin Miniatura" + +#, fuzzy +msgid "Delete Items" +msgstr "Borrar elemento" + +msgid "No items were selected for deletion" +msgstr "No se seleccionaron elementos para ser borrados" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Se borró %d elemento." +msgstr[1] "se borraron %d elementos." + +msgid "This album contains no items to delete" +msgstr "Este album no contiene elementos para ser borrados." + +#, fuzzy +msgid "Choose the items you want to delete" +msgstr "Elija los elementos que desea borrar" + +#, fuzzy, c-format +msgid "(page %d of %d)" +msgstr "Visualizando página %d de %d" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Los elementos que has seleccionado aquí quedaran seleccionados mientras te mueves entre las " +"páginas." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "(datos)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(album que contiene %d elemento)" +msgstr[1] "(album que contiene %d elementos)" + +#, fuzzy +msgid "(empty album)" +msgstr "(álbum)" + +msgid "Check All" +msgstr "Seleccionar todo" + +msgid "Check None" +msgstr "De-seleccioar todo" + +msgid "Invert" +msgstr "Invertir" + +msgid "Previous Page" +msgstr "Página anterior " + +#, fuzzy +msgid "Next Page" +msgstr "Siguiente página >>" + +msgid "Deletion Complete" +msgstr "Borrado completo" + +msgid "Item successfully deleted" +msgstr "Elemento borrado con éxito" + +#, fuzzy, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "¿Realmente quiere borrar este %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Contiene %d elemento." +msgstr[1] "Contiene %d elementos." + +msgid "There is no undo!" +msgstr "No hay un des-hacer!" + +msgid "There was a problem processing your request." +msgstr "Hubo un problema procesando tu acción." + +msgid "Sort order" +msgstr "Ordenar por" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Aqui se aplican el ordenamiento del album. Esto aplica a todos los elementos actuales y " +"todos los que serán agregados." + +#, fuzzy +msgid "Apply to all subalbums" +msgstr "Aplicar a sub-items" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" +"Cada elemento requiere una miniatura. Ponga el tamaño por defecto en pixeles aqui." + +msgid "You must enter a number (greater than zero)" +msgstr "Tiene que ingresar un número (mayor que cero)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Usar este tamaño de miniatura en todos los subálbumes" + +msgid "Resized Images" +msgstr "Imagenes Escaladas" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Cada elemento en su album puede tener varios tamaños. Defina el tamaño por " +"defecto aqui." + +msgid "Active" +msgstr "Activo" + +#, fuzzy +msgid "Target Size (pixels)" +msgstr "Destino (Pixeles)" + +msgid "You must enter a valid size" +msgstr "Tiene que ingresar un tamaño válido" + +msgid "Use these target sizes in all subalbums" +msgstr "Usar esos tamaños de objetivo en todos los subálbumes" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Aplicar a los subelementos" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"La configuración de la miniatura y la imagen redimensionada son para todos los elementos " +"nuevos. Para aplicar esa caonfiguración a todos los elementos en tu album, marca la opción " +"apropiada. Incluyendo subalbums aplicará los propios ajustes de cada álbum a sus miniaturas/" +"imágenes redimensionadas, que pueden no coincidir con la configuración de arriba. " +"Construyendo las imágenes ahora la operación puede tomarse un tiempo, pero ahorra lo que " +"tarda en construir y cachear cada fichero cuando es visto por primera vez. " + +msgid "Apply album setting to thumbnails" +msgstr "Aplicar la configuración del álbum a las miniaturas" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "Aplicar a los subelementos" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Rehacer miniaturas" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Rehacer imágenes redimensionadas" + +msgid "Build resizes too" +msgstr "Construir también imágenes redimensionadas" + +#, fuzzy +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Para que Gallery pueda desplegar correctamente esta animación es necesario el ancho y " +"altura de la animación. Si tiene instalado una herramienta gráfica que pueda " +"manejar tipos de archivo animado, entonces estos valores ya han sido puestos. Si no, estos " +"valores tienen valor de 0. Si no ingresa los valores correctamente aqui, puede que la " +"animación aparezca distorsionada cuando la vea desde el navegador web. Note que " +"cambiando estos valores NO cambian la animación en si, asi que experimentar no " +"causará daño alguno." + +msgid "Width" +msgstr "Ancho" + +#, fuzzy +msgid "You must enter a value greater than or equal to 0" +msgstr "Tiene que ingresar un número (mayor o igual que cero)" + +msgid "Height" +msgstr "Altura" + +#, fuzzy +msgid "There were errors saving some items" +msgstr "No se encontraron ajustes para este tipo de disposición" + +msgid "There were errors saving all items" +msgstr "Ha habido errores guardando todos los elementos" + +#, fuzzy +msgid "Successfully saved all items" +msgstr "Se movió %d elemento" + +#, fuzzy +msgid "This album contains no items" +msgstr "Este album no contiene elementos para ser enlazados." + +#, fuzzy +msgid "Saved successfully." +msgstr "Propiedades guardadas con éxito" + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Este elemento ha sido modificado por alguien más en el mismo momento. Tus cambios se " +"perdieron." + +#, fuzzy +msgid "You do not have permissions to modify this item." +msgstr "No tiene permisos suficientes como para agregar items a este album" + +msgid "Save and Done" +msgstr "Guardar y Listo" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Guardar y Editar los %s anteriores" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Guardar y Editar los %s próximos" + +#, fuzzy +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Este nombre representa la localización de este elemento en su disco duro. No es " +"visible en ningún lado, excepto posiblemente en el URL. Debe ser único en este " +"album. Nota: Únicamente pueden usar caracteres alfanuméricos, guiones " +"(-) y rayas (_) en sus nombres." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Su nombre contiene caracteres inválidos. Ingrese otro." + +msgid "You must enter a name for this item." +msgstr "Tiene que ingresar un nombre para este elemento." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Ese nombre ya está en uso. Seleccione otro." + +#, fuzzy +msgid "The title of this item." +msgstr "El título de este elemento." + +msgid "The root album must have a title." +msgstr "El album raíz debe tener un título." + +#, fuzzy +msgid "The summary of this item." +msgstr "El resumen de este elemento." + +#, fuzzy +msgid "This is the long description of the item." +msgstr "Una descripció mas larga de este elemento." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Fecha y Hora" + +msgid "Set the date and time when this image was captured." +msgstr "Ajusta la fecha y hora a cuando la imagen fue capturada." + +msgid "Set the date and time to be displayed for this item." +msgstr "Ajusta la fecha y hora para ser mostrada por este elemento." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Ajusta la fecha y hora para ser mostrada por este %s." + +#, fuzzy +msgid "Date:" +msgstr "después" + +#, fuzzy +msgid "Time:" +msgstr "imagen" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Usar la fecha y hora de la captura original desde la información del archivo (ej. Exif tag):" + +#, fuzzy +msgid "You must enter a valid date and time" +msgstr "Tiene que ingresar un tamaño válido" + +#, fuzzy +msgid "Thumbnail" +msgstr "Miniatura" + +#, fuzzy +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Ingrese tamaño de la miniatura. El lado más grande de la miniatura no debe " +"ser más grande que este valor." + +#, fuzzy +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"No se encontraron herramientas gráficas activadas que soporten este tipo de foto, asi " +"que no podemos crear / modificar la miniatura." + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "Tiene que ingresar un nombre para este elemento." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Para que Gallery pueda desplegar correctamente esta película es necesario el ancho y " +"altura de la película. Si tiene instalado una herramienta gráfica que pueda " +"manejar tipos de archivo animado, entonces estos valores ya han sido puestos. Si no, estos " +"valores tienen valor de 0. Si no ingresa los valores correctamente aqui, puede que la " +"película aparezca distorsionada cuando la vea desde el navegador web. Note que " +"cambiando estos valores NO cambian la animación en si, asi que experimentar no " +"causará daño alguno." + +#, fuzzy +msgid "Resized Photos" +msgstr "Fotos Escaladas" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Estos tamaños son versiones alternativas del original que tu tienes para que sea " +"visto." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"No se encontraron herramientas gráficas activadas que soporten este tipo de foto, asi " +"que no podemos crear / modificar las versiones escaladas." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Usted puede seleccionar que parte de la foto será usada para la miniatura. Esto no " +"tendrá efecto alguno en la imagen escalada o en versiones originales de la imagen." + +msgid "Aspect Ratio: " +msgstr "Proporción de aspecto: " + +msgid "Crop" +msgstr "Recortar" + +#, fuzzy +msgid "Undo Changes" +msgstr "Cambiar" + +msgid "Reset to default" +msgstr "Reiniciar a valores por defecto" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"No se encontraron herramientas gráficas activadas que soporten este tipo de foto, asi " +"que no podemos crear / modificar la miniatura." + +msgid "Rotate" +msgstr "Rotar" + +#, fuzzy +msgid "You can only rotate the photo in 90 degree increments." +msgstr "únicamente puede rotar la imagen en incrementos de 90°." + +#, fuzzy +msgid "CC 90°" +msgstr "C 90°" + +#, fuzzy +msgid "180°" +msgstr "Rotar 180°" + +#, fuzzy +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"No se encontraron herramientas gráficas activadas que soporten este tipo de foto, asi " +"que no podemos rotar la imagen." + +msgid "Scale" +msgstr "Escalar" + +#, fuzzy +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Reducir o agrandar la imagen original. Cuando Gallery modifica una imagen puede mantener el " +"mismo aspecto (relación alto/ancho) que la imagen original para evitar distorsiones. " +"El valor que ingrese abajo forma un tope en pixeles. Gallery modificará la imagen " +"hasta que entre dentro de estas medidas." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"No se encontraron herramientas gráficas activadas que soporten este tipo de foto, asi " +"que no podemos escalar la imagen." + +msgid "You must enter a size" +msgstr "Tiene que ingresar un tamaño" + +msgid "Preserve Original" +msgstr "Preservar Original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery no modifica la foto original cuando esta se rota o se escala. Se duplica la foto " +"original y se trabaja con copias de la misma. Esto requiere un poco más de espacio en " +"el disco duro pero previene que sus fotos originales sean dañadas. Si desactiva esta " +"opción causará que las acciones (rotar,escalar,etc) modifiquen la foto " +"original." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Este es un enlace hacia otra foto, osea que no podrá cambiar el original" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "No hay enlaces a esta foto, osea que no se puede cambiar el original" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"No hay herramientas gráficas que soporten modificar el original así que las operaciones solo " +"se pueden aplicar a las copias" + +#, fuzzy +msgid "Preserve Original Photo" +msgstr "Preservar foto original" + +#, fuzzy +msgid "Modified Photo" +msgstr "Imagen modificada" + +#, fuzzy +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Está usando una copia de lo imagen original. La imagen original todavía " +"está disponible, pero es usada actualmente.Cualquier cambio que haga será " +"hecho únicamente en la copia." + +#, fuzzy +msgid "Restore original" +msgstr "Restaurar original" + +#, fuzzy +msgid "Choose a theme" +msgstr "Escoge un bloque" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" +"Este álbum está configurado para usar el tema %s el cual o bien es incompatible con Gallery " +"o no está disponible. Por favor actualiza el tema %s o usa otro tema para este álbum." + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Los temas controlan el 'look and feel' del álbum. Puedes escoger un tema diferente para " +"cada álbum. Si no eliges un tema, usaremos el tema %s por defecto." + +msgid "Use this theme in all subalbums" +msgstr "Usar este tema en todos los subálbumes" + +msgid "Choose Theme" +msgstr "Escoger Tema" + +#, fuzzy, c-format +msgid "Configure the %s theme" +msgstr "Unidad para el test de un módulo" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"Este album está configurado para usar la disposición %s. Estos ajustes " +"solo aplican para la disposición de este album." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Usar esta configuración en todos los subálbumes que usen el tema %s" + +#, fuzzy +msgid "Album Highlight" +msgstr "Destacar" + +#, fuzzy +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Quiere hacer este elemento la carátula del album padre?" + +#, fuzzy +msgid "Highlight for:" +msgstr "Destacar" + +#, fuzzy +msgid "Highlight" +msgstr "Destacar" + +msgid "Move an Item" +msgstr "Mover un elemento" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Se movió %d elemento" +msgstr[1] "Se movieron %d elementos" + +msgid "This album contains no items to move." +msgstr "Este album no contiene elementos para ser movidos." + +msgid "Source" +msgstr "Fuente" + +msgid "Choose the items you want to move" +msgstr "Elija los elementos que desea mover" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"El destino que elijió no acepta sub-albumes, por lo tanto todos los sub-albumes han " +"sido de-seleccionados." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"El destino que elijió acepta únicamente sub-albumes, por lo tanto todo lo que " +"no sea un album a sido de-seleccionado." + +msgid "You are not allowed to move this item away from here." +msgstr "No puede mover este de aquí." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "No puede mover este album al destino seleccionado." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "No puede mover este elemento al destino seleccionado." + +msgid "You cannot move an album into its own subtree." +msgstr "No puede mover el album dentro de si mismo." + +msgid "Destination" +msgstr "Destino" + +msgid "Choose a new album for them" +msgstr "Escoja un nuevo album para ellos" + +msgid "You don't have the permission to add items in this album" +msgstr "No tiene permisos suficientes como para agregar items a este album" + +msgid "No destination chosen" +msgstr "No se elijió destino" + +msgid "Move" +msgstr "Mover" + +msgid "Successfully moved" +msgstr "Satisfactoriamente movido" + +#, fuzzy +msgid "Choose a destination album" +msgstr "Elija el destino para los elementos seleccionados" + +msgid "Permissions" +msgstr "Permisos" + +#, fuzzy +msgid "Owner changed successfully" +msgstr "El dueñ '%s' a sido modificado." + +#, fuzzy +msgid "Group permission added successfully" +msgstr "Configuración de la cuenta guardada con éxito" + +#, fuzzy +msgid "User permission added successfully" +msgstr "Propiedades guardadas con éxito" + +#, fuzzy +msgid "Group permission removed successfully" +msgstr "Configuración de la cuenta guardada con éxito" + +#, fuzzy +msgid "User permission removed successfully" +msgstr "Miniatura a sido modificada." + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Cada elemento tiene su propio conjunto de permisos. Cambiar los permisos padre no tiene " +"efecto sobre los permisos del hijo. Esto le permite restringir el acceso al padre de este " +"elemento, pero permitir acceso total a este elemento, o viceversa. La manera más " +"eficiente de usar este sistema de permisos es crear grupos y asignarle permisos. Luego, si " +"quiere concederle permisos especiales a un usuario en particular, puede agregar (o quitar) " +"este usario del grupo respectivo." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Este item pertenece al usuario: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Este item pertenece al usuario: %s (%s)" + +msgid "New owner" +msgstr "Nuevo dueño" + +msgid "Change" +msgstr "Cambiar" + +#, fuzzy +msgid "Apply new owner to sub-items" +msgstr "Aplicar a sub-items" + +msgid "You must enter a user name" +msgstr "Tiene que ingresar un nombre de usuario" + +msgid "The user name you entered is invalid" +msgstr "El nombre de usuario que ingresó es inválido" + +msgid "Apply changes" +msgstr "Guardar cambios" + +#, fuzzy +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Este elemento contiene sub-elementos. Los cambios que haga aquí pueden realizarse " +"únicamente a este elemento, o pueden ser realizados a todos los sub-elementos. Tome " +"nota que al hacer cambios a los sub-elementos mezclará su cambio entre los permisos " +"existentes de los sub-elementos y puede tomar mucho tiempo si tiene muchos sub-elementos. Es " +"mas eficiente garantizar permisos a grupos y luego agregar y remover usuarios de los grupos " +"cuando es posible hacerlo." + +msgid "Apply to sub-items" +msgstr "Aplicar a sub-items" + +msgid "Group Permissions" +msgstr "Permisos del grupo" + +#, fuzzy +msgid "Group name" +msgstr "Nombre del Grupo:" + +msgid "Permission" +msgstr "Permiso" + +#, fuzzy +msgid "New Group Permission" +msgstr "Nuevos Permisos del grupo" + +msgid "Add Permission" +msgstr "Agregar Permiso" + +msgid "The permission you chose is invalid" +msgstr "Los permisos que seleccionó no son válidos" + +msgid "The group name you entered is invalid" +msgstr "El nombre de grupo ingresado es inválido" + +#, fuzzy +msgid "Group already has this permission (check sub-permissions)" +msgstr "" +"El grupo ya tiene este permiso (quizás ya estaba en uno de los permisos que el grupo " +"tenía)" + +msgid "User Permissions" +msgstr "Permisos de Usuario" + +msgid "User name" +msgstr "Nombre de usuario" + +#, fuzzy +msgid "New User Permission" +msgstr "Nuevos Permisos de Usuario" + +#, fuzzy +msgid "The user already has this permission (check sub-permissions)" +msgstr "" +"El usuario ya tenía este permiso (quizás ya estaba en uno de los permisos que " +"tenía anteriormente)" + +#, fuzzy +msgid "Reorder Album" +msgstr "Reordenar Album" + +#, fuzzy +msgid "Order saved successfully" +msgstr "Los cambios han sido guardados con éxito." + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Este album contiene un orden automático especificado, asi que usted no puede cambiar " +"el orden de los elementos manualmente. Debe de desactivar el ordenamiento automático " +"para continuar." + +#, fuzzy +msgid "change" +msgstr "cambiar" + +#, fuzzy +msgid "Change the order of the items in this album." +msgstr "Cambie el orden de los elementos en este album.." + +#, fuzzy +msgid "Move this item" +msgstr "Mover este elemento" + +#, fuzzy +msgid "before" +msgstr "antes" + +msgid "after" +msgstr "después" + +#, fuzzy +msgid "Reorder" +msgstr "Reordenar" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript debe ser habilitado para que esta página funcione correctamente. Sin embargo, " +"parece que JavaScript está deshabilitado o bien no está soportado por tu navegador. Por " +"favor habilita JavaScript cambiando las opciones de tu navegador e intentalo de nuevo." + +msgid "Site is temporarily down for maintenance." +msgstr "El sitio está caido de forma temporal por mantenimiento." + +#, fuzzy +msgid "Admin Login" +msgstr "Opciones administrativas" + +msgid "Enter a URL" +msgstr "Ingrese una URL" + +msgid "Enter some text describing the URL" +msgstr "Ingrese algún texto descriptivo de la URL" + +msgid "Enter an image URL" +msgstr "Ingrese la URL de la imagen" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lista" + +msgid "bullet" +msgstr "viñeta" + +msgid "url" +msgstr "url" + +#, fuzzy +msgid "image" +msgstr "imagen" + +#, fuzzy +msgid "color" +msgstr "central" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Puedes usar tambien el nombre del color, por ejemplo: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Error de configuración: No se encuentra el Tema" + +msgid "Missing Theme" +msgstr "No se encuentra el Tema" + +#, fuzzy, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Este album está configurado para usar la disposición %s. Estos ajustes " +"solo aplican para la disposición de este album." + +#, fuzzy, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Este album está configurado para usar la disposición %s. Estos ajustes " +"solo aplican para la disposición de este album." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Para arreglar este problema puedes %sinstalar o activar este tema%s o seleccionar otro tema " +"por defecto." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Para arreglar este problema puedes %sentrar como administrador del sitio%s y luego %" +"sinstalar o activar este tema%s o seleccionar otro tema por defecto." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sescoger un nuevo tema para este álbum%s o %sinstalar o " +"activar este tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sescoger un nuevo tema para este álbum%s o %sentrar como " +"administrador del sitio%s y luego %sinstalar o activar este tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Para arreglar este problema puedes %sidentificarte%s y luego %sescoger un nuevo tema para " +"este álbum%s o %sentrar como administrador del sitio%s y luego %sinstalar o activar este tema" +"%s." + +#, fuzzy +msgid "Admin Options" +msgstr "Opciones administrativas" + +#, fuzzy +msgid "User Options" +msgstr "Permisos de Usuarios" + +msgid "Password changed successfully" +msgstr "contraseña cambiada con éxito" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Debe ingresar su contraseña para porbar que realmente es usted, entonces ingrese su " +"nueva contraseña dos veces para asegurar que no hizo un error al ingresarla." + +#, fuzzy +msgid "Current Password" +msgstr "Contraseña actual" + +#, fuzzy +msgid "You must enter your current password" +msgstr "Tiene que ingresar su contraseña actual" + +#, fuzzy +msgid "Incorrect password" +msgstr "Contraseña incorrecta" + +#, fuzzy +msgid "New Password" +msgstr "Nueva Contraseña" + +#, fuzzy +msgid "You must enter a new password" +msgstr "Tiene que ingresar una contraseña nueva" + +#, fuzzy +msgid "Verify New Password" +msgstr "Verificar la contraseña" + +#, fuzzy +msgid "You must enter your new password again!" +msgstr "Tiene que ingresar una contraseña nuevamente!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Esta cuenta no está habilitada para modificar la configuracion de la cuenta. Porfavor " +"contacta con tu administrador de Gallery." + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Tu administrado ha bloqueado esta cuenta, impidiendo hacer cambios a la información de la " +"cuenta." + +msgid "Login to your account" +msgstr "Ingresar a la cuenta" + +msgid "Your password has been recovered, please login." +msgstr "Tu contraseña ha sido recuperada, por favor inicia sesión." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"La conexión a esta cuenta se encuentra deshabilitada temporalmente debido a multiples " +"intentos fallidos de autenticación. Espera a que el acceso sea reestablecido o usa la página de recuperación de contraseña para rehabilitar esta cuenta." + +msgid "Your login information is incorrect. Please try again." +msgstr "Ingreso incorrecto. Por favor intente nuevamente." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Las contraseñas perdidas u olvidadas se pueden recuperar usando la página de recuperar contraseña" + +#, c-format +msgid "Welcome, %s!" +msgstr "¡Bienvenido, %s!" + +msgid "Account settings saved successfully" +msgstr "Configuración de la cuenta guardada con éxito" + +msgid "(required, password required for change)" +msgstr "(requerido, se requiere contraseña para cambiarlo)" + +msgid "(suggested, password required for change)" +msgstr "(sugerido, se requiere contraseña para cambiarlo)" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "Tiene que ingresar una dirección de correo-e" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "Tiene que ingresar su contraseña actual" + +msgid "Recover a lost or forgotten password" +msgstr "Recuperar contraseña perdida u olvidada" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Recuperar tu contraseña requiere que tu cuenta de usuario tenga una dirección de correo " +"electrónico asignada, y que tengas acceso a dicha dirección de correo electrónico " +"catalogada. Un mensaje de confirmación te será enviado por correo electrónico conteniendo " +"una URL que debes visitar para configurar una nueva contraseña para su cuenta. Para prevenir " +"el abuso, las peticiones de recuperación de contraseña no pueden ser solicitadas más de una " +"vez en un período de 20 minutos. Una confirmación de recuperación es válida durante siete " +"días. Si no se utiliza durante ese tiempo, será purgada del sistema y tendrá que hacerse una " +"nueva petición." + +msgid "Your recovery request has been sent!" +msgstr "¡Tu petición de recuperación ha sido enviada!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Date cuenta que si tu cuenta no tiene asociada una dirección de correo electrónico, no " +"podrás recibir el correo electrónico y tendrás que ponerte en contacto con tu administrador " +"del sistema para recibir asistencia." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Los administradores pueden usar la página del %sRecuperación de Contraseña de Emergencia%s " +"para recuperar la cuenta de administación si les falla la recepción del correo electrónico " +"de recuperación debido a un problema en el servidor, o a la falta de una dirección de correo " +"electrónico funcional." + +#, fuzzy +msgid "Recover" +msgstr "Borrar" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Para continuar con la puesta a cero de contraseña, tenemos que verificarque eres quién dice " +"ser. El mejor modo de estar seguro es de pedirte que hagas un cambio diminuto en el " +"directorio de Gallery lo que demostraráque tienes los permisos correctos. Así que, vamos a " +"pedirte que crees un nuevo archivo de texto llamado %s en el directorio de gallery2. Dicho " +"archivo debe contener los siguientes carácteres generados al azar:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Para tu comodidad, hemos preparado una %sversión correcta del archivo login.txt%s para ti. " +"Descárgala y cópiala en tu directorio de instalación y tendrás todo listo." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Una vez que hayas subido el fichero, haz click en refrescar para continuar." + +msgid "Emergency Administrator Password Reset" +msgstr "Recuperación de Contraseña de Administrador de Emergencia" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Esta página puede ser usada por un administrador del sistema para reiniciar de forma segura " +"la contraseña de cualquier cuenta." + +msgid "Authorization Confirmed" +msgstr "Autorización Confirmada" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Tu autorización ha sido confirmada. Por favor introduce tu nueva contraseña a " +"continuación. Después de configurar tu nueva contraseña serás llevado a la página de inicio " +"de sesión." + +msgid "Recover Password for Username" +msgstr "Recuperar Contraseña para el Usuario" + +#, fuzzy +msgid "You must enter a username to recover the password for." +msgstr "Tiene que ingresar una contraseña nueva" + +#, fuzzy +msgid "The username you entered does not exist." +msgstr "El nombre de usuario que ingresó es inválido" + +msgid "Authorization Incorrect" +msgstr "Autorización Incorrecta" + +msgid "Recovery Instructions" +msgstr "Instrucciones de Recuperación" + +msgid "AuthFile Missing" +msgstr "Fichero de Autenticación no encontrado" + +msgid "AuthFile Unreadable" +msgstr "Fichero de Autenticación ilegible" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"Tu fichero %s no tiene permisos de lectura. Por favor da a Gallery permisos de lectura sobre " +"el fichero." + +#, fuzzy +msgid "Refresh" +msgstr "antes" + +msgid "This page will allow you to reset the password on your account." +msgstr "Esta página te permite reiniciar la contraseña de tu cuenta." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"No hay ninguna petición que coincida con el nombre de usuario y la autorización facilitada. " +"Solicita una nueva autorización desde la página de recordar contrañas." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"La petición a la que estas intentando acceder ha expirado. Solicita una nueva autorización " +"desde la página de recordar contrañas." + +msgid "Authorization missing" +msgstr "Autorización no encontrada" + +#, fuzzy +msgid "Username missing" +msgstr "Permisos de Usuario" + +msgid "Submit" +msgstr "Enviar" + +#, c-format +msgid "Hello %s," +msgstr "Hola %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Has recibido este correo porque una recuperación de contraseña para %s fue solicitada por %s " +"a las %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Tu nombre de usuario es: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Para finalizar el proceso de recuperación de contraseña por favor haz click en el siguiente " +"vinculo e introduce la información requerida:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Si no has solicitado este correo electrónico, puedes ignorarlo." + +msgid "Thank you!" +msgstr "¡Gracias!" + +#, fuzzy +msgid "guest" +msgstr "Invitado" + +#, c-format +msgid "display mode: %s" +msgstr "modo de visualización: %s" + +#, fuzzy, c-format +msgid "Date: %s" +msgstr "después" + +#, fuzzy, c-format +msgid "Owner: %s" +msgstr "Dueño" + +#, fuzzy, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "(%d elemento)" +msgstr[1] "(%d elementos)" + +#, fuzzy, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d elemento)" +msgstr[1] "(%d elementos)" + +#, c-format +msgid "Views: %d" +msgstr "Visitas: %d" + +#, fuzzy +msgid "« album actions »" +msgstr "« Ninguna »" + +#, fuzzy +msgid "« item actions »" +msgstr "« Ninguna »" + +msgid "Go" +msgstr "Ir" + +msgid "Navigation" +msgstr "Navegación" + +msgid "next" +msgstr "siguiente" + +#, fuzzy +msgid "last" +msgstr "lista" + +#, fuzzy, c-format +msgid "Page %d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy, c-format +msgid "%d of %d" +msgstr "Visualizando página %d de %d" + +#, fuzzy +msgid "first" +msgstr "lista" + +#, fuzzy +msgid "previous" +msgstr "Página anterior " + +msgid "Page:" +msgstr "Página: " + +#, fuzzy, c-format +msgid "%d. %s" +msgstr "Editar un usuario" + +#, fuzzy +msgid "Size: " +msgstr "Tamaño" + +msgid "Unknown" +msgstr "Desconocido" + +msgid "Full size: " +msgstr "Tamaño total: " + +#, fuzzy +msgid "Setting" +msgstr "Ajustes de Gallery" + +msgid "Use Global" +msgstr "Usar global" + +#, fuzzy +msgid "Language selector" +msgstr "Preferencias del idioma en la barra izquierda" + +#, fuzzy +msgid "Item actions" +msgstr "Opciones administrativas" + +msgid "Use dropdown menu" +msgstr "Usa el menú desplegable" + +#, fuzzy +msgid "Login block" +msgstr "Login" + +msgid "Links to album/photo peers" +msgstr "Enlaces a los pares de álbum/foto" diff --git a/Source/gallery2/modules/core/po/et.po b/Source/gallery2/modules/core/po/et.po new file mode 100644 index 0000000..5aac522 --- /dev/null +++ b/Source/gallery2/modules/core/po/et.po @@ -0,0 +1,3511 @@ +# $Id: et.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 15:39+0100\n" +"Last-Translator: poromaan \n" +"Language-Team: Eesti \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Gallery Email Test" +msgstr "Galerii Emaili Test" + +msgid "forever" +msgstr "igavesti" + +msgid "High Priority (Me first!)" +msgstr "Kõrge Prioriteet (Mina enne!)" + +msgid "Low Priority (I want to share!)" +msgstr "Madal Prioriteet (Ma tahan jagada!)" + +msgid "No Markup" +msgstr "No Markup" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Töötlemata HTML" + +msgid "Database" +msgstr "Andmebaas" + +msgid "File" +msgstr "Fail" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minutit" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d tund" +msgstr[1] "%d tundi" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d päev" +msgstr[1] "%d päeva" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d nädal" +msgstr[1] "%d nädalat" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Ei kiirenda" + +msgid "Partial acceleration" +msgstr "Osaline kiirendus" + +msgid "Full acceleration" +msgstr "Täiskiirendus" + +msgid "Themes" +msgstr "Teemad" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Galerii Moodulid" + +msgid "Done." +msgstr "Valmis." + +msgid "Updating Packages" +msgstr "" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Tegelen..." + +#, c-format +msgid "Downloading %s" +msgstr "Tõmba alla %s" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Tegevused" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Üldine keel" + +#, fuzzy +msgid "Update completed with errors." +msgstr "ÜLeslaadimine Valmis" + +#, fuzzy +msgid "Update complete." +msgstr "ÜLeslaadimine Valmis" + +msgid "install" +msgstr "install" + +msgid "upgrade" +msgstr "uuenda" + +msgid "activate" +msgstr "aktiveeri" + +msgid "uninstall" +msgstr "installi maha" + +msgid "deactivate" +msgstr "deaktiveeri" + +msgid "Inherit settings from parent album" +msgstr "Päri seaded üla-albumist" + +msgid "Use these settings" +msgstr "Kasuta neid seadeid" + +msgid "Installing the core module" +msgstr "Tuum-mooduli installimine" + +msgid "key" +msgstr "võti" + +msgid "All access" +msgstr "Kõik õigused" + +msgid "[core] View item" +msgstr "[tuum] Vaata pilti" + +msgid "[core] View resized version(s)" +msgstr "[tuum] Vaata muudetud suurusega versioon(i/e)" + +msgid "[core] View original version" +msgstr "[tuum] Vaata originaalverisooni" + +msgid "[core] View all versions" +msgstr "[tuum] Vaata kõiki pildisuurusi" + +msgid "[core] Add sub-album" +msgstr "[tuum] Lisa alam-album" + +msgid "[core] Add sub-item" +msgstr "[tuum] Lisa alam-pilt" + +msgid "[core] Edit item" +msgstr "[tuum] Muuda pilti" + +msgid "[core] Change item permissions" +msgstr "[tuum] Muuda pildi õigusi" + +msgid "[core] Delete item" +msgstr "[tuum] Kustuta pilt" + +msgid "Upgrading permissions" +msgstr "Õiguste uuendamine" + +msgid "Deleting old permission tables" +msgstr "Vanade õiguste-tabelite kustutamine" + +msgid "Registered Users" +msgstr "Registreeritud Kasutajad" + +msgid "All Users" +msgstr "Kõik Kasutajad" + +msgid "Detecting broken derivatives" +msgstr "Katkiste tuletiste avastamine" + +msgid "Clearing fast-download cache" +msgstr "Kiire-allatõmbamise vahemälu tühjendamine" + +msgid "Deleting old fast-download cache" +msgstr "Vana kiire-allatõmbamise vahemälu tühjendamine" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Saidi Adminnid" + +msgid "Everybody" +msgstr "Igaüks" + +msgid "Guest" +msgstr "Külaline" + +msgid "Gallery" +msgstr "Galerii" + +msgid "This is the main page of your Gallery" +msgstr "See on Galerii avaleht" + +msgid "Converting MySQL data to UTF8" +msgstr "MySQL andmete UTF8 andmeteks muutmine" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Õiguste uuendamine (%d pilti/albumit valmis, %d veel)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Katkiste tuletiste avastamine, sisse lugemine" + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Katkiste tuletiste avastamine, salvestamine" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Katkiste tuletiste avastamine, salvestamine" + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Õiguste uuendamine (%d pilti/albumit valmis, %d veel)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Vanade sessioonifailide kustutamine (iteratsioon %d)" + +msgid "add items" +msgstr "Lisa pilt" + +msgid "Album created successfully." +msgstr "Album edukalt lisatud." + +msgid "add sub-album" +msgstr "Lisa alam-album" + +msgid "add items confirmation" +msgstr "Pildi/albumi lisamiskinnitus" + +msgid "Base filename" +msgstr "Baas-failinimi" + +msgid "Caption" +msgstr "Pildi allkiri" + +msgid "Blank" +msgstr "Tühi" + +msgid "From Web Browser" +msgstr "Veebilehitsejast" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabait" +msgstr[1] "%d megabaiti" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobait" +msgstr[1] "%d kilobaiti" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Galerii-eseme Administreerimine" + +msgid "delete an item" +msgstr "Kustuta ese" + +msgid "delete confirmation" +msgstr "Kustutamise kinnitus" + +#, c-format +msgid "delete %s" +msgstr "kustuta %s" + +#, c-format +msgid "edit %s" +msgstr "muuda %s" + +msgid "Settings saved successfully." +msgstr "Seaded edukalt salvestatud." + +msgid "Apply resized image settings" +msgstr "" + +#, fuzzy +msgid "Preparing..." +msgstr "Tegelen..." + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "Ikoonide uuestiehitamine" + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Pildiga %d / %d 'st tegelemine" + +msgid "Changes saved successfully" +msgstr "Muudatused edukalt salvestatud" + +msgid "Animation Size" +msgstr "Animatsiooni suurus" + +msgid "edit captions" +msgstr "Muuda pildi allkirju" + +msgid "General" +msgstr "Üldine" + +msgid "Movie Size" +msgstr "Filmi Suurus" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Ikoon edukalt lõigatud" + +msgid "Thumbnail reset successfully" +msgstr "Ikoon edukalt uuestiseatud" + +msgid "Photo 5x3" +msgstr "Foto 5x3" + +msgid "Photo 6x4" +msgstr "Foto 6x4" + +msgid "Photo 7x5" +msgstr "Foto 7x5" + +msgid "Photo 10x8" +msgstr "Foto 10x8" + +msgid "Fullscreen 4x3" +msgstr "Täisekraan 4x3" + +msgid "Widescreen 16x9" +msgstr "Laiekraan 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Ruut 1x1" + +msgid "As Image" +msgstr "Pildina" + +msgid "Landscape" +msgstr "Maastikupilt" + +msgid "Portrait" +msgstr "Portree" + +msgid "Crop Thumbnail" +msgstr "Lõika Ikooni" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Pöörde ja mõõtkavamuudatused edukalt tühistatud" + +msgid "Rotated photo successfully" +msgstr "Foto edukalt pööratud" + +msgid "Scaled photo successfully" +msgstr "Foto mõõtkava edukalt muudetud" + +msgid "Modify Photo" +msgstr "Muuda fotot" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "Teema seaded edukalt muudetud" + +msgid "« default theme »" +msgstr "« tavateema »" + +msgid "Theme" +msgstr "Teema" + +msgid "make highlight" +msgstr "sea albumi ikooniks" + +msgid "move item" +msgstr "liiguta eset" + +#, c-format +msgid "move %s" +msgstr "liiguta %s" + +#, c-format +msgid "edit %s permissions" +msgstr "muuda %s õigusi" + +msgid "reorder items" +msgstr "muuda piltide järjestust" + +msgid "Maintenance" +msgstr "Hooldus" + +msgid "Gallery Site Administration" +msgstr "Galerii Teema Administreerimine" + +msgid "site admin" +msgstr "saidi admin" + +msgid "Gallery User Administration" +msgstr "Galerii Kasutajate Administreerimine" + +msgid "change password" +msgstr "vaheta parool" + +msgid "your account" +msgstr "sinu konto" + +msgid "Password Recovery" +msgstr "Parooli taastamine" + +msgid "Core" +msgstr "Tuum" + +msgid "Gallery 2 Core Module" +msgstr "Galerii 2 Tuum-moodul" + +msgid "Add Items" +msgstr "Lisa pilt" + +msgid "Edit Album" +msgstr "Muuda Albumi Seadeid" + +msgid "Edit Photo" +msgstr "Muuda Foto" + +msgid "Edit Movie" +msgstr "Muuda Film" + +msgid "Add Album" +msgstr "Lisa Album" + +msgid "Edit Permissions" +msgstr "Muuda Õigusi" + +msgid "View Permissions" +msgstr "Vaata Õigusi" + +msgid "Delete Album" +msgstr "Kustuta Album" + +msgid "Delete Photo" +msgstr "Kustuta Foto" + +msgid "Delete Movie" +msgstr "Kustuta Film" + +msgid "Move Album" +msgstr "Liiguta Albumit" + +msgid "Move Photo" +msgstr "Liiguta Foto" + +msgid "Move Movie" +msgstr "Liiguta Film" + +msgid "Edit Captions" +msgstr "Muuda Kirjeldusi" + +msgid "Make Highlight" +msgstr "Sea Albumi Ikooniks" + +msgid "Reorder Items" +msgstr "Muuda Piltide Järjestust" + +msgid "Site Admin" +msgstr "Saidi Admin" + +msgid "Login" +msgstr "Logi sisse" + +msgid "Your Account" +msgstr "Sinu Konto" + +msgid "Logout" +msgstr "Logi Välja" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "Kasutajad" + +msgid "Groups" +msgstr "Grupid" + +msgid "Performance" +msgstr "Sooritusskaala" + +msgid "Toolkit Priority" +msgstr "Tõõrista Prioriteet" + +msgid "Graphics Toolkits" +msgstr "Graafikatööriistad" + +msgid "Account Settings" +msgstr "Konto Seaded" + +msgid "Change Password" +msgstr "Vaheta Parool" + +#, c-format +msgid "Edit %s" +msgstr "Muuda %s" + +#, c-format +msgid "Delete %s" +msgstr "Kustuta %s" + +#, c-format +msgid "Move %s" +msgstr "Liiguta %s" + +msgid "Build all thumbnails/resizes" +msgstr "Ehita kõik ikoonid/suurusemuudatused" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Veendu, et andmefailid kõikide tuletiste (ikoonid, jne) jaoks on valmistatud ja valmista " +"katkised uuesti." + +msgid "Build All Thumbnails/Resizes" +msgstr "Valmista Kõik Ikoonid/Suurusemuudatused" + +msgid "Debug output for failed items:" +msgstr "Silumisväljund läbikukkunud esemetele:" + +#, c-format +msgid "Checked %d items" +msgstr "Kontrollitud %d eset" + +#, c-format +msgid "%d items built" +msgstr "%d eset valmistatud" + +#, c-format +msgid "%d items failed" +msgstr "%d eset ebaõnnestus" + +#, fuzzy +msgid "Convert MySQL database to UTF8" +msgstr "MySQL andmete UTF8 andmeteks muutmine" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "Andmebaas edukalt optimiseeritud" + +msgid "No conversion required" +msgstr "" + +msgid "Delete user sessions" +msgstr "Kustuta kasutajasessioonid" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "Kustuta kõik kasutajasessioonid vastavalt su praegustele sessiooniaegumisseadetele." + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Kustuta %d kasutajasessioonid" + +msgid "Delete database cache" +msgstr "Kustuta andmebaasi vahemälu" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Galerii hoiab suurema kiiruse saavutamiseks üldiselt kasutatavat andmebaasiinfot kettal. Kui " +"muudad andmebaasi otse, peaksid selle käsu käivitama, et vahemälu tühjendada ja sundida " +"Galeriid informatsioon andmebaasist uuesti lugema." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Edukalt kataloog %s kustutatud" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Ei saa kataloogi %s kustutada" + +msgid "Delete template cache" +msgstr "Kustuta šablooni vahemälu" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Galerii koostab šabloonfaile ja salvestab need suurema kiiruse saavutamiseks. Kui tulevad " +"ette probleemid, mis ütlevad Smarty error, siis võid proovida selle käsu käivitamist. " +"Samuti käivita see käsk, kui sa kustutad kohaliku /*.tpl faili nii et Smarty lülitub tagasi " +"üldisele tpl failile." + +msgid "Template cache deleted successfully" +msgstr "Šabloonivahemälu edukalt kustutatud" + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animatsioon" + +msgid "animation" +msgstr "animatsioon" + +msgid "Gallery Core" +msgstr "Galerii Tuum" + +msgid "Gallery Core Module" +msgstr "Galerii Tuum-moodul" + +msgid "Search descriptions" +msgstr "Otsi kirjeldusi" + +msgid "Search keywords" +msgstr "Otsi võtmesõnu" + +msgid "Search summaries" +msgstr "Otsi kokkuvõtteid" + +msgid "Search titles" +msgstr "Otsi pealkirju" + +msgid "Description" +msgstr "Kirjeldus" + +msgid "Keywords" +msgstr "Võtmesõnad" + +msgid "Summary" +msgstr "Kokkuvõte" + +msgid "Title" +msgstr "Pealkiri (Lisa kindlasti ka pealkiri, vastasel korral ei jää albumile nähtvat nime)" + +msgid "Owner" +msgstr "Omanik" + +msgid "Dynamic Album" +msgstr "Dünaamiline Album" + +msgid "dynamic album" +msgstr "dynaamiline Album" + +msgid "Group" +msgstr "Grupp" + +msgid "group" +msgstr "grupp" + +msgid "Other" +msgstr "Muu" + +msgid "Movie" +msgstr "Film" + +msgid "movie" +msgstr "film" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "Ei saanud hoidla vahemälu teekonda luua." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Ei saanud vahemälu alamkataloogi luua. Kontrolli kas veebiserveril on õigus sinna kirjutada." + +msgid "Official Release Repository" +msgstr "" + +#, fuzzy +msgid "Experimental Repository" +msgstr "Hoidla" + +#, fuzzy +msgid "Community Repository" +msgstr "Hoidla" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Viga indexi tõmbamisel '%s' 'ist." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Viga indexi hashi tõmbamisel '%s' 'ist." + +msgid "Index integrity check failed." +msgstr "Indexi terviklikkuse kontroll kukkus läbi." + +msgid "« default sort order »" +msgstr "« üldine sorteerimisjärjekord »" + +msgid "Manual sort order" +msgstr "Käsitsisorteerimisjärjekord" + +msgid "Origination Date" +msgstr "Tekkekuupäev" + +msgid "Creation Date" +msgstr "Loomiskuupäev" + +msgid "Last Changed Date" +msgstr "\"Viimati Muudetud\"-Kuupäev" + +msgid "Name" +msgstr "Nimi" + +msgid "View Count" +msgstr "Vaatamiste Arv" + +msgid "Random" +msgstr "Juhuslik" + +msgid "« no presort »" +msgstr "« eelnevat sorteemimist ei toimu »" + +msgid "Albums First" +msgstr "Albumid enne" + +msgid "Most Viewed First" +msgstr "Kõige Rohkem Vaadatud Enne" + +msgid "Ascending" +msgstr "Tähestikujärjekorras" + +msgid "Descending" +msgstr "Tagurpidijärjekorras" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Kinnitamine keelatud, kuni sa sead allowSessionAccess'i config.php's" + +msgid "This page is valid XHTML 1.0" +msgstr "See leht on kinnitatud XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Anneta Galerii projektile" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Eeldatult aega järgi: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Mälu kasutatud: %s, kokku: %s" + +msgid "Rows per album page" +msgstr "Ridu albumi lehel" + +msgid "Columns per album page" +msgstr "Veerge albumi lehel" + +msgid "Number of items to show per page" +msgstr "Esemete arv, mida ühel lehel näidata" + +msgid "Row height (pixels)" +msgstr "Rea kõrgus (pikslit)" + +msgid "Column width (pixels)" +msgstr "Veeru laius (pikslit)" + +msgid "Show image owners" +msgstr "Näita pildi omanikke" + +msgid "Show album owners" +msgstr "Näita albumi omanikke" + +msgid "Show micro navigation thumbnails" +msgstr "Näita väikseid navigatsiooni ikoone" + +msgid "Blocks to show in the sidebar" +msgstr "Külgribal näidatavad blokid" + +msgid "Blocks to show on album pages" +msgstr "Albumilehtedel näidatatavad blokid" + +msgid "Blocks to show on photo pages" +msgstr "Fotolehtedel näidatavad blokid" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "dynaamiline Album" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "Vaata Näidiseid" + +msgid "Album Frame" +msgstr "Albumi Raam" + +msgid "Item Frame" +msgstr "Eseme Raam" + +msgid "Photo Frame" +msgstr "Foto Raam" + +msgid "Color Pack" +msgstr "Värvipakk" + +msgid "You must enter a number greater than 0" +msgstr "Pead sisestama nullist suurema numbri" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Heli" + +msgid "audio" +msgstr "heli" + +msgid "Archive" +msgstr "Arhiiv" + +msgid "archive" +msgstr "arhiiv" + +msgid "Document" +msgstr "Dokument" + +msgid "document" +msgstr "dokument" + +msgid "Spreadsheet" +msgstr "Tabel" + +msgid "spreadsheet" +msgstr "tabel" + +#, fuzzy +msgid "file" +msgstr "Fail" + +msgid "Back" +msgstr "Tagasi" + +#, c-format +msgid "Back to %s" +msgstr "Tagasi %s juurde" + +msgid "User" +msgstr "Kasutaja" + +msgid "user" +msgstr "kasutaja" + +msgid "Optimize database" +msgstr "Optimiseeri andmebaasi" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Suurenda andmebaasi töökiirust. Tulemused vahelduvad olenevalt, millist andmebaasi sa " +"kasutad aga rutiinne hooldus teeb su Galerii kiiremaks. Eriti kasulik pärast paljude " +"esemete lisamist või kustutamist." + +msgid "Database optimized successfully" +msgstr "Andmebaas edukalt optimiseeritud" + +msgid "Reset view counts" +msgstr "Nulli vaatamisloendur" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Nulli kõikide albumite ja esemete vaatamisloendur.See käsk tühjendab ka admebaasi vahemälu." + +msgid "View counts reset successfully" +msgstr "Vaatamisloendur edukalt nullitud" + +msgid "Refresh capture dates" +msgstr "Uuenda fotokuupäevad" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Uuenda kõikide Galeriis olevate esemete fotokuupäev olemasoleva kuupäevaga originaalfailist " +"(tavaliselt EXIF andmetest)." + +msgid "Processing..." +msgstr "Tegelen..." + +msgid "Refresh Capture Dates" +msgstr "Uuenda Fotokuupäevad" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Tegelen esemega %d / %d 'st" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Uuendatud %d / %d 'st esemest" + +msgid "System information" +msgstr "Süsteemiinfo" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Võta systeemidetailid; kasulik copy/pastemiseks G2 abifoorumisse." + +msgid "core" +msgstr "tuum" + +msgid "unknown" +msgstr "tundmatu" + +msgid "Gallery version" +msgstr "Galerii versioon" + +msgid "PHP version" +msgstr "PHP versioon" + +msgid "Webserver" +msgstr "Veebiserver" + +msgid "Toolkits" +msgstr "Tööriistad" + +msgid "Acceleration" +msgstr "Kiirendus" + +msgid "Operating system" +msgstr "Operatsioonisüsteem" + +msgid "Default theme" +msgstr "Üldine teema" + +msgid "gettext" +msgstr "gettext" + +#, fuzzy +msgid "enabled" +msgstr "Installitud" + +#, fuzzy +msgid "disabled" +msgstr "%d eset ebaõnnestus" + +msgid "Locale" +msgstr "Locale" + +msgid "Browser" +msgstr "Lehitseja" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "Teema seaded edukalt muudetud" + +msgid "General Settings" +msgstr "Üldised Seaded" + +msgid "Settings saved successfully" +msgstr "Seaded edukalt salvestatud" + +msgid "Added local upload directory successfully" +msgstr "Kohalik üleslaadimiskataloog edukalt lisatud" + +msgid "Removed local upload directory successfully" +msgstr "Kohalik üleslaadimiskataloog edukalt eemaldatud" + +msgid "Test email sent successfully" +msgstr "Test email edukalt saadetud" + +msgid "There was a problem processing your request, see below for details." +msgstr "Sinu päringu käivitamisel ilmnes viga, vaata allapoole detailsema info nägemiseks." + +msgid "Error sending test email, see below for details." +msgstr "Viga test emaili saatmisel, vaata allapoole detailsema info nägemiseks." + +msgid "Language Settings" +msgstr "Keeleseaded" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Vali üldine keel Galerii jaoks. Individuaalsed kasutajad saavad seda seadet nende " +"personaalsetes seadetes muuta või läbi keelevalija bloki, kui see on võimaldatud. Galerii " +"proovib ise iga kasutaja keele-eelistust avastada, kui veebilehitseja kontroll on lubatud." + +msgid "Default language" +msgstr "Üldine keel" + +msgid "Check Browser Preference" +msgstr "Kontrolli Veebilehitseja Eelistust" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Sinu veebiserver ei toeta lokaliseerimist. Palun palu oma administraatoril PHP %s " +"sisselülitatud valikuga ümber konfigureerida." + +msgid "Date Formats" +msgstr "Kuupäevaformaadid" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Märgi, kuidas Galerii kuupäevi ja kellaaegu näitab. Vaata %sphp.net%s , et näha kuidas " +"formaatimisstringi sisestada. Pane tähele, et mõne märgi välimus muutub olenevalt aktiivsest " +"keelest." + +msgid "Style" +msgstr "Stiil" + +msgid "Format" +msgstr "Formaat" + +msgid "Sample" +msgstr "Näidis" + +msgid "Date" +msgstr "Kuupäev" + +msgid "Time" +msgstr "Kell" + +msgid "Date/Time" +msgstr "Kuupäev/Kell" + +msgid "Filesystem Permissions" +msgstr "Failisüsteemi õigused" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Märgi üldised õigused failidele ja kataloogidele, mis Galerii loob. See ei mõjuta faile/" +"katalooge, mis Galerii on juba loonud." + +msgid "New directories" +msgstr "Uued kataloogid" + +msgid "New files" +msgstr "Uued failid" + +msgid "Session Settings" +msgstr "Sessiooni Seaded" + +msgid "Session Lifetime" +msgstr "Sessiooni Eluaeg" + +msgid "Inactivity Timeout" +msgstr "Mitteaktiivsuse Taimaut" + +msgid "Embedded Markup" +msgstr "Sisestatud Markup" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Millist markupi peaksime me lubama kasutajate poolt täidetavatele väljadele? " +"Turvakaalutlustel ei soovita me, et sa lubaksid töötlemata HTML'i. BBCode on spetsiaalne " +"markupi tüüp, mis on turvaline ja lubab lihtsat teksti formateerimist, nagu paks kiri, " +"kaldkiri, listid, pildid ja veebiaadressid." + +msgid "Markup" +msgstr "Markup" + +msgid "Email" +msgstr "Email" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Tavaliselt kasutab Galerii meilide saatmiseks PHP sisseehitatud meilifunktsiooni ja ei vaja " +"konfigureerimist. Kui sooovid kasutada smtp/mail serverit, sisesta vastav info allolevatesse " +"lahtritesse. Ära unusta vajadusel autentimiskasutajanime ja parooli. Vajadusel lisa :port " +"pärast serveri nime, kui server kasutab mittestandardset porti. " + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Kasutajanimi" + +msgid "Password" +msgstr "Parool" + +msgid "SMTP From Address" +msgstr "SMTP Aadressist" + +msgid "Invalid email address" +msgstr "Mittekorrektne emailiaadress" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Saada test-email, et proovida, kas su seaded on korrektsed. Sisesta allapoole test-emaili " +"vastuvõtja aadress." + +msgid "Send Email" +msgstr "Saada Email" + +msgid "Email Test Error" +msgstr "Emaili Testi Viga" + +msgid "Cookies" +msgstr "Cookied" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Kui Galerii on osa mõnest muust programmist (portaal, CMS, foorum, etc.), siis on sul kaks " +"valikut. Kõik teised ei pea hoolima Cookiede seadetest. Rohkemate detailide saamiseks loe " +"edasi." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Kui su Galerii on kokku kirjutatud mõne teise lehe osaga ja sa jätad järgmised read tühjaks, " +"siis lisatakse kõigile DownloadItem linkide aadressidesse (Piltide ja teiste asjade lingid) " +"kokkukirjutatud Galeriis GALLERYSID string , mis on väike turvarisk kui su " +"Galerii kasutajad hakkavad pildiaadresse foorumitesse ja külalisraamatutesse jne " +"kopipastema. Alternatiiv on seadistada cookiede tee. Sel juhul ei lisa Galerii " +"GALLERYSID'd sissekirjutatud DownloadItem veebiaadressidele. Näiteks kui Galerii on " +"aadressil http://www.example.com/application/gallery2/ ja sissekirjutatud programm on " +"aadressil http://www.example.com/application/, siis pead võrdlema teed /application/" +"gallery2/ teega /application/. Cookiede tee on osa teest, mis on võrdne, näites toodud juhul " +"'/application/'. Tavaliselt on see lihtsalt '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Kui muudad cookie seadeid, peavad kõik Galerii registreeritud kasutajad oma brauseri " +"cookie vahemälu tühjendama. Kui nad seda ei tee, võivad neil tekkida login / logout / " +"lost session probleemid." + +msgid "Path" +msgstr "Tee" + +msgid "Invalid cookie path" +msgstr "Vale cookie tee" + +msgid "Domain" +msgstr "Domeen" + +msgid "Invalid cookie domain" +msgstr "Vale cookie domeen" + +msgid "Locking System" +msgstr "Lukustamise Süsteem" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" + +msgid "Lock system" +msgstr "Lukusüsteem" + +msgid "Helper Processes" +msgstr "Abistaja Protsessid" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +msgid "Priority" +msgstr "Prioriteet" + +msgid "Save" +msgstr "Salvesta" + +msgid "Reset" +msgstr "Reset" + +msgid "Create A New Group" +msgstr "Loo Uus Grupp" + +msgid "Group Name" +msgstr "Grupi Nimi" + +msgid "(required)" +msgstr "(vajalik)" + +msgid "You must enter a group name" +msgstr "Sa pead sisestama grupi nime" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Grupp '%s' on juba olemas" + +msgid "Create Group" +msgstr "Loo Grupp" + +msgid "Cancel" +msgstr "Tühista" + +msgid "Create A New User" +msgstr "Loo Uus Kasutaja" + +msgid "You must enter a username" +msgstr "Sa pead sisestama kasutajanime" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Kasutajanimi '%s' on juba olemas" + +msgid "Full Name" +msgstr "Täielik nimi (Sama nimi pannakse ka sinu peamisele albumile)" + +msgid "Email Address" +msgstr "Emailiaadress" + +msgid "You must enter an email address" +msgstr "Sa pead sisestama emailiaadressi" + +msgid "Language" +msgstr "Keel" + +msgid "You must enter a password" +msgstr "Sa pead sisestama parooli" + +msgid "Verify Password" +msgstr "Korda parooli" + +msgid "You must enter the password a second time" +msgstr "Sa pead parooli teistekordselt sisestama" + +msgid "The passwords you entered did not match" +msgstr "Sisestatud paroolid ei kattu" + +msgid "Create User" +msgstr "Loo Kasutaja" + +msgid "Delete A Group" +msgstr "Kustuta Grupp" + +msgid "Are you sure?" +msgstr "Oled sa kindel?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "See kustutab %s täielikult Galeriist. Seda ei saa hiljem olematuks muuta!" + +msgid "Delete" +msgstr "Kustuta" + +msgid "Delete a User" +msgstr "Kustuta Kasutaja" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "Kasutaja %s on %s omanik." + +#, c-format +msgid "Delete user %s and..." +msgstr "Kustuta kasutaja %s ja..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Sea %s kõikidele piltidele uus omanik" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Kustuta kõik %s pildid ja sea uus omanik kõikidele allesjäänud mittetühjadele albumitele. " +"Piltidele, mida %s 'l pole luba kustutada, seatakse samuti uus omanik." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Uus kasutaja (tühjaksjätmine tähendab mõnda Saidi Adminnidest):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "Kasutaja '%s' ei eksisteeri! Ei saa seada õigusi mitteeksisteerivale kasutajale." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Uus kasutaja peab olema teine kui kustutatav kasutaja!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Uus kasutaja ei tohi olla Külaline / Anonüümne kasutaja!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"See kustutab täielikult %s Galeriist. Seda ei saa hiljem olematuks muuta!" + +msgid "Edit a group" +msgstr "Muuda gruppi" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Muuda Grupi '%s' kasutajaid" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Kasutaja '%s' lisatud gruppi '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Kasutaja '%s' kustutatud grupist '%s'" +msgstr[1] "Kasutajad '%s' kustutatud grupist '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Selles grupis on %d kasutaja" +msgstr[1] "Selles grupis on %d kasutajat" + +msgid "Members" +msgstr "Liikmed" + +msgid "« first" +msgstr "« enne" + +msgid "« back" +msgstr "« tagasi" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Vaatad lehte %d / %d lehest" + +msgid "next »" +msgstr "järgmine »" + +msgid "last »" +msgstr "viimane »" + +msgid "Filter" +msgstr "Filter" + +msgid "Clear" +msgstr "Tühjenda" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d kasutaja vastab sinu filtrile" +msgstr[1] "%d kasutajat vastab sinu filtrile" + +msgid "Remove selected" +msgstr "Eemalda valitud" + +msgid "You must select a user to remove." +msgstr "Sa pead valima eemaldamiseks kasutaja." + +msgid "You can't remove yourself from this group." +msgstr "Sa ei saa iseennast sellest grupist eemaldada." + +msgid "Add Member" +msgstr "Lisa Liige" + +msgid "Add" +msgstr "Lisa" + +msgid "You must enter a username." +msgstr "Sa pead sisestama kasutajanime." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Kasutaja '%s' ei eksisteeri." + +msgid "This user already is in this group." +msgstr "See kasutaja on juba selle grupi liige." + +msgid "Done" +msgstr "Tehtud" + +msgid "Edit a user" +msgstr "Muuda kasutajat" + +msgid "That username is already in use" +msgstr "See kasutajanimi on juba kasutuses" + +msgid "You must enter a new username" +msgstr "Sa pead sisestama uue kasutajanime" + +msgid "E-mail Address" +msgstr "E-mailiaadress" + +msgid "(suggested)" +msgstr "(soovitatav)" + +msgid "Options" +msgstr "" + +#, fuzzy +msgid "Lock user." +msgstr "Lukusüsteem" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +#, fuzzy +msgid "Reset failed login count." +msgstr "Nulli vaatamisloendur" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Grupi käitlemine" + +#, c-format +msgid "Removed group '%s'" +msgstr "Grupp '%s' eemaldatud" + +#, c-format +msgid "Created group '%s'" +msgstr "Grupp '%s' loodud" + +#, c-format +msgid "Modified group '%s'" +msgstr "Grupp '%s' muudetud" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Süsteemis on %d grupp." +msgstr[1] "Süsteemis on kokku %d gruppi." + +msgid "Edit Group" +msgstr "Muuda Gruppi" + +msgid "Edit" +msgstr "Muuda" + +msgid "Add/Remove Users" +msgstr "Lisa/Eemalda Kasutajaid" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Gruppi '%s' ei eksisteeri." + +msgid "You cannot delete that group" +msgstr "Sa ei saa seda gruppi kustutada" + +msgid "You cannot edit that group's users" +msgstr "Sa ei saa selle grupi kasutajaid muuta" + +msgid "Edit Group (by list)" +msgstr "Muuda Grupp (nimekirja järgi)" + +msgid "Action" +msgstr "Tegevus" + +msgid "edit" +msgstr "muuda" + +msgid "delete" +msgstr "kustuta" + +msgid "members" +msgstr "liikmed" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d grupp vastab su filtrile" +msgstr[1] "%d gruppi vastab su filtrile" + +msgid "System Maintenance" +msgstr "Systeemi Hooldus" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Ülesanne %s õnnestunult lõpetatud." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Ülesanne %s ei lõpetatud õnnestunult." + +msgid "Task name" +msgstr "Ülesande nimi" + +msgid "Last run" +msgstr "Viimane kasutus" + +msgid "Success/Fail" +msgstr "Edu/Ebaedu" + +msgid "Not run yet" +msgstr "Ei ole veel kasutatud" + +msgid "Success" +msgstr "Edu" + +msgid "Failed" +msgstr "Kukkus läbi" + +msgid "run now" +msgstr "kasuta nüüd" + +msgid "Last Run Details:" +msgstr "Viimase Kasutamise Detailid:" + +msgid "Performance Tuning" +msgstr "" + +msgid "Updated performance settings successfully" +msgstr "" + +msgid "Deleted all saved pages" +msgstr "" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +msgid "Medium acceleration" +msgstr "" + +msgid "High acceleration" +msgstr "" + +msgid "Guest Users" +msgstr "" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "Staatus: MitteAktiivne" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "deaktiveeri __PLUGIN__" + +msgid "Status: Active" +msgstr "Staatus: Aktiivne" + +msgid "__PLUGIN__ activated" +msgstr "" + +msgid "Status: Not Installed" +msgstr "Staatus: Mitteinstallitud" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Staatus: Uuendus vajalik (Mitteaktiivne)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Staatus: Mitteühilduv Moodul (Mitteaktiivne)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "deaktiveeri __PLUGIN__" + +msgid "Warning!" +msgstr "" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "uusim (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "installi maha (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "(vajalik) (__COUNT__)" + +#, fuzzy +msgid "incompatible(__COUNT__)" +msgstr "Mitteühilduv moodul! (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Galerii Moodulid" + +#, fuzzy +msgid "Get More Plugins" +msgstr "Galerii Moodulid" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" + +#, fuzzy +msgid "Plugin Name" +msgstr "Täielik nimi (Peaalbumi nimi)" + +msgid "Installed" +msgstr "Installitud" + +msgid "Version" +msgstr "Versioon" + +msgid "Actions" +msgstr "Tegevused" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "" + +msgid "configure" +msgstr "konfigureeri" + +msgid "up to date" +msgstr "uusim" + +#, fuzzy +msgid "upgrade required" +msgstr "(vajalik)" + +#, fuzzy +msgid "not installed" +msgstr "installi maha" + +#, fuzzy +msgid "incompatible" +msgstr "Mitteühilduv moodul!" + +msgid "Repository" +msgstr "Hoidla" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "Kõik pluginid on uusimad." + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +#, fuzzy +msgid "Repository Error" +msgstr "Hoidla" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Sa pead valima eemaldamiseks kasutaja." + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +msgid "Continue" +msgstr "" + +#, fuzzy +msgid "Download Plugin List" +msgstr "Tõmba alla %s" + +#, fuzzy +msgid "Show Repository List" +msgstr "Hoidla" + +msgid "Upgrade Gallery" +msgstr "" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +#, fuzzy +msgid "upgrade available" +msgstr "(vajalik)" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "" + +msgid "Module Name" +msgstr "Mooduli Nimi" + +msgid "Latest" +msgstr "" + +msgid "Locked Plugin" +msgstr "" + +msgid "Incompatible Plugin" +msgstr "" + +msgid "Upgrade Available" +msgstr "" + +msgid "download" +msgstr "tõmba alla" + +msgid "modify" +msgstr "" + +#, fuzzy +msgid "Upgrade All Plugins" +msgstr "Galerii Moodulid" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +#, fuzzy +msgid "Upgrade All" +msgstr "Uuenda" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "Tõmba alla %s" + +msgid "No packages have been selected." +msgstr "" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +msgid "Base Packages" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "Keeleseaded" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "PHP versioon" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +msgid "Update" +msgstr "Uuenda" + +msgid "Gallery Themes" +msgstr "" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "" + +msgid "Successfully saved default album settings" +msgstr "" + +msgid "Restored theme settings" +msgstr "" + +msgid "Defaults" +msgstr "" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" + +msgid "Default sort order" +msgstr "" + +msgid "with" +msgstr "" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "" + +msgid "Save Defaults" +msgstr "" + +#, c-format +msgid "%s Theme Settings" +msgstr "" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" + +msgid "Available" +msgstr "" + +msgid "Choose a block" +msgstr "" + +msgid "Selected" +msgstr "" + +msgid "Remove" +msgstr "Eemalda" + +msgid "Move Up" +msgstr "" + +msgid "Move Down" +msgstr "" + +msgid "Parameter" +msgstr "" + +msgid "Value" +msgstr "" + +msgid "There are no settings for this theme" +msgstr "" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "Kasuta neid seadeid" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "" + +msgid "Order" +msgstr "" + +msgid "up" +msgstr "" + +msgid "down" +msgstr "" + +msgid "User Management" +msgstr "" + +#, c-format +msgid "Removed user '%s'" +msgstr "" + +#, c-format +msgid "Created user '%s'" +msgstr "" + +#, c-format +msgid "Modified user '%s'" +msgstr "" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "" +msgstr[1] "" + +msgid "Edit User" +msgstr "" + +msgid "You cannot delete yourself!" +msgstr "" + +msgid "You cannot delete the special guest user." +msgstr "" + +msgid "Edit User (by list)" +msgstr "" + +#, fuzzy +msgid "Locked" +msgstr "Locale" + +#, fuzzy +msgid "Failed Logins" +msgstr "Kukkus läbi" + +msgid "Thumbnails" +msgstr "Ikoonid" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Galerii võib ikoonid valmistada üleslaadimise ajal või alles siis, kui neid esimest korda " +"vaja läheb. Ükskõik kumb valida, valmistab Galerii ühe korra ikoonid ja salvestab need. Kui " +"ikoonid valmistada üleslaadimise ajal, muutub albumi esmaskordne vaatamine piltide " +"üleslaadimise kiiruse arvelt kiiremaks." + +msgid "Create thumbnails now" +msgstr "Loo ikoonid kohe" + +msgid "This is a test email from Gallery2" +msgstr "" + +msgid "Edit Conflict!" +msgstr "" + +msgid "Security Violation" +msgstr "" + +msgid "Database Error" +msgstr "" + +msgid "Platform Error" +msgstr "" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Animatsiooni suurus" + +msgid "Error" +msgstr "" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" + +msgid "Go back and try again" +msgstr "" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "Kustuta andmebaasi vahemälu" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" + +msgid "The action you attempted is not permitted." +msgstr "" + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "" + +msgid "Back to the Gallery" +msgstr "" + +msgid "Error Detail" +msgstr "" + +msgid "System Information" +msgstr "" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" + +msgid "Add Sub-Album" +msgstr "" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" + +msgid "Your name contains invalid characters. Please enter another." +msgstr "" + +msgid "You must enter a name for this album." +msgstr "" + +msgid "The name you entered is already in use. Please enter another." +msgstr "" + +msgid "This is the album title." +msgstr "" + +msgid "This is the album summary." +msgstr "" + +msgid "Keywords are not visible, but are searchable." +msgstr "" + +msgid "This is the long description of the album." +msgstr "" + +msgid "Create" +msgstr "Loo" + +msgid "Upload Complete" +msgstr "ÜLeslaadimine Valmis" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Edukalt %d pilt lisatud." +msgstr[1] "Edukalt %d pilti lisatud." + +msgid "No files added." +msgstr "Pilte ei lisatud." + +#, c-format +msgid "Added %s" +msgstr "Lisatud %s" + +#, c-format +msgid "Failed to add %s" +msgstr "%s lisamine ebaõnnestus" + +msgid "Add more files" +msgstr "Lisa veel pilte" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" + +msgid "Upload files directly from your computer." +msgstr "Lae faile üles otse oma arvutist." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" +"Sisesta allpool pildi täielik aadress \"Fail\" lahtrisse ja mittekohustuslik kirjeldus " +"\"Pildi Allkiri\" lahtrisse." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Tähelepanu: Võite üles laadida kuni %s korraga. Kui soovite üles laadida rohkem, " +"peate mitu korda laadima, kasutama teist üleslaadimise meetodit või paluma administraatoril " +"lubada suuremaid üleslaadimise mahte." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Tähelepanu: Võite üles laadida kuni %s korraga. Ükski fail ei tohi olla suurem kui %" +"s. Kui soovite üles laadida rohkem, peate mitu korda laadima, kasutama teist üleslaadimise " +"meetodit või paluma administraatoril lubada suuremaid üleslaadimise mahte." + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "Sea pildi tiitlid:" + +msgid "Assign caption to:" +msgstr "Sea kirjeldus:" + +msgid "No Thumbnail" +msgstr "Ikoon Puudub" + +msgid "Delete Items" +msgstr "" + +msgid "No items were selected for deletion" +msgstr "" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to delete" +msgstr "" + +msgid "Choose the items you want to delete" +msgstr "" + +#, c-format +msgid "(page %d of %d)" +msgstr "" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "" +msgstr[1] "" + +msgid "(empty album)" +msgstr "" + +msgid "Check All" +msgstr "" + +msgid "Check None" +msgstr "" + +msgid "Invert" +msgstr "" + +msgid "Previous Page" +msgstr "Eelmine Lehekülg" + +msgid "Next Page" +msgstr "Järgmine Lehekülg" + +msgid "Deletion Complete" +msgstr "" + +msgid "Item successfully deleted" +msgstr "" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "" + +msgid "There was a problem processing your request." +msgstr "" + +msgid "Sort order" +msgstr "" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" + +msgid "Apply to all subalbums" +msgstr "" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" + +msgid "You must enter a number (greater than zero)" +msgstr "" + +msgid "Use this thumbnail size in all subalbums" +msgstr "" + +msgid "Resized Images" +msgstr "" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" + +msgid "Active" +msgstr "Aktiivne?" + +msgid "Target Size (pixels)" +msgstr "" + +msgid "You must enter a valid size" +msgstr "" + +msgid "Use these target sizes in all subalbums" +msgstr "" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Rakenda alam-albumitele" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +msgid "... and for all subalbums" +msgstr "" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Ikoonide uuestiehitamine" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Muudetud suurusega piltide uuestiloomine" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" + +msgid "Width" +msgstr "" + +msgid "You must enter a value greater than or equal to 0" +msgstr "" + +msgid "Height" +msgstr "" + +msgid "There were errors saving some items" +msgstr "" + +msgid "There were errors saving all items" +msgstr "" + +msgid "Successfully saved all items" +msgstr "" + +msgid "This album contains no items" +msgstr "" + +msgid "Saved successfully." +msgstr "" + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" + +msgid "You do not have permissions to modify this item." +msgstr "" + +msgid "Save and Done" +msgstr "" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" + +msgid "Your name contains invalid characters. Please choose another." +msgstr "" + +msgid "You must enter a name for this item." +msgstr "" + +msgid "The name you entered is already in use. Please choose another." +msgstr "" + +msgid "The title of this item." +msgstr "" + +msgid "The root album must have a title." +msgstr "" + +msgid "The summary of this item." +msgstr "" + +msgid "This is the long description of the item." +msgstr "" + +#, c-format +msgid "%s Date and Time" +msgstr "%s Kuupäev ja Kellaaeg" + +msgid "Set the date and time when this image was captured." +msgstr "" + +msgid "Set the date and time to be displayed for this item." +msgstr "" + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "" + +msgid "Date:" +msgstr "KP:" + +msgid "Time:" +msgstr "Kell:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" + +msgid "You must enter a valid date and time" +msgstr "" + +msgid "Thumbnail" +msgstr "" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" + +msgid "Unable to create a thumbnail for this item" +msgstr "" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" + +msgid "Resized Photos" +msgstr "" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" + +msgid "Aspect Ratio: " +msgstr "" + +msgid "Crop" +msgstr "" + +msgid "Undo Changes" +msgstr "" + +msgid "Reset to default" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" + +msgid "Rotate" +msgstr "" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "" + +msgid "CC 90°" +msgstr "" + +msgid "180°" +msgstr "" + +msgid "C 90°" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" + +msgid "Scale" +msgstr "" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" + +msgid "You must enter a size" +msgstr "" + +msgid "Preserve Original" +msgstr "" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "" + +msgid "Modified Photo" +msgstr "" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" + +msgid "Restore original" +msgstr "" + +msgid "Choose a theme" +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "" + +msgid "Choose Theme" +msgstr "" + +#, c-format +msgid "Configure the %s theme" +msgstr "" + +msgid "These settings only apply to the theme for this album." +msgstr "" + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" + +msgid "Album Highlight" +msgstr "Albumi Ikoon" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Võite seada selle pildi selle albumi või ülemise albumi ikooniks." + +msgid "Highlight for:" +msgstr "Sea ikooniks:" + +msgid "Highlight" +msgstr "Sea ikooniks" + +msgid "Move an Item" +msgstr "" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to move." +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Choose the items you want to move" +msgstr "" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" + +msgid "You are not allowed to move this item away from here." +msgstr "" + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "" + +msgid "You cannot move an album into its own subtree." +msgstr "" + +msgid "Destination" +msgstr "" + +msgid "Choose a new album for them" +msgstr "" + +msgid "You don't have the permission to add items in this album" +msgstr "" + +msgid "No destination chosen" +msgstr "" + +msgid "Move" +msgstr "" + +msgid "Successfully moved" +msgstr "" + +msgid "Choose a destination album" +msgstr "" + +msgid "Permissions" +msgstr "Õigused" + +msgid "Owner changed successfully" +msgstr "Omanik edukalt muudetud" + +msgid "Group permission added successfully" +msgstr "Grupi õigus edukalt lisatud" + +msgid "User permission added successfully" +msgstr "Kasutaja õigus edukalt lisatud" + +msgid "Group permission removed successfully" +msgstr "Grupi õigus edukalt eemaldatud" + +msgid "User permission removed successfully" +msgstr "Kasutaja õigus edukalt eemaldatud" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Igal albumil on oma iseseisvad õigused. Õigusi saad määrata ülemisele piltidele/albumitele " +"nii, et alumisele pildile/albumile see ei mõju. See võimaldab sul piirata õigusi ülevalpool " +"olevale albumile/piltidele, kuid siiski lubada ligipääs allpool olevatele albumitele/" +"piltidele või vastupidi." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "See album kuulub kasutajale: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "See album kuulub kasutajale: %s (%s)" + +msgid "New owner" +msgstr "Uus omaik" + +msgid "Change" +msgstr "Vaheta" + +msgid "Apply new owner to sub-items" +msgstr "Rakenda uus omanik ka alam-albumitele" + +msgid "You must enter a user name" +msgstr "Pead sisestama kasutajanime" + +msgid "The user name you entered is invalid" +msgstr "Sisestatud kasutajanimi on ebakorrektne" + +msgid "Apply changes" +msgstr "Rakenda alam-albumitele?" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Sellel albumil on alam-pilte/albumeid. Siin tehtud muudatused võivad mõjuda vaid sellele " +"albumile või kõigile alllpool olevatele albumitele. Alam-albumitele õiguste rakendamine " +"liidab siin seatud õigused alam-albumite praeguste õigustega ja võib olla ajamahukas, kui " +"Teil on palju alam-pilte/albumeid. Tavaseadete kohaselt rakendatakse õigused ka alam-" +"albumitele." + +msgid "Apply to sub-items" +msgstr "Rakenda alam-albumitele" + +msgid "Group Permissions" +msgstr "Gruppide Õigused" + +msgid "Group name" +msgstr "Grupi nimi" + +msgid "Permission" +msgstr "Õigus" + +msgid "New Group Permission" +msgstr "Uus Grupi-Õigus" + +msgid "Add Permission" +msgstr "Lisa Õigus" + +msgid "The permission you chose is invalid" +msgstr "Valitud õigus on ebakorrektne" + +msgid "The group name you entered is invalid" +msgstr "Valitud grupi nimi on ebakorrektne" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Sellel grupil on juba see õigus olemas (kontrolli alam-õigusi)" + +msgid "User Permissions" +msgstr "Kasutajate Õigused" + +msgid "User name" +msgstr "Kasutajanimi" + +msgid "New User Permission" +msgstr "Uus Kasutaja-Õigus" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Sellel kasutajal on juba see õigus olemas (kontrolli alam-õigusi)" + +msgid "Reorder Album" +msgstr "Muuda Albumi Järjestust" + +msgid "Order saved successfully" +msgstr "" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" + +msgid "change" +msgstr "" + +msgid "Change the order of the items in this album." +msgstr "" + +msgid "Move this item" +msgstr "" + +msgid "before" +msgstr "" + +msgid "after" +msgstr "" + +msgid "Reorder" +msgstr "Muuda Järjestust" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +msgid "Admin Login" +msgstr "" + +msgid "Enter a URL" +msgstr "" + +msgid "Enter some text describing the URL" +msgstr "" + +msgid "Enter an image URL" +msgstr "" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "" + +msgid "image" +msgstr "" + +#, fuzzy +msgid "color" +msgstr "tuum" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "" + +msgid "Missing Theme" +msgstr "" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +msgid "Admin Options" +msgstr "" + +msgid "User Options" +msgstr "" + +msgid "Password changed successfully" +msgstr "" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" + +msgid "Current Password" +msgstr "" + +msgid "You must enter your current password" +msgstr "" + +msgid "Incorrect password" +msgstr "" + +msgid "New Password" +msgstr "" + +msgid "You must enter a new password" +msgstr "" + +msgid "Verify New Password" +msgstr "" + +msgid "You must enter your new password again!" +msgstr "" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "" + +msgid "Your password has been recovered, please login." +msgstr "" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "" + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +msgid "(required to change the e-mail address)" +msgstr "" + +msgid "You must enter your current password to change the e-mail address" +msgstr "" + +msgid "Recover a lost or forgotten password" +msgstr "" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" + +msgid "Your recovery request has been sent!" +msgstr "" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +msgid "Recover" +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" + +msgid "Recover Password for Username" +msgstr "" + +msgid "You must enter a username to recover the password for." +msgstr "" + +msgid "The username you entered does not exist." +msgstr "" + +msgid "Authorization Incorrect" +msgstr "" + +msgid "Recovery Instructions" +msgstr "" + +msgid "AuthFile Missing" +msgstr "" + +msgid "AuthFile Unreadable" +msgstr "" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" + +msgid "Refresh" +msgstr "" + +msgid "This page will allow you to reset the password on your account." +msgstr "" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "" + +msgid "Username missing" +msgstr "" + +msgid "Submit" +msgstr "" + +#, c-format +msgid "Hello %s," +msgstr "" + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" + +#, c-format +msgid "Your username is: %s" +msgstr "" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" + +msgid "Thank you!" +msgstr "" + +msgid "guest" +msgstr "külaline" + +#, c-format +msgid "display mode: %s" +msgstr "Vaade: %s" + +#, c-format +msgid "Date: %s" +msgstr "KP: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Omanik: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Maht: %d ese" +msgstr[1] "Maht: %d eset" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d pilt/album kokku)" +msgstr[1] "(%d pilti/albumit kokku)" + +#, c-format +msgid "Views: %d" +msgstr "Vaadatud: %d" + +msgid "« album actions »" +msgstr "« albumi tegevused »" + +msgid "« item actions »" +msgstr "« pildi tegevused »" + +msgid "Go" +msgstr "Läks" + +msgid "Navigation" +msgstr "Navigatsioon" + +msgid "next" +msgstr "järgmine" + +msgid "last" +msgstr "viimane" + +#, c-format +msgid "Page %d of %d" +msgstr "" + +#, c-format +msgid "%d of %d" +msgstr "" + +msgid "first" +msgstr "esimene" + +msgid "previous" +msgstr "eelmine" + +msgid "Page:" +msgstr "Lehekülg:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Suurus:" + +msgid "Unknown" +msgstr "Tundmatu" + +msgid "Full size: " +msgstr "Täis-suurus:" + +msgid "Setting" +msgstr "" + +msgid "Use Global" +msgstr "Kasuta Üldist?" + +msgid "Language selector" +msgstr "" + +msgid "Item actions" +msgstr "" + +msgid "Use dropdown menu" +msgstr "" + +msgid "Login block" +msgstr "" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/eu.po b/Source/gallery2/modules/core/po/eu.po new file mode 100644 index 0000000..fec310b --- /dev/null +++ b/Source/gallery2/modules/core/po/eu.po @@ -0,0 +1,3692 @@ +# $Id: eu.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Piarres Beobide , 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 14:45+0100\n" +"Last-Translator: Piarres Beobide \n" +"Language-Team: librezale.org \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 0.6.3.20060126\n" + +msgid "Gallery Email Test" +msgstr "Gallery ePosta Proba" + +msgid "forever" +msgstr "betiko" + +msgid "High Priority (Me first!)" +msgstr "Lehentasun Altua (Ni lehenengo!)" + +msgid "Low Priority (I want to share!)" +msgstr "Lehentasun baxua (partekatu nahi dut!)" + +msgid "No Markup" +msgstr "Ez Markaketa" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Formaturik gabeko HTML" + +msgid "Database" +msgstr "Datu-basea" + +msgid "File" +msgstr "Fitxategia" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "minutu %d" +msgstr[1] "%d minutu" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "ordu %d" +msgstr[1] "%d ordu" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "egun %d" +msgstr[1] "%d egun" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "aste %d" +msgstr[1] "%d aste" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Azeleraziorik ez" + +msgid "Partial acceleration" +msgstr "Azelerazio ertaina" + +msgid "Full acceleration" +msgstr "Azelerazio osoa" + +msgid "Themes" +msgstr "Gaiak" + +#, fuzzy +msgid "Updating Repository Index" +msgstr "Indizea eguneratu" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Plugin Guztiak Eguneratu" + +msgid "Done." +msgstr "Eginda." + +msgid "Updating Packages" +msgstr "" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "Prozesatzen..." + +#, c-format +msgid "Downloading %s" +msgstr "%s deskargatzen" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Ekintzak" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Lehenetsiriko hizkuntza" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Igoera burutua" + +#, fuzzy +msgid "Update complete." +msgstr "Igoera burutua" + +msgid "install" +msgstr "instalatu" + +msgid "upgrade" +msgstr "bertsio-berritu" + +msgid "activate" +msgstr "gaitu" + +msgid "uninstall" +msgstr "desinstalatu" + +msgid "deactivate" +msgstr "ezgaitu" + +msgid "Inherit settings from parent album" +msgstr "Erabili direktorio gurasoaren ezarpenak" + +msgid "Use these settings" +msgstr "Ezarpen hauek erabili" + +msgid "Installing the core module" +msgstr "Muin modulua instalatzen" + +msgid "key" +msgstr "gakoa" + +msgid "All access" +msgstr "Sarrera denak" + +msgid "[core] View item" +msgstr "[muina] Ikusi elementua" + +msgid "[core] View resized version(s)" +msgstr "[muina] Ikusi tamainaz aldaturiko bertsioa(k)" + +msgid "[core] View original version" +msgstr "[muina] Ikusi jatorrizko bertsioa" + +msgid "[core] View all versions" +msgstr "[muina]Ikusi bertsio guztiak" + +msgid "[core] Add sub-album" +msgstr "[muina] Azpi-albuma gehitu" + +msgid "[core] Add sub-item" +msgstr "[muina] Azpi-elementua gehitu" + +msgid "[core] Edit item" +msgstr "[muina] Elementua editatu" + +msgid "[core] Change item permissions" +msgstr "[muina] Elementu baimenak aldatu" + +msgid "[core] Delete item" +msgstr "[muina] Elementua ezabatu" + +msgid "Upgrading permissions" +msgstr "Baimenak eguneratzen" + +msgid "Deleting old permission tables" +msgstr "Baimen taula zaharrak ezabatzen" + +msgid "Registered Users" +msgstr "Erregistratutako Erabiltzaileak" + +msgid "All Users" +msgstr "Erabiltzaile guztiak" + +msgid "Detecting broken derivatives" +msgstr "Hautsitako eratorriak atzematen" + +msgid "Clearing fast-download cache" +msgstr "Deskarga-azkar katxea garbitzen" + +msgid "Deleting old fast-download cache" +msgstr "Deskarga-azkar katxea garbitzen" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Gune Kudeatzaileak" + +msgid "Everybody" +msgstr "Denak" + +msgid "Guest" +msgstr "Gonbidatua" + +msgid "Gallery" +msgstr "Galeria" + +msgid "This is the main page of your Gallery" +msgstr "Hau zure galeriaren orrialde nagusia da" + +msgid "Converting MySQL data to UTF8" +msgstr "MySQL datuak UTF-8 bihurtzen" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Baimenak eguneratzen (%d elementu buruturik, %d falta dira)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Hautsitako eratorriak atzematen, kargatzen " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Hautsitako eratorriak atzematen, gordetzen " + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Hautsitako eratorriak atzematen, gordetzen " + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Baimenak eguneratzen (%d elementu buruturik, %d falta dira)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Saio fitxategi zaharrak ezabatzen (%d iterazioa)" + +msgid "add items" +msgstr "elementuak gehitu" + +msgid "Album created successfully." +msgstr "Albuma egoki sortu da." + +msgid "add sub-album" +msgstr "azpi-albuma gehitu" + +msgid "add items confirmation" +msgstr "elementu berrespena gehitu" + +msgid "Base filename" +msgstr "Oinarri fitxategi-izena" + +msgid "Caption" +msgstr "Epigrafea" + +msgid "Blank" +msgstr "Hutsa" + +msgid "From Web Browser" +msgstr "Web Nabigatzailetik" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "megabyte %d" +msgstr[1] "%d megabyte" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "kilobyte %d" +msgstr[1] "%d kilobyte" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Galeria elementu kudeaketa" + +msgid "delete an item" +msgstr "elementua ezabatu" + +msgid "delete confirmation" +msgstr "ezabatze berrespena" + +#, c-format +msgid "delete %s" +msgstr "%s ezabatu" + +#, c-format +msgid "edit %s" +msgstr "%s editatu" + +msgid "Settings saved successfully." +msgstr "Ezarpenak behar bezala gorde dira." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Gai ezarpenak berreskuraturik" + +#, fuzzy +msgid "Preparing..." +msgstr "Prozesatzen..." + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "Argazkitxoak birsortzen..." + +msgid "Album" +msgstr "Albuma" + +#, c-format +msgid "Processing image %d of %d" +msgstr "%d irudia prozesatzen %d iruditik" + +msgid "Changes saved successfully" +msgstr "Aldaketak behar bezala gorde dira" + +msgid "Animation Size" +msgstr "Animazio Tamaina" + +msgid "edit captions" +msgstr "epigrafeak editatu" + +msgid "General" +msgstr "Orokorra" + +msgid "Movie Size" +msgstr "Pelikula Tamaina" + +msgid "Photo" +msgstr "Argazkia" + +msgid "Thumbnail cropped successfully" +msgstr "Argazkia behar bezala zatiturik" + +msgid "Thumbnail reset successfully" +msgstr "Argazkitxoa behar bezala berezarri da" + +msgid "Photo 5x3" +msgstr "5x3 Argazki" + +msgid "Photo 6x4" +msgstr "6x4 Argazki" + +msgid "Photo 7x5" +msgstr "7x5 Argazki" + +msgid "Photo 10x8" +msgstr "10x8 Argazki" + +msgid "Fullscreen 4x3" +msgstr "4x3 Pantaila osoa" + +msgid "Widescreen 16x9" +msgstr "16x9 Zabalera" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "1x1 Karratua" + +msgid "As Image" +msgstr "Irudia bezala" + +msgid "Landscape" +msgstr "Horizontala" + +msgid "Portrait" +msgstr "Bertikala" + +msgid "Crop Thumbnail" +msgstr "Argazkitxoa Ebaki" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Irudi biratze eta eskalatze lehengora behar bezala itzuli da" + +msgid "Rotated photo successfully" +msgstr "Argazkita behar bezala biratu da" + +msgid "Scaled photo successfully" +msgstr "Argazkia behar bezala eskalatu da" + +msgid "Modify Photo" +msgstr "Argazkia Eraldatu" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "%s gaia behar bezala gaitu da" + +msgid "« default theme »" +msgstr "« lehenetsitako gaia »" + +msgid "Theme" +msgstr "Gaia" + +msgid "make highlight" +msgstr "nabarmendu" + +msgid "move item" +msgstr "elementua mugitu" + +#, c-format +msgid "move %s" +msgstr "%s mugitu" + +#, c-format +msgid "edit %s permissions" +msgstr "%s baimenak editatu" + +msgid "reorder items" +msgstr "elementuak berordenatu" + +msgid "Maintenance" +msgstr "Mantenua" + +msgid "Gallery Site Administration" +msgstr "Gallery Gune Kudeaketa" + +msgid "site admin" +msgstr "gune kudeaketa" + +msgid "Gallery User Administration" +msgstr "Gallery Erabiltzaile Kudeaketa" + +msgid "change password" +msgstr "pasahitza aldatu" + +msgid "your account" +msgstr "zure kontua" + +msgid "Password Recovery" +msgstr "Pasahitz Berreskuratzea" + +msgid "Core" +msgstr "Muina" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Muin Modulua" + +msgid "Add Items" +msgstr "Elementuak Gehitu" + +msgid "Edit Album" +msgstr "Albuma Editatu" + +msgid "Edit Photo" +msgstr "Argazkia Editatu" + +msgid "Edit Movie" +msgstr "Pelikula Editatu" + +msgid "Add Album" +msgstr "Albuma Gehitu" + +msgid "Edit Permissions" +msgstr "Baimenak Editatu" + +msgid "View Permissions" +msgstr "Baimenak Ikusi" + +msgid "Delete Album" +msgstr "Albuma Ezabatu" + +msgid "Delete Photo" +msgstr "Argazkia Ezabatu" + +msgid "Delete Movie" +msgstr "Pelikula Ezabatu" + +msgid "Move Album" +msgstr "Albuma lekuz aldatu" + +msgid "Move Photo" +msgstr "Argazkia lekuz aldatu" + +msgid "Move Movie" +msgstr "Pelikula Lekuz aldatu" + +msgid "Edit Captions" +msgstr "Epigrafeak Editatu" + +msgid "Make Highlight" +msgstr "Nabarmendu" + +msgid "Reorder Items" +msgstr "Elementuak berriz ordenatu" + +msgid "Site Admin" +msgstr "Gune Kudeaketa" + +msgid "Login" +msgstr "Saioa hasi" + +msgid "Your Account" +msgstr "Zure Kontua" + +msgid "Logout" +msgstr "Saioa amaitu" + +msgid "Plugins" +msgstr "Plugin-ak" + +msgid "Users" +msgstr "Erabiltzaileak" + +msgid "Groups" +msgstr "Taldeak" + +msgid "Performance" +msgstr "Performantzia" + +msgid "Toolkit Priority" +msgstr "Tresna-joko lehentasuna" + +msgid "Graphics Toolkits" +msgstr "Tresna-joko Grafikoak" + +msgid "Account Settings" +msgstr "Kontu ezarpenak" + +msgid "Change Password" +msgstr "Aldatu pasahitza" + +#, c-format +msgid "Edit %s" +msgstr "%s editatu" + +#, c-format +msgid "Delete %s" +msgstr "%s ezabatu" + +#, c-format +msgid "Move %s" +msgstr "%s lekuz aldatu" + +msgid "Build all thumbnails/resizes" +msgstr "Argazkitxo/tamaina ezberdin guztiak sortu" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Ziurtatu eratorri guztien datu fitxategiak /argazkitxo, etab.) sortuak izan direla eta " +"hondaturikoak birsortu." + +msgid "Build All Thumbnails/Resizes" +msgstr "Argazkitxo/Tamaina aldaketa guztiak sortu" + +msgid "Debug output for failed items:" +msgstr "Huts egin duten elementuen arazpen irteera:" + +#, c-format +msgid "Checked %d items" +msgstr "%d elementu egiazturik" + +#, c-format +msgid "%d items built" +msgstr "%d elementu eginak" + +#, c-format +msgid "%d items failed" +msgstr "%d elementuk huts egin dute" + +#, fuzzy +msgid "Convert MySQL database to UTF8" +msgstr "MySQL datuak UTF-8 bihurtzen" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "Elementua behar bezala ezabatu da" + +msgid "No conversion required" +msgstr "" + +msgid "Delete user sessions" +msgstr "Erabiltzaile saioak ezabatu" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "Zure saio iraungitze ezarpenen arabera erabiltzaile saioa iraunkor guztiak ezabatu." + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Erabiltzaile saioak ezabatu" + +msgid "Delete database cache" +msgstr "Datu-base katxea ezabatu" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery-k performatzia hobetzeko gehien erabilitako datu-base informazioa diskan gordetzen " +"du. Zuk datu-basea zuzenean eraldatu ezkero ataza hau abiarazi behar duzu katxea garbitu eta " +"Gallery informazioa datu-basetik irakurtzea behartzeko." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Direktorioa behar bezala ezabtu da: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Ezin da direktorioa ezabatu: %s" + +msgid "Delete template cache" +msgstr "Ezabatu txantiloi katxea" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Galleryk txantiloi fitxategiak konpilatu eta gorde egiten ditu performantzia hobetzeko. Zuk " +"Abiadura erroreak ematen duten arazoak izan ezkero ataza hau abiarazi beharko zenuke. " +"Hau abiarazi ere zuk local/*..tpl fitxategia ezabatu baduzu, honek lehenetsiriko tpl " +"fitxategia berrezarriko bait du." + +msgid "Template cache deleted successfully" +msgstr "Txantiloi katxea behar bezala ezabatu da" + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animazioa" + +msgid "animation" +msgstr "animazioa" + +msgid "Gallery Core" +msgstr "Gallery Muina" + +msgid "Gallery Core Module" +msgstr "Gallery Muin Modulua" + +msgid "Search descriptions" +msgstr "Bilatu deskribapenetan" + +msgid "Search keywords" +msgstr "Bilatu hitz-gakoaetan" + +msgid "Search summaries" +msgstr "Bilatu laburpenetan" + +msgid "Search titles" +msgstr "Bilatu tituluetan" + +msgid "Description" +msgstr "Deskribapenak" + +msgid "Keywords" +msgstr "Hitz-gakoak" + +msgid "Summary" +msgstr "Laburpena" + +msgid "Title" +msgstr "Titulua" + +msgid "Owner" +msgstr "Jabea" + +#, fuzzy +msgid "Dynamic Album" +msgstr "Albuma Editatu" + +#, fuzzy +msgid "dynamic album" +msgstr "Albuma Editatu" + +msgid "Group" +msgstr "Taldea" + +msgid "group" +msgstr "taldea" + +msgid "Other" +msgstr "Bestelakoak" + +msgid "Movie" +msgstr "Pelikula" + +msgid "movie" +msgstr "pelikula" + +msgid "photo" +msgstr "argazkia" + +msgid "Couldn't create repository cache path." +msgstr "Ezin da errepositorio katxe bidea sortu." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Ezinda katxe azpidirektorioa sortu. Ziurtatu zaitez web zerbitzariak bertan idazteko baimena " +"duela." + +msgid "Official Release Repository" +msgstr "" + +#, fuzzy +msgid "Experimental Repository" +msgstr "Errepositorioa" + +#, fuzzy +msgid "Community Repository" +msgstr "Errepositorioa" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Errorea indizea '%s'-tik deskargatzerakoan." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Erroea '%s'-tik indize egiaztapen deskargatzerakoan." + +msgid "Index integrity check failed." +msgstr "Indize osotasun egiaztapenak huts egin du." + +msgid "« default sort order »" +msgstr "« lehenetsi ordena »" + +msgid "Manual sort order" +msgstr "Eskuz ordenatu" + +msgid "Origination Date" +msgstr "Jatorrizko Data" + +msgid "Creation Date" +msgstr "Sortze Data" + +msgid "Last Changed Date" +msgstr "Azkena Aldaketa Data" + +msgid "Name" +msgstr "Izena" + +msgid "View Count" +msgstr "Ikuste Kopurua" + +msgid "Random" +msgstr "Ausazkoa" + +msgid "« no presort »" +msgstr "« aurres-sailkapenik ez»" + +msgid "Albums First" +msgstr "Albumak Lehenik" + +msgid "Most Viewed First" +msgstr "Gehien Ikusiak Lehenik" + +msgid "Ascending" +msgstr "Gorantz" + +msgid "Descending" +msgstr "Beherantz" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Egiaztapena ezgaiturik config.php fitxategian allowSessionAccess ezarri arte" + +msgid "This page is valid XHTML 1.0" +msgstr "Orrialde hau XHTML 1.0 baliozkoa da" + +msgid "Donate to the Gallery project" +msgstr "Gallery proiektuari dohaintza egin" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Falta den denbora: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Erabilitako memoria: %s, guztira: %s" + +msgid "Rows per album page" +msgstr "Album orri bakoitzeko lerroak" + +msgid "Columns per album page" +msgstr "Album orri bakoitzeko zutabeak" + +msgid "Number of items to show per page" +msgstr "Orri bakoitzeko erakutsiko diren elementu kopurua" + +msgid "Row height (pixels)" +msgstr "Lerro zabalera (pixel)" + +msgid "Column width (pixels)" +msgstr "Zutabe zabalera (pixel)" + +msgid "Show image owners" +msgstr "Erakutsi irudi jabeak" + +msgid "Show album owners" +msgstr "Erakutsi album jabeak" + +msgid "Show micro navigation thumbnails" +msgstr "Mikro-nabigatze argazkitxoak bistarazi" + +msgid "Blocks to show in the sidebar" +msgstr "Alboko barran erakutsiko diren blokeak" + +msgid "Blocks to show on album pages" +msgstr "Album orrialdetan erakutsiko diren blokeak" + +msgid "Blocks to show on photo pages" +msgstr "Argazki orrialdetan erakutsiko diren blokeak" + +#, fuzzy +msgid "Thumbnail links in dynamic albums" +msgstr "Argazkitxo tamaina hau erabili azpi-album guztietan" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "Albuma Editatu" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "AdibideakIkusi" + +msgid "Album Frame" +msgstr "Album Markoa" + +msgid "Item Frame" +msgstr "Elementu Markoa" + +msgid "Photo Frame" +msgstr "Argazki Markoa" + +msgid "Color Pack" +msgstr "Kolore Paketea" + +msgid "You must enter a number greater than 0" +msgstr "0 baino zenbaki handiago bat idatzi behar duzu" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audioa" + +msgid "audio" +msgstr "audioa" + +msgid "Archive" +msgstr "Fitxategia" + +msgid "archive" +msgstr "fitxategia" + +msgid "Document" +msgstr "Dokumentua" + +msgid "document" +msgstr "dokumentua" + +msgid "Spreadsheet" +msgstr "Kalkulu-orria" + +msgid "spreadsheet" +msgstr "kalkulu-orria" + +msgid "file" +msgstr "fitxategia" + +msgid "Back" +msgstr "Atzera" + +#, c-format +msgid "Back to %s" +msgstr "%s-(e)ra Atzera" + +msgid "User" +msgstr "Erabiltzailea" + +msgid "user" +msgstr "erabiltzailea" + +msgid "Optimize database" +msgstr "Datu-basea optimizatu" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Zure datu-basearen performantzia hobetu. Emaitzak erabiltzen ari datu-basearen arabera alda " +"daitezke, baina mantenu oihutar honek zure Galeria azkarrago ibiltzea egin dezake. Elementu " +"asko ezabatu edo gehitzerakoan batezere erabilgarria." + +msgid "Database optimized successfully" +msgstr "Datu-basea behar bezala optimizatu da" + +msgid "Reset view counts" +msgstr "Ikustaldi kontuak berrezarri" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Album eta elementu guztien ikuspen kontua zerora berezarri. Ataza honek datu-base katxea " +"ere garboitzen du." + +msgid "View counts reset successfully" +msgstr "Ikuste kopuruak behar bezala ezabatu dira" + +msgid "Refresh capture dates" +msgstr "Jasotze datak freskatu" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Eguneratu eskuratze Galerian gorderiko data jatorrizko datu fitxategian data duten elementu " +"guztientzat (normalean EXIF datuetik)." + +msgid "Processing..." +msgstr "Prozesatzen..." + +msgid "Refresh Capture Dates" +msgstr "Jasotze Datak Freskatu" + +#, c-format +msgid "Processing item %d of %d" +msgstr "%d elementua prozesatzen %d-tik" + +#, c-format +msgid "Updated %d of %d items" +msgstr "%d elementu eguneraturik %d elementutatik" + +msgid "System information" +msgstr "Sistema informazioa" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Sistema xehetasunak eskuratu; G2 laguntza foroan kopiatu/itsasi egiteko erabilgarria." + +msgid "core" +msgstr "muina" + +msgid "unknown" +msgstr "ezezaguna" + +msgid "Gallery version" +msgstr "Gallery bertsioa" + +msgid "PHP version" +msgstr "PHP bertsioa" + +msgid "Webserver" +msgstr "Web zerbitzaria" + +msgid "Toolkits" +msgstr "Tresna-jokoak" + +msgid "Acceleration" +msgstr "Azelerazioa" + +msgid "Operating system" +msgstr "Sistema eragilea" + +msgid "Default theme" +msgstr "Gai lehenetsia" + +msgid "gettext" +msgstr "gettext" + +#, fuzzy +msgid "enabled" +msgstr "ezgaitua" + +msgid "disabled" +msgstr "ezgaitua" + +msgid "Locale" +msgstr "Lokalea" + +msgid "Browser" +msgstr "Nabigatzailea" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "Gai ezarpenak behar bezala gor dira" + +msgid "General Settings" +msgstr "Ezarpen orokorrak" + +msgid "Settings saved successfully" +msgstr "Ezarpenak behar bezala gorde dira" + +msgid "Added local upload directory successfully" +msgstr "Igoera direktorio lokala behar bezala gehitu da" + +msgid "Removed local upload directory successfully" +msgstr "Igoera direktorio lokala behar bezala ezabatu da" + +msgid "Test email sent successfully" +msgstr "Testu eposta behar bezala bidali da" + +msgid "There was a problem processing your request, see below for details." +msgstr "Errore bat gertatu da zure eskakizuna prozesatzerakoan, xehetasun gehiago behean." + +msgid "Error sending test email, see below for details." +msgstr "Huts proba eposta bidaltzerakoan, ikusi xehetasunak behean." + +msgid "Language Settings" +msgstr "Hizkuntza Ezarpenak" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Galeriaren lehenetsiriko hizkuntza ezarri. Banakako erabiltzaileek ezarpen hau gainidatzi " +"ditzakete ezarpen pertsonaletan erabilgarri egon ezkero hizkuntza aukeratzailearen bidez. " +"Nabigatzailean hizkuntza hobespenak ezarririk badaude Gallery hauek automatikoki atzematen " +"saiatuko da." + +msgid "Default language" +msgstr "Lehenetsiriko hizkuntza" + +msgid "Check Browser Preference" +msgstr "Nabigatzaile Hobespenak Arakatu" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Zure web zerbitzariak ez du lokalizazio hau onartzen. Mesedez eskatu sistema kudeatzaileari %" +"s aukera gaituaz PHP berkonfiguratzeko." + +msgid "Date Formats" +msgstr "Data Formatuak" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Galeriak data eta orduak nola bistaraziko dituen ezarri. Begiratu %sphp.net%s formatu katea " +"nola idatzi behar den buruzko xehetasunentzat. Kontutan izan zenbait ikur bistaratzea " +"gaiturik dagoen hizkuntzaren arabera alda daitezkeela." + +msgid "Style" +msgstr "Estiloa" + +msgid "Format" +msgstr "Formatua" + +msgid "Sample" +msgstr "Adibidea" + +msgid "Date" +msgstr "Data" + +msgid "Time" +msgstr "Ordua" + +msgid "Date/Time" +msgstr "Data/Ordua" + +msgid "Filesystem Permissions" +msgstr "Fitxategi-sistema Baimenak" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Galeriak sortzen dituen fitxategi eta direktorioen lehenetsiriko baimenak ezarri. Hauek ez " +"dira ezarriko galeriak dagoeneko sortutako fitxategi/direktorioentzat." + +msgid "New directories" +msgstr "Direktorio berriak" + +msgid "New files" +msgstr "Fitxategi berriak" + +msgid "Session Settings" +msgstr "Saio Ezarpenak" + +msgid "Session Lifetime" +msgstr "Saio iraungitzea" + +msgid "Inactivity Timeout" +msgstr "Denbora-muga" + +msgid "Embedded Markup" +msgstr "Barneratutako markatzea" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Zein marka mota onartuko dira erabiltzaileak sarturiko eremuetan? Seguratsun arrazoiak " +"direla eta ez da HTML onartzea gomendatzen. BBCode segurua den eta testu formateatze " +"sinplea (lodia, italikoa, zerrendak, irudiak, url-akm etab...) onartzen duen marka mota " +"berezi bat da." + +msgid "Markup" +msgstr "Markaketa" + +msgid "Email" +msgstr "ePosta" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Lehenespen bezala Gallery-k konfiguraziorik behar ez duen PHP-ko mail funtzioa erabiltzen " +"du. smtp/posta zerbitzari bat erabili nahi izan ezkero idatzi beharrezko datuak, egiaztapen " +"datuak ere beharrezko badira, beherago. Aukeran ataka gehitu dezakezu izenaren ondoren " +"lehenetsiriko ataka ez erabililtzeko." + +msgid "Server" +msgstr "Zerbitzaria" + +msgid "Username" +msgstr "Erabiltzaile-izena" + +msgid "Password" +msgstr "Pasahitza" + +msgid "SMTP From Address" +msgstr "SMTP Nork Helbidea" + +msgid "Invalid email address" +msgstr "Helbide elektronikoa ez da baliozkoa" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Zure ezarpenak egokiak direla egiaztatzeko eposta bat bidali (PHP mail edo SMTP ezarpenak " +"erabiliaz). Mezua bidaliko den posta helbidea idatzi beherago." + +msgid "Send Email" +msgstr "eposta bidali" + +msgid "Email Test Error" +msgstr "ePosta proba errorea" + +msgid "Cookies" +msgstr "Cookie-ak" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Gallery beste aplikazio batetan barneratzena (protala, CMS, foroa, etab) bi aukeren artean " +"hautatu behar duzu. Besteak cookie ezarpenetaz ez dira arduratu behar. Hemen irakurri " +"argibide gehiagorako." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Zure Galeria beste aplikazio batetan barneratuta badago eta zuk eremu hauek ez bete " +"ezkerobarneratutako aplikazioaren ElementuDeskarga lotura guztiak (irudi eta beste " +"elementuen URL-ak) erabiltzaileak irudi URL-ak foro, bisita liburu eta antzekoetan sartu " +"ezkero segurtasun zulo txiki bat den GALLERYSID kate bat barneratuko dute. " +"Beste modua Cookie bidea ezartzea da. Gallery-k orduan ez du GALLERYSID gehituko " +"barneratutako aplikazioaren ElementuDeskargetara. Adib. Gallery http://www.adibide.com/" +"aplikazioa/gallery2 bidez eskura badaiteke eta barneratze aplikazioa http://www.adibide.com/" +"aplikazioa/ denean, /aplikazioa/gallery2 eta /aplikazioa/ parekatu behar dituzu. Cookie " +"bidea berdina den bide zatia da, kasu honetan '/aplikazioa/'. BEste batzuetan '/' oizan " +"daiteke." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Cookie domeinua beste aplikazio batetan barneratutako Gallery instalazioetan behar da " +"eta bakarrik barneratutako ElementuDeskarga loturetan GALLERYSID agertzea ez baduzu nahi." +"kasu gehienetan, cookie domeinua hutsik utz dezakzu. Ezarri bakarrik gallery eta " +"berau barneratutako aplikazioa azpidomeinu ezberdinen bidez eskuratu badaitezke. " +"Adib. galeria http:/argazkiak.adibide.com-en badago eta barneratutako aplikazioa http://www." +"adibide.com/ bidean badago cookie domeinua adibide.com bezala ezarri behar duzu (Gallery eta " +"barneratze aplikazioen bideetan berdina dena)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Cookie ezarpenak aldatu dituzunean, Galeriako hapidedun guztiek bere " +"nabigatzaileko cookie katxea ezabatu behar dute. Ez ezabatu ezkero saio hasiera / " +"amaiera/ galera arazoak izan ditzakete." + +msgid "Path" +msgstr "Bidea" + +msgid "Invalid cookie path" +msgstr "Cookie bide baliogabea" + +msgid "Domain" +msgstr "Domeinua" + +msgid "Invalid cookie domain" +msgstr "Cookie domeinu baliogabea" + +msgid "Locking System" +msgstr "Blokeo Sistema" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery elkarren artean jotzen duten aldaketak ekiditzeko blokeo sistema bat erabiltzen du. " +"Bi blokeo mota daude, bakoitza bere abantaia eta arazoekin. Fitxategian " +"oinarritutako blokeoa azkar eta egokia da baina ez du NFS fitxategi sistemetan futzionatzen " +"eta ezinda Windowspean erabili. Datu-base geldoago baina fidagarriagoa da. Zein " +"aukeratu ez badakizu, fitxategi blokeoa erabiltzea gomendatzen da. Denboraz-kanpo ugari " +"jaso ezkero, datu-base blokeoa erabiltzen saia zaitezke. Batetik bestera arazo gabe alda " +"daiteke." + +msgid "Lock system" +msgstr "Blokeo sistema" + +msgid "Helper Processes" +msgstr "LAguntza Prozesua" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Zenbait Gallery moduloek zure zerbitzariko programak erabiltzen dituzte irudi prozesatze, " +"gordetze eta beste zenbait ekintza egiteko. Programa hauek eskakizun handikoak izan eta " +"zerbitzariaren performantzian kalte egin dezakete. Programa hauek lehentasun baxuenarekin " +"abiaraztea egin dezakezu arazo hau saiesteko. Web zerbitzariak karga handia edo " +"partekatutako zerbitzari batetan instalatu ezkero lehentasun baxua ezartzen saiatu zaitez." + +msgid "Priority" +msgstr "Lehentasuna" + +msgid "Save" +msgstr "Gorde" + +msgid "Reset" +msgstr "Berrezarri" + +msgid "Create A New Group" +msgstr "Talde Berri Bat Sortu" + +msgid "Group Name" +msgstr "Taldearen izena" + +msgid "(required)" +msgstr "(beharrezkoa)" + +msgid "You must enter a group name" +msgstr "Talde izen bat idatzi behar duzu" + +#, c-format +msgid "Group '%s' already exists" +msgstr "'%s' taldea badago dagoeneko" + +msgid "Create Group" +msgstr "Taldea Sortu" + +msgid "Cancel" +msgstr "Utzi" + +msgid "Create A New User" +msgstr "Erabiltzaile berri bat sortu" + +msgid "You must enter a username" +msgstr "Erabiltzaile izen bat idatzi behar duzu" + +#, c-format +msgid "Username '%s' already exists" +msgstr "%s Erabiltzaile-izena badago dagoeneko" + +msgid "Full Name" +msgstr "Izen osoa" + +msgid "Email Address" +msgstr "ePosta Helbidea" + +msgid "You must enter an email address" +msgstr "Baliozo eposta helbide bat idatzi behar duzu" + +msgid "Language" +msgstr "Hizkuntza" + +msgid "You must enter a password" +msgstr "Pasahitz bat idatzi behar duzu" + +msgid "Verify Password" +msgstr "Pasahitza Egiaztatu" + +msgid "You must enter the password a second time" +msgstr "Pasahitza bigarren aldi batez idatzi behar duzu" + +msgid "The passwords you entered did not match" +msgstr "Sartutako bi pasahitzak ez datoz bat" + +msgid "Create User" +msgstr "Erabiltzailea Sortu" + +msgid "Delete A Group" +msgstr "Taldea Bat Ezabatu" + +msgid "Are you sure?" +msgstr "Ziur zaude?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Honek %s galeriatik guztiz ezabatuko du. Hau ezin da desegin!" + +msgid "Delete" +msgstr "Ezabatu" + +msgid "Delete a User" +msgstr "Erabiltzaile Bat Ezabatu" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "%s erabiltzailea %s elementuren jabea da." + +#, c-format +msgid "Delete user %s and..." +msgstr " %s erabiltzailea ezabatu eta..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "%s-ren elementu guztiei jabe berria ezarri" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"%s-ren elementu guztiak ezabatu eta geratzen diren hutsak ez dauden album-ei jabe berria " +"ezarri. %s-ek ezabatzeko baimenik ez duen elementuak jabe berriari ezarriko zaizkio." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Jabe berria (hutsik utzi ezkero sistema kudeatzaileetako bat izango da):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "'%s' erabiltzailerik ez dago. Ezin da ez dagoen erabiltzaile beti elementurik ezarri." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Jabe berria ezabatzen ari garen honetatik ezberdina izan behar da!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Jabe berria ezin da erabiltzaile gonbidatu/izengabea izan!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Honek %s galeriatik guztiz ezabatuko du. Hau ezin da desegin!" + +msgid "Edit a group" +msgstr "Talde bat ediatatu" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "'%s' Taldeko Partaideak Editatu" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "'%s' erabiltzailea '%s' taldera gehiturik" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "'%s' erabiltzailea '%s' taldetik ezabaturik" +msgstr[1] "'%s' erabiltzaile '%s' taldetik ezabaturik" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Talde honek erabiltzaile %d dut" +msgstr[1] "Talde honek %d erabiltzaile ditu" + +msgid "Members" +msgstr "Kideak" + +msgid "« first" +msgstr "« lehenengoa" + +msgid "« back" +msgstr "« atzera" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "%d orria ikusten %d orrialdetatik" + +msgid "next »" +msgstr "hurrengoa »" + +msgid "last »" +msgstr "azkena »" + +msgid "Filter" +msgstr "Iragazkia" + +msgid "Clear" +msgstr "Garbitu" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "erabiltzaile %d zure iragazkiaren parekoa da" +msgstr[1] "%d erabiltzaile zure iragazkiaren parekoa dira" + +msgid "Remove selected" +msgstr "Hautatutakoa ezabatu" + +msgid "You must select a user to remove." +msgstr "Ezabatzeko erabiltzaile bat aukeratu behar duzu." + +msgid "You can't remove yourself from this group." +msgstr "Ezin duzu zure burua talde honetatik ezabatu." + +msgid "Add Member" +msgstr "Kidea Gehitu" + +msgid "Add" +msgstr "Gehitu" + +msgid "You must enter a username." +msgstr "Erabiltzaile-izena idatzi behar duzu." + +#, c-format +msgid "User '%s' does not exist." +msgstr "'%s' erabiltzailerik ez dago." + +msgid "This user already is in this group." +msgstr "Erabiltzaile hau dagoeneko talde honen kide da." + +msgid "Done" +msgstr "Eginda" + +msgid "Edit a user" +msgstr "Erabiltzailea editatu" + +msgid "That username is already in use" +msgstr "Erabiltzaile-izena dagoeneko erabilia dago" + +msgid "You must enter a new username" +msgstr "Erabiltzaile-izen berri bat idatzi behar duzu" + +msgid "E-mail Address" +msgstr "eposta Helbidea" + +msgid "(suggested)" +msgstr "(gomendaturik)" + +msgid "Options" +msgstr "Aukerak" + +#, fuzzy +msgid "Lock user." +msgstr "Blokeo sistema" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +#, fuzzy +msgid "Reset failed login count." +msgstr "Ikustaldi kontuak berrezarri" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "Talde Kudeaketa" + +#, c-format +msgid "Removed group '%s'" +msgstr "'%s' taldea ezabaturik" + +#, c-format +msgid "Created group '%s'" +msgstr "'%s' taldea sorturik" + +#, c-format +msgid "Modified group '%s'" +msgstr "'%s' taldea eraldaturik" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Sisteman talde %d dago." +msgstr[1] "Sisteman %d talde daude." + +msgid "Edit Group" +msgstr "Taldea Ediatatu" + +msgid "Edit" +msgstr "Editatu" + +msgid "Add/Remove Users" +msgstr "Erabiltzaileak Gehitu/Kendu" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "'%s' talderik ez dago." + +msgid "You cannot delete that group" +msgstr "Ezin duzu talde hau ezabatu" + +msgid "You cannot edit that group's users" +msgstr "Ezin duzu erabiltzaile talde hau editatu" + +msgid "Edit Group (by list)" +msgstr "Taldea Editatu (Zerrendatik)" + +msgid "Action" +msgstr "Ekintza" + +msgid "edit" +msgstr "editatu" + +msgid "delete" +msgstr "ezabatu" + +msgid "members" +msgstr "kideak" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "talde %d zure iragazkiaren pareko da" +msgstr[1] "%d talde zure iragazkiaren pareko dira" + +msgid "System Maintenance" +msgstr "Sistema Mantenua" + +#, c-format +msgid "Completed %s task successfully." +msgstr "%s ataza behar bezala amaitu da." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "%s atazak huts egin du." + +msgid "Task name" +msgstr "Ataza izena" + +msgid "Last run" +msgstr "Azkenez abiarazia" + +msgid "Success/Fail" +msgstr "Lortua/Huts" + +msgid "Not run yet" +msgstr "Abiarazi gabe" + +msgid "Success" +msgstr "Behar bezala egin da" + +msgid "Failed" +msgstr "Huts egin du" + +msgid "run now" +msgstr "orain abiarazi" + +msgid "Last Run Details:" +msgstr "Azken Abiarazte Xehetasunak:" + +msgid "Performance Tuning" +msgstr "Performatzia Fintzea" + +msgid "Updated performance settings successfully" +msgstr "Performantzia ezarpenak behar bezala eguneratu dira" + +msgid "Deleted all saved pages" +msgstr "Orderiko orrialde guztiak ezabatuak" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Zure Galeria performantzia hobetu web orrialde osoak datu-basean gordeaz. Honek web orrialde " +"bat bistaratzeko erabiliko diran web zerbitzari eta datu-base errekurtsoak asko gutxiagotu " +"ditzake. Alde txarra bistartzen den orrialdea zaharkiturik egon daitekeela da, hala ere " +"orrialdearen azken bertsioa eskura dezakezu beti nabigatzailearen freskatzea indartuaz " +"(normalean shift tekla zanpatua mantendu eta berritu botoia klikatzen)." + +msgid "Partial Acceleration" +msgstr "Azelerazio ertaina" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Azlerazio ertainak %10-25 arteko performantzia hobe bat lor dezake, baina zenbait datu " +"dinamiko (ikustaldi kontua kasu) ez dira behar ebzala eguneratuko. Blokeetan agertzen den " +"eduki guztia (ausazko irudi blokea edo alboko barra blokeak adibidez) beti eguneraturik " +"egongo da." + +msgid "Full Acceleration" +msgstr "Azelerazio Osoa" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Azelerazio osoak performantzia %90-ean hobe dezake, baina ez datu dinamikorik (ausazko irudi " +"blokea, alboko-barra blokea, saskiko elementu kopurua, ikustaldi kontua, etab) ez dira " +"eguneraturik egongo orrialdea iraungitu arte." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Horretaz gain gordetako orrialdeen iraungitze epea ezarri dezakezu. Iraungitze epe luze bat " +"aukeratuaz, zerbitzariaren lan karga gutxituko duzu baina erabiltzaileek aldaketak ikusteko " +"behar den denbora handituaz. Iraungitze labur batez erabiltzaileek datu berrituagoak ikusiko " +"dituzte baina zerbitzariaren lan karga handiagoarekin." + +msgid "Here are some standard acceleration profiles:" +msgstr "Hemen zenbait azelerazio profil arrunt:" + +msgid "Medium acceleration" +msgstr "Azelerazio ertaina" + +msgid "High acceleration" +msgstr "Azelerazio altua" + +msgid "Guest Users" +msgstr "Erabiltzaile Gobidatuak" + +msgid "Expires after:" +msgstr "Iraungitze epea:" + +msgid "Clear Saved Pages" +msgstr "Gordetako Orrialdeak Garbitu" + +msgid "Status: Inactive" +msgstr "Egoera Ezgaiturik" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ ezgaitua" + +msgid "Status: Active" +msgstr "Egoera: Gaiturik" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ gaitua" + +msgid "Status: Not Installed" +msgstr "Egoera: Ez indatalatua" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ ezinstalaturik" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Egoera: Bertsio-berritzea Beharrezkoa (ezgaiturik)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Egoera: Plugin bateraezina (ezgaiturik)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Egoera: Ezgaitua (Konfigurazioa beharrezkoa)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ konfigurazioa behar du" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ ezgaitua" + +#, fuzzy +msgid "Warning!" +msgstr "Abisua:" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Benetan __PLUGIN__ desinstalatu nahi duzula?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "Honek modulu honek sortutako edozein datu garbitu eta baimenak ezabatuko ditu." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Benetan __PLUGIN__ desinstalatu nahi duzula?" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "Eguneratua (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "desinstalatua (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "bertsio-eguneraketa beharrezkoa (__COUNT__)" + +#, fuzzy +msgid "incompatible(__COUNT__)" +msgstr "baterezina (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +msgid "Gallery Plugins" +msgstr "Gallery Plugin-ak" + +#, fuzzy +msgid "Get More Plugins" +msgstr "Gallery Plugin-ak" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Gallery ezaugarriak modulu ezberdinak bezala banatzen dira. Zuk zure galeriari ezaugarriak " +"gehitzeko moduluak deskargatu eta instaltu ditzakezu, edo ezaugarriak ezgaitu ditzakezu " +"erabili nahi ez izan ezkero. Ezaugarri bat behar bezala erabilzteko berau instalatu, " +"konfiguratu (beharrezkoa bada) eta gaitu egin behar duzu. Ezaugarri bat ez erabili nahi " +"izan ezkero berau ezgaitu egin dezakezu." + +msgid "Plugin Name" +msgstr "Plugin Izena" + +msgid "Installed" +msgstr "Instalaturik" + +msgid "Version" +msgstr "Bertsioa" + +msgid "Actions" +msgstr "Ekintzak" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "Plugin baterezina!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Miun API-a beharrezkoa: %s (%s eskuragarri)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Plugin API-a beharrezkoa: %s (%s eskuragarri)" + +msgid "configure" +msgstr "konfiguratu" + +msgid "up to date" +msgstr "Eguneratua" + +msgid "upgrade required" +msgstr "bertsio-eguneraketa beharrezkoa" + +msgid "not installed" +msgstr "desinstalatua" + +msgid "incompatible" +msgstr "baterezina" + +msgid "Repository" +msgstr "Errepositorioa" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Ziurtatu zaitez zure interneteriko konexioa martxan dagoela edo saiatu zaitez beranduago." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "Errepositorio indizea behar bezala eguneratu da." + +msgid "All plugins are already up-to-date." +msgstr "Dagoeneko plugin guztiak eguneraturik daude." + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +#, fuzzy +msgid "Repository Error" +msgstr "Errepositorioa" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Ezabatzeko erabiltzaile bat aukeratu behar duzu." + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +#, fuzzy +msgid "Continue" +msgstr "Jarraitu..." + +#, fuzzy +msgid "Download Plugin List" +msgstr "Unitate proba deskargatu" + +#, fuzzy +msgid "Show Repository List" +msgstr "Errepositorioa" + +msgid "Upgrade Gallery" +msgstr "Galeria eguneratu" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Gallery-ren bertsio berri bat dago eskuragarri, baina ezin da interfaze honen bidez " +"eguneratu. Berau eguneratzeak instalaturik duzun plugin batenbat geratzea eragin dezake, " +"baina bertsio berrian datozenak eskuragarri izango dituzu. Hemen daude eguneraketarako " +"gomendaturiko urratsak:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "Gallery muina %sDeskargatu%s" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "%sEguneraketa argibideak%s irakurri eta eguneraketa eurrera eraman" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Plugin bateraezinak arridura ikur batez markatuko dira." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Muin bertsio berri bat dago eskuragarri. Instalatu behar den muin moduluarekin bateraezin " +"diren plugin-ak egon daitezke, baina ez dira hemen bistaraziko. Plugin %szerrenda oso%s bat " +"ikus dezakezu, ikono gorri batez markatuiko bateraezinak barne." + +#, fuzzy +msgid "upgrade available" +msgstr "Galeria eguneratu" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "Gai izena" + +msgid "Module Name" +msgstr "Modulu Izena" + +msgid "Latest" +msgstr "Azkena" + +#, fuzzy +msgid "Locked Plugin" +msgstr "Plugin-ak" + +msgid "Incompatible Plugin" +msgstr "Plugin baterezina" + +#, fuzzy +msgid "Upgrade Available" +msgstr "Dana eguneratu" + +msgid "download" +msgstr "deskargatu" + +msgid "modify" +msgstr "eraldatu" + +msgid "Upgrade All Plugins" +msgstr "Plugin Guztiak Eguneratu" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery-k automatikoki zure gai eta moduluak azken bertsiora egunera ditzake. Ez da plugin " +"berririk deskargatuko." + +msgid "Upgrade All" +msgstr "Dana eguneratu" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "%s deskargatzen" + +msgid "No packages have been selected." +msgstr "Ez duzu paketerik aukeratu." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "Oinarri fitxategiak" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "Hizkuntza Ezarpenak" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "PHP bertsioa" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +msgid "Update" +msgstr "Eguneratu" + +msgid "Gallery Themes" +msgstr "Gallery Gaiak" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "%s gaia behar bezala gaitu da" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "%s gaia behar bezala ezgaitu da" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "%s gaia behar bezala instalatu da" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "%s gaia behar bezala desinstalatu da" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "%s gaia behar bezala eguneratu da" + +msgid "Successfully saved default album settings" +msgstr "Lehenetsiriko album ezarpenak behar bezala gorde dira" + +msgid "Restored theme settings" +msgstr "Gai ezarpenak berreskuraturik" + +msgid "Defaults" +msgstr "Lehenetsiak" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Hauek zure galeriako album-en lehenetsiriko bistaraze ezarpenak dira. Album bakoitzean " +"gainidatzi daitezke." + +msgid "Default sort order" +msgstr "Ordena lehenetsia" + +msgid "with" +msgstr "honekin" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Album berriak" + +#, fuzzy +msgid "Save Defaults" +msgstr "Lehenetsiak" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s Gai Ezarpenak" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Hauek gaiaren ezarpen orkorrak dira. Ezarpen hauek album mailara gainidatzi daitezke." + +msgid "Available" +msgstr "Erabilgarri" + +msgid "Choose a block" +msgstr "Bloke bat hautatu" + +msgid "Selected" +msgstr "Hautatuta" + +msgid "Remove" +msgstr "Kendu" + +msgid "Move Up" +msgstr "Eraman gora" + +msgid "Move Down" +msgstr "Eraman behera" + +msgid "Parameter" +msgstr "Parametroa" + +msgid "Value" +msgstr "Balioa" + +msgid "There are no settings for this theme" +msgstr "Ez dago ezarpenik gai honentzat" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "%s Gai Ezarpenak" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Beheko tresna-jokoek batek baino gehiago kudea ditzaketen mime mota eta ekintzak daude. " +"Tresna-jokoak sailkatu lehenengo zein erabili nahi duzn ezartzeko." + +msgid "Toolkit" +msgstr "Tresna-jokoa" + +msgid "Order" +msgstr "Ordena" + +msgid "up" +msgstr "gora" + +msgid "down" +msgstr "behera" + +msgid "User Management" +msgstr "Erabiltzaile Kudeaketa" + +#, c-format +msgid "Removed user '%s'" +msgstr "'%s' erabiltzailea ezabaturik" + +#, c-format +msgid "Created user '%s'" +msgstr "'%s' erabiltzailea sorturik" + +#, c-format +msgid "Modified user '%s'" +msgstr "'%s' erabiltzailea eraldaturik" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Erabiltzaile %d dago sisteman." +msgstr[1] "Guztira %d erabiltzaile daude sisteman." + +msgid "Edit User" +msgstr "Erabiltzailea editatu" + +msgid "You cannot delete yourself!" +msgstr "Ezin duzu zured burua ezabatu!" + +msgid "You cannot delete the special guest user." +msgstr "Ezin duzu gonbidatu erabiltzaile ebrezia ezabatu." + +msgid "Edit User (by list)" +msgstr "Editatu Erabiltzailea (zerrendatik)" + +#, fuzzy +msgid "Locked" +msgstr "Lokalea" + +#, fuzzy +msgid "Failed Logins" +msgstr "Huts egin du" + +msgid "Thumbnails" +msgstr "Argazkitxoak" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Galllery-k argazkitxoak argazkiak igotzekoan edo argazkitxoa bistarazi behar duen lehen " +"aldian sor ditzake. Bi moduetara argazkitxoa bein sortu eta gorde egingo da, baina " +"argazkitxoak ikusten diren lehenengo aldian sortzea erabaki ezkero geldotasuna nabari " +"dezakezu albuma bistaratzeko lehen aldian igotze abiadura handiago baten truke." + +msgid "Create thumbnails now" +msgstr "Sortu argazkitxoak orain" + +msgid "This is a test email from Gallery2" +msgstr "Hau Gallery 2-ren proba eposta bat da" + +msgid "Edit Conflict!" +msgstr "Elkarjotzea Editatu!" + +msgid "Security Violation" +msgstr "Segurtasun Haustura" + +msgid "Database Error" +msgstr "Datu-basearen errorea" + +msgid "Platform Error" +msgstr "Plataforma Errorea" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Baimena Berretsirik" + +msgid "Error" +msgstr "Errorea" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Zure aldaketak ezin dira burutu aldi berean beste batek zure aldaketekin elkar jotzen duten " +"aldaketak egin bait ditu, Nabigatzailearen atzera botoiari jo, orria freskatu eta " +"saiatu zaite berriro." + +msgid "Go back and try again" +msgstr "Joan atzera eta berriz saiatu" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "Gordetako Orrialdeak Garbitu" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Bestela. galeria orrialdera itzuli eta nabegatzen jarraitu dezakezu." + +msgid "The action you attempted is not permitted." +msgstr "Zu saiatutako ekintza ez da onartzen." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "Errore bat gertatu da datu-basearekin erlazionatzerakoan." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"Datu-base errorea ez da godea izan config.php fitxategian Gallery arazpen modua gaiturik ez " +"badago. Errore honentzat laguntza bilatu aurretik, mesedez hilaraturiko arazpen irteera " +"gaitu eta ekinzta egiten berriz saiatu. Arazpen irteeraren amaiera aldera ebgiratu " +"errorearen xehetasunak aurkitzeko." + +msgid "An error has occurred while interacting with the platform." +msgstr "Errore bat gertatu da plataformarekin erlazionatzerakoan." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Plataforma errorearen arrazoi zehatza ezezaguna da. Arrazoi arruntena okerreko fitxategi " +"baimenak dira. Zuk edo web ostalariak fitxategi sisteman zerbait aldatu ezkero, adibidez " +"babes-kopia berrezartze batetan, hau gerta daiteke." + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "Errore bat gertatu da." + +msgid "Back to the Gallery" +msgstr "Galeriara berriz Joan" + +msgid "Error Detail" +msgstr "Errorea Xehetasunak" + +msgid "System Information" +msgstr "Sistema informazioa" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Ez duzu JPEG irudiak kudea ditzaken tresna-jokorik gaiturik. Irudiak gehitu ezkero " +"ziurrenik ez duzu argazkitxorik ikusiko." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Joan Moduluak orrialdera tresna-sorta grafiko bat gaitzeko." + +msgid "Add Sub-Album" +msgstr "Gehitu Azpi-Albuma" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Diska gogorreko album honen izena. Album honetan bakarra izan behar du.. Alphazenbakizko " +"karaktereak, azpimarratua eta marratxoa bakarrik erabili. Nahi izan ezkero beranduago " +"berrizendatu ahal izango duzu." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Zure izenak karaktere baliogabeak ditu. Mesedez beste bat aukeratu." + +msgid "You must enter a name for this album." +msgstr "Album honentzat izen bat idatzi behar duzu." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Zuk emandako izena dagoeneko erabilia dago. Mesedez, beste bat aukeratu." + +msgid "This is the album title." +msgstr "Hau album izenburua da." + +msgid "This is the album summary." +msgstr "Hau album laburpena da." + +msgid "Keywords are not visible, but are searchable." +msgstr "Gako-hitzak ez daude ikusgain, baina bilagarriak dira." + +msgid "This is the long description of the album." +msgstr "Hau albumaren deskribapen luzea da." + +msgid "Create" +msgstr "Sortu" + +msgid "Upload Complete" +msgstr "Igoera burutua" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Fitxategi %d behar bezala gehitu da." +msgstr[1] "%d fitxategi behar bezala gehitu dira." + +msgid "No files added." +msgstr "Ez da fitxategirik gehitu." + +#, c-format +msgid "Added %s" +msgstr "%s gehiturik" + +#, c-format +msgid "Failed to add %s" +msgstr "Huts %s gehitzerakoan" + +msgid "Add more files" +msgstr "Fitxategi gehiago gehitu" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Zure web zerbitzaria momentuz ez du web nabigatzailetik fitxategirik igotzea onartzeko " +"konfiguraturik. Gune kudeatzailearekin harremanetan ipini laguntza jasotzeko." + +msgid "Upload files directly from your computer." +msgstr "Fitxategiak zuzenean zure ordenagailutik igo." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Idatzi fitxategira bide osoa eta aukeran epigrafe beheko kutxan." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Oharra: Aldi batetan %s igo ditzakezu. Hau baino gehiago igo nahi ezkero fitxategiak " +"banaturik igom beste igoera formatu bat aukeratu edo sistema kudeatzaileari igoera handigoak " +"onartzea eskatu beharko duzu." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Oharra: Aldi batetan %s igo ditzakezu. Banakako fitxategiak ezin dira %s baino " +"handiagoak izan. Hau baino gehiago igo nahi ezkero fitxategiak banaturik igom beste igoera " +"formatu bat aukeratu edo sistema kudeatzaileari igoera handigoak onartzea eskatu beharko " +"duzu." + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "Ezarri elementu tituluak hemendik:" + +msgid "Assign caption to:" +msgstr "Ezarri epigafeak hemen:" + +msgid "No Thumbnail" +msgstr "Argazkitxorik Ez" + +msgid "Delete Items" +msgstr "Elementuak Ezabatu" + +msgid "No items were selected for deletion" +msgstr "Ez da elementurik aukeratu ezabatzeko" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Elementu %d behar bezala ezabatu da" +msgstr[1] "%d elementu behar bezala ezabatu dira" + +msgid "This album contains no items to delete" +msgstr "Album ho9nek ez du elementurik ezabatzeko" + +msgid "Choose the items you want to delete" +msgstr "Aukeratu ezabatu nahi dituzun elementuak" + +#, c-format +msgid "(page %d of %d)" +msgstr "(%d %d orrialdetatik)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Hemen hautaturiko elementuak hautaturik jarraituko dute orrietan zehar mugitzerakoan." + +#, fuzzy, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Bat elementu hautatutakoa - bestelakoa." +msgstr[1] "Bat elementu hautatutakoa - bestelakoa." + +msgid "(data)" +msgstr "(data)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(albumak elementu %d du)" +msgstr[1] "(albumak %d elementu ditu)" + +msgid "(empty album)" +msgstr "(album hutsa)" + +msgid "Check All" +msgstr "Markatu Denak" + +msgid "Check None" +msgstr "Ez Markatu bat ere ez" + +msgid "Invert" +msgstr "Alderantzikatu" + +msgid "Previous Page" +msgstr "Aurreko Orrialdea" + +msgid "Next Page" +msgstr "Hurrengo Orrialdea" + +msgid "Deletion Complete" +msgstr "Ezabaketa Buruturik" + +msgid "Item successfully deleted" +msgstr "Elementua behar bezala ezabatu da" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Ziur zaude %s ezabatu nahi duzula?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Berauk elementu %d du." +msgstr[1] "Berauk %d elementu ditu." + +msgid "There is no undo!" +msgstr "Hau ezin da desegin!" + +msgid "There was a problem processing your request." +msgstr "Zure eskaera prozesatzerakoan errore bat gertatu da." + +msgid "Sort order" +msgstr "Sailkapen ordena" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Honek albumen sailkapen ordena ezartzen du. Honek dauden elementu guztietan eta hemendik " +"aurrera gehitzen direnetan eragingo du." + +msgid "Apply to all subalbums" +msgstr "Azpi-album guztiei ezarri" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Elementu bakoitzak argazkitxo bat behar du. Ezarri lehenetsiriko tamaina pixel-etan." + +msgid "You must enter a number (greater than zero)" +msgstr "Zenbaki bat idatzi behar duzu (zero baino handiagoa)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Argazkitxo tamaina hau erabili azpi-album guztietan" + +msgid "Resized Images" +msgstr "Irudiak Tamainaz Aldatu" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Zure album-eko elementu bakoitzak tamaina anitz izan ditzake. Lehenetsiriko tamainak hemen " +"ezarri." + +msgid "Active" +msgstr "Gaiturik" + +msgid "Target Size (pixels)" +msgstr "Helburu Tamaiana (pixel)" + +msgid "You must enter a valid size" +msgstr "Baliozko tamaina bat idatzi behar duzu" + +msgid "Use these target sizes in all subalbums" +msgstr "Helburu tamaina hau erabili azpi-album guztietan" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Ezarri azpi-elementuei" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "Azpi-album guztiei ezarri" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Argazkitxoak birsortzen..." + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Taimanaz aldaturiko irudiak berriz sortzen" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Galleryk animazio hau behar bezala bistaratzeko, animazioaren zabalera eta altuera ezagutu " +"behar ditu. Animazioak kudea ditzakeen tresna-joko grafiko bat instalaturik baduzu, balio " +"hauek ezarririk egongo dira. Bestela 0 bezala ezarririk egongo dira. Ez badituzu balio " +"zuzenak ezartzen animazioa eraldaturik ager daiteke web nabigatzailean bistaratzean. " +"Kontutan izan balio hauek aldatzeak ez duela animazioa bera aldatzen beraz balio " +"ezberdinak probatzea ez da arriskutsua." + +msgid "Width" +msgstr "Zabalera" + +msgid "You must enter a value greater than or equal to 0" +msgstr "0 edo handiagoa den balio bat idatzi behar duzu" + +msgid "Height" +msgstr "Altuera" + +msgid "There were errors saving some items" +msgstr "Erroreak gertatu dira zenbait elementu gordetzerakoan" + +msgid "There were errors saving all items" +msgstr "Erroreak gertatu dira elementu guztiak gordetzerakoan" + +msgid "Successfully saved all items" +msgstr "Elementu guztiak behar bezala gorde dira" + +msgid "This album contains no items" +msgstr "Album honek ez du elementurik" + +msgid "Saved successfully." +msgstr "Behat bezala gorderik." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Elementu hau aldi berean beste pertsona batek eraldatu du. Zure aldaketak galdu egingo dira." + +msgid "You do not have permissions to modify this item." +msgstr "Ez duzu elementu hau eraldatzeko baimenik." + +msgid "Save and Done" +msgstr "Gorde eta Eginda" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Gorde eta Aurreko %s Editatu" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Gorde eta Hurrengo %s Editatu" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Elementuaren zure diskako izena. Bakrra izan behar da album honetan. Alphazenbakizko " +"karaktereas azpimarratuak eta marratxoa bakarrik erabili." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Emandako izenak karaktere baliogabeak ditu. Beste bat aukeratu mesedez." + +msgid "You must enter a name for this item." +msgstr "Elementu honentzt izen bat idatzi behar duzu." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Emandako izena dagoeneko erabilia dago. Aukeratu beste izen bat mesedez." + +msgid "The title of this item." +msgstr "Elementu honen titulua." + +msgid "The root album must have a title." +msgstr "Erro albumak titulu bat izan behar du." + +msgid "The summary of this item." +msgstr "Elementu honen laburpena." + +msgid "This is the long description of the item." +msgstr "Elementu honen deskribapen luzea." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Data eta Ordua" + +msgid "Set the date and time when this image was captured." +msgstr "Irudia jaso zeneko data eta ordua ezarri." + +msgid "Set the date and time to be displayed for this item." +msgstr "Elementu honentzat bistaraziko den data eta ordua ezarri." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "%s honentzat erakutsiko diren data eta ordua ezarri." + +msgid "Date:" +msgstr "Data:" + +msgid "Time:" +msgstr "Ordua:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "Fitxategi informaziotik jatorrizko data eta ordua erabili (adib. EXIF marka):" + +msgid "You must enter a valid date and time" +msgstr "Baliozko data eta ordua idatzi behar dituzu" + +msgid "Thumbnail" +msgstr "Argazkitxoa" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Argazkitxo tamaina ezarri. Argazkitxoaren alde luzeena ez da hau baino handiagoa izango. " +"Utzi eremu hau hutsik argazkitxorik ez erabili nahi ezkero." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Ez dago elemntu mota hau onartzen duen trsna-sprta grafikorik instalaturik, beraz ezingo da " +"argazkitxoa sortu edo eraldatu." + +msgid "Unable to create a thumbnail for this item" +msgstr "Ezin da elementu honentzat argazkitxoa sortu" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Galleryk filma hau behar bezala bistaratzeko, filmaaren zabalera eta altuera ezagutu behar " +"ditu. Filmak kudea ditzakeen tresna-joko grafiko bat instalaturik baduzu, balio hauek " +"ezarririk egongo dira. Bestela 0 bezala ezarririk egongo dira. Ez badituzu balio zuzenak " +"ezartzen filma eraldaturik ager daiteke web nabigatzailean bistaratzean. Kontutan izan " +"balio hauek aldatzeak ez duela filma bera aldatzen beraz balio ezberdinak probatzea " +"ez da arriskutsua." + +msgid "Resized Photos" +msgstr "Tamainaz aldaturiko argazkiak" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Tamaina hauek ikusteko aukeran egongo diren jatorrizkoaren tamaina aldaketa ezberdinak dira." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Ez dago argazki mota hau onartzen duen tresna-joko grafikorik instalaturik, beraz ezin dira " +"rmaina aldatuko bertsioak sortu ez eraldatu." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Argazkitxoan jatorrizko argazkiaren zein zati ikusiko den hautatu dezakezu. Honek ez die " +"jatorrizk-irudiaren tamaina aldaketei eragingo." + +msgid "Aspect Ratio: " +msgstr "Itxura Erlazioa: " + +msgid "Crop" +msgstr "Ebaki" + +#, fuzzy +msgid "Undo Changes" +msgstr "Aldatu" + +msgid "Reset to default" +msgstr "Berrezarri lehenetsia" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Ez dago argazki mota hau onartzen duen tresna-joko grafikorik instalaturik, beraz ezin " +"argazkitxoa ebaki." + +msgid "Rotate" +msgstr "Biratu" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Argazkiari 90 graduko biratzeak bakarrik egin daitezke." + +msgid "CC 90°" +msgstr "Ezk 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "Esk 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Ez dago argazki mota hau onartzen duen tresna-joko grafikorik instalaturik, beraz ezin da " +"berau biratu." + +msgid "Scale" +msgstr "Eskala" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Jatorrizko irudia txikitu edo handitu. Gallery-k argazki bat eskalatzerakoan itxura " +"erlazioa (altuera eta zabalera) mantenduz egiten du distortsioak ekiditzeko. Argazkia hemen " +"idatzitako tamainako kutxa batetan sartzeko eskaltu egingo da." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Ez dago argazki mota hau onartzen duen tresna-joko grafikorik instalaturik, beraz ezin da " +"berau tamainaz aldatu." + +msgid "You must enter a size" +msgstr "Tamaina bat idatzi behar duzu" + +msgid "Preserve Original" +msgstr "Jatorrizkoa Mantendu" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Galleryk ez du jatorrizko argazkia eraldatzen biratu edo eskalatzean. Horren ordez argazkia " +"bikoiztu eta kopian egiten ditu aldaketak. Honek disko leku gehiago behar du baina " +"jatorrizko argazkiak hondatze aukerak ekiditzen ditu. Aukera hau ezgaitzeak edozein " +"ekintzak (biratu, eskaltu, etab) jatorrizko irudia eraldatzea egingo du." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Hau beste argazki batetara lotura bat da, beraz ezin duzu jatorrizkoa aldatu" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Hemen argazki honetara loturak daude, beraz ezin duzu jatorrizkoa aldatu" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "Jatorrizko Argazkia Mantendu" + +msgid "Modified Photo" +msgstr "Eraldaturiko Argazkia" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Biratua edo eskalatua izan den jatorrizko argazkiaren kopia bat erabiltzen ari zara. " +"Jatorrizko argazkia eskuragarria da baina ez da luzaroago erabiliko. Horren ordez egiten " +"duzun edozein aldaekta kopia batetan egingo da." + +msgid "Restore original" +msgstr "Jatorrizkoa berreskuratu" + +#, fuzzy +msgid "Choose a theme" +msgstr "Bloke bat hautatu" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "Gai hau erabili azpi-albumetan" + +msgid "Choose Theme" +msgstr "" + +#, fuzzy, c-format +msgid "Configure the %s theme" +msgstr "Unitate proba gaia" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"Album hau %s gaia erabiltzeko konfiguraturik dago. Ezarpen hauek album honetako " +"gaiera bakarrik ezarriko dira." + +#, fuzzy, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Ezarpen hauek %s gaia erabiltzen duten azpi-album guztietan erabili" + +msgid "Album Highlight" +msgstr "Albuma Nabarmendu" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Elementu hau bere guraso edo edozein aurreko album-en argazkitxoa egin dezakezu." + +msgid "Highlight for:" +msgstr "Nabarmendu hau:" + +msgid "Highlight" +msgstr "Nabarmendu" + +msgid "Move an Item" +msgstr "Elementu bat lekuz aldatu" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "elementu %d behar bezala mugitu da" +msgstr[1] "%d elementu behar bezala mugitu dira" + +msgid "This album contains no items to move." +msgstr "Album honek ez du mugitzeko elementurik." + +msgid "Source" +msgstr "Jaotorria" + +msgid "Choose the items you want to move" +msgstr "Aukeratu mugitu nahi dituzun elementuak" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"Zuk aukeratutako kokalekuak ez ditu azpi-albumak onartzen, beraz azpi-album guztiak " +"hautaketatik kanpora gelditu dira." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Zuk aukeratutako kokalekuak azpi-albumak bakarrik onartzen ditu, beraz album ez diren " +"guztiak hautaketatik kanpora gelditu dira." + +msgid "You are not allowed to move this item away from here." +msgstr "Ez duzu elementu hau hemendik mugitzeko baimenik." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Ez duzu album hau aukeratutako kokalekura mugitzeko baimenik." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Ez duzu elementu hau aukeratutako kokalekura mugitzeko baimenik." + +msgid "You cannot move an album into its own subtree." +msgstr "Ezin duzu album bat bere azpi-zuhaitz barnean ipini." + +msgid "Destination" +msgstr "Helburua" + +msgid "Choose a new album for them" +msgstr "Aukeratu album berri bat beroientzat" + +msgid "You don't have the permission to add items in this album" +msgstr "Ez duzu album honetara elementurik gehitzeko baimenik" + +msgid "No destination chosen" +msgstr "Ez da helbururik hautatu" + +msgid "Move" +msgstr "Lekuz aldatu" + +msgid "Successfully moved" +msgstr "Egoki mugitu da" + +msgid "Choose a destination album" +msgstr "Aukeratu helburu album bat" + +msgid "Permissions" +msgstr "Baimenak" + +msgid "Owner changed successfully" +msgstr "Jabea behar bezala aldatu da" + +msgid "Group permission added successfully" +msgstr "Talde baimenak behar bezala gehitu dira" + +msgid "User permission added successfully" +msgstr "Erabiltzaile baimenak behar bezala gehitu dira" + +msgid "Group permission removed successfully" +msgstr "Talde baimenak behar bezala ezabatu dira" + +msgid "User permission removed successfully" +msgstr "Erabiltzaile baimenak behar bezala ezabatu dira" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Elementu bakoitzak bere baimenak ditu. Gurasoaren baimeank aldatzeak ez du bere azpiko " +"elementuetan eragingo. Honek elementu honen gurasora sarrera iragazi baina elementu honen " +"sarrera irekia uzteko aukera, edo alderantzizkoa, ematen dizu. Baimenak erabiltzeko era " +"egokiena taldeak sortu eta baimenak taldeei ezartzea da. Orduan erabiltzaile bati baimen " +"berezi bat emateko aski duzu berau talde egokian gehitu edo ezabatzerarekin." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Erabiltzaile hau da elementu honen jabe: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Erabiltzaile hau da elementu honen jabe: %s (%s)" + +msgid "New owner" +msgstr "Jabe berria" + +msgid "Change" +msgstr "Aldatu" + +msgid "Apply new owner to sub-items" +msgstr "Aplikatu jabe berria azpi-elementuei" + +msgid "You must enter a user name" +msgstr "Erabiltzaile izen bat eman behar duzu" + +msgid "The user name you entered is invalid" +msgstr "Emandako erabiltzaile izena baliogabea da" + +msgid "Apply changes" +msgstr "Aldaketak ezarri" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Elementu honek azpi-elementuak ditu. Hemen egiten dituzun aldaketak soilik elementu honi " +"edo bere azpi-elementuei ere eragin diezakete. Kontutan izan azpi-elemtuei aldaketak " +"ezartzean hauen baimentan eragin dezaleela eta honek denbora luzea tardatu dezakela azpi-" +"elementu ugari izan ezkero. Praktikoagoa da baimenak taldeei egoztea eta gero " +"erabiltzaileak taldeei geitu edo hauetatik ezabatzea behar denean. Aldaketak lehenespen " +"bezala azpi-elemetuei ere ezarriko zaizkie." + +msgid "Apply to sub-items" +msgstr "Ezarri azpi-elementuei" + +msgid "Group Permissions" +msgstr "Taldea Baimenak" + +msgid "Group name" +msgstr "Taldea izena" + +msgid "Permission" +msgstr "Baimenak" + +msgid "New Group Permission" +msgstr "Talde Berri Baimenak" + +msgid "Add Permission" +msgstr "Baimena Gehitu" + +msgid "The permission you chose is invalid" +msgstr "Huk hautatutako baimena baliogabea da" + +msgid "The group name you entered is invalid" +msgstr "Emandako talde izena baliogabea da" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Taldeak dagoeneko baimen hori du (azpi-baimenak arakatu)" + +msgid "User Permissions" +msgstr "Erabiltzaile Baimenak" + +msgid "User name" +msgstr "Erabiltzaile-izena" + +msgid "New User Permission" +msgstr "Erabiltzaile Berri Baimenak" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Erabiltzaileak dagoeneko baimen hori du (azpi-baimenak arakatu)" + +msgid "Reorder Album" +msgstr "Albuma berrordenatu" + +msgid "Order saved successfully" +msgstr "Ordena behar bezala gorde da" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Album honek ordenatze automatikoa ezarririk du, beraz ezin duzu gauzen ordena eskuz aldatu. " +"Ordenatze automatikoa ezgaitu behar duzu aurrera jarraitzeko." + +msgid "change" +msgstr "eraldatu" + +msgid "Change the order of the items in this album." +msgstr "Album honetako elementuen ordena aldatu." + +msgid "Move this item" +msgstr "Lekuz aldatu elementu hau" + +msgid "before" +msgstr "lehenago" + +msgid "after" +msgstr "geroago" + +msgid "Reorder" +msgstr "Ordenatu" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "Gunea mantenu lanagatik ez dago martxan une honetan." + +msgid "Admin Login" +msgstr "Kudeatzaile Saio Hasiera" + +msgid "Enter a URL" +msgstr "Sartu URL bat" + +msgid "Enter some text describing the URL" +msgstr "URL-a deskribatzen duen testu bat idatzi" + +msgid "Enter an image URL" +msgstr "Sartu irudi URL bat" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "zerrenda" + +msgid "bullet" +msgstr "bulet" + +msgid "url" +msgstr "url-a" + +msgid "image" +msgstr "irudia" + +#, fuzzy +msgid "color" +msgstr "muina" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "Konfigurazioa Errorea: Gaia falta da" + +msgid "Missing Theme" +msgstr "Gaia falta da" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Orri hau %s gaia erabiltzeko konfiguraturik dago, baina instalatu gabe, bateraezina edo " +"ezgaiturik dago." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Album hau %s gaia erabiltzeko konfiguraturik dago, baina instalatu gabe dago, baterezina da " +"edo ezgaiturik dago." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Arazo hau konpontzeko %sinstalatu edo gaitu gai%s hau edo beste gai lehenetsi bat erabili." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Arazo hau konpontzeko %sgune kudeatzaile%s bezala saioa hasi eta %sgai hau instalatu edo " +"gaitu%s edo beste gai lehenetsi bat ezarri." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Arazo hau konpontzeko %salbum honetzat gai berri bat hautatu%s edo %sgai hau instalatu edo " +"gaitu%s dezakezu." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Arazo hau konpontzeko %salbum honetzat gai berri bat hautatu%s edo %sgune kudeatzaile%s " +"bezala saioa hasi eta %sgai hau instalatu edo gaitu%s egin behar duzu." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Arazo hau konpontzeko %sgune kudeatzaile%s bezala saioa hasi eta %salbum honetzat gai berri " +"bat hautatu%s edo %sgune kudeatzaile%s bezala saioa hasi eta %sgai hau instalatu edo gaitu%s " +"egin behar duzu." + +msgid "Admin Options" +msgstr "Kudeaketa Aukerak" + +msgid "User Options" +msgstr "Erabiltzailearen aukerak" + +msgid "Password changed successfully" +msgstr "Pasahitza ondo aldatu da" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Zure pasahitza sartu behar duzu zu zarela probatzeko, gero pasahitz berria bi aldiz idatzi " +"behar duzu nahaspilatzen ez zarela ziurtatzeko." + +msgid "Current Password" +msgstr "Unekoa Pasahitza" + +msgid "You must enter your current password" +msgstr "Zure pasahitza idatzu behar duzu" + +msgid "Incorrect password" +msgstr "Okerreko pasahitza" + +msgid "New Password" +msgstr "Pasahitz Berria" + +msgid "You must enter a new password" +msgstr "Pasahitz berria idatzi behar duzu" + +msgid "Verify New Password" +msgstr "Pasahitz Berria Berretsi" + +msgid "You must enter your new password again!" +msgstr "Zure pasahitza berriz sartu behar duzu!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "Zure kontuaz saioa hasi" + +msgid "Your password has been recovered, please login." +msgstr "Zure pasahitza berreskuratua izan da, mesedez saioa hasi." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "Zure saio datuak okerrak dira. Saiatu berriro." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Galdu edo ahaztutako pasahitzakpasahitz berreskurketa orriaren bidez " +"berreskuratu daitezke" + +#, c-format +msgid "Welcome, %s!" +msgstr "Ongi etorri %s!" + +msgid "Account settings saved successfully" +msgstr "Kontu ezarpenak behar bezala gorde dira" + +msgid "(required, password required for change)" +msgstr "(beharrezkoa, pasahitza beharrezkoa aldaketarentzat)" + +msgid "(suggested, password required for change)" +msgstr "(gomendatua, pasahitza beharrezkoa aldaketarentzat)" + +msgid "(required to change the e-mail address)" +msgstr "(beharrezko ePosta helbidea aldatzeko)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Zure pasahitza idatzi behar duzu ePosta helbidea aldatzeko" + +msgid "Recover a lost or forgotten password" +msgstr "Galdu edo ahaztutako pasahitza berreskuratu" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Pasahitza berreskuratzeak zure kontuak posta helbide bat ezarririk izatea eta zuk posta hori " +"eskuaratzeko aukera izatea behar du. Berrespena bat bidaliko zaizu zure konturako pasahitz " +"berri bat ezartzeko ireki beharko duzun URL helbide batekin. Gehikeriak ekiditzeko pashitz " +"berreskuraketa bat baino gehiago ez da onartuko 20 minuko aldiro. Pasahitz berreskuratze " +"berrespenak zazpi egunetarako baliozkoa izango da. Denbora honetan erabiltzen ez bada, berau " +"sistematik ezabatua izango da eta eskaera berri bat egin beharko da berreskuratzea lortzeko." + +msgid "Your recovery request has been sent!" +msgstr "Zure pasahitz berreskuratzea bidalia izan da!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Ohartu kontu batek posta helbiderik ez badu, ezingo duzu mezurik jaso eta ezingo duzu gune " +"kudeatzailearekin harremanetan jarri laguntza eske." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Kudeatzaileak %sLarrialdiko Pasahitz Berreskuraketa%s orria erabili dezake kudeatzaile " +"kontua berreskuratzeko, okerreko eposta sistema edo zerbitzari arazoak direla eta " +"berreskuratze mezua jasotzean arazoak izango balitu." + +msgid "Recover" +msgstr "Berreskuratzea" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Pasahitz berrezarpenarekin aurrera jarraitzeko, esaten duzuna zarela ziurtatu behar dugu. " +"Erarik errazena zuk beharrezko baimenak dituzula ziurtatzen duen aldaketa txiki bat egitea " +"da. Beraz Gallery direktorioan %s izeneko testu fitxategi bat sortu beharko duzu, barnean " +"ausaz sorturiko karaktere hauek eduki behar ditu:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Laguntzearren %slogin.txt fitxategiaren bertsio zuzena%s prestatu dugu. Deskarga eta kopiatu " +"ezazu instalazio direktorioan." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Bein fitxategia igo duzula, freskatu klikatu aurrera jarraitzeko." + +msgid "Emergency Administrator Password Reset" +msgstr "Larrialditarako Kudeatzaile Pasahitz Berezarketa" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "Sistema kudeatzaileak orri honen bitartez edozein kontuko pasahitza berezarri dezake." + +msgid "Authorization Confirmed" +msgstr "Baimena Berretsirik" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Zure egiatapena berretsi egin da. Mesedez idatzi zure pasahitz berria behean. Pasahitz " +"berria ezarri ondore saio hasiera orrira joan beharko zinateke." + +msgid "Recover Password for Username" +msgstr "Berreskuratu Pasahitza erabiltzaile batentzat" + +msgid "You must enter a username to recover the password for." +msgstr "Erabiltzaile izen bat idatzi behar duzu horren pasahitza berreskuratzeko." + +msgid "The username you entered does not exist." +msgstr "Zuk emandako erabiltzailea ez da existitzen." + +msgid "Authorization Incorrect" +msgstr "Okerreko Egiaztapena" + +msgid "Recovery Instructions" +msgstr "Berreskuratze argibideak" + +msgid "AuthFile Missing" +msgstr "Egiaztapen Fitxategia falta da" + +msgid "AuthFile Unreadable" +msgstr "Egiaztapen Fitxategia ezin da irakurri" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"Zure %s fitxategia ezin da irakurri. Mesedez eman Galley-ei berau irakurtzerko baimena." + +msgid "Refresh" +msgstr "Freskatu" + +msgid "This page will allow you to reset the password on your account." +msgstr "Orrialde honek zure pasahitza berezartzeko aukera ematen dizu." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Ez dago emandako erabiltzaile eta pashitzarekin abt datorren eskaerarik. Eskaera berri bat " +"egin ezazu galdutako pasahitz orrialdean" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Zuk egindako eskakizuna iraungita dago. Autorizazio berri bat eskatu pasahitz galdu orrialdean." + +msgid "Authorization missing" +msgstr "Baimena falta da" + +msgid "Username missing" +msgstr "Erabiltzaile-izena falta da" + +msgid "Submit" +msgstr "Bidali" + +#, c-format +msgid "Hello %s," +msgstr "Kaixo %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Eposta hau %s-ren pasahitz berreskuraketa bat eskatu delako jaostzen duzu. %s-ek %s-an egin " +"du eskaera" + +#, c-format +msgid "Your username is: %s" +msgstr "Zure erabiltzaile izena: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Pasahitz berreskuraketa prozesua amaitzeko mesedez, klikatu hurrengo lotura eta eskatzen den " +"infomazioa eman:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Ez baduzu berreskuraketa eposta hau eskatu, berau alde batetara utzi dezakezu." + +msgid "Thank you!" +msgstr "Mila esker!" + +msgid "guest" +msgstr "gonbidatua" + +#, c-format +msgid "display mode: %s" +msgstr "bistaratze modua: %s" + +#, c-format +msgid "Date: %s" +msgstr "Data: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Jabea: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Tamaina: elementu %d" +msgstr[1] "Tamaina: %d elementu" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(elementu %d guztira)" +msgstr[1] "(%d elementu guztira)" + +#, c-format +msgid "Views: %d" +msgstr "Ikustaldiak: %d" + +msgid "« album actions »" +msgstr "« album ekintzak »" + +msgid "« item actions »" +msgstr "« elementu ekintzak »" + +msgid "Go" +msgstr "Joan" + +msgid "Navigation" +msgstr "Nabigazioa" + +msgid "next" +msgstr "hurrengoa" + +msgid "last" +msgstr "azkena" + +#, c-format +msgid "Page %d of %d" +msgstr "%d orrialde %d-tik" + +#, c-format +msgid "%d of %d" +msgstr "%d / %d" + +msgid "first" +msgstr "lehenengoa" + +msgid "previous" +msgstr "aurrekoa" + +msgid "Page:" +msgstr "Orrialdea:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Tamaina: " + +msgid "Unknown" +msgstr "Ezezaguna" + +msgid "Full size: " +msgstr "Tamaina osoa: " + +msgid "Setting" +msgstr "Ezarpenak" + +msgid "Use Global" +msgstr "Erabili orokorra" + +msgid "Language selector" +msgstr "Hizkuntza hautatzailea" + +msgid "Item actions" +msgstr "Elementu ekintzak" + +msgid "Use dropdown menu" +msgstr "Goitibeherako menua erabili" + +msgid "Login block" +msgstr "Saio-hasiera blokea" + +msgid "Links to album/photo peers" +msgstr "Ondoko album/argazkietara loturak" diff --git a/Source/gallery2/modules/core/po/fi.po b/Source/gallery2/modules/core/po/fi.po new file mode 100644 index 0000000..ff6f61b --- /dev/null +++ b/Source/gallery2/modules/core/po/fi.po @@ -0,0 +1,3682 @@ +# $Id: fi.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators: +# - 2007 Erkka Hakkarainen +# - 2007 Jyrki Heinonen +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-10 09:46+0200\n" +"Last-Translator: Jyrki Heinonen \n" +"Language-Team: FI \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Gallery Email Test" +msgstr "Gallerian sähköpostin testaus" + +msgid "forever" +msgstr "ikuisesti" + +msgid "High Priority (Me first!)" +msgstr "Korkein Prioriteetti (Minä ensin!)" + +msgid "Low Priority (I want to share!)" +msgstr "Matalin Prioriteetti (ei niin väliä)" + +msgid "No Markup" +msgstr "Vain teksti" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML" + +msgid "Database" +msgstr "Tietokanta" + +msgid "File" +msgstr "Tiedosto" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuutti" +msgstr[1] "%d minuuttia" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d tunti" +msgstr[1] "%d tuntia" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d päivä" +msgstr[1] "%d päivää" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d viikko" +msgstr[1] "%d viikkoa" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Ei kiihdytystä" + +msgid "Partial acceleration" +msgstr "Osittainen kiihdytys" + +msgid "Full acceleration" +msgstr "Täysi kiihdytys" + +msgid "Themes" +msgstr "Teema" + +msgid "Updating Repository Index" +msgstr "Päivitetään tietovaraston indeksi" + +msgid "Scanning plugins" +msgstr "Etsitään moduuleita" + +msgid "Update Plugin List" +msgstr "Päivitä moduulilista" + +msgid "Done." +msgstr "Valmis." + +msgid "Updating Packages" +msgstr "Päivitetään paketteja" + +#, c-format +msgid "Preparing %s" +msgstr "Valmistellaan %s" + +#, c-format +msgid "Downloading %s" +msgstr "Ladataan %s" + +#, c-format +msgid "Activating %s" +msgstr "Aktivoidaan %s" + +msgid "Deleting Language Packs" +msgstr "Poistetaan kielipaketteja" + +msgid "Update completed with errors." +msgstr "Päivitys valmis virheillä." + +msgid "Update complete." +msgstr "Päivitys valmis" + +msgid "install" +msgstr "asenna" + +msgid "upgrade" +msgstr "päivitä" + +msgid "activate" +msgstr "aktivoi" + +msgid "uninstall" +msgstr "poista asennus" + +msgid "deactivate" +msgstr "deaktivoi" + +msgid "Inherit settings from parent album" +msgstr "Peri asetukset ylemmän tason albumista" + +msgid "Use these settings" +msgstr "Käytä näitä asetuksia" + +msgid "Installing the core module" +msgstr "Asennetaan Gallerian ydinmoduuli" + +msgid "key" +msgstr "avain" + +msgid "All access" +msgstr "Täydet käyttöoikeudet" + +msgid "[core] View item" +msgstr "[ydin] Näytä kohde" + +msgid "[core] View resized version(s)" +msgstr "[ydin] Näytä skaalatut versiot" + +msgid "[core] View original version" +msgstr "[ydin] Näytä alkuperäinen versio" + +msgid "[core] View all versions" +msgstr "[ydin] Näytä kaikki versiot" + +msgid "[core] Add sub-album" +msgstr "[ydin] Lisää albumi" + +msgid "[core] Add sub-item" +msgstr "[ydin] Lisää kuva" + +msgid "[core] Edit item" +msgstr "[ydin] Muokkaa kohdetta" + +msgid "[core] Change item permissions" +msgstr "[ydin] Muuta kohteen oikeuksia" + +msgid "[core] Delete item" +msgstr "[ydin] Poista kohde" + +msgid "Upgrading permissions" +msgstr "Päivittää oikeuksia" + +msgid "Deleting old permission tables" +msgstr "Poistaa vanhoja oikeus tietoja" + +msgid "Registered Users" +msgstr "Rekisteröityneet Käyttäjät" + +msgid "All Users" +msgstr "Kaikki Käyttäjät" + +msgid "Detecting broken derivatives" +msgstr "Etsii rikkoutuneita johdannaisia" + +msgid "Clearing fast-download cache" +msgstr "Tyhjentää nopean latauksen välimuistia" + +msgid "Deleting old fast-download cache" +msgstr "Tyhjennetään nopean latauksen välimuisti" + +msgid "Updating panorama items" +msgstr "Päivitetään panoraamakohteita" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimoidaan AccessSubscriberMap taulua" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Gallerian Ylläpitäjät" + +msgid "Everybody" +msgstr "Kaikki" + +msgid "Guest" +msgstr "Vieras" + +msgid "Gallery" +msgstr "Galleria" + +msgid "This is the main page of your Gallery" +msgstr "Tämä on Gallerian etusivu" + +msgid "Converting MySQL data to UTF8" +msgstr "Muutetaan MySQL tietoja UTF8 merkistöön" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Päivitetään oikeuksia (%d suoritettu, %d jäljellä)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Etsitään rikkinäisiä johdannaisia, ladataan (%d johdannaista tarkastettu, %d jäljellä)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Etsitään rikkinäisiä johdannaisia (%d johdannaista tarkastettu, %d jäljellä)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" +"Etsitään rikkinäisiä johdannaisia, tallennetaan (%d johdannaista tarkastettu, %d jäljellä)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Etsitään rikkinäisiä johdannaisia, tallennetaan kohdetta %d / %d (%d johdannaista " +"tarkastettu, %d jäljellä)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Poistaa vanhoja sessiotiedostoja (vaihe %d)" + +msgid "add items" +msgstr "lisää kuvia" + +msgid "Album created successfully." +msgstr "Albumi luotu onnistuneesti." + +msgid "add sub-album" +msgstr "lisää albumi" + +msgid "add items confirmation" +msgstr "kuvien lisäämisen varmistus" + +msgid "Base filename" +msgstr "Tiedostonimi" + +msgid "Caption" +msgstr "Kuvateksti" + +msgid "Blank" +msgstr "Tyhjä" + +msgid "From Web Browser" +msgstr "Web-selaimesta" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megatavu" +msgstr[1] "%d megatavua" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilotavu" +msgstr[1] "%d kilotavua" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Tiedoston %s koko ylittää suurimman sallitun tiedostokoon" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Tiedoston %s koko ylittää lomakkella määritetyn koon" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Tiedosto %s saatiin ladattua vain osittain" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Tiedostoa %s ei saatu ladattua. Virhe %d" + +msgid "Gallery Item Administration" +msgstr "Gallerian Kohteen Ylläpito" + +msgid "delete an item" +msgstr "poista kohde" + +msgid "delete confirmation" +msgstr "vahvista poisto" + +#, c-format +msgid "delete %s" +msgstr "poista %s" + +#, c-format +msgid "edit %s" +msgstr "muokkaa %s" + +msgid "Settings saved successfully." +msgstr "Asetukset tallennettu." + +msgid "Apply resized image settings" +msgstr "Käytä skaalattujen kuvien asetuksia" + +msgid "Preparing..." +msgstr "Valmistellaan..." + +msgid "Apply thumbnail settings" +msgstr "Käytä esikatselukuvien asetuksia" + +msgid "Rebuilding thumbnails..." +msgstr "Luodaan esikatselukuvat uudelleen..." + +msgid "Album" +msgstr "Albumi" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Käsitellään kuvaa %d/%d" + +msgid "Changes saved successfully" +msgstr "Muutokset tallennettu" + +msgid "Animation Size" +msgstr "Animaation Koko" + +msgid "edit captions" +msgstr "muuta kuvatekstiä" + +msgid "General" +msgstr "Yleinen" + +msgid "Movie Size" +msgstr "Elokuvan Koko" + +msgid "Photo" +msgstr "Kuva" + +msgid "Thumbnail cropped successfully" +msgstr "Esikatselukuva leikattu" + +msgid "Thumbnail reset successfully" +msgstr "Esikatselukuva palautettu" + +msgid "Photo 5x3" +msgstr "Kuva 5x3" + +msgid "Photo 6x4" +msgstr "Kuva 6x4" + +msgid "Photo 7x5" +msgstr "Kuva 7x5" + +msgid "Photo 10x8" +msgstr "Kuva 10x8" + +msgid "Fullscreen 4x3" +msgstr "Täysikuva 4x3" + +msgid "Widescreen 16x9" +msgstr "Laajakuva 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Neliö 1x1" + +msgid "As Image" +msgstr "Kuin Kuvassa" + +msgid "Landscape" +msgstr "Vaaka" + +msgid "Portrait" +msgstr "Pysty" + +msgid "Crop Thumbnail" +msgstr "Leikkaa Esikatselukuvaa" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Kääntäminen ja koon muutos peruttu" + +msgid "Rotated photo successfully" +msgstr "Valokuva käännetty" + +msgid "Scaled photo successfully" +msgstr "Valokuvan koko muutettu" + +msgid "Modify Photo" +msgstr "Muokkaa Kuvaa" + +msgid "Successfully changed theme" +msgstr "Teema vaihdettiin onnistuneesti" + +msgid "« default theme »" +msgstr "« oletusteema »" + +msgid "Theme" +msgstr "Teema" + +msgid "make highlight" +msgstr "laita esimerkkikuvaksi" + +msgid "move item" +msgstr "siirrä kohde" + +#, c-format +msgid "move %s" +msgstr "siirrä %s" + +#, c-format +msgid "edit %s permissions" +msgstr "muuta %s oikeuksia" + +msgid "reorder items" +msgstr "järjestä kohteet" + +msgid "Maintenance" +msgstr "Ylläpito" + +msgid "Gallery Site Administration" +msgstr "Gallerian Sivuston Ylläpito" + +msgid "site admin" +msgstr "sivuston ylläpito" + +msgid "Gallery User Administration" +msgstr "Gallerian Käyttäjän Ylläpito" + +msgid "change password" +msgstr "vaihda salasana" + +msgid "your account" +msgstr "käyttäjätilisi" + +msgid "Password Recovery" +msgstr "Salasanan Palautus" + +msgid "Core" +msgstr "Ydin" + +msgid "Gallery 2 Core Module" +msgstr "Galleria 2:n Ydinmoduuli" + +msgid "Add Items" +msgstr "Lisää Kuvia" + +msgid "Edit Album" +msgstr "Muokkaa Albumia" + +msgid "Edit Photo" +msgstr "Muokkaa Kuvaa" + +msgid "Edit Movie" +msgstr "Muokkaa Videota" + +msgid "Add Album" +msgstr "Lisää Albumi" + +msgid "Edit Permissions" +msgstr "Muuta Oikeuksia" + +msgid "View Permissions" +msgstr "Katso Oikeuksia" + +msgid "Delete Album" +msgstr "Poista Albumi" + +msgid "Delete Photo" +msgstr "Poista Kuva" + +msgid "Delete Movie" +msgstr "Poista Video" + +msgid "Move Album" +msgstr "Siirrä Albumi" + +msgid "Move Photo" +msgstr "Siirrä Kuva" + +msgid "Move Movie" +msgstr "Siirrä Video" + +msgid "Edit Captions" +msgstr "Muokkaa Kuvatekstejä" + +msgid "Make Highlight" +msgstr "Laita Esimerkkikuvaksi" + +msgid "Reorder Items" +msgstr "Järjestä Kohteet" + +msgid "Site Admin" +msgstr "Gallerian Ylläpito" + +msgid "Login" +msgstr "Kirjaudu Sisään" + +msgid "Your Account" +msgstr "Oma Käyttäjätilisi" + +msgid "Logout" +msgstr "Kirjaudu Ulos" + +msgid "Plugins" +msgstr "Modulit" + +msgid "Users" +msgstr "Käyttäjät" + +msgid "Groups" +msgstr "Ryhmät" + +msgid "Performance" +msgstr "Suorituskyky" + +msgid "Toolkit Priority" +msgstr "Työkalujen Tärkeysjärjestys" + +msgid "Graphics Toolkits" +msgstr "Grafiikkatyökalut" + +msgid "Account Settings" +msgstr "Omat Asetukset" + +msgid "Change Password" +msgstr "Vaihda Salasana" + +#, c-format +msgid "Edit %s" +msgstr "Muokkaa %s" + +#, c-format +msgid "Delete %s" +msgstr "Poista %s" + +#, c-format +msgid "Move %s" +msgstr "Siirrä %s" + +msgid "Build all thumbnails/resizes" +msgstr "Tee kaikki kuvakkeet/koon muutokset" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Varmista että tiedostot kaikille versioille (kuvakkeet yms.) on tehty ja tee uudelleen " +"rikkinäiset." + +msgid "Build All Thumbnails/Resizes" +msgstr "Tee Kaikki Kuvakkeet/Koot" + +msgid "Debug output for failed items:" +msgstr "Tulostus vianhakuun epäonnistuneille kohteille:" + +#, c-format +msgid "Checked %d items" +msgstr "%d kohdetta tarkistettu" + +#, c-format +msgid "%d items built" +msgstr "%d kohdetta tehty" + +#, c-format +msgid "%d items failed" +msgstr "%d kohdetta epäonnistui" + +msgid "Convert MySQL database to UTF8" +msgstr "Muuta MySQL tietokanta UTF8 merkistöön" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Jos loit tietokannan MySQL 3.x:llä ja päivitit sen MySQL 4.x:ksi, sinun täytyy muuttaa " +"merkistö UTF8:ksi (muuten merkeissä saattaa esiintyä sekaannuksia). Toiminto on vaaraton " +"vaikka tietokannan merkistö olisi jo muunnettu, joten sen tekeminen varmuuden vuoksi ei " +"epävarmuustilanteessa haittaa. Suoritettuasi tämän toiminnon, suorita 'Tyhjennä tietokannan " +"välimuisti' -toiminto, jotta merkistö olisi oikea myös välimuistin tiedoille." + +msgid "Database successfully converted to UTF8" +msgstr "Tietokanta muutettu UTF8 merkistöön" + +msgid "No conversion required" +msgstr "Konversiota ei tarvita" + +msgid "Delete user sessions" +msgstr "Poista käyttäjäsessiot" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "Poista kaikki \"roikkuvat\" käyttäjäsessiot niiden vanhentumisasetusten mukaisesti." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Poistettu %d sessiota." + +msgid "Delete database cache" +msgstr "Poista tietokannan välimuisti" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Galleria pitää tietokannan usein käytettyä tietoa välimuistissa levyllä parantaakseen " +"suorituskykyä. Jos muokataan tietokantaa suoraan, sinun tulisi suorittaa tämä tehtävä " +"siivotaksesi välimuistin ja pakottamaksesi Gallerian hakemaan tiedot uudelleen tietokannasta." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Hakemisto poistettu: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Ei voi poistaa hakemistoa: %s" + +msgid "Delete template cache" +msgstr "Poista template välimuisti" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Galleria kääntää template-tiedostot ja tallentaa ne tarjotaakseen paremman suorituskyvyn. " +"Jos koet ongelmia joissa lukee Smarty error, voit kokeilla tämän toiminnon " +"suorittamista. Suorita tämä toiminto myös jos poistat tiedoston local/*.tpl jotta Smarty " +"vaihtaa takaisin oletus tpl tiedostoon." + +msgid "Template cache deleted successfully" +msgstr "Template välimuisti poistettu" + +msgid "album" +msgstr "albumi" + +msgid "Animation" +msgstr "Animaatio" + +msgid "animation" +msgstr "animaatio" + +msgid "Gallery Core" +msgstr "Gallerian Ydin" + +msgid "Gallery Core Module" +msgstr "Gallerian Ydinmoduuli" + +msgid "Search descriptions" +msgstr "Haun kuvaus" + +msgid "Search keywords" +msgstr "Hakusanat" + +msgid "Search summaries" +msgstr "Haun yhteenveto" + +msgid "Search titles" +msgstr "Etsi otsikoita" + +msgid "Description" +msgstr "Kuvaus" + +msgid "Keywords" +msgstr "Hakusanat" + +msgid "Summary" +msgstr "Yhteenveto" + +msgid "Title" +msgstr "Otsikko" + +msgid "Owner" +msgstr "Omistaja" + +msgid "Dynamic Album" +msgstr "Dynaaminen albumi" + +msgid "dynamic album" +msgstr "dynaaminen albumi" + +msgid "Group" +msgstr "Ryhmä" + +msgid "group" +msgstr "ryhmä" + +msgid "Other" +msgstr "Muu" + +msgid "Movie" +msgstr "Video" + +msgid "movie" +msgstr "video" + +msgid "photo" +msgstr "kuva" + +msgid "Couldn't create repository cache path." +msgstr "Varaston (repository) välimuistin polkua ei voitu luoda." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Välimuistin alihakemistoa ei voitu luoda. Varmista, että http-palvelimella on " +"kirjoitusoikeudet kohteeseen" + +msgid "Official Release Repository" +msgstr "Virallinen julkaisu Repository" + +msgid "Experimental Repository" +msgstr "Kokeellinen (beta) Repository" + +msgid "Community Repository" +msgstr "Käyttäjien tekemä Repository" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Virhe ladattaessa indeksiä '%s':stä." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Virhe ladattaessa indeksiä hash-arvoa '%s':stä." + +msgid "Index integrity check failed." +msgstr "Indeksin ei ole kunnossa. Oikeellisuustarkistus epäonnistui." + +msgid "« default sort order »" +msgstr "« oletusjärjestys »" + +msgid "Manual sort order" +msgstr "Käsin järjestetty" + +msgid "Origination Date" +msgstr "Alkuperäisen Kuvan Päiväys" + +msgid "Creation Date" +msgstr "Luontipäivä" + +msgid "Last Changed Date" +msgstr "Viimeksi Muokattu" + +msgid "Name" +msgstr "Nimi" + +msgid "View Count" +msgstr "Katselukerrat" + +msgid "Random" +msgstr "Satunnainen" + +msgid "« no presort »" +msgstr "« ei esijärjestelyä »" + +msgid "Albums First" +msgstr "Albumin Ensimmäinen" + +msgid "Most Viewed First" +msgstr "Eniten Katsottu Ensin" + +msgid "Ascending" +msgstr "Nouseva" + +msgid "Descending" +msgstr "Laskeva" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Varmennus poistettu kunnes teet allowSessionAccess asetuksen config.php:ssa" + +msgid "This page is valid XHTML 1.0" +msgstr "Tämä sivu on käypää XHTML 1.0 -koodia." + +msgid "Donate to the Gallery project" +msgstr "Lahjoita Gallery projektille" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Arviolta aikaa jäljellä: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Muistia käytetty: %s, yhteensä: %s" + +msgid "Rows per album page" +msgstr "Rivejä albumin sivulla" + +msgid "Columns per album page" +msgstr "Sarakkeita albumin sivulla" + +msgid "Number of items to show per page" +msgstr "Kohteiden lukumäärä sivulla" + +msgid "Row height (pixels)" +msgstr "Rivin korkeus (pixeliä)" + +msgid "Column width (pixels)" +msgstr "Sarakkeen leveys (pixeliä)" + +msgid "Show image owners" +msgstr "Näytä kuvien omistajat" + +msgid "Show album owners" +msgstr "Näytä albumien omistajat" + +msgid "Show micro navigation thumbnails" +msgstr "Näytä pienet esikatselukuvat navigointiin" + +msgid "Blocks to show in the sidebar" +msgstr "Laidalla näytettävät lohkot" + +msgid "Blocks to show on album pages" +msgstr "Albumilla näytettävät lohkot" + +msgid "Blocks to show on photo pages" +msgstr "Kuvasivulla näytettävät lohkot" + +msgid "Thumbnail links in dynamic albums" +msgstr "Käytä tätä esikatselukuvan kokoa kaikissa dynaamisissa albumeissa" + +msgid "Browse dynamic album" +msgstr "Selaa dynaamista albumia" + +msgid "Jump to original album" +msgstr "Siirry alkuperäiseen albumiin" + +msgid "Separate link to original album" +msgstr "Erillinen linkki alkuperäiseen albumiin" + +msgid "View Samples" +msgstr "Katso Näytteet" + +msgid "Album Frame" +msgstr "Albumin Kehys" + +msgid "Item Frame" +msgstr "Kohteen Kehys" + +msgid "Photo Frame" +msgstr "Kuvan Kehys" + +msgid "Color Pack" +msgstr "Väripaketti" + +msgid "You must enter a number greater than 0" +msgstr "Sinun on syötettävä numero, joka on suurempi kuin nolla" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "Virhe luettaessa lohkon asetuksia. Tyhjennä selaimen välimuisti ja yritä uudelleen." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Ääni" + +msgid "audio" +msgstr "ääni" + +msgid "Archive" +msgstr "Arkistoi" + +msgid "archive" +msgstr "arkistoi" + +msgid "Document" +msgstr "Dokumentti" + +msgid "document" +msgstr "dokumentti" + +msgid "Spreadsheet" +msgstr "Taulukkolaskenta" + +msgid "spreadsheet" +msgstr "taulukkolaskenta" + +msgid "file" +msgstr "tiedosto" + +msgid "Back" +msgstr "Takaisin" + +#, c-format +msgid "Back to %s" +msgstr "Takaisin %s sivulle" + +msgid "User" +msgstr "Käyttäjä" + +msgid "user" +msgstr "käyttäjä" + +msgid "Optimize database" +msgstr "Optimoi tietokanta" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Paranna tietokannan suorituskykyä. Tulokset vaihtelevat riippuen käyttämästäsi " +"tietokannasta, mutta tämä rutiini huoltotoimenpide tekee Galleriastasi nopeamman. Erityisen " +"hyödyllinen kun olet lisännyt tai poistanut suuren määrän kohteita." + +msgid "Database optimized successfully" +msgstr "Tietokanta optimoitu" + +msgid "Reset view counts" +msgstr "Nollaa katselukerrat" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Nollaa katselukerrat kaikille albumeille ja tiedostoille. Tämä tehtävä tyhjentää myös " +"tietokannan välimuistin." + +msgid "View counts reset successfully" +msgstr "Katselukerrat nollattu" + +msgid "Refresh capture dates" +msgstr "Päivitä tallennuspäiväykset" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Päivitä kuvien ottoajat kaikille kohteille Galleriassa alkuperäisessä kuvassa olevan " +"päiväyksen mukaan (yleensä EXIF tiedoista)." + +msgid "Processing..." +msgstr "Työstää..." + +msgid "Refresh Capture Dates" +msgstr "Päivitä tallennuspäiväykset" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Käsitellään kohde %d/%d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Kohteita päivitetty %d/%d" + +msgid "System information" +msgstr "Systeemitiedot" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Ota systeemin yksityiskohdat talteen; kopioitavaksi esimerkiksi G2 tukifoorumiin." + +msgid "core" +msgstr "ydin" + +msgid "unknown" +msgstr "tuntematon" + +msgid "Gallery version" +msgstr "Gallerian versio" + +msgid "PHP version" +msgstr "PHP versio" + +msgid "Webserver" +msgstr "Palvelin" + +msgid "Toolkits" +msgstr "Työkalut" + +msgid "Acceleration" +msgstr "Kiihdytys" + +msgid "Operating system" +msgstr "Käyttöjärjestelmä" + +msgid "Default theme" +msgstr "Oletusteema" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "on käytössä" + +msgid "disabled" +msgstr "pois käytöstä" + +msgid "Locale" +msgstr "Lokaali" + +msgid "Browser" +msgstr "Selain" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Taulussa %s on %d riviä" + +msgid "Successfully saved theme settings" +msgstr "Teeman asetukset tallennettu" + +msgid "General Settings" +msgstr "Yleiset Asetukset" + +msgid "Settings saved successfully" +msgstr "Asetukset tallennettu" + +msgid "Added local upload directory successfully" +msgstr "Paikallinen kopiointihakemisto lisätty" + +msgid "Removed local upload directory successfully" +msgstr "Paikallinen kopiointihakemisto poistettu" + +msgid "Test email sent successfully" +msgstr "Kokeilusähköposti lähetetty" + +msgid "There was a problem processing your request, see below for details." +msgstr "Pyyntösi toteutuksessa oli ongelma. Katso alta yksityiskohdat." + +msgid "Error sending test email, see below for details." +msgstr "Virhe testisähköpostin lähetyksessä. Katso alta yksityiskohdat." + +msgid "Language Settings" +msgstr "Kielen Asetukset" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Valitse kielen oletusasetukset Gallerialle. Yksittäiset käyttäjät voivat ohittaa asetukset " +"henkilökohtaisilla asetuksillaan tai kielivalintalohkosta. Galleria yrittää tunnistaa " +"käyttäjän kielen automaattisesti selaimen asetuksista, jos ko. valinta on päällä." + +msgid "Default language" +msgstr "Oletuskieli" + +msgid "Check Browser Preference" +msgstr "Tarkista selainvalintasi (oletusselain)" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"HTTP-palvelimesi (Apache, IIS, tms.) ei tue lokalisointia. Ole hyvä ja pyydä Pääkäyttäjää " +"konfiguroimaan PHP uudelleen %s -määritys enabloituna." + +msgid "Date Formats" +msgstr "Päiväyksen Esitysmuodot" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Määrittele miten päiväykset ja kellonajat näytetään Galleriassa. Katso %sphp.net%s " +"saadaksesi tarkempia ohjeita formaatin määrittämiseksi. Huomaa, että jotkin formaattimerkit " +"vaihtelevat sen mukaan mikä on aktiivinen kieli." + +msgid "Style" +msgstr "Tyyli" + +msgid "Format" +msgstr "Muoto" + +msgid "Sample" +msgstr "Näyte" + +msgid "Date" +msgstr "Päiväys" + +msgid "Time" +msgstr "Aika" + +msgid "Date/Time" +msgstr "Päiväys/Aika" + +msgid "Filesystem Permissions" +msgstr "Tiedostojen Oikeudet" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Voit määritellä oletusoikeudet tiedostoille ja hakemistoille joita Galleria luo. Nämä " +"oikeudet eivät siirry jo olemassaoleville tiedostoille tai hakemistoille." + +msgid "New directories" +msgstr "Uudet hakemistot" + +msgid "New files" +msgstr "Uudet tiedostot" + +msgid "Session Settings" +msgstr "Istunnon Asetukset" + +msgid "Session Lifetime" +msgstr "Istunnon Kesto" + +msgid "Inactivity Timeout" +msgstr "Odotusajan Loppuminen" + +msgid "Embedded Markup" +msgstr "Upotetut Ulkoasukoodit" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Millaista koodausta tulisi sallia käyttäjän antamissa kentissä? Tietoturvasyistä emme " +"suosittele HTML:aa. BBCode on erityinen koodaus, joka on turvallinen ja sallii " +"yksinkertaiset muotoilut kuten tummennukset, vinotekstit, listat, kuvat ja URL:t." + +msgid "Markup" +msgstr "Ulkoasukoodaus" + +msgid "Email" +msgstr "Sähköposti" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Gallery käyttää oletusarvoisesti PHP:n sisäänrakennettua sähköpostinlähetystä, joka ei vaadi " +"konfigurointia. Anna tarvittavat tiedot alle, mukaanlukien käyttäjätiedot, jos haluat " +"käyttää SMTP sähköpostipalvelinta. Voit myös lisätä :portti palvelimen nimen perään " +"käyttääksesi jotain muuta kuin oletusporttia." + +msgid "Server" +msgstr "Palvelin" + +msgid "Username" +msgstr "Käyttäjätunnus" + +msgid "Password" +msgstr "Salasana" + +msgid "SMTP From Address" +msgstr "SMTP \"From\" Osoite" + +msgid "Invalid email address" +msgstr "Viallinen sähköpostiosoite" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Lähetä kokeiluviesti tarkistaaksesi että asetukset ovat oikein (riippumatta käytitkö PHP vai " +"SMTP asetuksia yllä). Anna alla vastaanottajan sähköpostiosoite testiviestiä varten." + +msgid "Send Email" +msgstr "Lähetä Sähköposti" + +msgid "Email Test Error" +msgstr "Virhe Sähköpostin Kokeilussa" + +msgid "Cookies" +msgstr "Evästeet" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Kun Galleria on sulautettu toiseen sovellukseen (portaaliin, sisällönhallintajärjestelmään, " +"forumiin, tms.), sinulla on kaksi vaihtoehtoa. Muiden ei tarvitse välittää evästeiden " +"asetuksista. Lue eteenpäin saadaksesi lisätietoja." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Jos Galleria on sulautettu ja jätät seuraavat kentät tyhjiksi, kaikissa kuvien latauksen " +"linkeissä (kuvien ja muiden kohteiden URL:eissa) sulautetussa galleriassa on lisätty " +"GALLERYSID merkkijono. Tämä aiheuttaa tietoturvariskin kun Galleria käyttäjät " +"alkavat kopioida kuvien URL:ia foorumeihin, vieraskirjoihin, yms. Vaihtoehto on asettaa " +"polku evästeisiin. Galleria ei silloin lisää GALLERYSID merkkijonoa URL:iin. " +"Esimerkiksi jos Galleria on osoitteessa http://www.example.com/sovellus/gallery2/ ja " +"sovellus on osoitteessa http://www.example.com/sovellus/, sinun tulee verrata polkua /" +"sovellus/gallery2/ polkuun /sovellus/. Polku evästeisiin on se osa polkua joka on sama, eli " +"tässä tapauksessa '/sovellus/'. Usein se on vain '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Evästeen vyöhyke tarvitaan vain, jos kyseessä on sulautettu Gallery-asennus ja jos " +"haluat poistaa GALLERYID -merkkijonon sulautetuista DownloadItem URL:istä. Useimmissa " +"tapauksissa kenttä \"Eväste vyöhyke\" voidaan jättää tyhjäksi. Aseta arvo vain, jos " +"Gallery ja sulautussovellus ovat tavoitettavissa vain Eri alivyöhykkeillä (subdomains). Esim. kun Gallery on osoitteessa http://photos.example.com/ ja sovellus on osoitteessa " +"http://www.example.com/, tällöin evästevyöhykkeeksi tulee asettaa example.com (siis se " +"kohdemerkkijonon osa, joka on yhteinen molemmille)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Muuttaessasi evästeiden määrityksiä, kaikkien rekisteröityneiden käyttäjien täytyy " +"tyhjentää selaimensa evästevälimuisti. Muutoi käyttäjät saattavat kokea login / logout / " +"lost session -ongelmia." + +msgid "Path" +msgstr "Polku" + +msgid "Invalid cookie path" +msgstr "Virheellinen polku evästeisiin" + +msgid "Domain" +msgstr "Verkkotunnus" + +msgid "Invalid cookie domain" +msgstr "Virheellinen evästeen kohdealue" + +msgid "Locking System" +msgstr "Lukitusjärjestelmä" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Galleria estää usean käyttäjän samanaikaiset muutokset käyttämällä lukkoja. On olemassa " +"kahdenlaisia lukkoja, kumpikin omine etuineen ja haittoineen. Tiedosto-pohjainen " +"lukitus on nopea ja tehokas, mutta ei toimi NFS tiedostojärjestelmällä ja on epäluotettava " +"Windowsilla. Tietokanta-pohjainen lukitus on hitaampi, mutta luotettavampi. Jos et " +"ole varma kumpaa sinun tulisi käyttää, suosittelemme tiedosto-lukkoja. Jos saat virheitä " +"lukoista, voit vaihtaa tietokantalukitukseen. On ok vaihtaa lukosta toiseen." + +msgid "Lock system" +msgstr "Lukkojärjestelmä" + +msgid "Helper Processes" +msgstr "Avustajaprosessit" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Osa Gallery moduleista käyttää kuvanmuokkaukseen, pakkaukseen ja muihin toimintoihin " +"erillisiä ohjelmia palvelimellasi. Nämä ohjelmat voivat olla hyvinkin laskentaintensiivisiä " +"ja voivat siten vaikuttaa palvelimesi suorituskykyyn. Määrittääksesi vaikutuksen " +"suorituskykyyn, voit säätää prioriteetin, jolla nämä ohjelmat ajetaan. Jos palvelin on " +"jaettu useamman palvelun kesken ja palvelimen muut käyttäjät valittavat " +"suorituskykyongelmista, säädä prioriteetti matalammaksi." + +msgid "Priority" +msgstr "Prioriteetti" + +msgid "Save" +msgstr "Tallenna" + +msgid "Reset" +msgstr "Tyhjennä" + +msgid "Create A New Group" +msgstr "Luo Uusi Ryhmä" + +msgid "Group Name" +msgstr "Ryhmän Nimi" + +msgid "(required)" +msgstr "(vaadittu)" + +msgid "You must enter a group name" +msgstr "Ryhmän nimi on syötettävä" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Ryhmä '%s' on jo olemassa" + +msgid "Create Group" +msgstr "Luo ryhmä" + +msgid "Cancel" +msgstr "Peruuta" + +msgid "Create A New User" +msgstr "Luo Uusi Käyttäjä" + +msgid "You must enter a username" +msgstr "Sinun tulee syöttää käyttäjätunnus" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Käyttäjänimi '%s' on jo olemassa" + +msgid "Full Name" +msgstr "Koko Nimi" + +msgid "Email Address" +msgstr "Sähköpostiosoite" + +msgid "You must enter an email address" +msgstr "Sinun tulee syöttää sähköpostiosoite" + +msgid "Language" +msgstr "Kieli" + +msgid "You must enter a password" +msgstr "Sinun on syötettävä salasana" + +msgid "Verify Password" +msgstr "Vahvista Salasana" + +msgid "You must enter the password a second time" +msgstr "Sinun tulee syöttää salasana toiseen kertaan" + +msgid "The passwords you entered did not match" +msgstr "Syöttämäsi salasanat eivät vastaa toisiaan" + +msgid "Create User" +msgstr "Luo Käyttäjä" + +msgid "Delete A Group" +msgstr "Poista Ryhmä" + +msgid "Are you sure?" +msgstr "Oletko varma?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Tämä poistaa kohteen %s peruuttamattomasti Galleriasta!" + +msgid "Delete" +msgstr "Poista" + +msgid "Delete a User" +msgstr "Poista Käyttäjä" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "Käyttäjä %s omistaa %s kohdetta." + +#, c-format +msgid "Delete user %s and..." +msgstr "Poista käyttäjä %s ja..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Kohdista uusi omistaja kaikille käyttäjän %s kohteille" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Poista kaikki käyttäjän %s kohteet ja aseta uusi omistaja kaikille jäljelle jääneille " +"albumeille joissa on sisältöä/tietoja. Kohteille, joihin %s:llä ei ole oikeuksia asetetaan " +"uusi omistaja." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Uusi omistaja (tyhjäksi jättäminen tarkoittaa yhtä Gallerian ylläpidosta):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "Käyttäjää '%s' ei ole! Kohteita ei voi siirtää olemattomalle käyttäjälle." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Uuden omistajan on oltava eri käyttäjä kuin käyttäjä jota olemme poistamassa!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Uusi omistaja ei voi olla vierailija eli anonyymi käyttäjä!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Haluatko varmasta poistaa %s peruuttamattomasti Galleriasta?" + +msgid "Edit a group" +msgstr "Muokkaa ryhmää" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Muokkaa Ryhmän '%s' Jäseniä" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Käyttäjä '%s' lisätty ryhmään '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Käyttäjä '%s' poistettu ryhmästä '%s'" +msgstr[1] "%s käyttäjää poistettu ryhmästä '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Ryhmässä on yksi käyttäjä" +msgstr[1] "Ryhmässä on %d käyttäjää" + +msgid "Members" +msgstr "Ryhmän Jäsenet" + +msgid "« first" +msgstr "« ensimmäinen" + +msgid "« back" +msgstr "« takaisin" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Näytetään sivu %d/%d" + +msgid "next »" +msgstr "seuraava »" + +msgid "last »" +msgstr "viimeinen »" + +msgid "Filter" +msgstr "Suodatin" + +msgid "Clear" +msgstr "Tyhjennä" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "yksi käyttäjä vastaa suodinta" +msgstr[1] "%d käyttäjää vastaa suotimeen" + +msgid "Remove selected" +msgstr "Poista valitut" + +msgid "You must select a user to remove." +msgstr "Sinun tulee valita poistettava käyttäjä." + +msgid "You can't remove yourself from this group." +msgstr "Et voi lisätä tai poistaa itseäsi tästä ryhmästä" + +msgid "Add Member" +msgstr "Lisää Jäsen" + +msgid "Add" +msgstr "Lisää" + +msgid "You must enter a username." +msgstr "Sinun tulee syöttää käyttäjätunnus." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Käyttäjää '%s' ei ole olemassa." + +msgid "This user already is in this group." +msgstr "Käyttäjä on jo tässä ryhmässä." + +msgid "Done" +msgstr "Valmis" + +msgid "Edit a user" +msgstr "Muokkaa käyttäjää" + +msgid "That username is already in use" +msgstr "Käyttäjätunnus on jo käytössä" + +msgid "You must enter a new username" +msgstr "Sinun tulee syöttää uusi käyttäjätunnus" + +msgid "E-mail Address" +msgstr "Sähköpostiosoite" + +msgid "(suggested)" +msgstr "(suositeltava)" + +msgid "Options" +msgstr "Valinnat" + +msgid "Lock user." +msgstr "Lukitse käyttäjätili" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Lukitut käyttäjät eivät voi muokata oman käyttäjätilinsä tietoja. (Salasana, nimi, email...)" + +msgid "Reset failed login count." +msgstr "Nollaa epäonnistuneiden kirjausyritysten laskuri." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d epäonnistunut kirjaantumisyritys sitten viimeisen onnistuneen kirjautumisen." +msgstr[1] "%d epäonnistunutta kirjaantumisyritystä sitten viimeisen onnistuneen kirjautumisen." + +msgid "Group Management" +msgstr "Ryhmien Hallinta" + +#, c-format +msgid "Removed group '%s'" +msgstr "Poistettu ryhmä '%s'" + +#, c-format +msgid "Created group '%s'" +msgstr "Luotu ryhmä '%s'" + +#, c-format +msgid "Modified group '%s'" +msgstr "Ryhmää '%s' muokattu" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Järjestelmästä löytyy yksi ryhmä." +msgstr[1] "Järjestelmästä löytyy %d ryhmää." + +msgid "Edit Group" +msgstr "Muokkaa Ryhmää" + +msgid "Edit" +msgstr "Muokkaa" + +msgid "Add/Remove Users" +msgstr "Lisää/Poista Käyttäjiä" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Ryhmää '%s' ei ole olemassa." + +msgid "You cannot delete that group" +msgstr "Et voi poistaa kyseistä ryhmää" + +msgid "You cannot edit that group's users" +msgstr "Et voi muokata kyseisen ryhmän käyttäjiä" + +msgid "Edit Group (by list)" +msgstr "Muokkaa Ryhmää (valitse listasta)" + +msgid "Action" +msgstr "Toiminto" + +msgid "edit" +msgstr "muokkaa" + +msgid "delete" +msgstr "poista" + +msgid "members" +msgstr "jäsenet" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "yksi ryhmä vastaa suodinta" +msgstr[1] "%d ryhmää vastaa suotimeen" + +msgid "System Maintenance" +msgstr "Järjestelmän Ylläpito" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Tehtävä '%s' suoritettu" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Tehtävä %s epäonnistui" + +msgid "Task name" +msgstr "Tehtävä" + +msgid "Last run" +msgstr "Viimeinen ajo" + +msgid "Success/Fail" +msgstr "Onnistui/Ei" + +msgid "Not run yet" +msgstr "Ei vielä suoritettu" + +msgid "Success" +msgstr "Onnistui" + +msgid "Failed" +msgstr "Epäonnistui" + +msgid "run now" +msgstr "suorita nyt" + +msgid "Last Run Details:" +msgstr "Edellisen Ajon Tiedot:" + +msgid "Performance Tuning" +msgstr "Suorityskyvyn säätö" + +msgid "Updated performance settings successfully" +msgstr "Suorityskykyasetuksien päivitys onnistui" + +msgid "Deleted all saved pages" +msgstr "Poista kaikki tallennetut sivut" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Jos haluat parantaa Gallerian suorituskykyä, varastoi kaikki www-sivut tietokantaan. Tämä " +"vähentää huomattavasti http- ja tietokantapalvelimen kuormaa sivuja näytettäessä. " +"Vastaavasti www-sivut, jotka näytetään saattavat olla hieman vanhentuneita. Voit pakottaa " +"sivun päivityksen selaimen \"Päivitä sivu\" toiminnolla (yleensä Shift+F5)." + +msgid "Partial Acceleration" +msgstr "Osittainen kiihdytys" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Osittainen kiihdytys lisää suorituskykyä yleensä 10-25%, mutta tällöin jotkin dynaamista " +"tietoa sisältävät lomakkeet (kuten katselukerrat) eivät päivity heti. Kaikki sisältö joka " +"näytetään lohkoissa (kuten satunnainen kuva -lohko) päivittyy kuitenkin reaaliajassa." + +msgid "Full Acceleration" +msgstr "Täysi kiihdytys" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Täysi kiihdytys antaa n. 90% lisää suorituskykyä, mutta dynaamiset tiedot (kuten satunnainen " +"kuva -lohko, sivupalkin lohkot, ostoskärryn määrä, katselukerrat, jne.) eivät päivity " +"ennenkuin välimuistiin tallennettu sivu vanhenee ja päivittyy." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Voit lisäksi määritellä, milloin välimuistiin tallennettu sivu vanhenee ja päivittyy. " +"Asettamalla pidemmän vanhenemisvälin vähennät palvelimen kuormaa, mutta samalla aika " +"ennenkuin päivitykset näkyvät käyttäjille pitenee. Pienempi päivitysväli kuormittaa " +"palvelinta enemmän, mutta käyttäjät näkevät muutokset ja lisäykset nopeammin." + +msgid "Here are some standard acceleration profiles:" +msgstr "Tässä on muutama standardi kiihdytysprofiili:" + +msgid "Medium acceleration" +msgstr "Kohtuullinen kiihdytys" + +msgid "High acceleration" +msgstr "Suuri kiihdytys" + +msgid "Guest Users" +msgstr "Vieraskäyttäjät" + +msgid "Expires after:" +msgstr "Vanhenee (jälkeen):" + +msgid "Clear Saved Pages" +msgstr "Poista tallennetut sivut" + +msgid "Status: Inactive" +msgstr "Tila: Ei Käytössä" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ deaktivoitu" + +msgid "Status: Active" +msgstr "Tila: Käytössä" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ aktivoitu" + +msgid "Status: Not Installed" +msgstr "Tila: Ei Asennettu" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ asennus poistettu" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Tila: Tarvitsee Päivityksen (Ei Käytössä)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Status: Yhteensopimaton moduuli (Ei Käytössä)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Status: Ei käytössä (Määritys vaaditaan)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ tarvitsee määrityksen" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ poistettu" + +msgid "Warning!" +msgstr "Varoitus!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Haluat poistaa asennuksen __PLUGIN__?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "Tämä poistaa myös kaikki oikeudet ja siivoaa moduulin luomat tilapäiset tiedot." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Tämän moduulin asennus poistetaan, mutta tiedostot jätetään, jotta voit uudelleenasentaa sen " +"tarvittaessa." + +msgid "Yes" +msgstr "Kyllä" + +msgid "No" +msgstr "Ei" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Haluatko poistaa __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Tämän moduulin asennus poistetaan ja sen tiedostot tuhotaan." + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "disabloi(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "ajantasalla(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "ei asennettu(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "päivitys tarvitaan(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "yhteensopimattomia(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Kohteen poistaminen kokonaan ei onnistunut __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Gallerian Modulit" + +msgid "Get More Plugins" +msgstr "Hae lisää moduleita" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Tahdotko uusia ominaisuuksia? Uudet lisäosat ovat vain yhden klikkauksen päässä. Klikkaa " +"vain %s linkkiä aloittaaksesi." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Gallerian ominaisuudet sisältyvät eri moduuleihin. Voit ladata ja asentaa moduuleita, joilla " +"saat lisää ominaisuuksia Galleriaasi, tai jos et halua käyttää jotain tiettyä moduulia, voit " +"poistaa sen käytöstä. Käyttääksesi moduulia, sinun täytyy asentaa, konfiguroida ja ottaa se " +"käyttöön." + +msgid "Plugin Name" +msgstr "Moduulin nimi" + +msgid "Installed" +msgstr "Asennettu" + +msgid "Version" +msgstr "Versio" + +msgid "Actions" +msgstr "Toiminnot" + +msgid "help" +msgstr "ohjeet" + +#, c-format +msgid "Screenshot for %s" +msgstr "Ruutukaappaus %s" + +msgid "Incompatible plugin!" +msgstr "Yhteensopimaton moduuli!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Vaadittu Ytimen Rajapinta: %s (käytettävissä: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Tarvittava moduulin rajapinta (API): %s (käytettävissä: %s)" + +msgid "configure" +msgstr "konfiguroi" + +msgid "up to date" +msgstr "ajan tasalla" + +msgid "upgrade required" +msgstr "päivitys vaaditaan" + +msgid "not installed" +msgstr "ei asennettu" + +msgid "incompatible" +msgstr "Yhteensopimaton moduuli" + +msgid "Repository" +msgstr "Varasto" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Ole hyvä ja varmista että Internet yhteytesi on kunnossa tai yritä myöhemmin uudelleen." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Moduulien %s statuskysely epäonnistui." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Paikallinen tietovarastosi oli rikki, mutta nyt se on korjattu. Lataa lisäosien lista " +"uudelleen." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Lisäosan %s lataaminen epäonnistui, koska seuraavia tiedostoja/kansioita ei pystytty " +"muokkaamaan:" + +msgid "The repository index has been successfully updated." +msgstr "Varaston (repository) indeksin päivitys onnistui." + +msgid "All plugins are already up-to-date." +msgstr "Kaikki Moduulit ovat jo ajantasalla." + +#, c-format +msgid "%s plugin updated." +msgstr "%s moduulia päivitettiin." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d kielipaketti poistettiin." +msgstr[1] "%d kielipakettia poistettiin." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "Tietoja sinusta tai Galleria-asennuksestasi ei lähetetä Galleria-palvelimille." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Lataa ja asenna uusia moduleita nopeasti ja helposti. Jos et halua pitää yksittäistä " +"moduulia voit poistaa sen Galleriasta. Moduuli Repositoryjä on useita ja voit valita mitä " +"niistä haluat käyttää (myös kaikkien yhtäaikainen käyttö onnistuu). Kun olet valinnut " +"käytettävät Repositoryt, sinun pitää aika-ajoin ladata lista saatavilla olevista " +"päivityksistä ja uusimmista moduleista. %s Hitaammilla yhteyksillä prosessi voi kestää " +"minuutin-kaksi." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Galleriaprojektin virallisesti julkaistut Moduulit (%ssuositellut%s)" + +#, c-format +msgid "last updated on %s" +msgstr "viimeksi päivitetty %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Kokeelliset (beta) Galleriaprojektin Moduulit (%shienoa uutta ominaisuutta, saattaa olla " +"bugeja%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Käyttäjien tekemät Moduulit (%skäyttö omalla vastuulla!%s)" + +msgid "Repository Error" +msgstr "Repository virhe" + +msgid "You must select at least one repository." +msgstr "Sinun tulee valita ainakin yksi repository." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Määritä Galleria" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Ennenkuin voit jatkaa, sinun täytyy muuttaa pääsyoikeuksia, jotta Galleria voi asentaa " +"moduleita puolestasi. Tämä on helppoa - suorita seuraavat komennot komentoriviltä tai ftp-" +"clientista:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Jos sinulla on hankaluuksia oikeuksien muuttamisessa, pyydä apua järjestelmän " +"pääkäyttäjältä. Kun oikeudet on asetettu, paina 'Jatka' siirtyäksesi seuraavaan vaiheeseen." + +msgid "Continue" +msgstr "Jatka" + +msgid "Download Plugin List" +msgstr "Lataa lista moduleista" + +msgid "Show Repository List" +msgstr "Näytä lista repositoryistä" + +msgid "Upgrade Gallery" +msgstr "Päivitä Galleria" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Uusi versio Gallery:stä on julkaistu, mutta et voi päivittää sitä tämän käyttöliittymän " +"kautta. Päivitys saattaa rikkoa joitakin käyttämiäsi moduleita, mutta korvaavia versioita " +"saattaa tulla tilalle. Tässä näet päivitysohjeet:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sLataa%s Gallery:n ydin" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Lue %späivitysohjeet%s ja suorita päivitys" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Yhteensopimattomat Moduulit on merkitty huutomerkillä." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Uusi ydinmoduli on julkaistu. Osa moduleista voi olla yhteensopimattomia asennetun " +"ydinmodulin kanssa ja niitä ei näytetä. Voi katsoa %skoko modulilistaa%s (yhteensopimattomat " +"kohteet on merkitty punaisilla kuvakkeilla)" + +msgid "upgrade available" +msgstr "päivitys saatavilla" + +msgid "locked" +msgstr "lukittu" + +msgid "Theme Name" +msgstr "Teeman Nimi" + +msgid "Module Name" +msgstr "Moduulin Nimi" + +msgid "Latest" +msgstr "Viimeisin" + +msgid "Locked Plugin" +msgstr "Lukittu moduuli" + +msgid "Incompatible Plugin" +msgstr "Yhteensopimaton moduuli" + +msgid "Upgrade Available" +msgstr "Päivitys saatavilla" + +msgid "download" +msgstr "lataa" + +msgid "modify" +msgstr "muokkaa" + +msgid "Upgrade All Plugins" +msgstr "Päivitä kaikki Moduulit" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery voi automaattisesti päivittää teemat ja Moduulit uusimpiin versioihin. Uusia " +"moduleita ei ladata." + +msgid "Upgrade All" +msgstr "Päivitä kaikki" + +#, c-format +msgid "Download %s" +msgstr "Lataa %s" + +msgid "No packages have been selected." +msgstr "Yhtään pakettia ei ole valittu." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Lataa paketti käyttääksesi tätä moduulia. Voit päivittää paketin valitsemalla ja lataamalla " +"uudemman version. Kielipaketit eivät ole pakollisia, lataa vain ne joita tarvitset omaan " +"Galleriaasi." + +msgid "Base Packages" +msgstr "Peruspaketit" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: versio %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: versio %s (build %s) %späivitys vanhempaan versioon ei ole sallittua!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sAsennettu%s: versio %s (build %s)" + +msgid "Language Packages" +msgstr "Kielipaketit" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%svalitse kaikki%s%spoista valinnat%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s versio %s (päivitetään versiosta %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s versio %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s versio %s (%suudempi versio %s on asennettu%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s versio %s (olemassa oleva asennus)" + +msgid "No compatible language packages available" +msgstr "Yhteensopivia kielipaketteja ei ole tarjolla" + +msgid "You must select a base package before choosing language packs." +msgstr "Sinun täytyy valita peruspaketit ennen kielipakettien valitsemista." + +msgid "Update" +msgstr "Päivitä" + +msgid "Gallery Themes" +msgstr "Gallerian Teemat" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Teema %s otettu käyttöön" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Teema %s poistettu käytöstä" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Teema %s asennettu" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Teema %s poistettu" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Teema %s päivitetty" + +msgid "Successfully saved default album settings" +msgstr "Oletusasetukset albumeille tallennettu" + +msgid "Restored theme settings" +msgstr "Teeman asetukset palautettu" + +msgid "Defaults" +msgstr "Oletukset" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "Nämä ovat oletusarvoja. Jokainen albumi voi ohittaa oletukset." + +msgid "Default sort order" +msgstr "Lajittelujärjestys" + +msgid "with" +msgstr "sekä" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Uusia albumeja" + +msgid "Save Defaults" +msgstr "Tallenna oletukset" + +#, c-format +msgid "%s Theme Settings" +msgstr "Teeman %s Asetukset" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "Nämä ovat teeman oletusarvoja. Ne voi ohittaa jokaisessa albumissa." + +msgid "Available" +msgstr "Käytettävissä" + +msgid "Choose a block" +msgstr "Valitse lohko" + +msgid "Selected" +msgstr "Valittu" + +msgid "Remove" +msgstr "Poista" + +msgid "Move Up" +msgstr "Siirrä Ylös" + +msgid "Move Down" +msgstr "Siirrä Alas" + +msgid "Parameter" +msgstr "Parametri" + +msgid "Value" +msgstr "Arvo" + +msgid "There are no settings for this theme" +msgstr "Tällä teemalla ei ole asetuksia" + +msgid "Save Theme Settings" +msgstr "Tallenna teeman asetukset" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Alla näytetyillä työkaluilla on joitain päällekkäisyyksiä toiminnoissa ja MIME-tyypeissä. " +"Luokittele työkalut täällä määrittääksesi mikä niistä suorittaa nämä toiminnot." + +msgid "Toolkit" +msgstr "Työkalut" + +msgid "Order" +msgstr "Järjestä" + +msgid "up" +msgstr "ylös" + +msgid "down" +msgstr "alas" + +msgid "User Management" +msgstr "Käyttäjien Hallinta" + +#, c-format +msgid "Removed user '%s'" +msgstr "Poistettu käyttäjä '%s'" + +#, c-format +msgid "Created user '%s'" +msgstr "Luotu käyttäjä '%s'" + +#, c-format +msgid "Modified user '%s'" +msgstr "Muokattu käyttäjä '%s'" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Järjestelmässä on yksi käyttäjä." +msgstr[1] "Järjestelmässä on %d käyttäjää." + +msgid "Edit User" +msgstr "Muokkaa Käyttäjää" + +msgid "You cannot delete yourself!" +msgstr "Et voi poistaa itseäsi!" + +msgid "You cannot delete the special guest user." +msgstr "Et voi poistaa vierailijoille varattua käyttäjää." + +msgid "Edit User (by list)" +msgstr "Muokkaa Käyttäjää (valitse listasta)" + +msgid "Locked" +msgstr "Lukittu" + +msgid "Failed Logins" +msgstr "Epäonnistuneita kirjautumisyrityksiä" + +msgid "Thumbnails" +msgstr "Kuvakkeet" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Galleria voi luoda esikatselukuvat samalla kun kuvat siirretään galleriaan, tai luoda ne kun " +"kuvia katsotaan ensimmäistä kertaa. Kummin vain, galleria luo esikatselukuvat kerran ja " +"tallentaa ne, mutta jos teet kuvat siirron aikana on albumien katselu nopeampaa " +"ensimmäisellä kerralla sen kustannuksella että kuvien siirto kestää pitempään." + +msgid "Create thumbnails now" +msgstr "Luo kuvakkeet uudelleen" + +msgid "This is a test email from Gallery2" +msgstr "Tämä on Galleria2:n kokeilusähköposti" + +msgid "Edit Conflict!" +msgstr "Muokkausristiriita!" + +msgid "Security Violation" +msgstr "Turvallisuusrike!" + +msgid "Database Error" +msgstr "Tietokantavirhe" + +msgid "Platform Error" +msgstr "Järjestelmävirhe" + +msgid "Authentication Failure" +msgstr "Autentikointi epäonnistui" + +msgid "Error" +msgstr "Virhe" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Muutostasi ei voida suorittaa koska joku muu on tehnyt ristiriitaisen muutokset samaan " +"kohteeseen. Palaa selaimessasi edelliselle sivulle, uudelleenlataa sivu ja yritä " +"tehdä muutos uudelleen." + +msgid "Go back and try again" +msgstr "Mene takaisin ja yritä uudelleen" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Jos ongelma on toistuva, kyseessä voi olla välimuistin korruptoituminen. Pyydä Gallerian " +"ylläpitäjää tyhjentämään välimuisti." + +msgid "Clear the cache" +msgstr "Tyhjennä välimuisti" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Vaihtoehtoisesti voit palata Gallerian pääsivulle ja jatkaa selailua." + +msgid "The action you attempted is not permitted." +msgstr "Yrittämääsi toimenpidettä ei sallittu." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Sessiotietojen katoamisen takia muutoksiasi ei voida tehdä. Ole hyvä ja yritä uudelleen. Jos " +"ongelma toistuu, kokeile kirjautua ulos ja takaisin sisään." + +msgid "An error has occurred while interacting with the database." +msgstr "Tapahtui virhe tietokannan kanssa." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"Tietokantavirheiden tarkkoja tietoja ei oteta talteen ellei Galleria ole laitettu " +"vianhakumoodiin config.php:ssa. Ennen kuin haet tukea tämän virheen selvittämiseksi, ole " +"hyvä ja laita päälle puskuroitu vianhakutulostus ja kokeile uudelleen. Katso pitkähkön " +"vianhakutulostuksen loppuun löytääksesi virheen yksityiskohdat." + +msgid "An error has occurred while interacting with the platform." +msgstr "Järjestelmän ja gallerian välinen virhe." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Järjestelmävirheen syy tuntematon. Yleinen syy ovat riittämättömät oikeudet tiedostoihin/" +"hakemistoihin. Syynä voivat olla palvelimen tiedostojärjestelmän muutokset, kuten tietojen " +"palautus varmuuskopiolta." + +msgid "Item not found." +msgstr "Kohdetta ei löytynyt" + +msgid "An error has occurred." +msgstr "Tapahtui virhe." + +msgid "Back to the Gallery" +msgstr "Takaisin Galleriaan" + +msgid "Error Detail" +msgstr "Virheen Yksityiskohdat" + +msgid "System Information" +msgstr "Järjestelmätiedot" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Sinulla ei ole yhtään sellaista grafiikkatyökalua käytössä, joka kykenisi käsittelemään JPEG " +"kuvia. Jos lisäät kuvia, et todennäköisesti saa yhtään esikatselukuvia." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Käy Moduulit -sivulla ottaaksesi Grafiikkatyökalut käyttöön." + +msgid "Add Sub-Album" +msgstr "Lisää Albumi" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Albumin nimi kiintolevyllä. Nimen täytyy olla yksiselitteinen, ja se saa sisältää vain " +"kirjaimia, numeroita, alleviivoja sekä tavuviivoja. Voit nimetä sen uudelleen myöhemmin." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Nimessä on merkkejä joita siihen ei hyväksytä. Anna toinen nimi." + +msgid "You must enter a name for this album." +msgstr "Sinun tulee antaa nimi tälle albumille." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Antamasi nimi on jo käytössä. Syötä uusi nimi." + +msgid "This is the album title." +msgstr "Tämä on albumin otsikko." + +msgid "This is the album summary." +msgstr "Tämä on albumin yhteenveto." + +msgid "Keywords are not visible, but are searchable." +msgstr "Hakusanat eivät näy, mutta ovat silti etsittävissä." + +msgid "This is the long description of the album." +msgstr "Albumin tarkka kuvaus." + +msgid "Create" +msgstr "Luo" + +msgid "Upload Complete" +msgstr "Lähetys Valmis" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Yksi tiedosto lisätty." +msgstr[1] "%d tiedostoa lisätty." + +msgid "No files added." +msgstr "Tiedostoja ei lisätty." + +#, c-format +msgid "Added %s" +msgstr "Lisätty %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Ei voinut lisätä tiedostoa %s" + +msgid "Add more files" +msgstr "Lisää enemmän tiedostoja" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Palvelin on asetettu estämään tiedostojen siirron palvelimelle selaimestasi tällä hetkellä. " +"Ole hyvä ja ota yhteyttä ylläpitoon avun saamiseksi." + +msgid "Upload files directly from your computer." +msgstr "Lähetä tiedostoja suoraan tietokoneeltasi." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Syötä täydellinen polku tiedostoon ja valinnainen kuvateksti allaoleviin laatikoihin." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Huom! Vältä ääkkösiä ja erikoismerkkejä tiedostonimissä! Voit lähettää jopa %s " +"kerrallaan. Jos haluat lähettää enemmän, sinun täytyy lähettää tiedostot yksitellen, käyttää " +"eri lähetystapaa, tai pyytää järjestelmän ylläpitäjää sallimaan isommat lähetykset." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Huom: Voit lähettää jopa %s kerrallaan. Yksittäinen tiedosto ei saa olla yli %s. Jos " +"haluat lähettää enemmän, sinun täytyy lähettää tiedostot yksitellen, käyttää eri " +"lähetystapaa, tai pyytää järjestelmän ylläpitäjää sallimaan isommat lähetykset." + +msgid "More Upload Boxes..." +msgstr "Lisää latauskenttiä..." + +msgid "Set item titles from:" +msgstr "Aseta kohteiden otsikot täältä:" + +msgid "Assign caption to:" +msgstr "Aseta otsake tähän:" + +msgid "No Thumbnail" +msgstr "Ei Esikatselukuvaa" + +msgid "Delete Items" +msgstr "Poista Kohde" + +msgid "No items were selected for deletion" +msgstr "Poistettavia kohteita ei oltu valittu" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Yksi kohde poistettu" +msgstr[1] "%d kohdetta poistettu" + +msgid "This album contains no items to delete" +msgstr "Albumissa ei ole poistettavia kohteita" + +msgid "Choose the items you want to delete" +msgstr "Valitse poistettavat kohteet" + +#, c-format +msgid "(page %d of %d)" +msgstr "(sivu %d/%d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Täällä valitut kohteet pysyvät valittuina kun siirryt sivujen välillä." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Yksi kohde valittu muilla sivuilla." +msgstr[1] "%d kohdetta valittu muilla sivuilla." + +msgid "(data)" +msgstr "(tiedosto)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(albumi sisältäen yhden kohteen)" +msgstr[1] "(albumi sisältäen %d kohdetta)" + +msgid "(empty album)" +msgstr "(tyhjä albumi)" + +msgid "Check All" +msgstr "Valitse Kaikki" + +msgid "Check None" +msgstr "Poista Valinnat" + +msgid "Invert" +msgstr "Vaihda Valitut" + +msgid "Previous Page" +msgstr "Edellinen Sivu" + +msgid "Next Page" +msgstr "Seuraava Sivu" + +msgid "Deletion Complete" +msgstr "Poistaminen valmis" + +msgid "Item successfully deleted" +msgstr "Kohde poistettu" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Haluatko varmasti poistaa kohteen %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Se sisältää yhden kohteen." +msgstr[1] "Se sisältää %d kohdetta." + +msgid "There is no undo!" +msgstr "Palautusta ei ole!" + +msgid "There was a problem processing your request." +msgstr "Pyyntösi toteutuksessa oli ongelma." + +msgid "Sort order" +msgstr "Lajittelujärjestys" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Tämä asettaa oletusjärjestyksen albumille, joka koskee kaikkia nykyisiä kohteita sekä vasta " +"lisättyjä kohteita." + +msgid "Apply to all subalbums" +msgstr "Käytä kaikissa albumeissa" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Jokainen kuva tarvitsee esikatselukuvan/kuvakkeen. Aseta oletuskoko (pixeliä) tähän." + +msgid "You must enter a number (greater than zero)" +msgstr "Sinun on syötettävä numero, joka on suurempi kuin nolla" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Käytä tätä esikatselukuvan kokoa kaikissa seuraavissa albumeissa" + +msgid "Resized Images" +msgstr "Skaalatut Kuvat" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "Jokaisella kohteella voi olla monta eri kokoa albumissasi. Määritä oletuskoot tähän." + +msgid "Active" +msgstr "Käytössä" + +msgid "Target Size (pixels)" +msgstr "Kohdekoko (pixeliä)" + +msgid "You must enter a valid size" +msgstr "Sinun tulee syöttää käyttökelpoinen koko" + +msgid "Use these target sizes in all subalbums" +msgstr "Käytä näitä kohdekokoja kaikissa seuraavissa albumeissa" + +msgid "Apply settings to existing items" +msgstr "Käytä asetuksia olemassa olevilla kohteilla" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Esikatselu- ja skaalattujen kuvien asetukset koskevat uusia kuvia. Jotta asetuksia " +"käytettäisiin kaikkiin albumin kuviin, rastita ko. vaihtoehto. Vaihtoehdolla seuraavien " +"albumien kuva-asetukset asetetaan uudelleen albumikohtaisten asetuksiensa mukaisiksi, jotka " +"saattavat poiketa yo. asetuksista. Kuvien uudelleenrenderointi nyt vie pidempään, mutta " +"säästää aikaa verrattuna uudelleenrenderointiin silloin kun kuvaa katsellaan ensimmäisen " +"kerran." + +msgid "Apply album setting to thumbnails" +msgstr "Käytä albumin asetuksia esikatselukuvissa" + +msgid "... and for all subalbums" +msgstr "... ja kaikissa seuraavissa albumeissa" + +msgid "Build thumbnails too" +msgstr "Luo esikatselukuvat uudelleen myös" + +msgid "Apply album setting to resized images" +msgstr "Käytä albumin asetuksia skaalatuille kuville" + +msgid "Build resizes too" +msgstr "Renderoi myös skaalatut koot" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Voidakseen näyttää tämän animaation oikein, Gallerian täytyy tietää animaation leveys ja " +"korkeus. Jos olet sinulla on asennettuna grafiikkatyökalut jotka ymmärtävät animaatioita, " +"nämä arvot voivat olla jo asetettuina. Jos ei ole, arvot voivat olla nollia. Jos et laita " +"oikeita arvoja tänne, animaatio voi näyttäytyä vääristyneenä selaimessasi. Huomaa, että " +"arvojen muutos ei muuta itse animaatiota, joten voit turvallisesti kokeilla niihin " +"eri arvoja ilman haittavaikutuksia." + +msgid "Width" +msgstr "Leveys" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Sinun on syötettävä arvo, joka on suurempi tai nolla" + +msgid "Height" +msgstr "Korkeus" + +msgid "There were errors saving some items" +msgstr "Joidenkin kohteiden tallennuksesssa tapahtui virhe" + +msgid "There were errors saving all items" +msgstr "Kaikkien kohteiden tallennuksessa tapahtui virhe" + +msgid "Successfully saved all items" +msgstr "Kaikki kohteet tallennettu" + +msgid "This album contains no items" +msgstr "Tässä albumissa ei ole kohteita" + +msgid "Saved successfully." +msgstr "Tallennettu." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "Joku muu ehti muokkaamaan tätä samaa kohdetta. Muutoksesi menetettiin." + +msgid "You do not have permissions to modify this item." +msgstr "Sinulla ei ole oikeuksia muokata tätä kohdetta." + +msgid "Save and Done" +msgstr "Tallenna ja Lopeta" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Tallenna ja Muokkaa Edellistä %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Tallenna ja Muokkaa Seuraavaa %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Kohteen nimi kiintolevyllä. Nimen täytyy olla yksiselitteinen, ja se saa sisältää vain " +"kirjaimia, numeroita, alleviivoja sekä tavuviivoja." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Nimessä on merkkejä jotka eivät kelpaa. Valitse toinen nimi." + +msgid "You must enter a name for this item." +msgstr "Sinun tulee antaa nimi tälle kohteelle." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Antamasi nimi on jo käytössä. Valitse toinen nimi." + +msgid "The title of this item." +msgstr "Kohteen otsikko." + +msgid "The root album must have a title." +msgstr "Aloitusalbumilla on oltava otsikko." + +msgid "The summary of this item." +msgstr "Tämän kohteen yhteenveto." + +msgid "This is the long description of the item." +msgstr "Kohteen tarkka kuvaus." + +#, c-format +msgid "%s Date and Time" +msgstr "%s Päiväys ja Kellonaika" + +msgid "Set the date and time when this image was captured." +msgstr "Aseta päiväys ja kellonaika jolloin kuva on otettu." + +msgid "Set the date and time to be displayed for this item." +msgstr "Aseta päiväys ja kellonaika joka näytetään kohteelle." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Aseta päiväys ja kellonaika jotka näytetään tälle %s." + +msgid "Date:" +msgstr "Päiväys:" + +msgid "Time:" +msgstr "Aika:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "Käytä alkuperäistä otoksen päiväystä ja aikaa tiedostosta (esim. Exif tiedot):" + +msgid "You must enter a valid date and time" +msgstr "Sinun tulee syöttää oikea päiväys ja aika" + +msgid "Thumbnail" +msgstr "Esikatselukuva" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Aseta esikatselukuvan koko. Esikatselukuvan pisin syrjä ei ole tätä arvoa pidempi. Jätä " +"tyhjäksi jos et halua esikatselukuvaa." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Ei ole työkalua tämän tyyppiselle kohteelle, joten emme voi tehdä tai muokata " +"esikatselukuvaa." + +msgid "Unable to create a thumbnail for this item" +msgstr "Kohteelle ei voitu luoda esikatselukuvaa" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Voidakseen näyttää tämän elokuvan oikein, Gallerian täytyy tietää elokuvan leveys ja " +"korkeus. Jos olet sinulla on asennettuna grafiikkatyökalut jotka ymmärtävät elokuvia, nämä " +"arvot voivat olla jo asetettuina. Jos ei ole, arvot voivat olla nollia. Jos et laita oikeita " +"arvoja tänne, elokuva voi näyttäytyä vääristyneenä selaimessasi. Huomaa, että arvojen muutos " +"ei muuta itse elokuvaa, joten voit turvallisesti kokeilla niihin eri arvoja ilman " +"haittavaikutuksia." + +msgid "Resized Photos" +msgstr "Skaalatut Kuvat" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "Nämä koot ovat vaihtoehtoisia skaalauksia alkuperäisestä, jotka haluat näkyville." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Ei ole työkaluja käytössä tämän tyyppisen valokuvan tukemiseksi, joten emme voi luoda tai " +"muokata eri kokoisia versioita." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Voit valita mitä osaa kuvasta käytetään esikatselukuvassa. Tällä ei ole vaikutusta eri " +"kokoisiin tai alkuperäiseen versioon kuvasta." + +msgid "Aspect Ratio: " +msgstr "Mittasuhteet: " + +msgid "Crop" +msgstr "Rajaa" + +msgid "Undo Changes" +msgstr "Peruuta muutokset" + +msgid "Reset to default" +msgstr "Palauta oletusarvo" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Käytössä ei ole grafiikkatyökaluja jotka tukevat tätä kuvatyyppiä, joten emme voi leikata " +"esikatselukuvaa." + +msgid "Rotate" +msgstr "Käännä" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Voit kääntää kuvaa vain 90 asteen pykälissä." + +msgid "CC 90°" +msgstr "90° vastapäivään" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "90° myötäpäivään" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Käytössä ei ole grafiikkatyökaluja jotka tukevat tätä kuvatyyppiä, joten emme voi kääntää " +"sitä." + +msgid "Scale" +msgstr "Muuta Kokoa" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Kutista tai suurenna alkuperäistä kuvaa. Gallerian muuttaessa kuvan kokoa alkuperäinen suhde " +"(korkeus suhteessa leveyteen) säilytetään. Kuvan kokoa muutetaan siten että se mahtuu " +"antamiesi rajojen sisään." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Käytössä ei ole grafiikkatyökaluja jotka tukevat tätä kuvatyyppiä, joten emme voi muuttaa " +"sen kokoa." + +msgid "You must enter a size" +msgstr "Sinun on annettava koko" + +msgid "Preserve Original" +msgstr "Säilytä Alkuperäinen" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Galleria ei muokkaa alkuperäistä kuvaa kun sitä käännetään ja kokoa muutetaan. Sen sijaan " +"Galleria luo kuvasta kopion, josta se muokkaa. Tämä vaatii hiukan enemmän kiintolevytilaa, " +"mutta estää alkuperäisen kuvan vahingoittumisen. Poista tämä toiminto, jos haluat että " +"Galleria työskentelee vain alkuperäisessä kuvassa." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Tämä on linkki toiseen kuvaan, joten et voi muokata alkuperäistä" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Tähän kuvaan on linkkejä, joten et voi muokata alkuperäistä" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Työkaluja alkuperäisten kohteiden muokkaukseen ei ole, joten operaatio suoritetaan vain " +"kopioihin" + +msgid "Preserve Original Photo" +msgstr "Säilytä Alkuperäinen Kuva" + +msgid "Modified Photo" +msgstr "Muokattu Kuva" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Käytössäsi on kopio jonka kokoa on muutettu tai joka on käännetty. Alkuperäinen kuva on yhä " +"saatavilla, mutta se ei ole käytössä. Tekemäsi muutokset kohdistetaan vain kopioon." + +msgid "Restore original" +msgstr "Palauta alkuperäinen" + +msgid "Choose a theme" +msgstr "Valitse teema" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Teemoilla mukautat albumien ulkonäköä ja toiminnallisuutta. Voit valita eri teeman eri " +"albumeille. Oletuksena käytetään teemaa %s, jos valintaa ei suoriteta." + +msgid "Use this theme in all subalbums" +msgstr "Käytä tätä teemaa kaikissa seuraavissa albumeissa" + +msgid "Choose Theme" +msgstr "Valitse teema" + +#, c-format +msgid "Configure the %s theme" +msgstr "Määritä %s teema" + +msgid "These settings only apply to the theme for this album." +msgstr "Näitä asetuksia käytetään vain tämän albumin teemassa." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Käytä asetuksia kaikissa seuraavissa albumeissa, jotka käyttävät teemaa %s" + +msgid "Album Highlight" +msgstr "Albumin Esimerkkikuva" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Voit tehdä tästä kohteesta albumin esikatselukuvan." + +msgid "Highlight for:" +msgstr "Esimerkkikuva albumille:" + +msgid "Highlight" +msgstr "Esimerkkikuva" + +msgid "Move an Item" +msgstr "Siirrä Kohdetta" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Yksi kohde siirretty." +msgstr[1] "%d kohdetta siirretty." + +msgid "This album contains no items to move." +msgstr "Tässä albumissä ei ole siirrettäviä kohteita." + +msgid "Source" +msgstr "Lähde" + +msgid "Choose the items you want to move" +msgstr "Valitse siirrettävät kohteet" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"Valitsemasi määränpää ei hyväksy kansioita, joten kaikki kansiot on poistettu valinnoista." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Valitsemasi määränpää hyväksyy vain kansioita, joten kaikki muut on poistettu valinnoista." + +msgid "You are not allowed to move this item away from here." +msgstr "Et voi siirtää tätä kohdetta pois täältä." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Et voi siirtää albumia valitsemaasi määränpäähän." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Et voi siirtää kuvaa valitsemaasi määränpäähän." + +msgid "You cannot move an album into its own subtree." +msgstr "Et voi siirtää albumia albumin omaan alikansioon." + +msgid "Destination" +msgstr "Määränpää" + +msgid "Choose a new album for them" +msgstr "Valitse niille uusi albumi" + +msgid "You don't have the permission to add items in this album" +msgstr "Sinulla ei ole oikeuksia lisätä kohteita tähän albumiin" + +msgid "No destination chosen" +msgstr "Määränpäätä ei ole valittu" + +msgid "Move" +msgstr "Siirrä" + +msgid "Successfully moved" +msgstr "Siirretty" + +msgid "Choose a destination album" +msgstr "Valitse albumi määränpääksi" + +msgid "Permissions" +msgstr "Oikeudet" + +msgid "Owner changed successfully" +msgstr "Omistaja vaihdettu" + +msgid "Group permission added successfully" +msgstr "Ryhmäoikeudet lisätty" + +msgid "User permission added successfully" +msgstr "Käyttäjäoikeudet lisätty" + +msgid "Group permission removed successfully" +msgstr "Ryhmäoikeudet poistettu" + +msgid "User permission removed successfully" +msgstr "Käyttäjäoikeudet poistettu" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Jokaisella kohteella on omat itsenäiset käyttöoikeudet. Kohteen oikeuksien muuttamisella ei " +"ole vaikutuksia sen sisältämiin kuviin tai albumeihin. Tämä sallii oikeuksien ja käyttämisen " +"rajoittamisen albumille, mutta täysien oikeuksien sallimisen sen sisältämiin albumeihin ja " +"kuviin tai päinvastoin. Kaikkein tehokkain tapa oikeuksien hallintaan on luoda ryhmiä ja " +"antaa oikeudet ryhmille. Halutessasi antaa tietylle käyttäjälle oikeudet voit lisätä (tai " +"poistaa) käyttäjän kyseisestä ryhmästä." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Tämän kohteen omistaja on: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Tämän kohteen omistaja on: %s (%s)" + +msgid "New owner" +msgstr "Uusi omistaja" + +msgid "Change" +msgstr "Muuta" + +msgid "Apply new owner to sub-items" +msgstr "Laita uusi omistaja myös kansioiden kohteisiin" + +msgid "You must enter a user name" +msgstr "Sinun tulee syöttää käyttäjän nimi" + +msgid "The user name you entered is invalid" +msgstr "Syöttämäsi käyttäjänimi on virheellinen" + +msgid "Apply changes" +msgstr "Vahvista muutokset" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Albumi sisältää kohteita. Tekemäsi muutokset voidaan kohdistaa vain tähän albumiin tai " +"kaikkiin sen sisältämiin kohteisiin. Huomaa että muutosten tekeminen sisällä oleviin " +"kohteisiin liittää muutoksesi kohteissa jo oleviin oikeuksiin. Muutosten tekeminen voi viedä " +"runsaasti aikaa, jos kohteita on runsaasti. On tehokkaampaa myöntää oikeuksia ryhmille ja " +"lisätä tai poistaa käyttäjä ryhmästä. Muutokset tehdään myös sisältyviin kohteisiin " +"oletusarvoisesti." + +msgid "Apply to sub-items" +msgstr "Muuta myös sisältyvät kohteet" + +msgid "Group Permissions" +msgstr "Ryhmän Oikeudet" + +msgid "Group name" +msgstr "Ryhmän nimi" + +msgid "Permission" +msgstr "Oikeus" + +msgid "New Group Permission" +msgstr "Uudet Ryhmän Oikeudet" + +msgid "Add Permission" +msgstr "Lisää Käyttöoikeus" + +msgid "The permission you chose is invalid" +msgstr "Valitsemasi oikeus on virheellinen" + +msgid "The group name you entered is invalid" +msgstr "Syöttämäsi ryhmän nimi on virheellinen" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Ryhmällä on jo tämä oikeus (ehkä se oli sisällytetty ryhmän aikaisempiin oikeuksiin)" + +msgid "User Permissions" +msgstr "Käyttäjän Oikeudet" + +msgid "User name" +msgstr "Käyttäjätunnus" + +msgid "New User Permission" +msgstr "Uudet Käyttäjän Oikeudet" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Käyttäjällä on jo tämä oikeus (sisällytetty käyttäjän oikeuksiin?)" + +msgid "Reorder Album" +msgstr "Järjestä Albumin Sisältö" + +msgid "Order saved successfully" +msgstr "Tilaus tallennettu" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Tässä albumissa on automaattinen järjestely päällä, joten et voi vaihtaa järjestystä käsin " +"ennen kuin otat automaattisen järjestelyn pois päältä." + +msgid "change" +msgstr "muuta" + +msgid "Change the order of the items in this album." +msgstr "Muokkaa tämän albumin kohteiden järjestystä." + +msgid "Move this item" +msgstr "Siirrä tämä kohde" + +msgid "before" +msgstr "ennen" + +msgid "after" +msgstr "jälkeen" + +msgid "Reorder" +msgstr "Järjestä uudelleen" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScriptin täytyy olla päällä, jotta sivu toimisi kunnolla. Näyttäisi siltä, että " +"selaimesi ei tue JavaScriptiä. Ole hyvä ja salli JavaScriptin käyttö selaimesi asetuksista " +"ja yritä uudelleen." + +msgid "Site is temporarily down for maintenance." +msgstr "Palvelin on tilapäisesti poissa käytöstä huollon takia." + +msgid "Admin Login" +msgstr "Ylläpitäjän Login" + +msgid "Enter a URL" +msgstr "Kirjoita URL" + +msgid "Enter some text describing the URL" +msgstr "Anna URL:n kuvaus" + +msgid "Enter an image URL" +msgstr "Kirjoita kuvan URL" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lista" + +msgid "bullet" +msgstr "piste" + +msgid "url" +msgstr "URL" + +msgid "image" +msgstr "kuva" + +msgid "color" +msgstr "väri" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "Voit myös käyttää värin nimi esim: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Konfigurointivirhe: Puuttuva Teema" + +msgid "Missing Theme" +msgstr "Puuttuva Teema" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Tämä sivu on asetettu käyttämään teemaa %s, mutta se on joko poissa käytöstä,sitä ei ole " +"asennettu tai se ei ole yhteensopiva." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Tämä albumi on asetettu käyttämään teemaa %s, mutta se on joko poissa käytöstä, sitä ei ole " +"asennettu tai se ei ole yhteensopiva." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Korjataksesi ongelman voit joko %sasentaa tai ottaa käyttöön tämän teeman%s tai valita " +"toisen teeman." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Korjataksesi ongelman voit %skirjautua sisään sivuston ylläpitäjänä%s ja %sasentaa tai ottaa " +"käyttöön tämän teeman%s tai valita toisen teeman." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Korjataksesi ongelman voit joko %svalita uuden teeman tälle albumille%s tai %sasentaa tai " +"ottaa käyttöön tämän teeman%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Korjataksesi tämän ongelman, voit joko %svalita albumille uuden teeman%s tai %skirjautua " +"sisään sivuston ylläpitäjänä%s ja sitten %sasentaa tai ottaa käyttöön tämän teeman%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Korjataksesi tämän ongelman, voit joko %skirjautua sisään%s ja %svalita albumille uuden " +"teeman%s tai %skirjautua sisään sivuston ylläpitäjänä%s ja sitten %sasentaa tai ottaa " +"käyttöön tämän teeman%s." + +msgid "Admin Options" +msgstr "Ylläpitäjän Valinnat" + +msgid "User Options" +msgstr "Käyttäjän Valinnat" + +msgid "Password changed successfully" +msgstr "Salasana vaihdettu" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Sinun on annettava nykyinen salasanasi todistaaksesi kuka olet, sekä uusi salasanasi kahteen " +"kertaan varmistaaksesi ettet tehnyt typo-virhettä." + +msgid "Current Password" +msgstr "Nykyinen Salasana" + +msgid "You must enter your current password" +msgstr "Sinun on syötettävä nykyinen salasana" + +msgid "Incorrect password" +msgstr "Väärä salasana" + +msgid "New Password" +msgstr "Uusi Salasana" + +msgid "You must enter a new password" +msgstr "Sinun on syötettävä uusi salasana" + +msgid "Verify New Password" +msgstr "Vahvista Uusi Salasana" + +msgid "You must enter your new password again!" +msgstr "Sinun on syötettävä uusi salasana uudelleen!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Tällä tilillä ei ole oikeuksia muuttaa tilien asetuksia. Ole hyvä ja ota yhteyttä Gallerian " +"ylläpitoon." + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "Ylläpito on lukinnut tämä tilin. Muutoksia tilin tietoihin ei voida suorittaa." + +msgid "Login to your account" +msgstr "Kirjaudu sisään" + +msgid "Your password has been recovered, please login." +msgstr "Salasanasi on palautettu, ole hyvä ja kirjaudu sisään." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Kirjautuminen näillä käyttäjätunnuksilla on tilapäisesti estetty. Syynä tähän ovat lukuisat " +"epäonnistuneet kirjautumisyritykset. Odota tilin oikeuksien palautumista tai käytä palauta salasana sivua käyttäjätilin palauttamiseen." + +msgid "Your login information is incorrect. Please try again." +msgstr "Sisäänkirjautumistietosi ovat väärät. Yritä uudelleen." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Hukatut tai unohtuneet salasanat voi palauttaa käyttämällä palauta salasana sivua" + +#, c-format +msgid "Welcome, %s!" +msgstr "Tervetuloa, %s" + +msgid "Account settings saved successfully" +msgstr "Käyttäjätilin asetukset tallennettu" + +msgid "(required, password required for change)" +msgstr "(välttämätön, muuttamiseen tarvitaan salasanaa)" + +msgid "(suggested, password required for change)" +msgstr "(suositeltu, muuttamiseen tarvitaan salasanaa)" + +msgid "(required to change the e-mail address)" +msgstr "(tarvitaan email-osoitteen muuttamiseen)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Sinun on syötettävä nykyinen salasana muuttaaksesi email-osoitetta" + +msgid "Recover a lost or forgotten password" +msgstr "Palauta hukattu tai unohtunut salasana" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Salasanasi palauttaminen edellyttää että käyttäjätilillesi on määritelty sähköpostiosoite, " +"ja että pääset lukemaan siihen tulleet sähköpostit. Sinulle lähetetään vahvistussähköposti, " +"jossa on URL sivulle jolla sinun tulee vierailla asettaakseni tilillesi uuden salasanan. " +"Väärinkäytön estämiseksi salasanan pyyntöä ei voi yrittää kuin kerran 20 minuutin aikana. " +"Salasanan palauttamiseksi tehty pyyntö on voimassa seitsemän päivää. Jos sitä ei käytetä " +"sinä aikana, se poistetaan järjestelmästä ja salasanan palauttamiseksi tarvitaan uusi pyyntö." + +msgid "Your recovery request has been sent!" +msgstr "Palautuspyyntösi on lähetetty!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Huomaa että jos käyttäjätilisi ei sisällä sähköpostiosoitetta, et voi vastaanottaa " +"sähköpostia ja sinun täytyy pyytää järjestelmän ylläpidolta apua." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Administraattorit voivat käyttää %sHätätilanteen Salasanan Palautus%s sivua palauttaakseen " +"administraattorin tilin, jos he eivät saa sähköpostiviestiä palvelimen ongelmien takia, tai " +"heillä ei ole toimivaa sähköpostiosoitetta." + +msgid "Recover" +msgstr "Palauta" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Jatkaaksesi salasanan muuttamista, täytyy varmistaa henkilöllisyytesi. Paras tapa tehdä tämä " +"on tehdä pieni muutos Galleria-hakemistoon, jolla todistetaan että sinulla on oikeudet tehdä " +"muutos. Ole hyvä ja lisää uusi tekstitiedosto %s gallery2 hakemistoon. Tiedoston täytyy " +"sisältää seuraavat satunnaisesti generoidut merkit:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Helpottaaksemme asiaa, olemme luoneet %soikean version login.txt%s -tiedostosta valmiiksi. " +"Lataa se ja lisää se hakemistoon niin homma on selvä." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Kun olet ladannut tiedoston ja lisännyt sen hakemistoon, päivitä sivu jatkaaksesi." + +msgid "Emergency Administrator Password Reset" +msgstr "Hätätilanteen Salasanan Palautus" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Tätä sivua voi käyttää vain järjestelmän ylläpitäjä vaihtaakseen kenen tahansa salasanan " +"turvallisesti." + +msgid "Authorization Confirmed" +msgstr "Auktorisointi vahvisteltu" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Auktorisointisi on vahvistettu. Kirjoita uusi salasanasi alapuolelle. Kun olet asettanut " +"salasanasi, pääset sisäänkirjautumissivulle." + +msgid "Recover Password for Username" +msgstr "Palauta Salasana Käyttäjätunnukselle" + +msgid "You must enter a username to recover the password for." +msgstr "Sinun täytyy antaa käyttäjätunnus jonka salasana palautetaan." + +msgid "The username you entered does not exist." +msgstr "Antamaasi käyttäjää ei ole." + +msgid "Authorization Incorrect" +msgstr "Auktorisointi On Väärä" + +msgid "Recovery Instructions" +msgstr "Palautusohjeet" + +msgid "AuthFile Missing" +msgstr "Autentikointitiedosto (AuthFile) puuttuu" + +msgid "AuthFile Unreadable" +msgstr "Autentikointitiedostoa (AuthFile) ei voitu lukea" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Tiedosto %s ei ole luettavissa. Ole hyvä ja anna Gallerialle lukuoikeudet tiedostoon." + +msgid "Refresh" +msgstr "Uudista" + +msgid "This page will allow you to reset the password on your account." +msgstr "Tämä sivu antaa sinun uudelleenasettaa käyttäjätilisi salasanan." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Pyyntöä joka vastaisi käyttäjätunnusta ja annettua auktorisointitietoa ei löydy. Pyydä uutta " +"salasanan palautusta hukattujen salasanojen sivulta" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Pyyntö jota käytit on mennyt vanhaksi. Pyydä uutta salasanan palautusta hukattujen salasanojen sivulta" + +msgid "Authorization missing" +msgstr "Auktorisointi puuttuu" + +msgid "Username missing" +msgstr "Käyttäjä puuttuu" + +msgid "Submit" +msgstr "Lähetä" + +#, c-format +msgid "Hello %s," +msgstr "Moi %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Saat tämän sähköpostin koska IP osoitteesta %2$s pyydettiin salasanan palautusta sivulle %1" +"$s. Pyynnön ajankohta oli %3$s." + +#, c-format +msgid "Your username is: %s" +msgstr "Käyttäjätunnuksesi on: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "Saadaksesi uuden salasanan, valitse seuraava linkki ja täytä pyydetyt tiedot:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Jos et pyytänyt tätä palautussähköpostia, voit huoleti olla välittämättä siitä." + +msgid "Thank you!" +msgstr "Kiitos!" + +msgid "guest" +msgstr "vieras" + +#, c-format +msgid "display mode: %s" +msgstr "näyttötapa: %s" + +#, c-format +msgid "Date: %s" +msgstr "Päiväys: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Omistaja: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Koko: %d kohde" +msgstr[1] "Koko: %d kohdetta" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(yhteensä %d)" +msgstr[1] "(yhteensä %d)" + +#, c-format +msgid "Views: %d" +msgstr "Katselukertoja: %d" + +msgid "« album actions »" +msgstr "« albumin toiminnot »" + +msgid "« item actions »" +msgstr "« kohteen toiminnot »" + +msgid "Go" +msgstr "Siirry" + +msgid "Navigation" +msgstr "Navigointi" + +msgid "next" +msgstr "seuraava" + +msgid "last" +msgstr "viimeinen" + +#, c-format +msgid "Page %d of %d" +msgstr "Sivu %d/%d" + +#, c-format +msgid "%d of %d" +msgstr "%d/%d" + +msgid "first" +msgstr "ensimmäinen" + +msgid "previous" +msgstr "edellinen" + +msgid "Page:" +msgstr "Sivu:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Koko: " + +msgid "Unknown" +msgstr "Tuntematon" + +msgid "Full size: " +msgstr "Täysi koko: " + +msgid "Setting" +msgstr "Asetus" + +msgid "Use Global" +msgstr "Käytä Yleistä" + +msgid "Language selector" +msgstr "Kielen valinta" + +msgid "Item actions" +msgstr "Kohteen toiminnot" + +msgid "Use dropdown menu" +msgstr "Käytä valikkoa" + +msgid "Login block" +msgstr "Sisään kirjautumisen lohko" + +msgid "Links to album/photo peers" +msgstr "Linkit albumin/kuvan vastapuoliin" diff --git a/Source/gallery2/modules/core/po/fr.po b/Source/gallery2/modules/core/po/fr.po new file mode 100644 index 0000000..30cc7b0 --- /dev/null +++ b/Source/gallery2/modules/core/po/fr.po @@ -0,0 +1,3766 @@ +# $Id: fr.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-02-25 00:00+0100\n" +"Last-Translator: Arnaud MOURONVAL \n" +"Language-Team: French \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "Gallery Email Test" +msgstr "Email de test de Gallery" + +msgid "forever" +msgstr "indéfini" + +msgid "High Priority (Me first!)" +msgstr "Priorité haute (moi d'abord !)" + +msgid "Low Priority (I want to share!)" +msgstr "Priorité basse (je partage !)" + +msgid "No Markup" +msgstr "Pas de balises" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML brut" + +msgid "Database" +msgstr "Base de données" + +msgid "File" +msgstr "Fichier" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minute" +msgstr[1] "%d minutes" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d heure" +msgstr[1] "%d heures" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d jour" +msgstr[1] "%d jours" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d semaine" +msgstr[1] "%d semaines" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Aucune accélération" + +msgid "Partial acceleration" +msgstr "Accélération partielle" + +msgid "Full acceleration" +msgstr "Accélération complète" + +msgid "Themes" +msgstr "Thèmes" + +msgid "Updating Repository Index" +msgstr "Mise à jour de l'index de l'entrepôt" + +msgid "Scanning plugins" +msgstr "Recherche et analyse des composants" + +msgid "Update Plugin List" +msgstr "Mettre à jour la liste des composants" + +msgid "Done." +msgstr "Effectué." + +msgid "Updating Packages" +msgstr "Mise à jour des packages" + +#, c-format +msgid "Preparing %s" +msgstr "Préparation de %s en cours" + +#, c-format +msgid "Downloading %s" +msgstr "Téléchargement de %s" + +#, c-format +msgid "Activating %s" +msgstr "Activation de %s" + +msgid "Deleting Language Packs" +msgstr "Suppression des packages de langue" + +msgid "Update completed with errors." +msgstr "Mise à jour terminée avec des erreurs." + +msgid "Update complete." +msgstr "Mise à jour terminée." + +msgid "install" +msgstr "installer" + +msgid "upgrade" +msgstr "mettre à jour" + +msgid "activate" +msgstr "activer" + +msgid "uninstall" +msgstr "désinstaller" + +msgid "deactivate" +msgstr "désactiver" + +msgid "Inherit settings from parent album" +msgstr "Hériter les paramètres de l'album parent" + +msgid "Use these settings" +msgstr "Utiliser ces paramètres" + +msgid "Installing the core module" +msgstr "Installation du module noyau en cours" + +msgid "key" +msgstr "clé" + +msgid "All access" +msgstr "Tous les accès" + +msgid "[core] View item" +msgstr "[noyau] Voir l'élément" + +msgid "[core] View resized version(s)" +msgstr "[noyau] Voir la/les version(s) redimenssionnée(s)" + +msgid "[core] View original version" +msgstr "[noyau] Voir la version originale" + +msgid "[core] View all versions" +msgstr "[noyau] Voir toutes les versions" + +msgid "[core] Add sub-album" +msgstr "[noyau] Ajouter un sous-album" + +msgid "[core] Add sub-item" +msgstr "[noyau] Ajouter un sous-élément" + +msgid "[core] Edit item" +msgstr "[noyau] Éditer l'élément" + +msgid "[core] Change item permissions" +msgstr "[noyau] Changer les permissions de l'élément" + +msgid "[core] Delete item" +msgstr "[noyau] Supprimer l'élément" + +msgid "Upgrading permissions" +msgstr "Mise à jour des permissions" + +msgid "Deleting old permission tables" +msgstr "Effacement des anciennes tables de permission" + +msgid "Registered Users" +msgstr "Utilisateurs enregistrés" + +msgid "All Users" +msgstr "Tous les utilisateurs" + +msgid "Detecting broken derivatives" +msgstr "Détection des images dérivées incorrectes" + +msgid "Clearing fast-download cache" +msgstr "Vidage du cache des téléchargements rapides" + +msgid "Deleting old fast-download cache" +msgstr "Suppression du vieux cache des téléchargements rapides" + +msgid "Updating panorama items" +msgstr "Mise à jour des éléments \"panoramas\"" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimisation de la table AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Adminstrateurs du site" + +msgid "Everybody" +msgstr "Tous" + +msgid "Guest" +msgstr "Invité" + +msgid "Gallery" +msgstr "Gallery" + +msgid "This is the main page of your Gallery" +msgstr "Ceci est la page principale de votre installation de Gallery" + +msgid "Converting MySQL data to UTF8" +msgstr "Conversion en cours des données MySQL en UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Mise à jour des permissions en cours (%d éléments traités, %d à faire)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" +"Détection des images dérivées corrompues, chargement (%d images dérivées vérifiées, %d " +"restantes)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Détection des images dérivées corrompues (%d images dérivées vérifiées, %d restantes)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" +"Détection des images dérivées corrompues, sauvegarde (%d images dérivées vérifiées, %d " +"restantes)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Détection des images dérivées corrompues, sauvegarde de l'élément %d de %d (%d images " +"dérivées traitées, %d restantes)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Suppression des anciens fichiers de session (itération %d)" + +msgid "add items" +msgstr "ajouter des éléments" + +msgid "Album created successfully." +msgstr "L'album a été créé avec succès." + +msgid "add sub-album" +msgstr "ajouter un sous-album" + +msgid "add items confirmation" +msgstr "confirmation d'ajout d'éléments" + +msgid "Base filename" +msgstr "Nom de fichier" + +msgid "Caption" +msgstr "Description :" + +msgid "Blank" +msgstr "Vide" + +msgid "From Web Browser" +msgstr "Depuis le navigateur Web" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d mégaoctet" +msgstr[1] "%d mégaoctets" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilooctet" +msgstr[1] "%d kilooctets" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Le fichier %s dépasse la taille maximale autorisée" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Le fichier %s dépasse la taille maximale spécifiée dans le formulaire" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Le fichier %s a été partiellement téléchargé" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Le fichier %s n'a pas été téléchargé. Erreur %d" + +msgid "Gallery Item Administration" +msgstr "Administration d'Éléments de Gallery" + +msgid "delete an item" +msgstr "supprimer un élément" + +msgid "delete confirmation" +msgstr "confirmation de suppression" + +#, c-format +msgid "delete %s" +msgstr "supprimer %s" + +#, c-format +msgid "edit %s" +msgstr "éditer %s" + +msgid "Settings saved successfully." +msgstr "Paramètres sauvegardés avec succès." + +msgid "Apply resized image settings" +msgstr "Appliquer les paramètres d'images redimensionnées" + +msgid "Preparing..." +msgstr "Préparation en cours..." + +msgid "Apply thumbnail settings" +msgstr "Appliquer les paramètres de vignette" + +msgid "Rebuilding thumbnails..." +msgstr "Regénération des vignettes..." + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Traitement de l'image %d sur %d" + +msgid "Changes saved successfully" +msgstr "Modifications sauvegardées avec succès" + +msgid "Animation Size" +msgstr "Taille de l'animation" + +msgid "edit captions" +msgstr "éditer les sous-titres" + +msgid "General" +msgstr "Général" + +msgid "Movie Size" +msgstr "Taille de film" + +msgid "Photo" +msgstr "Photo" + +msgid "Thumbnail cropped successfully" +msgstr "La vignette a été recadrée avec succès" + +msgid "Thumbnail reset successfully" +msgstr "La vignette a été réinitialisée avec succès" + +msgid "Photo 5x3" +msgstr "Photo 5x3" + +msgid "Photo 6x4" +msgstr "Photo 6x4" + +msgid "Photo 7x5" +msgstr "Photo 7x5" + +msgid "Photo 10x8" +msgstr "Photo 10x8" + +msgid "Fullscreen 4x3" +msgstr "Plein écran 4x3" + +msgid "Widescreen 16x9" +msgstr "Écran large 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinémaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Carré 1x1" + +msgid "As Image" +msgstr "En tant qu'image" + +msgid "Landscape" +msgstr "Paysage" + +msgid "Portrait" +msgstr "Portrait" + +msgid "Crop Thumbnail" +msgstr "Retailler la vignette" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Rotation et mise à l'échelle annulées avec succès." + +msgid "Rotated photo successfully" +msgstr "Photo tournée avec succès" + +msgid "Scaled photo successfully" +msgstr "Photo mise à l'échelle avec succès" + +msgid "Modify Photo" +msgstr "Modifier l'image" + +msgid "Successfully changed theme" +msgstr "Thème modifié avec succès" + +msgid "« default theme »" +msgstr "« thème par défaut »" + +msgid "Theme" +msgstr "Thème" + +msgid "make highlight" +msgstr "mettre en vignette titre" + +msgid "move item" +msgstr "déplacer l'élément" + +#, c-format +msgid "move %s" +msgstr "déplacer %s" + +#, c-format +msgid "edit %s permissions" +msgstr "éditer les permissions de %s" + +msgid "reorder items" +msgstr "réorganiser les éléments" + +msgid "Maintenance" +msgstr "Maintenance" + +msgid "Gallery Site Administration" +msgstr "Administration du site Gallery" + +msgid "site admin" +msgstr "administration du site" + +msgid "Gallery User Administration" +msgstr "Administration des utilisateurs de Gallery" + +msgid "change password" +msgstr "changer le mot de passe" + +msgid "your account" +msgstr "votre compte" + +msgid "Password Recovery" +msgstr "Récupération du mot de passe" + +msgid "Core" +msgstr "Noyau" + +msgid "Gallery 2 Core Module" +msgstr "Noyau Gallery 2" + +msgid "Add Items" +msgstr "Ajouter des éléments" + +msgid "Edit Album" +msgstr "Éditer l'album" + +msgid "Edit Photo" +msgstr "Éditer la photo" + +msgid "Edit Movie" +msgstr "Éditer le film" + +msgid "Add Album" +msgstr "Ajouter un album" + +msgid "Edit Permissions" +msgstr "Éditer les permissions" + +msgid "View Permissions" +msgstr "Voir les permissions" + +msgid "Delete Album" +msgstr "Supprimer l'album" + +msgid "Delete Photo" +msgstr "Supprimer la photo" + +msgid "Delete Movie" +msgstr "Supprimer le film" + +msgid "Move Album" +msgstr "Déplacer l'album" + +msgid "Move Photo" +msgstr "Déplacer la photo" + +msgid "Move Movie" +msgstr "Déplacer le film" + +msgid "Edit Captions" +msgstr "Éditer les sous-titres" + +msgid "Make Highlight" +msgstr "Mettre en vignette titre de l'album parent" + +msgid "Reorder Items" +msgstr "Réorganiser les éléments" + +msgid "Site Admin" +msgstr "Administration du site" + +msgid "Login" +msgstr "Connexion" + +msgid "Your Account" +msgstr "Votre compte" + +msgid "Logout" +msgstr "Déconnexion" + +msgid "Plugins" +msgstr "Composants" + +msgid "Users" +msgstr "Utilisateurs" + +msgid "Groups" +msgstr "Groupes" + +msgid "Performance" +msgstr "Performance" + +msgid "Toolkit Priority" +msgstr "Priorité des boîtes à outils" + +msgid "Graphics Toolkits" +msgstr "Boîtes à outils graphiques" + +msgid "Account Settings" +msgstr "Paramètres du compte" + +msgid "Change Password" +msgstr "Changer le mot de passe" + +#, c-format +msgid "Edit %s" +msgstr "Éditer %s" + +#, c-format +msgid "Delete %s" +msgstr "Supprimer %s" + +#, c-format +msgid "Move %s" +msgstr "Déplacer %s" + +msgid "Build all thumbnails/resizes" +msgstr "Créer toutes les vignettes et images redimensionnées" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"S'assure que les fichiers pour toutes les images dérivées (vignettes, etc.) ont été générés " +"et reconstruit les fichiers corrompus." + +msgid "Build All Thumbnails/Resizes" +msgstr "Générer toutes les vignettes et images redimensionnées" + +msgid "Debug output for failed items:" +msgstr "Sortie de débuggage pour les éléments ayant échoué :" + +#, c-format +msgid "Checked %d items" +msgstr "%d éléments vérifiés" + +#, c-format +msgid "%d items built" +msgstr "%d éléments générés" + +#, c-format +msgid "%d items failed" +msgstr "%d éléments ont échoué" + +msgid "Convert MySQL database to UTF8" +msgstr "Convertir la base de données MySQL en UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Si vous avez créé votre base de donnée avec MySQL 3.x et effectué une mise à jour vers MySQL " +"4.x, vous pouvez rencontrer des problèmes de caractères incohérents tant que vous n'aurez " +"pas converti votre base de données pour utiliser UTF8. Cette opération est sans rique si " +"votre base de données est déjà en UTF8, vous pouvez donc essayer cette opération sans " +"crainte. Après avoir exécuté cette opération, vous devrez également exécuter l'opération " +"'Effacer le cache de la base de données' pour éviter toute corruption dans votre cache." + +msgid "Database successfully converted to UTF8" +msgstr "Base de données convertie en UTF8 avec succès" + +msgid "No conversion required" +msgstr "Aucune conversion requise" + +msgid "Delete user sessions" +msgstr "Supprimer les sessions des utilisateurs" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Supprimer toutes les sessions persistantes des utilisateurs en fonction de vos paramètres " +"d'expiration des sessions." + +#, c-format +msgid "Deleted %d sessions." +msgstr "%d sessions supprimées" + +msgid "Delete database cache" +msgstr "Effacer le cache de la base de données" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery stocke des informations de la base de données fréquemment utilisés sur le disque " +"pour améliorer les performances. Si vous modifiez la base de données directement, vous devez " +"exécuter cette tâche pour vider le cache et forcer Gallery à recharger les données de la " +"base." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Répertoire %s supprimé avec succès" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Impossible de supprimer le répertoire %s" + +msgid "Delete template cache" +msgstr "Effacer le cache des templates" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compile les fichiers template et les sauvegarde pour améliorer les performances. Si " +"vous rencontrez des problèmes qui indiquent Smarty error alors vous pouvez exécuter " +"cette tâche. Veuillez aussi l'exécuter si vous supprimez un fichier local/*.tpl de telle " +"sorte que Smarty rebasculera sur le fichier .tpl par défaut." + +msgid "Template cache deleted successfully" +msgstr "Le cache des templates a été effacé avec succès." + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animation" + +msgid "animation" +msgstr "animation" + +msgid "Gallery Core" +msgstr "Noyau Gallery" + +msgid "Gallery Core Module" +msgstr "Module Noyau de Gallery" + +msgid "Search descriptions" +msgstr "Descriptions de recherche" + +msgid "Search keywords" +msgstr "Rechercher les mots clés" + +msgid "Search summaries" +msgstr "Rechercher les résumés" + +msgid "Search titles" +msgstr "Rechercher les titres" + +msgid "Description" +msgstr "Description" + +msgid "Keywords" +msgstr "Mots clés" + +msgid "Summary" +msgstr "Résumé" + +msgid "Title" +msgstr "Titre" + +msgid "Owner" +msgstr "Propriétaire" + +msgid "Dynamic Album" +msgstr "Album dynamique" + +msgid "dynamic album" +msgstr "album dynamique" + +msgid "Group" +msgstr "Groupe" + +msgid "group" +msgstr "groupe" + +msgid "Other" +msgstr "Autre" + +msgid "Movie" +msgstr "Film" + +msgid "movie" +msgstr "film" + +msgid "photo" +msgstr "photo" + +msgid "Couldn't create repository cache path." +msgstr "Impossible de créer le l'arborescence de cache." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Impossible de créer le sous-répertoire de cache. Assuez-vous que votre serveur Web dispose " +"des droits d'écriture dans ce répertoire." + +msgid "Official Release Repository" +msgstr "Entrepôt des versions officielles" + +msgid "Experimental Repository" +msgstr "Entrepôt expérimental" + +msgid "Community Repository" +msgstr "Entrepôt de la communauté" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Erreur pendant le téléchargement de l'index depuis '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Erreur pendant le téléchargement du hash de l'index depuis '%s'." + +msgid "Index integrity check failed." +msgstr "Le contrôle d'intégrité de l'index a échoué." + +msgid "« default sort order »" +msgstr "« ordre de classement par défaut »" + +msgid "Manual sort order" +msgstr "Ordre de classement manuel" + +msgid "Origination Date" +msgstr "Date origine" + +msgid "Creation Date" +msgstr "Date de création" + +msgid "Last Changed Date" +msgstr "Date de dernière modification" + +msgid "Name" +msgstr "Nom" + +msgid "View Count" +msgstr "Compteur de vues" + +msgid "Random" +msgstr "Aléatoire" + +msgid "« no presort »" +msgstr "« Aucun pré-classement »" + +msgid "Albums First" +msgstr "Albums en premier" + +msgid "Most Viewed First" +msgstr "Plus visualisé en premier" + +msgid "Ascending" +msgstr "Ascendant" + +msgid "Descending" +msgstr "Décroissant" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validation désactivée jusqu'à ce que vous activiez allowSessionAccess dans config.php." + +msgid "This page is valid XHTML 1.0" +msgstr "Cette page est conforme à la norme XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Faire un don pour le projet Gallery" + +msgid "G2.2: Double Double" +msgstr "G2.2 : Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Estimation du temps restant : %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Mémoire utilisée : %s, total : %s" + +msgid "Rows per album page" +msgstr "Lignes par page d'album" + +msgid "Columns per album page" +msgstr "Colonnes par page d'album" + +msgid "Number of items to show per page" +msgstr "Nombre d'éléments à afficher par page" + +msgid "Row height (pixels)" +msgstr "Hauteur de ligne (pixels)" + +msgid "Column width (pixels)" +msgstr "Largeur de colonne (pixels)" + +msgid "Show image owners" +msgstr "Afficher les propriétaires des images" + +msgid "Show album owners" +msgstr "Afficher les propriétaires des albums" + +msgid "Show micro navigation thumbnails" +msgstr "Afficher les micro-vignettes de navigation" + +msgid "Blocks to show in the sidebar" +msgstr "Blocs à afficher dans la barre latérale" + +msgid "Blocks to show on album pages" +msgstr "Blocs à afficher dans les pages d'album" + +msgid "Blocks to show on photo pages" +msgstr "Blocs à afficher dans les pages de photo" + +msgid "Thumbnail links in dynamic albums" +msgstr "Liens des vignettes dans les albums dynamiques" + +msgid "Browse dynamic album" +msgstr "Parcourir l'album dynamique" + +msgid "Jump to original album" +msgstr "Aller à l'album initial" + +msgid "Separate link to original album" +msgstr "Lien séparé vers l'album initial" + +msgid "View Samples" +msgstr "Afficher les exemples" + +msgid "Album Frame" +msgstr "Encadrement d'album" + +msgid "Item Frame" +msgstr "Encadrement d'élément" + +msgid "Photo Frame" +msgstr "Encadrement de photo" + +msgid "Color Pack" +msgstr "Jeu de couleurs" + +msgid "You must enter a number greater than 0" +msgstr "Vous devez saisir un nombre supérieur à zéro" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Erreur à la lecture des paramètres des blocs. Veuillez vider le cache de votre navigateur et " +"réessayer." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Archive" + +msgid "archive" +msgstr "archiver" + +msgid "Document" +msgstr "Document" + +msgid "document" +msgstr "document" + +msgid "Spreadsheet" +msgstr "Tableur" + +msgid "spreadsheet" +msgstr "tableur" + +msgid "file" +msgstr "fichier" + +msgid "Back" +msgstr "Retour" + +#, c-format +msgid "Back to %s" +msgstr "Retour vers %s" + +msgid "User" +msgstr "Utilisateur" + +msgid "user" +msgstr "utilisateur" + +msgid "Optimize database" +msgstr "Optimiser la base de données" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Améliore les performances de votre base de données. Les résultats dépendent de la base de " +"données que vous utilisez, mais cette tâche de maintenance accélère le fonctionnement de " +"Gallery. Principalement après avoir ajouté ou supprimé de nombreux éléments." + +msgid "Database optimized successfully" +msgstr "Base de données optimisée avec succès" + +msgid "Reset view counts" +msgstr "Réinitialiser les compteurs de vues" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Réinitialise les compteurs de vues de tous les albums et de tous les éléments. Cette tâche " +"vide également le cache de la base de données." + +msgid "View counts reset successfully" +msgstr "Les compteurs de vues ont été réinitialisée avec succès" + +msgid "Refresh capture dates" +msgstr "Rafraîchir les dates de capture" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Mettre à jour les dates de capture stockées dans Gallery pour tous les éléments ayant une " +"date disponible dans le fichier original (habituellement dans les données EXIF)." + +msgid "Processing..." +msgstr "Traitement..." + +msgid "Refresh Capture Dates" +msgstr "Rafraîchir les dates de capture" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Traitement de l'élément %d sur %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "%d éléments sur %d ont été mis à jour" + +msgid "System information" +msgstr "Informations sur le système" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" +"Obtenir les détails de la configuration du système. Utile pour copier/coller dans les forums " +"de support de Gallery 2." + +msgid "core" +msgstr "noyau" + +msgid "unknown" +msgstr "inconnu" + +msgid "Gallery version" +msgstr "Gallery version" + +msgid "PHP version" +msgstr "PHP version" + +msgid "Webserver" +msgstr "Serveur Web" + +msgid "Toolkits" +msgstr "Boîtes à outils" + +msgid "Acceleration" +msgstr "Accélération" + +msgid "Operating system" +msgstr "Système d'exploitation" + +msgid "Default theme" +msgstr "Thème par défaut" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "activé" + +msgid "disabled" +msgstr "désactivé" + +msgid "Locale" +msgstr "Langage" + +msgid "Browser" +msgstr "Navigateur Web" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Lignes dans la table %s = %d" + +msgid "Successfully saved theme settings" +msgstr "Paramètres du thème sauvegardés avec succès" + +msgid "General Settings" +msgstr "Paramètres généraux" + +msgid "Settings saved successfully" +msgstr "Paramètres sauvegardés avec succès" + +msgid "Added local upload directory successfully" +msgstr "Le répértoire local de téléchargement a été ajouté avec succès" + +msgid "Removed local upload directory successfully" +msgstr "Répertoire local de chargement supprimé avec succès" + +msgid "Test email sent successfully" +msgstr "Email de test envoyé avec succès" + +msgid "There was a problem processing your request, see below for details." +msgstr "" +"Il y a eu un problème lors du traitement de votre requête, veuillez consulter les détails de " +"l'erreur ci-dessous." + +msgid "Error sending test email, see below for details." +msgstr "Erreur à l'envoi de l'email de test, veuillez consulter les détails ci-dessous." + +msgid "Language Settings" +msgstr "Paramètres de langue" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Sélectionner les langues par défaut pour Gallery. Les utilisateurs peuvent remplacer ces " +"paramètres dans leurs préférences personnelles ou via le bloc de sélection de langue si il " +"est présent. Gallery essayera automatiquement de détecter la préférence de chaque " +"utilisateur si la vérification des données linguistiques du navigateur est activée." + +msgid "Default language" +msgstr "Langue par défaut" + +msgid "Check Browser Preference" +msgstr "Vérification des données linguistiques du navigateur" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Votre serveur Web ne supporte pas la localisation. Merci d'inviter votre administrateur " +"système à reconfigurer PHP avec l'option %s activée." + +msgid "Date Formats" +msgstr "Formats de date" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Spécifiez comment les dates et heures doivent être affichées par Gallery. Consultez %sphp.net" +"%s pour plus d'information sur les formats disponibles. L'affichage de certains éléments " +"peut varier en fonction de la langue active." + +msgid "Style" +msgstr "Style" + +msgid "Format" +msgstr "Format" + +msgid "Sample" +msgstr "Exemple" + +msgid "Date" +msgstr "Date" + +msgid "Time" +msgstr "Heure" + +msgid "Date/Time" +msgstr "Date et heure" + +msgid "Filesystem Permissions" +msgstr "Permissions du système de fichiers" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Vous pouvez spécifier ici les permissions par défaut pour les fichiers et répertoires que " +"Gallery crée. Ceci ne s'applique pas aux fichiers et répertoires que Gallery à déjà créé." + +msgid "New directories" +msgstr "Nouveaux répertoires" + +msgid "New files" +msgstr "Nouveaux fichiers" + +msgid "Session Settings" +msgstr "Paramètres de session" + +msgid "Session Lifetime" +msgstr "Durée de vie des sessions" + +msgid "Inactivity Timeout" +msgstr "Délai maximum d'inactivité" + +msgid "Embedded Markup" +msgstr "Balises imbriquées" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Quelles balises pouvons-nous utiliser dans les champs saisis par les utilisateurs ? " +"Pour des considérations de sécurité nous ne recommandons pas HTML brut. BBCode est un " +"langage de balise qui est sécurisé et qui permet de des mises en forme du texte telles que " +"le gras, l'italique, les listes, les images et les URL." + +msgid "Markup" +msgstr "Langage de balise" + +msgid "Email" +msgstr "E-mail" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Par défaut, Gallery utilise la fonction d'envoi de mail de PHP qui ne requiert aucune " +"configuration. Pour utiliser un serveur mail/smtp qui nécessite une authentification, " +"veuillez saisir les informations suivantes.Optionnellement, ajoutez :port après le nom du " +"serveur pour utiliser un port autre que le port par défaut." + +msgid "Server" +msgstr "Serveur" + +msgid "Username" +msgstr "Nom d'utilisateur" + +msgid "Password" +msgstr "Mot de passe" + +msgid "SMTP From Address" +msgstr "Adresse e-mail d'émission" + +msgid "Invalid email address" +msgstr "Adresse e-mail invalide" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Envoyer un email de test pour vérifier que vos paramètres sont corrects (que vous utilisiez " +"le mail PHP ou SMTP définis ci-desssus). Saisissez ci-dessous l'adresse email du " +"destinataire du message de test." + +msgid "Send Email" +msgstr "Envoyer un e-mail" + +msgid "Email Test Error" +msgstr "Erreur du test d'email" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Quand Gallery est imbriqué dans une autre application (portail, CMS, forum, etc.), alors " +"vous avez le choix entre deux options. Veuillez lire la suite pour de plus amples " +"informations." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Si Gallery est imbriqué dans une autre application et que vous laissez les champs suivants " +"vides, alors tous les liens DownloadItem (les URL des images et d'autres liens) dans Gallery " +"imbriqué auront une chaîne GALLERYSID ajoutée à l'URL ce qui présente un risque de " +"sécurité mineur quand les utilisateurs de Gallery commencent à copier/coller les URL des " +"images dans les forums, livres d'or, etc. La solution consiste à positionner le chemin " +"des cookies. Alors Gallery n'ajoutera pas le GALLERYSID aux URL imbriqués de type " +"DownloadItem URLs. Exemple : Si Gallery est accessible à http://www.example.com/" +"application/gallery2/ et que l'application englobant Gallery se trouve à http://www.example." +"com/application/, alors vous devez comparer le chemin '/application/gallery2/' au chemin '/" +"application/'. Le chemin des cookies est la partie commune aux deux chemins, c'est à dire '/" +"application/' dans le cas présent. Le plus souvent, c'est seulement '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Le domaine de cookie est lui aussi nécessire pour les installations de Gallery " +"imbriquées dans une autre application et seulement si vous désirez ne pas avoir la chaîne " +"GALLERYSID ajoutée aux URL de type DownloadItem. Dans la plupart des cas, le domaine de " +"cookie peut être laissé vide. Spécifiez le si Gallery et l'application englobante se " +"trouvent dans des sous-domaines différents. Exemple : si Gallery est accessible " +"à http://photos.exemple.com/ et l'application à http://www.exemple.com/, alors vous devez " +"définir le domaine de cookie à exemple.com (la partie commune aux deux noms de sites)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Dès que vous modifiez les paramètres des cookies, tous les utilisateurs enregistrés " +"de votre installation de Gallery doivent vider le cache des cookies de leur navigateur. Si ils ne le font pas, ils rencontrerons des problèmes à la connexion, déconnexion et " +"des pertes de session." + +msgid "Path" +msgstr "Chemin" + +msgid "Invalid cookie path" +msgstr "Chemin de cookie invalide" + +msgid "Domain" +msgstr "Domaine" + +msgid "Invalid cookie domain" +msgstr "Domaine de cookie invalide" + +msgid "Locking System" +msgstr "Système de vérouillage" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery utilise des vérous pour empêcher que des modifications simultanées interfèrent entre " +"elles. Il y deux sortes de vérous, chacune avec ses avantages et ses inconvénients. Le " +"vérouillage qui repose sur des fichiers est rapide et efficace, mais il ne fonctionne " +"pas sur les systèmes de fichier NFS et n'est pas fiable sous Windows. Le vérouillage à " +"l'aide de la base de données est plus lent, mais plus fiable. Si vous ne savez pas " +"lequel choisir, nous vous recommandons d'utiliser l'option 'Fichier'. Si vous obtenez de " +"nombreux dépassement de délais sur les vérous, vous pourrez basculer vers l'option 'Base de " +"données'. Vous pouvez passer de l'un à l'autre sans contrainte." + +msgid "Lock system" +msgstr "Système de vérouillage" + +msgid "Helper Processes" +msgstr "Processus assistants" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Certains modules de Gallery utilisent des programmes sur votre serveur afin de réaliser des " +"traitements sur les images. Ces programmes peuvent être gourmands en ressources CPU et donc " +"impacter les performances générales de votre serveur web. Vous pouvez décider d'exécuter ces " +"programmes avec une priorité moindre afin de limiter leur impact. Si vous utilisez un " +"serveur partagé et que votre hébergeur se plaint, essayez de réduire cette priorité." + +msgid "Priority" +msgstr "Priorité" + +msgid "Save" +msgstr "Sauver" + +msgid "Reset" +msgstr "Réinitialiser" + +msgid "Create A New Group" +msgstr "Créer un nouveau groupe" + +msgid "Group Name" +msgstr "Nom du groupe" + +msgid "(required)" +msgstr "(requis)" + +msgid "You must enter a group name" +msgstr "Vous devez saisir un nom de groupe" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Le groupe '%s' existe déjà" + +msgid "Create Group" +msgstr "Créer un Groupe" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Create A New User" +msgstr "Créer un nouvel utilisateur" + +msgid "You must enter a username" +msgstr "Vous devez saisir un nom d'utilisateur" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Le nom d'utilisateur '%s' existe déjà" + +msgid "Full Name" +msgstr "Nom complet" + +msgid "Email Address" +msgstr "Adresse e-mail" + +msgid "You must enter an email address" +msgstr "Vous devez saisir une addresse email" + +msgid "Language" +msgstr "Langue" + +msgid "You must enter a password" +msgstr "Vous devez saisir un mot de passe" + +msgid "Verify Password" +msgstr "Vérifier le mot de passe" + +msgid "You must enter the password a second time" +msgstr "Vous devez saisir le mot de passe une seconde fois" + +msgid "The passwords you entered did not match" +msgstr "Les mots de passe que vous avez saisis ne correspondent pas" + +msgid "Create User" +msgstr "Créer un Utilisateur" + +msgid "Delete A Group" +msgstr "Supprimer un groupe" + +msgid "Are you sure?" +msgstr "Êtes-vous certains ?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Celà va irrémédiablement supprimer %s de Gallery. Il n'y a pas d'annulation possible !" + +msgid "Delete" +msgstr "Supprimer" + +msgid "Delete a User" +msgstr "Supprimer un utilisateur" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "L'utilisateur %s est le propriétaire de %s éléments." + +#, c-format +msgid "Delete user %s and..." +msgstr "Supprimer l'utilisateur %s et..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Assigner un nouveau propriétaire pour tous les éléments de %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Supprimer tous les éléments de %s et assigner un nouveau propriétaire pour tous les albums " +"restants non vides. Les éléments pour lesquels %s n'a pas la permission de détruire seront " +"également réassigner au nouveau propriétaire." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Nouveau propriétaire (laisser vide signifie un des administrateurs) :" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"L'utilisateur '%s' n'existe pas ! Il est impossible d'attribuer des éléments à un " +"utilisateur inexistant." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "" +"Le nouveau propriétaire doit être un utilisateur différent de celui que nous allons " +"supprimer !Le nouveau propriétaire doit être un utilisateur différent de celui qui va " +"être supprimé !" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Le nouveau propriétaire ne peut pas être l'utilisateur invité/anonyme !" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Celà va irrémédiablement supprimer %s de Gallery. Il n'y a pas d'annulation " +"possible !" + +msgid "Edit a group" +msgstr "Éditer un goupe" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Éditer les membres du groupe '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Utilisateur '%s' inséré dans le groupe '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Utilisateur '%s' supprimé du groupe '%s'" +msgstr[1] "Utilisateurs '%s' supprimés du groupe '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Ce groupe contient %d utilisateur" +msgstr[1] "Ce groupe contient %d utilisateurs" + +msgid "Members" +msgstr "Membres" + +msgid "« first" +msgstr "« premier" + +msgid "« back" +msgstr "« retour" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Affichage de la page %d sur %d" + +msgid "next »" +msgstr "suivant »" + +msgid "last »" +msgstr "dernier »" + +msgid "Filter" +msgstr "Filtrer" + +msgid "Clear" +msgstr "Vider" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d utilisateur correpond à vos critères" +msgstr[1] "%d utilisateurs correpondent à vos critères" + +msgid "Remove selected" +msgstr "Supprimer la sélection" + +msgid "You must select a user to remove." +msgstr "Vous devez sélectionner un utilisateur à supprimer." + +msgid "You can't remove yourself from this group." +msgstr "Vous ne pouvez pas vous retirer de ce groupe" + +msgid "Add Member" +msgstr "Ajouter un membre" + +msgid "Add" +msgstr "Ajouter" + +msgid "You must enter a username." +msgstr "Vous devez saisir un nom d'utilisateur." + +#, c-format +msgid "User '%s' does not exist." +msgstr "L'utilisateur '%s' n'existe pas." + +msgid "This user already is in this group." +msgstr "Cet utilisateur est déjà dans ce groupe." + +msgid "Done" +msgstr "Effectué" + +msgid "Edit a user" +msgstr "Éditer un utilisateur" + +msgid "That username is already in use" +msgstr "Ce nom d'utilisateur existe déjà" + +msgid "You must enter a new username" +msgstr "Vous devez saisir un nouveau nom d'utilisateur" + +msgid "E-mail Address" +msgstr "Adresse e-mail" + +msgid "(suggested)" +msgstr "(suggéré)" + +msgid "Options" +msgstr "Options" + +msgid "Lock user." +msgstr "Vérouiller l'utilisateur." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Les utilisateurs vérouillés ne peuvent pas éditer les informations liées à leur compte (mot " +"de passe, nom, adresse de courrier électronique, etc.)" + +msgid "Reset failed login count." +msgstr "Réinitialiser les compteurs de tentatives d'authentification." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +"%d tentative d'authentification en échec depuis votre dernière authentification réussie." +msgstr[1] "" +"%d tentatives d'authentification en échec depuis votre dernière authentification réussie." + +msgid "Group Management" +msgstr "Gestion des groupes" + +#, c-format +msgid "Removed group '%s'" +msgstr "Groupe '%s' supprimé" + +#, c-format +msgid "Created group '%s'" +msgstr "Groupe '%s' créé" + +#, c-format +msgid "Modified group '%s'" +msgstr "Groupe '%s' modifié" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Il y a %d groupe sur le système." +msgstr[1] "Il y a %d groupes sur le système." + +msgid "Edit Group" +msgstr "Éditer un goupe" + +msgid "Edit" +msgstr "Éditer" + +msgid "Add/Remove Users" +msgstr "Ajouter/Supprimer des utilisateurs" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Le groupe '%s' n'existe pas." + +msgid "You cannot delete that group" +msgstr "Vous ne pouvez pas supprimer ce goupe" + +msgid "You cannot edit that group's users" +msgstr "Vous ne pouvez pas éditer les utilisateurs de ce groupe" + +msgid "Edit Group (by list)" +msgstr "Éditer un Groupe (par liste)" + +msgid "Action" +msgstr "Opération" + +msgid "edit" +msgstr "éditer" + +msgid "delete" +msgstr "supprimer" + +msgid "members" +msgstr "membres" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d groupe correspond à vos critères" +msgstr[1] "%d groupes correspondent à vos critères" + +msgid "System Maintenance" +msgstr "Maintenance du système" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Tâche %s complétée avec succès" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "La tâche %s a échoué." + +msgid "Task name" +msgstr "Nom de tâche" + +msgid "Last run" +msgstr "Dernière exécution" + +msgid "Success/Fail" +msgstr "Succès/Échec" + +msgid "Not run yet" +msgstr "Jamais (aucune exécution)" + +msgid "Success" +msgstr "Succès" + +msgid "Failed" +msgstr "Échec" + +msgid "run now" +msgstr "exécuter maintenant" + +msgid "Last Run Details:" +msgstr "Résultat de la dernière exécution :" + +msgid "Performance Tuning" +msgstr "Réglages de performance" + +msgid "Updated performance settings successfully" +msgstr "Paramètres de performance mis à jour avec succès" + +msgid "Deleted all saved pages" +msgstr "Supprimer toutes les pages sauvegardées" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Améliorez les performances de Gallery en stockant des pages complètes dans la base de " +"données. Ceci peut considérablement réduire les ressources utilisées au niveau du serveur " +"web et de la base de données pour afficher une page. La contrepartie est que les pages " +"affichées accusent un léger retard par rapport aux données. Cependant, il est toujours " +"possible d'obtenir la version la plus récente en forçant le navigateur à raffraîchir la page " +"(habituellement en appuyant sur la touche shift et en cliquant sur le bouton de " +"raffraîchissement)." + +msgid "Partial Acceleration" +msgstr "Accélération partielle" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"L'accélération partielle procure une amélioration des performances de l'ordre de 10 à 25%. " +"Cependant, certaines données dynamiques telles que les compteurs, ne sont pas immédiatement " +"mises à jour. Tous les contenus qui apparaissent dans des blocs (bloc image aléatoire, etc.) " +"seront toujours mis à jour." + +msgid "Full Acceleration" +msgstr "Accélération complète" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"L'accélération complète procure une amélioration des performances de l'ordre de 90%. " +"Cependant aucune donnée dynamique (bloc d'image aléatoire, nombre d'éléments dans le panier, " +"etc.) ne sont mis à jour avant que la page sauvegardée n'expire." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Vous pouvez également spécifier quand les pages sauvegardées expirent. Choisir une durée de " +"validité longue permet de réduire la charge sur votre serveur, mais allonge également la " +"durée pendant laquelle les utilisateurs ne verront pas de modification. Réduire cette durée " +"permet d'afficher plus régulièrement des données à jour, mais augment la charge de votre " +"serveur." + +msgid "Here are some standard acceleration profiles:" +msgstr "Voici quelques profils standards d'accélération :" + +msgid "Medium acceleration" +msgstr "Accélération moyenne" + +msgid "High acceleration" +msgstr "Accélération forte" + +msgid "Guest Users" +msgstr "Utilisateurs invités" + +msgid "Expires after:" +msgstr "Expire après :" + +msgid "Clear Saved Pages" +msgstr "Effacer les pages sauvegardées" + +msgid "Status: Inactive" +msgstr "Statut : Inactif" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ désactivé" + +msgid "Status: Active" +msgstr "Statut : Actif" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ activé" + +msgid "Status: Not Installed" +msgstr "Statut : Non installé" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ désinstallé" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Statut : Mise à jour requise (inactif)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Statut : Composant incompatible (inactif)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Statut : Inactif (configuration requise)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ a besoin d'être configuré" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ supprimé" + +msgid "Warning!" +msgstr "Attention !" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Voulez-vous vraiment désinstaller __PLUGIN__ ?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Cette opération va également supprimer toutes les permissions et toutes les données crées " +"par ce module." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Ce composant sera désinstallé, mais ses fichiers seront gardés afin que vous puissiez le " +"réinstaller." + +msgid "Yes" +msgstr "Oui" + +msgid "No" +msgstr "Non" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Voulez-vous vraiment supprimer __PLUGIN__ ?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Ce composant sera désinstallé et tous ses fichiers seront supprimés." + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "désactivé(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "à jour(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "non installé(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "mise à jour requise(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "incompatible(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Impossible de supprimer complètement __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Composants de Gallery" + +msgid "Get More Plugins" +msgstr "Obtenir d'autres composants" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Vous recherchez d'autres fonctionnalités ? De nouveaux composants sont à un clic d'ici. " +"Utilisez ce lien %s pour commencer." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Les fonctionnalités de Gallery sont réparties dans différents composants. Vous pouvez " +"télécharger et installer d'autres composants pour ajouter de nouvelles fonctionnalités. Vous " +"pouvez également désactiver les fonctionnalités que vous ne souhaitez pas utiliser. Pour " +"utiliser une fonctionnalité, vous devez installer, configurer (si nécessaire) et activer le " +"composant adéquat. Pour ne plus l'utiliser, vous pouvez simplement le désactiver." + +msgid "Plugin Name" +msgstr "Nom du composant" + +msgid "Installed" +msgstr "Installé" + +msgid "Version" +msgstr "Version" + +msgid "Actions" +msgstr "Opérations" + +msgid "help" +msgstr "aide" + +#, c-format +msgid "Screenshot for %s" +msgstr "Copie d'écran pour %s" + +msgid "Incompatible plugin!" +msgstr "Composant incompatible !" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "API noyau requise : %s (disponible : %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "API de composant requise : %s (disponible : %s)" + +msgid "configure" +msgstr "configurer" + +msgid "up to date" +msgstr "à jour" + +msgid "upgrade required" +msgstr "mise à jour requise" + +msgid "not installed" +msgstr "non installé" + +msgid "incompatible" +msgstr "incompatible" + +msgid "Repository" +msgstr "Entrepôt" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Veuillez vous assurer que votre connexion à Internet est opérationnelle ou réessayez plus " +"tard." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Impossible d'obtenir le statut du composant : %s" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Votre copie locale de l'entrepôt était corrompue et a été corrigée. Veuillez télécharger de " +"nouveau la liste des composants." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Impossible de télécharger le composant %s car les fichiers ou répertoires suivants n'ont pas " +"pu être modifiés :" + +msgid "The repository index has been successfully updated." +msgstr "L'index de l'entrepôt des composants a été mis à jour avec succès" + +msgid "All plugins are already up-to-date." +msgstr "Tous les composants sont déjà à jour." + +#, c-format +msgid "%s plugin updated." +msgstr "Composant %s mis à jour." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d package de langue supprimé." +msgstr[1] "%d packages de langue supprimés." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"Aucune information personnelle à votre sujet ou au sujet de votre installation de Gallery " +"n'est jamais transmise au serveur de Gallery." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Télécharger et installer de nouveaux composants est simple et rapide. Si vous décidez qu'un " +"composant ne vous convient pas, vous pouvez le supprimer de votre installation de Gallery. " +"Il existe différents entrepôts de composants, vous pouvez choisir lesquels utiliser (il est " +"possible de tous les utiliser). Une fois sélectionnés, vous devez les mettre régulièrement à " +"jour afin de trouver les mises à jour de vos composants. %s Sur les connexions lentes, le " +"processus peut nécessiter une minute ou deux." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Composants officiels du projet Gallery (%srecommandés%s)" + +#, c-format +msgid "last updated on %s" +msgstr "dernière mise à jour le %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Composants expérimentaux du projet Gallery (%snouvelles fonctionnalités mais potentiellement " +"bugguées%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Composants de la communauté (%sà utiliser à vos risques !%s)" + +msgid "Repository Error" +msgstr "Erreur sur l'entrepôt" + +msgid "You must select at least one repository." +msgstr "Vous devez sélectionner au moins un entrepôt." + +msgid "Ok" +msgstr "OK" + +msgid "Configure your Gallery" +msgstr "Configurer votre installation de Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Avant de continuer, vous devez modifier certaines permissions afin que Gallery puisse " +"installer des composants pour vous. C'est simple, vous n'avez qu'à exécuter les commandes " +"suivantes dans un shell ou via votre client FTP :" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Si vous rencontrez des difficultés pour modifier ces permissions, veuillez demander " +"assistance à votre administrateur système. Lorsque les permissions seront correctes, appuyez " +"sur le bouton 'Continuer' pour passer à la suite." + +msgid "Continue" +msgstr "Continuer" + +msgid "Download Plugin List" +msgstr "Télécharger la liste des composants" + +msgid "Show Repository List" +msgstr "Afficher la liste des entrepôts" + +msgid "Upgrade Gallery" +msgstr "Mettre à jour Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Une nouvelle version de Gallery est disponible mais ne peut pas être mise à jour à l'aide de " +"cette interface. La mettre à jour pourrait rendre certains de vos composants inopérents." + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sTélécharger%s le noyau de Gallery" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Lisez les %sinstructions de mise à jour%s et suivez la procédure" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Les composants incompatibles sont marqués avec une icône d'alerte." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Une nouvelle version du module noyau est disponible. Il se peut que des composants soient " +"incompatibles avec version du noyau installé et ne soient pas affichés ici. Vous pouvez " +"consulter la %sliste complète%s des composants, y compris ceux qui sont incompatibles et qui " +"sont marqués d'une icone rouge." + +msgid "upgrade available" +msgstr "mise à jour disponible" + +msgid "locked" +msgstr "vérouillé" + +msgid "Theme Name" +msgstr "Nom du thème" + +msgid "Module Name" +msgstr "Nom du module" + +msgid "Latest" +msgstr "Dernière" + +msgid "Locked Plugin" +msgstr "Composant vérouillé" + +msgid "Incompatible Plugin" +msgstr "Composant incompatible" + +msgid "Upgrade Available" +msgstr "Mise à jour disponible" + +msgid "download" +msgstr "télécharger" + +msgid "modify" +msgstr "modifier" + +msgid "Upgrade All Plugins" +msgstr "Mettre à jour tous les composants" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery peut automatiquement mettre à jour vos thèmes et modules vers les dernières versions " +"disponibles. Aucun nouveau composant ne sera téléchargé." + +msgid "Upgrade All" +msgstr "Mettre tout à jour" + +#, c-format +msgid "Download %s" +msgstr "Télécharger %s" + +msgid "No packages have been selected." +msgstr "Aucun package n'a été sélectionné." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Téléchargez un package pour pouvoir utiliser ce composant. Vous pouvez mettre à jour en " +"choisissant une version plus récente du package à télécharger. Les packages de langue sont " +"optionnels, vous n'avez besoin de télécharger que ceux que vous utilisez pour votre site." + +msgid "Base Packages" +msgstr "Packages de base" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s : version %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s : version %s (build %s) %sDescendre de version n'est pas supporté !%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sAcutellement installé%s : version %s (build %s)" + +msgid "Language Packages" +msgstr "Packages de langue" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%stout sélectionner%s%sne rien sélectionner%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s version %s (mise à jour depuis %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s version %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s version %s (%sversion plus récente %s est installée%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s version %s (actuellement installé)" + +msgid "No compatible language packages available" +msgstr "Aucun package de langue compatible n'a été trouvé" + +msgid "You must select a base package before choosing language packs." +msgstr "Vous devez sélectionne un package de base avant de choisir des packages de langue." + +msgid "Update" +msgstr "Mettre à jour" + +msgid "Gallery Themes" +msgstr "Thèmes de Gallery" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Thème %s activé avec succès" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Thème %s désactivé avec succès" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Thème %s installé avec succès" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Thème %s désinstallé avec succès" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Thème %s mis à jour avec succès" + +msgid "Successfully saved default album settings" +msgstr "Sauvegarde réussie des paramètres par défaut de l'album" + +msgid "Restored theme settings" +msgstr "Paramètres du thème restaurés" + +msgid "Defaults" +msgstr "Valeurs par défaut" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Voici les paramètres d'affichage par défaut. Ils peuvent être remplacés au niveau de chaque " +"album." + +msgid "Default sort order" +msgstr "Ordre de classement par défaut" + +msgid "with" +msgstr "largeur" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Nouveaux albums" + +msgid "Save Defaults" +msgstr "Sauvegarder les valeurs par défaut" + +#, c-format +msgid "%s Theme Settings" +msgstr "Paramètres du thème %s" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Voici les paramètres globaux de ce thème. Ils peuvent être remplacés au niveau de chaque " +"album." + +msgid "Available" +msgstr "Disponible" + +msgid "Choose a block" +msgstr "Choisissez un bloc" + +msgid "Selected" +msgstr "Sélectionné" + +msgid "Remove" +msgstr "Supprimer" + +msgid "Move Up" +msgstr "Monter" + +msgid "Move Down" +msgstr "Descendre" + +msgid "Parameter" +msgstr "Paramètre" + +msgid "Value" +msgstr "Valeur" + +msgid "There are no settings for this theme" +msgstr "Il n'y a pas de paramètre pour ce thème" + +msgid "Save Theme Settings" +msgstr "Sauvegarder les paramètres du thème" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Les boîtes à outils listées ci-dessous présentent des recouvrements entre les opérations et " +"les types MIME supportés. Classer les boîtes à outils pour déterminer l'ordre de sélection " +"des boîtes à outils pour réaliser les opérations." + +msgid "Toolkit" +msgstr "Boîte à outils" + +msgid "Order" +msgstr "Ordre" + +msgid "up" +msgstr "haut" + +msgid "down" +msgstr "bas" + +msgid "User Management" +msgstr "Gestion des utilisateurs" + +#, c-format +msgid "Removed user '%s'" +msgstr "Utilisateur '%s' supprimé" + +#, c-format +msgid "Created user '%s'" +msgstr "Utilisateur '%s' créé" + +#, c-format +msgid "Modified user '%s'" +msgstr "Utilisateur '%s' modifié" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Il y a %d utilisateur sur le système." +msgstr[1] "Il y a %d utilisateurs sur le système." + +msgid "Edit User" +msgstr "Éditer un utilisateur" + +msgid "You cannot delete yourself!" +msgstr "Vous ne pouvez pas vous auto-supprimer !" + +msgid "You cannot delete the special guest user." +msgstr "Vous ne pouvez pas supprimer l'utilisateur anonyme." + +msgid "Edit User (by list)" +msgstr "Éditer un utilisateur (par liste)" + +msgid "Locked" +msgstr "Vérouillé" + +msgid "Failed Logins" +msgstr "Tentatives d'authentification en échec" + +msgid "Thumbnails" +msgstr "Vignettes" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery peut créer les vignette lors de l'import ou lors du premier affichage de la " +"vignette. Dans les deux cas, la vignette n'est créée qu'une seule fois et est sauvegardée. " +"Cependant, si vous choisissez la création des vignettes à l'import, le premier affichage " +"d'un album sera plus rapide, mais la durée de l'import sera plus longue." + +msgid "Create thumbnails now" +msgstr "Créer les vignettes maintenant" + +msgid "This is a test email from Gallery2" +msgstr "Ceci est un mail de test de Gallery" + +msgid "Edit Conflict!" +msgstr "Éditer le conflit !" + +msgid "Security Violation" +msgstr "Violation de sécurité" + +msgid "Database Error" +msgstr "Erreur de la base de données" + +msgid "Platform Error" +msgstr "Erreur de la plate-forme" + +msgid "Authentication Failure" +msgstr "Échec de l'authentification" + +msgid "Error" +msgstr "Erreur" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Votre modification ne peut pas être prise en compte car quelqu'un d'autre vient de réaliser " +"une modification sur cet élément entrainant un conflit avec la votre. Utiliser le bouton de " +"retour de votre navigateur pour retourner sur la page précédente, ensuite rechargez la " +"page et réessayer d'appliquer votre modification." + +msgid "Go back and try again" +msgstr "Retournez en arrière et essayez de nouveau" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Si le problème se répète, il peut être du à une corruption de votre cache. Les " +"administrateurs de Gallery peuvent vider ce cache." + +msgid "Clear the cache" +msgstr "Effacer le cache" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"Autrement, vous pouvez retourner vers la page principale de Gallery et reprendre la " +"navigation." + +msgid "The action you attempted is not permitted." +msgstr "L'opération tentée n'est pas permise." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Votre modification n'a pas pu être traitée en raison d'une perte des données de session. " +"Veuillez réessayer. Si le problème persiste, essayez de vous déconnecter de Gallery et " +"reconnectez vous." + +msgid "An error has occurred while interacting with the database." +msgstr "Une erreur est survenue en accédant à la base de données." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"La nature exacte des erreurs de la base de données n'est pas interceptée à moins que le mode " +"débug de Gallery ne soit activé dans le fichier config.php. Avant de demander un support " +"pour cette erreur, veuillez activer la sortie 'buffered debug' et recommencer l'opération. " +"Regardez près de la fin de la longue trace de débuggage pour trouver des détails concernant " +"l'erreur." + +msgid "An error has occurred while interacting with the platform." +msgstr "Une erreur est survenue en accédant à la plate-forme." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"La nature exacte de l'erreur de plate-forme est inconnue. Une cause commune est un niveau de " +"droits insuffisants sur le système de fichier. Celà peut arriver lorsque votre hébergeur a " +"modifié quelque chose au niveau du système de fichier comme par exemple restauré le contenu " +"d'une sauvegarde." + +msgid "Item not found." +msgstr "Élément non trouvé." + +msgid "An error has occurred." +msgstr "Une erreur est survenue." + +msgid "Back to the Gallery" +msgstr "Retour à la galerie" + +msgid "Error Detail" +msgstr "Description de l'erreur" + +msgid "System Information" +msgstr "Informations sur le système" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Vous n'avez pas de boîte à outils graphique activée qui puisse traiter les images JPEG. Si " +"vous ajoutez des images, vous n'aurez probablement pas de vignette." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" +"Visitez la page des Modules pour activer une boîte à outils graphiques." + +msgid "Add Sub-Album" +msgstr "Ajouter un sous-album" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Le nom de cet album sur votre disque. Il doit être unique pour cet album.
    Note :" +" Vous ne pouvez utiliser que des caractères alphanumériques, soulignés (_) et tirets (-) " +"pour les noms." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Votre nom contient des caractères invalides. Merci d'en choisir un nouveau." + +msgid "You must enter a name for this album." +msgstr "Vous devez saisir un nom pour cet album." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Le nom que vous avez saisi est déjà utilisé. Merci d'en choisir un autre." + +msgid "This is the album title." +msgstr "Ceci est le titre de l'album." + +msgid "This is the album summary." +msgstr "Ceci est le résumé de l'album." + +msgid "Keywords are not visible, but are searchable." +msgstr "Les mots clés ne sont pas visibles, mais peuvent être recherchés." + +msgid "This is the long description of the album." +msgstr "La description détaillée de cet album" + +msgid "Create" +msgstr "Créer" + +msgid "Upload Complete" +msgstr "Téléchargement terminé" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d élément ajouté avec succès" +msgstr[1] "%d élément ajoutés avec succès" + +msgid "No files added." +msgstr "Aucun fichier n'a été ajouté." + +#, c-format +msgid "Added %s" +msgstr "%s ajouté" + +#, c-format +msgid "Failed to add %s" +msgstr "Échec à l'ajout de %s" + +msgid "Add more files" +msgstr "Ajouter plus de fichiers" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Votre serveur Web est actuellement configuré pour interdire les téléchargements depuis votre " +"serveur. Veuillez contacter votre administrateur système pour obtenir une assistance." + +msgid "Upload files directly from your computer." +msgstr "Télécharger des fichiers directement depuis votre ordinateur." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" +"Entrer le chemin complet vers le fichier et optionellement une description dans les " +"dialogues suivants." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Note : Vous pouvez télécharge jusqu'à %s en une seule fois. Si vous désirez " +"télécharger plus que celà, vous devez télécharger vos fichiers séparément, utiliser un " +"format de téléchargement ou demander à votre administrateurd'autoriser des téléchargements " +"plus volumineux." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Note : Vous pouvez télécharge jusqu'à %s en une seule fois. Aucun fichier ne " +"peut avoir de taille dépassant %s. Si vous désirez télécharger plus que celà, vous devez " +"télécharger vos fichiers séparément, utiliser un format de téléchargement ou demander à " +"votre administrateur d'autoriser des téléchargements plus volumineux." + +msgid "More Upload Boxes..." +msgstr "Plus de champs de téléchargement..." + +msgid "Set item titles from:" +msgstr "Spécifier les titres des éléments à l'aide de :" + +msgid "Assign caption to:" +msgstr "Assigner les sous-titres à :" + +msgid "No Thumbnail" +msgstr "Aucune vignette" + +msgid "Delete Items" +msgstr "Supprimer des éléments" + +msgid "No items were selected for deletion" +msgstr "Aucun élément n'a été sélectionné pour être supprimé" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d élément supprimé avec succès" +msgstr[1] "%d éléments supprimés avec succès" + +msgid "This album contains no items to delete" +msgstr "Cet album ne contient aucun élément à effacer" + +msgid "Choose the items you want to delete" +msgstr "Choisissez les éléments à supprimer" + +#, c-format +msgid "(page %d of %d)" +msgstr "Affichage de la page %d sur %d" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Les éléments sélectionnés le resteront lorsque vous naviguerez entre les pages." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Un élément sélectionné sur une autre page." +msgstr[1] "%d éléments sélectionnés sur d'autres pages." + +msgid "(data)" +msgstr "(données)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(album contenant %d élément)" +msgstr[1] "(album contenant %d éléments)" + +msgid "(empty album)" +msgstr "(album vide)" + +msgid "Check All" +msgstr "Cocher tout" + +msgid "Check None" +msgstr "Décocher tout" + +msgid "Invert" +msgstr "Inverser" + +msgid "Previous Page" +msgstr "Page précédente" + +msgid "Next Page" +msgstr "Page suivante" + +msgid "Deletion Complete" +msgstr "Suppression terminée" + +msgid "Item successfully deleted" +msgstr "Élément supprimé avec succès" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Voulez vous vraiment supprimer cet élément %s ?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Il contient %d élément." +msgstr[1] "Il contient %d éléments." + +msgid "There is no undo!" +msgstr "Il n'y a pas d'annulation possible !" + +msgid "There was a problem processing your request." +msgstr "Il y a eu un problème lors du traitement de votre requête." + +msgid "Sort order" +msgstr "Ordre de tri" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Celà spécifie l'ordre de classement des éléments de cet album. Celà s'applique à tous les " +"éléments existants et à venir." + +msgid "Apply to all subalbums" +msgstr "Appliquer à tous les sous-albums" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Chaque élément nécessite une vignette. Spécifiez ici la taille par défaut en pixels." + +msgid "You must enter a number (greater than zero)" +msgstr "Vous devez saisir un nombre (supérieur à zéro)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Utiliser cette taille de vignette pour tous les sous-albums" + +msgid "Resized Images" +msgstr "Images redimensionnées" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Chaque élément dans votre album peut avoir plusieurs tailles. Définissez ici les tailles par " +"défaut." + +msgid "Active" +msgstr "Actif" + +msgid "Target Size (pixels)" +msgstr "Taille cible (en pixels)" + +msgid "You must enter a valid size" +msgstr "Vous devez saisir une taille valide" + +msgid "Use these target sizes in all subalbums" +msgstr "Utiliser ces tailles cibles dans tous les sous-albums" + +msgid "Apply settings to existing items" +msgstr "Appliquer les paramètres aux élément existants" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Les paramètres pour les vignettes et les images redimensionnées s'appliquent pour tous les " +"nouveaux éléments. Pour appliquer ces paramètres à tous les éléments de cet album, veuillez " +"cocher les cases appropriées. Inclure les sous-albums impliquera que les paramètres propres " +"aux sous-albums seront appliqués à leurs vignettes et images redimensionnées, paramètres qui " +"ne correspondent pas nécessairement aux paramètres ci-dessus. Générer les images " +"redimensionnées et le vignettes rend l'opération plus longue, mais permet d'économiser le " +"tempts de création et de mise en cache de ces images à leur premier accès." + +msgid "Apply album setting to thumbnails" +msgstr "Appliquer les paramètres aux vignettes" + +msgid "... and for all subalbums" +msgstr "Appliquer à tous les sous-albums" + +msgid "Build thumbnails too" +msgstr "Générer également les vignettes" + +msgid "Apply album setting to resized images" +msgstr "Appliquer les paramètres aux images redimensionnées" + +msgid "Build resizes too" +msgstr "Générer également les images redimensionnées" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Pour que Gallery affiche correctement cette animation, il doit en connaître la hauteur et la " +"largeur. Si vous avez installé une boîte à outils graphiques qui peut prendre en compte ces " +"animations, alors ces valeurs ont peut-être déjà été positionnées. Sinon, elles peuvent être " +"égales à 0. Si vous ne saisissez pas les bonnes valeurs ici, l'animation pourra être déformé " +"quand elle sera affichée par votre navigateur. Notez que modifier ces valeurs ne modifie " +"en rien l'animation, vous pouvez donc expérimenter des valeurs en toute sécurité." + +msgid "Width" +msgstr "Largeur" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Vous devez saisir un nombre supérieur ou égal à zéro" + +msgid "Height" +msgstr "Hauteur" + +msgid "There were errors saving some items" +msgstr "La sauvegarde de certains éléments a rencontré des erreurs" + +msgid "There were errors saving all items" +msgstr "La sauvegarde de tous les éléments a rencontré des erreurs" + +msgid "Successfully saved all items" +msgstr "Tous les éléments ont été sauvegardés avec succès" + +msgid "This album contains no items" +msgstr "Cet album ne contient aucun élément" + +msgid "Saved successfully." +msgstr "Sauvegardé avec succès." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Cet élément a été modifié par quelqu'un d'autre au même moment. Vos modifications ont été " +"perdues." + +msgid "You do not have permissions to modify this item." +msgstr "Vous n'avez pas la permission de modifier cet élément." + +msgid "Save and Done" +msgstr "Sauver et terminer" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Sauver et éditer %s précédents" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Sauver et éditer %s suivants" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Le nom de cet élément sur votre disque. Il doit être unique pour cet album.
    Note: Vous pouvez seulement utiliser des caractères alphanumériques, soulignés (_) et tirets " +"(-) pour les noms." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Votre nom contient des caractères invalides. Merci d'en choisir un nouveau." + +msgid "You must enter a name for this item." +msgstr "Vous devez saisir un nom pour cet élément." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Le nom que vous avez saisi est déjà utilisé. Merci d'en choisir un autre." + +msgid "The title of this item." +msgstr "Le titre de cet élément." + +msgid "The root album must have a title." +msgstr "L'album racine doit avoir un titre." + +msgid "The summary of this item." +msgstr "La description courte de cet élément." + +msgid "This is the long description of the item." +msgstr "Ceci est la description détaillée de cet élément" + +#, c-format +msgid "%s Date and Time" +msgstr "Date et heure de %s" + +msgid "Set the date and time when this image was captured." +msgstr "Spécifier la date et l'heure à afficher à la date de prise de vue." + +msgid "Set the date and time to be displayed for this item." +msgstr "Spécifier la date et l'heure à afficher pour cet élément." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Spécifier la date et l'heure à afficher pour ce %s." + +msgid "Date:" +msgstr "Date :" + +msgid "Time:" +msgstr "Heure :" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Utiliser la date et l'heure de prise de vue depuis les informations contenues dans le " +"fichier (par exemple les données Exif) :" + +msgid "You must enter a valid date and time" +msgstr "Vous devez saisir une date valide" + +msgid "Thumbnail" +msgstr "Vignette" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Définir la taille de la vignette. Le plus grand coté de la vignette ne dépassera pas cette " +"valeur. Laisser cette valeur vide si vous ne voulez pas de vignette." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Il n'y a pas de boîte à outils graphiques activée qui supporte ce type d'élément,nous ne " +"pouvons donc pas créer ou modifier la vignette." + +msgid "Unable to create a thumbnail for this item" +msgstr "Impossible de créer une vignette pour cet élément" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Pour que Gallery affiche correctement ce film, il doit en connaître la hauteur et la " +"largeur. Si vous avez installé une boîte à outils graphiques qui peut prendre en compte les " +"films, alors ces valeurs ont peut-être déjà été positionnées. Sinon, elles peuvent être " +"égales à 0. Si vous ne saisissez pas les bonnes valeurs ici, le film pourra être déformé " +"quand il sera affiché par votre navigateur. Notez que modifier ces valeurs ne modifie en " +"rien le film, vous pouvez donc expérimenter des valeurs en toute sécurité." + +msgid "Resized Photos" +msgstr "Photos redimensionnées" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Ces tailles correspondent aux versions redimensionnées de l'orignal que vous souhaitez " +"rendre disponibles pour la visualisation." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Il n'y a pas de boîte à outils graphiques activée qui supporte ce type de photo, nous ne " +"pouvons donc pas créer ou modifier les versions redimensionnées." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Vous pouvez sélectionner la partie de la photo va être utilisée pour la vignette. Celà n'a " +"aucun effet sur les versions orginales ou redimensionnées de l'image." + +msgid "Aspect Ratio: " +msgstr "Rapport hauteur/largeur : " + +msgid "Crop" +msgstr "Recadrer" + +msgid "Undo Changes" +msgstr "Annuler les changements" + +msgid "Reset to default" +msgstr "Réinitialiser aux valeurs par défaut" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Il n'y a pas de boîte à outils graphiques activée qui supporte ce type de photo, nous ne " +"pouvons donc pas recadrer les vignettes." + +msgid "Rotate" +msgstr "Pivoter" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Vous pouvez tourner les images par pas de 90 degrès." + +msgid "CC 90°" +msgstr "90° vers la gauche" + +msgid "180°" +msgstr "Renverser de 180°" + +msgid "C 90°" +msgstr "90° vers la droite" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Il n'y a pas de boîte à outils graphiques activée qui supporte ce type de photo, nous ne " +"pouvons donc pas la tourner." + +msgid "Scale" +msgstr "Mettre à l'échelle" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Rétrécir ou agrandir l'image originale. Quand Gallery redimensionne une image, le rapport " +"d'aspect (hauteur sur largeur) de l'image originale est maintenu afin d'éviter les " +"distortions. Cette valeur définit un cadre limitant ces dimensions, en pixels. Gallery " +"mettra à l'échelle l'image jusqu'à ce qu'elle touche les bords de ce cadre." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Il n'y a pas de boîte à outils graphiques activée qui supporte ce type de photo, nous ne " +"pouvons donc pas la mettre à l'échelle." + +msgid "You must enter a size" +msgstr "Vous devez saisir une taille" + +msgid "Preserve Original" +msgstr "Préserver l'original" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery ne modifie pas la photo originale pour une rotation ou une mise à l'échelle. En " +"fait, la photo est dupliquée et Gallery travaille sur une copie. Celà nécessite un " +"supplément d'espace disque mais assure que les images originales ne soient pas altérées. " +"Désactiver cette option entrainera la modification de l'image originale suite à n'importe " +"quelle opération (rotation, mise à l'échelle...)." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Ceci est un lien vers une autre photo, vous ne pouvez donc pas modifier l'orginal." + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Il y a des liens vers cette photo, vous ne pouvez donc pas changer l'original" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Il n'y a pas de support des boîtes à outils graphiques pour modifier l'orginal. Les " +"opérations ne seront appliquées qu'aux copies" + +msgid "Preserve Original Photo" +msgstr "Préserver la photo originale" + +msgid "Modified Photo" +msgstr "Image modifiée" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Vous utilisez une copie de l'image originale afin qu'elle soit mise à l'échelle ou tournée. " +"L'image originale est toujours disponible, mais n'est plus utilisée. Toutes les " +"modifications que vous effectuerez seront appliquées à la copie." + +msgid "Restore original" +msgstr "Restaurer l'original" + +msgid "Choose a theme" +msgstr "Choix du thème" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Les thèmes contrôlent l'apparence de l'album. Vous pouvez choisir différents thèmes pour " +"chacun des albums. Si vous ne choisissez pas de thème, le thème par défaut %s sera utilisé." + +msgid "Use this theme in all subalbums" +msgstr "Utiliser ce thème pour tous les sous-albums" + +msgid "Choose Theme" +msgstr "Choisir le thème" + +#, c-format +msgid "Configure the %s theme" +msgstr "Configurer le thème %s" + +msgid "These settings only apply to the theme for this album." +msgstr "Ces paramètres ne s'appliquent qu'au thème de cet album." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Utiliser ces paramètres dans tous les sous-albums qui utilisent le thème %s" + +msgid "Album Highlight" +msgstr "Vignette titre de l'album" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" +"Vous pouvez faire de cet élément la vignette titre dans son album parent ou d'un autre " +"ancêtre." + +msgid "Highlight for:" +msgstr "Mettre en vignette titre pour :" + +msgid "Highlight" +msgstr "Mettre en vignette titre" + +msgid "Move an Item" +msgstr "Déplacer un élément" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d élément déplacé avec succès" +msgstr[1] "%d éléments déplacés avec succès" + +msgid "This album contains no items to move." +msgstr "Cet album ne contient aucun élément à déplacer." + +msgid "Source" +msgstr "Source" + +msgid "Choose the items you want to move" +msgstr "Choisissez les éléments à déplacer" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"La destination choisie n'accepte pas les sous-albums, aussi tous les sous-albums ont été dé-" +"sélectionnés." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"La destination que vous choisissez n'accepte que les sous-albums, aussi tout qui n'est pas " +"album a été dé-sélectionné." + +msgid "You are not allowed to move this item away from here." +msgstr "Vous n'êtes pas autorisés à déplacer cet élément d'ici." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Vous n'êtes pas autorisés à déplacer un album vers la destination choisie." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Vous n'êtes pas autorisés à déplacer d'élément vers la destination choisie." + +msgid "You cannot move an album into its own subtree." +msgstr "Vous ne pouvez pas déplacer un album vers sa propre sous-arborescence." + +msgid "Destination" +msgstr "Destination" + +msgid "Choose a new album for them" +msgstr "Choisissez un album de destination" + +msgid "You don't have the permission to add items in this album" +msgstr "Vous n'avez pas la permission d'ajouter des éléments dans cet album" + +msgid "No destination chosen" +msgstr "Aucune destination choisie" + +msgid "Move" +msgstr "Déplacer" + +msgid "Successfully moved" +msgstr "Déplacement réalisé avec succès" + +msgid "Choose a destination album" +msgstr "Choisir un album de destination" + +msgid "Permissions" +msgstr "Permissions" + +msgid "Owner changed successfully" +msgstr "Le propriétaire a été modifié avec succès" + +msgid "Group permission added successfully" +msgstr "Permission de groupe ajoutée avec succès" + +msgid "User permission added successfully" +msgstr "Permission d'utilisateur ajoutée avec succès" + +msgid "Group permission removed successfully" +msgstr "Permission de groupe supprimée avec succès" + +msgid "User permission removed successfully" +msgstr "Permission d'utilisateur supprimée avec succès" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Chaque élément possède ses permissions. Changer les permissions des parents n'a pas d'effet " +"sur les permissions des enfants. Ceci vous autorise à restreindre l'accès au parent d'un " +"élément, sans en altérer l'accès ou vice-versa. La manière la plus efficace d'utiliser ce " +"système de permissions est de créer des groupes et leur assigner des permissions. Si vous " +"voulez attribuer des permissions à un utilisateur spécifique, vous pouvez ajouter cet " +"utilisateur au groupe(s) approprié(s)." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Le propriétaire de cet élément est : %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Le propriétaire de cet élément est : %s (%s)" + +msgid "New owner" +msgstr "Nouveau propriétaire" + +msgid "Change" +msgstr "Changer" + +msgid "Apply new owner to sub-items" +msgstr "Appliquer le nouveau propriétaire aux sous-éléments" + +msgid "You must enter a user name" +msgstr "Vous devez saisir un nom d'utilisateur" + +msgid "The user name you entered is invalid" +msgstr "Le nom d'utilisateur que vous avez saisi est invalide" + +msgid "Apply changes" +msgstr "Appliquer les modifications" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Cet élément possède des sous-éléments. Vos modifications peuvent être appliquées à cet " +"élément seulement, ou bien également à tous ses sous-éléments. Notez qu'appliquer des " +"modifications de permission à tous les sous-éléments peut prendre un temps important si ces " +"derniers sont nombreux. Il est plus efficace d'attribuer les permissions aux groupes, puis " +"d'ajouter et d'enlever des utilisateurs à ces groupes. Par défaut, les modifications sont " +"appliquées aux sous-éléments." + +msgid "Apply to sub-items" +msgstr "Appliquer aux sous-éléments" + +msgid "Group Permissions" +msgstr "Persmissions du Groupe" + +msgid "Group name" +msgstr "Nom du groupe" + +msgid "Permission" +msgstr "Permission" + +msgid "New Group Permission" +msgstr "Nouvelle permission de groupe" + +msgid "Add Permission" +msgstr "Ajouter une permission" + +msgid "The permission you chose is invalid" +msgstr "La permission que vous avez choisie est invalide" + +msgid "The group name you entered is invalid" +msgstr "Le groupe que vous avez saisi est invalide" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Le groupe a déjà cette permission (vérifiez les sous-permissions)" + +msgid "User Permissions" +msgstr "Permissions des utilisateurs" + +msgid "User name" +msgstr "Nom d'utilisateur" + +msgid "New User Permission" +msgstr "Nouvelle permission d'utilisateur" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "L'utilisateur a déjà cette permission (vérifiez les sous-permissions)" + +msgid "Reorder Album" +msgstr "Réorganiser l'album" + +msgid "Order saved successfully" +msgstr "Ordre sauvegardé avec succès" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Cet album a un ordre de tri automatique spécifié, vous ne pouvez donc pas changer " +"manuellement l'ordre des éléments. Vous devez supprimer le tri automatique si vous désirez " +"procéder." + +msgid "change" +msgstr "changer" + +msgid "Change the order of the items in this album." +msgstr "Changer l'ordre des éléments de cet album." + +msgid "Move this item" +msgstr "Déplacer cet élément" + +msgid "before" +msgstr "avant" + +msgid "after" +msgstr "après" + +msgid "Reorder" +msgstr "Réorganiser" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript doit être activé pour que cette page s'affiche correctement. Cependant, il semble " +"que JavaScript est soit désactivé, soit non supporté par votre navigateur. Veuillez activer " +"JavaScript et réessayer." + +msgid "Site is temporarily down for maintenance." +msgstr "Ce site est temporairement hors service pour maintenance." + +msgid "Admin Login" +msgstr "Accès des administrateurs" + +msgid "Enter a URL" +msgstr "Saisir une URL" + +msgid "Enter some text describing the URL" +msgstr "Saisir une description de l'URL" + +msgid "Enter an image URL" +msgstr "Saisir l'URL d'une image" + +msgid "B " +msgstr "G" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "liste" + +msgid "bullet" +msgstr "puce" + +msgid "url" +msgstr "URL" + +msgid "image" +msgstr "image" + +msgid "color" +msgstr "couleur" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Vous pouvez également utiliser le nom de couleur par " +"exemple : %s " + +msgid "Configuration Error: Missing Theme" +msgstr "Erreur de configuration : thème manquant" + +msgid "Missing Theme" +msgstr "Thème manquant" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Cette page est configurée pour utiliser le thème %s, qui est soit manquant, soit désactivé." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Cet album est configuré pour utiliser le thème %s, qui est soit manquant, soit désactivé ou " +"incompatible." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Pour régler ce problème, vous pouvez %sinstaller ou activer ce thème%s ou alors sélectionner " +"un autre thème par défaut." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Pour régler ce problème, vous pouvez vous %sconnecter en tant qu'administrateur%s et ensuite " +"%sinstaller ou activer ce thème%s ou alors sélectionner un autre thème par défaut." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Pour régler ce problème, vous pouvez vous %schoisir un autre thème pour cet album%s ou %" +"sinstaller ou activer ce thème%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Pour régler ce problème, vous pouvez vous %schoisir un autre thème pour cet album%s ou vous %" +"sconnecter en tant qu'administrateur%s et ensuite %sinstaller ou activer ce thème%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Pour régler ce problème, vous pouvez soit vous %sauthentifier%s et ensuite %schoisir un " +"autre thème pour cet album%s, soit vous %sconnecter en tant qu'administrateur%s puis ensuite " +"%sinstaller ou activer ce thème%s." + +msgid "Admin Options" +msgstr "Options d'administration" + +msgid "User Options" +msgstr "Options des utilisateurs" + +msgid "Password changed successfully" +msgstr "Mot de passe modifié avec succès" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Vous devez saisir votre mot de passe pour prouver votre identité, ensuite saisissez votre " +"nouveau mot de passe deux fois pour vous assurer qu'il n'y a pas d'erreur." + +msgid "Current Password" +msgstr "Mot de passe actuel" + +msgid "You must enter your current password" +msgstr "Vous devez saisir votre mot de passe actuel" + +msgid "Incorrect password" +msgstr "Mot de passe incorrect" + +msgid "New Password" +msgstr "Nouveau mot de passe" + +msgid "You must enter a new password" +msgstr "Vous devez saisir un nouveau mot de passe" + +msgid "Verify New Password" +msgstr "Vérifier le nouveau mot de passe" + +msgid "You must enter your new password again!" +msgstr "Vous devez saisir à nouveau votre nouveau mot de passe !" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Ce compte n'est pas autorisé pour modifier les paramètres de comptes. Veuillez contacter " +"l'administrateur de Gallery" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"L'administrateur de Gallery a vérouillé ce compte, empêchant ainsi toute modification d'y " +"être apportée." + +msgid "Login to your account" +msgstr "Identifiant de connexion à votre compte" + +msgid "Your password has been recovered, please login." +msgstr "Votre mot de passe vous a été envoyé. Veuillez vous authentifier." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Ce compte est temporairement bloqué compte tenu d'un trop grand nombre de tentatives " +"d'authentification en échec. Veuillez attendre que l'accès soit rétabli ou utiliser la page " +"de restauration de mot de passe pour réactiver ce compte." + +msgid "Your login information is incorrect. Please try again." +msgstr "Vos informations de connexion sont incorrectes. Merci de réessayer." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Les mots de passe perdus ou oubliés peuvent être récupérés à partir de la page de récupération du mot de passe" + +#, c-format +msgid "Welcome, %s!" +msgstr "Bienvenue, %s !" + +msgid "Account settings saved successfully" +msgstr "Paramètres du compte sauvegardés avec succès" + +msgid "(required, password required for change)" +msgstr "(requis, mot de passe nécessaire pour cette modification)" + +msgid "(suggested, password required for change)" +msgstr "(suggéré, mot de passe requis pour cette modification)" + +msgid "(required to change the e-mail address)" +msgstr "(requis pour changer l'addresse email)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Vous devez saisir votre mot de passe actuel pour changer l'adresse email" + +msgid "Recover a lost or forgotten password" +msgstr "Récupérer un mot de passe oublié" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Récupérer votre mot de passe nécessite qu'une adresse email ait été renseignée dans votre " +"compte, et que vous ayez accès au courrier envoyé à cette adresse. Une confirmation vous " +"sera envoyée contenant l'URL vers laquelle vous devrez vous rendre pour définir un nouveau " +"mot de passe. Pour prévenir les abus, les demandes de récupération des mots de passe ne " +"peuvent pas être effectuées plus d'une fois toute les 20 minutes. Un message de récupération " +"est valable 7 jours. Si vous ne l'utilisez pas durant cette période, vous devrez effectuer " +"une nouvelle demande de récupération du mot de passe." + +msgid "Your recovery request has been sent!" +msgstr "Votre demande de récupération a été envoyée !" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Notez que si le compte n'a pas d'adresse email, vous ne pouvez pas recevoir ce message. Vous " +"devez donc demander de l'aide à un administrateur de Gallery." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Les administrateurs peuvent utiliser la page %sRécupération de mot de passe en urgence%s " +"pour accéder au compte d'administration si ils ne parviennent pas à recevoir le message en " +"raison de problèmes avec la messagerie ou par absence d'adresse de messagerie." + +msgid "Recover" +msgstr "Récupérer" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Afin de continuer la réinitialisation du mot de passe, nous devons vérifier que vous êtes " +"bien un administrateur de Gallery. La meilleure solution est de vous demander de réaliser " +"une modification mineure dans le répertoire de Gallery ce qui prouvera que vous disposez " +"bien des droits nécessaires. Nous allons donc vous demander de créer un fichier nommé %s " +"dans le répertoire d'installation de Gallery. Il doit contenir la chaîne de caractères " +"aléatoires suivante :" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Afin de vous simplifier la tâche, nous vous avons préparés une %sversion correcte de login." +"txt%s. Téléchargez cette copie et déposez la dans le répertoire d'installation de Gallery." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Une fois le fichier téléchargé, clickez sur 'rafraîchir' pour continuer." + +msgid "Emergency Administrator Password Reset" +msgstr "Récupération de mot de passe en urgence" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Cette page peut être utilisée par un administrateur pour réinitialiser en toute sécurité le " +"mot de passe de n'importe quel compte." + +msgid "Authorization Confirmed" +msgstr "Autorisation confirmée" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Votre autorisation a été confirmée. Veuillez saisir un nouveau mot de passe dans le champ ci-" +"dessous. Après avoir saisi votre mot de passe, vous serez redirigés vers la page " +"d'authentification." + +msgid "Recover Password for Username" +msgstr "Récupérer le mot de passe pour l'utilisateur" + +msgid "You must enter a username to recover the password for." +msgstr "" +"Vous devez saisir un identification de connexion pour lequel vous souhaitez récupérer le mot " +"de passe." + +msgid "The username you entered does not exist." +msgstr "Le nom d'utilisateur que vous avez saisi n'existe pas." + +msgid "Authorization Incorrect" +msgstr "Autorisation incorrecte" + +msgid "Recovery Instructions" +msgstr "Intructions de récupération" + +msgid "AuthFile Missing" +msgstr "AuthFile manquant" + +msgid "AuthFile Unreadable" +msgstr "AuthFile illisible" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Votre fichier %s n'est pas lisible. Veuillez donner à Gallery le droit de le lire." + +msgid "Refresh" +msgstr "Rafraîchir" + +msgid "This page will allow you to reset the password on your account." +msgstr "Cette page vous permet de réinitialiser le mot de passe pour votre compte." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Cette requête ne correspond pas à l'utilisateur et à l'autorisation fournie. Demandez une " +"nouvelle autorisation depuis la page de récupération des mots de passe " +"oubliés" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Cette requête de récupération du mot de passe a expiré. Demandez une nouvelle autorisation " +"depuis la page de récupération des mots de passe oubliés" + +msgid "Authorization missing" +msgstr "Autorisation manquante" + +msgid "Username missing" +msgstr "Identifiant de connexion manquant" + +msgid "Submit" +msgstr "Soumettre" + +#, c-format +msgid "Hello %s," +msgstr "Bonjour %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Vous venez de recevoir ce message car une demande de récupération pour le compte %s a été " +"émise par %s à %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Votre identifiant de connexion est : %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Pour finir le processus de récupération du mot de passe, veuillez suivre le lien ci-dessous " +"et fournir les informations demandées :" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Si vous n'avez pas sollicité ce mail de récupération, vous pouvez l'ignorer." + +msgid "Thank you!" +msgstr "Merci !" + +msgid "guest" +msgstr "invité" + +#, c-format +msgid "display mode: %s" +msgstr "mode d'affichage : %s" + +#, c-format +msgid "Date: %s" +msgstr "Date : %s" + +#, c-format +msgid "Owner: %s" +msgstr "Propriétaire : %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Taille : %d élément" +msgstr[1] "Taille : %d éléments" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d élément au total)" +msgstr[1] "(%d éléments au total)" + +#, c-format +msgid "Views: %d" +msgstr "Affichages : %d" + +msgid "« album actions »" +msgstr "« Opérations sur l'album »" + +msgid "« item actions »" +msgstr "« Opérations sur l'élément »" + +msgid "Go" +msgstr "Go" + +msgid "Navigation" +msgstr "Navigation" + +msgid "next" +msgstr "suivante" + +msgid "last" +msgstr "dernière" + +#, c-format +msgid "Page %d of %d" +msgstr "Page %d sur %d" + +#, c-format +msgid "%d of %d" +msgstr "%d de %d" + +msgid "first" +msgstr "première" + +msgid "previous" +msgstr "précédente" + +msgid "Page:" +msgstr "Page :" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Taille : " + +msgid "Unknown" +msgstr "Inconnu" + +msgid "Full size: " +msgstr "Taille entière : " + +msgid "Setting" +msgstr "Paramètre" + +msgid "Use Global" +msgstr "Utiliser les paramètres globaux" + +msgid "Language selector" +msgstr "Sélecteur de langue" + +msgid "Item actions" +msgstr "Opérations" + +msgid "Use dropdown menu" +msgstr "Utiliser le menu déroulant" + +msgid "Login block" +msgstr "Bloc de connexion" + +msgid "Links to album/photo peers" +msgstr "Liens vers les éléments voisins" diff --git a/Source/gallery2/modules/core/po/ga.po b/Source/gallery2/modules/core/po/ga.po new file mode 100644 index 0000000..719cd0f --- /dev/null +++ b/Source/gallery2/modules/core/po/ga.po @@ -0,0 +1,3772 @@ +# $Id: ga.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# IRISH PLURAL FORMS (20s system, ordinal non-measurement common nouns) +# +# Group Numbers Example +# +# msgstr[0] 0 Níl aon pheictiúr +# msgstr[1] 1 Tá peictiúr amháin +# msgstr[2] 20,21,40,41, Tá 20 peictiúr +# 60,61,... +# msgstr[3] 7, 8, 9,10, Tá 9 bpeictiúr (eclipsis) +# 17,18,19, +# 27,28,29,30, +# 37,38,... +# msgstr[4] 2, 3, 4, 5, 6 Tá 5 pheictiúr (lenition) +# 11,12,13,14,15,16 +# 22,23,24,25,26 +# 31,32,33,34,... +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 16:07+0100\n" +"Last-Translator: Beckett Madden-Woods \n" +"Language-Team: Irish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=5; plural=n==0 ? 0 : ( n==1 ? 1 : ( n%20<2 ? 2 : ( (n-1)%10>5 ? 3 : " +"4 )));\n" + +#, fuzzy +msgid "Gallery Email Test" +msgstr "Modúil an Ghailearaí" + +msgid "forever" +msgstr "go deo" + +msgid "High Priority (Me first!)" +msgstr "" + +msgid "Low Priority (I want to share!)" +msgstr "" + +msgid "No Markup" +msgstr "" + +msgid "BBCode" +msgstr "" + +msgid "Raw HTML" +msgstr "" + +msgid "Database" +msgstr "" + +msgid "File" +msgstr "Comhad" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "náid nóiméad" +msgstr[1] "nóiméad amháin" +msgstr[2] "%d nóiméid" +msgstr[3] "%d nóiméid" +msgstr[4] "%d nóiméid" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "náid uair" +msgstr[1] "uair amháin" +msgstr[2] "%d uaire" +msgstr[3] "%d uaire" +msgstr[4] "%d uaire" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "náid lá" +msgstr[1] "lá amháin" +msgstr[2] "%d laethanta" +msgstr[3] "%d laethanta" +msgstr[4] "%d laethanta" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "náid seachtain" +msgstr[1] "seachtain amháin" +msgstr[2] "%d seachtainí" +msgstr[3] "%d seachtainí" +msgstr[4] "%d seachtainí" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "" + +msgid "Partial acceleration" +msgstr "" + +msgid "Full acceleration" +msgstr "" + +#, fuzzy +msgid "Themes" +msgstr "Téama" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "Modúil an Ghailearaí" + +#, fuzzy +msgid "Done." +msgstr "Críochnaithe" + +msgid "Updating Packages" +msgstr "" + +#, c-format +msgid "Preparing %s" +msgstr "" + +#, c-format +msgid "Downloading %s" +msgstr "" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "Aicsin" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "Teanga loicthe" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Uaslodáil Críochnaithe" + +#, fuzzy +msgid "Update complete." +msgstr "Uaslodáil Críochnaithe" + +msgid "install" +msgstr "suiteáil" + +msgid "upgrade" +msgstr "" + +msgid "activate" +msgstr "tosaigh" + +#, fuzzy +msgid "uninstall" +msgstr "suiteáil" + +msgid "deactivate" +msgstr "stop" + +msgid "Inherit settings from parent album" +msgstr "" + +#, fuzzy +msgid "Use these settings" +msgstr "Roghanna an Chuntais" + +#, fuzzy +msgid "Installing the core module" +msgstr "Modúil Chroí an Ghailearaí" + +msgid "key" +msgstr "eochair" + +msgid "All access" +msgstr "Smacht iomlán" + +msgid "[core] View item" +msgstr "[croí] Taispeáin míreanna" + +msgid "[core] View resized version(s)" +msgstr "[croí] Taispeáin leagan(acha) laghdaithe" + +msgid "[core] View original version" +msgstr "[croí] Taispeáin leagan bunúsach" + +msgid "[core] View all versions" +msgstr "[croí] Taispeáin uile leaganacha" + +msgid "[core] Add sub-album" +msgstr "[croí] Cuir fo-albaim" + +msgid "[core] Add sub-item" +msgstr "[croí] Cuir fo-mhíreanna" + +msgid "[core] Edit item" +msgstr "[croí] Athraigh míreanna" + +msgid "[core] Change item permissions" +msgstr "[croí] Athraigh ceadanna na míreanna" + +msgid "[core] Delete item" +msgstr "[croí] Scrios míreanna" + +#, fuzzy +msgid "Upgrading permissions" +msgstr "ceadeanna" + +#, fuzzy +msgid "Deleting old permission tables" +msgstr "ceadeanna" + +#, fuzzy +msgid "Registered Users" +msgstr "athraigh úsáideora" + +#, fuzzy +msgid "All Users" +msgstr "Úsáideora" + +msgid "Detecting broken derivatives" +msgstr "" + +msgid "Clearing fast-download cache" +msgstr "" + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "ceadeanna" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +#, fuzzy +msgid "Site Admins" +msgstr "Riarachán an Ghailearaí" + +msgid "Everybody" +msgstr "" + +msgid "Guest" +msgstr "Cuairteoir" + +msgid "Gallery" +msgstr "Gailearaí" + +#, fuzzy +msgid "This is the main page of your Gallery" +msgstr "Seo é barr do Ghailearaí" + +msgid "Converting MySQL data to UTF8" +msgstr "" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" + +#, fuzzy, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "ceadeanna" + +#, fuzzy +msgid "add items" +msgstr "cuir míreanna ann" + +msgid "Album created successfully." +msgstr "Albam curtha go rathúil." + +#, fuzzy +msgid "add sub-album" +msgstr "cuir albam ann" + +#, fuzzy +msgid "add items confirmation" +msgstr "Ceann cúrsa" + +#, fuzzy +msgid "Base filename" +msgstr "Ainm Chomhaid" + +msgid "Caption" +msgstr "Ceannteideal" + +msgid "Blank" +msgstr "" + +msgid "From Web Browser" +msgstr "Cuir as do líonléitheoir" + +#, fuzzy, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "náid ochtán" +msgstr[1] "ochtán amháin" +msgstr[2] "%d ochtáin" +msgstr[3] "%d ochtáin" +msgstr[4] "%d ochtáin" + +#, fuzzy, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "náid ochtán" +msgstr[1] "ochtán amháin" +msgstr[2] "%d ochtáin" +msgstr[3] "%d ochtáin" +msgstr[4] "%d ochtáin" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Riarachán Mír an Ghailearaí" + +#, fuzzy +msgid "delete an item" +msgstr "scrios an mhír seo" + +#, fuzzy +msgid "delete confirmation" +msgstr "scrios an mhír seo" + +#, fuzzy, c-format +msgid "delete %s" +msgstr "Scrios úsáideoir" + +#, fuzzy, c-format +msgid "edit %s" +msgstr "Athraigh Úsáideoir" + +msgid "Settings saved successfully." +msgstr "Roghanna sábháilte go rathúil." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Roghanna an Chuntais" + +msgid "Preparing..." +msgstr "" + +msgid "Apply thumbnail settings" +msgstr "" + +#, fuzzy +msgid "Rebuilding thumbnails..." +msgstr "Athghin pictiúrín" + +msgid "Album" +msgstr "Albam" + +#, fuzzy, c-format +msgid "Processing image %d of %d" +msgstr "Ag féachaint leathanach %d as a %d" + +#, fuzzy +msgid "Changes saved successfully" +msgstr "Athruithe sábháilte go rathúil." + +#, fuzzy +msgid "Animation Size" +msgstr "Aicsean" + +#, fuzzy +msgid "edit captions" +msgstr "Roghanna Riaracháin" + +msgid "General" +msgstr "Ginearálta" + +#, fuzzy +msgid "Movie Size" +msgstr "Roghanna an Chuntais" + +msgid "Photo" +msgstr "Grianghraf" + +#, fuzzy +msgid "Thumbnail cropped successfully" +msgstr "Albam curtha go rathúil." + +#, fuzzy +msgid "Thumbnail reset successfully" +msgstr "Albam curtha go rathúil." + +#, fuzzy +msgid "Photo 5x3" +msgstr "Grianghraf" + +#, fuzzy +msgid "Photo 6x4" +msgstr "Grianghraf" + +#, fuzzy +msgid "Photo 7x5" +msgstr "Grianghraf" + +#, fuzzy +msgid "Photo 10x8" +msgstr "Grianghraf" + +msgid "Fullscreen 4x3" +msgstr "" + +msgid "Widescreen 16x9" +msgstr "" + +msgid "CinemaScope 2.35x1" +msgstr "" + +msgid "Square 1x1" +msgstr "" + +#, fuzzy +msgid "As Image" +msgstr "Athraigh Íomhá" + +msgid "Landscape" +msgstr "" + +msgid "Portrait" +msgstr "" + +#, fuzzy +msgid "Crop Thumbnail" +msgstr "Níl pictiúrín ann" + +#, fuzzy +msgid "Reverted rotate and scale changes successfully" +msgstr "Íomhá rothlaithe go rathúil" + +#, fuzzy +msgid "Rotated photo successfully" +msgstr "Íomhá rothlaithe go rathúil" + +#, fuzzy +msgid "Scaled photo successfully" +msgstr "Íomhá laghdaithe go rathúil" + +#, fuzzy +msgid "Modify Photo" +msgstr "Íomhá Mhodhnaithe" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy +msgid "« default theme »" +msgstr "« Aon cheann »" + +msgid "Theme" +msgstr "Téama" + +msgid "make highlight" +msgstr "déan an mhír seo an gealán" + +msgid "move item" +msgstr "bogadh míreanna" + +#, fuzzy, c-format +msgid "move %s" +msgstr "Bogadh" + +#, fuzzy, c-format +msgid "edit %s permissions" +msgstr "ceadeanna" + +msgid "reorder items" +msgstr "athshórtáil na míreanna" + +msgid "Maintenance" +msgstr "" + +msgid "Gallery Site Administration" +msgstr "Riarachán an Ghailearaí" + +msgid "site admin" +msgstr "riarachán" + +msgid "Gallery User Administration" +msgstr "Riarachán Úsáideora an Ghailearaí" + +#, fuzzy +msgid "change password" +msgstr "Athraigh focal faire" + +#, fuzzy +msgid "your account" +msgstr "Do chuntas" + +#, fuzzy +msgid "Password Recovery" +msgstr "Focal Faire" + +#, fuzzy +msgid "Core" +msgstr "roghnaigh" + +#, fuzzy +msgid "Gallery 2 Core Module" +msgstr "Modúil Chroí an Ghailearaí" + +msgid "Add Items" +msgstr "Cuir Míreanna" + +#, fuzzy +msgid "Edit Album" +msgstr "Cuir Albam" + +#, fuzzy +msgid "Edit Photo" +msgstr "Íomhá Mhodhnaithe" + +#, fuzzy +msgid "Edit Movie" +msgstr "Scannán" + +#, fuzzy +msgid "Add Album" +msgstr "Cuir Albam" + +#, fuzzy +msgid "Edit Permissions" +msgstr "Ceadanna" + +#, fuzzy +msgid "View Permissions" +msgstr "Ceadanna" + +#, fuzzy +msgid "Delete Album" +msgstr "Scrios grúpa" + +#, fuzzy +msgid "Delete Photo" +msgstr "Scrios úsáideoir" + +#, fuzzy +msgid "Delete Movie" +msgstr "Scrios úsáideoir" + +#, fuzzy +msgid "Move Album" +msgstr "Athshórtáil an tAlbam" + +#, fuzzy +msgid "Move Photo" +msgstr "Íomhá Mhodhnaithe" + +#, fuzzy +msgid "Move Movie" +msgstr "Roghanna an Chuntais" + +#, fuzzy +msgid "Edit Captions" +msgstr "Riarachán an Ghailearaí" + +msgid "Make Highlight" +msgstr "Cuir Íomhá Ghealáin" + +msgid "Reorder Items" +msgstr "Athshórtáil na Míreanna" + +#, fuzzy +msgid "Site Admin" +msgstr "Riarachán an Ghailearaí" + +msgid "Login" +msgstr "Log Ann" + +msgid "Your Account" +msgstr "Do Chuntas" + +msgid "Logout" +msgstr "Log As" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "Úsáideora" + +msgid "Groups" +msgstr "Grúpaí" + +msgid "Performance" +msgstr "" + +msgid "Toolkit Priority" +msgstr "" + +msgid "Graphics Toolkits" +msgstr "" + +msgid "Account Settings" +msgstr "Roghanna an Chuntais" + +msgid "Change Password" +msgstr "Athraigh focal faire" + +#, fuzzy, c-format +msgid "Edit %s" +msgstr "Athraigh Úsáideoir" + +#, fuzzy, c-format +msgid "Delete %s" +msgstr "Scrios úsáideoir" + +#, fuzzy, c-format +msgid "Move %s" +msgstr "Bogadh" + +#, fuzzy +msgid "Build all thumbnails/resizes" +msgstr "Pictiúrín" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" + +#, fuzzy +msgid "Build All Thumbnails/Resizes" +msgstr "Pictiúrín" + +msgid "Debug output for failed items:" +msgstr "" + +#, fuzzy, c-format +msgid "Checked %d items" +msgstr "cuir míreanna ann" + +#, fuzzy, c-format +msgid "%d items built" +msgstr "cuir míreanna ann" + +#, c-format +msgid "%d items failed" +msgstr "" + +msgid "Convert MySQL database to UTF8" +msgstr "" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "Ní raibh aon chomhad curtha." + +msgid "No conversion required" +msgstr "" + +#, fuzzy +msgid "Delete user sessions" +msgstr "Ceadanna an Comhad-spás" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "Ceadanna an Comhad-spás" + +msgid "Delete database cache" +msgstr "" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" + +#, fuzzy, c-format +msgid "Successfully deleted directory: %s" +msgstr "Ní raibh aon chomhad curtha." + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "" + +#, fuzzy +msgid "Delete template cache" +msgstr "Scrios an mhír seo" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" + +#, fuzzy +msgid "Template cache deleted successfully" +msgstr "Albam curtha go rathúil." + +#, fuzzy +msgid "album" +msgstr "(albam)" + +#, fuzzy +msgid "Animation" +msgstr "Aicsean" + +#, fuzzy +msgid "animation" +msgstr "Aicsean" + +msgid "Gallery Core" +msgstr "Croí an Ghailearaí" + +msgid "Gallery Core Module" +msgstr "Modúil Chroí an Ghailearaí" + +msgid "Search descriptions" +msgstr "Cuardaigh cuir síos" + +msgid "Search keywords" +msgstr "Cuardaigh eocharfhocail" + +msgid "Search summaries" +msgstr "Cuardaigh achoimrithe" + +msgid "Search titles" +msgstr "Cuardaigh teidil" + +msgid "Description" +msgstr "Cur síos" + +msgid "Keywords" +msgstr "Eocharfhocail" + +msgid "Summary" +msgstr "Achoimre" + +msgid "Title" +msgstr "Teideal" + +msgid "Owner" +msgstr "Úinéir" + +#, fuzzy +msgid "Dynamic Album" +msgstr "Cuir Albam" + +#, fuzzy +msgid "dynamic album" +msgstr "Cuir Albam" + +#, fuzzy +msgid "Group" +msgstr "Grúpaí" + +#, fuzzy +msgid "group" +msgstr "Grúpaí" + +msgid "Other" +msgstr "" + +msgid "Movie" +msgstr "Scannán" + +#, fuzzy +msgid "movie" +msgstr "Scannán" + +#, fuzzy +msgid "photo" +msgstr "Grianghraf" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +msgid "Experimental Repository" +msgstr "" + +msgid "Community Repository" +msgstr "" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "" + +msgid "Index integrity check failed." +msgstr "" + +#, fuzzy +msgid "« default sort order »" +msgstr "« Níl ord ag an sórt »" + +#, fuzzy +msgid "Manual sort order" +msgstr "Ord shóirt loicthe" + +#, fuzzy +msgid "Origination Date" +msgstr "Dáta Cruthaithe" + +msgid "Creation Date" +msgstr "Dáta Cruthaithe" + +msgid "Last Changed Date" +msgstr "Dáta an Athraithe Is Deireanach" + +msgid "Name" +msgstr "Ainm" + +msgid "View Count" +msgstr "" + +msgid "Random" +msgstr "" + +#, fuzzy +msgid "« no presort »" +msgstr "« Aon cheann »" + +#, fuzzy +msgid "Albums First" +msgstr "Roghanna an Albaim" + +msgid "Most Viewed First" +msgstr "" + +msgid "Ascending" +msgstr "Ardaithe" + +msgid "Descending" +msgstr "Íoslaithe" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +#, fuzzy +msgid "This page is valid XHTML 1.0" +msgstr "Tá an leathanach seo bailí mar HTML 4.01" + +#, fuzzy +msgid "Donate to the Gallery project" +msgstr "Téigh ar ais go dtí an Mhír" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "" + +msgid "Rows per album page" +msgstr "" + +msgid "Columns per album page" +msgstr "" + +msgid "Number of items to show per page" +msgstr "" + +msgid "Row height (pixels)" +msgstr "" + +msgid "Column width (pixels)" +msgstr "" + +msgid "Show image owners" +msgstr "" + +msgid "Show album owners" +msgstr "" + +msgid "Show micro navigation thumbnails" +msgstr "" + +msgid "Blocks to show in the sidebar" +msgstr "" + +msgid "Blocks to show on album pages" +msgstr "" + +msgid "Blocks to show on photo pages" +msgstr "" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "Cuir Albam" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "" + +#, fuzzy +msgid "Album Frame" +msgstr "Roghanna an Albaim" + +msgid "Item Frame" +msgstr "" + +#, fuzzy +msgid "Photo Frame" +msgstr "Grianghraf" + +msgid "Color Pack" +msgstr "" + +#, fuzzy +msgid "You must enter a number greater than 0" +msgstr "Caithfidh tú uimhir a iontráil (níos mó ná a náid)" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "" + +#, fuzzy +msgid "Audio" +msgstr "ceallaigh" + +#, fuzzy +msgid "audio" +msgstr "ceallaigh" + +#, fuzzy +msgid "Archive" +msgstr "Gníomhach" + +#, fuzzy +msgid "archive" +msgstr "tosaigh" + +msgid "Document" +msgstr "" + +msgid "document" +msgstr "" + +#, fuzzy +msgid "Spreadsheet" +msgstr "athshocraigh" + +#, fuzzy +msgid "spreadsheet" +msgstr "athshocraigh" + +#, fuzzy +msgid "file" +msgstr "Comhad" + +msgid "Back" +msgstr "" + +#, c-format +msgid "Back to %s" +msgstr "" + +#, fuzzy +msgid "User" +msgstr "Úsáideora" + +#, fuzzy +msgid "user" +msgstr "Úsáideora" + +msgid "Optimize database" +msgstr "" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" + +#, fuzzy +msgid "Database optimized successfully" +msgstr "Íomhá rothlaithe go rathúil" + +msgid "Reset view counts" +msgstr "" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" + +#, fuzzy +msgid "View counts reset successfully" +msgstr "Albam curtha go rathúil." + +msgid "Refresh capture dates" +msgstr "" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" + +msgid "Processing..." +msgstr "" + +msgid "Refresh Capture Dates" +msgstr "" + +#, fuzzy, c-format +msgid "Processing item %d of %d" +msgstr "Ag féachaint leathanach %d as a %d" + +#, fuzzy, c-format +msgid "Updated %d of %d items" +msgstr "Ag féachaint leathanach %d as a %d" + +#, fuzzy +msgid "System information" +msgstr "Ceann cúrsa" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" + +#, fuzzy +msgid "core" +msgstr "roghnaigh" + +#, fuzzy +msgid "unknown" +msgstr "Anaithnid" + +#, fuzzy +msgid "Gallery version" +msgstr "Gailearaí" + +#, fuzzy +msgid "PHP version" +msgstr "Leagan" + +#, fuzzy +msgid "Webserver" +msgstr "Comhadlann an dáileoir" + +msgid "Toolkits" +msgstr "" + +#, fuzzy +msgid "Acceleration" +msgstr "Aicsean" + +msgid "Operating system" +msgstr "" + +msgid "Default theme" +msgstr "Téama loicthe" + +msgid "gettext" +msgstr "" + +#, fuzzy +msgid "enabled" +msgstr "suiteáil" + +msgid "disabled" +msgstr "" + +#, fuzzy +msgid "Locale" +msgstr "Laghdaigh" + +#, fuzzy +msgid "Browser" +msgstr "Cuairt an Gailearaí" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +#, fuzzy +msgid "Successfully saved theme settings" +msgstr "Ní raibh aon chomhad curtha." + +msgid "General Settings" +msgstr "Roghanna Ginearálta" + +msgid "Settings saved successfully" +msgstr "Roghanna sábháilte go rathúil" + +#, fuzzy +msgid "Added local upload directory successfully" +msgstr "Comhadlann áitiúil d'uaslodáil curtha go rathúil" + +#, fuzzy +msgid "Removed local upload directory successfully" +msgstr "Comhadlann áitiúil d'uaslodáil scriosta go rathúil" + +#, fuzzy +msgid "Test email sent successfully" +msgstr "Albam curtha go rathúil." + +msgid "There was a problem processing your request, see below for details." +msgstr "" + +msgid "Error sending test email, see below for details." +msgstr "" + +#, fuzzy +msgid "Language Settings" +msgstr "Roghanna na teanga" + +#, fuzzy +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Togh an teanga loicthe don Gailearaí. Is féidir an rogha seo ó gach uile úsáideoir a athrú " +"sna roghanna pearsanta." + +msgid "Default language" +msgstr "Teanga loicthe" + +msgid "Check Browser Preference" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" + +#, fuzzy +msgid "Date Formats" +msgstr "i ndiaidh" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" + +#, fuzzy +msgid "Style" +msgstr "Laghdaigh" + +msgid "Format" +msgstr "" + +#, fuzzy +msgid "Sample" +msgstr "Laghdaigh" + +#, fuzzy +msgid "Date" +msgstr "i ndiaidh" + +#, fuzzy +msgid "Time" +msgstr "bogadh míreanna" + +msgid "Date/Time" +msgstr "" + +msgid "Filesystem Permissions" +msgstr "Ceadanna an Comhad-spás" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Togh na ceadanna loicthe do chomhaid agus do chomhadlanna a chuireann Gailearaí ann. Ní " +"rachaidh na ceadanna seo i bhfeidhm na comhaid/comhadlanna curtha chéana féin." + +msgid "New directories" +msgstr "Comhadlanna nua" + +msgid "New files" +msgstr "Comhaid nua" + +msgid "Session Settings" +msgstr "Roghanna an Seisiún" + +#, fuzzy +msgid "Session Lifetime" +msgstr "Roghanna an Seisiún" + +msgid "Inactivity Timeout" +msgstr "Tréimshe Neamhgníomhaíocht" + +msgid "Embedded Markup" +msgstr "" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" + +msgid "Markup" +msgstr "" + +msgid "Email" +msgstr "" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" + +#, fuzzy +msgid "Server" +msgstr "Comhadlann an dáileoir" + +msgid "Username" +msgstr "Logainm" + +msgid "Password" +msgstr "Focal Faire" + +#, fuzzy +msgid "SMTP From Address" +msgstr "Ríomhsheoladh" + +#, fuzzy +msgid "Invalid email address" +msgstr "Ríomhsheoladh" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" + +msgid "Send Email" +msgstr "" + +msgid "Email Test Error" +msgstr "" + +msgid "Cookies" +msgstr "" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "Comhadlann" + +msgid "Invalid cookie path" +msgstr "" + +msgid "Domain" +msgstr "" + +msgid "Invalid cookie domain" +msgstr "" + +msgid "Locking System" +msgstr "" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" + +msgid "Lock system" +msgstr "" + +msgid "Helper Processes" +msgstr "" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +msgid "Priority" +msgstr "" + +msgid "Save" +msgstr "Sábháil" + +#, fuzzy +msgid "Reset" +msgstr "athshocraigh" + +msgid "Create A New Group" +msgstr "Cuir grúpa nua" + +msgid "Group Name" +msgstr "Ainm an Ghrúpa" + +#, fuzzy +msgid "(required)" +msgstr "teastáilte" + +msgid "You must enter a group name" +msgstr "Caithfidh tú ainm ghrúpa a iontráil" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Tá grúpa '%s' ann cheana féin" + +msgid "Create Group" +msgstr "Cuir Grúpa" + +msgid "Cancel" +msgstr "Cealaigh" + +msgid "Create A New User" +msgstr "Cuir úsáideoir nua" + +msgid "You must enter a username" +msgstr "Caithfidh tú logainm a iontráil" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Tá logainm '%s' ag duine eile" + +msgid "Full Name" +msgstr "Lánainm" + +msgid "Email Address" +msgstr "Ríomhsheoladh" + +msgid "You must enter an email address" +msgstr "Caithfidh tú ríomhsheoladh a iontráil" + +msgid "Language" +msgstr "Teanga" + +msgid "You must enter a password" +msgstr "Caithfidh tú focal faire a iontráil" + +msgid "Verify Password" +msgstr "Deimhnigh do Focal Faire Arís" + +msgid "You must enter the password a second time" +msgstr "Caithfidh tú an focal faire faoi dhó a iontráil" + +msgid "The passwords you entered did not match" +msgstr "Ní raibh na focail faire sin inchurtha lena chéile" + +msgid "Create User" +msgstr "Cuir Úsáideoir" + +#, fuzzy +msgid "Delete A Group" +msgstr "Scrios grúpa" + +msgid "Are you sure?" +msgstr "An bhfuil tú cinnte?" + +#, fuzzy, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Beidn an mhír seo dhá scriosadh go buan as an ngailearaí. Níl \"ceallaigh\" ann!" + +msgid "Delete" +msgstr "Scrios" + +#, fuzzy +msgid "Delete a User" +msgstr "Scrios úsáideoir" + +#, fuzzy, c-format +msgid "User %s is the owner of %s items." +msgstr "Seo é cur síos fada an mír." + +#, c-format +msgid "Delete user %s and..." +msgstr "" + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "" + +#, fuzzy, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Beidh %s dhá scriosadh go buan as an ngailearaí. Níl \"ceallaigh\" ann!" + +msgid "Edit a group" +msgstr "Athraigh grúpa" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "" + +#, fuzzy, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Úsáideoir '%s' curtha leis an ngrúpa" + +#, fuzzy, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Úsáideoir '%s' scriosta as an ngrúpa" +msgstr[1] "Úsáideoir '%s' scriosta as an ngrúpa" +msgstr[2] "Úsáideoir '%s' scriosta as an ngrúpa" +msgstr[3] "Úsáideoir '%s' scriosta as an ngrúpa" +msgstr[4] "Úsáideoir '%s' scriosta as an ngrúpa" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Níl aon úsáideoir sa ngrúpa seo." +msgstr[1] "Tá úsáideoir amháin sa ngrúpa seo." +msgstr[2] "Tá %d úsáideoir sa ngrúpa seo." +msgstr[3] "Tá %d n-úsáideoir sa ngrúpa seo." +msgstr[4] "Tá %d úsáideoir sa ngrúpa seo." + +#, fuzzy +msgid "Members" +msgstr "Cuir Ball" + +msgid "« first" +msgstr "« céad" + +msgid "« back" +msgstr "« ar ais" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Ag féachaint leathanach %d as a %d" + +msgid "next »" +msgstr "ar aghaidh »" + +msgid "last »" +msgstr "déanach »" + +#, fuzzy +msgid "Filter" +msgstr "Scag:" + +msgid "Clear" +msgstr "Glan" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "Níl úsáideoir inchurtha leis do scagaire." +msgstr[1] "Tá úsáideoir amháin inchurtha leis do scagaire." +msgstr[2] "Tá %d úsáideoir inchurtha leis do scagaire." +msgstr[3] "Tá %d n-úsáideoir inchurtha leis do scagaire." +msgstr[4] "Tá %d úsáideoir inchurtha leis do scagaire." + +#, fuzzy +msgid "Remove selected" +msgstr "Scrios Ball" + +msgid "You must select a user to remove." +msgstr "Caithfidh tú úsáideoir a scrios a toghadh." + +#, fuzzy +msgid "You can't remove yourself from this group." +msgstr "Scrios grúpa" + +msgid "Add Member" +msgstr "Cuir Ball" + +msgid "Add" +msgstr "Cuir" + +msgid "You must enter a username." +msgstr "Caithfidh tú logainm a iontráil." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Níl úsáideoir '%s' ar bith ann." + +#, fuzzy +msgid "This user already is in this group." +msgstr "Tá an logainm sin ag duine eile" + +msgid "Done" +msgstr "Críochnaithe" + +msgid "Edit a user" +msgstr "Athraigh úsáideoir" + +msgid "That username is already in use" +msgstr "Tá an logainm sin ag duine eile" + +msgid "You must enter a new username" +msgstr "Caithfidh tú logainm nua a iontráil" + +#, fuzzy +msgid "E-mail Address" +msgstr "Ríomhsheoladh" + +msgid "(suggested)" +msgstr "" + +msgid "Options" +msgstr "Roghanna" + +msgid "Lock user." +msgstr "" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +msgid "Reset failed login count." +msgstr "" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" + +msgid "Group Management" +msgstr "Riarachán na nGrúpaí" + +#, c-format +msgid "Removed group '%s'" +msgstr "Grúpa '%s' scriosta" + +#, c-format +msgid "Created group '%s'" +msgstr "Bhí grúpa '%s' curtha" + +#, c-format +msgid "Modified group '%s'" +msgstr "Grúpa '%s' modhnaithe" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Níl aon ghrúpa sa gcóras." +msgstr[1] "Tá grúpa amháin sa gcóras." +msgstr[2] "Tá %d grúpa sa gcóras." +msgstr[3] "Tá %d ngrúpa sa gcóras." +msgstr[4] "Tá %d ghrúpa sa gcóras." + +msgid "Edit Group" +msgstr "Athraigh Grúpa" + +msgid "Edit" +msgstr "Athraigh" + +msgid "Add/Remove Users" +msgstr "Cuir/Scrios Úsáideora an Ghrúpa" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Níl grúpa '%s' ar bith ann." + +#, fuzzy +msgid "You cannot delete that group" +msgstr "Scrios grúpa" + +msgid "You cannot edit that group's users" +msgstr "" + +msgid "Edit Group (by list)" +msgstr "Athraigh Grúpa (faoi liosta)" + +msgid "Action" +msgstr "Aicsean" + +msgid "edit" +msgstr "athraigh" + +msgid "delete" +msgstr "scrios" + +#, fuzzy +msgid "members" +msgstr "Scrios Ball" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "Níl aon ghrúpa inchurtha leis do scagaire." +msgstr[1] "Tá grúpa amháin inchurtha leis do scagaire." +msgstr[2] "Tá %d grúpa inchurtha leis do scagaire." +msgstr[3] "Tá %d ngrúpa inchurtha leis do scagaire." +msgstr[4] "Tá %d ghrúpa inchurtha leis do scagaire." + +msgid "System Maintenance" +msgstr "" + +#, fuzzy, c-format +msgid "Completed %s task successfully." +msgstr "Íomhá rothlaithe go rathúil" + +#, fuzzy, c-format +msgid "The %s task failed to complete successfully." +msgstr "Albam curtha go rathúil." + +#, fuzzy +msgid "Task name" +msgstr "Logainm" + +#, fuzzy +msgid "Last run" +msgstr "déanach »" + +msgid "Success/Fail" +msgstr "" + +#, fuzzy +msgid "Not run yet" +msgstr "Níl sé seo fós i bhfeidhm" + +#, fuzzy +msgid "Success" +msgstr "Bunábhar" + +#, fuzzy +msgid "Failed" +msgstr "Comhad" + +#, fuzzy +msgid "run now" +msgstr "Anaithnid" + +msgid "Last Run Details:" +msgstr "" + +msgid "Performance Tuning" +msgstr "" + +#, fuzzy +msgid "Updated performance settings successfully" +msgstr "Albam curtha go rathúil." + +#, fuzzy +msgid "Deleted all saved pages" +msgstr "Scrios úsáideoir" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +#, fuzzy +msgid "Medium acceleration" +msgstr "Roghanna Riaracháin" + +msgid "High acceleration" +msgstr "" + +#, fuzzy +msgid "Guest Users" +msgstr "athraigh úsáideora" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "stop __PLUGIN__" + +#, fuzzy +msgid "Status: Active" +msgstr "Gníomhach" + +msgid "__PLUGIN__ activated" +msgstr "" + +#, fuzzy +msgid "Status: Not Installed" +msgstr "suiteáil" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "stop __PLUGIN__" + +msgid "Warning!" +msgstr "" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Roghnaigh na míreanna a theastaíonn uait a bhogadh __PLUGIN__" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "i ndiaidh (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "suiteáil (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "teastáilte (__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Modúil an Ghailearaí" + +#, fuzzy +msgid "Get More Plugins" +msgstr "Modúil an Ghailearaí" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Tá na feidhmeanna Ghailearaí pacáilte scartha óna chéile mar modúil. Is féidir leat modúil " +"eile a íoslódáil agus a suiteáil, nó feidhmeanna a míchumasú, mura dteastaíonn uait iad a " +"úsáid. Ionas feidhm go húsáid, caithfidh tú í a suiteáil, a roghnú (más riachtanach é), agus " +"a tosú." + +#, fuzzy +msgid "Plugin Name" +msgstr "Lánainm" + +#, fuzzy +msgid "Installed" +msgstr "suiteáil" + +msgid "Version" +msgstr "Leagan" + +msgid "Actions" +msgstr "Aicsin" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "" + +msgid "configure" +msgstr "roghnaigh" + +#, fuzzy +msgid "up to date" +msgstr "i ndiaidh" + +#, fuzzy +msgid "upgrade required" +msgstr "teastáilte" + +#, fuzzy +msgid "not installed" +msgstr "suiteáil" + +msgid "incompatible" +msgstr "" + +msgid "Repository" +msgstr "" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +msgid "Repository Error" +msgstr "" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "Caithfidh tú úsáideoir a scrios a toghadh." + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +msgid "Continue" +msgstr "" + +msgid "Download Plugin List" +msgstr "" + +msgid "Show Repository List" +msgstr "" + +#, fuzzy +msgid "Upgrade Gallery" +msgstr "Gailearaí" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +#, fuzzy +msgid "upgrade available" +msgstr "Gailearaí" + +msgid "locked" +msgstr "" + +#, fuzzy +msgid "Theme Name" +msgstr "Téama" + +msgid "Module Name" +msgstr "Ainm an Mhodúl" + +#, fuzzy +msgid "Latest" +msgstr "i ndiaidh" + +msgid "Locked Plugin" +msgstr "" + +msgid "Incompatible Plugin" +msgstr "" + +#, fuzzy +msgid "Upgrade Available" +msgstr "Gailearaí" + +msgid "download" +msgstr "" + +msgid "modify" +msgstr "" + +msgid "Upgrade All Plugins" +msgstr "" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +msgid "Upgrade All" +msgstr "" + +#, c-format +msgid "Download %s" +msgstr "" + +msgid "No packages have been selected." +msgstr "" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "Ainm Chomhaid" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "Roghanna na teanga" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "Leagan" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +#, fuzzy +msgid "Update" +msgstr "i ndiaidh" + +#, fuzzy +msgid "Gallery Themes" +msgstr "Gailearaí" + +#, fuzzy, c-format +msgid "Successfully activated theme %s" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy, c-format +msgid "Successfully deactivated theme %s" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy, c-format +msgid "Successfully installed theme %s" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy, c-format +msgid "Successfully upgraded theme %s" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy +msgid "Successfully saved default album settings" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy +msgid "Restored theme settings" +msgstr "Roghanna an Chuntais" + +msgid "Defaults" +msgstr "Luachanna" + +#, fuzzy +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Seo iad na luachanna loicthe. Féadann siad athraithe i gach uile albam ina dhiaidh sin." + +msgid "Default sort order" +msgstr "Ord shóirt loicthe" + +msgid "with" +msgstr "" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +#, fuzzy +msgid "New albums" +msgstr "athraigh an t-albam seo" + +#, fuzzy +msgid "Save Defaults" +msgstr "Luachanna" + +#, fuzzy, c-format +msgid "%s Theme Settings" +msgstr "Roghanna an Chuntais" + +#, fuzzy +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Seo iad na luachanna loicthe. Féadann siad athraithe i gach uile albam ina dhiaidh sin." + +msgid "Available" +msgstr "" + +msgid "Choose a block" +msgstr "" + +#, fuzzy +msgid "Selected" +msgstr "Scrios" + +msgid "Remove" +msgstr "Scrios" + +#, fuzzy +msgid "Move Up" +msgstr "Bogadh" + +#, fuzzy +msgid "Move Down" +msgstr "Bogadh" + +msgid "Parameter" +msgstr "" + +#, fuzzy +msgid "Value" +msgstr "Laghdaigh" + +msgid "There are no settings for this theme" +msgstr "" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "Roghanna an Chuntais" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "" + +#, fuzzy +msgid "Order" +msgstr "Athshórtáil" + +msgid "up" +msgstr "" + +msgid "down" +msgstr "" + +msgid "User Management" +msgstr "Riarachán na hÚsáideor" + +#, c-format +msgid "Removed user '%s'" +msgstr "Úsáideoir '%s' scriosta" + +#, c-format +msgid "Created user '%s'" +msgstr "Bhí úsáideoir '%s' curtha" + +#, c-format +msgid "Modified user '%s'" +msgstr "Úsáideoir '%s' modhnaithe" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Níl aon úsáideoir sa gcóras." +msgstr[1] "Tá úsáideoir amháin sa gcóras." +msgstr[2] "Tá %d úsáideoir sa gcóras." +msgstr[3] "Tá %d n-úsáideoir sa gcóras." +msgstr[4] "Tá %d úsáideoir sa gcóras." + +msgid "Edit User" +msgstr "Athraigh Úsáideoir" + +msgid "You cannot delete yourself!" +msgstr "" + +msgid "You cannot delete the special guest user." +msgstr "" + +msgid "Edit User (by list)" +msgstr "Athraigh Úsáideoir (faoi liosta)" + +#, fuzzy +msgid "Locked" +msgstr "Laghdaigh" + +#, fuzzy +msgid "Failed Logins" +msgstr "Comhad" + +msgid "Thumbnails" +msgstr "Pictiúrín" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" + +#, fuzzy +msgid "Create thumbnails now" +msgstr "Athghin pictiúrín" + +#, fuzzy +msgid "This is a test email from Gallery2" +msgstr "Seo é barr do Ghailearaí" + +msgid "Edit Conflict!" +msgstr "" + +msgid "Security Violation" +msgstr "Sárú Slándála" + +msgid "Database Error" +msgstr "" + +msgid "Platform Error" +msgstr "" + +#, fuzzy +msgid "Authentication Failure" +msgstr "Aicsean" + +msgid "Error" +msgstr "Earráid" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" + +msgid "Go back and try again" +msgstr "" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "Scrios an mhír seo" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" + +msgid "The action you attempted is not permitted." +msgstr "Níl an aicsean sin údarach." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "" + +#, fuzzy +msgid "Back to the Gallery" +msgstr "Téigh ar ais go dtí an Mhír" + +msgid "Error Detail" +msgstr "" + +#, fuzzy +msgid "System Information" +msgstr "Ceann cúrsa" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" + +#, fuzzy +msgid "Add Sub-Album" +msgstr "Cuir Albam" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Ainm an albaim seo ar do chruadhiosca. Caithfidh sé uathúil don albam seo. Ná iontráil ach " +"na carachtair aibítrí, uimhriúla, '_' agus '-'. Is féidir uait é a ath-ainmnigh níos déanaí." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Tá carachtair neamhbhailí ag an logainm seo. Togh ceann eile, le do thoil." + +msgid "You must enter a name for this album." +msgstr "Caithfidh tú ainm don albam seo a iontráil." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Tá an logainm seo ag duine eile. Togh ainm eile, le do thoil." + +msgid "This is the album title." +msgstr "Seo é teideal an albaim." + +msgid "This is the album summary." +msgstr "Seo í achoimre an albaim." + +msgid "Keywords are not visible, but are searchable." +msgstr "Ní bhíonn na heocharfhocail infheichte, ach bíonn siad incuardaithe." + +msgid "This is the long description of the album." +msgstr "Seo é cur síos fada an albaim." + +msgid "Create" +msgstr "Cuir" + +msgid "Upload Complete" +msgstr "Uaslodáil Críochnaithe" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Ní raibh aon chomhad curtha." +msgstr[1] "Bhí comhad amháin curtha go rathúil." +msgstr[2] "Bhí %d comhad curtha go rathúil." +msgstr[3] "Bhí %d gcomhad curtha go rathúil." +msgstr[4] "Bhí %d chomhad curtha go rathúil." + +msgid "No files added." +msgstr "Ní raibh aon comhad curtha." + +#, c-format +msgid "Added %s" +msgstr "%s curtha" + +#, c-format +msgid "Failed to add %s" +msgstr "" + +msgid "Add more files" +msgstr "Cuir comhaid breiseanna" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" + +#, fuzzy +msgid "Upload files directly from your computer." +msgstr "Ní chaith comhad anáirde go díreach as do ríomhaire." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Iontráil an bealach iomlán chun comhad, agus ceannteideal (roghnach) thíos sna boscaí." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "" + +#, fuzzy +msgid "Assign caption to:" +msgstr "Riarachán an Ghailearaí" + +msgid "No Thumbnail" +msgstr "Níl pictiúrín ann" + +#, fuzzy +msgid "Delete Items" +msgstr "Scrios an mhír seo" + +msgid "No items were selected for deletion" +msgstr "" + +#, fuzzy, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Ní raibh aon chomhad curtha." +msgstr[1] "Bhí comhad amháin curtha go rathúil." +msgstr[2] "Bhí %d comhad curtha go rathúil." +msgstr[3] "Bhí %d gcomhad curtha go rathúil." +msgstr[4] "Bhí %d chomhad curtha go rathúil." + +msgid "This album contains no items to delete" +msgstr "" + +#, fuzzy +msgid "Choose the items you want to delete" +msgstr "Roghnaigh na míreanna a theastaíonn uait a bhogadh" + +#, fuzzy, c-format +msgid "(page %d of %d)" +msgstr "Ag féachaint leathanach %d as a %d" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "(sonraí)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy +msgid "(empty album)" +msgstr "(albam)" + +msgid "Check All" +msgstr "" + +msgid "Check None" +msgstr "" + +msgid "Invert" +msgstr "" + +msgid "Previous Page" +msgstr "" + +#, fuzzy +msgid "Next Page" +msgstr "Athraigh Íomhá" + +#, fuzzy +msgid "Deletion Complete" +msgstr "Uaslodáil Críochnaithe" + +#, fuzzy +msgid "Item successfully deleted" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Roghnaigh na míreanna a theastaíonn uait a bhogadh" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "" + +msgid "There was a problem processing your request." +msgstr "" + +msgid "Sort order" +msgstr "Ord sóirt" + +#, fuzzy +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "Is é an t-ord shóirt loicthe don albam seo. Rachaidh sé i bhfeidhm ar gach míre nua." + +#, fuzzy +msgid "Apply to all subalbums" +msgstr "Cuir le fo-míreanna" + +#, fuzzy +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "Tá pictiúrín teastáilte ag gach mír. Roghnaigh an luach loicthe (i bpicsil) anseo. " + +msgid "You must enter a number (greater than zero)" +msgstr "Caithfidh tú uimhir a iontráil (níos mó ná a náid)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "" + +msgid "Resized Images" +msgstr "Íomhánna Laghduithe" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Bheadh ilméideannasa do gach mír i do chuid albam. Roghnaigh na loicméideanna thíos anseo." + +msgid "Active" +msgstr "Gníomhach" + +msgid "Target Size (pixels)" +msgstr "Méid Sprioctha (picsil)" + +msgid "You must enter a valid size" +msgstr "Caithfidh tú méid bailí a iontráil" + +msgid "Use these target sizes in all subalbums" +msgstr "" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "Cuir le fo-míreanna" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "Cuir le fo-míreanna" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Athghin pictiúrín" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Athghin íomhánna laghduithe" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" + +msgid "Width" +msgstr "" + +#, fuzzy +msgid "You must enter a value greater than or equal to 0" +msgstr "Caithfidh tú uimhir a iontráil (níos mó ná a náid)" + +msgid "Height" +msgstr "" + +msgid "There were errors saving some items" +msgstr "" + +msgid "There were errors saving all items" +msgstr "" + +#, fuzzy +msgid "Successfully saved all items" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy +msgid "This album contains no items" +msgstr "Níl aon úsáideoir sa ngrúpa seo." + +#, fuzzy +msgid "Saved successfully." +msgstr "Roghanna sábháilte go rathúil." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" + +#, fuzzy +msgid "You do not have permissions to modify this item." +msgstr "Níl cead agat míreanna a chur leis an albam seo" + +msgid "Save and Done" +msgstr "" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Ainm an albaim seo ar do chruadhiosca. Caithfidh sé uathúil don albam seo. Ná iontráil ach " +"na carachtair aibítrí, uimhriúla, '_' agus '-'." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Tá carachtair neamhbhailí ag an logainm seo. Togh ceann eile, le do thoil." + +msgid "You must enter a name for this item." +msgstr "Caithfidh tú ainm don mhír seo a iontráil." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Tá an logainm seo ag duine eile. Togh ainm eile, le do thoil." + +msgid "The title of this item." +msgstr "An teideal an míre seo." + +msgid "The root album must have a title." +msgstr "" + +msgid "The summary of this item." +msgstr "An achoimre an míre seo." + +msgid "This is the long description of the item." +msgstr "Seo é cur síos fada an mír." + +#, c-format +msgid "%s Date and Time" +msgstr "" + +msgid "Set the date and time when this image was captured." +msgstr "" + +msgid "Set the date and time to be displayed for this item." +msgstr "" + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "" + +#, fuzzy +msgid "Date:" +msgstr "i ndiaidh" + +#, fuzzy +msgid "Time:" +msgstr "bogadh míreanna" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" + +#, fuzzy +msgid "You must enter a valid date and time" +msgstr "Caithfidh tú méid bailí a iontráil" + +#, fuzzy +msgid "Thumbnail" +msgstr "Pictiúrín" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "Caithfidh tú ainm don mhír seo a iontráil." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" + +#, fuzzy +msgid "Resized Photos" +msgstr "Íomhánna Laghduithe" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "Is iad na méideanna an míre a theastaíonn uait infheichte." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" + +msgid "Aspect Ratio: " +msgstr "" + +msgid "Crop" +msgstr "" + +#, fuzzy +msgid "Undo Changes" +msgstr "Athraigh" + +msgid "Reset to default" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" + +msgid "Rotate" +msgstr "Rothlaigh" + +#, fuzzy +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Ní féidir uait an íomhá a rothnú ach i gcéimeanna 90°." + +msgid "CC 90°" +msgstr "90° dul tuathal" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "90° ar deiseal" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" + +msgid "Scale" +msgstr "Laghdaigh" + +#, fuzzy +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Laghdaigh nó méadaigh an íomhá bhunúsach: Nuair a bhíonns Gailearaí íomhá a laghdú, beidh sé " +"an coibhneas toisí a choimeád, chun saobhadh a sheachaint. Beidh an luach thíos (i bpicsil) " +"bosca theorainn a tharraingt. Beidh Gailearaí an íomhá a laghdú go rachaidh sí isteach sa " +"mbosca." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" + +msgid "You must enter a size" +msgstr "Caithfidh tú méid a iontráil" + +msgid "Preserve Original" +msgstr "Caomhnaigh an Bhunchóip" + +#, fuzzy +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Ní modhnóidh Gallery d'íomhá bhunúsach nuair a rothlú agus a laghdú sé í. Ina áit, cruthóidh " +"sé íomhá chóipeáilte lenar a modhnaigh. Beidh níos mó spás diosca úsáidte mar sin, ach beidh " +"d'íomhá bhunúsach caomhnaithe. Mura mbeidh an rogha seo cumasaithe, beidh aicsin (cuir i " +"gcás rothlaigh agus laghdaigh) an bunchóipse a modhnú." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +#, fuzzy +msgid "Preserve Original Photo" +msgstr "Caomhnaigh an Bhunchóip" + +#, fuzzy +msgid "Modified Photo" +msgstr "Íomhá Mhodhnaithe" + +#, fuzzy +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Seo íomhá chóipeáilte a bhí laghdaithe nó rothlaithe. Tá an bhunchóip fós ann, ach níl sí " +"fós úsáidte. Rachaidh na hathruithe i bhfeidhm ach ar an chóip." + +msgid "Restore original" +msgstr "Athbhunaigh an bhunchóip" + +#, fuzzy +msgid "Choose a theme" +msgstr "Togh albam nua dhóibh" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "" + +msgid "Choose Theme" +msgstr "" + +#, c-format +msgid "Configure the %s theme" +msgstr "" + +msgid "These settings only apply to the theme for this album." +msgstr "" + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" + +#, fuzzy +msgid "Album Highlight" +msgstr "Cuir Íomhá Ghealáin" + +#, fuzzy +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Is féidir uait an míre seo a úsáid don tuismitheoir í." + +#, fuzzy +msgid "Highlight for:" +msgstr "Cuir Íomhá Ghealáin" + +#, fuzzy +msgid "Highlight" +msgstr "Cuir Íomhá Ghealáin" + +msgid "Move an Item" +msgstr "Bogadh Mír" + +#, fuzzy, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Ní raibh aon chomhad curtha." +msgstr[1] "Bhí comhad amháin curtha go rathúil." +msgstr[2] "Bhí %d comhad curtha go rathúil." +msgstr[3] "Bhí %d gcomhad curtha go rathúil." +msgstr[4] "Bhí %d chomhad curtha go rathúil." + +msgid "This album contains no items to move." +msgstr "" + +msgid "Source" +msgstr "Bunábhar" + +msgid "Choose the items you want to move" +msgstr "Roghnaigh na míreanna a theastaíonn uait a bhogadh" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "Ní ghlacann an ceann cúrsa seo fo-albaim, agus mar sin bhí gach fo-albam curtha as." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Glacann an ceann cúrsa seo níl ach na fo-albaim, agus mar sin bhí gach do-albam curtha as." + +msgid "You are not allowed to move this item away from here." +msgstr "Níl cead agat an mhír seo a bhogadh in áit eile." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Níl cead agat albam a bhogadh ar an láthair tosaithe." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Níl cead agat mír a bhogadh ar an láthair tosaithe." + +msgid "You cannot move an album into its own subtree." +msgstr "Ní féidir uait an t-albam i fo-chrann eisean féin a bhogadh." + +msgid "Destination" +msgstr "Ceann cúrsa" + +msgid "Choose a new album for them" +msgstr "Togh albam nua dhóibh" + +msgid "You don't have the permission to add items in this album" +msgstr "Níl cead agat míreanna a chur leis an albam seo" + +msgid "No destination chosen" +msgstr "Ní raibh ceann cúrsa athrú" + +msgid "Move" +msgstr "Bogadh" + +#, fuzzy +msgid "Successfully moved" +msgstr "Ní raibh aon chomhad curtha." + +#, fuzzy +msgid "Choose a destination album" +msgstr "Togh albam nua dhóibh" + +msgid "Permissions" +msgstr "Ceadanna" + +#, fuzzy +msgid "Owner changed successfully" +msgstr "Focal faire athrú go rathúil" + +#, fuzzy +msgid "Group permission added successfully" +msgstr "Roghanna an chuntais sábháilte go rathúil" + +#, fuzzy +msgid "User permission added successfully" +msgstr "Roghanna sábháilte go rathúil" + +#, fuzzy +msgid "Group permission removed successfully" +msgstr "Roghanna an chuntais sábháilte go rathúil" + +#, fuzzy +msgid "User permission removed successfully" +msgstr "Albam curtha go rathúil." + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Tá foireann ceadanna neamhspleách ag gach mír. Ní rachaidh na ceadanna an tuismitheora i " +"bhfeidhm ar na ceadanna an leanbh. Mar sin, is féidir leat teacht a theorannú ar an " +"dtuismitheoir an míre, ach mar sin féin, teacht iomlán a dheonú don míre féin, nó a mhalairt " +"go cruinn. Is cuir grúpaí agus ceadanna a dáileadh orthu an úsáid is éifeachtach an chorás " +"ceada seo. Ansin, má theastaíonn uait ceadanna a thabhairt don úsáideoir áirithe, is féidir " +"leat an úsáideoir a chur leis an ngrúpa oiriúnaigh (nó a scriosadh as)." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Tá an mhír seo ag úsáideoir: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Tá an mhír seo ag úsáideoir: %s (%s)" + +msgid "New owner" +msgstr "Úinéir nua" + +msgid "Change" +msgstr "Athraigh" + +#, fuzzy +msgid "Apply new owner to sub-items" +msgstr "Cuir le fo-míreanna" + +msgid "You must enter a user name" +msgstr "Caithfidh tú logainm a iontráil" + +msgid "The user name you entered is invalid" +msgstr "Níl an logainm seo bailí" + +msgid "Apply changes" +msgstr "Cuir athruithe" + +#, fuzzy +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Tá fo-míreanna ag an míre seo. Is féidir uait na hathruithe seo leis an míre seo a chur, nó " +"leis gach uile fo-mhír. Tábhachtach: má chuirfidh tú na hathruithe leis na fo-míreanna, " +"beidh siad cumaisc lena gceadanna atá ann anois. B'fhéidir go mbeadh sé mearbhallach má " +"bhíonn mórán fo-míreanna ann. Is cuir grúpaí agus ceadanna a dáildeadh orthu an úsáid is " +"éifeachtach an chorás ceada seo. Ansin, má theastaíonn uait ceadanna a thabhairt don " +"úsáideoir áirithe, is féidir leat an úsáideoir a chur leis an ngrúpa oiriúnaigh (nó a " +"scriosadh as)." + +msgid "Apply to sub-items" +msgstr "Cuir le fo-míreanna" + +msgid "Group Permissions" +msgstr "Ceadanna an Ghrúpa" + +msgid "Group name" +msgstr "Ainm an ghrúpa" + +msgid "Permission" +msgstr "Cead" + +msgid "New Group Permission" +msgstr "Cead nua an ghrúpa" + +msgid "Add Permission" +msgstr "Cuir Cead" + +msgid "The permission you chose is invalid" +msgstr "Níl an cead seo bailí" + +msgid "The group name you entered is invalid" +msgstr "Níl an t-ainm ghrúpa seo bailí" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Tá an cead seo ag an ngrúpa seo cheana féin (deimhnigh na fo-ceadanna)" + +msgid "User Permissions" +msgstr "Ceadanna Úsáideoire" + +msgid "User name" +msgstr "Logainm" + +msgid "New User Permission" +msgstr "Cead nua an úsáideoire" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Tá an cead seo ag an úsáideoir seo cheana féin (deimhnigh na fo-ceadanna)" + +msgid "Reorder Album" +msgstr "Athshórtáil an tAlbam" + +#, fuzzy +msgid "Order saved successfully" +msgstr "Athruithe sábháilte go rathúil." + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Tá ord sóirt uathoibríoch ag an albam seo, agus mar sin ní féidir leat an t-ord míreanna a " +"athrú go láimhe. Caitfidh tú an t-ord sóirt a chur as ar an gcéad." + +msgid "change" +msgstr "athraigh" + +msgid "Change the order of the items in this album." +msgstr "Athraigh ord na míreanna san albam seo." + +msgid "Move this item" +msgstr "Bogadh an mhír seo" + +msgid "before" +msgstr "roimh" + +msgid "after" +msgstr "i ndiaidh" + +msgid "Reorder" +msgstr "Athshórtáil" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +#, fuzzy +msgid "Admin Login" +msgstr "Roghanna Riaracháin" + +msgid "Enter a URL" +msgstr "" + +msgid "Enter some text describing the URL" +msgstr "" + +msgid "Enter an image URL" +msgstr "" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "" + +#, fuzzy +msgid "image" +msgstr "bogadh míreanna" + +#, fuzzy +msgid "color" +msgstr "roghnaigh" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "" + +msgid "Missing Theme" +msgstr "" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +msgid "Admin Options" +msgstr "Roghanna Riaracháin" + +msgid "User Options" +msgstr "Roghanna Úsáideoire" + +msgid "Password changed successfully" +msgstr "Focal faire athrú go rathúil" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" + +#, fuzzy +msgid "Current Password" +msgstr "Athraigh focal faire" + +#, fuzzy +msgid "You must enter your current password" +msgstr "Caithfidh tú do focal faire a iontráil arís" + +#, fuzzy +msgid "Incorrect password" +msgstr "Athraigh focal faire" + +#, fuzzy +msgid "New Password" +msgstr "Focal Faire" + +#, fuzzy +msgid "You must enter a new password" +msgstr "Caithfidh tú focal faire a iontráil" + +#, fuzzy +msgid "Verify New Password" +msgstr "Deimhnigh do Focal Faire Arís" + +#, fuzzy +msgid "You must enter your new password again!" +msgstr "Caithfidh tú do focal faire a iontráil arís" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +#, fuzzy +msgid "Login to your account" +msgstr "Logáil isteach go dtí do chuid cuntas" + +msgid "Your password has been recovered, please login." +msgstr "" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "Níl do logainm nó do focal faire bailí. Déan iarracht ar logáil arís." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "Roghanna an chuntais sábháilte go rathúil" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "Caithfidh tú ríomhsheoladh a iontráil" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "Caithfidh tú do focal faire a iontráil arís" + +msgid "Recover a lost or forgotten password" +msgstr "" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" + +msgid "Your recovery request has been sent!" +msgstr "" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +#, fuzzy +msgid "Recover" +msgstr "Scrios" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" + +msgid "Recover Password for Username" +msgstr "" + +#, fuzzy +msgid "You must enter a username to recover the password for." +msgstr "Caithfidh tú focal faire nua faoi dhó a iontráil dhó a athrú." + +#, fuzzy +msgid "The username you entered does not exist." +msgstr "Níl an logainm seo bailí" + +msgid "Authorization Incorrect" +msgstr "" + +msgid "Recovery Instructions" +msgstr "" + +msgid "AuthFile Missing" +msgstr "" + +msgid "AuthFile Unreadable" +msgstr "" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" + +#, fuzzy +msgid "Refresh" +msgstr "roimh" + +msgid "This page will allow you to reset the password on your account." +msgstr "" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "" + +#, fuzzy +msgid "Username missing" +msgstr "Ceadanna Úsáideoire" + +msgid "Submit" +msgstr "" + +#, c-format +msgid "Hello %s," +msgstr "" + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" + +#, c-format +msgid "Your username is: %s" +msgstr "" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" + +msgid "Thank you!" +msgstr "" + +msgid "guest" +msgstr "cuairteoir" + +#, c-format +msgid "display mode: %s" +msgstr "" + +#, fuzzy, c-format +msgid "Date: %s" +msgstr "i ndiaidh" + +#, fuzzy, c-format +msgid "Owner: %s" +msgstr "Úinéir" + +#, fuzzy, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "náid nóiméad" +msgstr[1] "nóiméad amháin" +msgstr[2] "%d nóiméid" +msgstr[3] "%d nóiméid" +msgstr[4] "%d nóiméid" + +#, fuzzy, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "náid nóiméad" +msgstr[1] "nóiméad amháin" +msgstr[2] "%d nóiméid" +msgstr[3] "%d nóiméid" +msgstr[4] "%d nóiméid" + +#, c-format +msgid "Views: %d" +msgstr "" + +#, fuzzy +msgid "« album actions »" +msgstr "« Aon cheann »" + +#, fuzzy +msgid "« item actions »" +msgstr "« Aon cheann »" + +msgid "Go" +msgstr "" + +msgid "Navigation" +msgstr "Stiúradh" + +msgid "next" +msgstr "" + +msgid "last" +msgstr "" + +#, fuzzy, c-format +msgid "Page %d of %d" +msgstr "Ag féachaint leathanach %d as a %d" + +#, fuzzy, c-format +msgid "%d of %d" +msgstr "Ag féachaint leathanach %d as a %d" + +msgid "first" +msgstr "" + +msgid "previous" +msgstr "" + +msgid "Page:" +msgstr "" + +#, fuzzy, c-format +msgid "%d. %s" +msgstr "Athraigh Úsáideoir" + +#, fuzzy +msgid "Size: " +msgstr "Méid" + +msgid "Unknown" +msgstr "Anaithnid" + +msgid "Full size: " +msgstr "" + +#, fuzzy +msgid "Setting" +msgstr "Roghanna an Albaim" + +msgid "Use Global" +msgstr "" + +#, fuzzy +msgid "Language selector" +msgstr "Roghanna na teanga" + +#, fuzzy +msgid "Item actions" +msgstr "Roghanna Riaracháin" + +msgid "Use dropdown menu" +msgstr "" + +#, fuzzy +msgid "Login block" +msgstr "Log Ann" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/he.po b/Source/gallery2/modules/core/po/he.po new file mode 100644 index 0000000..6ed9c8a --- /dev/null +++ b/Source/gallery2/modules/core/po/he.po @@ -0,0 +1,3607 @@ +# $Id: he.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Guy Sheffer , 2006. +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 16:14+0100\n" +"Last-Translator: Guy Sheffer \n" +"Language-Team: hebrew \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: KBabel 1.11.2\n" + +msgid "Gallery Email Test" +msgstr "ניסוי דואר גלרייה" + +msgid "forever" +msgstr "לתמיד" + +msgid "High Priority (Me first!)" +msgstr "עדיפות גבוהה (אני קודם!)" + +msgid "Low Priority (I want to share!)" +msgstr "עדיפות נמוכה (אני רוצה להתחלק!)" + +msgid "No Markup" +msgstr "ללא טאגים מובנים" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML ישיר" + +msgid "Database" +msgstr "מסד נתונים" + +msgid "File" +msgstr "קובץ" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "(דקה %d)" +msgstr[1] "(%d דקות)" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "(שעה %d)" +msgstr[1] "(%d שעות)" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "(יום %d)" +msgstr[1] "(%d ימים)" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "(שבוע %d)" +msgstr[1] "(%d שבועות)" + +msgid "" +msgstr "<ללא>" + +msgid "No acceleration" +msgstr "ללא תאוצה" + +msgid "Partial acceleration" +msgstr "תאוצה חלקית" + +msgid "Full acceleration" +msgstr "תאוצה מלאה" + +msgid "Themes" +msgstr "עיצוב" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "allery Modules" + +msgid "Done." +msgstr "הושלם." + +msgid "Updating Packages" +msgstr "" + +#, c-format +msgid "Preparing %s" +msgstr "" + +#, c-format +msgid "Downloading %s" +msgstr "מוריד %s" + +#, fuzzy, c-format +msgid "Activating %s" +msgstr "פעולות" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "שפת ברירת המחדל" + +#, fuzzy +msgid "Update completed with errors." +msgstr "העלאה הושלמה" + +#, fuzzy +msgid "Update complete." +msgstr "העלאה הושלמה" + +msgid "install" +msgstr "התקנה" + +msgid "upgrade" +msgstr "שדרוג" + +msgid "activate" +msgstr "הפעל" + +msgid "uninstall" +msgstr "הסרה" + +msgid "deactivate" +msgstr "בטל פעילות" + +msgid "Inherit settings from parent album" +msgstr "קבל הגדרות מאלבום-האב" + +msgid "Use these settings" +msgstr "השתמש בהגדרות אלה" + +msgid "Installing the core module" +msgstr "מתקיד את מודות הגלעין" + +msgid "key" +msgstr "מפתח" + +msgid "All access" +msgstr "כל הגישות" + +msgid "[core] View item" +msgstr "[ליבה] הצג פריט" + +msgid "[core] View resized version(s)" +msgstr "[ליבה] הצג גירסא(ות) בגדלים שונים" + +msgid "[core] View original version" +msgstr "[ליבה] הצג גירסה מקורית" + +msgid "[core] View all versions" +msgstr "[ליבה] הצג את כל הגירסאות" + +msgid "[core] Add sub-album" +msgstr "[ליבה] הוסף תת-אלבום" + +msgid "[core] Add sub-item" +msgstr "[ליבה] הוסף תת-פריט" + +msgid "[core] Edit item" +msgstr "[ליבה] ערוך פריט" + +msgid "[core] Change item permissions" +msgstr "[ליבה] שנה הרשאות פריט" + +msgid "[core] Delete item" +msgstr "[ליבה] מחק פריט" + +msgid "Upgrading permissions" +msgstr "עריכת הרשאות" + +msgid "Deleting old permission tables" +msgstr "מוחק טבלת הרשאות ישנה" + +msgid "Registered Users" +msgstr "משתמשים רשומים" + +msgid "All Users" +msgstr "כל המשתמשים" + +msgid "Detecting broken derivatives" +msgstr "מזהה נגזרות שבורות" + +msgid "Clearing fast-download cache" +msgstr "מנקה את מטמון של ההורדות-המהירות" + +msgid "Deleting old fast-download cache" +msgstr "מוחקת את המטמון הישן של ההורדות-המהירות" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "מנהלי מערכת" + +msgid "Everybody" +msgstr "כולם" + +msgid "Guest" +msgstr "אורח" + +msgid "Gallery" +msgstr "גלרייה" + +msgid "This is the main page of your Gallery" +msgstr "זהו העמוד הראשי של הגלרייה שלך" + +msgid "Converting MySQL data to UTF8" +msgstr "ממיר את המידע במסד MySQL לקידוד utf8." + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "משדרג הרשאות (%d פריטים הושלמו, נותרו %d פריטים)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "מזהה נגזרות שבורות, טוען " + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "מזהה נגזרות שבורות, שומר " + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "מזהה נגזרות שבורות, שומר " + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "משדרג הרשאות (%d פריטים הושלמו, נותרו %d פריטים)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "מוחק את קבצי הסשן הישנים (מחזור %d)" + +msgid "add items" +msgstr "הוסף פריטים" + +msgid "Album created successfully." +msgstr "אלבום נוצר בהצלחה" + +msgid "add sub-album" +msgstr "הוסף תת-אלבום" + +msgid "add items confirmation" +msgstr "אישור הוספת פריטים" + +msgid "Base filename" +msgstr "שם קובץ בסיסי" + +msgid "Caption" +msgstr "כותרת" + +msgid "Blank" +msgstr "ריק" + +msgid "From Web Browser" +msgstr "מהדפדפן" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "(%d מגהבייט)" +msgstr[1] "(%d מגהבייט)" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "(%d קילובייט)" +msgstr[1] "(%d קילובייט)" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Gallery Item Administration" + +msgid "delete an item" +msgstr "מחק פריט" + +msgid "delete confirmation" +msgstr "אישור מחיקה" + +#, c-format +msgid "delete %s" +msgstr "מחיקת %s" + +#, c-format +msgid "edit %s" +msgstr "עריכת %s" + +msgid "Settings saved successfully." +msgstr "הגדרות נשמרו בהצלחה." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "הגדרות תבנית שוחזרו" + +msgid "Preparing..." +msgstr "" + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "מייצר מחדש תמונות מוקטנות" + +msgid "Album" +msgstr "אלבום" + +#, c-format +msgid "Processing image %d of %d" +msgstr "מעבד תמונה %d מתוך %d" + +msgid "Changes saved successfully" +msgstr "שינויים נשמרו בהצלחה" + +msgid "Animation Size" +msgstr "גודל האנימציה" + +msgid "edit captions" +msgstr "ערוך כותרות" + +msgid "General" +msgstr "כללי" + +msgid "Movie Size" +msgstr "גודל הסרט" + +msgid "Photo" +msgstr "תמונה" + +msgid "Thumbnail cropped successfully" +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +msgid "Thumbnail reset successfully" +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +msgid "Photo 5x3" +msgstr "Photo 5x3" + +msgid "Photo 6x4" +msgstr "Photo 6x4" + +msgid "Photo 7x5" +msgstr "Photo 7x5" + +msgid "Photo 10x8" +msgstr "Photo 10x8" + +msgid "Fullscreen 4x3" +msgstr "FullScreen 4x3" + +msgid "Widescreen 16x9" +msgstr "Widescreen 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Square 1x1" + +msgid "As Image" +msgstr "כתמונה" + +msgid "Landscape" +msgstr "הדפסה לרוחב הדף (צילום נוף)" + +msgid "Portrait" +msgstr "Portrait" + +msgid "Crop Thumbnail" +msgstr "גזור תמונה מוקטנת" + +msgid "Reverted rotate and scale changes successfully" +msgstr "שינויים בוצעו בהצלחה" + +msgid "Rotated photo successfully" +msgstr "תמונה סובבה בהצלחה" + +msgid "Scaled photo successfully" +msgstr "התאמת הגודל בוצעה בהצלחה" + +msgid "Modify Photo" +msgstr "שנה תמונה" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "מודול %s הופעל בהצלחה" + +msgid "« default theme »" +msgstr "« עיצוב ברירת המחדל »" + +msgid "Theme" +msgstr "עיצוב" + +msgid "make highlight" +msgstr "הצג הדגשות" + +msgid "move item" +msgstr "העבר פריט" + +#, c-format +msgid "move %s" +msgstr "העבר %s" + +#, c-format +msgid "edit %s permissions" +msgstr "עריכת הרשאות עבור %s" + +msgid "reorder items" +msgstr "סדר פריטים מחדש" + +msgid "Maintenance" +msgstr "אחזקה" + +msgid "Gallery Site Administration" +msgstr "Gallery Site Administration" + +msgid "site admin" +msgstr "מנהל אתר" + +msgid "Gallery User Administration" +msgstr "Gallery User Administration" + +msgid "change password" +msgstr "שנה סיסמה" + +msgid "your account" +msgstr "החשבון שלך" + +msgid "Password Recovery" +msgstr "שחזור סיסמה" + +msgid "Core" +msgstr "גלעין" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Core Module" + +msgid "Add Items" +msgstr "הוסף פריטים" + +msgid "Edit Album" +msgstr "ערוך אלבום" + +msgid "Edit Photo" +msgstr "ערוך תמונה" + +msgid "Edit Movie" +msgstr "ערוך סרט" + +msgid "Add Album" +msgstr "הוסף אלבום" + +msgid "Edit Permissions" +msgstr "ערוך הרשאות" + +msgid "View Permissions" +msgstr "הצג הרשאות" + +msgid "Delete Album" +msgstr "מחק אלבום" + +msgid "Delete Photo" +msgstr "מחק תמונה" + +msgid "Delete Movie" +msgstr "מחק סרט" + +msgid "Move Album" +msgstr "הזז אלבום" + +msgid "Move Photo" +msgstr "הזז תמונה" + +msgid "Move Movie" +msgstr "הזז סרט" + +msgid "Edit Captions" +msgstr "ערוך כותרות" + +msgid "Make Highlight" +msgstr "הצג הדגשות" + +msgid "Reorder Items" +msgstr "סדר פריטים מחדש" + +msgid "Site Admin" +msgstr "פאנל ניהול" + +msgid "Login" +msgstr "כניסה" + +msgid "Your Account" +msgstr "החשבון שלך" + +msgid "Logout" +msgstr "יציאה" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "משתמשים" + +msgid "Groups" +msgstr "קבוצות" + +msgid "Performance" +msgstr "ביצועים" + +msgid "Toolkit Priority" +msgstr "עדיפות ערכת כלים" + +msgid "Graphics Toolkits" +msgstr "ערכת כלים גרפיים" + +msgid "Account Settings" +msgstr "הגדרות חשבון משתמש" + +msgid "Change Password" +msgstr "שנה סיסמה" + +#, c-format +msgid "Edit %s" +msgstr "ערוך %s" + +#, c-format +msgid "Delete %s" +msgstr "מחק %s" + +#, c-format +msgid "Move %s" +msgstr "העבר %s" + +msgid "Build all thumbnails/resizes" +msgstr "צור מחדש תמונות מוקטנות ותמונות בגודל שונה" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "וודא כי כל קבצי המידע המידע הנובעים (תמונות מקטנות וכו') נבנו ויתקן את השבורים." + +msgid "Build All Thumbnails/Resizes" +msgstr "בנה מחדש את כל תמונות המוקטנות/תמונות בגודל שונה" + +msgid "Debug output for failed items:" +msgstr "הצג דיבאגיג בשביל פריטים שנכשלו" + +#, c-format +msgid "Checked %d items" +msgstr "%d פריטים מסומנים" + +#, c-format +msgid "%d items built" +msgstr "%d פריטים נבנו" + +#, c-format +msgid "%d items failed" +msgstr "%d פריטים נכשלו" + +#, fuzzy +msgid "Convert MySQL database to UTF8" +msgstr "ממיר את המידע במסד MySQL לקידוד utf8." + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "פריט נמחק בהצלחה" + +msgid "No conversion required" +msgstr "" + +#, fuzzy +msgid "Delete user sessions" +msgstr "מחק את הסשנים של המשתמשים" + +#, fuzzy +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "מחק את כל הסשנים שנתקעו, לפי הגדרות התפוגה" + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "מחק את הסשנים של המשתמשים" + +msgid "Delete database cache" +msgstr "מחק את המטמון של מסד הנתונים" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "מחק בהצלחה סיפריה: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "" + +#, fuzzy +msgid "Delete template cache" +msgstr "מחק פריט" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" + +#, fuzzy +msgid "Template cache deleted successfully" +msgstr "אלבום נוצר בהצלחה" + +msgid "album" +msgstr "אלבום" + +msgid "Animation" +msgstr "אנימציה" + +msgid "animation" +msgstr "אנימציה" + +msgid "Gallery Core" +msgstr "Gallery Core" + +msgid "Gallery Core Module" +msgstr "Gallery Core Module" + +msgid "Search descriptions" +msgstr "חיפוש בתיאורים" + +msgid "Search keywords" +msgstr "חיפוש במילות מפתח" + +msgid "Search summaries" +msgstr "חיפוש בתקצירים" + +msgid "Search titles" +msgstr "חיפוש בכותרות" + +msgid "Description" +msgstr "תיאור" + +msgid "Keywords" +msgstr "מילות מפתח" + +msgid "Summary" +msgstr "תקציר" + +msgid "Title" +msgstr "כותרת" + +msgid "Owner" +msgstr "בעלים" + +#, fuzzy +msgid "Dynamic Album" +msgstr "ערוך אלבום" + +#, fuzzy +msgid "dynamic album" +msgstr "ערוך אלבום" + +msgid "Group" +msgstr "קבוצה" + +msgid "group" +msgstr "קבוצה" + +msgid "Other" +msgstr "אחר" + +msgid "Movie" +msgstr "סרט" + +msgid "movie" +msgstr "סרט" + +msgid "photo" +msgstr "תמונה" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +#, fuzzy +msgid "Experimental Repository" +msgstr "מאגר" + +#, fuzzy +msgid "Community Repository" +msgstr "מאגר" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "" + +msgid "Index integrity check failed." +msgstr "" + +msgid "« default sort order »" +msgstr "« מיון ברירת המחדל »" + +msgid "Manual sort order" +msgstr "מיון ידני" + +#, fuzzy +msgid "Origination Date" +msgstr "תאריך יצירה" + +msgid "Creation Date" +msgstr "תאריך יצירה" + +msgid "Last Changed Date" +msgstr "תאריך שינוי אחרון" + +msgid "Name" +msgstr "שם" + +msgid "View Count" +msgstr "צפיות" + +msgid "Random" +msgstr "אקראי" + +msgid "« no presort »" +msgstr "« ללא סידור מראש »" + +msgid "Albums First" +msgstr "קודם אלבומים" + +msgid "Most Viewed First" +msgstr "קודם הנצפים ביותר" + +msgid "Ascending" +msgstr "סדר עולה" + +msgid "Descending" +msgstr "סדר יורד" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +msgid "This page is valid XHTML 1.0" +msgstr "עמוד זה הוא עמוד XHTML 1.0 תקני" + +#, fuzzy +msgid "Donate to the Gallery project" +msgstr "חזרה לגלרייה" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "" + +msgid "Rows per album page" +msgstr "" + +msgid "Columns per album page" +msgstr "" + +msgid "Number of items to show per page" +msgstr "" + +msgid "Row height (pixels)" +msgstr "" + +msgid "Column width (pixels)" +msgstr "" + +msgid "Show image owners" +msgstr "" + +msgid "Show album owners" +msgstr "" + +msgid "Show micro navigation thumbnails" +msgstr "" + +msgid "Blocks to show in the sidebar" +msgstr "" + +msgid "Blocks to show on album pages" +msgstr "" + +msgid "Blocks to show on photo pages" +msgstr "" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +#, fuzzy +msgid "Browse dynamic album" +msgstr "ערוך אלבום" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "" + +#, fuzzy +msgid "Album Frame" +msgstr "פעולות בסיסיות על אלבום" + +msgid "Item Frame" +msgstr "" + +#, fuzzy +msgid "Photo Frame" +msgstr "Photo" + +msgid "Color Pack" +msgstr "" + +msgid "You must enter a number greater than 0" +msgstr "אתה מוכרח להכניס מספר גדול מ-0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "" + +msgid "Audio" +msgstr "אודיו" + +msgid "audio" +msgstr "אודיו" + +msgid "Archive" +msgstr "ארכיון" + +msgid "archive" +msgstr "ארכיון" + +msgid "Document" +msgstr "מסמך" + +msgid "document" +msgstr "מסמך" + +msgid "Spreadsheet" +msgstr "גיליון אלקטרוני" + +msgid "spreadsheet" +msgstr "גיליון אלקטרוני" + +#, fuzzy +msgid "file" +msgstr "קובץ" + +msgid "Back" +msgstr "חזרה" + +#, c-format +msgid "Back to %s" +msgstr "חזרה ל %s" + +msgid "User" +msgstr "משתמש" + +msgid "user" +msgstr "משתמש" + +msgid "Optimize database" +msgstr "" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" + +#, fuzzy +msgid "Database optimized successfully" +msgstr "תמונה סובבה בהצלחה" + +msgid "Reset view counts" +msgstr "" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" + +#, fuzzy +msgid "View counts reset successfully" +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +msgid "Refresh capture dates" +msgstr "" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" + +msgid "Processing..." +msgstr "" + +msgid "Refresh Capture Dates" +msgstr "" + +#, fuzzy, c-format +msgid "Processing item %d of %d" +msgstr "מציג עמוד %d מתוך %d" + +#, fuzzy, c-format +msgid "Updated %d of %d items" +msgstr "(עמוד %d מתוך %d)" + +#, fuzzy +msgid "System information" +msgstr "אישור הוספת פריטים" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" + +#, fuzzy +msgid "core" +msgstr "הגדרות" + +msgid "unknown" +msgstr "לא ידוע" + +#, fuzzy +msgid "Gallery version" +msgstr "Gallery %s" + +#, fuzzy +msgid "PHP version" +msgstr "גירסה" + +#, fuzzy +msgid "Webserver" +msgstr "שרת" + +#, fuzzy +msgid "Toolkits" +msgstr "ערכת כלים" + +#, fuzzy +msgid "Acceleration" +msgstr "פעולה" + +msgid "Operating system" +msgstr "" + +msgid "Default theme" +msgstr "עיצוב ברירת המחדל" + +msgid "gettext" +msgstr "" + +#, fuzzy +msgid "enabled" +msgstr "%d פריטים נכשלו" + +#, fuzzy +msgid "disabled" +msgstr "%d פריטים נכשלו" + +#, fuzzy +msgid "Locale" +msgstr "התאם גודל" + +#, fuzzy +msgid "Browser" +msgstr "מהדפדפן" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "הגדרות התבנית נשמרו בהצלחה" + +msgid "General Settings" +msgstr "הגדרות כלליות" + +msgid "Settings saved successfully" +msgstr "הגדרות נשמרו בהצלחה" + +msgid "Added local upload directory successfully" +msgstr "סיפריית העלאה מקורית נוספה בהצלחה" + +msgid "Removed local upload directory successfully" +msgstr "סיפרית העלאה משרת מקומי הוסרה בהצלחה" + +#, fuzzy +msgid "Test email sent successfully" +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +#, fuzzy +msgid "There was a problem processing your request, see below for details." +msgstr "התגלתה שגיאה בעת ביצוע הבקשה שלך." + +msgid "Error sending test email, see below for details." +msgstr "" + +msgid "Language Settings" +msgstr "הגדרות שפה" + +#, fuzzy +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "בחר את שפת ברירת המחדל למערכת. כל משתמש יכול לשנות הגדרה זו לעצמו." + +msgid "Default language" +msgstr "שפת ברירת המחדל" + +msgid "Check Browser Preference" +msgstr "" + +#, fuzzy, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"השרת שלך לא תומך בלוקליזציה. אנא בקש ממנהל השרת שלך להגדיר מחדש את PHP עם אפשרות gettext מופעלת." + +#, fuzzy +msgid "Date Formats" +msgstr "אחרי" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" + +#, fuzzy +msgid "Style" +msgstr "התאם גודל" + +msgid "Format" +msgstr "" + +#, fuzzy +msgid "Sample" +msgstr "התאם גודל" + +#, fuzzy +msgid "Date" +msgstr "תאריך:" + +#, fuzzy +msgid "Time" +msgstr "שעה" + +msgid "Date/Time" +msgstr "" + +msgid "Filesystem Permissions" +msgstr "הרשאות מערכת קבצים" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"קבע את הגדרות ברירת המחדל לקבצים וסיפריות שהמערכת יוצרת. זה לא משפיע על קבצים/סיפריות " +"שהמערכת כבר יצרה." + +msgid "New directories" +msgstr "סיפריות חדשות" + +msgid "New files" +msgstr "קבצים חדשים" + +msgid "Session Settings" +msgstr "הגדרות Session" + +msgid "Session Lifetime" +msgstr "Session Lifetime" + +msgid "Inactivity Timeout" +msgstr "Timeout עקב חוסר פעילות" + +msgid "Embedded Markup" +msgstr "טאגים מובנים" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"אלו טאגים לאפשר למשתמשים להכניס? לטובת האבטחה, אנו לא ממליצים לאפשר הוספת HTML. BBCode הם " +"טאגים מיוחדים המאפשרים שינויים שונים בטקסט כמו הדגשה, הוספת תמונות וכתובות אינטרנט, ועוד." + +msgid "Markup" +msgstr "טאגים מובנים" + +msgid "Email" +msgstr "דואר אלקטרוני" + +#, fuzzy +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"מערכת Gallery משתמשת במערכות האימייל המובנות בשרת על מנת לשלוח אימייל. על מנת להשתמש ב smtp " +"או כל מערכת אחרת הדורשת אישור משתמש, מלא את הפרטים הבאים." + +msgid "Server" +msgstr "שרת" + +msgid "Username" +msgstr "שם משתמש" + +msgid "Password" +msgstr "סיסמה" + +msgid "SMTP From Address" +msgstr "SMTP מכתובת" + +msgid "Invalid email address" +msgstr "כתובת אימייל לא תקינה" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" + +msgid "Send Email" +msgstr "שלח דואר אלקטרוני" + +msgid "Email Test Error" +msgstr "" + +msgid "Cookies" +msgstr "עוגיות" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "סיפריה" + +msgid "Invalid cookie path" +msgstr "" + +msgid "Domain" +msgstr "" + +msgid "Invalid cookie domain" +msgstr "" + +msgid "Locking System" +msgstr "" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" + +msgid "Lock system" +msgstr "" + +msgid "Helper Processes" +msgstr "" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +#, fuzzy +msgid "Priority" +msgstr "עדיפות ערכת כלים" + +msgid "Save" +msgstr "שמור" + +msgid "Reset" +msgstr "התחל מחדש" + +msgid "Create A New Group" +msgstr "צור קבוצה חדשה" + +msgid "Group Name" +msgstr "שם הקבוצה" + +msgid "(required)" +msgstr "(דרוש)" + +msgid "You must enter a group name" +msgstr "אתה מוכרח להכניס שם עבור קבוצה זו" + +#, c-format +msgid "Group '%s' already exists" +msgstr "הקבוצה '%s' כבר קיימת" + +msgid "Create Group" +msgstr "צור קבוצה" + +msgid "Cancel" +msgstr "ביטול" + +msgid "Create A New User" +msgstr "צור משתמש חדש" + +msgid "You must enter a username" +msgstr "אתה מוכרח להכניס שם משתמש" + +#, c-format +msgid "Username '%s' already exists" +msgstr "שם המשתמש '%s' כבר קיים" + +msgid "Full Name" +msgstr "שם מלא" + +msgid "Email Address" +msgstr "כתובת דואר אלקטרוני" + +msgid "You must enter an email address" +msgstr "אתה מוכרח להכניס כתובת אימייל" + +msgid "Language" +msgstr "שפה" + +msgid "You must enter a password" +msgstr "אתה מוכרח להכניס סיסמה" + +msgid "Verify Password" +msgstr "וודא סיסמה" + +msgid "You must enter the password a second time" +msgstr "אתה מוכרח להכניס את סיסמתך בשנית" + +msgid "The passwords you entered did not match" +msgstr "הסיסמאות שהכנסת לא תואמות" + +msgid "Create User" +msgstr "צור משתמש" + +msgid "Delete A Group" +msgstr "מחק קבוצה" + +msgid "Are you sure?" +msgstr "האם אתה בטוח?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "פעולה זו תסיר לחלוטין את %s מהגלרייה. אין אפשרות לבטל פעולה זו!" + +msgid "Delete" +msgstr "מחק" + +msgid "Delete a User" +msgstr "מחק משתמש" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "המשתמש %s הוא הבעלים של %s פריטים." + +#, c-format +msgid "Delete user %s and..." +msgstr "מחק משתמש %s ו..." + +#, fuzzy, c-format +msgid "Assign a new owner for all items of %s" +msgstr "קבע בעלים חדשים עבור כל הפריטים ב %s." + +#, fuzzy, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "מחר את כל הפריטים ב %s וקבע בעלים חדשים עבור כל האלבומים המלאים הנותרים" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "בעלים חדשים (להשאיר ריק אומר שזה אחד ממנהלי האתר)" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "משתמש '%s' לא קיים! לא ניתן להקצות פריטים למשתמשים שאינם קיימים." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "הבעלים החדש חייב להיות שונה מהמשתמש שאנחנו כרגע מוחקים!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "הבעלים החדשים לא יכול להיות אורח / משתמש אנונימי!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "פעולה זו תסיר לחלוטין את %s מהגלרייה. אין אפשרות לבטל פעולה זו!" + +msgid "Edit a group" +msgstr "ערוך קבוצה" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "ערוך משתמשים בקבוצה'%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "משתמש '%s' נוסף לקבוצה '%s'" + +#, fuzzy, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "המשתמש '%s' הוסר מקבוצה '%s'" +msgstr[1] "המשתמש '%s' הוסר מקבוצה '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "קבוצה זו מכילה משתמש %d" +msgstr[1] "קבוצה זו מכילה %d משתמשים" + +msgid "Members" +msgstr "משתמשים" + +msgid "« first" +msgstr "« הראשון" + +msgid "« back" +msgstr "« חזור" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "מציג עמוד %d מתוך %d" + +msgid "next »" +msgstr "הבא »" + +msgid "last »" +msgstr "אחרון »" + +msgid "Filter" +msgstr "סינון" + +msgid "Clear" +msgstr "נקה" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "משתמש %d תואם לסינון שלך" +msgstr[1] "%d משתמשים תואמים לסינון שלך" + +msgid "Remove selected" +msgstr "הסר את הנבחר" + +msgid "You must select a user to remove." +msgstr "לא בחרת משתמש להסרה" + +msgid "You can't remove yourself from this group." +msgstr "אינך יכול להסיר את עצמך מקבוצה זו." + +msgid "Add Member" +msgstr "הוסף משתמש" + +msgid "Add" +msgstr "הוסף" + +msgid "You must enter a username." +msgstr "אתה מוכרח להכניס שם משתמש." + +#, c-format +msgid "User '%s' does not exist." +msgstr "המשתמש '%s' לא קיים." + +#, fuzzy +msgid "This user already is in this group." +msgstr "שם המשתמש תפוס כבר" + +msgid "Done" +msgstr "הושלם" + +msgid "Edit a user" +msgstr "ערוך משתמש" + +msgid "That username is already in use" +msgstr "שם המשתמש תפוס כבר" + +msgid "You must enter a new username" +msgstr "אתה מוכרח להכניס שם משתמש חדש" + +msgid "E-mail Address" +msgstr "כתובת דואר אלקטרוני" + +msgid "(suggested)" +msgstr "" + +msgid "Options" +msgstr "אפשרויות" + +msgid "Lock user." +msgstr "" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +msgid "Reset failed login count." +msgstr "" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "ניהול קבוצה" + +#, c-format +msgid "Removed group '%s'" +msgstr "קבוצה '%s' הוסרה" + +#, c-format +msgid "Created group '%s'" +msgstr "קבוצה '%s' נוצרה" + +#, c-format +msgid "Modified group '%s'" +msgstr "קבוצה '%s' שונתה" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "קיימת קבוצת משתמשים %d במערכת." +msgstr[1] "קיימות %d קבוצות משתמשים במערכת." + +msgid "Edit Group" +msgstr "ערוך קבוצה" + +msgid "Edit" +msgstr "עריכה" + +msgid "Add/Remove Users" +msgstr "הוסף/מחק משתמשים" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "הקבוצה '%s' אינה קיימת." + +msgid "You cannot delete that group" +msgstr "אינך יכול למחוק את קבוצה זו" + +msgid "You cannot edit that group's users" +msgstr "אינך יכול לערוך משתמשים מקבוצה זו" + +msgid "Edit Group (by list)" +msgstr "ערוך קבוצה (מתוך רשימה)" + +msgid "Action" +msgstr "פעולה" + +msgid "edit" +msgstr "עריכה" + +msgid "delete" +msgstr "מחיקה" + +msgid "members" +msgstr "משתמשים" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "קבוצת משתמשים %d תואמת לסינון שלך" +msgstr[1] "%d קבוצות משתמשים תואמות לסינון שלך" + +msgid "System Maintenance" +msgstr "" + +#, fuzzy, c-format +msgid "Completed %s task successfully." +msgstr "תמונה סובבה בהצלחה" + +#, fuzzy, c-format +msgid "The %s task failed to complete successfully." +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +#, fuzzy +msgid "Task name" +msgstr "שם משתמש" + +#, fuzzy +msgid "Last run" +msgstr "אחרון »" + +msgid "Success/Fail" +msgstr "" + +msgid "Not run yet" +msgstr "" + +#, fuzzy +msgid "Success" +msgstr "מקור" + +#, fuzzy +msgid "Failed" +msgstr "קובץ" + +#, fuzzy +msgid "run now" +msgstr "לא ידוע" + +msgid "Last Run Details:" +msgstr "" + +msgid "Performance Tuning" +msgstr "" + +#, fuzzy +msgid "Updated performance settings successfully" +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +#, fuzzy +msgid "Deleted all saved pages" +msgstr "מחק משתמש" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +#, fuzzy +msgid "Medium acceleration" +msgstr "ערוך כותרות" + +msgid "High acceleration" +msgstr "" + +#, fuzzy +msgid "Guest Users" +msgstr "משתמשים רשומים" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "סטטוס: לא פעיל" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "בטל פעילות __PLUGIN__" + +msgid "Status: Active" +msgstr "סטטוס: פעיל" + +#, fuzzy +msgid "__PLUGIN__ activated" +msgstr "בטל פעילות __PLUGIN__" + +msgid "Status: Not Installed" +msgstr "סטטוס: לא מותקן" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "סטטוס: דרוש שדרוג (לא פעיל)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "סטטוס: מודול לא מתאים (לא פעיל)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +#, fuzzy +msgid "__PLUGIN__ deleted" +msgstr "בטל פעילות __PLUGIN__" + +msgid "Warning!" +msgstr "" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "האם אתה בטוח שברצונך להסיר את מודול __PLUGIN__?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "פעולה זה תסיר גם כל הרשאה וכל מידע זמני שנוצר על ידי מודול זה." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "האם אתה בטוח שברצונך להסיר את מודול __PLUGIN__?" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +#, fuzzy +msgid "up to date(__COUNT__)" +msgstr "תאריך: (__COUNT__)" + +#, fuzzy +msgid "not installed(__COUNT__)" +msgstr "הסרה (__COUNT__)" + +#, fuzzy +msgid "upgrade required(__COUNT__)" +msgstr "(דרוש) (__COUNT__)" + +#, fuzzy +msgid "incompatible(__COUNT__)" +msgstr "מודול לא מתאים (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "allery Modules" + +#, fuzzy +msgid "Get More Plugins" +msgstr "allery Modules" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"אפשרויות המערכת השונות מגיעות כמודולים נפרדים. אתה יכול להתקין מודולים שונים כדי להוסיף " +"תכונות נוספות למערכת שלך, או לבטל אפשרויות מיותרות אם אינך רוצה אותן. על מנת להשתמש באופציה " +"כלשהיא, אתה חייב להתקין אותה, להגדיר אותה (אם זה נדרש) ולהפעיל אותה. אם אינך רוצה להשתמש " +"באופציה כלשהיא, אתה יכול לבטל את ההפעלה שלה (ולהשאיר אותה מותקנת לעת הצורך)." + +#, fuzzy +msgid "Plugin Name" +msgstr "שם מלא" + +msgid "Installed" +msgstr "מותקן" + +msgid "Version" +msgstr "גירסה" + +msgid "Actions" +msgstr "פעולות" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +#, fuzzy +msgid "Incompatible plugin!" +msgstr "מודול לא מתאים" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "ממשק הליבה דורש: %s (קיים: %s)" + +#, fuzzy, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "מודול API דורש: %s (קיים: %s)" + +msgid "configure" +msgstr "הגדרות" + +#, fuzzy +msgid "up to date" +msgstr "תאריך:" + +#, fuzzy +msgid "upgrade required" +msgstr "(דרוש)" + +#, fuzzy +msgid "not installed" +msgstr "הסרה" + +#, fuzzy +msgid "incompatible" +msgstr "מודול לא מתאים" + +msgid "Repository" +msgstr "מאגר" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +#, fuzzy +msgid "Repository Error" +msgstr "מאגר" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "לא בחרת משתמש להסרה" + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +msgid "Continue" +msgstr "" + +#, fuzzy +msgid "Download Plugin List" +msgstr "מוריד %s" + +#, fuzzy +msgid "Show Repository List" +msgstr "מאגר" + +#, fuzzy +msgid "Upgrade Gallery" +msgstr "גלרייה" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +#, fuzzy +msgid "upgrade available" +msgstr "גלרייה" + +msgid "locked" +msgstr "" + +#, fuzzy +msgid "Theme Name" +msgstr "עיצוב" + +msgid "Module Name" +msgstr "שם מודול" + +#, fuzzy +msgid "Latest" +msgstr "אחרון" + +msgid "Locked Plugin" +msgstr "" + +#, fuzzy +msgid "Incompatible Plugin" +msgstr "מודול לא מתאים" + +#, fuzzy +msgid "Upgrade Available" +msgstr "שדרוג" + +#, fuzzy +msgid "download" +msgstr "למטה" + +msgid "modify" +msgstr "" + +msgid "Upgrade All Plugins" +msgstr "" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +#, fuzzy +msgid "Upgrade All" +msgstr "שדרוג" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "מוריד %s" + +msgid "No packages have been selected." +msgstr "" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "שם קובץ בסיסי" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "הגדרות שפה" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "גירסה" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +#, fuzzy +msgid "Update" +msgstr "תאריך:" + +#, fuzzy +msgid "Gallery Themes" +msgstr "Gallery %s" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "מודול %s הופעל בהצלחה" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "מודול %s כובה בהצלחה" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "מודול %s הותקן בהצלחה" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "מודול %s הוסר בהצלחה" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "מודול %s שודרג בהצלחה" + +msgid "Successfully saved default album settings" +msgstr "הגדרות ברירת המחדל לאלבום נשמרו בהצלחה" + +msgid "Restored theme settings" +msgstr "הגדרות תבנית שוחזרו" + +msgid "Defaults" +msgstr "ברירות מחדל" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"אלו הן הגדרות ברירת המחדל עבור אלבומים בגלרייה שלך. אפשר לשנות אותן ספציפית עבור כל אלבום " +"בנפרד." + +msgid "Default sort order" +msgstr "מיון ברירת המחדל" + +msgid "with" +msgstr "רוחב" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "אלבומים חדשים" + +#, fuzzy +msgid "Save Defaults" +msgstr "ברירות מחדל" + +#, fuzzy, c-format +msgid "%s Theme Settings" +msgstr "הגדרות תבנית שוחזרו" + +#, fuzzy +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"אלו הן הגדרות ברירת המחדל עבור ערכת הצבעים. אפשר לשנות אותן ספציפית עבור כל אלבום בנפרד." + +msgid "Available" +msgstr "" + +msgid "Choose a block" +msgstr "" + +msgid "Selected" +msgstr "מסומן" + +msgid "Remove" +msgstr "הסר" + +msgid "Move Up" +msgstr "העבר למעלה" + +msgid "Move Down" +msgstr "העבר למטה" + +msgid "Parameter" +msgstr "" + +msgid "Value" +msgstr "ערך" + +#, fuzzy +msgid "There are no settings for this theme" +msgstr "לא קיימות הגדרות לערכת הצבעים הזו" + +#, fuzzy +msgid "Save Theme Settings" +msgstr "הגדרות תבנית שוחזרו" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"ערכות הכלים הבאות מכילות מספר חפיפות בפעולות וסוגי קבצים שונים. בחר כאן איזו ערכת כלים " +"תבצע את פעולות אלו." + +msgid "Toolkit" +msgstr "ערכת כלים" + +msgid "Order" +msgstr "סדר" + +msgid "up" +msgstr "למעלה" + +msgid "down" +msgstr "למטה" + +msgid "User Management" +msgstr "ניהול משתמש" + +#, c-format +msgid "Removed user '%s'" +msgstr "משתמש '%s' הוסר" + +#, c-format +msgid "Created user '%s'" +msgstr "משתמש '%s' נוצר" + +#, c-format +msgid "Modified user '%s'" +msgstr "משתמש '%s' שונה" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "קיים משתמש %d במערכת." +msgstr[1] "קיימים %d משתמשים במערכת." + +msgid "Edit User" +msgstr "ערוך משתמש" + +msgid "You cannot delete yourself!" +msgstr "אינך יכול למחוק את עצמך!" + +msgid "You cannot delete the special guest user." +msgstr "אינך יכול למחוק את חשבון האורחים." + +msgid "Edit User (by list)" +msgstr "ערוך משתמש (מתוך רשימה)" + +#, fuzzy +msgid "Locked" +msgstr "התאם גודל" + +#, fuzzy +msgid "Failed Logins" +msgstr "קובץ" + +msgid "Thumbnails" +msgstr "תמונות מוקטנות" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"המערכת יכולה ליצור תמונות מוקטנות בזמן ההעלאה או בפעם הראשונה שהן נדרשות. בכל אופן, היא " +"תיצור את התמונה פעם אחת ותשמור אותה, אבל אם תבחר ליצור אותה עכשיו זה ישפר את מהירות הצגת " +"האלבומים בפעם הראשונה, על חשבון זמן ההעלאה עכשיו." + +msgid "Create thumbnails now" +msgstr "צור תמונות מוקטנות" + +#, fuzzy +msgid "This is a test email from Gallery2" +msgstr "זהו העמוד הראשי של הגלרייה שלך" + +msgid "Edit Conflict!" +msgstr "התנגשות בעריכה!" + +msgid "Security Violation" +msgstr "פגיעה באבטחה" + +msgid "Database Error" +msgstr "" + +msgid "Platform Error" +msgstr "" + +#, fuzzy +msgid "Authentication Failure" +msgstr "גודל האנימציה" + +msgid "Error" +msgstr "שגיאה" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"לא ניתן לבצע את השינוי כי מישהו אחר כבר שינה פריט זה. חזור לעמוד הקודם וטען אותו מחדש " +"(RELOAD) על מנת לפתור את הבעיה." + +msgid "Go back and try again" +msgstr "חזור ונסה שוב" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "מחק את המטמון של מסד הנתונים" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "לחלופין, אתה יכול לחזור לעמוד הגלרייה הראשי ולהמשיך לגלוש." + +msgid "The action you attempted is not permitted." +msgstr "הפעולה שניסית לבצע אינה מורשת." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "" + +msgid "Back to the Gallery" +msgstr "חזרה לגלרייה" + +msgid "Error Detail" +msgstr "" + +#, fuzzy +msgid "System Information" +msgstr "אישור הוספת פריטים" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"אין לך אף ערכת כלים גרפיים מופעלת שיודעת להתמודד עם קבצי JPEG. אם תוסיף תמונות, ככל הנראה " +"לא יהיו להן גירסאות מוקטנות." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "כנס לעמוד המודוליםעל מנת להפעיל את ערכת הכלים הגרפיים." + +msgid "Add Sub-Album" +msgstr "הוסף תת-אלבום" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"שם האלבום על ההרדיסק. הוא חייב להיות בלעדי באלבום זה. השתמש אך ורק בתווים חוקיים לשמות " +"קבצים. תהיה לך אפשרות לשנות את שם האלבום לאחר מכן." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "השם שלך מכיל תווים לא חוקיים. אנא בחר שם אחר." + +msgid "You must enter a name for this album." +msgstr "אתה מוכרח להכניס שם עבור אלבום זה." + +msgid "The name you entered is already in use. Please enter another." +msgstr "השם שבחרת נמצא כבר בשימוש. אנא בחר שם אחר." + +msgid "This is the album title." +msgstr "זוהי כותרת האלבום." + +msgid "This is the album summary." +msgstr "זהו תקציר האלבום." + +msgid "Keywords are not visible, but are searchable." +msgstr "מילות מפתח לא מוצגות בשום מקום, אך ניתנות לחיפוש" + +msgid "This is the long description of the album." +msgstr "זהו התיאור הארוך של האלבום." + +msgid "Create" +msgstr "צור" + +msgid "Upload Complete" +msgstr "העלאה הושלמה" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "קובץ %d נוסף בהצלחה." +msgstr[1] "%d קבצים נוספו בהצלחה." + +msgid "No files added." +msgstr "לא נוספו קבצים." + +#, c-format +msgid "Added %s" +msgstr "נוספו %s" + +#, c-format +msgid "Failed to add %s" +msgstr "" + +msgid "Add more files" +msgstr "הוסף קבצים נוספים" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "השרת שלך לא מאפשר העלאת קבצים מהדפדפן. אנא התייעץ עם מנהל השרת שלך." + +#, fuzzy +msgid "Upload files directly from your computer." +msgstr "העלאת קובץ ישירות מהמחשב שלך." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "הכנס את הסיפריה המלאה לקובץ, ותיאור אופציונלי, בתיבות הבאות." + +#, fuzzy, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"שים לב: אתה יכול להעלות עד %s בפעם אחת. אם אתה מעוניין להעלות יותר, אתה מוכרח להעלות " +"את הקבצים בנפרד, או להשתמש בפורמט העלאה." + +#, fuzzy, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"שים לב: אתה יכול להעלות עד %s בפעם אחת. אם אתה מעוניין להעלות יותר, אתה מוכרח להעלות " +"את הקבצים בנפרד, או להשתמש בפורמט העלאה." + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "" + +msgid "Assign caption to:" +msgstr "" + +msgid "No Thumbnail" +msgstr "תמונה מוקטנת לא קיימת" + +#, fuzzy +msgid "Delete Items" +msgstr "מחק פריט" + +msgid "No items were selected for deletion" +msgstr "לא נבחרו פריטים למחיקה" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "מחק בהצלחה פריט %d" +msgstr[1] "מחק בהצלחה %d פריטים" + +msgid "This album contains no items to delete" +msgstr "האלבום אינו כולל פריטים למחיקה" + +msgid "Choose the items you want to delete" +msgstr "בחר את הפריטים שברצונך למחוק" + +#, c-format +msgid "(page %d of %d)" +msgstr "(עמוד %d מתוך %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "(נתונים)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(אלבום מכיל פריט %d)" +msgstr[1] "(אלבום מכיל %d פריטים)" + +msgid "(empty album)" +msgstr "(אלבום ריק)" + +msgid "Check All" +msgstr "בחר הכל" + +msgid "Check None" +msgstr "בטל הכל" + +msgid "Invert" +msgstr "הפוך בחירה" + +msgid "Previous Page" +msgstr "עמוד קודם" + +msgid "Next Page" +msgstr "עמוד הבא" + +msgid "Deletion Complete" +msgstr "מחיקה הסתיימה" + +msgid "Item successfully deleted" +msgstr "פריט נמחק בהצלחה" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "האם אתה בטוח שברצונך למחוק את %s זה?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "מכיל פריט %d" +msgstr[1] "מכיל %d פריטים" + +msgid "There is no undo!" +msgstr "אין אפשרות לבטל!" + +msgid "There was a problem processing your request." +msgstr "התגלתה שגיאה בעת ביצוע הבקשה שלך." + +msgid "Sort order" +msgstr "סדר מיון" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"הגדר כאן את סדר הפריטים באלבום. הגדרות אלו ישפיעו על כל הפריטים הקיימים, ועל כל הפריטים " +"שיוספו בעתיד." + +#, fuzzy +msgid "Apply to all subalbums" +msgstr "שמור עבור תת-פריטים" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " לכל פריט דרושה תמונה מוקטנת. קבע כאן את גודל ברירת המחדל בפיקסלים." + +msgid "You must enter a number (greater than zero)" +msgstr "אתה מוכרח להכניס מספר גדול מ-0" + +msgid "Use this thumbnail size in all subalbums" +msgstr "" + +msgid "Resized Images" +msgstr "תמונות בגודל שונה" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "כל פריט באלבום שלך מוצג בגדלים שונים. קבע את גודל ברירת המחדל כאן." + +msgid "Active" +msgstr "פעיל" + +msgid "Target Size (pixels)" +msgstr "גודל יעד (בפיקסלים)" + +msgid "You must enter a valid size" +msgstr "אתה מוכרח להכניס גודל תיקני" + +msgid "Use these target sizes in all subalbums" +msgstr "" + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "שמור עבור תת-פריטים" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "שמור עבור תת-פריטים" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "מייצר מחדש תמונות מוקטנות" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "מייצר מחדש גדלים שונים של התמונות" + +msgid "Build resizes too" +msgstr "" + +#, fuzzy +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"על מנת שהמערכת תציג את האנימציה כמו שצריך היא חייבת לדעת את הרוחב והגובה שלה. אם התקנת מערכת " +"גרפית כלשהיא שיודעת לעבוד עם קבצי אנימציה, יתכן שהערכים הנכונים כבר נבחרו אוטומטית. אם לא, " +"כנראה שמופיע 0. אם לא תבחר כאן את הערכים הנכונים, האנימציה עלולה להופיע מעוותת. שים לב " +"ששינוי הערכים לא משפיע על הקובץ עצמו, כך שאין שום בעיה לעשות ניסויים." + +msgid "Width" +msgstr "רוחב" + +msgid "You must enter a value greater than or equal to 0" +msgstr "אתה מוכרח להכניס מספר גדול או שווה ל-0" + +msgid "Height" +msgstr "גובה" + +#, fuzzy +msgid "There were errors saving some items" +msgstr "לא קיימות הגדרות לערכת הצבעים הזו" + +msgid "There were errors saving all items" +msgstr "" + +#, fuzzy +msgid "Successfully saved all items" +msgstr "העביר בהצלחה פריט %d" + +#, fuzzy +msgid "This album contains no items" +msgstr "האלבום אינו כולל פריטים לקישור." + +#, fuzzy +msgid "Saved successfully." +msgstr "הגדרות נשמרו בהצלחה." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" + +#, fuzzy +msgid "You do not have permissions to modify this item." +msgstr "אין לך הרשאות להוספת פריטים באלבום זה" + +msgid "Save and Done" +msgstr "" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"שם הפריט על ההרדיסק. הוא חייב להיות בלעדי באלבום זה. השתמש אך ורק בתווים חוקיים לשמות " +"קבצים. תהיה לך אפשרות לשנות את שם האלבום לאחר מכן." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "השם שלך מכיל תווים לא חוקיים. אנא בחר שם אחר." + +msgid "You must enter a name for this item." +msgstr "אתה מוכרח להכניס שם עבור פריט זה." + +msgid "The name you entered is already in use. Please choose another." +msgstr "השם שבחרת נמצא כבר בשימוש. אנא בחר שם אחר." + +msgid "The title of this item." +msgstr "הכותרת של פריט זה" + +msgid "The root album must have a title." +msgstr "האלבום הראשי חייב לכלול כותרת" + +msgid "The summary of this item." +msgstr "התקציר של פריט זה" + +msgid "This is the long description of the item." +msgstr "זהו התיאור הארוך של הפריט" + +#, c-format +msgid "%s Date and Time" +msgstr "" + +msgid "Set the date and time when this image was captured." +msgstr "" + +msgid "Set the date and time to be displayed for this item." +msgstr "" + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "" + +msgid "Date:" +msgstr "תאריך:" + +msgid "Time:" +msgstr "שעה" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" + +#, fuzzy +msgid "You must enter a valid date and time" +msgstr "אתה מוכרח להכניס גודל תיקני" + +msgid "Thumbnail" +msgstr "תמונה מוקטנת" + +#, fuzzy +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "קבע את גודל התמונה המוקטנת. הגודל לא יחרוג מהגודל הבא." + +#, fuzzy +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "לא קיימים כלים גרפיים שתומכים בסוג קובץ זה, אז אין אפשרות ליצור או לשנות תמונה מוקטנת." + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "אתה מוכרח להכניס שם עבור פריט זה." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"על מנת שהמערכת תציג את הסרט כמו שצריך היא חייבת לדעת את הרוחב והגובה שלו. אם התקנת מערכת " +"גרפית כלשהיא שיודעת לעבוד עם קבצי סרטים, יתכן שהערכים הנכונים כבר נבחרו אוטומטית. אם לא, " +"כנראה שמופיע 0. אם לא תבחר כאן את הערכים הנכונים, הסרט עלול להופיע מעוות. שים לב ששינוי " +"הערכים לא משפיע על הקובץ עצמו, כך שאין שום בעיה לעשות ניסויים." + +msgid "Resized Photos" +msgstr "תמונות בגודל שונה" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "גדלים אלו הם גדלים חלופיים לגודל התמונה המקורי שברצונך להוסיף כאפשרות נוספת להצגה." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"לא קיימים כלים גרפיים שתומכים בסוג קובץ זה, אז אין אפשרות ליצור או לשנות תמונה בגודל שונה." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"אתה יכול לבחור איזה חלק של התמונה ישמש עבור התמונה המוקטנת. לבחירה זו אין השפעה על התמונה " +"המקורית." + +msgid "Aspect Ratio: " +msgstr "יחס רוחב-גובה: " + +msgid "Crop" +msgstr "גזור" + +#, fuzzy +msgid "Undo Changes" +msgstr "שנה" + +msgid "Reset to default" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "לא קיימים כלים גרפיים שתומכים בסוג קובץ זה, אז אין אפשרות לחתוך את התמונה המוקטנת." + +msgid "Rotate" +msgstr "סובב" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "אתה יכול לסובב את התמונה בכפולות של 90 מעלות בלבד." + +msgid "CC 90°" +msgstr "CC 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "C 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "לא קיימים כלים גרפיים שתומכים בסוג קובץ זה, אז אין אפשרות לסובב את התמונה." + +msgid "Scale" +msgstr "התאם גודל" + +#, fuzzy +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"הקטנה או הגדלה את התמונה המקורית. כאשר המערכת מתאימה את גודל התמונה, היא שומרת על היחס " +"(אורך-רוחב) המקורי על מנת למנוע עיוותים. התמונה שלך תשתנה עד שהצד הגדול יותר יגיע לגודל " +"שאתה מגדיר כאן." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "לא קיימים כלים גרפיים שתומכים בסוג קובץ זה, אז אין אפשרות לשנות את גודל התמונה." + +msgid "You must enter a size" +msgstr "אתה מוכרח להכניס גודל" + +msgid "Preserve Original" +msgstr "שמור מקור" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"המערכת אינה משנה את התמונות המקוריות שלך כאשר היא מסובבת או משנה את גודל התמונות, היא יוצרת " +"העתקים של התמונות ועובדת איתם. זה דורש מעט יותר מקום על השרת, אך מונע פגיעה בתמונות המקוריות " +"שבגלרייה. ביטול אפשרות זו יגרום לכל השינויים להתבצע על התמונה המקורית." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "זהו קישור לתמונה אחרת, אז אין באפשרותך לשנות את המקורית" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "יש קישורים לתמונה זו, אז אינך יכול לשנות את המקורית" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "שמור תמונה מקורית" + +msgid "Modified Photo" +msgstr "תמונה שונתה" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"אתה משתמש בהעתק של התמונה המקורית, שעבר שינוי גודל או סיבוב. התמונה המקורית עדיין קיימת, " +"אך היא כבר לא בשימוש. כל שינוי יתבצע על ההעתק." + +msgid "Restore original" +msgstr "שחזר מקור" + +#, fuzzy +msgid "Choose a theme" +msgstr "בחר אלבום חדש עבורם" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "" + +msgid "Choose Theme" +msgstr "" + +#, fuzzy, c-format +msgid "Configure the %s theme" +msgstr "מודול בדיקת יחידה" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"אלבום זה מוגדר לשימוש בערכת הצבעים %s. הגדרות אלו ישפיעו על ערכת הצבעים של אלבום זה " +"בלבד." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" + +#, fuzzy +msgid "Album Highlight" +msgstr "הצג הדגשות" + +#, fuzzy +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "אתה יכול לבחור את פריט זה בתור התמונה המוקטנת של אלבום-האב שלו." + +#, fuzzy +msgid "Highlight for:" +msgstr "הצג הדגשות" + +#, fuzzy +msgid "Highlight" +msgstr "הצג הדגשות" + +msgid "Move an Item" +msgstr "העבר פריט" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "העביר בהצלחה פריט %d" +msgstr[1] "העביר בהצלחה %d פריטים" + +msgid "This album contains no items to move." +msgstr "האלבום אינו כולל פריטים להעברה." + +msgid "Source" +msgstr "מקור" + +msgid "Choose the items you want to move" +msgstr "בחר את הפריטים שברצונך להעביר" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "היעד שבחרת אינו מקבל תת-אלבומים, אז סימון כל תת-האלבומים בוטל." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "היעד שבחרת מקבל רק תת-אלבומים, אז סימון כל מה שאינו תת-אלבום בוטל." + +msgid "You are not allowed to move this item away from here." +msgstr "אינך רשאי להעביר את פריט זה מכאן." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "אינך ראשי להעביר אלבום זה ליעד הנבחר." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "אינך ראשי להעביר את פריט זה ליעד הנבחר." + +msgid "You cannot move an album into its own subtree." +msgstr "אינך יכול להעביר אלבום לתוך עצמו." + +msgid "Destination" +msgstr "יעד" + +msgid "Choose a new album for them" +msgstr "בחר אלבום חדש עבורם" + +msgid "You don't have the permission to add items in this album" +msgstr "אין לך הרשאות להוספת פריטים באלבום זה" + +msgid "No destination chosen" +msgstr "לא נבחר יעד" + +msgid "Move" +msgstr "העבר" + +msgid "Successfully moved" +msgstr "העברה בוצעה בהצלחה" + +msgid "Choose a destination album" +msgstr "בחר אלבום יעד" + +msgid "Permissions" +msgstr "הרשאות" + +msgid "Owner changed successfully" +msgstr "בעלים שונה בהצלחה" + +#, fuzzy +msgid "Group permission added successfully" +msgstr "הגדרות חשבון משתמש נשמרו בהצלחה" + +#, fuzzy +msgid "User permission added successfully" +msgstr "הגדרות נשמרו בהצלחה" + +#, fuzzy +msgid "Group permission removed successfully" +msgstr "הגדרות חשבון משתמש נשמרו בהצלחה" + +#, fuzzy +msgid "User permission removed successfully" +msgstr "תמונה מוקטנת נגזרה בהצלחה" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"לכל פריט יש את ההרשאות הבלתי-תלויות שלו. שינוי הרשאות לסיפריה מסויימת לא משפיע על תת-" +"הסיפריות שבה. זה מאפשר לך להגביל את הגישה לסיפריה מסויימת, אך עדיין לאפשר גישה לפריט ספציפי " +"באותה סיפריה, או ההיפך. הדרך היעילה ביותר לשימוש במערכת ההרשאות היא על-ידי יצירת קבוצות " +"משתמשים והגבלת ההרשאות על-פי הקבוצות. לאחר מכן, ניתן לשנות הרשאות של משתמש ספציפי על-ידי " +"הוספה או הסרה שלו מהקבוצה הרלוונטית." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "פריט זה שייך למשתמש: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "פריט זה שייך למשתמש: %s (%s)" + +msgid "New owner" +msgstr "בעלים חדשים" + +msgid "Change" +msgstr "שנה" + +#, fuzzy +msgid "Apply new owner to sub-items" +msgstr "שמור עבור תת-פריטים" + +msgid "You must enter a user name" +msgstr "אתה מוכרח להכניס שם משתמש" + +msgid "The user name you entered is invalid" +msgstr "שם המשתמש שהכנסת אינו תקני" + +msgid "Apply changes" +msgstr "שמור שינויים" + +#, fuzzy +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"פריט זה מכיל תת-פריטים. השינוים שתבצע עליו יכולים לפעול עליו בלבד, או גם על כל תת-הפריטים " +"שלו. שים לב שהשינוים שתבצע יתאחדו עם ההגדרות הקיימות של תת-הפריטים, ועלולים לקחת הרבה זמן " +"אם יש לך הרבה תת-פריטים. זה יעיל יותר לשנות הרשאות עבור קבוצות, ואז להוסיף או להסיר " +"משתמשים מאותן קבוצות. השינויים משפיעים על תת-אלבומים כברירת מחדל." + +msgid "Apply to sub-items" +msgstr "שמור עבור תת-פריטים" + +msgid "Group Permissions" +msgstr "הרשאות הקבוצה" + +msgid "Group name" +msgstr "שם הקבוצה" + +msgid "Permission" +msgstr "הרשאה" + +msgid "New Group Permission" +msgstr "הרשאות קבוצה חדשה" + +msgid "Add Permission" +msgstr "הוסף הרשאות" + +msgid "The permission you chose is invalid" +msgstr "ההרשאה שבחרת אינה תיקנית" + +msgid "The group name you entered is invalid" +msgstr "שם הקבוצה שהכנסת אינה תיקני" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "ההרשאה כבר קיימת עבור קבוצה זו (בדוק תת-הרשאות)" + +msgid "User Permissions" +msgstr "הרשאות משתמש" + +msgid "User name" +msgstr "שם משתמש" + +msgid "New User Permission" +msgstr "הרשאות משתמש חדש" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "ההרשאות כבר קיימות עבור משתמש זה (בדוק תת-הרשאות)" + +msgid "Reorder Album" +msgstr "סדר אלבום מחדש" + +#, fuzzy +msgid "Order saved successfully" +msgstr "שינויים נשמרו בהצלחה" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"אלבום זה מוגדר לסידור אוטומטי, ולכן אין באפשרותך לשנות את סדר הפריטים שבו בצורה ידנית. בטל " +"את אפשרות הסידור האוטומטי על-מנת להמשיך." + +msgid "change" +msgstr "שנה" + +msgid "Change the order of the items in this album." +msgstr "שנה את סדר הפריטים באלבום זה" + +msgid "Move this item" +msgstr "העבר פריט זה" + +msgid "before" +msgstr "לפני" + +msgid "after" +msgstr "אחרי" + +msgid "Reorder" +msgstr "סדר מחדש" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +#, fuzzy +msgid "Admin Login" +msgstr "אפשרויות ניהול" + +msgid "Enter a URL" +msgstr "הכנס כתובת" + +msgid "Enter some text describing the URL" +msgstr "הכנס טקסט המתאר את הכתובת" + +msgid "Enter an image URL" +msgstr "הכנס כתובת לתמונה" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "רשימה" + +msgid "bullet" +msgstr "תבליט" + +msgid "url" +msgstr "כתובת" + +msgid "image" +msgstr "תמונה" + +#, fuzzy +msgid "color" +msgstr "הגדרות" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "" + +msgid "Missing Theme" +msgstr "" + +#, fuzzy, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"אלבום זה מוגדר לשימוש בערכת הצבעים %s. הגדרות אלו ישפיעו על ערכת הצבעים של אלבום זה " +"בלבד." + +#, fuzzy, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"אלבום זה מוגדר לשימוש בערכת הצבעים %s. הגדרות אלו ישפיעו על ערכת הצבעים של אלבום זה " +"בלבד." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +msgid "Admin Options" +msgstr "אפשרויות ניהול" + +msgid "User Options" +msgstr "אפשרויות משתמש" + +msgid "Password changed successfully" +msgstr "סיסמה שונתה בהצלחה" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "אתה מוכרח להכניס את סיסמתך הנוכחית, ואז להכניס פעמיים את הסיסמה החדשה." + +msgid "Current Password" +msgstr "סיסמה נוכחית" + +msgid "You must enter your current password" +msgstr "לא הכנסת את הסיסמה הנוכחית שלך" + +msgid "Incorrect password" +msgstr "סיסמה לא נכונה" + +msgid "New Password" +msgstr "סיסמה חדשה" + +msgid "You must enter a new password" +msgstr "אתה מוכרח להכניס סיסמה חדשה" + +msgid "Verify New Password" +msgstr "וודא סיסמה חדשה" + +msgid "You must enter your new password again!" +msgstr "לא הכנסת את הסיסמה שלך בשנית!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "כניסה לחשבון שלך" + +msgid "Your password has been recovered, please login." +msgstr "" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "פרטי הכניסה שלך שגויים. אנא נסה שנית." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "הגדרות חשבון משתמש נשמרו בהצלחה" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +#, fuzzy +msgid "(required to change the e-mail address)" +msgstr "אתה מוכרח להכניס כתובת אימייל" + +#, fuzzy +msgid "You must enter your current password to change the e-mail address" +msgstr "לא הכנסת את הסיסמה הנוכחית שלך" + +msgid "Recover a lost or forgotten password" +msgstr "" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" + +msgid "Your recovery request has been sent!" +msgstr "" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +#, fuzzy +msgid "Recover" +msgstr "הסר" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" + +msgid "Recover Password for Username" +msgstr "" + +#, fuzzy +msgid "You must enter a username to recover the password for." +msgstr "אתה מוכרח להכניס סיסמה חדשה" + +#, fuzzy +msgid "The username you entered does not exist." +msgstr "שם המשתמש שהכנסת אינו תקני" + +msgid "Authorization Incorrect" +msgstr "" + +msgid "Recovery Instructions" +msgstr "" + +msgid "AuthFile Missing" +msgstr "" + +msgid "AuthFile Unreadable" +msgstr "" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" + +#, fuzzy +msgid "Refresh" +msgstr "לפני" + +msgid "This page will allow you to reset the password on your account." +msgstr "" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "" + +#, fuzzy +msgid "Username missing" +msgstr "הרשאות משתמש" + +msgid "Submit" +msgstr "" + +#, c-format +msgid "Hello %s," +msgstr "" + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" + +#, c-format +msgid "Your username is: %s" +msgstr "" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" + +msgid "Thank you!" +msgstr "" + +#, fuzzy +msgid "guest" +msgstr "אורח" + +#, c-format +msgid "display mode: %s" +msgstr "" + +#, fuzzy, c-format +msgid "Date: %s" +msgstr "אחרי" + +#, c-format +msgid "Owner: %s" +msgstr "בעלים: %s" + +#, fuzzy, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "(פריט %d)" +msgstr[1] "(%d פריטים)" + +#, fuzzy, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(פריט %d)" +msgstr[1] "(%d פריטים)" + +#, c-format +msgid "Views: %d" +msgstr "" + +msgid "« album actions »" +msgstr "« פעולות באלבום »" + +msgid "« item actions »" +msgstr "« פעולות בפריט »" + +msgid "Go" +msgstr "Go" + +msgid "Navigation" +msgstr "ניווט" + +msgid "next" +msgstr "הבא" + +msgid "last" +msgstr "אחרון" + +#, c-format +msgid "Page %d of %d" +msgstr "עמוד %d מתוך %d" + +#, c-format +msgid "%d of %d" +msgstr "%d מתוך %d" + +msgid "first" +msgstr "ראשון" + +msgid "previous" +msgstr "הקודם" + +msgid "Page:" +msgstr "עמוד:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "גודל: " + +msgid "Unknown" +msgstr "לא ידוע" + +msgid "Full size: " +msgstr "גודל מלא: " + +msgid "Setting" +msgstr "הגדרה" + +msgid "Use Global" +msgstr "השתמש בגלובלי" + +#, fuzzy +msgid "Language selector" +msgstr "בחירת שפה במסגרת הצדדית" + +#, fuzzy +msgid "Item actions" +msgstr "אפשרויות ניהול" + +msgid "Use dropdown menu" +msgstr "" + +#, fuzzy +msgid "Login block" +msgstr "כניסה" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/hu.po b/Source/gallery2/modules/core/po/hu.po new file mode 100644 index 0000000..1ed8855 --- /dev/null +++ b/Source/gallery2/modules/core/po/hu.po @@ -0,0 +1,3606 @@ +# $Id: hu.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Previous translators (as far as known, add yourself here, please): +# - Gergely Dömsödi +# - Jozsef R.Nagy +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-11 14:44+0100\n" +"Last-Translator: Sandor Dibuz \n" +"Language-Team: magyar \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "Gallery Email Test" +msgstr "Galéria Emailteszt" + +msgid "forever" +msgstr "örökké" + +msgid "High Priority (Me first!)" +msgstr "Magas Prioritás (Engem először!)" + +msgid "Low Priority (I want to share!)" +msgstr "Alacsony Prioritás (Osztozni akarok!)" + +msgid "No Markup" +msgstr "" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Nyers HTML" + +msgid "Database" +msgstr "Adatbázis" + +msgid "File" +msgstr "Fájl" + +# c-format +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d perc" + +# c-format +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d óra" + +# c-format +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d nap" + +# c-format +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d hét" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Nincs gyorsítás" + +msgid "Partial acceleration" +msgstr "Részleges gyorsítás" + +msgid "Full acceleration" +msgstr "Teljes gyorsítás" + +msgid "Themes" +msgstr "Felületek" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "Pluginek vizsgálata" + +msgid "Update Plugin List" +msgstr "Modulok listájának frissítése" + +msgid "Done." +msgstr "Kész." + +msgid "Updating Packages" +msgstr "Csomagok Frissítése" + +#, c-format +msgid "Preparing %s" +msgstr "%s feldolgozása" + +#, c-format +msgid "Downloading %s" +msgstr "%s letöltése" + +#, c-format +msgid "Activating %s" +msgstr "%s aktiválása" + +msgid "Deleting Language Packs" +msgstr "Nyelvi csomagok törlése" + +#, fuzzy +msgid "Update completed with errors." +msgstr "Feltöltés sikeres" + +msgid "Update complete." +msgstr "Frissítés befejezve." + +msgid "install" +msgstr "telepítés" + +msgid "upgrade" +msgstr "frissítés" + +msgid "activate" +msgstr "aktiválás" + +msgid "uninstall" +msgstr "eltávolít" + +msgid "deactivate" +msgstr "deaktiválás" + +msgid "Inherit settings from parent album" +msgstr "Beállítások öröklése a szülőalbumtól" + +msgid "Use these settings" +msgstr "Ezen beállítások használata" + +msgid "Installing the core module" +msgstr "Központi modul telepítése" + +msgid "key" +msgstr "kulcs" + +msgid "All access" +msgstr "Minden hozzáférés" + +msgid "[core] View item" +msgstr "[core] Elem megtekintése" + +msgid "[core] View resized version(s)" +msgstr "[core] Átméretezett verziók megtekintése" + +msgid "[core] View original version" +msgstr "[core] Eredeti verzió megtekintése" + +msgid "[core] View all versions" +msgstr "[core] Mindegyik verzió megtekintése" + +msgid "[core] Add sub-album" +msgstr "[core] Al-album hozzáadása" + +msgid "[core] Add sub-item" +msgstr "[core] Al-elem hozzáadása" + +msgid "[core] Edit item" +msgstr "[core] Elem szerkesztése" + +msgid "[core] Change item permissions" +msgstr "[core] Elem jogainak megváltoztatása" + +msgid "[core] Delete item" +msgstr "[core] Elem törlése" + +msgid "Upgrading permissions" +msgstr "Jogok frissítése" + +msgid "Deleting old permission tables" +msgstr "Régi jogosultsági táblák törlése" + +msgid "Registered Users" +msgstr "Regisztrált felhasználók:" + +msgid "All Users" +msgstr "Minden felhasználó" + +msgid "Detecting broken derivatives" +msgstr "Hiányzó/hibás leszármazottak keresése" + +msgid "Clearing fast-download cache" +msgstr "Gyors-letöltési gyorsítótár törlése" + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "Régi jogosultsági táblák törlése" + +msgid "Updating panorama items" +msgstr "Panoráma elemek frissítése" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Az AccessSubscriberMap tábla optimalizálása" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Oldal adminisztrátorok" + +msgid "Everybody" +msgstr "Mindenki" + +msgid "Guest" +msgstr "Vendég" + +msgid "Gallery" +msgstr "Galéria" + +msgid "This is the main page of your Gallery" +msgstr "Ez a Galéria főoldala" + +msgid "Converting MySQL data to UTF8" +msgstr "MySQL adatbázis konvertálása UTF8 kódolásra" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Upgrading permissions (%d items complete, %d remaining)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" + +#, fuzzy, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Régi jogosultsági táblák törlése" + +msgid "add items" +msgstr "Elemek feltöltése" + +msgid "Album created successfully." +msgstr "Album sikeresen létrehozva." + +msgid "add sub-album" +msgstr "Belső album hozzáadása" + +msgid "add items confirmation" +msgstr "elemek hozzáadásának megerősítése" + +msgid "Base filename" +msgstr "Alap fájlnév" + +msgid "Caption" +msgstr "Felirat" + +msgid "Blank" +msgstr "Üres" + +msgid "From Web Browser" +msgstr "Webböngészőből" + +# c-format +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabájt" + +# c-format +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d Kilobájt" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "%s fájl meghaladja a maximálisan engedélyezett fájlméretet" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "%s fájl meghaladja az űrlapon megadott maximális fájlméretet" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "%s fájl csak részben került feltöltésre" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "%s fájl feltöltése nem sikerült. Hiba %d" + +msgid "Gallery Item Administration" +msgstr "Galéria elem adminisztáció" + +msgid "delete an item" +msgstr "egy elem törlése" + +msgid "delete confirmation" +msgstr "törlés megerősítése" + +#, c-format +msgid "delete %s" +msgstr "%s törlése" + +#, c-format +msgid "edit %s" +msgstr "%s szerkesztése" + +msgid "Settings saved successfully." +msgstr "Beállítások sikeresen elmentve" + +#, fuzzy +msgid "Apply resized image settings" +msgstr "Felületbeállítások visszaállítva" + +msgid "Preparing..." +msgstr "Feldolgozás..." + +msgid "Apply thumbnail settings" +msgstr "Előnézeti kép beállításainak alkalmazása" + +#, fuzzy +msgid "Rebuilding thumbnails..." +msgstr "Előnézeti·képek·újragyártása" + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "%d/%d kép feldolgozása" + +msgid "Changes saved successfully" +msgstr "Változtatások elmentve" + +msgid "Animation Size" +msgstr "Animáció méret" + +msgid "edit captions" +msgstr "feliratok szerkesztése" + +msgid "General" +msgstr "Általános" + +msgid "Movie Size" +msgstr "Film mérete" + +msgid "Photo" +msgstr "Fénykép" + +msgid "Thumbnail cropped successfully" +msgstr "Előnézeti kép vágása sikeres" + +msgid "Thumbnail reset successfully" +msgstr "Előnézeti kép sikeresen visszaállítva" + +msgid "Photo 5x3" +msgstr "5x3-as fénykép" + +msgid "Photo 6x4" +msgstr "6x4-es fénykép" + +msgid "Photo 7x5" +msgstr "7x5-ös fénykép" + +msgid "Photo 10x8" +msgstr "10x8-as fénykép" + +msgid "Fullscreen 4x3" +msgstr "Teljesképernyős 4x3" + +msgid "Widescreen 16x9" +msgstr "Szélesképernyős 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope·2.35x1" + +msgid "Square 1x1" +msgstr "1x1-es négyzet" + +msgid "As Image" +msgstr "Képként" + +msgid "Landscape" +msgstr "Fekvő" + +msgid "Portrait" +msgstr "Álló" + +msgid "Crop Thumbnail" +msgstr "Előnézeti kép kivágása" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Forgatási és nagyítási beállítások sikeresen visszaállítva" + +msgid "Rotated photo successfully" +msgstr "Fényképek sikeresen elforgatva" + +msgid "Scaled photo successfully" +msgstr "Nagyítás/kicsinítés sikeresen végrehajtva" + +msgid "Modify Photo" +msgstr "Fénykép módosítása" + +msgid "Successfully changed theme" +msgstr "Felület sikeresen megváltoztatva" + +msgid "« default theme »" +msgstr "« alapértelmezett felület »" + +msgid "Theme" +msgstr "Felület" + +msgid "make highlight" +msgstr "kijelölés" + +msgid "move item" +msgstr "elem mozgatása" + +#, c-format +msgid "move %s" +msgstr "%s mozgatása" + +#, c-format +msgid "edit %s permissions" +msgstr "%s jogainak szerkesztése" + +msgid "reorder items" +msgstr "elemek mozgatása albumok között" + +msgid "Maintenance" +msgstr "Karbantartás" + +msgid "Gallery Site Administration" +msgstr "Galéria oldal adminisztráció" + +msgid "site admin" +msgstr "adminisztrátor" + +msgid "Gallery User Administration" +msgstr "Galéria felhasználói adminisztráció" + +msgid "change password" +msgstr "jelszó megváltoztatása" + +msgid "your account" +msgstr "hozzáférési adataid" + +msgid "Password Recovery" +msgstr "Jelszó Pótlása" + +msgid "Core" +msgstr "Mag" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Core modul" + +msgid "Add Items" +msgstr "Elemek hozzáadása" + +msgid "Edit Album" +msgstr "Album szerkesztése" + +msgid "Edit Photo" +msgstr "Fénykép szerkesztése" + +msgid "Edit Movie" +msgstr "Videó szerkesztése" + +msgid "Add Album" +msgstr "Album létrehozása" + +msgid "Edit Permissions" +msgstr "Jogok szerkesztése" + +msgid "View Permissions" +msgstr "Jogosultságok Megtekintése" + +msgid "Delete Album" +msgstr "Album törlése" + +msgid "Delete Photo" +msgstr "Fénykép törlése" + +msgid "Delete Movie" +msgstr "Videó törlése" + +msgid "Move Album" +msgstr "Elemek mozgatása másik albumba" + +msgid "Move Photo" +msgstr "Fénykép mozgatása másik albumba" + +msgid "Move Movie" +msgstr "Videó mozgatása" + +msgid "Edit Captions" +msgstr "Feliratok szerkesztése" + +msgid "Make Highlight" +msgstr "Kiemelés az album borítójára" + +msgid "Reorder Items" +msgstr "Elemek átrendezése" + +msgid "Site Admin" +msgstr "Oldal adminisztráció" + +msgid "Login" +msgstr "Bejelentkezés" + +msgid "Your Account" +msgstr "Hozzáférési adataid" + +msgid "Logout" +msgstr "Kilépés" + +msgid "Plugins" +msgstr "Modulok" + +msgid "Users" +msgstr "Felhasználók" + +msgid "Groups" +msgstr "Csoportok" + +msgid "Performance" +msgstr "Teljesítmény" + +msgid "Toolkit Priority" +msgstr "Kezelőkészlet prioritása" + +msgid "Graphics Toolkits" +msgstr "Grafikus eszköztár" + +msgid "Account Settings" +msgstr "Felhasználói beállítások" + +msgid "Change Password" +msgstr "Jelszóváltoztatás" + +#, c-format +msgid "Edit %s" +msgstr "%s szerkesztése" + +#, c-format +msgid "Delete %s" +msgstr "%s törlése" + +#, c-format +msgid "Move %s" +msgstr "%s mozgatása" + +msgid "Build all thumbnails/resizes" +msgstr "Minden előnézeti/átméretezett kép legyártása" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" + +msgid "Build All Thumbnails/Resizes" +msgstr "Minden Előnézeti Kép/Áméretezett Kép Elkészítése" + +msgid "Debug output for failed items:" +msgstr "" + +#, c-format +msgid "Checked %d items" +msgstr "%d elem ellenőrizve" + +#, c-format +msgid "%d items built" +msgstr "%d elem létrehozva" + +#, c-format +msgid "%d items failed" +msgstr "%d elem sikertelen" + +msgid "Convert MySQL database to UTF8" +msgstr "MySQL adatbázis konvertálása UTF8 kódolásra" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +msgid "Database successfully converted to UTF8" +msgstr "Adatbázis sikeresen átkonvertálva UTF8 kódolásra" + +msgid "No conversion required" +msgstr "Konverzió nem szükséges" + +msgid "Delete user sessions" +msgstr "Felhasználói munkafolyamatok törlése" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" + +#, c-format +msgid "Deleted %d sessions." +msgstr "%d munkafolyamat törölve." + +msgid "Delete database cache" +msgstr "Adatbázis gyorsítótár törlése" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" + +# c-format +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "%s könyvtár sikeresen törölve" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Unable to delete directory: %s" + +msgid "Delete template cache" +msgstr "Felületgyorsítótár törlése" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" + +msgid "Template cache deleted successfully" +msgstr "Felületgyorsítótár sikeresen törölve" + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animáció" + +msgid "animation" +msgstr "animáció" + +msgid "Gallery Core" +msgstr "Gallery Core" + +msgid "Gallery Core Module" +msgstr "Gallery Core Modul" + +msgid "Search descriptions" +msgstr "Leírások keresése" + +msgid "Search keywords" +msgstr "Kulcsszavak keresése" + +msgid "Search summaries" +msgstr "Rövid leírások keresése" + +msgid "Search titles" +msgstr "Címek keresése" + +msgid "Description" +msgstr "Leírás" + +msgid "Keywords" +msgstr "Kulcsszavak" + +msgid "Summary" +msgstr "Rövid leírás" + +msgid "Title" +msgstr "Cím" + +msgid "Owner" +msgstr "Tulaj" + +msgid "Dynamic Album" +msgstr "Dinamikus album" + +msgid "dynamic album" +msgstr "dinamikus album" + +msgid "Group" +msgstr "Csoport" + +msgid "group" +msgstr "csoport" + +msgid "Other" +msgstr "Más" + +msgid "Movie" +msgstr "Film" + +msgid "movie" +msgstr "film" + +msgid "photo" +msgstr "fénykép" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +msgid "Experimental Repository" +msgstr "" + +msgid "Community Repository" +msgstr "" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "" + +msgid "Index integrity check failed." +msgstr "" + +msgid "« default sort order »" +msgstr "« alapértelmezett rendezés »" + +msgid "Manual sort order" +msgstr "Kézi elrendezés" + +msgid "Origination Date" +msgstr "Eredeti dátum" + +msgid "Creation Date" +msgstr "Létrehozás dátuma" + +msgid "Last Changed Date" +msgstr "Utoljára módosítva" + +msgid "Name" +msgstr "Név" + +msgid "View Count" +msgstr "Nézettségszámláló" + +msgid "Random" +msgstr "Véletlenszerű" + +msgid "« no presort »" +msgstr "« nincs előrendezés »" + +msgid "Albums First" +msgstr "Előbb az albumok" + +msgid "Most Viewed First" +msgstr "Legtöbbet nézett előre" + +msgid "Ascending" +msgstr "Növekvő" + +msgid "Descending" +msgstr "Csökkenő" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +msgid "This page is valid XHTML 1.0" +msgstr "Az oldal helyes XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Támogasd a Galéria projektet" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Gallery v%s alapokon" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Becsült hátralévő idő: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Felhasznált memória: %s, összes: %s" + +msgid "Rows per album page" +msgstr "Sorok száma oldalanként" + +msgid "Columns per album page" +msgstr "Oszlopok száma oldalanként" + +msgid "Number of items to show per page" +msgstr "Oldalanként megjelenített elemek száma " + +msgid "Row height (pixels)" +msgstr "Sor magassága (pixelben)" + +msgid "Column width (pixels)" +msgstr "Oszlop szélessége (pixelben)" + +msgid "Show image owners" +msgstr "Kép tulajdonosának megjelenítése" + +msgid "Show album owners" +msgstr "Album tulajdonosának megjelenítése" + +msgid "Show micro navigation thumbnails" +msgstr "Kis navigációs előnézeti képek megjelenítése" + +msgid "Blocks to show in the sidebar" +msgstr "Az oldalpanelen megjelenítendő blokkok" + +msgid "Blocks to show on album pages" +msgstr "Az albumoldalakon megjelenítendő blokkok" + +msgid "Blocks to show on photo pages" +msgstr "A képek oldalain megjelenítendő blokkok" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +msgid "Browse dynamic album" +msgstr "Dinamikus album böngészése" + +msgid "Jump to original album" +msgstr "Ugrás az eredeti albumra" + +msgid "Separate link to original album" +msgstr "Külön link az eredeti albumhoz" + +msgid "View Samples" +msgstr "választék megtekintése" + +msgid "Album Frame" +msgstr "Albumkeret" + +msgid "Item Frame" +msgstr "Elemkeret" + +msgid "Photo Frame" +msgstr "Fényképkeret" + +msgid "Color Pack" +msgstr "Színcsomag" + +msgid "You must enter a number greater than 0" +msgstr "Adjon meg egy 0-nál nagyobb számot" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Hiba: a blokk beállított értékeinek olvasása nem sikerült. Töröld a böngésződ gyorsítótárát " +"és próbáld meg újból!" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Zene" + +msgid "audio" +msgstr "zene" + +msgid "Archive" +msgstr "Archívum" + +msgid "archive" +msgstr "archívum" + +msgid "Document" +msgstr "Dokumentum" + +msgid "document" +msgstr "dokumentum" + +msgid "Spreadsheet" +msgstr "Táblázat" + +msgid "spreadsheet" +msgstr "táblázat" + +msgid "file" +msgstr "fájl" + +msgid "Back" +msgstr "Vissza" + +#, c-format +msgid "Back to %s" +msgstr "Vissza ide: %s" + +msgid "User" +msgstr "Felhasználó" + +msgid "user" +msgstr "felhasználó" + +msgid "Optimize database" +msgstr "Adatbázis optimalizálása" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Az adatbázis teljesítményét növeli. Az eredményesség a használt adatbázistól függ, de ez a " +"karbantartási rutin a Gallery-t gyorsabbá teszi. Különösen hasznos sok elem hozzáadása vagy " +"törlése után." + +msgid "Database optimized successfully" +msgstr "Adatbázis optimalizálás sikeres" + +msgid "Reset view counts" +msgstr "Nézettségi számláló nullázása" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Minden album és elem megtekintési számlálójának nullázása. Ez az adatbázis gyorsítótárat is " +"törli." + +msgid "View counts reset successfully" +msgstr "Megtekintési számláló sikeresen nullázva" + +msgid "Refresh capture dates" +msgstr "Fotók készítési idejének frissítése" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" + +msgid "Processing..." +msgstr "Feldolgozás..." + +msgid "Refresh Capture Dates" +msgstr "Fotók készítési idejének frissítése" + +#, c-format +msgid "Processing item %d of %d" +msgstr "%d/%d elem feldolgozása" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Frissítve %d elem, összesen %d" + +msgid "System information" +msgstr "Rendszerinformáció" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" + +msgid "core" +msgstr "mag" + +msgid "unknown" +msgstr "ismeretlen" + +msgid "Gallery version" +msgstr "Galéria verzió" + +msgid "PHP version" +msgstr "PHP verzió" + +msgid "Webserver" +msgstr "Webszerver" + +msgid "Toolkits" +msgstr "Eszköztárak" + +msgid "Acceleration" +msgstr "Gyorsítás" + +msgid "Operating system" +msgstr "Operációs rendszer" + +msgid "Default theme" +msgstr "Alapértelmezett felület" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "engedélyezve" + +msgid "disabled" +msgstr "letiltva" + +#, fuzzy +msgid "Locale" +msgstr "Nagyítás" + +msgid "Browser" +msgstr "Böngésző" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Sorok száma a %s táblában = %d" + +msgid "Successfully saved theme settings" +msgstr "Témabeállítások sikeresen elmentve" + +msgid "General Settings" +msgstr "Általános beállítások" + +msgid "Settings saved successfully" +msgstr "Beállítások sikeresen elmentve" + +msgid "Added local upload directory successfully" +msgstr "Helyi feltöltési könyvtár sikeresen hozzáadva" + +msgid "Removed local upload directory successfully" +msgstr "Helyi feltöltőkönyvtár sikeresen törölve" + +msgid "Test email sent successfully" +msgstr "Tesztemail sikeresen elküldve" + +msgid "There was a problem processing your request, see below for details." +msgstr "Hiba történt a kérés feldolgozása közben, részleteket lásd lejjebb." + +msgid "Error sending test email, see below for details." +msgstr "Tesztemail küldése sikertelen, részleteket lásd lejjebb." + +msgid "Language Settings" +msgstr "Nyelvi beállítások" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Add meg a Galéria alapértelmezett nyelvét. Az egyes felhasználók felülbírálhatják ezt a " +"személyes beállításaikkal vagy a nyelvválasztóval, ha az aktiválva van." + +msgid "Default language" +msgstr "Alapértelmezett nyelv" + +msgid "Check Browser Preference" +msgstr "Ellenőrizd a böngésződ beállításait" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"A webszerver nem támogatja a többnyelvűsítést. Kérd meg a Rendszergazdát, hogy konfigurálja " +"újra a PHP-t a %s opciót bekapcsolva." + +msgid "Date Formats" +msgstr "Dátumformátumok" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" + +msgid "Style" +msgstr "Stílus" + +msgid "Format" +msgstr "Formátum" + +msgid "Sample" +msgstr "Minta" + +msgid "Date" +msgstr "Dátum" + +msgid "Time" +msgstr "Idő" + +msgid "Date/Time" +msgstr "Dátum/Idő" + +msgid "Filesystem Permissions" +msgstr "Fájlrendszer jogosultságok" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Állítsd be a Galéria által létrehozott könyvtárak és fájlok alapértelmezett jogait. Ez nem " +"vonatkozik azokra a fájlokra/könyvtárakra, amiket a Galéria már létrehozott." + +msgid "New directories" +msgstr "Új könyvtárak" + +msgid "New files" +msgstr "Új fájlok" + +msgid "Session Settings" +msgstr "Kapcsolat beállítások" + +msgid "Session Lifetime" +msgstr "Kapcsolat élettartama" + +msgid "Inactivity Timeout" +msgstr "Inaktivitási időtúllépés" + +msgid "Embedded Markup" +msgstr "Beágyazott jelölő nyelv (markup)" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" + +msgid "Markup" +msgstr "Jelölő nyelv (markup)" + +msgid "Email" +msgstr "E-mail" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Alapesetben a Galéria a PHP beépített e-mail küldő függvényét használja, ami nem igényel " +"beállítást. Smtp-/levelezőszerver használatához töltsd ki a lejjebb található mezőket, " +"beleértve a bejelentkezési adatokat is, amennyiben az szükséges. Esetleg adj egy :port " +"végződést a kiszolgáló neve után, nem alapértelmezett port használata esetén." + +msgid "Server" +msgstr "Szerver" + +msgid "Username" +msgstr "Felhasználónév" + +msgid "Password" +msgstr "Jelszó" + +msgid "SMTP From Address" +msgstr "SMTP küldő cím" + +msgid "Invalid email address" +msgstr "Hibás emailcím" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Próba email küldése annak leellenőrzésére, hogy a beállítások helyesek (akár PHP mail-t, " +"akár SMTP-t használsz a fentiek szerint). Alább add meg a címzett email címét a teszt " +"üzenethez." + +msgid "Send Email" +msgstr "E-mail küldése" + +msgid "Email Test Error" +msgstr "Emailtesztelési Hiba" + +msgid "Cookies" +msgstr "Sütik" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "Útvonal" + +msgid "Invalid cookie path" +msgstr "Érvénytelen süti" + +msgid "Domain" +msgstr "Domain" + +msgid "Invalid cookie domain" +msgstr "Érvénytelen sütidomain" + +msgid "Locking System" +msgstr "Rendszer zárolása folyamatban" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"A Galéria egy zárolási rendszert használ a párhuzamos változtatások megelőzésére.Kétféle " +"zárolás közül választhatunk, mindegyiknek megvan az előnye és hátránya.A fájl alapú " +"zárolás gyors, és hatásos, viszont nem működik NFS fájlrendszeren,és Windowson " +"megbízhatatlan. Az adatbázis alapú zárolás lassabb, de megbízhatóbb.Amennyiben " +"bizonytalan a választásban, mi a fájlalapú zárolást javasoljuk. Ha sok zárolási " +"időtullépéssel találkozunk, megpróbálkozhat az adatbázis alapú zárolással. Nincs gond az oda-" +"vissza váltással." + +msgid "Lock system" +msgstr "Rendszer zárolása" + +msgid "Helper Processes" +msgstr "Segéd Folyamatok" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +msgid "Priority" +msgstr "Prioritás" + +msgid "Save" +msgstr "Mentés" + +msgid "Reset" +msgstr "Visszaállítás" + +msgid "Create A New Group" +msgstr "Új csoport létrehozása" + +msgid "Group Name" +msgstr "Csoportnév" + +msgid "(required)" +msgstr "(megadása kötelező)" + +msgid "You must enter a group name" +msgstr "Adj meg egy csoportnevet" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Már létezik a '%s' csoport" + +msgid "Create Group" +msgstr "Csoport létrehozása" + +msgid "Cancel" +msgstr "Mégsem" + +msgid "Create A New User" +msgstr "Új felhasználó létrehozása" + +msgid "You must enter a username" +msgstr "Adj meg egy felhasználónevet" + +#, c-format +msgid "Username '%s' already exists" +msgstr "'%s' felhasználónév már létezik" + +msgid "Full Name" +msgstr "Teljes név" + +msgid "Email Address" +msgstr "E-mail cím" + +msgid "You must enter an email address" +msgstr "Adj meg egy e-mail címet" + +msgid "Language" +msgstr "Nyelv" + +msgid "You must enter a password" +msgstr "Adj meg egy jelszót" + +msgid "Verify Password" +msgstr "Jelszó ellenörzése" + +msgid "You must enter the password a second time" +msgstr "Add meg másodszor is a jelszót" + +msgid "The passwords you entered did not match" +msgstr "A beírt jelszavak különböznek" + +msgid "Create User" +msgstr "Felhasználó létrehozása" + +msgid "Delete A Group" +msgstr "Csoport törlése" + +msgid "Are you sure?" +msgstr "Biztosan?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Ez teljesen törli %s-t a Galériából. Nincs visszaút!" + +msgid "Delete" +msgstr "Törlés" + +msgid "Delete a User" +msgstr "Felhasználó törlése" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "A %s felhasználó %s elem tulajdonosa." + +#, c-format +msgid "Delete user %s and..." +msgstr "%s felhasználó törlése és ..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "%s minden eleméhez új tulaj rendelése" + +#, fuzzy, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "%s minden elemének törlése és a fennmaradó nem üres albumokhoz új tulajdonos megadása" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Új tulaj (üresen az Adminisztrátor)" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "'%s' felhasználó nem létezik! Nem lehet elemeket rendelni nem létező felhasználókhoz." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Az új tulajnak másnak kell lennie, mint akit épp törlünk!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Az új tulaj nem lehet Vendég / Anonymous felhasználó!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Ezzel véglegesen eltávolítja a %s-t a Galériából. Nincs lehetőség a " +"visszavonásra!" + +msgid "Edit a group" +msgstr "Csoport szerkesztése" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Tagok szerkesztése a '%s' csoportban" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "'%s' felhasználó a '%s' csoportba sikeresen felvéve" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "'%s' felhasználó kivéve a '%s' csoportból" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Ez a csoport %d felhasználót tartalmaz" + +msgid "Members" +msgstr "Tagok" + +msgid "« first" +msgstr "«·első" + +msgid "« back" +msgstr "«·vissza" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Oldal: %d / %d" + +msgid "next »" +msgstr "következő »" + +msgid "last »" +msgstr "utolsó »" + +msgid "Filter" +msgstr "Szűrő" + +msgid "Clear" +msgstr "Törlés" + +# c-format +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d felhasználó illik a keresésre" + +msgid "Remove selected" +msgstr "Megjelöltek törlése" + +msgid "You must select a user to remove." +msgstr "Válaszd ki a törlendő felhasználót." + +msgid "You can't remove yourself from this group." +msgstr "Nem veheted ki magad ebből a csoportból." + +msgid "Add Member" +msgstr "Tagok hozzáadása" + +msgid "Add" +msgstr "Hozzáadás" + +msgid "You must enter a username." +msgstr "Adj meg egy felhasználónevet." + +#, c-format +msgid "User '%s' does not exist." +msgstr "'%s' felhasználó nem létezik." + +msgid "This user already is in this group." +msgstr "A felhasználó már tagja ennek a csoportnak." + +msgid "Done" +msgstr "Kész" + +msgid "Edit a user" +msgstr "Felhasználó szerkesztése" + +msgid "That username is already in use" +msgstr "A felhasználónév már használatban van" + +msgid "You must enter a new username" +msgstr "Adj meg egy új felhasználónevet" + +msgid "E-mail Address" +msgstr "E-mail cím" + +msgid "(suggested)" +msgstr "(ajánlott)" + +msgid "Options" +msgstr "Opciók" + +msgid "Lock user." +msgstr "Felhasználó zárolása." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +msgid "Reset failed login count." +msgstr "Sikertelen bejelentkezések számlálójának nullázása." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d sikertelen bejelentkezés a legutóbbi sikeres bejelentkezés óta." + +msgid "Group Management" +msgstr "Csoport beállítások" + +#, c-format +msgid "Removed group '%s'" +msgstr "'%s' csoport törölve" + +#, c-format +msgid "Created group '%s'" +msgstr "'%s' csoport létrehozva" + +#, c-format +msgid "Modified group '%s'" +msgstr "'%s' csoport módosítva" + +# c-format +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "%d csoport van a rendszerben" + +msgid "Edit Group" +msgstr "Csoport szerkesztése" + +msgid "Edit" +msgstr "Szerkesztés" + +msgid "Add/Remove Users" +msgstr "Felhasználók hozzáadása/eltávolítása" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Nem létezik a '%s' csoport" + +msgid "You cannot delete that group" +msgstr "Nem törölheted ezt a csoportot" + +msgid "You cannot edit that group's users" +msgstr "Nem szerkesztheted ennek a csoportnak a felhasználóit" + +msgid "Edit Group (by list)" +msgstr "Csoport szerkesztése (lista)" + +msgid "Action" +msgstr "Művelet" + +msgid "edit" +msgstr "szerkesztés" + +msgid "delete" +msgstr "törlés" + +msgid "members" +msgstr "tagok" + +# c-format +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d csoport illik a szűrőre" + +msgid "System Maintenance" +msgstr "Rendszerkarbantartás" + +#, c-format +msgid "Completed %s task successfully." +msgstr "%s feladat sikeresen végrehajtva." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "%s feladat végrehajtása sikertelen." + +msgid "Task name" +msgstr "Feladat neve" + +msgid "Last run" +msgstr "Utolsó futás" + +msgid "Success/Fail" +msgstr "Sikeres/Sikertelen" + +msgid "Not run yet" +msgstr "Még nem futott" + +msgid "Success" +msgstr "Siker" + +msgid "Failed" +msgstr "Sikertelen" + +msgid "run now" +msgstr "futtatás most" + +msgid "Last Run Details:" +msgstr "Utolsó Futás Részletei:" + +msgid "Performance Tuning" +msgstr "Teljesítmény tuningolása" + +msgid "Updated performance settings successfully" +msgstr "Teljesítmény beállítások sikeresen elmentve" + +msgid "Deleted all saved pages" +msgstr "Összes elmentett oldal törölve" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "Részleges gyorsítás" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"A részleges gyorsítás durván 10-25% teljesítménynövekedést eredményezhet, de a dinamikusan " +"generált adatok egy része (pl.nézettségi számlálók) ilyenkor nem frissülnek azonnal. Az " +"összes blokként megjelenő tartalom (pl. véletlen képblokk, az oldalt megjelenő blokkok, " +"stb.) mindig frissülnek." + +msgid "Full Acceleration" +msgstr "Teljes gyorsítás" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"A teljes gyorsítás durván 90% teljesítménynövekedést eredményez, de ilyenkor a dinamikus " +"adatok (pl. véletlen képblokk, az oldalt megjelenő blokkok, a bevásárlőkosár tartalma, " +"nézettségi számlálók, stb.) nem frissülnek, amíg az elmentett tartalom élettartama le nem " +"jár." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Meghatározhatod továbbá az elmentett oldalak elavulását is. Hosszabb idő beállítása " +"csökkenti ugyan a szerver terhelését, de amíg ez le nem jár, a felhasználók nem látják a " +"változásokat. Rövidebb idő az jelenti, hogy a felhasználók gyorsabban követhetik a " +"változásokat, de ez nagyobb szerverterhelést eredményez." + +msgid "Here are some standard acceleration profiles:" +msgstr "Néhány szokásos gyorsítási beállítás:" + +msgid "Medium acceleration" +msgstr "Közepes gyorsítás" + +msgid "High acceleration" +msgstr "Nagy gyorsítás" + +msgid "Guest Users" +msgstr "Vendég felhasználók:" + +msgid "Expires after:" +msgstr "Tárolt oldalak élettartama:" + +msgid "Clear Saved Pages" +msgstr "Elmentett oldalak törlése" + +msgid "Status: Inactive" +msgstr "Állapot: inaktív" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ modul deaktiválva" + +msgid "Status: Active" +msgstr "Állapot: aktív" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ modul aktiválva" + +msgid "Status: Not Installed" +msgstr "Állapot: nem telepített" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ modul nincs telepítve" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Állapot: frissíteni kell (inaktív)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Állapot: inkompatibilis modul (inaktív)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Állapot: inaktív (konfigurálás szükséges)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ modult konfigurálni kell" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ modul törölve" + +msgid "Warning!" +msgstr "Figyelmeztetés!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Valóban törölni akarod a __PLUGIN__ modult?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "Ezzel eltávolít minden jogosultságot, és átmeneti fájlt, amit ez a modul hozott létre" + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Ez a modul törölve lesz, de a hozzá tartozó fájlok megmaradnak, így a modul bármikor könnyen " +"újratelepíthető." + +msgid "Yes" +msgstr "Igen" + +msgid "No" +msgstr "Nem" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Biztos, hogy törölni akarod a __PLUGIN__ modult?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "A modul és a hozzá tartozó fájlok is törölve lesznek." + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "letiltva (__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "frissítve (__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "nincs telepítve (__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "frissíteni kell (__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "inkompatibilis (__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Nem sikerült teljesen törölni: __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Galéria modulok" + +msgid "Get More Plugins" +msgstr "További Galéria modulok" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Több szolgáltatást szeretnél? Új modulok csak egy kattintásnyira. Csak kattints a(z) %s " +"linkre az induláshoz." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"A Galéria további szolgáltatásai különböző modulok használatával érhetők el. Ezek egyszerűen " +"letölthetők és telepíthetők vagy letilthatók, illetve törölhetők kívánság szerint. Ha egy " +"adott szolgáltatást használni akarsz, töltsed le, telepítsed, szükség szerint konfiguráld, " +"majd aktiváld az adott modult." + +msgid "Plugin Name" +msgstr "Modul neve" + +msgid "Installed" +msgstr "Telepítve" + +msgid "Version" +msgstr "Verzió" + +msgid "Actions" +msgstr "Műveletek" + +msgid "help" +msgstr "segítség" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "Inkompatibilis modul!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Szükséges Core API: %s (jelenleg %s)" + +#, fuzzy, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Szükséges modul API: %s (jelenleg %s)" + +msgid "configure" +msgstr "beállítás" + +#, fuzzy +msgid "up to date" +msgstr "Dátum" + +msgid "upgrade required" +msgstr "frissítés szükséges" + +msgid "not installed" +msgstr "nincs telepítve" + +msgid "incompatible" +msgstr "inkompatibilis" + +msgid "Repository" +msgstr "" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "Győződj meg róla, hogy az internet kapcsolatod rendben van, vagy próbáld meg később." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Nem sikerült a %s modult letölteni, mert a következő fájlok/könyvtárak nem módosíthatók:" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "Minden modul naprakész." + +#, c-format +msgid "%s plugin updated." +msgstr "%s modul frissítve." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "A %d nyelvi csomag törölve." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Új modulokat gyorsan és könnyen telepíthetsz. Ha később úgy döntesz, hogy egy adott modulra " +"már nincs szükséged, bármikor törölheted. Különböző modulgyűjtemények vannak, szabadon " +"eldöntheted, hogy melyike(ke)t akarod használni. (Akár mindet is egyidőben.) Érdemes " +"rendszeresen letölteni az elérhető modulok listáját, igy megtudhatod, ha egy adott modulnak " +"újabb változata is elérhető már. %s Lassú internetelérésnél ez néhány percig eltarthat." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "A Galéria projekt hivatalosan kiadott moduljai (%sajánlott%s)" + +#, c-format +msgid "last updated on %s" +msgstr "utolsó frissítés: %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"A Galéria projekt kísérleti jellegű moduljai (%svadi új szolgáltatásokkal, de akár hibás is " +"lehet köztük%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "A Galéria közösség moduljai (%scsak saját felelősségedre használd!%s)" + +msgid "Repository Error" +msgstr "" + +msgid "You must select at least one repository." +msgstr "" + +msgid "Ok" +msgstr "OK" + +msgid "Configure your Gallery" +msgstr "Jogosultságok beállítása" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Mielőtt tovább lépnél, be kell állítanod néhány dolgot, hogy a Galéria telepíteni tudja " +"neked a modulokat. Ez könnyű, csak add ki a következő parancsokat bejelentkezés után vagy az " +"ftp klienseden keresztül:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Ha nem tudnád beállítani a jogokat, kérd meg a rendszeradminisztrátort, hogy segítsen. Ha " +"sikerült, csak kattints a \"Folytatás\" gombra." + +msgid "Continue" +msgstr "Folytatás" + +msgid "Download Plugin List" +msgstr "Modulok listájának letöltése" + +msgid "Show Repository List" +msgstr "" + +msgid "Upgrade Gallery" +msgstr "Galéria frissítése" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "Galéria mag %sletöltése%s" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Olvasd el a %sfrissítési utasításokat%s és hajtsd végre a frissítést" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +#, fuzzy +msgid "upgrade available" +msgstr "Galéria" + +msgid "locked" +msgstr "zárolva" + +msgid "Theme Name" +msgstr "Felület Neve" + +msgid "Module Name" +msgstr "Modulnév" + +msgid "Latest" +msgstr "Legújabb" + +msgid "Locked Plugin" +msgstr "Zárolt modul" + +msgid "Incompatible Plugin" +msgstr "Inkompatibilis modul" + +#, fuzzy +msgid "Upgrade Available" +msgstr "frissítés" + +msgid "download" +msgstr "letöltés" + +msgid "modify" +msgstr "módosítás" + +msgid "Upgrade All Plugins" +msgstr "Összes modul frissítése" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +msgid "Upgrade All" +msgstr "Összes frissítése" + +#, c-format +msgid "Download %s" +msgstr "%s letöltése" + +msgid "No packages have been selected." +msgstr "Nincs (még) csomag kiválasztva." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +msgid "Base Packages" +msgstr "Alap csomagok" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +msgid "Language Packages" +msgstr "Nyelvi csomagok" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, c-format +msgid "%s version %s" +msgstr "%s verzió %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s verzió %s (jelenleg telepítve)" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +msgid "Update" +msgstr "Frissítés" + +msgid "Gallery Themes" +msgstr "Galéria Felületek" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "%s felület sikeresen aktiválva" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "%s felület sikeresen deaktiválva" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "%s felület sikeresen telepítve" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "%s felület sikeresen eltávolítva" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "%s felület sikeresen frissítve" + +msgid "Successfully saved default album settings" +msgstr "Alapértelmezett albumbeállítások sikeresen elmentve" + +msgid "Restored theme settings" +msgstr "Felületbeállítások visszaállítva" + +msgid "Defaults" +msgstr "Alapértelmezések" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Ez az albumokhoz tartozó alapértelmezett beállítás. A beállítások albumonként " +"felülbírálhatóak." + +msgid "Default sort order" +msgstr "Alapértelmezett rendezés" + +msgid "with" +msgstr "szélesség" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Új albumok" + +msgid "Save Defaults" +msgstr "Alapértelmezések mentése" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s Felületi Beállítások" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Ezek a galéria felületének alapértelmezett beállításai. A beállítások albumonként " +"felülbírálhatóak." + +msgid "Available" +msgstr "Elérhető" + +msgid "Choose a block" +msgstr "Válassz egy blokkot" + +msgid "Selected" +msgstr "Kiválasztott" + +msgid "Remove" +msgstr "Törlés" + +msgid "Move Up" +msgstr "Mozgatás felfele" + +msgid "Move Down" +msgstr "Mozgatás lefele" + +msgid "Parameter" +msgstr "Paraméter" + +msgid "Value" +msgstr "Érték" + +msgid "There are no settings for this theme" +msgstr "Ennek a felületnek nincsenek beállításai" + +msgid "Save Theme Settings" +msgstr "Beállítások mentése" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "Eszköztár" + +msgid "Order" +msgstr "Sorrend" + +msgid "up" +msgstr "fel" + +msgid "down" +msgstr "le" + +msgid "User Management" +msgstr "Felhasználó menedzsment" + +#, c-format +msgid "Removed user '%s'" +msgstr "'%s' felhasználó törölve" + +#, c-format +msgid "Created user '%s'" +msgstr "'%s' felhasználó létrehozva" + +#, c-format +msgid "Modified user '%s'" +msgstr "'%s' felhasználó modosítva" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "%d felhasználó van a rendszerben" + +msgid "Edit User" +msgstr "Felhasználó szerkesztése" + +msgid "You cannot delete yourself!" +msgstr "Nem törölheted magad!" + +msgid "You cannot delete the special guest user." +msgstr "Nem törölheted ezt a speciális vendégfelhasználót." + +msgid "Edit User (by list)" +msgstr "Felhasználó szerkesztése (lista)" + +msgid "Locked" +msgstr "Zárolt" + +msgid "Failed Logins" +msgstr "Sikertelen bejelentkezések" + +msgid "Thumbnails" +msgstr "Előnézeti képek" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"A Galéria létre tudja hozni az előnézeti képeket most, a feltöltéssel egyidőben, vagy " +"később, amikor először meg szeretnénk tekinteni. Bármelyiket is választjuk, egyszer gyártja " +"le és menti el az előnézeti képeket, de ha most gyártja le, akkor az albumok megnézése első " +"alkalommal gyorsabb lesz. Viszont így most hosszabb lesz a feltöltési idő." + +msgid "Create thumbnails now" +msgstr "Előnézeti képek létrehozása most" + +msgid "This is a test email from Gallery2" +msgstr "Ez egy tesztemail a Gallery2-ből" + +msgid "Edit Conflict!" +msgstr "Szerkesztési konfliktus!" + +msgid "Security Violation" +msgstr "Biztonsági hiba" + +msgid "Database Error" +msgstr "Adatbázis hiba" + +msgid "Platform Error" +msgstr "Rendszerhiba" + +msgid "Authentication Failure" +msgstr "Sikertelen azonosítás" + +msgid "Error" +msgstr "Hiba" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"A kért változtatást nem lehet véghezvinni, mert közben már valaki más is megpróbálta " +"megváltoztatni ezt az elemet. Használd a böngésződben a \"vissza\" gombot, majd töltsed újra " +"az oldalt és próbáld a változtatást újra elküldeni." + +msgid "Go back and try again" +msgstr "Menj vissza és próbáld újra" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Ha ez a probléma ismételten előfordul, lehet, hogy a gyorsítótár tartalma sérült. A " +"rendszeradminisztrátor tudja törölni." + +msgid "Clear the cache" +msgstr "Gyorsítótár törlése" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "Esetleg visszatérhetsz a Galéria főoldalára és folytathatod a böngészést." + +msgid "The action you attempted is not permitted." +msgstr "A kért művelethez nincs jogosultságod." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "Hiba történt az adatbázishoz való kapcsolódás közben." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +#, fuzzy +msgid "An error has occurred while interacting with the platform." +msgstr "Hiba történt az adatbázishoz való kapcsolódás közben." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "Az elem nem található." + +msgid "An error has occurred." +msgstr "Hiba történt." + +msgid "Back to the Gallery" +msgstr "Vissza a Galériába" + +msgid "Error Detail" +msgstr "Hiba részletei" + +msgid "System Information" +msgstr "Rendszerinformáció" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Nincs semmilyen grafikus kezelőeszköz installálva JPEG formátumhoz.Ha képeket ad hozzá, nem " +"fog tudni előnézeti képeket készíteni." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr " Grafikus Eszközkészlet aktiválásához menj a Modulok oldalra." + +msgid "Add Sub-Album" +msgstr "Al-album hozzáadása" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Az album neve a merevlemezen. Egyedinek kell lennie ezen albumon belül. Csak alfanumerikus " +"karaktereket, alsovonást, és vesszőt tartaltamazhat. Később még átnevezheted." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "A megadott név hibás karaktereket tartalmaz. Kérem adjon meg másikat." + +msgid "You must enter a name for this album." +msgstr "Adja meg az album nevét." + +msgid "The name you entered is already in use. Please enter another." +msgstr "A beírt név már használatban van. Kérem adjon meg másikat." + +msgid "This is the album title." +msgstr "Ez az album címe" + +msgid "This is the album summary." +msgstr "Ez az album rövid leírása." + +msgid "Keywords are not visible, but are searchable." +msgstr "Ezek sehol nem jelennek meg, de használatuk megkönnyíti a keresést." + +msgid "This is the long description of the album." +msgstr "Ez az album hosszabb leírása." + +msgid "Create" +msgstr "Létrehozás" + +msgid "Upload Complete" +msgstr "Feltöltés sikeres" + +# c-format +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d fájl sikeresen hozzáadva." + +msgid "No files added." +msgstr "Nem adtam hozzá fájlt." + +#, c-format +msgid "Added %s" +msgstr "%s hozzáadva" + +#, c-format +msgid "Failed to add %s" +msgstr "%s hozzáadása sikertelen" + +msgid "Add more files" +msgstr "További fájlok hozzáadása" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"A webszerver nem engedélyezi a fájlfeltöltéseket a böngésződből. Kérj segítséget a " +"rendszergazdától." + +msgid "Upload files directly from your computer." +msgstr "Fájlok feltöltése közvetlenül a számítógépéről." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Add meg a fájl teljes elérésí útját, és esetleg feliratot az alábbi mezőkbe." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +" Megjegyzés: Egyszerre %sot lehet feltölteni. Ha ennél többet szeretnél,vagy külön-" +"külön töltse fel a fájlokat használj más feltöltési formát, (vagy esetleg kérd meg az " +"admint, hogy engedélyezze a nagyobb felöltéseket)." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +" Megjegyzés: Egyszerre %sot lehet feltölteni. Egyik fájl sem haladhatja meg a %sos " +"méretet. Ha ennél többet szeretnél, vagy külön-külön töltsd fel a fájlokat, vagy használj " +"más feltöltési formát, (esetleg kérd meg az admint, hogy engedélyezze a nagyobb " +"felöltéseket)." + +msgid "More Upload Boxes..." +msgstr "További fájlok feltöltése..." + +msgid "Set item titles from:" +msgstr "Elem címének beállítása innen:" + +msgid "Assign caption to:" +msgstr "Felirat hozzárendelése ehhez: " + +msgid "No Thumbnail" +msgstr "Nincs előnézet" + +msgid "Delete Items" +msgstr "Elemek Törlése" + +msgid "No items were selected for deletion" +msgstr "Nem jelöltél ki elemet törlésre" + +# c-format +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d elem sikeresen törölve" + +msgid "This album contains no items to delete" +msgstr "Ez az album nem tartalmaz törölhető elemeket" + +msgid "Choose the items you want to delete" +msgstr "Válaszd ki a törölni kívánt eleme(ke)t" + +#, c-format +msgid "(page %d of %d)" +msgstr "(oldal: %d/%d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Az itt kiválasztott elemek kiválasztva maradnak az oldalak között történő mozgás során." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "%d elem van kiválasztva más oldalakon." + +msgid "(data)" +msgstr "(adat)" + +# c-format +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(%d elemet tartalmazó album)" + +msgid "(empty album)" +msgstr "(üres album)" + +msgid "Check All" +msgstr "Mindet kijelöl" + +msgid "Check None" +msgstr "Kijelölés megszüntetése" + +msgid "Invert" +msgstr "Megfordítás" + +msgid "Previous Page" +msgstr "Előző oldal" + +msgid "Next Page" +msgstr "Következő oldal" + +msgid "Deletion Complete" +msgstr "Törlés sikeres" + +msgid "Item successfully deleted" +msgstr "Elem sikeresen törölve" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Biztosan törölni szeretnéd ezt az %s?" + +# c-format +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "%d elemet tartalmaz." + +msgid "There is no undo!" +msgstr "Nincs visszaállítási lehetőség!" + +msgid "There was a problem processing your request." +msgstr "Hiba történt a kérés feldolgozása közben." + +msgid "Sort order" +msgstr "Rendezés" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Ezzel állítható az album rendezése. Minden jelenlegi elemre, és a jövőben hozzáadottakra is " +"érvényes lesz." + +msgid "Apply to all subalbums" +msgstr "Minden további albumra vonatkozzon" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Minden elemnek kell előnézet. Állítsd be az alap méretet itt (pixelben)." + +msgid "You must enter a number (greater than zero)" +msgstr "Adj meg egy számot (nagyobbat mint 0)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Ezen előnézeti képméret használata minden belső albumban" + +msgid "Resized Images" +msgstr "Átméretezett képek" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Minden albumbéli elemnek több mérete lehet. Állítsd be itt az alapértelmezett méreteket." + +msgid "Active" +msgstr "Aktív" + +msgid "Target Size (pixels)" +msgstr "Célméret (pixelben)" + +msgid "You must enter a valid size" +msgstr "Adj meg egy helyes méretet" + +msgid "Use these target sizes in all subalbums" +msgstr "Használd ezeket a méreteket minden további albumban" + +msgid "Apply settings to existing items" +msgstr "Beállítás alkalmazása a már meglévő elemekre is" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Az előnézeti és átméretezett képek beállításai minden új elemre vonatkozni fognak. Ahhoz, " +"hogy a beállítások az albumban már meglévő elemekre is hassanak, pipáld ki a megfelelő " +"négyzetet. A belső albumok bejelölése minden egyes belső album saját beállítását alkalmazza " +"a maga előnézeti/átméretezett képeire, mely beállítások eltérhetnek a fentebb megadottaktól. " +"Ha most készülnek el a képek, úgy ez a folyamat tovább tarthat, de a képek megtekintése már " +"az első alkalommal is gyorsabb lesz így." + +msgid "Apply album setting to thumbnails" +msgstr "Album beállításainak alkalmazása az előnézeti képekre" + +msgid "... and for all subalbums" +msgstr "...és ezen belül a további abumokra is" + +#, fuzzy +msgid "Build thumbnails too" +msgstr "Előnézeti·képek·újragyártása" + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "Átméretezett képek újragyártása" + +msgid "Build resizes too" +msgstr "Átméretezett elemek legyártása" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Ahhoz, hogy a galéria helyesen jelenítse meg az animációt, tudnia kell a szélességét és a " +"magasságát. Ha feltetted az animációkat kezelő grafikus eszköztárat, akkor ezek az értékek " +"már lehet, hogy be vannak állítva. Ha nem, lehet, hogy 0-ra vannak állítva. Amennyiben nem " +"állítod be a helyes értékeket itt, előfordulhat, hogy az animáció eltorzulva jelenik meg a " +"webböngészőben. Megjegyezzük, hogy ha megváltoztatsz valamit, akkor az magára az animációra " +"nincs hatással, tehát nyugodtan kísérletezhetsz." + +msgid "Width" +msgstr "Szélesség" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Adj meg egy 0-nál nem kisebb számot." + +msgid "Height" +msgstr "Magasság" + +msgid "There were errors saving some items" +msgstr "Hiba történt néhány elem mentése közben" + +msgid "There were errors saving all items" +msgstr "Hiba történt az összes elem mentése közben" + +msgid "Successfully saved all items" +msgstr "Minden elem sikeresen elmentve" + +msgid "This album contains no items" +msgstr "Ez az album nem tartalmaz elemeket" + +msgid "Saved successfully." +msgstr "Sikeresen elmentve." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "Ezt az elemet valaki más módosította. A Te módosításaid elvesztek." + +msgid "You do not have permissions to modify this item." +msgstr "Nincs jogosultságod ezen elem módosításához." + +msgid "Save and Done" +msgstr "Mentés" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Mentés és az előző %s elem szerkesztése" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Mentés és a következő %s elem szerkesztése" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Az elem neve a merevlemezen. Ebben az albumban egyedinek kell lennie. Csak alfanumerikus " +"karatkert (vagyis számokat és betűket), alsóvonást és vesszőt tartalmazhat." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "A megadott név hibás karaktereket tartalmaz. Kérlek válassz másikat." + +msgid "You must enter a name for this item." +msgstr "Add meg az elem nevét." + +msgid "The name you entered is already in use. Please choose another." +msgstr "A beírt név már használatban van. Kérlek válassz másikat." + +msgid "The title of this item." +msgstr "Ezen elem címe." + +msgid "The root album must have a title." +msgstr "A gyökér albumnak kell cím." + +msgid "The summary of this item." +msgstr "Az elem rövid leírása." + +msgid "This is the long description of the item." +msgstr "Ez az elem hosszabb leírása." + +#, c-format +msgid "%s Date and Time" +msgstr "%s dátum és idő" + +msgid "Set the date and time when this image was captured." +msgstr "Kép létrehozási idejének beállítása." + +msgid "Set the date and time to be displayed for this item." +msgstr "Elem kijelzendő dátumának és idejének beállítása." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Megjelenített dátum és idő beállítása ehhez az elemhez: %s." + +msgid "Date:" +msgstr "Dátum:" + +msgid "Time:" +msgstr "Idő: " + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Az eredeti felvétel készítési idejének használata a fájlinformációkból (pl. Exif adat):" + +msgid "You must enter a valid date and time" +msgstr "Adj meg egy helyes dátumot és időt" + +msgid "Thumbnail" +msgstr "Előnézeti kép" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Előnézeti kép méretének beállítása. Az előnézeti kép legnagyobb oldalának mérete nem lesz " +"nagyobb, mint az itt beállított érték. Hagyd üresen, ha nem szeretnél előnézeti képet " +"használni." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Ennek az elemnek a formátumhoz nincs grafikus kezelőkészlet telepítve, így nem készíthetsz, " +"vagy modosíthatsz előnézeti képeket." + +msgid "Unable to create a thumbnail for this item" +msgstr "Nem sikerült az elemhez tartozó előnézeti kép létrehozáa" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Ahhoz, hogy a galéria helyesen jelenítse meg az filmet, tudnia kell a szélességét és a " +"magasságát. (Amennyiben fel van telepítve az animációt kezelő grafikus eszköztárat, akkor " +"ezek a beállítások már megfelelőek. Ha nem, állíthatod 0-ra.) Amennyiben nem állítod be itt " +"az értékeket, előfordulhat, hogy eltorzulva jelenik meg a webböngészőben. Megjegyezzük, hogy " +"ha itt megváltoztatsz valamit, akkor az magára az animációra nincs hatással, tehát " +"nyugodtan kísérletezhetsz." + +msgid "Resized Photos" +msgstr "Átméretezett fotók" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "Ez a méret az eredeti kép átméretezett verziójának mérete." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Ehhez a formátumhoz nincs grafikus kezelőkészlet telepítve, így nem készíthet, vagy " +"modosíthat atméretezett képeket." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Kiválaszhatod, hogy a kép mely részét használjuk fel az előnézeti kép létrehozásához. Ez " +"semmilyen hatással nem lesz a kép átméretezett és eredeti verziójára." + +msgid "Aspect Ratio: " +msgstr "Méretarány" + +msgid "Crop" +msgstr "Kivágás" + +msgid "Undo Changes" +msgstr "Változtatás visszaállítása" + +msgid "Reset to default" +msgstr "Visszaállítás alapértelmezettre" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Ehhez a formátumhoz nincs grafikus kezelőkészlet telepítve, így nem a képlevágás funkció nem " +"működik." + +msgid "Rotate" +msgstr "Elforgatás" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Csak 90 fokos szögekben fordítható el a fénykép." + +msgid "CC 90°" +msgstr "ÓE·90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "Ó 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Ehhez a formátumhoz nincs grafikus kezelőkészlet telepítve, így nem a képek forgatása " +"funkció nem működik." + +msgid "Scale" +msgstr "Nagyítás/kicsinyítés" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Az eredeti fénykép nagyítása/kicsinyítése. Amikor a Galéria nagyít egy fényképet, megtartja " +"a méretarányt, hogy ne torzuljon a kép. A kép addig lesz nagyítva, amig az belefér egy itt " +"megadható méretű 'dobozba'." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Ehhez a formátumhoz nincs grafikus kezelőkészlet telepítve, így a képek átméretezése nem " +"lehetséges." + +msgid "You must enter a size" +msgstr "Adj meg egy méretet" + +msgid "Preserve Original" +msgstr "Eredeti megtartása" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"A Galéria nem módosítja az eredeti fényképet ha azt nagyítod, vagy forgatod. Ehelyett " +"duplikálja a képet, és a másolattal dolgozik. Ez egy kis extra helyet igényel,viszont megvéd " +"az eredeti kép sérülésétől. Az opció kikapcsolásával a módosítások az eredeti képet fogják " +"érinteni." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Ez egy másik fényképre mutató link, így az eredeti nem módosítható" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Mutatnak linkek erre a fényképre, így az eredeti nem változtatható" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Nincs eszközkészlet ami támogatná az eredeti módosítását, ezért a műveletek esetleg csak a " +"másolatokat érintik" + +msgid "Preserve Original Photo" +msgstr "Eredeti fénykép megtartása" + +msgid "Modified Photo" +msgstr "Módosított fénykép" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Az eredeti fényképnek egy átméretezett vagy elforgatott másolatát használod. Az eredeti kép " +"is rendelkezésedre áll, de azt már nem használjuk. Minden újabb változtatás a másolaton " +"történik." + +msgid "Restore original" +msgstr "Eredeti visszaállítása" + +msgid "Choose a theme" +msgstr "Válassz ki egy felületet" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Felületen (az eredeti szóhasználat szerint témán) az album kinézetét, megjelenítését értjük. " +"Minden egyes albumhoz külön felület rendelhető. Ha nem élsz ezzel a lehetőséggel, akkor az " +"alapértelmezett %s felületet fogjuk használni." + +msgid "Use this theme in all subalbums" +msgstr "Használd ezt a felületet minden további albumban." + +msgid "Choose Theme" +msgstr "Felület kiválasztása" + +#, c-format +msgid "Configure the %s theme" +msgstr "A %s felület beállításai" + +msgid "These settings only apply to the theme for this album." +msgstr "A beállított értékek csak a jelen albumra vonatkoznak." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" +"Használd ezeket a beállításokat minden további albumban, amely a %s felületet használja" + +msgid "Album Highlight" +msgstr "Albumkiemelés" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Ez az elem lehet a közvetlen, vagy bármely más szülőalbum előnézeti képe." + +msgid "Highlight for:" +msgstr "Kiemelés a következőhöz:" + +msgid "Highlight" +msgstr "Kiemelés" + +msgid "Move an Item" +msgstr "Elemek mozgatása másik albumba" + +# c-format +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d elem sikeresen mozgatva" + +msgid "This album contains no items to move." +msgstr "Ez az album nem tartalmaz mozgatható elemeket." + +msgid "Source" +msgstr "Forrás" + +msgid "Choose the items you want to move" +msgstr "Válaszd ki a mozgatni kívánt eleme(ke)t" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"Az itt kiválasztott cél nem fogad el al-albumokat, így minden al-album kijelölését " +"megszüntettem." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Az itt kiválasztott cél csak al-albumokat fogad el, így minden nem albumot kijelöltését " +"megszüntettem." + +msgid "You are not allowed to move this item away from here." +msgstr "Nem mozgathatsz el innen elemet." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Az elem mozgatása nem engedélyezett a kiválaszott helyre." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Nem mozgathatsz elemet a kiválasztott helyre." + +msgid "You cannot move an album into its own subtree." +msgstr "Az albumot nem mozgatod át saját maga alá." + +msgid "Destination" +msgstr "Cél" + +msgid "Choose a new album for them" +msgstr "Új album kiválasztása" + +msgid "You don't have the permission to add items in this album" +msgstr "Nincs jogosultságod elemek hozzáadására az albumba" + +msgid "No destination chosen" +msgstr "Nincs cél kiválasztva" + +msgid "Move" +msgstr "Mozgatás" + +msgid "Successfully moved" +msgstr "Mozgatás sikeres" + +msgid "Choose a destination album" +msgstr "Válassz célalbumot" + +msgid "Permissions" +msgstr "Jogok" + +msgid "Owner changed successfully" +msgstr "Tulaj sikeresen megváltoztatva" + +msgid "Group permission added successfully" +msgstr "Csoportjogosultságok hozzáadása sikeres" + +msgid "User permission added successfully" +msgstr "Felhasználói jogosultságok sikeresen hozzáadva" + +msgid "Group permission removed successfully" +msgstr "Csoportjogosultságok sikeresen eltávolítva" + +msgid "User permission removed successfully" +msgstr "Felhasználói jogosultságok sikeresen eltávolítva" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Minden elemnek saját független jogai vannak. A szülő jogainak megváltoztatása nincs hatással " +"a gyerek jogaira. Így a szülő jogai korlátozhatóak úgy, hogy közben a gyermekre teljes jogot " +"adunk, és fordítva. A leghatékonyabban úgy használhatjuk ezt a jogrendszert, ha létrehozunk " +"csoportokat, és jogokat adunk nekik. Később, ha szeretnénk jogot adni egy felhasználónak, " +"hozzáadhatjuk a kiválasztott csoporthoz." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Az elem tulajdonosa: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Az elem tulajdonosa: %s (%s)" + +msgid "New owner" +msgstr "Új tulajdonos" + +msgid "Change" +msgstr "Változtat" + +msgid "Apply new owner to sub-items" +msgstr "Új tulajdonos alkalmazása a belső elemekre" + +msgid "You must enter a user name" +msgstr "Adj meg egy felhasználónevet" + +msgid "The user name you entered is invalid" +msgstr "A megadott felhasználónév nem megfelelő" + +msgid "Apply changes" +msgstr "Változtatások alkalmazása" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Ennek az albumnak vannak al-elemei. Az itt eszközölt beállítások alkalmazhatóak csak erre az " +"elemre, vagy az összes al-elemre is. Ha az összes al-elemre érvényesíted a beállításokat, " +"akkor azok jogosultsági beállításait is módosítod, és ez az al-elemek számától függően " +"nagyon időigényes lehet. Sokkal hatékonyabb csoportok számára jogosultságokat adni és a " +"csoporthoz hozzáadni vagy abból kivenni felhasználókat, amikor ez csak lehetséges. A " +"változások alapértelmezésben az al-elemekre is vonatkoznak." + +msgid "Apply to sub-items" +msgstr "Alkalmazás alelemekre" + +msgid "Group Permissions" +msgstr "Csoportjogok" + +msgid "Group name" +msgstr "Csoportnév" + +msgid "Permission" +msgstr "Jog" + +msgid "New Group Permission" +msgstr "Új csoport jog" + +msgid "Add Permission" +msgstr "Jogok hozzáadása" + +msgid "The permission you chose is invalid" +msgstr "A választott jog nem megfelelő" + +msgid "The group name you entered is invalid" +msgstr "A beírt csoportnév nem megfelelő" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Ennek a csoportnak már van ilyen joga (ellenőrizze az aljogokat)" + +msgid "User Permissions" +msgstr "Felhasználói jogok" + +msgid "User name" +msgstr "Felhasználónév" + +msgid "New User Permission" +msgstr "Új felhasználói jog" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "A felhasználónak már van ilyen joga (ellenőrizze az aljogokat)" + +msgid "Reorder Album" +msgstr "Album elemeinek átrendezése" + +msgid "Order saved successfully" +msgstr "Sorrend sikeresen elmentve" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Ez az album automatikus rendezésre van állítva. Ha mégis szeretné kézzel rendezni, akkor " +"előbb kapcsolja ki az automatikus rendezést." + +msgid "change" +msgstr "változtatás" + +msgid "Change the order of the items in this album." +msgstr "Elemek elrendezésének megváltoztatása az albumon belül." + +msgid "Move this item" +msgstr "Ezen elem mozgatása" + +msgid "before" +msgstr "ez elé:" + +msgid "after" +msgstr "ez után:" + +msgid "Reorder" +msgstr "Újrarendezés" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"Ehhez a JavaScript használatát engedélyezned kell. Úgy tűnik, ez vagy tiltva van nálad, vagy " +"a böngésződ nem támogatja a használatát. Engedélyezd a JavaScript-et a böngésződ beállításai " +"között, majd próbáld meg újra." + +msgid "Site is temporarily down for maintenance." +msgstr "Az oldal karbantartás miatt pillanatnyilag nem elérhető." + +msgid "Admin Login" +msgstr "Adminisztrátori bejelentkezés" + +msgid "Enter a URL" +msgstr "Adj meg egy URL-t" + +msgid "Enter some text describing the URL" +msgstr "Add meg az URL leírását" + +msgid "Enter an image URL" +msgstr "Adj meg egy kép URL-t" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lista" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "kép" + +msgid "color" +msgstr "szín" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "Beállítási Hiba: Hiányzó Felület" + +msgid "Missing Theme" +msgstr "Hiányzó Felület" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Ez az oldal a(z) %s felület használatára van beállítva, de az vagy inaktív, vagy nincs " +"telepítve, vagy inkompatibilis." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Ez az album a(z) %s felület használatára van beállítva, de az vagy inaktív, vagy nincs " +"telepítve, vagy inkompatibilis." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"A hiba kijavításához %stelepítheted vagy aktiválhatod ezt a felületet%s vagy válaszhatsz " +"másik alapértelmezettet." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"A hiba kijavításához %sbe kell jelentkezned adminisztrátorként%s, majd %stelepítened vagy " +"aktiválnod kell ezt a felületet%s vagy választanod másik alapértelmezettet." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"A hiba kijavításához %sválaszhatsz egy új felületet ehhez az albumhoz%s vagy %stelepítheted " +"vagy aktiválhatod ezt a felületet%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"A hiba kijavításához %sválaszthatsz egy új felületet az albumhoz%s, vagy %sbejelentkezhetsz " +"rendszergazdaként%s és %steleplítheted vagy aktiválhatod ezt a felületet%s" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"A hiba kijavításához %sbejelentkezhetsz%s és %sválaszthatsz egy új felületet az albumhoz%s " +"vagy %sbejelentkezhetsz az oldal renszergazdájaként%s és %stelepítheted vagy aktiválhatod " +"ezt a felületet%s." + +msgid "Admin Options" +msgstr "Adminisztrátori opciók" + +msgid "User Options" +msgstr "Felhasználói beállítások" + +msgid "Password changed successfully" +msgstr "Jelszó sikeresen megváltoztatva" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Add meg a jelenlegi jelszavad, hogy azonosíthassunk, majd írd be kétszer az új jelszót." + +msgid "Current Password" +msgstr "Jelenlegi jelszó" + +msgid "You must enter your current password" +msgstr "Add meg a jelenlegi jelszavad" + +msgid "Incorrect password" +msgstr "Hibás jelszó" + +msgid "New Password" +msgstr "Új jelszó" + +msgid "You must enter a new password" +msgstr "Adj meg egy új jelszót" + +msgid "Verify New Password" +msgstr "Új jelszó ellenőrzése" + +msgid "You must enter your new password again!" +msgstr "Add meg az új jelszavad mégegyszer!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "Bejelentkezés a Galériába" + +msgid "Your password has been recovered, please login." +msgstr "Jelszavad pótoltuk, lépj be." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "Hibás bejelentkezési adatok. Próbáld meg újra." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "Elvesztett vagy elfelejtett jelszavak pótlásához kattints ide!" + +#, c-format +msgid "Welcome, %s!" +msgstr "Üdv %s!" + +msgid "Account settings saved successfully" +msgstr "Felhasználói beállítások sikeresen elmentve" + +msgid "(required, password required for change)" +msgstr "(kötelező, jelszó szükséges a változtatáshoz)" + +msgid "(suggested, password required for change)" +msgstr "(használata javasolt, jelszó szükséges a megváltoztatásához)" + +msgid "(required to change the e-mail address)" +msgstr "(megadása kötelező az email cím megváltoztatásához)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Add meg a jelenlegi jelszavadat az email cím megváltoztatásához" + +msgid "Recover a lost or forgotten password" +msgstr "Elvesztett vagy elfelejtett jelszó pótlása" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Jelszavad pótlásához szükséges, hogy egy emailcím legyen rendelve a felhasználói fiókodhoz " +"és hogy hozzáférj ehhez a címhez. Egy igazolást küldünk emailben, mely tartalmaz egy " +"webcímet, amit meg kell látogatnod az új jelszó beállításához. A kéretlen leveleket " +"megelőzendő, jelszópotlás csak húszpercenként egyszer kérhető. A pótlási igazolás 7 napig " +"érvényes. Amennyiben nem használják ezen idő alatt, törlődik a rendszerből és új igazolást " +"kell kérni." + +msgid "Your recovery request has been sent!" +msgstr "A pótlási kérelmed elküldésre került!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Megjegyezzük, hogy ha a felhasználói fiókhoz nincs érvényes e-mailcím rendelve, akkor " +"előfordulhat, hogy nem kapod meg a levelet és így a rendszergazdához kell segítségért " +"fordulnod." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +msgid "Recover" +msgstr "Pótlás" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Hogy megkönnyítsük a dolgod előkészítettünk egy %smegfelelő login.txt fájlt%s a számodra. " +"Töltsd le, másold be az install könyvtáradba és készen vagy." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Ha feltöltötted a fájlt, kattints a frissítésre a folytatáshoz." + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Ezen az oldalon keresztül egy rendszergazda biztonságosan állíthat be új jelszót, bármely " +"fiókhoz." + +msgid "Authorization Confirmed" +msgstr "Azonosítás Megtörtént" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Azonosításod megtörtént. Kérlek írd be az általad kiválaszott új jelszót! A jelszó " +"beállítása után átirányítunk a bejelentkezési oldalra." + +msgid "Recover Password for Username" +msgstr "Felhasználónévhez Tartozó Jelszó Pótlása" + +msgid "You must enter a username to recover the password for." +msgstr "A jelszó pótlásához meg kell adnod a hozzátartozó felhasználónevet." + +msgid "The username you entered does not exist." +msgstr "A megadott felhasználónév nem létezik." + +msgid "Authorization Incorrect" +msgstr "Azonosítás sikertelen" + +msgid "Recovery Instructions" +msgstr "Pótlási Útmutató" + +msgid "AuthFile Missing" +msgstr "Az AzonosítóFájl Hiányzik" + +msgid "AuthFile Unreadable" +msgstr "Az AzonosítóFájl Nem Olvasható" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "A %s fájlod nem olvasható. Adj olvasási jogot a Gallery-nek a fájlhoz." + +msgid "Refresh" +msgstr "Frissítés" + +msgid "This page will allow you to reset the password on your account." +msgstr "" +"Ezen az oldalon keresztül pótolhatod a felhasználónevedhez tartozó elfelejtett jelszót." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Nincs olyan kérés ami megegyezne a megadott felhasználónévvel és azonosítóval. Kérj egy új " +"azonosítást az elfelejtett jelszó oldalról" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"A kérés melyre hivatkoztál lejárt. Kérj egy új azonosítást az elfelejtett " +"jelszó oldalról." + +msgid "Authorization missing" +msgstr "Azonosítás hiánya" + +msgid "Username missing" +msgstr "Felhasználónév hiányzik" + +msgid "Submit" +msgstr "Küldés" + +#, c-format +msgid "Hello %s," +msgstr "Hello %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Azért kapod ezt az emailt, mert %s weboldalhoz a jelszó pótlását kérte %s. Kérés időpontja: %" +"s" + +#, c-format +msgid "Your username is: %s" +msgstr "A felhasználóneved: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"A jelszópótlási folyamat befejezéséhez kérlek kattins a következő linkre, majd add meg a " +"kért adatokat:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Amennyiben nem Te kérted a jelszó pótlását, hagyd figyelmen kívül e levelet." + +msgid "Thank you!" +msgstr "Köszönjük!" + +msgid "guest" +msgstr "vendég" + +#, c-format +msgid "display mode: %s" +msgstr "megjelenítési mód: %s" + +#, c-format +msgid "Date: %s" +msgstr "Dátum: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Tulajdonos: %s" + +# c-format +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Méret: %d elem" + +# c-format +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d elem összesen)" + +#, c-format +msgid "Views: %d" +msgstr "Megtekintve: %dX" + +msgid "« album actions »" +msgstr "« Albumműveletek »" + +msgid "« item actions »" +msgstr "« Elemműveletek »" + +msgid "Go" +msgstr "Mehet" + +msgid "Navigation" +msgstr "Navigáció" + +msgid "next" +msgstr "következő" + +msgid "last" +msgstr "utolsó" + +#, c-format +msgid "Page %d of %d" +msgstr "Oldal: %d/%d" + +#, c-format +msgid "%d of %d" +msgstr "%d/%d" + +msgid "first" +msgstr "első" + +msgid "previous" +msgstr "előző" + +msgid "Page:" +msgstr "Oldal:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Méret:" + +msgid "Unknown" +msgstr "Ismeretlen" + +msgid "Full size: " +msgstr "Teljes méret:" + +msgid "Setting" +msgstr "Beállítás" + +msgid "Use Global" +msgstr "Globális alkalmazás" + +msgid "Language selector" +msgstr "Nyelvválasztó" + +msgid "Item actions" +msgstr "Elemműveletek" + +msgid "Use dropdown menu" +msgstr "Használd a legördülő menüt" + +msgid "Login block" +msgstr "Bejelentkezési blokk" + +msgid "Links to album/photo peers" +msgstr "Linkek az albumok/fotók oldalaira" diff --git a/Source/gallery2/modules/core/po/is.po b/Source/gallery2/modules/core/po/is.po new file mode 100644 index 0000000..ea0a836 --- /dev/null +++ b/Source/gallery2/modules/core/po/is.po @@ -0,0 +1,3390 @@ +# $Id: is.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2005-04-01 17:00+0200\n" +"Last-Translator: Johann S Jonsson \n" +"Language-Team: Icelandic \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +msgid "Gallery Email Test" +msgstr "" + +msgid "forever" +msgstr "" + +msgid "High Priority (Me first!)" +msgstr "" + +msgid "Low Priority (I want to share!)" +msgstr "" + +msgid "No Markup" +msgstr "" + +msgid "BBCode" +msgstr "" + +msgid "Raw HTML" +msgstr "" + +msgid "Database" +msgstr "" + +msgid "File" +msgstr "" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "" +msgstr[1] "" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "" + +msgid "Partial acceleration" +msgstr "" + +msgid "Full acceleration" +msgstr "" + +msgid "Themes" +msgstr "" + +msgid "Updating Repository Index" +msgstr "" + +msgid "Scanning plugins" +msgstr "" + +msgid "Update Plugin List" +msgstr "" + +msgid "Done." +msgstr "" + +msgid "Updating Packages" +msgstr "" + +#, c-format +msgid "Preparing %s" +msgstr "" + +#, c-format +msgid "Downloading %s" +msgstr "" + +#, c-format +msgid "Activating %s" +msgstr "" + +msgid "Deleting Language Packs" +msgstr "" + +msgid "Update completed with errors." +msgstr "" + +msgid "Update complete." +msgstr "" + +msgid "install" +msgstr "" + +msgid "upgrade" +msgstr "" + +msgid "activate" +msgstr "" + +msgid "uninstall" +msgstr "" + +msgid "deactivate" +msgstr "" + +msgid "Inherit settings from parent album" +msgstr "" + +msgid "Use these settings" +msgstr "" + +msgid "Installing the core module" +msgstr "" + +msgid "key" +msgstr "" + +msgid "All access" +msgstr "" + +msgid "[core] View item" +msgstr "" + +msgid "[core] View resized version(s)" +msgstr "" + +msgid "[core] View original version" +msgstr "" + +msgid "[core] View all versions" +msgstr "" + +msgid "[core] Add sub-album" +msgstr "" + +msgid "[core] Add sub-item" +msgstr "" + +msgid "[core] Edit item" +msgstr "" + +msgid "[core] Change item permissions" +msgstr "" + +msgid "[core] Delete item" +msgstr "" + +msgid "Upgrading permissions" +msgstr "" + +msgid "Deleting old permission tables" +msgstr "" + +msgid "Registered Users" +msgstr "" + +msgid "All Users" +msgstr "" + +msgid "Detecting broken derivatives" +msgstr "" + +msgid "Clearing fast-download cache" +msgstr "" + +msgid "Deleting old fast-download cache" +msgstr "" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "" + +msgid "Everybody" +msgstr "" + +msgid "Guest" +msgstr "" + +msgid "Gallery" +msgstr "" + +msgid "This is the main page of your Gallery" +msgstr "" + +msgid "Converting MySQL data to UTF8" +msgstr "" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "" + +msgid "add items" +msgstr "" + +msgid "Album created successfully." +msgstr "" + +msgid "add sub-album" +msgstr "" + +msgid "add items confirmation" +msgstr "" + +msgid "Base filename" +msgstr "" + +msgid "Caption" +msgstr "" + +msgid "Blank" +msgstr "" + +msgid "From Web Browser" +msgstr "" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "" + +msgid "delete an item" +msgstr "" + +msgid "delete confirmation" +msgstr "" + +#, c-format +msgid "delete %s" +msgstr "" + +#, c-format +msgid "edit %s" +msgstr "" + +msgid "Settings saved successfully." +msgstr "" + +msgid "Apply resized image settings" +msgstr "" + +msgid "Preparing..." +msgstr "" + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "" + +msgid "Album" +msgstr "" + +#, c-format +msgid "Processing image %d of %d" +msgstr "" + +msgid "Changes saved successfully" +msgstr "" + +msgid "Animation Size" +msgstr "" + +msgid "edit captions" +msgstr "" + +msgid "General" +msgstr "" + +msgid "Movie Size" +msgstr "" + +msgid "Photo" +msgstr "" + +msgid "Thumbnail cropped successfully" +msgstr "" + +msgid "Thumbnail reset successfully" +msgstr "" + +msgid "Photo 5x3" +msgstr "" + +msgid "Photo 6x4" +msgstr "" + +msgid "Photo 7x5" +msgstr "" + +msgid "Photo 10x8" +msgstr "" + +msgid "Fullscreen 4x3" +msgstr "" + +msgid "Widescreen 16x9" +msgstr "" + +msgid "CinemaScope 2.35x1" +msgstr "" + +msgid "Square 1x1" +msgstr "" + +msgid "As Image" +msgstr "" + +msgid "Landscape" +msgstr "" + +msgid "Portrait" +msgstr "" + +msgid "Crop Thumbnail" +msgstr "" + +msgid "Reverted rotate and scale changes successfully" +msgstr "" + +msgid "Rotated photo successfully" +msgstr "" + +msgid "Scaled photo successfully" +msgstr "" + +msgid "Modify Photo" +msgstr "" + +msgid "Successfully changed theme" +msgstr "" + +msgid "« default theme »" +msgstr "" + +msgid "Theme" +msgstr "" + +msgid "make highlight" +msgstr "" + +msgid "move item" +msgstr "" + +#, c-format +msgid "move %s" +msgstr "" + +#, c-format +msgid "edit %s permissions" +msgstr "" + +msgid "reorder items" +msgstr "" + +msgid "Maintenance" +msgstr "" + +msgid "Gallery Site Administration" +msgstr "" + +msgid "site admin" +msgstr "" + +msgid "Gallery User Administration" +msgstr "" + +msgid "change password" +msgstr "" + +msgid "your account" +msgstr "" + +msgid "Password Recovery" +msgstr "" + +msgid "Core" +msgstr "" + +msgid "Gallery 2 Core Module" +msgstr "" + +msgid "Add Items" +msgstr "" + +msgid "Edit Album" +msgstr "" + +msgid "Edit Photo" +msgstr "" + +msgid "Edit Movie" +msgstr "" + +msgid "Add Album" +msgstr "" + +msgid "Edit Permissions" +msgstr "" + +msgid "View Permissions" +msgstr "" + +msgid "Delete Album" +msgstr "" + +msgid "Delete Photo" +msgstr "" + +msgid "Delete Movie" +msgstr "" + +msgid "Move Album" +msgstr "" + +msgid "Move Photo" +msgstr "" + +msgid "Move Movie" +msgstr "" + +msgid "Edit Captions" +msgstr "" + +msgid "Make Highlight" +msgstr "" + +msgid "Reorder Items" +msgstr "" + +msgid "Site Admin" +msgstr "" + +msgid "Login" +msgstr "" + +msgid "Your Account" +msgstr "" + +msgid "Logout" +msgstr "" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "" + +msgid "Groups" +msgstr "" + +msgid "Performance" +msgstr "" + +msgid "Toolkit Priority" +msgstr "" + +msgid "Graphics Toolkits" +msgstr "" + +msgid "Account Settings" +msgstr "" + +msgid "Change Password" +msgstr "" + +#, c-format +msgid "Edit %s" +msgstr "" + +#, c-format +msgid "Delete %s" +msgstr "" + +#, c-format +msgid "Move %s" +msgstr "" + +msgid "Build all thumbnails/resizes" +msgstr "" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" + +msgid "Build All Thumbnails/Resizes" +msgstr "" + +msgid "Debug output for failed items:" +msgstr "" + +#, c-format +msgid "Checked %d items" +msgstr "" + +#, c-format +msgid "%d items built" +msgstr "" + +#, c-format +msgid "%d items failed" +msgstr "" + +msgid "Convert MySQL database to UTF8" +msgstr "" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +msgid "Database successfully converted to UTF8" +msgstr "" + +msgid "No conversion required" +msgstr "" + +msgid "Delete user sessions" +msgstr "" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" + +#, c-format +msgid "Deleted %d sessions." +msgstr "" + +msgid "Delete database cache" +msgstr "" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "" + +msgid "Delete template cache" +msgstr "" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" + +msgid "Template cache deleted successfully" +msgstr "" + +msgid "album" +msgstr "" + +msgid "Animation" +msgstr "" + +msgid "animation" +msgstr "" + +msgid "Gallery Core" +msgstr "" + +msgid "Gallery Core Module" +msgstr "" + +msgid "Search descriptions" +msgstr "" + +msgid "Search keywords" +msgstr "" + +msgid "Search summaries" +msgstr "" + +msgid "Search titles" +msgstr "" + +msgid "Description" +msgstr "" + +msgid "Keywords" +msgstr "" + +msgid "Summary" +msgstr "" + +msgid "Title" +msgstr "" + +msgid "Owner" +msgstr "" + +msgid "Dynamic Album" +msgstr "" + +msgid "dynamic album" +msgstr "" + +msgid "Group" +msgstr "" + +msgid "group" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Movie" +msgstr "" + +msgid "movie" +msgstr "" + +msgid "photo" +msgstr "" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +msgid "Experimental Repository" +msgstr "" + +msgid "Community Repository" +msgstr "" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "" + +msgid "Index integrity check failed." +msgstr "" + +msgid "« default sort order »" +msgstr "" + +msgid "Manual sort order" +msgstr "" + +msgid "Origination Date" +msgstr "" + +msgid "Creation Date" +msgstr "" + +msgid "Last Changed Date" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "View Count" +msgstr "" + +msgid "Random" +msgstr "" + +msgid "« no presort »" +msgstr "" + +msgid "Albums First" +msgstr "" + +msgid "Most Viewed First" +msgstr "" + +msgid "Ascending" +msgstr "" + +msgid "Descending" +msgstr "" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +msgid "This page is valid XHTML 1.0" +msgstr "" + +msgid "Donate to the Gallery project" +msgstr "" + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "" + +msgid "Rows per album page" +msgstr "" + +msgid "Columns per album page" +msgstr "" + +msgid "Number of items to show per page" +msgstr "" + +msgid "Row height (pixels)" +msgstr "" + +msgid "Column width (pixels)" +msgstr "" + +msgid "Show image owners" +msgstr "" + +msgid "Show album owners" +msgstr "" + +msgid "Show micro navigation thumbnails" +msgstr "" + +msgid "Blocks to show in the sidebar" +msgstr "" + +msgid "Blocks to show on album pages" +msgstr "" + +msgid "Blocks to show on photo pages" +msgstr "" + +msgid "Thumbnail links in dynamic albums" +msgstr "" + +msgid "Browse dynamic album" +msgstr "" + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "" + +msgid "Album Frame" +msgstr "" + +msgid "Item Frame" +msgstr "" + +msgid "Photo Frame" +msgstr "" + +msgid "Color Pack" +msgstr "" + +msgid "You must enter a number greater than 0" +msgstr "" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "" + +msgid "Audio" +msgstr "" + +msgid "audio" +msgstr "" + +msgid "Archive" +msgstr "" + +msgid "archive" +msgstr "" + +msgid "Document" +msgstr "" + +msgid "document" +msgstr "" + +msgid "Spreadsheet" +msgstr "" + +msgid "spreadsheet" +msgstr "" + +msgid "file" +msgstr "" + +msgid "Back" +msgstr "" + +#, c-format +msgid "Back to %s" +msgstr "" + +msgid "User" +msgstr "" + +msgid "user" +msgstr "" + +msgid "Optimize database" +msgstr "" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" + +msgid "Database optimized successfully" +msgstr "" + +msgid "Reset view counts" +msgstr "" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" + +msgid "View counts reset successfully" +msgstr "" + +msgid "Refresh capture dates" +msgstr "" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" + +msgid "Processing..." +msgstr "" + +msgid "Refresh Capture Dates" +msgstr "" + +#, c-format +msgid "Processing item %d of %d" +msgstr "" + +#, c-format +msgid "Updated %d of %d items" +msgstr "" + +msgid "System information" +msgstr "" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" + +msgid "core" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "Gallery version" +msgstr "" + +msgid "PHP version" +msgstr "" + +msgid "Webserver" +msgstr "" + +msgid "Toolkits" +msgstr "" + +msgid "Acceleration" +msgstr "" + +msgid "Operating system" +msgstr "" + +msgid "Default theme" +msgstr "" + +msgid "gettext" +msgstr "" + +msgid "enabled" +msgstr "" + +msgid "disabled" +msgstr "" + +msgid "Locale" +msgstr "" + +msgid "Browser" +msgstr "" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "Settings saved successfully" +msgstr "" + +msgid "Added local upload directory successfully" +msgstr "" + +msgid "Removed local upload directory successfully" +msgstr "" + +msgid "Test email sent successfully" +msgstr "" + +msgid "There was a problem processing your request, see below for details." +msgstr "" + +msgid "Error sending test email, see below for details." +msgstr "" + +msgid "Language Settings" +msgstr "" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" + +msgid "Default language" +msgstr "" + +msgid "Check Browser Preference" +msgstr "" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" + +msgid "Date Formats" +msgstr "" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" + +msgid "Style" +msgstr "" + +msgid "Format" +msgstr "" + +msgid "Sample" +msgstr "" + +msgid "Date" +msgstr "" + +msgid "Time" +msgstr "" + +msgid "Date/Time" +msgstr "" + +msgid "Filesystem Permissions" +msgstr "" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" + +msgid "New directories" +msgstr "" + +msgid "New files" +msgstr "" + +msgid "Session Settings" +msgstr "" + +msgid "Session Lifetime" +msgstr "" + +msgid "Inactivity Timeout" +msgstr "" + +msgid "Embedded Markup" +msgstr "" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" + +msgid "Markup" +msgstr "" + +msgid "Email" +msgstr "" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" + +msgid "Server" +msgstr "" + +msgid "Username" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "SMTP From Address" +msgstr "" + +msgid "Invalid email address" +msgstr "" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" + +msgid "Send Email" +msgstr "" + +msgid "Email Test Error" +msgstr "" + +msgid "Cookies" +msgstr "" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "" + +msgid "Invalid cookie path" +msgstr "" + +msgid "Domain" +msgstr "" + +msgid "Invalid cookie domain" +msgstr "" + +msgid "Locking System" +msgstr "" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" + +msgid "Lock system" +msgstr "" + +msgid "Helper Processes" +msgstr "" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" + +msgid "Priority" +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Create A New Group" +msgstr "" + +msgid "Group Name" +msgstr "" + +msgid "(required)" +msgstr "" + +msgid "You must enter a group name" +msgstr "" + +#, c-format +msgid "Group '%s' already exists" +msgstr "" + +msgid "Create Group" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Create A New User" +msgstr "" + +msgid "You must enter a username" +msgstr "" + +#, c-format +msgid "Username '%s' already exists" +msgstr "" + +msgid "Full Name" +msgstr "" + +msgid "Email Address" +msgstr "" + +msgid "You must enter an email address" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "You must enter a password" +msgstr "" + +msgid "Verify Password" +msgstr "" + +msgid "You must enter the password a second time" +msgstr "" + +msgid "The passwords you entered did not match" +msgstr "" + +msgid "Create User" +msgstr "" + +msgid "Delete A Group" +msgstr "" + +msgid "Are you sure?" +msgstr "" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Delete a User" +msgstr "" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "" + +#, c-format +msgid "Delete user %s and..." +msgstr "" + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" + +msgid "Edit a group" +msgstr "" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "" +msgstr[1] "" + +msgid "Members" +msgstr "" + +msgid "« first" +msgstr "" + +msgid "« back" +msgstr "" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "" + +msgid "next »" +msgstr "" + +msgid "last »" +msgstr "" + +msgid "Filter" +msgstr "" + +msgid "Clear" +msgstr "" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "" +msgstr[1] "" + +msgid "Remove selected" +msgstr "" + +msgid "You must select a user to remove." +msgstr "" + +msgid "You can't remove yourself from this group." +msgstr "" + +msgid "Add Member" +msgstr "" + +msgid "Add" +msgstr "" + +msgid "You must enter a username." +msgstr "" + +#, c-format +msgid "User '%s' does not exist." +msgstr "" + +msgid "This user already is in this group." +msgstr "" + +msgid "Done" +msgstr "" + +msgid "Edit a user" +msgstr "" + +msgid "That username is already in use" +msgstr "" + +msgid "You must enter a new username" +msgstr "" + +msgid "E-mail Address" +msgstr "" + +msgid "(suggested)" +msgstr "" + +msgid "Options" +msgstr "" + +msgid "Lock user." +msgstr "" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +msgid "Reset failed login count." +msgstr "" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" +msgstr[1] "" + +msgid "Group Management" +msgstr "" + +#, c-format +msgid "Removed group '%s'" +msgstr "" + +#, c-format +msgid "Created group '%s'" +msgstr "" + +#, c-format +msgid "Modified group '%s'" +msgstr "" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "" +msgstr[1] "" + +msgid "Edit Group" +msgstr "" + +msgid "Edit" +msgstr "" + +msgid "Add/Remove Users" +msgstr "" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "" + +msgid "You cannot delete that group" +msgstr "" + +msgid "You cannot edit that group's users" +msgstr "" + +msgid "Edit Group (by list)" +msgstr "" + +msgid "Action" +msgstr "" + +msgid "edit" +msgstr "" + +msgid "delete" +msgstr "" + +msgid "members" +msgstr "" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "" +msgstr[1] "" + +msgid "System Maintenance" +msgstr "" + +#, c-format +msgid "Completed %s task successfully." +msgstr "" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "" + +msgid "Task name" +msgstr "" + +msgid "Last run" +msgstr "" + +msgid "Success/Fail" +msgstr "" + +msgid "Not run yet" +msgstr "" + +msgid "Success" +msgstr "" + +msgid "Failed" +msgstr "" + +msgid "run now" +msgstr "" + +msgid "Last Run Details:" +msgstr "" + +msgid "Performance Tuning" +msgstr "" + +msgid "Updated performance settings successfully" +msgstr "" + +msgid "Deleted all saved pages" +msgstr "" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +msgid "Medium acceleration" +msgstr "" + +msgid "High acceleration" +msgstr "" + +msgid "Guest Users" +msgstr "" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "" + +msgid "__PLUGIN__ deactivated" +msgstr "" + +msgid "Status: Active" +msgstr "" + +msgid "__PLUGIN__ activated" +msgstr "" + +msgid "Status: Not Installed" +msgstr "" + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +msgid "__PLUGIN__ deleted" +msgstr "" + +msgid "Warning!" +msgstr "" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +msgid "up to date(__COUNT__)" +msgstr "" + +msgid "not installed(__COUNT__)" +msgstr "" + +msgid "upgrade required(__COUNT__)" +msgstr "" + +msgid "incompatible(__COUNT__)" +msgstr "" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +msgid "Gallery Plugins" +msgstr "" + +msgid "Get More Plugins" +msgstr "" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" + +msgid "Plugin Name" +msgstr "" + +msgid "Installed" +msgstr "" + +msgid "Version" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "" + +msgid "configure" +msgstr "" + +msgid "up to date" +msgstr "" + +msgid "upgrade required" +msgstr "" + +msgid "not installed" +msgstr "" + +msgid "incompatible" +msgstr "" + +msgid "Repository" +msgstr "" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +msgid "Repository Error" +msgstr "" + +msgid "You must select at least one repository." +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +msgid "Continue" +msgstr "" + +msgid "Download Plugin List" +msgstr "" + +msgid "Show Repository List" +msgstr "" + +msgid "Upgrade Gallery" +msgstr "" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" + +msgid "upgrade available" +msgstr "" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "" + +msgid "Module Name" +msgstr "" + +msgid "Latest" +msgstr "" + +msgid "Locked Plugin" +msgstr "" + +msgid "Incompatible Plugin" +msgstr "" + +msgid "Upgrade Available" +msgstr "" + +msgid "download" +msgstr "" + +msgid "modify" +msgstr "" + +msgid "Upgrade All Plugins" +msgstr "" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" + +msgid "Upgrade All" +msgstr "" + +#, c-format +msgid "Download %s" +msgstr "" + +msgid "No packages have been selected." +msgstr "" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +msgid "Base Packages" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +msgid "Language Packages" +msgstr "" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, c-format +msgid "%s version %s" +msgstr "" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +msgid "Update" +msgstr "" + +msgid "Gallery Themes" +msgstr "" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "" + +msgid "Successfully saved default album settings" +msgstr "" + +msgid "Restored theme settings" +msgstr "" + +msgid "Defaults" +msgstr "" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" + +msgid "Default sort order" +msgstr "" + +msgid "with" +msgstr "" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "" + +msgid "Save Defaults" +msgstr "" + +#, c-format +msgid "%s Theme Settings" +msgstr "" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" + +msgid "Available" +msgstr "" + +msgid "Choose a block" +msgstr "" + +msgid "Selected" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Move Up" +msgstr "" + +msgid "Move Down" +msgstr "" + +msgid "Parameter" +msgstr "" + +msgid "Value" +msgstr "" + +msgid "There are no settings for this theme" +msgstr "" + +msgid "Save Theme Settings" +msgstr "" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "" + +msgid "Order" +msgstr "" + +msgid "up" +msgstr "" + +msgid "down" +msgstr "" + +msgid "User Management" +msgstr "" + +#, c-format +msgid "Removed user '%s'" +msgstr "" + +#, c-format +msgid "Created user '%s'" +msgstr "" + +#, c-format +msgid "Modified user '%s'" +msgstr "" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "" +msgstr[1] "" + +msgid "Edit User" +msgstr "" + +msgid "You cannot delete yourself!" +msgstr "" + +msgid "You cannot delete the special guest user." +msgstr "" + +msgid "Edit User (by list)" +msgstr "" + +msgid "Locked" +msgstr "" + +msgid "Failed Logins" +msgstr "" + +msgid "Thumbnails" +msgstr "" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" + +msgid "Create thumbnails now" +msgstr "" + +msgid "This is a test email from Gallery2" +msgstr "" + +msgid "Edit Conflict!" +msgstr "" + +msgid "Security Violation" +msgstr "" + +msgid "Database Error" +msgstr "" + +msgid "Platform Error" +msgstr "" + +msgid "Authentication Failure" +msgstr "" + +msgid "Error" +msgstr "" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" + +msgid "Go back and try again" +msgstr "" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +msgid "Clear the cache" +msgstr "" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" + +msgid "The action you attempted is not permitted." +msgstr "" + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "" + +msgid "Back to the Gallery" +msgstr "" + +msgid "Error Detail" +msgstr "" + +msgid "System Information" +msgstr "" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" + +msgid "Add Sub-Album" +msgstr "" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" + +msgid "Your name contains invalid characters. Please enter another." +msgstr "" + +msgid "You must enter a name for this album." +msgstr "" + +msgid "The name you entered is already in use. Please enter another." +msgstr "" + +msgid "This is the album title." +msgstr "" + +msgid "This is the album summary." +msgstr "" + +msgid "Keywords are not visible, but are searchable." +msgstr "" + +msgid "This is the long description of the album." +msgstr "" + +msgid "Create" +msgstr "" + +msgid "Upload Complete" +msgstr "" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "" +msgstr[1] "" + +msgid "No files added." +msgstr "" + +#, c-format +msgid "Added %s" +msgstr "" + +#, c-format +msgid "Failed to add %s" +msgstr "" + +msgid "Add more files" +msgstr "" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" + +msgid "Upload files directly from your computer." +msgstr "" + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "" + +msgid "Assign caption to:" +msgstr "" + +msgid "No Thumbnail" +msgstr "" + +msgid "Delete Items" +msgstr "" + +msgid "No items were selected for deletion" +msgstr "" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to delete" +msgstr "" + +msgid "Choose the items you want to delete" +msgstr "" + +#, c-format +msgid "(page %d of %d)" +msgstr "" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "" +msgstr[1] "" + +msgid "(empty album)" +msgstr "" + +msgid "Check All" +msgstr "" + +msgid "Check None" +msgstr "" + +msgid "Invert" +msgstr "" + +msgid "Previous Page" +msgstr "" + +msgid "Next Page" +msgstr "" + +msgid "Deletion Complete" +msgstr "" + +msgid "Item successfully deleted" +msgstr "" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "" +msgstr[1] "" + +msgid "There is no undo!" +msgstr "" + +msgid "There was a problem processing your request." +msgstr "" + +msgid "Sort order" +msgstr "" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" + +msgid "Apply to all subalbums" +msgstr "" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" + +msgid "You must enter a number (greater than zero)" +msgstr "" + +msgid "Use this thumbnail size in all subalbums" +msgstr "" + +msgid "Resized Images" +msgstr "" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" + +msgid "Active" +msgstr "" + +msgid "Target Size (pixels)" +msgstr "" + +msgid "You must enter a valid size" +msgstr "" + +msgid "Use these target sizes in all subalbums" +msgstr "" + +msgid "Apply settings to existing items" +msgstr "" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +msgid "... and for all subalbums" +msgstr "" + +msgid "Build thumbnails too" +msgstr "" + +msgid "Apply album setting to resized images" +msgstr "" + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" + +msgid "Width" +msgstr "" + +msgid "You must enter a value greater than or equal to 0" +msgstr "" + +msgid "Height" +msgstr "" + +msgid "There were errors saving some items" +msgstr "" + +msgid "There were errors saving all items" +msgstr "" + +msgid "Successfully saved all items" +msgstr "" + +msgid "This album contains no items" +msgstr "" + +msgid "Saved successfully." +msgstr "" + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" + +msgid "You do not have permissions to modify this item." +msgstr "" + +msgid "Save and Done" +msgstr "" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" + +msgid "Your name contains invalid characters. Please choose another." +msgstr "" + +msgid "You must enter a name for this item." +msgstr "" + +msgid "The name you entered is already in use. Please choose another." +msgstr "" + +msgid "The title of this item." +msgstr "" + +msgid "The root album must have a title." +msgstr "" + +msgid "The summary of this item." +msgstr "" + +msgid "This is the long description of the item." +msgstr "" + +#, c-format +msgid "%s Date and Time" +msgstr "" + +msgid "Set the date and time when this image was captured." +msgstr "" + +msgid "Set the date and time to be displayed for this item." +msgstr "" + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "" + +msgid "Date:" +msgstr "" + +msgid "Time:" +msgstr "" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" + +msgid "You must enter a valid date and time" +msgstr "" + +msgid "Thumbnail" +msgstr "" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" + +msgid "Unable to create a thumbnail for this item" +msgstr "" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" + +msgid "Resized Photos" +msgstr "" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" + +msgid "Aspect Ratio: " +msgstr "" + +msgid "Crop" +msgstr "" + +msgid "Undo Changes" +msgstr "" + +msgid "Reset to default" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" + +msgid "Rotate" +msgstr "" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "" + +msgid "CC 90°" +msgstr "" + +msgid "180°" +msgstr "" + +msgid "C 90°" +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" + +msgid "Scale" +msgstr "" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" + +msgid "You must enter a size" +msgstr "" + +msgid "Preserve Original" +msgstr "" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "" + +msgid "Modified Photo" +msgstr "" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" + +msgid "Restore original" +msgstr "" + +msgid "Choose a theme" +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "" + +msgid "Choose Theme" +msgstr "" + +#, c-format +msgid "Configure the %s theme" +msgstr "" + +msgid "These settings only apply to the theme for this album." +msgstr "" + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "" + +msgid "Album Highlight" +msgstr "" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" + +msgid "Highlight for:" +msgstr "" + +msgid "Highlight" +msgstr "" + +msgid "Move an Item" +msgstr "" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "" +msgstr[1] "" + +msgid "This album contains no items to move." +msgstr "" + +msgid "Source" +msgstr "" + +msgid "Choose the items you want to move" +msgstr "" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" + +msgid "You are not allowed to move this item away from here." +msgstr "" + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "" + +msgid "You cannot move an album into its own subtree." +msgstr "" + +msgid "Destination" +msgstr "" + +msgid "Choose a new album for them" +msgstr "" + +msgid "You don't have the permission to add items in this album" +msgstr "" + +msgid "No destination chosen" +msgstr "" + +msgid "Move" +msgstr "" + +msgid "Successfully moved" +msgstr "" + +msgid "Choose a destination album" +msgstr "" + +msgid "Permissions" +msgstr "" + +msgid "Owner changed successfully" +msgstr "" + +msgid "Group permission added successfully" +msgstr "" + +msgid "User permission added successfully" +msgstr "" + +msgid "Group permission removed successfully" +msgstr "" + +msgid "User permission removed successfully" +msgstr "" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" + +#, c-format +msgid "This item is owned by user: %s" +msgstr "" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "" + +msgid "New owner" +msgstr "" + +msgid "Change" +msgstr "" + +msgid "Apply new owner to sub-items" +msgstr "" + +msgid "You must enter a user name" +msgstr "" + +msgid "The user name you entered is invalid" +msgstr "" + +msgid "Apply changes" +msgstr "" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" + +msgid "Apply to sub-items" +msgstr "" + +msgid "Group Permissions" +msgstr "" + +msgid "Group name" +msgstr "" + +msgid "Permission" +msgstr "" + +msgid "New Group Permission" +msgstr "" + +msgid "Add Permission" +msgstr "" + +msgid "The permission you chose is invalid" +msgstr "" + +msgid "The group name you entered is invalid" +msgstr "" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "" + +msgid "User Permissions" +msgstr "" + +msgid "User name" +msgstr "" + +msgid "New User Permission" +msgstr "" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "" + +msgid "Reorder Album" +msgstr "" + +msgid "Order saved successfully" +msgstr "" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" + +msgid "change" +msgstr "" + +msgid "Change the order of the items in this album." +msgstr "" + +msgid "Move this item" +msgstr "" + +msgid "before" +msgstr "" + +msgid "after" +msgstr "" + +msgid "Reorder" +msgstr "" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +msgid "Admin Login" +msgstr "" + +msgid "Enter a URL" +msgstr "" + +msgid "Enter some text describing the URL" +msgstr "" + +msgid "Enter an image URL" +msgstr "" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "" + +msgid "image" +msgstr "" + +msgid "color" +msgstr "" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "" + +msgid "Missing Theme" +msgstr "" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" + +msgid "Admin Options" +msgstr "" + +msgid "User Options" +msgstr "" + +msgid "Password changed successfully" +msgstr "" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" + +msgid "Current Password" +msgstr "" + +msgid "You must enter your current password" +msgstr "" + +msgid "Incorrect password" +msgstr "" + +msgid "New Password" +msgstr "" + +msgid "You must enter a new password" +msgstr "" + +msgid "Verify New Password" +msgstr "" + +msgid "You must enter your new password again!" +msgstr "" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "" + +msgid "Your password has been recovered, please login." +msgstr "" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "" + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" + +#, c-format +msgid "Welcome, %s!" +msgstr "" + +msgid "Account settings saved successfully" +msgstr "" + +msgid "(required, password required for change)" +msgstr "" + +msgid "(suggested, password required for change)" +msgstr "" + +msgid "(required to change the e-mail address)" +msgstr "" + +msgid "You must enter your current password to change the e-mail address" +msgstr "" + +msgid "Recover a lost or forgotten password" +msgstr "" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" + +msgid "Your recovery request has been sent!" +msgstr "" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" + +msgid "Recover" +msgstr "" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "" + +msgid "Emergency Administrator Password Reset" +msgstr "" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" + +msgid "Recover Password for Username" +msgstr "" + +msgid "You must enter a username to recover the password for." +msgstr "" + +msgid "The username you entered does not exist." +msgstr "" + +msgid "Authorization Incorrect" +msgstr "" + +msgid "Recovery Instructions" +msgstr "" + +msgid "AuthFile Missing" +msgstr "" + +msgid "AuthFile Unreadable" +msgstr "" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" + +msgid "Refresh" +msgstr "" + +msgid "This page will allow you to reset the password on your account." +msgstr "" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "" + +msgid "Username missing" +msgstr "" + +msgid "Submit" +msgstr "" + +#, c-format +msgid "Hello %s," +msgstr "" + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" + +#, c-format +msgid "Your username is: %s" +msgstr "" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" + +msgid "Thank you!" +msgstr "" + +msgid "guest" +msgstr "" + +#, c-format +msgid "display mode: %s" +msgstr "" + +#, c-format +msgid "Date: %s" +msgstr "" + +#, c-format +msgid "Owner: %s" +msgstr "" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "" +msgstr[1] "" + +#, c-format +msgid "Views: %d" +msgstr "" + +msgid "« album actions »" +msgstr "" + +msgid "« item actions »" +msgstr "" + +msgid "Go" +msgstr "" + +msgid "Navigation" +msgstr "" + +msgid "next" +msgstr "" + +msgid "last" +msgstr "" + +#, c-format +msgid "Page %d of %d" +msgstr "" + +#, c-format +msgid "%d of %d" +msgstr "" + +msgid "first" +msgstr "" + +msgid "previous" +msgstr "" + +msgid "Page:" +msgstr "" + +#, c-format +msgid "%d. %s" +msgstr "" + +msgid "Size: " +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Full size: " +msgstr "" + +msgid "Setting" +msgstr "" + +msgid "Use Global" +msgstr "" + +msgid "Language selector" +msgstr "" + +msgid "Item actions" +msgstr "" + +msgid "Use dropdown menu" +msgstr "" + +msgid "Login block" +msgstr "" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/it.po b/Source/gallery2/modules/core/po/it.po new file mode 100644 index 0000000..12bd478 --- /dev/null +++ b/Source/gallery2/modules/core/po/it.po @@ -0,0 +1,3739 @@ +# $Id: it.po 16555 2007-06-07 23:01:52Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Ermanno Baschiera , 2004. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 15:50-0700\n" +"PO-Revision-Date: 2007-03-05 11:32+0100\n" +"Last-Translator: Ermanno Baschiera \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Generator: KBabel 1.3\n" +"X-Poedit-Country: ITALY\n" + +msgid "Gallery Email Test" +msgstr "Email di Test di Gallery" + +msgid "forever" +msgstr "per sempre" + +msgid "High Priority (Me first!)" +msgstr "Priorità Alta (Io per primo!)" + +msgid "Low Priority (I want to share!)" +msgstr "Priorità Bassa (Voglio condividere!)" + +msgid "No Markup" +msgstr "Nessun Markup" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "HTML Grezzo" + +msgid "Database" +msgstr "Database" + +msgid "File" +msgstr "File" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuto" +msgstr[1] "%d minuti" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ora" +msgstr[1] "%d ore" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d giorno" +msgstr[1] "%d giorni" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d settimana" +msgstr[1] "%d settimane" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Nessuna accelerazione" + +msgid "Partial acceleration" +msgstr "Accelerazione parziale" + +msgid "Full acceleration" +msgstr "Accelerazione totale" + +msgid "Themes" +msgstr "Temi" + +msgid "Updating Repository Index" +msgstr "Aggiornamento Indice Deposito" + +msgid "Scanning plugins" +msgstr "Scansione plugin in corso" + +msgid "Update Plugin List" +msgstr "Aggiorna Lista Plugin" + +msgid "Done." +msgstr "Fatto." + +msgid "Updating Packages" +msgstr "Aggiornamenti dei Pacchetti in corso" + +#, c-format +msgid "Preparing %s" +msgstr "Preparazione in corso di %s" + +#, c-format +msgid "Downloading %s" +msgstr "Scaricamento in corso di %s" + +#, c-format +msgid "Activating %s" +msgstr "Attivazione di %s in corso" + +msgid "Deleting Language Packs" +msgstr "Eliminazione dei Language Packs in corso" + +msgid "Update completed with errors." +msgstr "Upload completato con errori." + +msgid "Update complete." +msgstr "Aggiornamento completato." + +msgid "install" +msgstr "installa" + +msgid "upgrade" +msgstr "aggiorna" + +msgid "activate" +msgstr "attiva" + +msgid "uninstall" +msgstr "disinstalla" + +msgid "deactivate" +msgstr "disattiva" + +msgid "Inherit settings from parent album" +msgstr "Eredita configurazione da album genitore" + +msgid "Use these settings" +msgstr "Utilizza questa configurazione" + +msgid "Installing the core module" +msgstr "Installazione modulo core in corso" + +msgid "key" +msgstr "chiave" + +msgid "All access" +msgstr "Nessuna restrizione" + +msgid "[core] View item" +msgstr "[core] Visualizza oggetto" + +msgid "[core] View resized version(s)" +msgstr "[core] Visualizza le versioni ridimensionate" + +msgid "[core] View original version" +msgstr "[core] Visualizza la versione originale" + +msgid "[core] View all versions" +msgstr "[core] Visualizza tutte le versioni" + +msgid "[core] Add sub-album" +msgstr "[core] Aggiungi sotto-album" + +msgid "[core] Add sub-item" +msgstr "[core] Aggiungi sotto-oggetto" + +msgid "[core] Edit item" +msgstr "[core] Modifica oggetto" + +msgid "[core] Change item permissions" +msgstr "[core] Modifica i permessi dell'oggetto" + +msgid "[core] Delete item" +msgstr "[core] Elimina oggetto" + +msgid "Upgrading permissions" +msgstr "Aggiornamento permessi" + +msgid "Deleting old permission tables" +msgstr "Eliminazione vecchia tabella permessi" + +msgid "Registered Users" +msgstr "Utenti Registrati" + +msgid "All Users" +msgstr "Tutti gli Utenti" + +msgid "Detecting broken derivatives" +msgstr "Ricerca derivati danneggiati" + +msgid "Clearing fast-download cache" +msgstr "Pulizia cache per il download veloce" + +msgid "Deleting old fast-download cache" +msgstr "Eliminazione vecchia cache per il download veloce" + +msgid "Updating panorama items" +msgstr "Aggiornamenti in corso degli oggetti panoramici" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Ottimizzazione della tabella AccessSubscriberMap in corso" + +msgid "Converting Schema Table" +msgstr "Conversione Tabella Schema in corso" + +msgid "Loading Table Descriptions" +msgstr "Caricamento Descrizioni Tabelle in corso" + +msgid "Site Admins" +msgstr "Amministratori Sito" + +msgid "Everybody" +msgstr "Chiunque" + +msgid "Guest" +msgstr "Visitatore" + +msgid "Gallery" +msgstr "Gallery" + +msgid "This is the main page of your Gallery" +msgstr "Questa è la pagina principale della tua Gallery" + +msgid "Converting MySQL data to UTF8" +msgstr "Conversione dati MySQL in UTF8 in corso" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Aggiornamento permessi in corso (%d oggetti completati, %d rimanenti)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" +"Ricerca derivati danneggiati, caricamento in corso (%d derivati controllati, %d rimanenti)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Ricerca derivati danneggiati (%d derivati controllati, %d rimanenti)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "" +"Ricerca derivati danneggiati, salvataggio in corso (%d derivati controllati, %d rimanenti)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "" +"Ricerca derivati danneggiati, salvataggio in corso oggetto %d di %d (%d derivati " +"controllati, %d rimanenti)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Eliminazione vecchi file di sessione (iterazione %d)" + +msgid "add items" +msgstr "aggiungi oggetti" + +msgid "Album created successfully." +msgstr "Album creato con successo." + +msgid "add sub-album" +msgstr "aggiungi sotto-album" + +msgid "add items confirmation" +msgstr "conferma aggiunta oggetti" + +msgid "Base filename" +msgstr "Nome del file base" + +msgid "Caption" +msgstr "Didascalia" + +msgid "Blank" +msgstr "Vuoto" + +msgid "From Web Browser" +msgstr "Dal Browser Web" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabyte" +msgstr[1] "%d megabyte" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobyte" +msgstr[1] "%d kilobyte" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Il file in input %s supera la dimensione massima consentita" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Il file in input %s supera la dimensione specificata nel form" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Il file in input %s è stato caricato solo parzialmente" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Il file in input %s non è stato caricato. Errore %d" + +msgid "Gallery Item Administration" +msgstr "Amministrazione Oggetto di Gallery" + +msgid "delete an item" +msgstr "elimina un oggetto" + +msgid "delete confirmation" +msgstr "conferma eliminazione" + +#, c-format +msgid "delete %s" +msgstr "elimina %s" + +#, c-format +msgid "edit %s" +msgstr "modifica %s" + +msgid "Settings saved successfully." +msgstr "Configurazione salvata con successo." + +msgid "Apply resized image settings" +msgstr "Applica configurazione immagini ridimensionate" + +msgid "Preparing..." +msgstr "Preparazione in corso..." + +msgid "Apply thumbnail settings" +msgstr "Applica configurazione anteprime" + +msgid "Rebuilding thumbnails..." +msgstr "Ricostruzione anteprime..." + +msgid "Album" +msgstr "Album" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Elaborazione immagine %d di %d" + +msgid "Changes saved successfully" +msgstr "Modifiche salvate con successo" + +msgid "Animation Size" +msgstr "Dimensione Animazione" + +msgid "edit captions" +msgstr "modifica didascalie" + +msgid "General" +msgstr "Generale" + +msgid "Movie Size" +msgstr "Dimensione Filmato" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Anteprima ritagliata con successo" + +msgid "Thumbnail reset successfully" +msgstr "Anteprima resettata con successo" + +msgid "Photo 5x3" +msgstr "Foto 5x3" + +msgid "Photo 6x4" +msgstr "Foto 6x4" + +msgid "Photo 7x5" +msgstr "Foto 7x5" + +msgid "Photo 10x8" +msgstr "Foto 10x8" + +msgid "Fullscreen 4x3" +msgstr "A tutto schermo 4x3" + +msgid "Widescreen 16x9" +msgstr "Schermo panoramico 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Quadrato 1x1" + +msgid "As Image" +msgstr "Come l'Immagine Originale" + +msgid "Landscape" +msgstr "Panorama" + +msgid "Portrait" +msgstr "Ritratto" + +msgid "Crop Thumbnail" +msgstr "Ritaglia Anteprima" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Modifiche alla rotazione e scala annullate con successo" + +msgid "Rotated photo successfully" +msgstr "Foto ruotata con successo" + +msgid "Scaled photo successfully" +msgstr "Foto riscalata con successo" + +msgid "Modify Photo" +msgstr "Modifica Foto" + +msgid "Successfully changed theme" +msgstr "Tema cambiato con successo" + +msgid "« default theme »" +msgstr "« tema predefinito »" + +msgid "Theme" +msgstr "Tema" + +msgid "make highlight" +msgstr "fanne la copertina" + +msgid "move item" +msgstr "sposta oggetto" + +#, c-format +msgid "move %s" +msgstr "sposta %s" + +#, c-format +msgid "edit %s permissions" +msgstr "modifica permessi di %s" + +msgid "reorder items" +msgstr "riordina oggetti" + +msgid "Maintenance" +msgstr "Manutenzione" + +msgid "Gallery Site Administration" +msgstr "Amministrazione Sito Gallery" + +msgid "site admin" +msgstr "amministrazione sito" + +msgid "Gallery User Administration" +msgstr "Amministrazione Utente Gallery" + +msgid "change password" +msgstr "modifica password" + +msgid "your account" +msgstr "il mio profilo" + +msgid "Password Recovery" +msgstr "Recupero Password" + +msgid "Core" +msgstr "Core" + +msgid "Gallery 2 Core Module" +msgstr "Modulo Core di Gallery 2" + +msgid "Add Items" +msgstr "Aggiungi Oggetti" + +msgid "Edit Album" +msgstr "Modifica Album" + +msgid "Edit Photo" +msgstr "Modifica Foto" + +msgid "Edit Movie" +msgstr "Modifica Filmato" + +msgid "Add Album" +msgstr "Aggiungi Album" + +msgid "Edit Permissions" +msgstr "Modifica Autorizzazioni" + +msgid "View Permissions" +msgstr "Visualizza Permessi" + +msgid "Delete Album" +msgstr "Elimina Album" + +msgid "Delete Photo" +msgstr "Elimina Foto" + +msgid "Delete Movie" +msgstr "Elimina Filmato" + +msgid "Move Album" +msgstr "Sposta Album" + +msgid "Move Photo" +msgstr "Sposta Foto" + +msgid "Move Movie" +msgstr "Sposta Filmato" + +msgid "Edit Captions" +msgstr "Modifica Didascalie" + +msgid "Make Highlight" +msgstr "Fanne la Copertina" + +msgid "Reorder Items" +msgstr "Riordina Oggetti" + +msgid "Site Admin" +msgstr "Amministra il Sito" + +msgid "Login" +msgstr "Login" + +msgid "Your Account" +msgstr "Il Mio Profilo" + +msgid "Logout" +msgstr "Disconnetti" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Users" +msgstr "Utenti" + +msgid "Groups" +msgstr "Gruppi" + +msgid "Performance" +msgstr "Prestazioni" + +msgid "Toolkit Priority" +msgstr "Priorità Strumenti" + +msgid "Graphics Toolkits" +msgstr "Strumeti Grafici" + +msgid "Account Settings" +msgstr "Configurazione Account" + +msgid "Change Password" +msgstr "Modifica Password" + +#, c-format +msgid "Edit %s" +msgstr "Modifica %s" + +#, c-format +msgid "Delete %s" +msgstr "Elimina %s" + +#, c-format +msgid "Move %s" +msgstr "Sposta %s" + +msgid "Build all thumbnails/resizes" +msgstr "Rigenera tutte le anteprime/ridimensionamenti" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Assicura che i file dei dati per tutti i derivati (anteprime, ecc.) vengano generati e che " +"quelli danneggiati vengano rigenerati." + +msgid "Build All Thumbnails/Resizes" +msgstr "Genera Tutte le Anteprime/Ridimensionamenti" + +msgid "Debug output for failed items:" +msgstr "Output del debug per gli oggetti falliti:" + +#, c-format +msgid "Checked %d items" +msgstr "Controllati %d oggetti" + +#, c-format +msgid "%d items built" +msgstr "%d oggetti generati" + +#, c-format +msgid "%d items failed" +msgstr "%d oggetti falliti" + +msgid "Convert MySQL database to UTF8" +msgstr "Converti database MySQL in UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Se hai creato il tuo database con MySQL 3.x e adesso fai l'aggiornamento a MySQL 4.x, " +"otterrai dei caratteri errati finché non converti il database ad usare UTF8. Questa " +"operazione non è pericolosa se il tuo database è già convertito, quindi non c'è rischio se " +"non sei sicuro. Dopo averla eseguita, lancia l'operazione 'Elimina cache database' per " +"liberarti da ogni possibile corruzione nella cache." + +msgid "Database successfully converted to UTF8" +msgstr "Database convertito con successo in UTF8" + +msgid "No conversion required" +msgstr "Nessuna conversione richiesta" + +msgid "Delete user sessions" +msgstr "Elimina sessioni utente" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" +"Elimina tutte le sessioni utente persistenti in base all'attuale configurazione della " +"scadenza sessione" + +#, c-format +msgid "Deleted %d sessions." +msgstr "%d sessioni eliminate." + +msgid "Delete database cache" +msgstr "Elimina cache database" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery memorizza su disco le informazioni del database più comunemente usate per " +"incrementare le prestazioni. Se modifichi il database direttamente, lancia questa operazione " +"per pulire la cache e forzare Gallery a ricaricare le informazioni dal database." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Directory %s eliminata con successo" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Impossibile eliminare la directory: %s" + +msgid "Delete template cache" +msgstr "Elimina cache template" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Gallery compila e salva i file del template per aumentare le prestazioni. Se ottieni errori " +"del tipo Smarty error allora potresti provare a lanciare questa operazione. Lanciala " +"anche quando rimuovi un file local/*.tpl così Smarty tornerà al file tpl di default." + +msgid "Template cache deleted successfully" +msgstr "Cache template eliminata con successo." + +msgid "album" +msgstr "album" + +msgid "Animation" +msgstr "Animazione" + +msgid "animation" +msgstr "animazione" + +msgid "Gallery Core" +msgstr "Core di Gallery" + +msgid "Gallery Core Module" +msgstr "Modulo Core di Gallery" + +msgid "Search descriptions" +msgstr "Cerca per descrizioni" + +msgid "Search keywords" +msgstr "Cerca per parola chiave" + +msgid "Search summaries" +msgstr "Cerca per sommario" + +msgid "Search titles" +msgstr "Cerca per titolo" + +msgid "Description" +msgstr "Descrizione" + +msgid "Keywords" +msgstr "Keywords" + +msgid "Summary" +msgstr "Sommario" + +msgid "Title" +msgstr "Titolo" + +msgid "Owner" +msgstr "Proprietario" + +msgid "Dynamic Album" +msgstr "Album Dinamico" + +msgid "dynamic album" +msgstr "album dinamico" + +msgid "Group" +msgstr "Gruppo" + +msgid "group" +msgstr "gruppo" + +msgid "Other" +msgstr "Altro" + +msgid "Movie" +msgstr "Filmato" + +msgid "movie" +msgstr "filmato" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "Non è stato possibile creare il percorso della cache del deposito." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Non è stato possibile creare la sottocartella per la cache. Assicurati che il server web " +"abbia i permessi di scrittura in essa." + +msgid "Official Release Repository" +msgstr "Deposito Release Ufficiale" + +msgid "Experimental Repository" +msgstr "Deposito Sperimentale" + +msgid "Community Repository" +msgstr "Deposito della Comunità" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Errore nello scaricamento dell'indice da '%s'." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Errore nello scaricamento della hash dell'indice da '%s'." + +msgid "Index integrity check failed." +msgstr "Controllo integrità indice fallito." + +msgid "« default sort order »" +msgstr "« nessun ordinamento »" + +msgid "Manual sort order" +msgstr "Ordinamento manuale" + +msgid "Origination Date" +msgstr "Data Creazione" + +msgid "Creation Date" +msgstr "Data Creazione" + +msgid "Last Changed Date" +msgstr "Data di Ultima Modifica" + +msgid "Name" +msgstr "Nome" + +msgid "View Count" +msgstr "Visualizza Conteggio" + +msgid "Random" +msgstr "Casuale" + +msgid "« no presort »" +msgstr "« nessun preordinamento »" + +msgid "Albums First" +msgstr "Album per Primi" + +msgid "Most Viewed First" +msgstr "Prima le Più Viste" + +msgid "Ascending" +msgstr "Ascendente" + +msgid "Descending" +msgstr "Discendente" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "Validazione disabilitata finché non imposti allowSessionAccess in config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Questa pagina è conforme a XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Fai una donazione al Gallery project" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Tempo residuo stimato: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Memoria impegnata: %s, totale: %s" + +msgid "Rows per album page" +msgstr "Righe per pagina album" + +msgid "Columns per album page" +msgstr "Colonne per pagina album" + +msgid "Number of items to show per page" +msgstr "Numero di oggetti da mostrare in una pagina" + +msgid "Row height (pixels)" +msgstr "Altezza righe (pixel)" + +msgid "Column width (pixels)" +msgstr "Larghezza colonne (pixel)" + +msgid "Show image owners" +msgstr "Visualizza proprietari immagine" + +msgid "Show album owners" +msgstr "Visualizza proprietari album" + +msgid "Show micro navigation thumbnails" +msgstr "Visualizza micro anteprime per la navigazione" + +msgid "Blocks to show in the sidebar" +msgstr "Blocchi da visualizzare nella barra laterale" + +msgid "Blocks to show on album pages" +msgstr "Blocchi da visualizzare nelle pagine dell'album" + +msgid "Blocks to show on photo pages" +msgstr "Blocchi da visualizzare nelle pagine delle foto" + +msgid "Thumbnail links in dynamic albums" +msgstr "Link anteprime negli album dinamici" + +msgid "Browse dynamic album" +msgstr "Sfoglia album dinamico" + +msgid "Jump to original album" +msgstr "Salta all'album originale" + +msgid "Separate link to original album" +msgstr "Link separato all'album originale" + +msgid "View Samples" +msgstr "Visualizza Campioni" + +msgid "Album Frame" +msgstr "Cornice Album" + +msgid "Item Frame" +msgstr "Cornice Oggetto" + +msgid "Photo Frame" +msgstr "Cornice Foto" + +msgid "Color Pack" +msgstr "Color Pack" + +msgid "You must enter a number greater than 0" +msgstr "Devi inserire un numero maggiore di 0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Errore nella lettura della configurazione del blocco. Svuota la cache del tuo browser e " +"prova di nuovo." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Archivio" + +msgid "archive" +msgstr "archivio" + +msgid "Document" +msgstr "Documento" + +msgid "document" +msgstr "documento" + +msgid "Spreadsheet" +msgstr "Foglio di lavoro" + +msgid "spreadsheet" +msgstr "foglio di lavoro" + +msgid "file" +msgstr "file" + +msgid "Back" +msgstr "Indietro" + +#, c-format +msgid "Back to %s" +msgstr "Torna a %s" + +msgid "User" +msgstr "Utente" + +msgid "user" +msgstr "utente" + +msgid "Optimize database" +msgstr "Ottimizza database" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Aumenta le prestazioni del database. Il risultato varierà in base a che database stai " +"usando, ma questa routine di manutenzione renderà più veloce la tua Gallery. Utile " +"soprattutto quando aggiungi o rimuovi molti oggetti." + +msgid "Database optimized successfully" +msgstr "Database ottimizzato con successo" + +msgid "Reset view counts" +msgstr "Azzera i conteggi delle visite" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Imposta il numero delle visite a zero per tutti gli album e gli oggetti. Questa operazione " +"svuota anche la cache del database." + +msgid "View counts reset successfully" +msgstr "Conteggio visite azzerato con successo" + +msgid "Refresh capture dates" +msgstr "Aggiorna date degli scatti" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Aggiorna la data dello scatto memorizzata in Gallery per tutti quegli oggetti che abbiano " +"una data valida nel file di dati originale (di solito nei dati EXIF)." + +msgid "Processing..." +msgstr "Elaborazione in corso..." + +msgid "Refresh Capture Dates" +msgstr "Aggiorna Date degli Scatti" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Elaborazione oggetto %d di %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Aggiornati %d oggetti su %d" + +msgid "System information" +msgstr "Informazioni sistema" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Ottieni i dettagli del sistema; utile per copiarli nel forum di supporto di G2." + +msgid "core" +msgstr "core" + +msgid "unknown" +msgstr "sconosciuto" + +msgid "Gallery version" +msgstr "Versione di Gallery" + +msgid "PHP version" +msgstr "Versione PHP" + +msgid "Webserver" +msgstr "Webserver" + +msgid "Toolkits" +msgstr "Strumenti" + +msgid "Acceleration" +msgstr "Accelerazione" + +msgid "Operating system" +msgstr "Sistema operativo" + +msgid "Default theme" +msgstr "Tema predefinito" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "abilitato" + +msgid "disabled" +msgstr "disabilitato" + +msgid "Locale" +msgstr "Locale" + +msgid "Browser" +msgstr "Browser" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Righe nella tabella %s = %d" + +msgid "Successfully saved theme settings" +msgstr "Salvataggio configurazione tema avvenuto con successo" + +msgid "General Settings" +msgstr "Configurazione Generale" + +msgid "Settings saved successfully" +msgstr "Configurazione salvata con successo" + +msgid "Added local upload directory successfully" +msgstr "Directory locale di upload aggiunta con successo" + +msgid "Removed local upload directory successfully" +msgstr "Directory locale di upload eliminata con successo" + +msgid "Test email sent successfully" +msgstr "Email di test inviata con successo" + +msgid "There was a problem processing your request, see below for details." +msgstr "" +"C'è stato un problema nell'elaborazione della tua richiesta, vedi i dettagli qui sotto." + +msgid "Error sending test email, see below for details." +msgstr "Errore nell'invio dell'email di test, vedi i dettagli qui sotto." + +msgid "Language Settings" +msgstr "Configurazione Lingua" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Seleziona la lingua predefinita di Gallery. Gli utenti individuali possono scavalcare questa " +"configurazione nelle loro preferenze personali oppure tramite il bocco di selezione della " +"lingua se disponibile. Gallery proverà a rilevare le preferenze della lingua per ogni utente " +"se è attivato il controllo delle preferenze del browser." + +msgid "Default language" +msgstr "Lingua predefinita" + +msgid "Check Browser Preference" +msgstr "Controlla le Preferenze del Browser" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Il tuo webserver non supporta la localizzazione. Chiedi al tuo amministratore di " +"riconfigurare PHP con l'opzione %s attivata." + +msgid "Date Formats" +msgstr "Formati Date" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Specifica come la data e l'ora vengono visualizzate in Gallery. Vedi %sphp.net%s per i " +"dettagli su come inserire una stringa del formato. Nota che la visualizzazione di alcuni " +"elementi varia in base alla lingua selezionata." + +msgid "Style" +msgstr "Stile" + +msgid "Format" +msgstr "Formato" + +msgid "Sample" +msgstr "Esempio" + +msgid "Date" +msgstr "Data" + +msgid "Time" +msgstr "Ora" + +msgid "Date/Time" +msgstr "Data/Ora" + +msgid "Filesystem Permissions" +msgstr "Permessi Filesystem" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Specifica i permessi predefiniti per i file e le directory che Gallery creerà. Questo non " +"viene applicato ai file o directory che Gallery ha già creato." + +msgid "New directories" +msgstr "Nuove directory" + +msgid "New files" +msgstr "Nuovi file" + +msgid "Session Settings" +msgstr "Configurazione Sessione" + +msgid "Session Lifetime" +msgstr "Durata Sessione" + +msgid "Inactivity Timeout" +msgstr "Timeout di inattività" + +msgid "Embedded Markup" +msgstr "Markup Integrati" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Quale tipo di markup deve essere concesso nei campi inseriti dagli utenti? Per ragioni di " +"sicurezza si raccomanda di non usare l'HTML grezzo. BBCode è un tipo speciale di markup che " +"è sicuro e permette semplici formattazioni del testo, come il grassetto, l'italico, le " +"liste, immagini e url." + +msgid "Markup" +msgstr "Markup" + +msgid "Email" +msgstr "Email" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Per mandare email, Gallery di default usa la funzione mail di PHP, che non richiede " +"configurazione. Per utilizzare un server smtp/mail inserisci le informazioni qui sotto, " +"incluse le informazioni di autenticazione se necessario. Puoi anche aggiungere :porta dopo " +"il nome del server per utilizzare una porta diversa da quella predefinita." + +msgid "Server" +msgstr "Server" + +msgid "Username" +msgstr "Nome utente" + +msgid "Password" +msgstr "Password" + +msgid "SMTP From Address" +msgstr "SMTP dall'Indirizzo" + +msgid "Invalid email address" +msgstr "Indirizzo email non valido" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Invia un'email di test per verificare che la tua configurazione sia corretta (utilizzando i " +"parametri di PHP mail o SMTP di seguito). Inserisci qui sotto l'indirizzo di un destinatario " +"per un messaggio di test." + +msgid "Send Email" +msgstr "Invia Email" + +msgid "Email Test Error" +msgstr "Errore nel Test dell'Email" + +msgid "Cookies" +msgstr "Cookies" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Quando Gallery è integrata in un'altra applicazione (portale, CMS, forum, ecc.), allora devi " +"scegliere tra due opzioni. Tutti gli altri amministratori non si devono preoccupare della " +"configurazione dei cookies. Leggi il resto per ulteriori dettagli." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"Se la tua Gallery è integrata e lasci vuoti i seguenti campi, allora tutti i link " +"DownloadItem (le URL delle immagini e altri oggetti) nella Gallery integrata hanno come " +"prefisso una stringa GALLERYSID nell'URL, che costituisce un rischio minore per la " +"sicurezza quando gli utenti di Gallery iniziano a copiare e incollare le URL delle " +"immagini in forum, guestbooks, ecc. L'alternativa è impostare il percorso del cookie. Gallery allora non metterà il prefisso GALLERYSID nell'URL integrato DownloadItem. Ad es. quando Gallery è raggiungibile da http://www.example.com/application/gallery2/ e " +"l'applicazione che la integra è in http://www.example.com/application/, allora devi " +"confrontare il percorso /application/gallery2/ con /application/. Il percorso del cookie è " +"la parte di path che è uguale, in questo caso risulta '/application/'. Spesso e volentieri è " +"solo '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"Anche il dominio del cookie è necessario solo per le installazioni integrate di " +"Gallery e solo se ti vuoi liberare della stringa GALLERYSID nelle URL integrate " +"DownloadItem. Nella maggior parte dei casi il dominio del cookie può essere lasciato " +"vuoto. Impostalo solo se Gallery e l'applicazione che la integra sono raggiungibili da " +"sottodomini differenti. Ad es. quando Gallery è a http://photos.example.com/ e " +"l'applicazione è a http://www.example.com/, allora devi impostare il dominio del cookie a " +"example.com (la parte della stringa dell'host comune a entrambi, Gallery e l'applicazione " +"che la integra)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"Una volta che modifichi la configurazione dei cookie, tutti gli utenti registrati " +"della tua Gallery dovranno svuotare la cache dei cookie nel browser. Se non lo fanno, " +"avranno problemi di login / logout / sessione persa." + +msgid "Path" +msgstr "Path" + +msgid "Invalid cookie path" +msgstr "Path del cookie non valido" + +msgid "Domain" +msgstr "Dominio" + +msgid "Invalid cookie domain" +msgstr "Dominio del cookie non valido" + +msgid "Locking System" +msgstr "Sistema di lock" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery usa un sistema di locks per prevenire che modifiche simultanee vadano a interferire " +"l'una con l'altra. Ci sono due tipi di lock, ognuno con i suoi vantaggi e svantaggi. Il " +"lock basato su File è veloce ed efficente, ma non funziona su filesystem NFS e non è " +"affidabile su Windows. Il lock basato su Database è più lento, ma più affidabile. Se " +"non sai quale scegliere, ti raccomandiamo di usare il file lock. Se ottieni molti lock " +"timeout, prova allora a passare al database lock. Passare da uno all'altro non crea problemi." + +msgid "Lock system" +msgstr "Sistema di lock" + +msgid "Helper Processes" +msgstr "Processi di Supporto" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Alcuni moduli di Gallery useranno programmi nel tuo server per elaborare immagini, " +"archiviare e altre operazioni. Questi programmi possono essere molto pesanti dal punto di " +"vista computazionale e possono influenzare le prestazioni di un server web condiviso. Puoi " +"fare in modo che questi programmi siano eseguiti a una priorità più bassa, in modo che " +"facciano i bravi. Se sei in un ambiente di hosting condiviso e il tuo host si lamenta, prova " +"a impostare una priorità più bassa." + +msgid "Priority" +msgstr "Priorità" + +msgid "Save" +msgstr "Salva" + +msgid "Reset" +msgstr "Resetta" + +msgid "Create A New Group" +msgstr "Crea Un Nuovo Gruppo" + +msgid "Group Name" +msgstr "Nome Gruppo" + +msgid "(required)" +msgstr "(obbligatorio)" + +msgid "You must enter a group name" +msgstr "Devi inserire il nome di un gruppo" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Il Gruppo '%s' esiste già" + +msgid "Create Group" +msgstr "Crea Gruppo" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Create A New User" +msgstr "Crea Un Nuovo Utente" + +msgid "You must enter a username" +msgstr "Devi inserire un nomeutente" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Il nome utente '%s' esiste già" + +msgid "Full Name" +msgstr "Nome Completo" + +msgid "Email Address" +msgstr "Indirizzo Email" + +msgid "You must enter an email address" +msgstr "Devi inserire un indirizzo email" + +msgid "Language" +msgstr "Lingua" + +msgid "You must enter a password" +msgstr "Devi inserire una password" + +msgid "Verify Password" +msgstr "Verifica Password" + +msgid "You must enter the password a second time" +msgstr "Devi inserire la password una seconda volta" + +msgid "The passwords you entered did not match" +msgstr "Le password che hai inserito non corrispondono" + +msgid "Create User" +msgstr "Crea Utente" + +msgid "Delete A Group" +msgstr "Elimina Un Gruppo" + +msgid "Are you sure?" +msgstr "Sei sicuro?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Questo eliminerà completamente %s da Gallery. Non sarà possibile annullare le modifiche!" + +msgid "Delete" +msgstr "Elimina" + +msgid "Delete a User" +msgstr "Elimina Un Utente" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "L'utente %s è il proprietario di %s oggetti." + +#, c-format +msgid "Delete user %s and..." +msgstr "Elimina l'utente %s e..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Assegna un nuovo proprietario a tutti gli oggetti di %s" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Elimina tutti gli oggetti di %s e assegna un nuovo proprietario ai restanti album non vuoti. " +"Gli oggetti che %s non aveva il permesso di eliminare saranno anch'essi assegnati a un nuovo " +"proprietario." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Nuovo proprietario (vuoto vuol dire uno degli Amministratori)" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "L'utente '%s' non esiste! Non è possibile assegnare oggetti a utenti che non esistono." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Il nuovo proprietario deve essere un utente diverso da quello che stiamo eliminando!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Il nuovo proprietario non può essere un Visitatore / Anonimo!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Questo eliminerà completamente %s da Gallery. Non sarà possibile annullare " +"le modifiche!" + +msgid "Edit a group" +msgstr "Modifica un Gruppo" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Modifica i Membri del Gruppo '%s'" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Aggiunto al gruppo '%s' l'utente '%s'" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Utente '%s' rimosso dal gruppo '%s'" +msgstr[1] "Utenti '%s' rimossi dal gruppo '%s'" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Questo gruppo contiene %d utente." +msgstr[1] "Questo gruppo contiene %d utenti." + +msgid "Members" +msgstr "Membri" + +msgid "« first" +msgstr "« primo" + +msgid "« back" +msgstr "« indietro" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Pagina %d di %d" + +msgid "next »" +msgstr "successivo »" + +msgid "last »" +msgstr "ultimo »" + +msgid "Filter" +msgstr "Filtro" + +msgid "Clear" +msgstr "Pulisci" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d utente corrisponde al tuo filtro" +msgstr[1] "%d utenti corrispondono al tuo filtro" + +msgid "Remove selected" +msgstr "Elimina selezionati" + +msgid "You must select a user to remove." +msgstr "Devi selezionare un utente da eliminare." + +msgid "You can't remove yourself from this group." +msgstr "Non puoi eliminare te stesso da questo gruppo." + +msgid "Add Member" +msgstr "Aggiungi Utente" + +msgid "Add" +msgstr "Aggiungi" + +msgid "You must enter a username." +msgstr "Devi inserire un nomeutente." + +#, c-format +msgid "User '%s' does not exist." +msgstr "L'utente '%s' non esiste." + +msgid "This user already is in this group." +msgstr "Questo utente è già in questo gruppo." + +msgid "Done" +msgstr "Fatto" + +msgid "Edit a user" +msgstr "Modifica un utente" + +msgid "That username is already in use" +msgstr "Quel nome utente è già utilizzato" + +msgid "You must enter a new username" +msgstr "Devi inserire un nuovo nome utente" + +msgid "E-mail Address" +msgstr "Indirizzo Email" + +msgid "(suggested)" +msgstr "(raccomandato)" + +msgid "Options" +msgstr "Opzioni" + +msgid "Lock user." +msgstr "Blocca utente." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Gli utenti bloccati non possono modificare le informazioni del proprio account. (Password, " +"Nome, Email, ecc.)" + +msgid "Reset failed login count." +msgstr "Azzera conteggio login falliti." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "%d tentativo di login fallito dall'ultimo login effettuato con successo." +msgstr[1] "%d tentativi di login falliti dall'ultimo login effettuato con successo." + +msgid "Group Management" +msgstr "Gestione Gruppi" + +#, c-format +msgid "Removed group '%s'" +msgstr "Gruppo '%s' eliminato" + +#, c-format +msgid "Created group '%s'" +msgstr "Gruppo '%s' creato" + +#, c-format +msgid "Modified group '%s'" +msgstr "Gruppo '%s' modificato" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "C'è %d gruppo nel sistema." +msgstr[1] "Ci sono %d gruppi in totale nel sistema." + +msgid "Edit Group" +msgstr "Modifica Gruppo" + +msgid "Edit" +msgstr "Modifica" + +msgid "Add/Remove Users" +msgstr "Aggiungi/Elimina Utenti" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Il Gruppo '%s' non esiste." + +msgid "You cannot delete that group" +msgstr "Non puoi eliminare questo gruppo" + +msgid "You cannot edit that group's users" +msgstr "Non puoi modificare questo gruppo di utenti" + +msgid "Edit Group (by list)" +msgstr "Modifica Gruppo (da lista)" + +msgid "Action" +msgstr "Azione" + +msgid "edit" +msgstr "modifica" + +msgid "delete" +msgstr "elimina" + +msgid "members" +msgstr "membri" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d gruppo corrisponde al tuo filtro" +msgstr[1] "%d gruppi corrispondono al tuo filtro" + +msgid "System Maintenance" +msgstr "Manutenzione Sistema" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Task %s completato con successo." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Il task %s non è stato completato con successo." + +msgid "Task name" +msgstr "Nome operazione" + +msgid "Last run" +msgstr "Ultima esecuzione" + +msgid "Success/Fail" +msgstr "Successo/Errore" + +msgid "Not run yet" +msgstr "Non ancora eseguito" + +msgid "Success" +msgstr "Successo" + +msgid "Failed" +msgstr "Errore" + +msgid "run now" +msgstr "esegui ora" + +msgid "Last Run Details:" +msgstr "Dettagli Ultima Esecuzione:" + +msgid "Performance Tuning" +msgstr "Messa a Punto Prestazioni" + +msgid "Updated performance settings successfully" +msgstr "Configurazione prestazioni aggiornata con successo" + +msgid "Deleted all saved pages" +msgstr "Tutte le pagine salvate sono state eliminate" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Migliora le prestazioni della tua Gallery memorizzando intere pagine web nel database. " +"Questo può ridurre significativamente le risorse necessarie al webserver e al database per " +"visualizzare una pagina web. Lo svantaggio è che la pagina web che vedi potrebbe essere poco " +"aggiornata, tuttavia puoi sempre ottenere la versione più recente di una pagina forzando " +"l'aggiornamento nel tuo browser (di solito tenendo premuto il tasto shift e cliccando sul " +"pulsante aggiorna/ricarica)." + +msgid "Partial Acceleration" +msgstr "Accelerazione Parziale" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"L'accelerazione parziale offre un miglioramento delle prestazioni pari al 10-25%, ma alcune " +"forme di dati dinamici (come il conteggio visite) non verranno costantemente aggiornate. " +"Tutto il contenuto che compare nei blocchi (come il blocco immagine casuale, o qualsiasi " +"blocco laterale, ecc.) verrà sempre aggiornato." + +msgid "Full Acceleration" +msgstr "Accelerazione Totale" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"L'accelerazione totale offre un miglioramento prestazionale pari al 90%, ma nessun dato " +"dinamico (blocco immagine casuale, altri blocchi laterali, numero degli oggetti nel " +"carrello, conteggio visite, ecc) verrà aggiornato fino alla scadenza della pagina salvata." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Puoi anche specificare quando le pagine salvate debbano scadere. Impostando un periodo di " +"scadenza lungo verrà ridotto il carico sul server, ma aumenterà l'intervallo in cui gli " +"utenti non vedranno cambiamenti. Un periodo di scadenza breve farà in modo che gli utenti " +"vedano dati più aggiornati, ma aumenterà il carico sul server." + +msgid "Here are some standard acceleration profiles:" +msgstr "Qui ci sono alcuni profili di accelerazione standard:" + +msgid "Medium acceleration" +msgstr "Media accelerazione" + +msgid "High acceleration" +msgstr "Alta accelerazione" + +msgid "Guest Users" +msgstr "Utenti Non Registrati" + +msgid "Expires after:" +msgstr "Scade dopo:" + +msgid "Clear Saved Pages" +msgstr "Elimina Pagine Salvate" + +msgid "Status: Inactive" +msgstr "Stato: Non Attivo" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ disattivato" + +msgid "Status: Active" +msgstr "Stato: Attivo" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ attivato" + +msgid "Status: Not Installed" +msgstr "Stato: Non Installato" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ non installato" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Stato: Necessario Aggiornamento (Non Attivo)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Stato: Plugin Incompatibile (Non Attivo)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Stato: Non Attivo (Necessita Configurazione)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ necessita configurazione" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ cancellato" + +msgid "Warning!" +msgstr "Attenzione!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Sei sicuro di voler disinstallare __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Questo rimuoverà anche tutti i permessi ed eliminerà ogni dato temporaneo " +"creato da questo modulo." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"Questo plugin verrà disinstallato, ma i suoi file verranno tenuti in modo da poterlo " +"reinstallare." + +msgid "Yes" +msgstr "Sì" + +msgid "No" +msgstr "No" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Sei sicuro di voler eliminare __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Questo plugin verrà disinstallato e i suoi file verranno eliminati." + +msgid "The files of this plugin will be deleted permanently." +msgstr "I file di questo plugin saranno eliminati per sempre." + +msgid "disabled(__COUNT__)" +msgstr "disabled(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "aggiornati(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "non installati(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "necessario aggiornamento(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "incompatibile(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Fallita l'eliminazione completa di __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Plugin di Gallery" + +msgid "Get More Plugins" +msgstr "Scarica Altri Plugin" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Vuoi delle altre funzionalità? Dei nuovi plugin sono a portata di click. Clicca sul link %s " +"per iniziare." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Le funzioni di Gallery sono sotto forma di plugin separati. Puoi scaricare e installare dei " +"plugin per aggiungere altre funzioni alla tua Gallery, oppure puoi disabilitare le funzioni " +"che non vuoi utilizzare. Per utilizzare una funzione, devi installare il plugin, " +"configurarlo (se necessario) e attivarlo. Se non ti interessa usare una funzione, puoi " +"disattivarla." + +msgid "Plugin Name" +msgstr "Nome Plugin" + +msgid "Installed" +msgstr "Installato" + +msgid "Version" +msgstr "Versione" + +msgid "Actions" +msgstr "Azioni" + +msgid "help" +msgstr "aiuto" + +#, c-format +msgid "Screenshot for %s" +msgstr "Schermate di %s" + +msgid "Incompatible plugin!" +msgstr "Plugin incompatibile!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Core API Richiesta: %s (disponibile: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Plugin API Richiesto: %s (disponibile: %s)" + +msgid "configure" +msgstr "configura" + +msgid "up to date" +msgstr "aggiornato" + +msgid "upgrade required" +msgstr "necessario aggiornamento" + +msgid "not installed" +msgstr "non installato" + +msgid "incompatible" +msgstr "incompatibile" + +msgid "Repository" +msgstr "Deposito" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" +"Assicurati che la tua connessione ad internet sia configurata correttamente oppure prova più " +"tardi." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Scansione stato fallita per il plugin: %s." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"La tua copia locale del deposito era danneggiata ed è stata riparata. Scarica di nuovo la " +"lista dei plugin." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" +"Il download del plugin %s è fallito perché i file/cartelle non possono essere modificati:" + +msgid "The repository index has been successfully updated." +msgstr "L'indice del deposito è stato aggiornato con successo." + +msgid "All plugins are already up-to-date." +msgstr "Tutti i plugin sono già aggiornati." + +#, c-format +msgid "%s plugin updated." +msgstr "Aggiornato plugin %s." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "Eliminato %d language pack." +msgstr[1] "Eliminati %d language pack." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"Nessuna informazione personale su di te o sulla tua installazione di Gallery verrà mai " +"inviata al server di Gallery." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Scarica e installa nuovi plugin con rapidità e facilità. Se decidi che un plugin non ti " +"piace, puoi eliminarlo dalla tua Gallery. Ci sono molteplici depositi diversi di plugin, " +"puoi scegliere quali utilizzare (non c'è problema a utilizzarli tutti in una volta). Una " +"volta che hai scelto, devi scaricare periodicamente la lista dei plugin per scoprire gli " +"aggiornamenti disponibili. %s Con connessioni più lente l'operazione potrebbe impiegare un " +"paio di minuti." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Plugin Ufficiali Rilasciati dal Gallery Project (%sraccomandati%s)" + +#, c-format +msgid "last updated on %s" +msgstr "ultimo aggiornamento il %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Plugin Sperimentali del Gallery Project (%snuove funzioni interessanti, potrebbero contenere " +"bug%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Plugin della Comunità (%susali a tuo rischio e pericolo! %s)" + +msgid "Repository Error" +msgstr "Errore nel Deposito" + +msgid "You must select at least one repository." +msgstr "Devi selezionare almeno un deposito." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Configura la tua Gallery" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Prima di continuare, devi cambiare alcuni permessi in modo che Gallery possa installare i " +"plugin al posto tuo. È facile. Basta eseguire quanto segue in una shell o nel tuo client ftp:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Se hai problemi nella modifica dei permessi, chiedi assistenza all'amministratore del tuo " +"sistema. Quando hai risolto i problemi con i permessi, clicca sul bottone Continua per " +"procedere." + +msgid "Continue" +msgstr "Continua" + +msgid "Download Plugin List" +msgstr "Scarica Lista Plugin" + +msgid "Show Repository List" +msgstr "Visualizza Lista Depositi" + +msgid "Upgrade Gallery" +msgstr "Aggiorna Gallery" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"È disponibile una nuova versione di Gallery, ma non può essere aggiornata tramite questa " +"interfaccia. L'aggiornamento potrebbe rendere inutilizzabili alcuni dei tuoi attuali plugin, " +"ma altri che si basano sulle funzioni della nuova versione potrebbero rendersi disponibili. " +"Queste sono le fasi consigliate per effettuare l'aggiornamento:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sScarica%s il core di Gallery" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Leggi le %sistruzioni per l'aggiornamento%s ed esegui l'aggiornamento" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "I plugin incompatibili sono segnati con un'icona di esclamazione." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"È disponibile una nuova versione del modulo core. Ci possono essere dei plugin incompatibili " +"con il modulo core installato, che qui non sono mostrati. Puoi vedere una %slista completa%s " +"dei plugin, compresi quelli incompatibili, che sono contrassegnati da un'icona rossa." + +msgid "upgrade available" +msgstr "aggiornamento disponibile" + +msgid "locked" +msgstr "bloccato" + +msgid "Theme Name" +msgstr "Nome Tema" + +msgid "Module Name" +msgstr "Nome Modulo" + +msgid "Latest" +msgstr "Più recente" + +msgid "Locked Plugin" +msgstr "Plugin Bloccato" + +msgid "Incompatible Plugin" +msgstr "Plugin Incompatibile" + +msgid "Upgrade Available" +msgstr "Aggiornamento Disponibile" + +msgid "download" +msgstr "scarica" + +msgid "modify" +msgstr "modifica" + +msgid "Upgrade All Plugins" +msgstr "Aggiorna Tutti i Plugin" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery può aggiornare automaticamente i tuoi temi e i moduli alle versioni più recenti a " +"disposizione. Non verrà scaricato nessun nuovo plugin." + +msgid "Upgrade All" +msgstr "Aggiorna Tutto" + +#, c-format +msgid "Download %s" +msgstr "Scarica %s" + +msgid "No packages have been selected." +msgstr "Non è stato selezionato nessun pacchetto." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Scarica un pacchetto per usare questo plugin. Puoi fare l'aggiornamento scegliendo una nuova " +"versione del pacchetto da scaricare. I pacchetti lingua sono facoltativi, scarica solo " +"quelle che desideri utilizzare nel tuo sito." + +msgid "Base Packages" +msgstr "Pacchetti Base" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: versione %s (build %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: versione %s (build %s) %sil downgrading non è supportato!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sAttualmente Installato%s: versione %s (build %s)" + +msgid "Language Packages" +msgstr "Pacchetti Lingua" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%sseleziona tutti%s%sdeseleziona tutti%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s versione %s (aggiornamento da %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s versione %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s versione %s (%sla nuova versione %s è installata%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s versione %s (attualmente installata)" + +msgid "No compatible language packages available" +msgstr "Nessun pacchetto lingua compatibile disponibile" + +msgid "You must select a base package before choosing language packs." +msgstr "Devi selezionare un pacchetto base prima di selezionare un pacchetto lingua." + +msgid "Update" +msgstr "Aggiorna" + +msgid "Gallery Themes" +msgstr "Temi di Gallery" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Tema %s attivato con successo" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Tema %s disattivato con successo" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Tema %s installato con successo" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Tema %s disinstallato con successo" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Tema %s aggiornato con successo" + +msgid "Successfully saved default album settings" +msgstr "Salvataggio configurazione predefinita album avvenuto con successo" + +msgid "Restored theme settings" +msgstr "Configurazione tema ripristinata" + +msgid "Defaults" +msgstr "Valori Predefiniti" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Questi sono i valori predefiniti per la visualizzazione degli album nella tua galleria. " +"Possono essere scavalcati in ogni singolo album." + +msgid "Default sort order" +msgstr "Ordinamento predefinito" + +msgid "with" +msgstr "con" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" +"Il tema %s è incompatibile con la tua versione di Gallery oppure non è più disponibile. " +"Aggiorna il tema %s o scegli un altro tema predefinito." + +msgid "New albums" +msgstr "Nuovi album" + +msgid "Save Defaults" +msgstr "Salva Predefiniti" + +#, c-format +msgid "%s Theme Settings" +msgstr "Configurazione Tema %s" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Questi sono i settaggi globali per il tema. Possono essere scavalcati a livello di album." + +msgid "Available" +msgstr "Disponibile" + +msgid "Choose a block" +msgstr "Seleziona un blocco" + +msgid "Selected" +msgstr "Selezionato" + +msgid "Remove" +msgstr "Elimina" + +msgid "Move Up" +msgstr "Sposta in Alto" + +msgid "Move Down" +msgstr "Sposta in Basso" + +msgid "Parameter" +msgstr "Parametro" + +msgid "Value" +msgstr "Valore" + +msgid "There are no settings for this theme" +msgstr "Non ci sono settaggi per questo tema" + +msgid "Save Theme Settings" +msgstr "Salva Configurazione Tema" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Gli strumenti mostrati qui sotto presentano delle sovrapposizioni nelle operazioni " +"supportate e nei tipi mime. Classifica gli strumenti per determinare quale eseguirà queste " +"operazioni." + +msgid "Toolkit" +msgstr "Strumenti" + +msgid "Order" +msgstr "Ordina" + +msgid "up" +msgstr "su" + +msgid "down" +msgstr "giù" + +msgid "User Management" +msgstr "Gestione Utenti" + +#, c-format +msgid "Removed user '%s'" +msgstr "Utente '%s' rimosso" + +#, c-format +msgid "Created user '%s'" +msgstr "Utente '%s' creato" + +#, c-format +msgid "Modified user '%s'" +msgstr "Utente '%s' modificato" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "C'è %d utente nel sistema." +msgstr[1] "Ci sono %d utenti in totale nel sistema." + +msgid "Edit User" +msgstr "Modifica Utente" + +msgid "You cannot delete yourself!" +msgstr "Non puoi eliminare te stesso!" + +msgid "You cannot delete the special guest user." +msgstr "Non puoi eliminare il visitatore speciale." + +msgid "Edit User (by list)" +msgstr "Modifica Utente (da lista)" + +msgid "Locked" +msgstr "Bloccato" + +msgid "Failed Logins" +msgstr "Login Falliti" + +msgid "Thumbnails" +msgstr "Anteprime" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery può creare le anteprime al momento dell'upload, o crearle la prima volta che le " +"visualizzi. In ogni caso crea l'anteprima una volta e la salva, ma se la crei durante " +"l'upload, la prima volta che visualizzi l'album sarà più veloce, a scapito di un " +"prolungamento del tempo di upload." + +msgid "Create thumbnails now" +msgstr "Crea anteprime adesso" + +msgid "This is a test email from Gallery2" +msgstr "Questa è un'email di test di Gallery2" + +msgid "Edit Conflict!" +msgstr "Conflitto di Modifica!" + +msgid "Security Violation" +msgstr "Violazione della Sicurezza" + +msgid "Database Error" +msgstr "Errore Database" + +msgid "Platform Error" +msgstr "Errore di Piattaforma" + +msgid "Authentication Failure" +msgstr "Fallimento Autenticazione" + +msgid "Error" +msgstr "Errore" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"La tua modifica non può essere portata a termine perché qualcun altro ha fatto una modifca " +"in conflitto sullo stesso oggetto. Usa il pulsante indietro del browser per tornare alla " +"pagina in cui eri, poi ricarica quella pagina e prova a fare la modifica di nuovo." + +msgid "Go back and try again" +msgstr "Torna indietro e prova di nuovo" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Se questo problema si ripete, può essere a causa di una corruzione nella cache. Gli " +"Amministratori del Sito possono svuotare questa cache." + +msgid "Clear the cache" +msgstr "Svuota la cache" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"In alternativa, puoi tornare alla pagina principale di Gallery e riprendere la navigazione." + +msgid "The action you attempted is not permitted." +msgstr "L'azione che hai tentato di compiere non è permessa." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"La tua modifica non può essere completata a causa della perdita dei dati della sessione. Se " +"continua a non funzionare, prova a disconnetterti e a rifare il login." + +msgid "An error has occurred while interacting with the database." +msgstr "Si è verificato un errore durante l'interazione con il database." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"L'esatta natura degli errori del database non viene catturata a meno che in config.php non " +"sia attivata la modalità debug di Gallery. Prima di cercare supporto per questo errore, " +"attiva l'output di buffered debug e riprova l'operazione. Guarda verso la fine dell'output " +"di debug per trovare dettagli dell'errore." + +msgid "An error has occurred while interacting with the platform." +msgstr "Si è verificato un errore durante l'interazione con la piattaforma." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"L'esatto errore sulla natura della piattaforma è sconosciuto. Una causa frequente è " +"l'insufficienza di autorizzazioni sul file system. Questo può succedere se tu o il tuo " +"webhost avete cambiato qualcosa nel file system, come ad esempio ripristinare dati da un " +"backup." + +msgid "Item not found." +msgstr "Oggetto non trovato." + +msgid "An error has occurred." +msgstr "Si è verificato un errore." + +msgid "Back to the Gallery" +msgstr "Torna a Gallery" + +msgid "Error Detail" +msgstr "Dettaglio Errore" + +msgid "System Information" +msgstr "Informazioni Sistema" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Non hai alcun set di strumenti grafici attivato che possa gestire le immagini JPEG. Se " +"aggiungi delle immagini, probabilmente non avrai alcuna anteprima." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" +"Visita la pagina dei Modules per attivare un set di strumenti grafici." + +msgid "Add Sub-Album" +msgstr "Aggiungi Sotto-Album" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Il nome di questo album sul tuo hard disk. Deve essere unico in questo album. Usa " +"solamente caratteri alfanumerici, underscore o trattini. Potrai rinominarlo più tardi." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Il tuo nome contiene caratteri non validi. Inseriscine un altro." + +msgid "You must enter a name for this album." +msgstr "Devi inserire il nome per questo album." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Il nome che hai inserito è già in uso. Inseriscine un altro." + +msgid "This is the album title." +msgstr "Questo è il titolo dell'album." + +msgid "This is the album summary." +msgstr "Questo è il sommario dell'album." + +msgid "Keywords are not visible, but are searchable." +msgstr "Le keywords non sono visibili, ma sono ricercabili." + +msgid "This is the long description of the album." +msgstr "Questa è la descrizione estesa dell'album." + +msgid "Create" +msgstr "Crea" + +msgid "Upload Complete" +msgstr "Upload Completato" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d file aggiunto con successo." +msgstr[1] "%d file aggiunti con successo." + +msgid "No files added." +msgstr "Nessun file aggiunto." + +#, c-format +msgid "Added %s" +msgstr "%s aggiunto" + +#, c-format +msgid "Failed to add %s" +msgstr "Inserimento di %s fallito" + +msgid "Add more files" +msgstr "Aggiungi altri file" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Il tuo webserver è configurato in modo da non permettere l'upload tramite web browser. " +"Contatta l'amministratore di sistema per avere assistenza." + +msgid "Upload files directly from your computer." +msgstr "Carica i file direttamente dal tuo computer." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Inserisci il path completo del file e un'eventuale didascalia nei riquadri qui sotto." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Nota bene: Puoi caricare fino a %s alla volta. Se vuoi caricarne di più, devi " +"caricare i file separatamente, usare un altro formato di upload oppure chiedere " +"all'amministratore di permettere upload maggiori." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Nota bene: Puoi caricare fino a %s alla volta. Ogni singolo file non deve essere " +"maggiore di %s. Se vuoi caricarne di più, devi caricare i file separatamente, usare un " +"formato di upload oppure chiedere all'amministratore di permettere upload di file maggiori." + +msgid "More Upload Boxes..." +msgstr "Altri Box di Upload..." + +msgid "Set item titles from:" +msgstr "Imposta i titoli degli oggetti da:" + +msgid "Assign caption to:" +msgstr "Assegna didascalia a:" + +msgid "No Thumbnail" +msgstr "Nessuna Anteprima" + +msgid "Delete Items" +msgstr "Elimina Oggetti" + +msgid "No items were selected for deletion" +msgstr "Nessun oggetto è stato selezionato per l'eliminazione" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d file eliminato con successo." +msgstr[1] "%d file eliminati con successo." + +msgid "This album contains no items to delete" +msgstr "Questo album non contiene oggetti da eliminare" + +msgid "Choose the items you want to delete" +msgstr "Seleziona gli oggetti che desideri eliminare" + +#, c-format +msgid "(page %d of %d)" +msgstr "(pagina %d di %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" +"Gli oggetti selezionati qui rimarranno selezionati durante gli spostamenti tra le pagine." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Un oggetto selezionato in un'altra pagina." +msgstr[1] "%d oggetti selezionati in altre pagine." + +msgid "(data)" +msgstr "(dati)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(album contenente %d oggetto)" +msgstr[1] "(album contenente %d oggetti)" + +msgid "(empty album)" +msgstr "(album vuoto)" + +msgid "Check All" +msgstr "Seleziona Tutti" + +msgid "Check None" +msgstr "Deseleziona Tutto" + +msgid "Invert" +msgstr "Inverti" + +msgid "Previous Page" +msgstr "Pagina Precedente" + +msgid "Next Page" +msgstr "Pagina Successiva" + +msgid "Deletion Complete" +msgstr "Eliminazione Completata" + +msgid "Item successfully deleted" +msgstr "Oggetto eliminato con successo" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Sei sicuro di voler eliminare questo %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Contiene %d oggetto." +msgstr[1] "Contiene %d oggetti." + +msgid "There is no undo!" +msgstr "Non c'è la possibilità di annullare le modifiche!" + +msgid "There was a problem processing your request." +msgstr "C'è stato un problema nell'elaborazione della tua richiesta." + +msgid "Sort order" +msgstr "Ordinamento" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Questo stabilisce il tipo di ordinamento per l'album. Viene applicato a tutti gli oggetti e " +"anche a quelli aggiunti in futuro." + +msgid "Apply to all subalbums" +msgstr "Applica a tutti i sottoalbum" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "Ogni oggetto necessita un'anteprima. Imposta qui il valore predefinito in pixel." + +msgid "You must enter a number (greater than zero)" +msgstr "Devi inserire un numero (maggiore di zero)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Usa questa dimensione delle anteprime in tutti i sottoalbum" + +msgid "Resized Images" +msgstr "Immagini Ridimensionate" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Ogni oggetto nel tuo album può avere dimensioni differenti. Definisci qui le dimensioni " +"predefinite." + +msgid "Active" +msgstr "Attivo" + +msgid "Target Size (pixels)" +msgstr "Nuova Dimensione (pixel)" + +msgid "You must enter a valid size" +msgstr "Devi inserire una dimensione valida" + +msgid "Use these target sizes in all subalbums" +msgstr "Usa queste dimensioni desiderate in tutti i sottoalbum" + +msgid "Apply settings to existing items" +msgstr "Applica configurazione agli oggetti esistenti" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Le configurazioni delle anteprime e delle immagini ridimensionate sono valide per i nuovi " +"oggetti. Per applicare questi parametri a tutti gli oggetti dell'album, attiva l'opzione " +"appropriata. I sottoalbum inclusi applicheranno la configurazione di ciascun album alle " +"proprie anteprime/immagini ridimensionate, che potrebbero non corrispondere ai parametri qui " +"sopra. La generazione delle immagini rende più lunga quest'operazione, ma ti fa risparmiare " +"il tempo di generare e mettere in cache ogni file quando viene visualizzato per la prima " +"volta." + +msgid "Apply album setting to thumbnails" +msgstr "Applica la configurazione dell'album alle anteprime" + +msgid "... and for all subalbums" +msgstr "... e a tutti i sottoalbum" + +msgid "Build thumbnails too" +msgstr "Ricostruisci anche le anteprime" + +msgid "Apply album setting to resized images" +msgstr "Applica configurazione dell'album alle immagini ridimensionate" + +msgid "Build resizes too" +msgstr "Genera anche le immagini ridimensionate" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Affinché Gallery visualizzi correttamente questa animazione, bisogna farle sapere la " +"larghezza e l'altezza. Se hai installato un kit di strumenti grafici che gestisca questo " +"tipo di animazione, allora questi valori potrebbero essere già stati inseriti. Altrimenti, " +"potrebbe esserci uno 0. Se non inserisci i valori corretti, l'animazione potrà apparire " +"distorta quando visualizzata dal browser web. Nota che modificare questi valori non " +"modifica l'animazione in sé, così dei tentativi sbagliati non provocheranno alcun danno." + +msgid "Width" +msgstr "Larghezza" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Devi inserire un valore maggiore o uguale a 0" + +msgid "Height" +msgstr "Altezza" + +msgid "There were errors saving some items" +msgstr "Ci sono stati errori nel salvataggio di alcuni oggetti" + +msgid "There were errors saving all items" +msgstr "Ci sono stati errori nel salvataggio di tutti gli oggetti" + +msgid "Successfully saved all items" +msgstr "Tutti gli oggetti sono stati salvati con successo" + +msgid "This album contains no items" +msgstr "Questo album non contiene oggetti" + +msgid "Saved successfully." +msgstr "Salvato con successo." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"Questo oggetto è stato modificato da qualcun altro nello stesso momento. Le tue modifiche " +"sono andate perdute." + +msgid "You do not have permissions to modify this item." +msgstr "Non sei autorizzato a modificare questo oggetto." + +msgid "Save and Done" +msgstr "Salva e Chiudi" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Salva e Modifica Precedenti %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Salva e Modifica Prossimi %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Il nome di questo oggetto sul tuo hard disk. Deve essere unico in questo album. Usa " +"solamente caratteri alfanumerici, underscore o trattini." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Il tuo nome contiene caratteri non validi. Scegline un altro." + +msgid "You must enter a name for this item." +msgstr "Devi inserire il nome per questo oggetto." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Il nome che hai inserito è già in uso. Scegline un altro." + +msgid "The title of this item." +msgstr "Il titolo di questo oggetto." + +msgid "The root album must have a title." +msgstr "L'album radice deve avere un titolo." + +msgid "The summary of this item." +msgstr "Il sommario di questo oggetto." + +msgid "This is the long description of the item." +msgstr "Questa è la descrizione estesa dell'oggetto." + +#, c-format +msgid "%s Date and Time" +msgstr "Data e Ora %s" + +msgid "Set the date and time when this image was captured." +msgstr "Imposta data e ora con quelle dello scatto." + +msgid "Set the date and time to be displayed for this item." +msgstr "Visualizza data e ora di questo oggetto." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Visualizza data e ora di questo %s." + +msgid "Date:" +msgstr "Data:" + +msgid "Time:" +msgstr "Ora:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Usa la data o l'ora originali del momento dello scatto estratti dalle informazioni del file " +"(ad. es. Exif tag):" + +msgid "You must enter a valid date and time" +msgstr "Devi inserire data e ora valide" + +msgid "Thumbnail" +msgstr "Anteprima" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Imposta la dimensione dell'anteprima. Il lato più lungo dell'anteprima non sarà più grande " +"di questo valore. Lascia vuoto questo campo se non vuoi l'anteprima." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Non ci sono kit di strumenti grafici attivi che supportino questo tipo di oggetto, quindi " +"non è possibile creare o modificare l'anteprima." + +msgid "Unable to create a thumbnail for this item" +msgstr "Impossibile creare un'anteprima per questo oggetto" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Affinché Gallery visualizzi correttamente questo filmato, bisogna farle sapere la larghezza " +"e l'altezza del filmato. Se hai installato un kit di strumenti grafici che gestisca questo " +"tipo di filmato, allora questi valori potrebbero essere già stati inseriti. Altrimenti, " +"potrebbe esserci uno 0. Se non inserisci i valori corretti, il filmato potrà apparire " +"distorto quando visualizzato dal browser web. Nota che modificare questi valori non " +"modifica il filmato in sé, così dei tentativi sbagliati non provocheranno alcun danno." + +msgid "Resized Photos" +msgstr "Foto Ridimensionate" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Queste dimensioni sono versioni alternative ridimensionate degli originali che vorresti " +"fossero disponibili per la visione." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Non ci sono kit di strumenti grafici attivi che supportino questo tipo di foto, quindi non è " +"possibile creare o modificare la copia ridimensionata." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Puoi scegliere quale parte della foto sarà usata per l'anteprima. Questo non avrà alcun " +"effetto sulla versione ridimensionata od originale dell'immagine." + +msgid "Aspect Ratio: " +msgstr "Proporzioni Aspetto: " + +msgid "Crop" +msgstr "Ritaglia" + +msgid "Undo Changes" +msgstr "Annulla Modifiche" + +msgid "Reset to default" +msgstr "Rispristina valori predefiniti" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Non ci sono kit di strumenti grafici attivi che supportino questo tipo di foto, quindi non è " +"possibile ritagliare l'anteprima." + +msgid "Rotate" +msgstr "Ruota" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Puoi ruotare la foto solo di 90 gradi alla volta." + +msgid "CC 90°" +msgstr "90° in senso antiorario" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "90° in senso orario" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Non ci sono kit di strumenti grafici attivi che supportino questo tipo di foto, quindi non è " +"possibile ruotarla." + +msgid "Scale" +msgstr "Riscala" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Rimpicciolisci o ingrandisci la foto originale. Quando Gallery ridimensiona una foto, " +"mantiene le stesse proporzioni (altezza/larghezza) della foto originale per evitare " +"distorsioni. La foto verrà riscalata finché non entrerà in un ipotetico riquadro della " +"dimensione inserita qui." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Non ci sono kit di strumenti grafici attivi che supportino questo tipo di foto, quindi non è " +"possibile ridimensionarla." + +msgid "You must enter a size" +msgstr "Devi inserire una dimensione" + +msgid "Preserve Original" +msgstr "Mantieni l'Originale" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Gallery non modifica le tue foto originali quando applichi rotazioni o ridimensionamenti. " +"Crea invece un duplicato della tua foto e lavora sulle copie. Questo porta via un po' più " +"di spazio su disco ma assicura che i tuoi originali non vengano danneggiati. Disabilitando " +"questa opzione, ogni azione (rotazione, ridimensionamento, etc.) modificherà l'originale." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Questo è un link a un'altra foto, quindi non puoi modificare l'originale" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Ci sono link che puntano a questa foto, quindi non puoi modificare l'originale" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"I set di strumenti non supportano la modifica dell'originale quindi le operazioni possono " +"essere applicate solo alle copie" + +msgid "Preserve Original Photo" +msgstr "Mantieni la Foto Originale" + +msgid "Modified Photo" +msgstr "Foto Modificata" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Stai usando una copia della foto originale che è stata riscalata o ruotata. La foto " +"originale è sempre disponibile, ma non è più utilizzata. Le modifiche che farai saranno " +"applicate solo alla copia." + +msgid "Restore original" +msgstr "Ripristina l'originale" + +msgid "Choose a theme" +msgstr "Seleziona un tema" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" +"Questo album è configurato per usare il tema %s che è incompatibile con questa versione di " +"Gallery oppure non è più disponbiile. Per favore aggiorna il tema %s oppure usa un altro " +"tema per questo album." + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"I temi controllano l'aspetto grafico dell'album. Puoi scegliere diversi temi per ciascun " +"album. Se non selezioni un tema, useremo come predefinito il tema %s." + +msgid "Use this theme in all subalbums" +msgstr "Usa questo tema in tutti i sottoalbum" + +msgid "Choose Theme" +msgstr "Scegli il Tema" + +#, c-format +msgid "Configure the %s theme" +msgstr "Configura il tema %s" + +msgid "These settings only apply to the theme for this album." +msgstr "Questa configurazione si applica solo al tema di questo album." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Utilizza questa configurazione in tutti i sottoalbum che usano il tema %s" + +msgid "Album Highlight" +msgstr "Copertina Album" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" +"Puoi rendere questo oggetto l'anteprima dell'album di livello superiore o di un album " +"antenato." + +msgid "Highlight for:" +msgstr "Fanne la Copertina di:" + +msgid "Highlight" +msgstr "Copertina" + +msgid "Move an Item" +msgstr "Sposta un Oggetto" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d file spostato con successo" +msgstr[1] "%d file spostati con successo" + +msgid "This album contains no items to move." +msgstr "Questo album non contiene oggetti da spostare" + +msgid "Source" +msgstr "Sorgente" + +msgid "Choose the items you want to move" +msgstr "Seleziona gli oggetti che desideri spostare" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"La destinazione che hai scelto non accetta sotto-album, così tutti i sotto-album sono stati " +"deselezionati." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"La destinazione che hai scelto accetta solo sotto-album, così tutti i non-album sono stati " +"deselezionati." + +msgid "You are not allowed to move this item away from here." +msgstr "Non sei autorizzato a spostare questo oggetto." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Non sei autorizzato a spostare un album nella destinazione selezionata." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Non sei autorizzato a spostare un oggetto nella destinazione selezionata." + +msgid "You cannot move an album into its own subtree." +msgstr "Non puoi spostare un album nel suo sotto-albero." + +msgid "Destination" +msgstr "Destinazione" + +msgid "Choose a new album for them" +msgstr "Seleziona un nuovo album per loro" + +msgid "You don't have the permission to add items in this album" +msgstr "Non sei autorizzato ad aggiungere oggetti in questo album" + +msgid "No destination chosen" +msgstr "Nessuna destinazione selezionata" + +msgid "Move" +msgstr "Sposta" + +msgid "Successfully moved" +msgstr "Spostamento effettuato con successo" + +msgid "Choose a destination album" +msgstr "Scegli un album di destinazione" + +msgid "Permissions" +msgstr "Permessi" + +msgid "Owner changed successfully" +msgstr "Proprietario modificato con successo" + +msgid "Group permission added successfully" +msgstr "Permessi di gruppo aggiunti con successo" + +msgid "User permission added successfully" +msgstr "Permessi dell'utente aggiunti con successo" + +msgid "Group permission removed successfully" +msgstr "Permessi di gruppo rimossi con successo" + +msgid "User permission removed successfully" +msgstr "Permessi dell'utente rimossi con successo" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Ogni oggetto ha il suo set indipendente di permessi. Modificando i permessi al livello " +"superiore non vengono modificati quelli dei livelli inferiori. Questo ti permette di " +"limitare l'accesso al genitore di questo oggetto, ma ti permette pieno accesso a questo, " +"oppure viceversa. Il modo più efficiente di usare questo sistema di permessi è di creare " +"dei gruppi e di assegnare loro i permessi. Poi, se vuoi concedere delle autorizzazioni a un " +"utente specifico, puoi inserire (o rimuovere) l'utente dal gruppo appropriato." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Questo oggetto è di proprietà dell'utente: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Questo oggetto è di proprietà dell'utente: %s (%s)" + +msgid "New owner" +msgstr "Nuovo proprietario" + +msgid "Change" +msgstr "Modifica" + +msgid "Apply new owner to sub-items" +msgstr "Applica il nuovo proprietario agli oggetti sottostanti" + +msgid "You must enter a user name" +msgstr "Devi inserire un nome utente" + +msgid "The user name you entered is invalid" +msgstr "Il nome utente che hai inserito non è valido" + +msgid "Apply changes" +msgstr "Applica Modifiche" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Questo oggetto possiede dei sotto-oggetti. Le modifiche che fai qui possono essere " +"applicate solo a questo oggetto, oppure puoi applicarle a tutti i sotto-oggetti. Nota che " +"applicando le modifiche ai sotto-oggetti i cambiamenti andranno a fondersi con i permessi " +"esistenti dei sotto-oggetti e il processo potrebbe rivelarsi lungo se ci sono molti sotto-" +"oggetti. Sarebbe più efficiente concedere i permessi ai gruppi e poi aggiungere e rimuovere " +"gli utenti dai gruppi quando possibile. Le modifiche vengono applicate ai sotto-oggetti di " +"default." + +msgid "Apply to sub-items" +msgstr "Applica agli oggetti sottostanti" + +msgid "Group Permissions" +msgstr "Permessi Gruppo" + +msgid "Group name" +msgstr "Nome gruppo" + +msgid "Permission" +msgstr "Permesso" + +msgid "New Group Permission" +msgstr "Nuovi Permessi Gruppo" + +msgid "Add Permission" +msgstr "Aggiungi Permesso" + +msgid "The permission you chose is invalid" +msgstr "L'autorizzazione che hai scelto non è valida" + +msgid "The group name you entered is invalid" +msgstr "Il nome per il gruppo che hai inserito non è valido" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Il gruppo possiede già queste autorizzazioni (controlla le sotto-autorizzazioni)" + +msgid "User Permissions" +msgstr "Permessi Utente" + +msgid "User name" +msgstr "Nome utente" + +msgid "New User Permission" +msgstr "Nuovi Permessi Utente" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "L'utente ha già questa autorizzazione (controlla le sotto-autorizzazioni)" + +msgid "Reorder Album" +msgstr "Riordina Album" + +msgid "Order saved successfully" +msgstr "Ordine salvato con successo" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Questo album ha un ordinamento automatico specifico, quindi non puoi modificare manualmente " +"l'ordine degli oggetti. Devi togliere l'odinamento automatico prima di continuare." + +msgid "change" +msgstr "modifica" + +msgid "Change the order of the items in this album." +msgstr "Cambia l'ordine degli oggetti in questo album." + +msgid "Move this item" +msgstr "Sposta questo oggetto" + +msgid "before" +msgstr "prima di" + +msgid "after" +msgstr "dopo di" + +msgid "Reorder" +msgstr "Riordina" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"JavaScript deve essere abilitato per far funzionare correttamente questa pagina. Tuttavia, " +"sembra che JavaScript sia disabilitato o non sia supportato dal tuo browser. Attiva " +"JavaScript modificando le opzioni del tuo browser, poi prova di nuovo." + +msgid "Site is temporarily down for maintenance." +msgstr "Il sito è temporaneamente chiuso per manutenzione." + +msgid "Admin Login" +msgstr "Login Amministrazione" + +msgid "Enter a URL" +msgstr "Inserisci un URL" + +msgid "Enter some text describing the URL" +msgstr "Inserisci del testo che descriva l'URL" + +msgid "Enter an image URL" +msgstr "Inserisci l'URL di un'immagine" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "lista" + +msgid "bullet" +msgstr "puntino" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "immagine" + +msgid "color" +msgstr "colore" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "Puoi usare anche il nome del colore per esempio: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Errore nella Configurazione: Tema Mancante" + +msgid "Missing Theme" +msgstr "Tema Mancante" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Questa pagina è configurata per usare il tema %s, ma non è attivo, non è installato, oppure " +"non è compatibile." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Questo album è configurato per usare il tema %s, ma non è attivo, non è installato, oppure " +"non è compatibile." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Per risolvere questo problema puoi %sinstallare o attivare questo tema%s oppure selezionarne " +"un altro." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Per risolvere questo problema puoi %sconnetterti come amministratore%s e poi %sinstallare o " +"attivare questo tema%s oppure selezionarne un altro." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Per risolvere questo problema puoi %sscegliere un nuovo tema per questo album%s oppure %" +"sinstallare o attivare questo tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Per risolvere questo problema puoi %sscegliere un nuovo tema per questo album%s oppure %" +"sentrare come amministratore del sito%s e poi %sinstallare o attivare questo tema%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Per risolvere questo problema puoi %sloggarti%s e poi %sscegliere un nuovo tema per questo " +"album%s oppure %sentrare come amministratore del sito%s e poi %sinstallare o attivare questo " +"tema%s." + +msgid "Admin Options" +msgstr "Opzioni Amministrazione" + +msgid "User Options" +msgstr "Opzioni Utenti" + +msgid "Password changed successfully" +msgstr "Password modificata con successo" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Devi inserire la tua password corrente per provare che sei tu, poi inserisci la nuova " +"password due volte per essere sicuro di non aver commesso errori." + +msgid "Current Password" +msgstr "Password Corrente" + +msgid "You must enter your current password" +msgstr "Devi inserire la password corrente" + +msgid "Incorrect password" +msgstr "Password non corretta" + +msgid "New Password" +msgstr "Nuova Password" + +msgid "You must enter a new password" +msgstr "Devi inserire una nuova password" + +msgid "Verify New Password" +msgstr "Verifica Nuova Password" + +msgid "You must enter your new password again!" +msgstr "Devi inserire la tua nuova password di nuovo!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Questo account non è autorizzato a modificare la configurazione dell'account. Contatta " +"l'amministratore di Gallery" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"L'amministratore ha bloccato questo account, in modo da non permettere le modifiche alle " +"informazioni dell'account." + +msgid "Login to your account" +msgstr "Accedi con il tuo nome utente" + +msgid "Your password has been recovered, please login." +msgstr "La tua password è stata recuperata, ora puoi fare il login." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Il login con questo account è temporaneamente disabilitato a causa di troppi tentativi di " +"login falliti. Attendi che l'accesso venga ripristinato, oppure usa la pagina di recupero password per riattivare questo account." + +msgid "Your login information is incorrect. Please try again." +msgstr "Le tue informazioni di login non sono corrette. Prova ancora." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Le password perdute o dimenticate possono essere richieste usando la pagina recupera password" + +#, c-format +msgid "Welcome, %s!" +msgstr "Benvenuto, %s!" + +msgid "Account settings saved successfully" +msgstr "Configurazione account salvata con successo" + +msgid "(required, password required for change)" +msgstr "(obbligatorio, password necessaria per fare modifiche)" + +msgid "(suggested, password required for change)" +msgstr "(consigliato, password necessaria per fare modifiche)" + +msgid "(required to change the e-mail address)" +msgstr "(necessaria per modificare l'indirizzo email)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Devi inserire la password corrente per modificare l'indirizzo email" + +msgid "Recover a lost or forgotten password" +msgstr "Recupera la password perduta oppure dimenticata" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Il recupero della password implica che il tuo account utente abbia un indirizzo email " +"assegnato, e che tu abbia accesso a tale indirizzo. Ti verrà inviata un'email di conferma " +"contentente un'URL che dovrai visitare per impostare una nuova password per il tuo account. " +"Per prevenire gli abusi, le richieste di recupero password non possono essere attivate più " +"di una volta ogni 20 minuti. La conferma di recupero rimane valida per 7 giorni. Se non " +"viene utilizzata entro quel periodo, verrà eliminata e sarà necessario fare una nuova " +"richiesta." + +msgid "Your recovery request has been sent!" +msgstr "La tua richiesta di recupero è stata inviata!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Nota che se l'account non ha un indirizzo email, potresti non ricevere l'email e dovrai " +"contattare l'amministratore di sistema per chiedere aiuto." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Gli amministratori possono usare la pagina per il %sRecupero Password di Emergenza%s per " +"recuperare l'account di amministratore se non riescono a ricevere l'email di recupero in " +"caso di problemi al server o mancanza di un indirizzo email funzionante." + +msgid "Recover" +msgstr "Recupera" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Per procedere nell'installazione, dobbiamo verificare che tu sia davvero chi dici di essere. " +"Il miglior modo per assicurarcene, è di chiederti di fare un piccolo cambiamento nella " +"directory di Gallery che provi che hai i permessi giusti. Così ti chiediamo di creare un " +"nuovo file di testo chiamato %s nella directory di Gallery. Deve contenere i seguenti " +"caratteri generati casualmente:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Per tua convenienza, ti abbiamo preparato una %sversione corretta di login.txt%s. Scaricalo " +"e copialo nella directory di installazione ed ecco fatto." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Una volta caricato il file, clicca qui sotto per continuare." + +msgid "Emergency Administrator Password Reset" +msgstr "Reset di Emergenza Password Amministratore" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Questa pagina ti permette a un amministratore di sitema di resettare in sicurezza la " +"password di qualsiasi account." + +msgid "Authorization Confirmed" +msgstr "Autorizzazione Confermata" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"La tua autorizzazione è stata confermata. Inserisci la tua nuova password qui sotto. Dopo " +"aver impostato la nuova password verrai portato nella pagina di login." + +msgid "Recover Password for Username" +msgstr "Recupero Password per NomeUtente" + +msgid "You must enter a username to recover the password for." +msgstr "Devi inserire un nome utente per cambiargli la password." + +msgid "The username you entered does not exist." +msgstr "Il nome utente che hai inserito non esiste." + +msgid "Authorization Incorrect" +msgstr "Autorizzazione Non Corretta" + +msgid "Recovery Instructions" +msgstr "Istruzioni per il Recupero" + +msgid "AuthFile Missing" +msgstr "AuthFile Mancante" + +msgid "AuthFile Unreadable" +msgstr "AuthFile Illeggibile" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Il file %s non è leggibile. Dai a Gallery i permessi di lettura nel file." + +msgid "Refresh" +msgstr "Aggiorna" + +msgid "This page will allow you to reset the password on your account." +msgstr "Questa pagina ti permette di resettare la password del tuo account." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Non ci sono richieste che coincidono con il nome utente e l'autorizzazione che hai fornito. " +"Richiedi una nuova autorizzazione nella pagina recupero password." + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"La richiesta a cui stai cercando di accedere è scaduta. Fa' una nuova richiesta nella pagina " +"recupero password." + +msgid "Authorization missing" +msgstr "Autorizzazione mancante" + +msgid "Username missing" +msgstr "Nome utente mancante" + +msgid "Submit" +msgstr "Invia" + +#, c-format +msgid "Hello %s," +msgstr "Ciao %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"Hai ricevuto questa email perché è stata inoltrata una richiesta per il recupero della " +"password per %s da %s presso %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Il tuo nome utente è: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Per terminare il processo di recupero della password, clicca sul link che segue e inserisci " +"l'informazione richiesta:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "" +"Se non sei stato tu a richiedere questa email di recupero, puoi ignorarla tranquillamente." + +msgid "Thank you!" +msgstr "Grazie!" + +msgid "guest" +msgstr "visitatore" + +#, c-format +msgid "display mode: %s" +msgstr "modalità visualizzazione: %s" + +#, c-format +msgid "Date: %s" +msgstr "Data: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Proprietario: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Dimensione: %d oggetto" +msgstr[1] "Dimensione: %d oggetti" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(%d oggetto in totale)" +msgstr[1] "(%d oggetti in totale)" + +#, c-format +msgid "Views: %d" +msgstr "Visite: %d" + +msgid "« album actions »" +msgstr "« azioni album »" + +msgid "« item actions »" +msgstr "« azioni oggetto »" + +msgid "Go" +msgstr "Vai" + +msgid "Navigation" +msgstr "Navigazione" + +msgid "next" +msgstr "prossimo" + +msgid "last" +msgstr "ultimo" + +#, c-format +msgid "Page %d of %d" +msgstr "Pagina %d di %d" + +#, c-format +msgid "%d of %d" +msgstr "%d di %d" + +msgid "first" +msgstr "primo" + +msgid "previous" +msgstr "precedente" + +msgid "Page:" +msgstr "Pagina:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Dimensione:" + +msgid "Unknown" +msgstr "Sconosciuto" + +msgid "Full size: " +msgstr "Dimensione piena:" + +msgid "Setting" +msgstr "Configurazione" + +msgid "Use Global" +msgstr "Usa Globali" + +msgid "Language selector" +msgstr "Selettore lingua" + +msgid "Item actions" +msgstr "Azioni oggetto" + +msgid "Use dropdown menu" +msgstr "Usa menu a discesa" + +msgid "Login block" +msgstr "Blocco di login" + +msgid "Links to album/photo peers" +msgstr "Link ai peers della foto/album" diff --git a/Source/gallery2/modules/core/po/ja.po b/Source/gallery2/modules/core/po/ja.po new file mode 100644 index 0000000..b919fe7 --- /dev/null +++ b/Source/gallery2/modules/core/po/ja.po @@ -0,0 +1,3603 @@ +# $Id: ja.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +# Previous translators (as far as known, add yourself here, please): +# - Kennichi Uehara +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-15 15:18+0900\n" +"Last-Translator: Yosuke Suzuki \n" +"Language-Team: Japanese \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgid "Gallery Email Test" +msgstr "Gallery 電子メールテスト" + +msgid "forever" +msgstr "永久" + +msgid "High Priority (Me first!)" +msgstr "優先度高 (わたしを最初に!)" + +msgid "Low Priority (I want to share!)" +msgstr "優先度低 (共有したい!)" + +msgid "No Markup" +msgstr "マークアップなし" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "生の HTML" + +msgid "Database" +msgstr "データベース" + +msgid "File" +msgstr "ファイル" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d 分" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d 時間" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d 日" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d 週間" + +msgid "" +msgstr "<なし>" + +msgid "No acceleration" +msgstr "高速化なし" + +msgid "Partial acceleration" +msgstr "部分的な高速化" + +msgid "Full acceleration" +msgstr "フル高速化" + +msgid "Themes" +msgstr "テーマ" + +msgid "Updating Repository Index" +msgstr "レポジトリインデックスをアップデート" + +msgid "Scanning plugins" +msgstr "プラグインをスキャンしています" + +msgid "Update Plugin List" +msgstr "プラグインリストを更新" + +msgid "Done." +msgstr "完了" + +msgid "Updating Packages" +msgstr "パッケージを更新しています" + +#, c-format +msgid "Preparing %s" +msgstr "%s を準備中" + +#, c-format +msgid "Downloading %s" +msgstr "%s をダウンロード中" + +#, c-format +msgid "Activating %s" +msgstr "%s を有効化中" + +msgid "Deleting Language Packs" +msgstr "言語パックを削除中" + +#, fuzzy +msgid "Update completed with errors." +msgstr "アップデートは完了したが、エラーが発生しました" + +msgid "Update complete." +msgstr "更新完了" + +msgid "install" +msgstr "インストール" + +msgid "upgrade" +msgstr "アップグレード" + +msgid "activate" +msgstr "有効化" + +msgid "uninstall" +msgstr "アンインストール" + +msgid "deactivate" +msgstr "無効化" + +msgid "Inherit settings from parent album" +msgstr "親アルバムから設定を継承する" + +msgid "Use these settings" +msgstr "これらの設定を使う" + +msgid "Installing the core module" +msgstr "Gallery Core モジュールをインストール中" + +msgid "key" +msgstr "キー" + +msgid "All access" +msgstr "全てのアクセス" + +msgid "[core] View item" +msgstr "[core] アイテムの閲覧" + +msgid "[core] View resized version(s)" +msgstr "[core] リサイズされたバージョンの閲覧" + +msgid "[core] View original version" +msgstr "[core] オリジナルバージョンの閲覧" + +msgid "[core] View all versions" +msgstr "[core] 全てのバージョンの閲覧" + +msgid "[core] Add sub-album" +msgstr "[core] サブアルバム追加" + +msgid "[core] Add sub-item" +msgstr "[core] サブアイテム追加" + +msgid "[core] Edit item" +msgstr "[core] アイテムの編集" + +msgid "[core] Change item permissions" +msgstr "[core] アイテムパーミッション変更" + +msgid "[core] Delete item" +msgstr "[core] アイテム削除" + +msgid "Upgrading permissions" +msgstr "パーミッションをアップグレード" + +msgid "Deleting old permission tables" +msgstr "古いパーミッションテーブルを削除しています" + +msgid "Registered Users" +msgstr "登録済みユーザ" + +msgid "All Users" +msgstr "全てのユーザー" + +msgid "Detecting broken derivatives" +msgstr "壊れた派生物を検出" + +msgid "Clearing fast-download cache" +msgstr "高速ダウンロードキャッシュをクリアしています" + +msgid "Deleting old fast-download cache" +msgstr "古い高速ダウンロードキャッシュをクリアしています" + +msgid "Updating panorama items" +msgstr "パノラマアイテムをアップデート" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "AccessSubscriberMap テーブルを最適化する" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "サイト管理者" + +msgid "Everybody" +msgstr "全員" + +msgid "Guest" +msgstr "ゲスト" + +msgid "Gallery" +msgstr "Gallery" + +msgid "This is the main page of your Gallery" +msgstr "これはあなたのGalleryのメインページです" + +msgid "Converting MySQL data to UTF8" +msgstr "MySQLのデータをUTF8に変換する" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "パーミッションを更新中( %d の項目が完了、残り %d)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "壊れた派生物を検出しています ロード中 (%d がチェック済み、残り %d)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "壊れた派生物を検出しています ロード中 (%d がチェック済み、残り %d)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "壊れた派生物を検出しています 保存中 (%d がチェック済み、残り %d)" + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "パーミッションを更新中( %d の項目が完了、残り %d)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "古いセッションファイルを削除しています ( %d の繰り返し)" + +msgid "add items" +msgstr "アイテム追加" + +msgid "Album created successfully." +msgstr "アルバム作成に成功しました。" + +msgid "add sub-album" +msgstr "サブアルバム追加" + +msgid "add items confirmation" +msgstr "アイテムの確認を追加する" + +msgid "Base filename" +msgstr "ベースファイル名" + +msgid "Caption" +msgstr "キャプション" + +msgid "Blank" +msgstr "ブランク" + +msgid "From Web Browser" +msgstr "ブラウザから" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d MB" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kB" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Gallery アイテム管理" + +msgid "delete an item" +msgstr "アイテム削除" + +msgid "delete confirmation" +msgstr "削除の確認" + +#, c-format +msgid "delete %s" +msgstr "%s 削除" + +#, c-format +msgid "edit %s" +msgstr "%s 編集" + +msgid "Settings saved successfully." +msgstr "設定の保存に成功しました。" + +msgid "Apply resized image settings" +msgstr "リサイズされた画像の設定を適用" + +msgid "Preparing..." +msgstr "準備中..." + +msgid "Apply thumbnail settings" +msgstr "サムネイル設定を適用" + +msgid "Rebuilding thumbnails..." +msgstr "サムネイルを再構築しています・・・" + +msgid "Album" +msgstr "アルバム" + +#, c-format +msgid "Processing image %d of %d" +msgstr "画像処理 %d / %d" + +msgid "Changes saved successfully" +msgstr "変更の保存に成功しました。" + +msgid "Animation Size" +msgstr "アニメーションサイズ" + +msgid "edit captions" +msgstr "キャプションを編集" + +msgid "General" +msgstr "全般" + +msgid "Movie Size" +msgstr "動画のサイズ" + +msgid "Photo" +msgstr "画像" + +msgid "Thumbnail cropped successfully" +msgstr "サムネイルのトリミングに成功しました" + +msgid "Thumbnail reset successfully" +msgstr "サムネイルのリセットに成功しました" + +msgid "Photo 5x3" +msgstr "画像 5x3" + +msgid "Photo 6x4" +msgstr "画像 6x4" + +msgid "Photo 7x5" +msgstr "画像 7x5" + +msgid "Photo 10x8" +msgstr "画像 10x8" + +msgid "Fullscreen 4x3" +msgstr "フルスクリーン 4x3" + +msgid "Widescreen 16x9" +msgstr "ワイドスクリーン 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "シネマスコープ 2.35x1" + +msgid "Square 1x1" +msgstr "正方形 1x1" + +msgid "As Image" +msgstr "編集として" + +msgid "Landscape" +msgstr "横長" + +msgid "Portrait" +msgstr "ポートレイト" + +msgid "Crop Thumbnail" +msgstr "サムネイルのトリミング" + +msgid "Reverted rotate and scale changes successfully" +msgstr "画像の反転とスケール変更に成功しました" + +msgid "Rotated photo successfully" +msgstr "画像の回転に成功しました" + +msgid "Scaled photo successfully" +msgstr "パスワードの変更に成功しました" + +msgid "Modify Photo" +msgstr "画像を変更する" + +msgid "Successfully changed theme" +msgstr "テーマの変更に成功しました" + +msgid "« default theme »" +msgstr "« デフォルトテーマ »" + +msgid "Theme" +msgstr "テーマ" + +msgid "make highlight" +msgstr "ハイライト作成" + +msgid "move item" +msgstr "アイテム移動" + +#, c-format +msgid "move %s" +msgstr "%s を移動" + +#, c-format +msgid "edit %s permissions" +msgstr "%s パーミッションを編集" + +msgid "reorder items" +msgstr "アイテムの並べ替え" + +msgid "Maintenance" +msgstr "メンテナンス" + +msgid "Gallery Site Administration" +msgstr "Gallery サイト管理" + +msgid "site admin" +msgstr "サイト管理" + +msgid "Gallery User Administration" +msgstr "Gallery ユーザ管理" + +msgid "change password" +msgstr "パスワード変更" + +msgid "your account" +msgstr "あなたのアカウント" + +msgid "Password Recovery" +msgstr "パスワード リカバリ" + +msgid "Core" +msgstr "Core" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 コア モジュール" + +msgid "Add Items" +msgstr "アイテム追加" + +msgid "Edit Album" +msgstr "アルバム編集" + +msgid "Edit Photo" +msgstr "画像の編集" + +msgid "Edit Movie" +msgstr "動画の編集" + +msgid "Add Album" +msgstr "アルバム追加" + +msgid "Edit Permissions" +msgstr "パーミッション編集" + +msgid "View Permissions" +msgstr "パーミッションを見る" + +msgid "Delete Album" +msgstr "アルバム削除" + +msgid "Delete Photo" +msgstr "画像削除" + +msgid "Delete Movie" +msgstr "動画削除" + +msgid "Move Album" +msgstr "アルバム移動" + +msgid "Move Photo" +msgstr "画像移動" + +msgid "Move Movie" +msgstr "動画移動" + +msgid "Edit Captions" +msgstr "キャプション編集" + +msgid "Make Highlight" +msgstr "ハイライト作成" + +msgid "Reorder Items" +msgstr "アイテムの再並べ替え" + +msgid "Site Admin" +msgstr "サイト管理" + +msgid "Login" +msgstr "ログイン" + +msgid "Your Account" +msgstr "アカウント" + +msgid "Logout" +msgstr "ログアウト" + +msgid "Plugins" +msgstr "プラグイン" + +msgid "Users" +msgstr "ユーザー" + +msgid "Groups" +msgstr "グループ" + +msgid "Performance" +msgstr "パフォーマンス" + +msgid "Toolkit Priority" +msgstr "ツールキットの優先順位" + +msgid "Graphics Toolkits" +msgstr "グラフィック ツールキット" + +msgid "Account Settings" +msgstr "アカウント設定" + +msgid "Change Password" +msgstr "パスワード変更" + +#, c-format +msgid "Edit %s" +msgstr "%s の編集" + +#, c-format +msgid "Delete %s" +msgstr "%s の削除" + +#, c-format +msgid "Move %s" +msgstr "%s の移動" + +msgid "Build all thumbnails/resizes" +msgstr "サムネイル/リサイズ画像を生成" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"(サムネイルなどの)すべての派生物のファイルが生成されて、壊れた物が再生成されているか確認して" +"ください" + +msgid "Build All Thumbnails/Resizes" +msgstr "全てのサムネイル/リサイズ画像を生成" + +msgid "Debug output for failed items:" +msgstr "失敗したアイテムのデバッグ出力:" + +#, c-format +msgid "Checked %d items" +msgstr "%d アイテムをチェック" + +#, c-format +msgid "%d items built" +msgstr "%d アイテムが構築されました" + +#, c-format +msgid "%d items failed" +msgstr "%d アイテムが失敗しました" + +msgid "Convert MySQL database to UTF8" +msgstr "MySQLのデータベースをUTF8に変換する" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +msgid "Database successfully converted to UTF8" +msgstr "データベースのUTF-8への変換に成功しました" + +msgid "No conversion required" +msgstr "変換は必要ありません" + +msgid "Delete user sessions" +msgstr "ユーザのセッションを削除" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "現在のセッション消去の設定に従って、すべての恒久的なユーザセッションを削除する" + +#, c-format +msgid "Deleted %d sessions." +msgstr "%d のセッションを削除" + +msgid "Delete database cache" +msgstr "データベースキャッシュ削除" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Gallery は共通して使われるデータベース情報を、パフォーマンスアップのためにディスクに保存しま" +"す。もしデータベースを直接編集した場合、このタスクを実行してキャッシュを掃除し、Gallery に" +"データベースから情報を再読み込みさせてください。" + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "ディレクトリ削除に成功しました: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "ディレクトリを削除できませんでした: %s" + +msgid "Delete template cache" +msgstr "テンプレートキャッシュ削除" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Galleryはパフォーマンス改善のためにテンプレートファイルをコンパイルして保存しておきます。" +"Smarty error の問題に遭遇したらこのタスクを実行してください。また Smarty をデフォルト" +"\"\"のtplファイルに戻るように、local/*.tpl を削除する場合もこれを実行してください。" + +msgid "Template cache deleted successfully" +msgstr "テンプレートキャッシュの削除に成功しました" + +msgid "album" +msgstr "アルバム" + +msgid "Animation" +msgstr "アニメーション" + +msgid "animation" +msgstr "アニメーション" + +msgid "Gallery Core" +msgstr "Gallery Core" + +msgid "Gallery Core Module" +msgstr "Gallery Core モジュール" + +msgid "Search descriptions" +msgstr "説明から検索" + +msgid "Search keywords" +msgstr "検索語" + +msgid "Search summaries" +msgstr "概要から検索" + +msgid "Search titles" +msgstr "タイトルから検索" + +msgid "Description" +msgstr "説明" + +msgid "Keywords" +msgstr "キーワード" + +msgid "Summary" +msgstr "概要" + +msgid "Title" +msgstr "タイトル" + +msgid "Owner" +msgstr "所有者" + +msgid "Dynamic Album" +msgstr "ダイナミックアルバム" + +msgid "dynamic album" +msgstr "ダイナミックアルバム" + +msgid "Group" +msgstr "グループ" + +msgid "group" +msgstr "グループ" + +msgid "Other" +msgstr "他" + +msgid "Movie" +msgstr "動画" + +msgid "movie" +msgstr "動画" + +msgid "photo" +msgstr "画像" + +msgid "Couldn't create repository cache path." +msgstr "リポジトリキャッシュを作成できませんでした" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"キャッシュサブディレクトリ を作成できませんでした。ウェブサーバーに書き込み権限を与えてくだ" +"さい" + +msgid "Official Release Repository" +msgstr "公式リリースレポジトリ" + +msgid "Experimental Repository" +msgstr "実験的なリポジトリ" + +msgid "Community Repository" +msgstr "コミュニティリポジトリ" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "%s からインデックスをダウンロード中にエラーが発生しました" + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "%s からインデックスキャッシュをダウンロード中にエラーが発生しました" + +msgid "Index integrity check failed." +msgstr "インデックスの完全性の確認に失敗しました" + +msgid "« default sort order »" +msgstr "« デフォルトのソート順 «" + +msgid "Manual sort order" +msgstr "手動のソート順" + +msgid "Origination Date" +msgstr "創作日" + +msgid "Creation Date" +msgstr "作成日" + +msgid "Last Changed Date" +msgstr "最終変更日" + +msgid "Name" +msgstr "名前" + +msgid "View Count" +msgstr "閲覧回数" + +msgid "Random" +msgstr "ランダム" + +msgid "« no presort »" +msgstr "« あらかじめソートしない »" + +msgid "Albums First" +msgstr "アルバムを優先" + +msgid "Most Viewed First" +msgstr "閲覧回数の多いものから" + +msgid "Ascending" +msgstr "昇順" + +msgid "Descending" +msgstr "降順" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "config.php の allowSessionAccess を設定しない限り、妥当性の確認ができません" + +msgid "This page is valid XHTML 1.0" +msgstr "このページは XHTML 1.0 に準拠しています。" + +msgid "Donate to the Gallery project" +msgstr "Galleryプロジェクトに寄付をする" + +msgid "G2.2: Double Double" +msgstr "G2.2: Double Double" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Powered by Gallery v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "推定残り時間: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "メモリ 使用: %s, 合計: %s" + +msgid "Rows per album page" +msgstr "アルバムページの列数" + +msgid "Columns per album page" +msgstr "アルバムページの行数" + +msgid "Number of items to show per page" +msgstr "1ページに表示するアイテム数" + +msgid "Row height (pixels)" +msgstr "列の高さ(ピクセル)" + +msgid "Column width (pixels)" +msgstr "行の幅(ピクセル)" + +msgid "Show image owners" +msgstr "画像の所有者を表示する" + +msgid "Show album owners" +msgstr "アルバム所有者を表示する" + +msgid "Show micro navigation thumbnails" +msgstr "小さいナビゲーションサムネイルを表示する" + +msgid "Blocks to show in the sidebar" +msgstr "サイドバーに表示するブロック数" + +msgid "Blocks to show on album pages" +msgstr "アルバムページに表示するブロック数" + +msgid "Blocks to show on photo pages" +msgstr "画像ページに表示するブロック数" + +msgid "Thumbnail links in dynamic albums" +msgstr "ダイナミックアルバム内でのサムネイルリンク" + +msgid "Browse dynamic album" +msgstr "ダイナミックアルバムを閲覧" + +msgid "Jump to original album" +msgstr "元のアルバムに飛ぶ" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "サンプルを見る" + +msgid "Album Frame" +msgstr "アルバムフレーム" + +msgid "Item Frame" +msgstr "アイテムフレーム" + +msgid "Photo Frame" +msgstr "画像のフレーム" + +msgid "Color Pack" +msgstr "カラーパック" + +msgid "You must enter a number greater than 0" +msgstr "0より大きい数字を入力しなくてはなりません" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"ブロックの設定の読み込み時にエラーが発生しました。ブラウザのキャッシュを削除してもう一度試し" +"てください。" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "オーディオ" + +msgid "audio" +msgstr "オーディオ" + +msgid "Archive" +msgstr "アーカイブ" + +msgid "archive" +msgstr "アーカイブ" + +msgid "Document" +msgstr "ドキュメント" + +msgid "document" +msgstr "ドキュメント" + +msgid "Spreadsheet" +msgstr "スプレッドシート" + +msgid "spreadsheet" +msgstr "スプレッドシート" + +msgid "file" +msgstr "ファイル" + +msgid "Back" +msgstr "戻る" + +#, c-format +msgid "Back to %s" +msgstr "%s に戻る" + +msgid "User" +msgstr "ユーザー" + +msgid "user" +msgstr "ユーザー" + +msgid "Optimize database" +msgstr "データベースを最適化" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"データベースのパフォーマンスを改善します。結果は使用しているデータベースによって異なります" +"が、このメンテナンスによってGalleryはより速く動作するでしょう。特に、多くのアイテムを追加/削" +"除した後では効果があります。" + +msgid "Database optimized successfully" +msgstr "データベースの最適化に成功しました" + +msgid "Reset view counts" +msgstr "閲覧回数をリセット" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"全てのアルバムとアイテムの閲覧回数をゼロにリセットします。さらに、データベースキャッシュを削" +"除します。" + +msgid "View counts reset successfully" +msgstr "閲覧回数のリセットに成功しました" + +msgid "Refresh capture dates" +msgstr "撮影日を更新" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Gallery に保存された、全てのアイテムの撮影日を更新します。(通常はEXIF データからとります)" + +msgid "Processing..." +msgstr "処理中..." + +msgid "Refresh Capture Dates" +msgstr "撮影日を更新" + +#, c-format +msgid "Processing item %d of %d" +msgstr "アイテムの処理中 %d / %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "%2$d アイテム中 %1$d アイテムを更新しました" + +msgid "System information" +msgstr "システム情報" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "システム情報を取得(G2 サポートフォーラムにコピー&ペーストするのに便利です。)" + +msgid "core" +msgstr "コア" + +msgid "unknown" +msgstr "未知" + +msgid "Gallery version" +msgstr "Gallery バージョン" + +msgid "PHP version" +msgstr "PHP バージョン" + +msgid "Webserver" +msgstr "ウェブサーバ" + +msgid "Toolkits" +msgstr "ツールキット" + +msgid "Acceleration" +msgstr "高速化" + +msgid "Operating system" +msgstr "OS" + +msgid "Default theme" +msgstr "デフォルトテーマ" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "有効" + +msgid "disabled" +msgstr "無効" + +msgid "Locale" +msgstr "ロケール" + +msgid "Browser" +msgstr "ブラウザ" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "テーマの保存に成功しました。" + +msgid "General Settings" +msgstr "全般の設定" + +msgid "Settings saved successfully" +msgstr "設定の保存に成功しました" + +msgid "Added local upload directory successfully" +msgstr "ローカルのアップロードディレクトリを追加しました" + +msgid "Removed local upload directory successfully" +msgstr "ローカルのアップロードディレクトリを削除しました" + +msgid "Test email sent successfully" +msgstr "テストメールの送信に成功しました。" + +msgid "There was a problem processing your request, see below for details." +msgstr "要求を処理しているときに問題が発生しました、詳細は以下です。" + +msgid "Error sending test email, see below for details." +msgstr "テストメールを送信する際にエラーが生じました。詳細は以下を見てください。" + +msgid "Language Settings" +msgstr "言語設定" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Galleryのデフォルトの言語を選択してください。それぞれのユーザは個人設定のページでこの設定を上" +"書きするか、(可能なら)言語セレクター経由で好みの言語を設定することができます。Galleryはユーザ" +"のブラウザーから自動的に言語を探知しようとします" + +msgid "Default language" +msgstr "デフォルト言語" + +msgid "Check Browser Preference" +msgstr "ブラウザーの設定を確認する" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"このサーバはローカライゼーションに対応していません。%s オプションを有効にしてPHPを設定し直す" +"ようシステム管理者に連絡してください。" + +msgid "Date Formats" +msgstr "日付のフォーマット" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"日付や時刻がGalleryでどのように表示されるか指定します。フォーマットの詳細は %sphp.net%s をみ" +"てください。いくつかのトークンはアクティブな言語によるので注意してください。" + +msgid "Style" +msgstr "スタイル" + +msgid "Format" +msgstr "フォーマット" + +msgid "Sample" +msgstr "サンプル" + +msgid "Date" +msgstr "日付" + +msgid "Time" +msgstr "時間" + +msgid "Date/Time" +msgstr "日付と時間" + +msgid "Filesystem Permissions" +msgstr "ファイルシステム パーミッション" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Galleryが作成するファイルやディレクトリのデフォルトのパーミッションを、ここで指定してくださ" +"い。既に作成されたファイルやディレクトリには適用されません。" + +msgid "New directories" +msgstr "新しいディレクトリ" + +msgid "New files" +msgstr "新しいファイル" + +msgid "Session Settings" +msgstr "セッション設定" + +msgid "Session Lifetime" +msgstr "セッション持続時間" + +msgid "Inactivity Timeout" +msgstr "無効化タイムアウト" + +msgid "Embedded Markup" +msgstr "組み込みマークアップ" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"どの種類のマークアップ言語を、ユーザの入力するフィールドで許可しますか? セキュリティーの関係" +"上、そのままのHTMLはおすすめしません。BBCode は特殊なマークアップ言語で、安全でかつ太字や斜" +"体、リスト、画像、URLなどを簡単なテキストフォーマットで、利用することができます。" + +msgid "Markup" +msgstr "マークアップ" + +msgid "Email" +msgstr "電子メール" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"デフォルトでは Gallery は設定の必要のない PHP内蔵のメール機能を使います。SMTPメールサーバを使" +"用するには以下の情報を入力して、必要なら認証の情報も入力してください。デフォルト以外のポート" +"を使う場合は、サーバ名の後にオプションとして :port を加えてください。" + +msgid "Server" +msgstr "サーバ" + +msgid "Username" +msgstr "ユーザーネーム" + +msgid "Password" +msgstr "パスワード" + +msgid "SMTP From Address" +msgstr "SMTP 送信元メールアドレス" + +msgid "Invalid email address" +msgstr "無効なメールアドレス" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"設定が正しいかを確認するためのメールを送信する(上記設定のPHP mail か SMTP を使って)。下にテ" +"ストメッセージを受け取るメールアドレスを入力してください" + +msgid "Send Email" +msgstr "メールを送る" + +msgid "Email Test Error" +msgstr "メールテストエラー" + +msgid "Cookies" +msgstr "クッキー" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Gallery が別のポータルやCMS、フォーラムなどのアプリケーションに組み込まれている時は、2つ" +"のオプションから選択することができます。クッキーの設定については問題ありません。より詳細を読" +"み進めてください" + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" +"もし、あなたのGallery が別のシステムに組み込まれていてこのフィールドを空白にすると、すべての" +"ダウンロードアイテムリンク(画像や他のアイテムのURL)が、URLの中にGALLERYSIDを持つこと" +"になります。それは、多少のセキュリティリスクがあり、Galleryのユーザがフォーラムやゲス" +"トブックなどにURLのコピーを貼り付ける時に問題になります。代替手段としては、cookie パス" +"を設定してください。そうするとGalleryはURLの中にGALLERYSIDを含まないようにします。E." +"g. when Gallery is reachable at http://www.example.com/application/gallery2/ and the " +"embedding application is at http://www.example.com/application/, then you have to compare " +"the path /application/gallery2/ with /application/. The cookie path is the part of the paths " +"that is equal, in this case it is '/application/'. Most often it is just '/'." + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" +"cookie ドメインも組み込まれたGalleryで、GALLERYSIDの文字列をダウンロードアイテムURLか" +"ら取り除く時だけ必要です。多くの場合はこのcookieドメインは、空にして置いて問題ありません。" +"Galleryが組み込まれていて、別のサブドメインからもアクセスできるようにする場合だけ設定してくだ" +"さい。E.g. when Gallery is at http://photos.example.com/ and the application is at http://" +"www.example.com/, then you have to set the cookie domain example.com (the part of the host " +"string that is common to both, Gallery and the embedding application)." + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"一度クッキーの設定を変更すると、このGalleryの全ての登録済みユーザのブラウザのクッキーの" +"キャッシュを削除しなければなりません。できないならば、ログイン、ログアウト、セッション消" +"失などの問題に見まわれるでしょう" + +msgid "Path" +msgstr "パス" + +msgid "Invalid cookie path" +msgstr "無効なクッキーパス" + +msgid "Domain" +msgstr "ドメイン" + +msgid "Invalid cookie domain" +msgstr "無効なクッキードメイン" + +msgid "Locking System" +msgstr "ロックシステム" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery は、同時書き込みを防ぐため、ロック機構採用しています。 2種類のロックがあり、それぞれ" +"長所と短所があります。ファイル によるロックは、動作が速く効果的ですが、NFSのファイ" +"ルシステム上では動作せず、ウィンドウズ上では信頼性に欠けます。データベースによるロック" +"は、動作が遅いですが、信頼性があります。どちらを選んだらよいかわからない時は、ファイルによる" +"ロックをおすすめします。もし多くのロックによるタイムアウトが発生するようでしたら、データベー" +"スのロックを試してみてください。変更は自在にできます。" + +msgid "Lock system" +msgstr "ロックシステム" + +msgid "Helper Processes" +msgstr "ヘルパーの手順" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"いくつかのGallery のモジュールが、画像処理や圧縮などのためサーバー上のプログラムを利用しま" +"す。これらのプログラムは、急に激しい処理を必要とする場合があり、シェアされているウェブサー" +"バーのパフォーマンスに影響を与える場合があります。あなたはこれらのプログラムの優先順位を下げ" +"て、こうした影響を減らすことができます。もしあなたのホストが共有の環境で、ホストから不満を伝" +"えられている場合は、あなたの優先度を下げるようにしてください。" + +msgid "Priority" +msgstr "ツールキットの優先順位" + +msgid "Save" +msgstr "保存" + +msgid "Reset" +msgstr "リセット" + +msgid "Create A New Group" +msgstr "グループ新規作成" + +msgid "Group Name" +msgstr "グループ名" + +msgid "(required)" +msgstr "(必須)" + +msgid "You must enter a group name" +msgstr "グループ名を入力しなくてはなりません" + +#, c-format +msgid "Group '%s' already exists" +msgstr "グループ '%s' は既に存在しています" + +msgid "Create Group" +msgstr "グループ作成" + +msgid "Cancel" +msgstr "キャンセル" + +msgid "Create A New User" +msgstr "ユーザー新規作成" + +msgid "You must enter a username" +msgstr "ユーザーネームを入力しなくてはなりません" + +#, c-format +msgid "Username '%s' already exists" +msgstr "ユーザー名 '%s' は既に存在しています。" + +msgid "Full Name" +msgstr "フルネーム" + +msgid "Email Address" +msgstr "メールアドレス" + +msgid "You must enter an email address" +msgstr "メールアドレスを入力しなくてはなりません" + +msgid "Language" +msgstr "言語" + +msgid "You must enter a password" +msgstr "パスワードを入力しなくてはなりません" + +msgid "Verify Password" +msgstr "パスワード確認" + +msgid "You must enter the password a second time" +msgstr "パスワードは2回入力しなくてはなりません" + +msgid "The passwords you entered did not match" +msgstr "入力したパスワードが一致しません" + +msgid "Create User" +msgstr "ユーザー作成" + +msgid "Delete A Group" +msgstr "グループ削除" + +msgid "Are you sure?" +msgstr "了解しましたか?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "これはGalleryから %s を完全に削除します。やり直しはできません。" + +msgid "Delete" +msgstr "削除" + +msgid "Delete a User" +msgstr "ユーザー削除" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "ユーザ %s は %s アイテムの所有者です" + +#, c-format +msgid "Delete user %s and..." +msgstr "ユーザ %s を削除し..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "%s のすべての画像に新しい所有者を設定する" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"%s のすべての画像を削除し、残りの空でないアルバムに新しい所有者を設定する。%s に削除する権限" +"のない画像も新しい所有者に設定されます" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "新しい所有者 (空白はサイト管理者を意味します):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "ユーザ '%s' は存在しません。存在しないユーザにアイテムを割り当てることはできません。" + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "新しい所有者は削除しようとするユーザとは別でなければなりません。" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "新しい所有者はゲスト/匿名ユーザにはできません。" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "これはGalleryから %s を完全に削除します。やり直しはできません。" + +msgid "Edit a group" +msgstr "グループ編集" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "グループ '%s' のメンバーを編集" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "ユーザ '%s' をグループ '%s' に追加しました" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "ユーザ '%s' をグループ '%s' から削除しました。" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "このグループは、%d ユーザーを含みます。" + +msgid "Members" +msgstr "メンバー" + +msgid "« first" +msgstr "« 最初" + +msgid "« back" +msgstr "« 戻る" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "ページ閲覧 %d / %d" + +msgid "next »" +msgstr "次 »" + +msgid "last »" +msgstr "最後 »" + +msgid "Filter" +msgstr "フィルタ" + +msgid "Clear" +msgstr "消去" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d ユーザーがフィルタにマッチしました" + +msgid "Remove selected" +msgstr "選択したものを削除" + +msgid "You must select a user to remove." +msgstr "削除するユーザーを選択しなくてはなりません。" + +msgid "You can't remove yourself from this group." +msgstr "このグループからあなた自身を削除することはできません。" + +msgid "Add Member" +msgstr "メンバー追加" + +msgid "Add" +msgstr "追加" + +msgid "You must enter a username." +msgstr "ユーザーネームを入力しなくてはなりません。" + +#, c-format +msgid "User '%s' does not exist." +msgstr "ユーザー '%s'は存在していません。" + +msgid "This user already is in this group." +msgstr "このユーザは既にこのグループに属しています。" + +msgid "Done" +msgstr "完了" + +msgid "Edit a user" +msgstr "ユーザ編集" + +msgid "That username is already in use" +msgstr "そのユーザ名は既に使われています" + +msgid "You must enter a new username" +msgstr "ユーザーネームを入力しなくてはなりません" + +msgid "E-mail Address" +msgstr "メールアドレス" + +msgid "(suggested)" +msgstr "(推奨)" + +msgid "Options" +msgstr "オプション" + +msgid "Lock user." +msgstr "ユーザをロック" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +msgid "Reset failed login count." +msgstr "ログイン失敗回数をリセット" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" + +msgid "Group Management" +msgstr "グループ管理" + +#, c-format +msgid "Removed group '%s'" +msgstr "グループ '%s' を削除しました。" + +#, c-format +msgid "Created group '%s'" +msgstr "グループ '%s' が作成されました。" + +#, c-format +msgid "Modified group '%s'" +msgstr "グループ '%s' を変更しました。" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "システムには全部で %d グループ存在しています。" + +msgid "Edit Group" +msgstr "グループ編集" + +msgid "Edit" +msgstr "編集" + +msgid "Add/Remove Users" +msgstr "ユーザの追加/削除" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "グループ '%s'は存在しません。" + +msgid "You cannot delete that group" +msgstr "そのグループを削除することはできません" + +msgid "You cannot edit that group's users" +msgstr "あなたはそのグループのユーザを編集することはできません" + +msgid "Edit Group (by list)" +msgstr "グループ編集 (リスト)" + +msgid "Action" +msgstr "アクション" + +msgid "edit" +msgstr "編集" + +msgid "delete" +msgstr "削除" + +msgid "members" +msgstr "メンバー" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d グループがフィルタにマッチしました" + +msgid "System Maintenance" +msgstr "システムメインテナンス" + +#, c-format +msgid "Completed %s task successfully." +msgstr "%s タスクが完了しました。" + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "%s の作業が、うまく完了しませんでした。" + +msgid "Task name" +msgstr "タスク名" + +msgid "Last run" +msgstr "最後の実行" + +msgid "Success/Fail" +msgstr "成功/失敗" + +msgid "Not run yet" +msgstr "まだ実行していない" + +msgid "Success" +msgstr "成功" + +msgid "Failed" +msgstr "失敗" + +msgid "run now" +msgstr "いま実行" + +msgid "Last Run Details:" +msgstr "最後の実行の詳細:" + +msgid "Performance Tuning" +msgstr "パフォーマンスのチューニング" + +msgid "Updated performance settings successfully" +msgstr "パフォーマンス設定の更新に成功しました。" + +msgid "Deleted all saved pages" +msgstr "すべての保存されたページを削除" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Galleryのパフォーマンスをすべてのページをデータベースに保存することで向上させる。これによって" +"ウェブサーバーやデータベースのリソースの使用を減らすことができます。このトレードオフとして、" +"表示されるページが少し古くなるかもしれません。しかし、ブラウザーで強制的に更新する(シフトボ" +"タンを押しながら更新をクリックするなど)ことで最新の画面を見られます" + +msgid "Partial Acceleration" +msgstr "部分的な高速化" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"部分的な高速化によって10ー25%の性能向上が期待できます。しかし、ダイナミックなデータ(閲" +"覧回数のカウントのような)は即座に更新されませんブロック内に表れるコンテンツ(ランダム画像ブ" +"ロックなど)は常に更新されます" + +msgid "Full Acceleration" +msgstr "全面的な高速化" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"全面的な高速化はおよそ90%の性能向上が期待できます。ダイナミックなデータ(ランダム画像ブ" +"ロックやサイドバー、ショッピングカートの項目数、閲覧回数など)は保存されたページが消えると更" +"新されます" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"保存されたページが消えるまでの時間を指定できます。この時間を長くするとサーバーの負荷を減らせ" +"ますが、更新されたページをユーザが見るまでに長くなります。反対に、短くするとユーザはより最新" +"のデータを見えますが、サーバーの負荷が多くなります。" + +msgid "Here are some standard acceleration profiles:" +msgstr "ここにはいくつかの高速化のプロファイルがあります:" + +msgid "Medium acceleration" +msgstr "中程度の高速化" + +msgid "High acceleration" +msgstr "高度の高速化" + +msgid "Guest Users" +msgstr "ゲストユーザ" + +msgid "Expires after:" +msgstr "消去までの時間:" + +msgid "Clear Saved Pages" +msgstr "保存されたページを削除" + +msgid "Status: Inactive" +msgstr "ステータス: 非アクティブ" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ が無効化されました" + +msgid "Status: Active" +msgstr "ステータス: アクティブ" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ が有効化されました" + +msgid "Status: Not Installed" +msgstr "ステータス: インストールされていない" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ がアンインストールされました" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "ステータス: アップグレードが必要 (非アクティブ)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "ステータス: 互換性のないプラグイン (非アクティブ)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Status: 非アクティブ (設定が必要)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ は設定が必要です" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ は削除されました" + +msgid "Warning!" +msgstr "警告!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "__PLUGIN__ を本当にアンインストールしますか?" + +#, fuzzy +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"この作業では、このモジュールによって作成されたあらゆるパーミッションやデータを削除します" + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" +"このプラグインはアンインストールされますが、ファイルは残るので再びインストールしなおすことが" +"できます。" + +msgid "Yes" +msgstr "はい" + +msgid "No" +msgstr "いいえ" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "__PLUGIN__ を本当にアンインストールしますか?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "このプラグインはアンインストールされ、そのファイルは削除されます。" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "無効(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "最新版(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "インストールされていない(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "アップグレードが必要(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "互換性がない(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "__PLUGIN__ を完全に削除できませんでした" + +msgid "Gallery Plugins" +msgstr "Gallery プラグイン" + +msgid "Get More Plugins" +msgstr "プラグインを入手する" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"さらに多くの機能をお望みですか? 新しいプラグインはクリックするだけです。 %s リンクをクリック" +"して始めてください。" + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Galleryの機能は個々のプラグインとして提供されます。Galleryに機能を追加するためにプラグインを" +"ダウンロードしてきてインストールしたり、使いたくない機能は無効にすることができます。ある機能" +"を使用するには、インストールして、(必要があれば)設定をして、有効化してください。機能を使いた" +"くなければ、それを無効化することができます。" + +msgid "Plugin Name" +msgstr "プラグイン名" + +msgid "Installed" +msgstr "インストール済み" + +msgid "Version" +msgstr "バージョン" + +msgid "Actions" +msgstr "アクション" + +msgid "help" +msgstr "ヘルプ" + +#, c-format +msgid "Screenshot for %s" +msgstr "%s のスクリーンショット" + +msgid "Incompatible plugin!" +msgstr "互換性のないプラグイン" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "コアのAPIが必要です: %s (使用可能: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "プラグインのAPIが必要です: %s (利用可能: %s )" + +msgid "configure" +msgstr "コンフィグ" + +msgid "up to date" +msgstr "最新版" + +msgid "upgrade required" +msgstr "アップグレードが必要" + +msgid "not installed" +msgstr "未インストール" + +msgid "incompatible" +msgstr "非互換" + +msgid "Repository" +msgstr "リポジトリ" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "インターネット接続が正しく設定されているか確認するか、後出ためしてください。" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "リポジトリインデックスの更新に成功しました" + +msgid "All plugins are already up-to-date." +msgstr "全てのプラグインは最新です。" + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, fuzzy, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d の言語パッケージが削除されました。" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "最終更新は %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +msgid "Repository Error" +msgstr "リポジトリエラー" + +msgid "You must select at least one repository." +msgstr "最低ひとつのリポジトリを選択してください。" + +msgid "Ok" +msgstr "OK" + +msgid "Configure your Gallery" +msgstr "Gallery の設定をしてください" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +msgid "Continue" +msgstr "続ける" + +msgid "Download Plugin List" +msgstr "プラグインのリストをダウンロード" + +msgid "Show Repository List" +msgstr "リポジトリのリストを表示" + +msgid "Upgrade Gallery" +msgstr "Galleryをアップグレード" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"新しいのバージョンの Gallery が利用できます。しかし、この画面からはアップグレードできません。" +"アップグレードすると、いくつかのプラグインが利用できなくなる可能性があります。しかし、新しい" +"バージョンの特長に依存するプラグインが利用できるようになるかもしれません。こちらが推奨される" +"アップグレードのステップです。:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "Gallery core を %sDownload%s" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr " %supgrade instructions%sを読んで、アップグレードを実行してください" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "同時に利用できないプラグインは「!」が付いています" + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"新しいバージョンのコアモジュールが利用できます。ここに表示されていないもので、インストールさ" +"れたコアモジュールと同時に利用できないプラグインがあるかもしれません。%scomplete list%sを見て" +"ください、赤いアイコンのマークがあるものは、整合性がとれません。" + +msgid "upgrade available" +msgstr "アップグレードが利用可能です" + +msgid "locked" +msgstr "ロックされています" + +msgid "Theme Name" +msgstr "テーマ名" + +msgid "Module Name" +msgstr "モジュール名" + +msgid "Latest" +msgstr "最終" + +msgid "Locked Plugin" +msgstr "ロックされたプラグイン" + +msgid "Incompatible Plugin" +msgstr "互換性のないプラグイン" + +msgid "Upgrade Available" +msgstr "アップグレードが利用可能です" + +msgid "download" +msgstr "ダウンロード" + +msgid "modify" +msgstr "変更" + +msgid "Upgrade All Plugins" +msgstr "全てのプラグインをアップグレード" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Galleryはテーマとモジュールの最新版へのアップグレードを自動的に行えます。新しいプラグインはダ" +"ウンロードされません。" + +msgid "Upgrade All" +msgstr "全てをアップグレード" + +#, c-format +msgid "Download %s" +msgstr "%s をダウンロード" + +msgid "No packages have been selected." +msgstr "一つもパッケージが選択されていません" + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +msgid "Base Packages" +msgstr "ベースパッケージ" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: バージョン %s (ビルド %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +msgid "Language Packages" +msgstr "言語パッケージ" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, c-format +msgid "%s version %s" +msgstr "%s バージョン %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "互換性のある言語パッケージがありません" + +msgid "You must select a base package before choosing language packs." +msgstr "言語パッケージを選択する前にベースパッケージを選択しなければなりません。" + +msgid "Update" +msgstr "アップデート" + +msgid "Gallery Themes" +msgstr "Gallery テーマ" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "テーマ %s の有効化に成功しました" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "テーマ %s の無効化に成功しました" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "テーマ %s のインストールに成功しました" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "テーマ %s のアンインストールに成功しました" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "テーマ %s のアップグレードに成功しました" + +msgid "Successfully saved default album settings" +msgstr "デフォルトのアルバム設定の保存に成功しました" + +msgid "Restored theme settings" +msgstr "保存されたテーマの設定" + +msgid "Defaults" +msgstr "デフォルト" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "これはデフォルトの表示設定です。それぞれのアルバムで別の値に設定できます。" + +msgid "Default sort order" +msgstr "既定のソート順:" + +msgid "with" +msgstr "with" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "新しいアルバム" + +msgid "Save Defaults" +msgstr "デフォルトを保存" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s テーマ設定" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "これらはテーマのグローバル設定です。これらはアルバムレベルで個別に設定できます。" + +msgid "Available" +msgstr "有効なもの" + +msgid "Choose a block" +msgstr "ブロックを選択" + +msgid "Selected" +msgstr "選択されたもの" + +msgid "Remove" +msgstr "削除" + +msgid "Move Up" +msgstr "上へ移動" + +msgid "Move Down" +msgstr "下へ移動" + +msgid "Parameter" +msgstr "パラメータ" + +msgid "Value" +msgstr "値" + +msgid "There are no settings for this theme" +msgstr "このテーマの設定項目はありません" + +msgid "Save Theme Settings" +msgstr "テーマの設定を保存" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"いかに表示されているツールキットは、サポートされている作業やmime typeと重複する部分がありま" +"す。これらの作業をどのツールキットが実行するかを決めるために、ツールキットの優先順位を決めて" +"ください" + +msgid "Toolkit" +msgstr "ツールキット" + +msgid "Order" +msgstr "並び順" + +msgid "up" +msgstr "上" + +msgid "down" +msgstr "下" + +msgid "User Management" +msgstr "ユーザー管理" + +#, c-format +msgid "Removed user '%s'" +msgstr "ユーザ '%s' を削除しました。" + +#, c-format +msgid "Created user '%s'" +msgstr "ユーザ '%s' が作成されました。" + +#, c-format +msgid "Modified user '%s'" +msgstr "ユーザ '%s' を変更しました" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "システムには全部で %dユーザー存在しています。" + +msgid "Edit User" +msgstr "ユーザ編集" + +msgid "You cannot delete yourself!" +msgstr "自分自身を削除することはできません。" + +msgid "You cannot delete the special guest user." +msgstr "特別である guest ユーザーを削除することはできません。" + +msgid "Edit User (by list)" +msgstr "ユーザ編集 (リスト)" + +msgid "Locked" +msgstr "ロックされている" + +#, fuzzy +msgid "Failed Logins" +msgstr "ログインに失敗した回数" + +msgid "Thumbnails" +msgstr "サムネイル" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Gallery はアップロード時にサムネイルを作成するか、もしくはサムネイルを初めて見る時に作成でき" +"ます。どちらのやり方にしろ、サムネイルは一度作成され、保存されます。アップロード時に作成する" +"と、アップロードの時間はかかりますが、初めてアルバム��見る時の表示が��くなります。" + +msgid "Create thumbnails now" +msgstr "いますぐサムネ�ルを生成" + +msgid "This is a test email from Gallery2" +msgstr "これはGallery2からのテストメール�す。" + +msgid "Edit Conflict!" +msgstr "衝突を編集" + +msgid "Security Violation" +msgstr "セキュリティ侵害" + +msgid "Database Error" +msgstr "データベースエラー" + +msgid "Platform Error" +msgstr "プラットフォームエラー" + +msgid "Authentication Failure" +msgstr "認証失敗" + +msgid "Error" +msgstr "エラー" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"あなたの行った変更は、誰か別の人が同じ項目に対して矛盾する変更をしているため完了できません。" +"ブラウザーの戻るボタンを使って始めたページに戻り、ページを更新して、変更をやり直してください" + +msgid "Go back and try again" +msgstr "戻ってもう一度試す" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +msgid "Clear the cache" +msgstr "キャッシュを削除" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "もしくは、Gallery のメインページに戻り、再度ブラウジングしてください" + +msgid "The action you attempted is not permitted." +msgstr "あなたが試行したアクションは許可されていません。" + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "データベースと通信中にエラーが発生しました。" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"データベースエラーの正確な要因を捕捉するには、config.php にある Gallery デバッグモードを有効" +"にする必要があります。このエラーに対するサポートを求める前に、バッファーされたデバッグ出力を" +"有効にし、再度同じ作業をしてください。長いデバッグ出力の一番下のほうに、エラーの詳細がありま" +"す" + +msgid "An error has occurred while interacting with the platform." +msgstr "プラットフォームと通信中にエラーが発生しました。" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"プラットフォームエラーの正確な原因はわかりません。よくある原因はファイルシステムのパーミッ" +"ションが不適切なことです。これはあなたかホストがファイルシステムに、バックアップからデータを" +"回復する、といった変更をした時に発生します。" + +msgid "Item not found." +msgstr "アイテムが見つかりませんでした。" + +msgid "An error has occurred." +msgstr "エラーが発生しました。" + +msgid "Back to the Gallery" +msgstr "Galleryに戻る" + +msgid "Error Detail" +msgstr "エラーの詳細" + +msgid "System Information" +msgstr "システム情報" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"JPEG画像を処理することのできる画像処理ツールキットがありません。画像を追加しても、サムネイル" +"が作成できません" + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" +"モジュール ページを訪れてグラフィックツールキットを有効化してください。" + +msgid "Add Sub-Album" +msgstr "サブアルバム追加" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"このアイテムのハードディスク上での名前です。これは、このアルバムでユニークでなくてはいけませ" +"ん。半角英数字と、半角のアンダー(_)とハイフン(-)しか使えません。この名前はあとで変更すること" +"ができます。" + +msgid "Your name contains invalid characters. Please enter another." +msgstr "名前に無効な文字が含まれています。他のものを入力してください。" + +msgid "You must enter a name for this album." +msgstr "このアルバムに対する名前を入力しなくてはなりません。" + +msgid "The name you entered is already in use. Please enter another." +msgstr "入力した名前は既に使用されています。他のものを試してください。" + +msgid "This is the album title." +msgstr "これはアルバムの題名です。" + +msgid "This is the album summary." +msgstr "これはアルバムの概要です。" + +msgid "Keywords are not visible, but are searchable." +msgstr "キーワードは見えませんが、検索できます。" + +msgid "This is the long description of the album." +msgstr "これはこのアルバムの詳しい説明です。" + +msgid "Create" +msgstr "作成" + +msgid "Upload Complete" +msgstr "アップロード完了" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "%d 個のファイルの追加に成功しました。" + +msgid "No files added." +msgstr "ファイルは追加されませんでした。" + +#, c-format +msgid "Added %s" +msgstr "%s を追加しました" + +#, c-format +msgid "Failed to add %s" +msgstr "%s の追加に失敗しました" + +msgid "Add more files" +msgstr "もっとファイル追加" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"あなたのウェブサーバーは、今回のブラウザーからのファイルアップロードを拒否するように設定され" +"ています。システム管理者に連絡して、解決方法を相談してください" + +msgid "Upload files directly from your computer." +msgstr "あなたのコンピュータから直接アップロードする" + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "ファイルのフルパスと下のボックスにオプションとしてタイトルを入力してください。" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"注意: 一度に最大 %s をアップロードできます。それ以上アップロードしたい場合、分けてアッ" +"プロードするか別のアップロード方式を使わなくてはなりません。もしくはシステム管理者に問い合わ" +"せて、より大きなアップロードができるように依頼してください" + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"注意: 一度に最大 %s をアップロードできます。一つのファイルは %s 以下でないといけませ" +"ん。それより多くをアップロードするには、分割してアップロードするか、別のアップロード方式を使" +"わなくてはなりません。もしくはシステム管理者に問い合わせてより大きなアップロードができるよう" +"に依頼してください。" + +msgid "More Upload Boxes..." +msgstr "アップロードボックスを追加する..." + +msgid "Set item titles from:" +msgstr "アイテムのタイトル設定:" + +msgid "Assign caption to:" +msgstr "キャプションを割り当て:" + +msgid "No Thumbnail" +msgstr "サムネイルなし" + +msgid "Delete Items" +msgstr "アイテム削除" + +msgid "No items were selected for deletion" +msgstr "削除するアイテムが選択されませんでした" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d個のファイルの削除に成功しました。" + +msgid "This album contains no items to delete" +msgstr "このアルバムには削除するアイテムはありません" + +msgid "Choose the items you want to delete" +msgstr "削除したいアイテムを選択してください" + +#, c-format +msgid "(page %d of %d)" +msgstr "(ページ %d / %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "ここで選択されたアイテムは、ページを移動しても、選択された状態を保持します" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "%d のアイテムが別ページで選択されています" + +msgid "(data)" +msgstr "(データ)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(アルバムは %d のアイテムを含みます)" + +msgid "(empty album)" +msgstr "(空のアルバム)" + +msgid "Check All" +msgstr "全てをチェック" + +msgid "Check None" +msgstr "どれもチェックしない" + +msgid "Invert" +msgstr "挿入" + +msgid "Previous Page" +msgstr "前のページ" + +msgid "Next Page" +msgstr "次のページ" + +msgid "Deletion Complete" +msgstr "削除完了" + +msgid "Item successfully deleted" +msgstr "アイテムの削除に成功しました" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "この %s を本当に削除しますか?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "それは、%d の項目を含みます" + +msgid "There is no undo!" +msgstr "やり直しはありません" + +msgid "There was a problem processing your request." +msgstr "要求の処理中に問題が発生しました" + +msgid "Sort order" +msgstr "ソート順" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"これはアルバムのデフォルトのソート順を設定します。これは現在のアイテムと、全ての新しいアイテ" +"ムに適用されます。" + +msgid "Apply to all subalbums" +msgstr "サブアルバムに適用" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "" +"各アイテムはサムネイルが必要です。ここにピクセル指定でデフォルトのサイズを入力してください。" + +msgid "You must enter a number (greater than zero)" +msgstr "0より大きい数字を入力しなくてはなりません" + +msgid "Use this thumbnail size in all subalbums" +msgstr "このサムネイルのサイズをすべてのサブアルバムで使う" + +msgid "Resized Images" +msgstr "リサイズされた画像" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"アルバム中のそれぞれのアイテムは、複数のサイズを持つことができます。ここでは、デフォルトのサ" +"イズを決めてください" + +msgid "Active" +msgstr "アクティブ" + +msgid "Target Size (pixels)" +msgstr "目標のサイズ (ピクセル指定)" + +msgid "You must enter a valid size" +msgstr "有効なサイズを入力しなくてはなりません" + +msgid "Use these target sizes in all subalbums" +msgstr "これらのターゲットサイズをすべてのサブアルバムで使う" + +msgid "Apply settings to existing items" +msgstr "設定を存在するアイテムに適用" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "アルバムの設定をサムネイルに適用" + +msgid "... and for all subalbums" +msgstr "... と全てのサブアルバム" + +msgid "Build thumbnails too" +msgstr "サムネイルも作成する" + +msgid "Apply album setting to resized images" +msgstr "アルバム設定をリサイズ済み画像に適用する" + +msgid "Build resizes too" +msgstr "リサイズ画像も作成する" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"このアニメーションを適切に表示するためには、アニメーションの幅と高さの情報が必要です。アニ" +"メーションの種類を扱うことのできるグラフィックのツールキットがある場合は、これらの値はすでに" +"設定されているかもしれません。もしそうでなければ、それらは 0 に設定されます。もしここで正しい" +"値を入力しないと、ブラウザーで表示する際にアニメーションがゆがむ場合があります。これらの値の" +"変更は、アニメーション自体に変更を加えるわけでも、悪い影響を及ぼすわけでもありません。" + +msgid "Width" +msgstr "幅" + +msgid "You must enter a value greater than or equal to 0" +msgstr "0以上の数字を入力しなくてはなりません" + +msgid "Height" +msgstr "高さ" + +msgid "There were errors saving some items" +msgstr "いくつかのアイテム保存時にエラーが発生しました" + +msgid "There were errors saving all items" +msgstr "全てのアイテム保存時にエラーが発生しました" + +msgid "Successfully saved all items" +msgstr "全てのアイテムの保存に成功しました" + +msgid "This album contains no items" +msgstr "このアルバムにアイテムはありません" + +msgid "Saved successfully." +msgstr "保存に成功しました" + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "このアイテムは誰か他の人によって同時に修正されました。あなたの変更は失われました" + +msgid "You do not have permissions to modify this item." +msgstr "このアイテムを編集する権限がありません。" + +msgid "Save and Done" +msgstr "保存して完了する" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "前の %s を保存して編集" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "次の %s を保存して編集" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"このアイテムのハードディスク上での名前です。これは、このアルバムでユニークでなくてはいけませ" +"ん。半角英数字と、半角のアンダー(_)とハイフン(-)しか使えません。" + +msgid "Your name contains invalid characters. Please choose another." +msgstr "名前に無効な文字が含まれています。他のものを入力してください。" + +msgid "You must enter a name for this item." +msgstr "このアイテムに対する名前を入力しなくてはなりません。" + +msgid "The name you entered is already in use. Please choose another." +msgstr "入力した名前は既に使用されています。他のものを試してください。" + +msgid "The title of this item." +msgstr "このアイテムのタイトルです。" + +msgid "The root album must have a title." +msgstr "ルートアルバムにはタイトルが必須です。" + +msgid "The summary of this item." +msgstr "このアイテムの概要です。" + +msgid "This is the long description of the item." +msgstr "これはこのアイテムの詳しい説明です。" + +#, c-format +msgid "%s Date and Time" +msgstr "%s 日付と時間" + +msgid "Set the date and time when this image was captured." +msgstr "この画像がキャプチャーされた日付と時刻をセットします" + +msgid "Set the date and time to be displayed for this item." +msgstr "このアイテムが表示される日付と時刻をセットします" + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "この %s のためのに表示する日時を設定する" + +msgid "Date:" +msgstr "日付:" + +msgid "Time:" +msgstr "時間:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "ファイルの情報からオリジナルのキャプチャーされた日時を取り出して使う(Exifタグなど):" + +msgid "You must enter a valid date and time" +msgstr "有効な日時を入力しなくてはなりません" + +msgid "Thumbnail" +msgstr "サムネイル" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"サムネイルのサイズを設定します。 サムネイルの最大辺の長さはこの値より小さくなります。サムネイ" +"ルが必要ない場合は、空にしてください" + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"アイテムのこの種類に対応した画像処理ツールキットがありません。そのためサムネイルを作成した" +"り、修正したりできません" + +msgid "Unable to create a thumbnail for this item" +msgstr "このアイテムのサムネイルを作成できません" + +#, fuzzy +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "この動画を適切に再生するためには、動画の幅と高さを知る必要があります。" + +msgid "Resized Photos" +msgstr "リサイズされた画像" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "これらのサイズは、閲覧可能にしたい画像のオリジナル以外のリサイズバージョンです" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"この種類の画像に対応した画像処理ツールキットがありません。そのため、リサイズされた画像を作成" +"したり、修正したりできません" + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"サムネイルに画像のどの部分を使うかを選ぶことができます。この作業は、リサイズされた画像やオリ" +"ジナルの画像に影響しません" + +msgid "Aspect Ratio: " +msgstr "アスペクト比: " + +msgid "Crop" +msgstr "トリミング" + +msgid "Undo Changes" +msgstr "変更を元に戻す" + +msgid "Reset to default" +msgstr "デフォルトに戻す" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"この画像タイプに対応しているグラフィックツールキットが有効にされていないため、サムネイルをト" +"リミングすることができません。" + +msgid "Rotate" +msgstr "回転" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "画像は90度単位でしか回転しかできません。" + +msgid "CC 90°" +msgstr "90度左回り" + +msgid "180°" +msgstr "180度" + +msgid "C 90°" +msgstr "90度右回り" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"この画像タイプに対応しているグラフィックツールキットが有効にされていないため、それを回転する" +"ことができません。" + +msgid "Scale" +msgstr "拡大/縮小" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"オリジナルの画像を縮小、もしくは拡大する。Galleryが画像の大きさを変えるとき、歪みを避けるた" +"め、アスペクト比は変更しません。以下に入力した値は、ピクセル単位のバウンドボックスを形成しま" +"す。Galleryはボックスの内部に収まる限り大きなサイズに画像を拡大/縮小します。" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"この画像タイプに対応しているグラフィックツールキットが有効にされていないため、それをサイズ変" +"更することができません。" + +msgid "You must enter a size" +msgstr "サイズを入力しなくてはなりません" + +msgid "Preserve Original" +msgstr "オリジナルを保護" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Galleryは画像の回転やサイズ変更をする際にも、元の画像を変更することはありません。その代わり" +"に、画像の複製を作ってそれを扱います。これには少し余分なディスクスペースが必要です。このオプ" +"ションを無効にすると、どんな作業も元の画像に作用します。これは元の画像を元に戻せなくなりま" +"す。" + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "これは他の画像へのリンクですので、オリジナルを変更することはできません" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "この画像へのリンクがあるので、オリジナルに対する変更はできません。" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "オリジナル画像を保護" + +msgid "Modified Photo" +msgstr "変更済みの画像" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"回転/拡大/縮小された、オリジナル画像の複製を使用しています。オリジナル画像はまだ使用可能です" +"が、もう使用されることはありません。変更はオリジナルではなく、複製の画像に適用されます。" + +msgid "Restore original" +msgstr "オリジナルへ戻す" + +msgid "Choose a theme" +msgstr "テーマを選択" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "このテーマをすべてのサブアルバムで使う" + +msgid "Choose Theme" +msgstr "テーマを選択" + +#, c-format +msgid "Configure the %s theme" +msgstr "%s テーマを設定する" + +msgid "These settings only apply to the theme for this album." +msgstr "これらの設定は、このアルバムのテーマにのみ適用されます。" + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "これらの設定を %s テーマを使うすべてのサブアルバムで使う" + +msgid "Album Highlight" +msgstr "アルバムハイライト" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "このアイテムを親アルバムやその上位のサムネイルにできます" + +msgid "Highlight for:" +msgstr "以下のハイライト:" + +msgid "Highlight" +msgstr "ハイライト" + +msgid "Move an Item" +msgstr "アイテム移動" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d アイテムの移動に成功しました" + +msgid "This album contains no items to move." +msgstr "このアルバムには、移動させるアイテムがありません" + +msgid "Source" +msgstr "ソース" + +msgid "Choose the items you want to move" +msgstr "移動したいアイテムを選択してください" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" +"選択した宛先はサブアルバムが許可されていませんので、全てのサブアルバムは選択が解除されまし" +"た。" + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"選択された宛先はサブアルバムしか受け入れないので、アルバムでないものは選択解除されました。" + +msgid "You are not allowed to move this item away from here." +msgstr "このアイテムをここから移動する権限がありません。" + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "アルバムを選択された宛先へ移動する権限がありません。" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "アイテムを選択された宛先へ移動する権限がありません。" + +msgid "You cannot move an album into its own subtree." +msgstr "アルバムをそれ自身のサブツリーへ移動することはできません。" + +msgid "Destination" +msgstr "宛先" + +msgid "Choose a new album for them" +msgstr "それらに対する新しいアルバムを選んでください" + +msgid "You don't have the permission to add items in this album" +msgstr "このアルバムにアイテムを追加する権限がありません。" + +msgid "No destination chosen" +msgstr "選択された宛先がありません" + +msgid "Move" +msgstr "移動" + +msgid "Successfully moved" +msgstr "移動に成功しました" + +msgid "Choose a destination album" +msgstr "対象となるアルバムを選択してください。" + +msgid "Permissions" +msgstr "パーミッション" + +msgid "Owner changed successfully" +msgstr "所有者の変更に成功しました" + +msgid "Group permission added successfully" +msgstr "グループパーミッションの追加に成功しました" + +msgid "User permission added successfully" +msgstr "ユーザパーミッションの追加に成功しました" + +msgid "Group permission removed successfully" +msgstr "グループパーミッションの削除に成功しました" + +msgid "User permission removed successfully" +msgstr "ユーザパーミッションの削除に成功しました" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"それぞれのアイテムは、独立したパーミッションセットを持っています。親のパーミッションの変更" +"は、子のパーミッションには影・ス・スしません。これはあなたがこのアイテムの親へのアクセスを制限" +"しても、子のアイテムへのアクセスは許可し、またその逆も可能だということです。このパーミッショ" +"ンシステムのもっとも効果的な使用法は、グループを作成し、それらにパーミッション割り当てること" +"です。そして、特定のユーザーにパーミッションを割り当てたいなら、そのユーザを適切なグループに" +"追加したり、削除すればよいのです。" + +#, c-format +msgid "This item is owned by user: %s" +msgstr "このアイテムは、ユーザー %sが所有しています。" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "このアイテムは、ユーザー %s (%s)が所有しています。" + +msgid "New owner" +msgstr "新しい所有者" + +msgid "Change" +msgstr "変更" + +msgid "Apply new owner to sub-items" +msgstr "新しい所有者をサブアイテムにも適用" + +msgid "You must enter a user name" +msgstr "ユーザ名を入力しなくてはなりません" + +msgid "The user name you entered is invalid" +msgstr "入力したユーザ名は無効です" + +msgid "Apply changes" +msgstr "変更を適用" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"このアイテムはサブアイテムを持っています。ここで加えた変更は、このアイテムのみでも、サブアイ" +"テム全てにも適用することができます。サブアイテムに対する変更は、既にあるパーミッションと統合" +"されること、そしてサブアルバムの数が多い場合はとても時間がかかることを覚えておいてください。" +"グループにパーミッションを割り当て、可能なときいつでもユーザをグループに追加および削除するの" +"がより効果的な方法です。" + +msgid "Apply to sub-items" +msgstr "サブアイテムに適用" + +msgid "Group Permissions" +msgstr "グループ パーミッション" + +msgid "Group name" +msgstr "グループ名" + +msgid "Permission" +msgstr "パーミッション" + +msgid "New Group Permission" +msgstr "新しいグループ パーミッション" + +msgid "Add Permission" +msgstr "パーミッション追加" + +msgid "The permission you chose is invalid" +msgstr "あなたが選択したパーミッションは無効です" + +msgid "The group name you entered is invalid" +msgstr "あなたが参加したグループ名は無効です" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "グループは既にこのパーミッションを持っています。サブアルバムをチェックしてください。" + +msgid "User Permissions" +msgstr "ユーザーのパーミッション" + +msgid "User name" +msgstr "ユーザー名" + +msgid "New User Permission" +msgstr "新しいユーザーのパーミッション" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "" +"そのユーザは既にこのパーミッションを所有しています (サブパーミッションをチェックしてください)" + +msgid "Reorder Album" +msgstr "アルバムの並べ替え" + +msgid "Order saved successfully" +msgstr "並び順の存に成功しました。" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"このアルバムは、自動ソートが設定されています。手動で順番を変えることができません。続けるに" +"は、自動ソートを解除する必要があります" + +msgid "change" +msgstr "変更" + +msgid "Change the order of the items in this album." +msgstr "このアルバム並べ替える順を変更" + +msgid "Move this item" +msgstr "このアイテムを移動" + +msgid "before" +msgstr "前" + +msgid "after" +msgstr "後" + +msgid "Reorder" +msgstr "並べ替え" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "サイトは、メンテナンスのため一時的に停止しています" + +msgid "Admin Login" +msgstr "管理者ログイン" + +msgid "Enter a URL" +msgstr "URLを入力" + +msgid "Enter some text describing the URL" +msgstr "そのURLの説明を入力してください" + +msgid "Enter an image URL" +msgstr "画像のURLを入力してください" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "リスト" + +msgid "bullet" +msgstr "箇条書き" + +msgid "url" +msgstr "URL" + +msgid "image" +msgstr "画像" + +msgid "color" +msgstr "文字色" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "コンフィグレーションエラー: テーマ欠落" + +msgid "Missing Theme" +msgstr "テーマ欠落" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"このページはテーマ %s を使うように設定されています。しかしアクティブでないか、インストールさ" +"れていないか、整合性が取れていません" + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"このアルバムはテーマ %s を使うように設定されています。しかしアクティブでないか、インストール" +"されていないか、整合性が取れていません" + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"この問題を解決するためには、%s インストールするか、このテーマ %s を有効にするか、他のデフォル" +"トテーマを選択してください" + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"この問題を解決するためには、%s ログイン(サイトの管理者 %s として)して %s インストールする" +"か、このテーマ %s を有効にするか、別のデフォルトテーマを選択してください" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"この問題を解決するためには、%s このアルバム %s のための新しいテーマを選ぶか、 %s インストール" +"するか、テーマ %s を有効にしてください" + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"この問題を解決するためには、%s このアルバム %s のための新しいテーマを選択するか、%s ログイン" +"(サイト管理者 %s として)してそれから %s インストールするか、テーマ %s を有効にしてください" + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"この問題を解決するためには、 %s ログイン %s してそして %s このアルバム %s のための新しいテー" +"マを選択するか、%s ログイン(サイトの管理者 %s として)してそれから %s インストールするか、こ" +"のテーマ %s を有効にしてください" + +msgid "Admin Options" +msgstr "管理オプション" + +msgid "User Options" +msgstr "ユーザオプション" + +msgid "Password changed successfully" +msgstr "パスワードの変更に成功しました" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"あなたであることを証明するために、現在のパスワードを入力してください。そして間違いを防ぐた" +"め、新しいパスワードを2度入力してください。" + +msgid "Current Password" +msgstr "現在のパスワード" + +msgid "You must enter your current password" +msgstr "現在のパスワードを入力しなくてはなりません" + +msgid "Incorrect password" +msgstr "間違ったパスワード" + +msgid "New Password" +msgstr "新しいパスワード" + +msgid "You must enter a new password" +msgstr "新しいパスワードを入力しなくてはなりません" + +msgid "Verify New Password" +msgstr "新しいパスワードの確認" + +msgid "You must enter your new password again!" +msgstr "もう一度新しいパスワードを入力してください。" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "あなたのアカウントにログイン" + +msgid "Your password has been recovered, please login." +msgstr "あなたのパスワードが回復されました。ログインしてください" + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "ログイン情報が間違っています。もう一度試してください。" + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"パスワードをなくしたか忘れてしまった場合、パスワードを回復する ページから" +"回復させることができます" + +#, c-format +msgid "Welcome, %s!" +msgstr "ようこそ、 %s !" + +msgid "Account settings saved successfully" +msgstr "アカウント設定の保存に成功しました。" + +msgid "(required, password required for change)" +msgstr "(必須、変更にはパスワードが必要です)" + +msgid "(suggested, password required for change)" +msgstr "(推奨、変更にはパスワードが必要です)" + +msgid "(required to change the e-mail address)" +msgstr "(メールアドレスの変更が必要)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "メールアドレスの変更には現在のパスワードを入力しなくてはなりません" + +msgid "Recover a lost or forgotten password" +msgstr "なくしたか、忘れてしまったパスワードを回復する" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"パスワードを回復するためには、あなたのユーザーアカウントに利用可能なメールアドレスが設定され" +"ている必要があります。新しいパスワード設定するためのURLが書かれた確認のメッセージがメールで送" +"付されます。不正利用を防ぐために、パスワードの回復リクエストは20分間で一度しかできません。" +"確認のメッセージは、7日間有効です。もしその期間を越えてしまった場合は、パスワードの回復要求" +"は破棄されますので、再度実行する必要があります。" + +msgid "Your recovery request has been sent!" +msgstr "パスワード回復のリクエストが送信されました" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"もしあなたのアカウントにメールアドレスが設定されていない場合、メールを受け取ることができない" +"かもしれません。その場合、システム管理者に連絡して、指示をあおいでください" + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"管理者は、%s 緊急のパスワード回復 %s ページを利用して管理者アカウントを回復することができま" +"す。(サーバーの不具合や有効なメールアドレスがない場合など)" + +msgid "Recover" +msgstr "回復" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"パスワードのリセットを進めるためには、あなたがあなたであることを確認しなければなりません。良" +"い方法は、Gallery のディレクトリ内に何らかな小さな変更を実行してください。それは、あなたが正" +"しいパーミッションを持っていることを証明します。今から、あなたに小さなテキストファイル %s を" +"あなたのgallery2 ディレクトリ内に作成してください。そのファイルは次のランダムに作成された文字" +"を含む必要があります:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"利便性を高めるため、%s 正しいバージョンの login.txt %s を用意しています。それをダウンロードし" +"て、あなたのインストールディレクトリにコピーすると、準備が完了です" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "ファイルのアップロードが完了したら、リフレッシュ をクリックして次に進んでください" + +msgid "Emergency Administrator Password Reset" +msgstr "緊急の管理者パスワードリセット" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "このページは管理者向けの、すべてのアカウントのパスワードをリセットするためのものです" + +msgid "Authorization Confirmed" +msgstr "権限が確認されました" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"あなたの権限が確認されました。あなたの新しいパスワードを下に入力してください。新しいパスワー" +"ドの設定が終わると、ログインページに移動します" + +msgid "Recover Password for Username" +msgstr "ユーザー名のパスワードを回復する" + +msgid "You must enter a username to recover the password for." +msgstr "パスワードを回復するには、ユーザ名を入力しなくてはなりません" + +msgid "The username you entered does not exist." +msgstr "入力したユーザ名は無効です" + +msgid "Authorization Incorrect" +msgstr "権限が不正です" + +msgid "Recovery Instructions" +msgstr "回復の指示" + +msgid "AuthFile Missing" +msgstr "AuthFile がありません" + +msgid "AuthFile Unreadable" +msgstr "AuthFile が読めません" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "" +"あなたの %s ファイルは読み込むことができません。Gallery にそのファイルの読み込み権限を与えて" +"ください" + +msgid "Refresh" +msgstr "更新" + +msgid "This page will allow you to reset the password on your account." +msgstr "このページでは、あなたのアカウントのパスワードをリセットすることができます" + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"ユーザー名と与えられた権限に適合するリクエストがありません。パスワードをなくし" +"た場合のページで新しい権限を要求してください" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"あなたがアクセスしようとしているリクエストはなくなりました。パスワードをなくし" +"た場合のページから新たな権限を要求してください" + +msgid "Authorization missing" +msgstr "権限がありません" + +msgid "Username missing" +msgstr "ユーザ名が欠落しています" + +msgid "Submit" +msgstr "送信" + +#, c-format +msgid "Hello %s," +msgstr "こんにちは %s さん、" + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" +"%s のパスワード回復が %s によって %s でリクエストされたため、このメールを受け取っています" + +#, c-format +msgid "Your username is: %s" +msgstr "あなたのユーザ名は: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"パスワードの回復を完了するするためには、次のリンクをクリックして、必要な情報を入力してくださ" +"い" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "もしあなたがこの回復メールをリクエストした覚えがないのなら、無視してください" + +msgid "Thank you!" +msgstr "ありがとう" + +msgid "guest" +msgstr "ゲスト" + +#, c-format +msgid "display mode: %s" +msgstr "表示モード: %s" + +#, c-format +msgid "Date: %s" +msgstr "日付: %s" + +#, c-format +msgid "Owner: %s" +msgstr "所有者: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "サイズ: %d アイテム" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(合計 %d アイテム)" + +#, c-format +msgid "Views: %d" +msgstr "閲覧回数: %d" + +msgid "« album actions »" +msgstr "« アルバムアクション »" + +msgid "« item actions »" +msgstr "« アイテムアクション »" + +msgid "Go" +msgstr "Go" + +msgid "Navigation" +msgstr "ナビ" + +msgid "next" +msgstr "次" + +msgid "last" +msgstr "最後" + +#, c-format +msgid "Page %d of %d" +msgstr "ページ %d / %d" + +#, c-format +msgid "%d of %d" +msgstr "%d / %d" + +msgid "first" +msgstr "最初" + +msgid "previous" +msgstr "前" + +msgid "Page:" +msgstr "ページ:" + +#, c-format +msgid "%d. %s" +msgstr "%d。 %s" + +msgid "Size: " +msgstr "サイズ: " + +msgid "Unknown" +msgstr "未知" + +msgid "Full size: " +msgstr "完全: " + +msgid "Setting" +msgstr "設定" + +msgid "Use Global" +msgstr "グローバルを使う" + +msgid "Language selector" +msgstr "言語選択" + +msgid "Item actions" +msgstr "アイテム アクション" + +msgid "Use dropdown menu" +msgstr "ドロップダウンメニューを使う" + +msgid "Login block" +msgstr "ログインブロック" + +msgid "Links to album/photo peers" +msgstr "アルバム/画像へのリンク" diff --git a/Source/gallery2/modules/core/po/ko.po b/Source/gallery2/modules/core/po/ko.po new file mode 100644 index 0000000..71102f5 --- /dev/null +++ b/Source/gallery2/modules/core/po/ko.po @@ -0,0 +1,3557 @@ +# $Id: ko.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-14 14:48+0100\n" +"Last-Translator: Juice \n" +"Language-Team: Korean \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Poedit-Language: Korean\n" +"X-Poedit-Country: KOREA, REPUBLIC OF\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "Gallery Email Test" +msgstr "Gallery 전자 편지 시험 발송입니다." + +msgid "forever" +msgstr "지속" + +msgid "High Priority (Me first!)" +msgstr "우선권 높게 (Me first!)" + +msgid "Low Priority (I want to share!)" +msgstr "우선권 낮게 (I want to share!)" + +msgid "No Markup" +msgstr "표현식 사용하지 않음" + +msgid "BBCode" +msgstr "" + +msgid "Raw HTML" +msgstr "" + +msgid "Database" +msgstr "데이터베이스" + +msgid "File" +msgstr "파일" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d 분" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d 시간" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d 일" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d 주" + +msgid "" +msgstr "<없음>" + +msgid "No acceleration" +msgstr "" + +msgid "Partial acceleration" +msgstr "" + +msgid "Full acceleration" +msgstr "" + +msgid "Themes" +msgstr "테마" + +#, fuzzy +msgid "Updating Repository Index" +msgstr "인덱스 업데이트" + +msgid "Scanning plugins" +msgstr "" + +#, fuzzy +msgid "Update Plugin List" +msgstr "모든 플러그인 판 올림" + +msgid "Done." +msgstr "마침" + +msgid "Updating Packages" +msgstr "" + +#, fuzzy, c-format +msgid "Preparing %s" +msgstr "실행중...." + +#, c-format +msgid "Downloading %s" +msgstr "%s 내려받기" + +#, c-format +msgid "Activating %s" +msgstr "" + +#, fuzzy +msgid "Deleting Language Packs" +msgstr "기본 언어" + +#, fuzzy +msgid "Update completed with errors." +msgstr "파일이 추가 되었습니다." + +#, fuzzy +msgid "Update complete." +msgstr "파일이 추가 되었습니다." + +msgid "install" +msgstr "추가" + +msgid "upgrade" +msgstr "판올림" + +msgid "activate" +msgstr "사용" + +msgid "uninstall" +msgstr "제거" + +msgid "deactivate" +msgstr "사용안함" + +msgid "Inherit settings from parent album" +msgstr "부모 사진첩의 테마를 사용합니다." + +msgid "Use these settings" +msgstr "이 설정값을 사용합니다." + +msgid "Installing the core module" +msgstr "Core 모듈 설치중" + +msgid "key" +msgstr "" + +msgid "All access" +msgstr "모두 접근" + +msgid "[core] View item" +msgstr "[core] 아이템 보기" + +msgid "[core] View resized version(s)" +msgstr "[core] 작은 이미지 보기" + +msgid "[core] View original version" +msgstr "[core] 원본 보기" + +msgid "[core] View all versions" +msgstr "[core] 모든 형식 보기" + +msgid "[core] Add sub-album" +msgstr "[core] 하위 사진첩 추가" + +msgid "[core] Add sub-item" +msgstr "[core] 하위 아이템 추가" + +msgid "[core] Edit item" +msgstr "[core] 아이템 편집" + +msgid "[core] Change item permissions" +msgstr "[core] 아이템 권한 조절" + +msgid "[core] Delete item" +msgstr "[core] 아이템 지우기" + +#, fuzzy +msgid "Upgrading permissions" +msgstr "권한 업그레이드중입니다." + +#, fuzzy +msgid "Deleting old permission tables" +msgstr "오래된 테이블 권한을 삭제중입니다." + +msgid "Registered Users" +msgstr "동록된 사용자" + +msgid "All Users" +msgstr "모든 사용자" + +msgid "Detecting broken derivatives" +msgstr "" + +#, fuzzy +msgid "Clearing fast-download cache" +msgstr "빠른-내려받기 캐쉬 지우는중입니다." + +#, fuzzy +msgid "Deleting old fast-download cache" +msgstr "예전 빠른-내려받기 캐쉬 지우는 중" + +msgid "Updating panorama items" +msgstr "" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "사이트 관리자" + +# 동호회 이름 +msgid "Everybody" +msgstr "Everybody" + +msgid "Guest" +msgstr "손님" + +msgid "Gallery" +msgstr "" + +msgid "This is the main page of your Gallery" +msgstr "Gallery의 첫장입니다." + +msgid "Converting MySQL data to UTF8" +msgstr "MYSQL 자료 UTF-8로 변환중" + +#, fuzzy, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "권한 업그레이드중입니다. (%d 아이템 완료, %d 남았습니다.)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "" + +#, fuzzy, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "권한 업그레이드중입니다. (%d 아이템 완료, %d 남았습니다.)" + +#, fuzzy, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "권한 업그레이드중입니다. (%d 아이템 완료, %d 남았습니다.)" + +#, fuzzy, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "권한 업그레이드중입니다. (%d 아이템 완료, %d 남았습니다.)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "오래된 세션파일을 삭제중입니다. ( %d번 반복됨)" + +msgid "add items" +msgstr "아이템 추가" + +msgid "Album created successfully." +msgstr "사진첩을 만들었습니다." + +msgid "add sub-album" +msgstr "하위 산진첩 추가" + +msgid "add items confirmation" +msgstr "추가 아이템 확인" + +msgid "Base filename" +msgstr "파일 이름을 기본으로" + +msgid "Caption" +msgstr "설명" + +msgid "Blank" +msgstr "비워둠" + +msgid "From Web Browser" +msgstr "웹 브라우저로" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d 메가바이트" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d 킬로바이트" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "" + +msgid "Gallery Item Administration" +msgstr "Gallery 아이템 관리" + +msgid "delete an item" +msgstr "아이템 삭제" + +msgid "delete confirmation" +msgstr "삭제 확인" + +#, c-format +msgid "delete %s" +msgstr "%s 삭제" + +#, c-format +msgid "edit %s" +msgstr "%s 편집" + +msgid "Settings saved successfully." +msgstr "설정 저장을 완료하였습니다." + +#, fuzzy +msgid "Apply resized image settings" +msgstr "테마 설정이 복구되었습니다." + +#, fuzzy +msgid "Preparing..." +msgstr "실행중...." + +msgid "Apply thumbnail settings" +msgstr "" + +msgid "Rebuilding thumbnails..." +msgstr "" + +msgid "Album" +msgstr "사진첩" + +#, c-format +msgid "Processing image %d of %d" +msgstr "%d개의 이미지 처리중입니다. (총 %d개의 아이템이 있습니다.)" + +msgid "Changes saved successfully" +msgstr "수정 사항을 저장하였습니다." + +msgid "Animation Size" +msgstr "애니메이션 크기" + +msgid "edit captions" +msgstr "설명 편집" + +msgid "General" +msgstr "일반" + +msgid "Movie Size" +msgstr "동영상 크기" + +msgid "Photo" +msgstr "사진" + +msgid "Thumbnail cropped successfully" +msgstr "썸네일 잘라내기 성공하였습니다." + +msgid "Thumbnail reset successfully" +msgstr "썸네일을 재설정했습니다." + +msgid "Photo 5x3" +msgstr "사진 5x3" + +msgid "Photo 6x4" +msgstr "사진 6x4" + +msgid "Photo 7x5" +msgstr "사진 7x5" + +msgid "Photo 10x8" +msgstr "사진 10x8" + +msgid "Fullscreen 4x3" +msgstr "전체 크기 4x3" + +msgid "Widescreen 16x9" +msgstr "" + +msgid "CinemaScope 2.35x1" +msgstr "" + +msgid "Square 1x1" +msgstr "정사작형 1x1" + +msgid "As Image" +msgstr "" + +msgid "Landscape" +msgstr "가로 방향" + +msgid "Portrait" +msgstr "" + +msgid "Crop Thumbnail" +msgstr "썸네일 잘라내기" + +msgid "Reverted rotate and scale changes successfully" +msgstr "원본의 사진으로 복구하였습니다." + +msgid "Rotated photo successfully" +msgstr "사진을 회전시켰습니다." + +msgid "Scaled photo successfully" +msgstr "해상도가 변경되었습니다." + +msgid "Modify Photo" +msgstr "사진 수정" + +#, fuzzy +msgid "Successfully changed theme" +msgstr "%s 테마를 사용합니다." + +msgid "« default theme »" +msgstr "« 기본 테마 »" + +msgid "Theme" +msgstr "테마" + +msgid "make highlight" +msgstr "" + +msgid "move item" +msgstr "아이템 이동" + +#, c-format +msgid "move %s" +msgstr "%s 이동" + +#, c-format +msgid "edit %s permissions" +msgstr "%s 권한 조절" + +msgid "reorder items" +msgstr "아이템 순서 바꾸기" + +msgid "Maintenance" +msgstr "유지 관리" + +msgid "Gallery Site Administration" +msgstr "" + +msgid "site admin" +msgstr "" + +msgid "Gallery User Administration" +msgstr "Gallery 사용자 관리" + +msgid "change password" +msgstr "열쇠 글 바꾸기" + +msgid "your account" +msgstr "당신의 계정" + +msgid "Password Recovery" +msgstr "열쇠글을 복구합니다." + +msgid "Core" +msgstr "" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 Core 모듈" + +msgid "Add Items" +msgstr "아이템 추가하기" + +msgid "Edit Album" +msgstr "사진첩 편집" + +msgid "Edit Photo" +msgstr "사진 편집" + +msgid "Edit Movie" +msgstr "동영상 편집" + +msgid "Add Album" +msgstr "사진첩 추가하기" + +msgid "Edit Permissions" +msgstr "사용 허가권 편집" + +msgid "View Permissions" +msgstr "사용 허가권 보기" + +msgid "Delete Album" +msgstr "사진첩 삭제" + +msgid "Delete Photo" +msgstr "사진 삭제" + +msgid "Delete Movie" +msgstr "동영상 삭제" + +msgid "Move Album" +msgstr "사진첩 이동" + +msgid "Move Photo" +msgstr "사진 이동" + +msgid "Move Movie" +msgstr "동영상 이동" + +msgid "Edit Captions" +msgstr "설명 편집" + +msgid "Make Highlight" +msgstr "" + +msgid "Reorder Items" +msgstr "아이템 순서 바꾸기" + +msgid "Site Admin" +msgstr "사이트 관리" + +msgid "Login" +msgstr "로그인" + +msgid "Your Account" +msgstr "당신의 계정" + +msgid "Logout" +msgstr "로그 아웃" + +msgid "Plugins" +msgstr "" + +msgid "Users" +msgstr "사용자" + +msgid "Groups" +msgstr "동아리" + +msgid "Performance" +msgstr "성능" + +msgid "Toolkit Priority" +msgstr "" + +msgid "Graphics Toolkits" +msgstr "그래픽 툴킷" + +msgid "Account Settings" +msgstr "계정 설정" + +msgid "Change Password" +msgstr "열쇠 글 바꾸기" + +#, c-format +msgid "Edit %s" +msgstr "%s 편집" + +#, c-format +msgid "Delete %s" +msgstr "%s 지우기" + +#, c-format +msgid "Move %s" +msgstr "%s 이동" + +msgid "Build all thumbnails/resizes" +msgstr "" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" + +msgid "Build All Thumbnails/Resizes" +msgstr "" + +msgid "Debug output for failed items:" +msgstr "실패한 아이템에 대한 디버그 출력:" + +#, fuzzy, c-format +msgid "Checked %d items" +msgstr "%d 아이템을 검사하였습니다." + +#, c-format +msgid "%d items built" +msgstr "" + +#, c-format +msgid "%d items failed" +msgstr "%d개의 아이템 실패함" + +#, fuzzy +msgid "Convert MySQL database to UTF8" +msgstr "MYSQL 자료 UTF-8로 변환중" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" + +#, fuzzy +msgid "Database successfully converted to UTF8" +msgstr "아이템이 삭제되었습니다." + +msgid "No conversion required" +msgstr "" + +msgid "Delete user sessions" +msgstr "사용자 세션 삭제" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "" + +#, fuzzy, c-format +msgid "Deleted %d sessions." +msgstr "사용자 세션 삭제" + +msgid "Delete database cache" +msgstr "데이터베이스 캐쉬 삭제" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "디렉터리를 성공적으로 지웠습니다. : %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "디렉터리를 지울 수 없습니다. : %s" + +msgid "Delete template cache" +msgstr "템플릿 저장소 삭제" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" + +msgid "Template cache deleted successfully" +msgstr "템플릿 캐쉬를 삭제하였습니다." + +msgid "album" +msgstr "사진첩" + +msgid "Animation" +msgstr "애니메이션" + +msgid "animation" +msgstr "애니메이션" + +msgid "Gallery Core" +msgstr "" + +msgid "Gallery Core Module" +msgstr "Gallery Core 모듈" + +msgid "Search descriptions" +msgstr "설명으로 찾기" + +msgid "Search keywords" +msgstr "주요 단어로 찾기" + +msgid "Search summaries" +msgstr "간단한 설명에서 찾기" + +msgid "Search titles" +msgstr "제목으로 찾기" + +msgid "Description" +msgstr "설명" + +msgid "Keywords" +msgstr "주요 단어" + +msgid "Summary" +msgstr "간단한 설명" + +msgid "Title" +msgstr "제목" + +msgid "Owner" +msgstr "소유자" + +#, fuzzy +msgid "Dynamic Album" +msgstr "사진첩 편집" + +#, fuzzy +msgid "dynamic album" +msgstr "사진첩 편집" + +msgid "Group" +msgstr "" + +msgid "group" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Movie" +msgstr "동영상" + +msgid "movie" +msgstr "동영상" + +msgid "photo" +msgstr "사진" + +msgid "Couldn't create repository cache path." +msgstr "" + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" + +msgid "Official Release Repository" +msgstr "" + +#, fuzzy +msgid "Experimental Repository" +msgstr "창고" + +#, fuzzy +msgid "Community Repository" +msgstr "창고" + +#, fuzzy, c-format +msgid "Error downloading index from '%s'." +msgstr "'%s' 인덱스를 내려 받는중 오류발생했습니다." + +#, fuzzy, c-format +msgid "Error downloading index hash from '%s'." +msgstr "'%s' 불필요한 인덱스를 내려 받는중 오류발생했습니다." + +msgid "Index integrity check failed." +msgstr "인덱스 보전성 확인 검사 실패" + +msgid "« default sort order »" +msgstr "« 기본 정열 »" + +msgid "Manual sort order" +msgstr "수동 정열" + +#, fuzzy +msgid "Origination Date" +msgstr "최초의 날짜 보기" + +msgid "Creation Date" +msgstr "생성된 날짜" + +msgid "Last Changed Date" +msgstr "최근 수정된 날짜" + +msgid "Name" +msgstr "이름" + +msgid "View Count" +msgstr "조회수" + +msgid "Random" +msgstr "무작위" + +msgid "« no presort »" +msgstr "« 분류 없음 »" + +msgid "Albums First" +msgstr "사진첩을 처음으로" + +msgid "Most Viewed First" +msgstr "조회수가 많은것을 처음으로" + +msgid "Ascending" +msgstr "오름 차순" + +msgid "Descending" +msgstr "내림 차순" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" + +msgid "This page is valid XHTML 1.0" +msgstr "이 페이지는 XHTML 1.0 규격을 따릅니다." + +msgid "Donate to the Gallery project" +msgstr "Gallery 프로젝트에 기부를 부탁합니다." + +msgid "G2.2: Double Double" +msgstr "" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "사용된 메모리: %s, 총: %s" + +msgid "Rows per album page" +msgstr "쪽 당 가로줄 수" + +msgid "Columns per album page" +msgstr "쪽당 세로줄 수" + +msgid "Number of items to show per page" +msgstr "" + +msgid "Row height (pixels)" +msgstr "높이 (픽셀)" + +msgid "Column width (pixels)" +msgstr "폭 (픽셀)" + +msgid "Show image owners" +msgstr "이미지 소유자 보기" + +msgid "Show album owners" +msgstr "사진첩 주인 보기" + +msgid "Show micro navigation thumbnails" +msgstr "썸네일에 메뉴보여주기" + +msgid "Blocks to show in the sidebar" +msgstr "사이드 바에 표시할 것들." + +msgid "Blocks to show on album pages" +msgstr "사진첩에 표시할 것들" + +msgid "Blocks to show on photo pages" +msgstr "사진 페이지에 표시할 것들" + +#, fuzzy +msgid "Thumbnail links in dynamic albums" +msgstr "하위 사진첩에도 이 썸네일의 크기를 사용합니다." + +#, fuzzy +msgid "Browse dynamic album" +msgstr "대상을 선택하십시오." + +msgid "Jump to original album" +msgstr "" + +msgid "Separate link to original album" +msgstr "" + +msgid "View Samples" +msgstr "예제 보기" + +msgid "Album Frame" +msgstr "사진첩 틀" + +msgid "Item Frame" +msgstr "아이템 틀" + +msgid "Photo Frame" +msgstr "사진 틀" + +msgid "Color Pack" +msgstr "색 꾸러미" + +msgid "You must enter a number greater than 0" +msgstr "0 보다 큰 숫자를 입력해야 합니다." + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "오디오" + +msgid "audio" +msgstr "오디오" + +msgid "Archive" +msgstr "" + +msgid "archive" +msgstr "" + +msgid "Document" +msgstr "문서" + +msgid "document" +msgstr "문서" + +msgid "Spreadsheet" +msgstr "스프레드 시트" + +msgid "spreadsheet" +msgstr "스프레드 시트" + +#, fuzzy +msgid "file" +msgstr "파일" + +msgid "Back" +msgstr "뒤로" + +#, c-format +msgid "Back to %s" +msgstr "%s으(로) 돌아가기" + +msgid "User" +msgstr "사용자" + +msgid "user" +msgstr "사용자" + +msgid "Optimize database" +msgstr "데이터베이스 최적화" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" + +msgid "Database optimized successfully" +msgstr "데이터베이스 최적화 성공." + +msgid "Reset view counts" +msgstr "조회 수 초기화" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"모든 사진첩과 아이템들의 조회 수를 0으로 초기화 시킵니다. This task flushes the database " +"cache as well." + +msgid "View counts reset successfully" +msgstr "조회 수 초기화 성공" + +msgid "Refresh capture dates" +msgstr "" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" + +msgid "Processing..." +msgstr "실행중...." + +msgid "Refresh Capture Dates" +msgstr "" + +#, c-format +msgid "Processing item %d of %d" +msgstr "%d개의 아이템을 처리중입니다. (총 %d개의 아이템이 있습니다.)" + +#, c-format +msgid "Updated %d of %d items" +msgstr "%d개의 아이템이 업데이트 되었습니다. (%d개의 아이템이 있습니다.)" + +msgid "System information" +msgstr "시스템 정보" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "" + +msgid "core" +msgstr "" + +msgid "unknown" +msgstr "알수 없음" + +msgid "Gallery version" +msgstr "" + +msgid "PHP version" +msgstr "" + +msgid "Webserver" +msgstr "웹 서버" + +msgid "Toolkits" +msgstr "툴킷" + +msgid "Acceleration" +msgstr "" + +msgid "Operating system" +msgstr "운영 시스템" + +msgid "Default theme" +msgstr "기본 테마" + +msgid "gettext" +msgstr "" + +#, fuzzy +msgid "enabled" +msgstr "설치되었음" + +#, fuzzy +msgid "disabled" +msgstr "%d개의 아이템 실패함" + +msgid "Locale" +msgstr "언어 환경" + +msgid "Browser" +msgstr "브라우저" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "" + +msgid "Successfully saved theme settings" +msgstr "테마 설정을 완료하였습니다." + +msgid "General Settings" +msgstr "일반 설정" + +msgid "Settings saved successfully" +msgstr "설정이 저장되었습니다." + +msgid "Added local upload directory successfully" +msgstr "로컬 업로드 디렉토리가 추가되었습니다." + +msgid "Removed local upload directory successfully" +msgstr "로컬 업로드 디렉터리를 제거하였습니다." + +msgid "Test email sent successfully" +msgstr "전자 편지 시험 발송에 성공하였습니다." + +msgid "There was a problem processing your request, see below for details." +msgstr "당신의 요청을 처리하는 중 문제가 발생했습니다. 아래에서 그 자세한 정보를 확인하십시오." + +msgid "Error sending test email, see below for details." +msgstr "시험 전자 편지 발송에 오류가 발생하였습니다. 아래에서 자세한 내용을 확인하십시요." + +msgid "Language Settings" +msgstr "언어 설정" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"기본으로 사용할 언어를 선택하십시오. 여기서 선택한 언어는 Gallery에서 기본으로 사용될 언어입" +"니다. 언어 선택기가 사용이 가능하도록 한다면, 방문자는 개인적으로 이 언어 선택기를 사용할 수 " +"있습니다. 또한, Gallery에서는 각 브라우저의 언어 환경을 알아낼 수 있다면, 각 방문자에게 맞는 " +"언어를 자동으로 보여 줄 수 있습니다." + +msgid "Default language" +msgstr "기본 언어" + +msgid "Check Browser Preference" +msgstr "브라우저 환경 설정 검사" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"당신의 웹 서버는 지역화를 지원하지 않습니다. 시스템 관리자에게 %s 옵션이 가능하도록 PHP를 설" +"정해 줄 것을 요청하십시오." + +msgid "Date Formats" +msgstr "날짜 형식" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Gallery에서 사용할 날짜 형식을 결정합니다. 자세한 날짜 형식은 %sphp.net%s을 참고하십시오. 일" +"부는 활성화된 언어에 따라 바뀔 수도 있습니다." + +msgid "Style" +msgstr "모양" + +msgid "Format" +msgstr "형식" + +msgid "Sample" +msgstr "예제" + +msgid "Date" +msgstr "날짜" + +msgid "Time" +msgstr "시간" + +msgid "Date/Time" +msgstr "날짜 / 시간" + +msgid "Filesystem Permissions" +msgstr "파일 시스템 권한" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Gallery에서 만든 파일과 디렉터리에 기본을 사용할 권한을 설정합니다. 단, 이미 만들어진 파일과 " +"디렉터리에는 적용이 되지 않습니다." + +msgid "New directories" +msgstr "새 디렉터리" + +msgid "New files" +msgstr "새 파일" + +msgid "Session Settings" +msgstr "세션 설정" + +msgid "Session Lifetime" +msgstr "세션 남길 시간" + +msgid "Inactivity Timeout" +msgstr "" + +msgid "Embedded Markup" +msgstr "사용할 표현식" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"사용자 입력란에 어떤 표현식을 사용할 것입니까? 보안상 raw Html은 사용하지 않는 것이 좋습니" +"다. BBCode는 글자를 두껍게 하거나 기울이고, 이미지나 웹 주소 등을 안전하게 표현하는 방식입니" +"다." + +msgid "Markup" +msgstr "표현식" + +msgid "Email" +msgstr "전자 편지" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Gallery는 기본적으로 PHP의 Mail 함수를 이용해 전자 편지를 보낼 수 있습니다. 아래의 글 상자에 " +"관련 정보를 입력해 smtp/mail 서버를 이용해 전자 편지를 보낼 수도 있습니다. 선택적 추가 사" +"항 : 서버이름 뒤의 포트는 기본 포트를 사용합니다." + +msgid "Server" +msgstr "서버" + +msgid "Username" +msgstr "사용자 이름" + +msgid "Password" +msgstr "열쇠 글" + +msgid "SMTP From Address" +msgstr "전자 편지 주소" + +msgid "Invalid email address" +msgstr "전자 우편 주소가 올바르지 않습니다." + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"당신이 전자 편지 주소를 올바르게 입력했다면, 전자 편지가 발송 될것입니다. (PHP 메일아니면 " +"SMTP 설정을 사용할것입니다.) 아래의 글 상자에 전자우편 주소를 입력하세요" + +msgid "Send Email" +msgstr "전자 편지를 보냅니다." + +msgid "Email Test Error" +msgstr "전자 편지 검사 오류" + +msgid "Cookies" +msgstr "쿠키" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Gallery가 다른 어플리케이션(portal, CMS, forum, etc.)에 포함되었을때, 다음 중 하나를 선택해 " +"사용이 가능합니다. 누구든 쿠키설정에 관해 걱정같은 것은 필요없습니다. 이에 관한 많은 정보를 " +"알아 보십시요." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" +"쿠키 설정을 한번씩 바꿀때 마다, 모든 등록된 사용자사는 브라우저의 쿠키 캐쉬를 비워" +"주어야 할 것입니다. 만일 그렇게 하지 않으면, 로그인/ 로그아웃/ lost session 되는 문제가 발생" +"할 것입니다." + +msgid "Path" +msgstr "경로" + +msgid "Invalid cookie path" +msgstr "쿠기 경로가 올바르지 않습니다." + +msgid "Domain" +msgstr "도메인" + +msgid "Invalid cookie domain" +msgstr "쿠키 도메인이 올바르지 않습니다." + +msgid "Locking System" +msgstr "잠금 장치" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Gallery는 각기 다른 사용자가 동시에 수정하는 것을 막기 위해 잠금 장치를 사용합니다. 이것은 각" +"각 이익과 손해의 두 가지 유형의 잠금장치입니다. 파일 기반의 잠금 장치는 빠르고 능률적" +"이긴 하지만, NFS 파일시스템과 Windows에서는 사용하지 않는 것이 좋습니다. 데이터베이스 " +"잠금 장치는 느리긴 하지만 파일 기반의 잠금장치보다 신뢰도가 좋습니다. 만일 둘 중 어느 것을 선" +"택해야 할지 모르겠다면 파일 잠금 장치를 사용할 것을 권합니다. 만일 대다수의 잠금의 휴식을 얻" +"고자 한다면, 데이터베이스의 잠금 장치로 전환할 수도 있습니다. It's ok to switch back and " +"forth." + +msgid "Lock system" +msgstr "시스템 잠금" + +msgid "Helper Processes" +msgstr "프로세스 도움말" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Gallery의 일부 모듈은 이미지 처리(운영과 보관)를 위해 당신 서버의 일부 프로그램을 사용합니" +"다. 그 프로그램들의 점유율이 높아지면 서버의 성능에 영향을 끼칠 것입니다. 당신은 보다 나은 성" +"능을 위해 해당 프로그램들의 점유율을 낮출 수 있습니다. 만일 당신이 호스팅을 받고 있고 호스트" +"에 불만이 있다면 아래서 우선권을 낮음으로 바꾸어 주십시오." + +msgid "Priority" +msgstr "우선권" + +msgid "Save" +msgstr "저장" + +msgid "Reset" +msgstr "다시" + +msgid "Create A New Group" +msgstr "새 동아리 만들기" + +msgid "Group Name" +msgstr "동아리 이름" + +msgid "(required)" +msgstr "(필수)" + +msgid "You must enter a group name" +msgstr "동아리 이름을 입력하십시요." + +#, c-format +msgid "Group '%s' already exists" +msgstr "'%s' 동아리는 이미 있습니다." + +msgid "Create Group" +msgstr "동아리 만들기" + +msgid "Cancel" +msgstr "취소" + +msgid "Create A New User" +msgstr "새 사용자 만들기" + +msgid "You must enter a username" +msgstr "사용자 이름을 입력해야 합니다." + +#, c-format +msgid "Username '%s' already exists" +msgstr "사용자 이름 '%s'는 이미 있습니다." + +msgid "Full Name" +msgstr "전체 이름" + +msgid "Email Address" +msgstr "전자 편지 주소" + +msgid "You must enter an email address" +msgstr "전자 편지 주소를 입력해야 합니다." + +msgid "Language" +msgstr "언어" + +msgid "You must enter a password" +msgstr "열쇠 글을 입력해야 합니다." + +msgid "Verify Password" +msgstr "열쇠 글 확인" + +msgid "You must enter the password a second time" +msgstr "두번째 열쇠 글을 입력하십시오." + +msgid "The passwords you entered did not match" +msgstr "열쇠 글이 일치하지 않습니다." + +msgid "Create User" +msgstr "사용자 만들기" + +msgid "Delete A Group" +msgstr "동아리 삭제" + +msgid "Are you sure?" +msgstr "정말입니까?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Gallery에서 %s를 완전히 제거하였습니다. 취소는 할 수 없습니다." + +msgid "Delete" +msgstr "삭제" + +msgid "Delete a User" +msgstr "사용자 삭제" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "사용자 %s는 %s 아이템의 소유자입니다." + +#, c-format +msgid "Delete user %s and..." +msgstr "사용자%s을(를) 지웠습니다. 그리고..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "%s의 모든 아이템을 새 소유자에게 할당합니다." + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "새 소유자(이는 사이트 관리자중 하나가 자리에 없다는 의미입니다.)" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "" +"'%s' 사용자는 없는 사용자입니다. 존재하지 않는 사용자에게는 아이템을 할당할 수 없습니다." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "새 소유자는 삭제가 된 이전 사용자와 다른 사용자 이여야 합니다." + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" + +msgid "Edit a group" +msgstr "동아리 편집" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "'%s' 동아리의 회원 편집" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "'%s'님을 '%s' 동아리에 추가했습니다." + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "%s 사용자를 %s 동아리에서 제거하였습니다." + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "이 동아리에 %d명의 회원이 있습니다." + +msgid "Members" +msgstr "회원" + +msgid "« first" +msgstr "« 첫번째" + +msgid "« back" +msgstr "« 뒤로" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "%d 쪽보는중 (총 %d쪽)" + +msgid "next »" +msgstr "다음 »" + +msgid "last »" +msgstr "마지막 »" + +msgid "Filter" +msgstr "이름으로 찾기" + +msgid "Clear" +msgstr "지우기" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "%d명의 사용자를 찾았습니다." + +msgid "Remove selected" +msgstr "선택된 사용자 제거" + +msgid "You must select a user to remove." +msgstr "제거할 사용자를 선택하십시오." + +msgid "You can't remove yourself from this group." +msgstr "당신 스스로 이 동아리에서 당신을 제거할 수 없습니다." + +msgid "Add Member" +msgstr "회원 추가" + +msgid "Add" +msgstr "추가" + +msgid "You must enter a username." +msgstr "사용자 이름을 입력해야 합니다." + +#, c-format +msgid "User '%s' does not exist." +msgstr "사용자 '%s'는 없습니다." + +msgid "This user already is in this group." +msgstr "이 사용자는 이미 이 동아리에 소속되어 있습니다." + +msgid "Done" +msgstr "마침" + +msgid "Edit a user" +msgstr "사용자 편집" + +msgid "That username is already in use" +msgstr "이 사용자 이름은 이미 사용중입니다." + +msgid "You must enter a new username" +msgstr "새 사용자 이름을 입력해야 합니다." + +msgid "E-mail Address" +msgstr "전자 편지 주소" + +msgid "(suggested)" +msgstr "(건의)" + +msgid "Options" +msgstr "옵션" + +#, fuzzy +msgid "Lock user." +msgstr "시스템 잠금" + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" + +#, fuzzy +msgid "Reset failed login count." +msgstr "조회 수 초기화" + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "" + +msgid "Group Management" +msgstr "동아리 관리" + +#, c-format +msgid "Removed group '%s'" +msgstr "'%s' 동아리 제거되었습니다." + +#, c-format +msgid "Created group '%s'" +msgstr "'%s' 동아리가 만들어 졌습니다." + +#, c-format +msgid "Modified group '%s'" +msgstr "'%s' 동아리 수정" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "총 %d개의 동아리가 있습니다." + +msgid "Edit Group" +msgstr "동아리 편집" + +msgid "Edit" +msgstr "편집" + +msgid "Add/Remove Users" +msgstr "사용자 추가/제거" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "'%s' 동아리는 존재하지 않습니다." + +msgid "You cannot delete that group" +msgstr "당신은 동호회를 지울 수 없습니다." + +msgid "You cannot edit that group's users" +msgstr "당신은 동호회 회원을 편집할 수 없습니다." + +msgid "Edit Group (by list)" +msgstr "동아리 편집 (목록 출력)" + +msgid "Action" +msgstr "명령" + +msgid "edit" +msgstr "편집" + +msgid "delete" +msgstr "삭제" + +msgid "members" +msgstr "회원들" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "%d의 동아리를 찾았습니다." + +msgid "System Maintenance" +msgstr "시스템 유지 관리" + +#, c-format +msgid "Completed %s task successfully." +msgstr "%s 작업이 완료되었습니다." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "" + +msgid "Task name" +msgstr "이름" + +msgid "Last run" +msgstr "마지막 실행" + +msgid "Success/Fail" +msgstr "성공/실패" + +msgid "Not run yet" +msgstr "아직 실행 하지 않았음." + +msgid "Success" +msgstr "성공" + +msgid "Failed" +msgstr "실패" + +msgid "run now" +msgstr "지금 실행" + +msgid "Last Run Details:" +msgstr "최근 실행 정보:" + +#, fuzzy +msgid "Performance Tuning" +msgstr "성능 조율" + +msgid "Updated performance settings successfully" +msgstr "성능 설정을 업데이트하였습니다." + +msgid "Deleted all saved pages" +msgstr "모든 저장된 페이지를 삭제합니다." + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" + +msgid "Partial Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" + +msgid "Full Acceleration" +msgstr "" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" + +msgid "Here are some standard acceleration profiles:" +msgstr "" + +msgid "Medium acceleration" +msgstr "" + +msgid "High acceleration" +msgstr "" + +msgid "Guest Users" +msgstr "" + +msgid "Expires after:" +msgstr "" + +msgid "Clear Saved Pages" +msgstr "" + +msgid "Status: Inactive" +msgstr "상태 : 비활성" + +#, fuzzy +msgid "__PLUGIN__ deactivated" +msgstr "사용안함 __PLUGIN__" + +msgid "Status: Active" +msgstr "상태 : 활성" + +msgid "__PLUGIN__ activated" +msgstr "" + +msgid "Status: Not Installed" +msgstr "상태: 설치되지 않았음." + +msgid "__PLUGIN__ uninstalled" +msgstr "" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "상태 : 판 올림이 필요합니다.( 비활성)" + +#, fuzzy +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "상태 : 호환되지 않은 모듈 (비활성)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "" + +msgid "__PLUGIN__ needs configuration" +msgstr "" + +msgid "__PLUGIN__ deleted" +msgstr "" + +#, fuzzy +msgid "Warning!" +msgstr "경고:" + +#, fuzzy +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "정말 __PLUGIN__ 모듈을 정말로 제거하시겠습니까?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "이 모듈에 의해 생성된 자료및 권한도 같이 지워질 것입니다." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +#, fuzzy +msgid "Do you really want to delete __PLUGIN__?" +msgstr "정말 __PLUGIN__ 모듈을 정말로 제거하시겠습니까?" + +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "" + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "" + +msgid "up to date(__COUNT__)" +msgstr "" + +msgid "not installed(__COUNT__)" +msgstr "" + +msgid "upgrade required(__COUNT__)" +msgstr "" + +msgid "incompatible(__COUNT__)" +msgstr "" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "" + +#, fuzzy +msgid "Gallery Plugins" +msgstr "Gallery 모듈" + +msgid "Get More Plugins" +msgstr "" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" + +#, fuzzy +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Gallery의 기능은 모듈로 분리되어 있습니다. 필요한 기능은 따로 내려 받아 추가하거나 필요에 따" +"라 설정하여 사용할 수도 있으며 필요하지 않는 기능은 제거하거나 막아 둘수도 있습니다." + +#, fuzzy +msgid "Plugin Name" +msgstr "전체 이름" + +msgid "Installed" +msgstr "설치되었음" + +msgid "Version" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "help" +msgstr "" + +#, c-format +msgid "Screenshot for %s" +msgstr "" + +msgid "Incompatible plugin!" +msgstr "호한되지 않은 플러그인 입니다!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Core API에 의해 요구됨: %s ( 사용가능함: %s )" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "플러그인 API에 필요함 : %s ( 사용가능함: %s )" + +msgid "configure" +msgstr "설정" + +#, fuzzy +msgid "up to date" +msgstr "업데이트" + +#, fuzzy +msgid "upgrade required" +msgstr "(필수)" + +#, fuzzy +msgid "not installed" +msgstr "제거" + +#, fuzzy +msgid "incompatible" +msgstr "호한되는 플러그인" + +msgid "Repository" +msgstr "창고" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "" + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "" + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "" + +msgid "The repository index has been successfully updated." +msgstr "" + +msgid "All plugins are already up-to-date." +msgstr "모든 플러그인은 이미 최근의 것들입니다." + +#, c-format +msgid "%s plugin updated." +msgstr "" + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "" + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "" + +#, c-format +msgid "last updated on %s" +msgstr "" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "" + +#, fuzzy +msgid "Repository Error" +msgstr "창고" + +#, fuzzy +msgid "You must select at least one repository." +msgstr "제거할 사용자를 선택하십시오." + +msgid "Ok" +msgstr "" + +msgid "Configure your Gallery" +msgstr "" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" + +#, fuzzy +msgid "Continue" +msgstr "계속...." + +#, fuzzy +msgid "Download Plugin List" +msgstr "%s 내려받기" + +#, fuzzy +msgid "Show Repository List" +msgstr "창고" + +msgid "Upgrade Gallery" +msgstr "Gallery 판 올림" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" + +#, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "" + +#, fuzzy, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"새 Core 모듈이 사용이 가능합니다. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." + +#, fuzzy +msgid "upgrade available" +msgstr "Gallery 판 올림" + +msgid "locked" +msgstr "" + +msgid "Theme Name" +msgstr "테마 이름" + +msgid "Module Name" +msgstr "모듈 이름" + +msgid "Latest" +msgstr "마지막" + +msgid "Locked Plugin" +msgstr "" + +msgid "Incompatible Plugin" +msgstr "호한되는 플러그인" + +#, fuzzy +msgid "Upgrade Available" +msgstr "모두 판 올림" + +msgid "download" +msgstr "내려받기" + +msgid "modify" +msgstr "수정" + +msgid "Upgrade All Plugins" +msgstr "모든 플러그인 판 올림" + +#, fuzzy +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Gallery는 자동으로 테마와 모듈을 최신으로 업그레이드가 가능합니다. 새로 내려 받을 플러그인이 " +"없습니다." + +msgid "Upgrade All" +msgstr "모두 판 올림" + +#, fuzzy, c-format +msgid "Download %s" +msgstr "%s 내려받기" + +msgid "No packages have been selected." +msgstr "선텍된 꾸러미가 없습니다." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" + +#, fuzzy +msgid "Base Packages" +msgstr "기본 파일" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "" + +#, fuzzy +msgid "Language Packages" +msgstr "언어 설정" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "" + +#, fuzzy, c-format +msgid "%s version %s" +msgstr "%s 권한 조절" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "" + +msgid "No compatible language packages available" +msgstr "" + +msgid "You must select a base package before choosing language packs." +msgstr "" + +msgid "Update" +msgstr "업데이트" + +msgid "Gallery Themes" +msgstr "Gallery 테마" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "%s 테마를 사용합니다." + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "%s 테마를 사용하지 않습니다." + +#, c-format +msgid "Successfully installed theme %s" +msgstr "%s 테마를 설치하였습니다." + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "%s 테마를 제거하였습니다." + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "%s 테마의 판 올림을 합니다." + +msgid "Successfully saved default album settings" +msgstr "기본 사진첩 설정완료 하였습니다." + +msgid "Restored theme settings" +msgstr "테마 설정이 복구되었습니다." + +msgid "Defaults" +msgstr "기본" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"여기에서 Gallery에서 기본으로 사용할 테마를 선택하십시요. 여기서 선택된 테마는 각 앨범에서 기" +"본적으로 사용될 테마입니다." + +msgid "Default sort order" +msgstr "기본 정열" + +msgid "with" +msgstr "...와 함께" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "새 사진첩" + +#, fuzzy +msgid "Save Defaults" +msgstr "기본" + +#, c-format +msgid "%s Theme Settings" +msgstr "%s 테마 설정" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"여기서 설정한 값은 테마 전체에 영향을 끼칩니다. 각 사진첩에 우선적으로 사용될 것입니다." + +msgid "Available" +msgstr "사용 가능한 것" + +msgid "Choose a block" +msgstr "사용할 항목을 선택하세요." + +msgid "Selected" +msgstr "선택됨" + +msgid "Remove" +msgstr "제거" + +msgid "Move Up" +msgstr "위로 이동" + +msgid "Move Down" +msgstr "아래로 이동" + +msgid "Parameter" +msgstr "매게 변수" + +msgid "Value" +msgstr "값" + +msgid "There are no settings for this theme" +msgstr "이 아이템에 대해 설정이 된 것이 없습니다." + +#, fuzzy +msgid "Save Theme Settings" +msgstr "%s 테마 설정" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" + +msgid "Toolkit" +msgstr "툴킷" + +msgid "Order" +msgstr "정열" + +msgid "up" +msgstr "위로" + +msgid "down" +msgstr "아래로" + +msgid "User Management" +msgstr "사용자 관리" + +#, c-format +msgid "Removed user '%s'" +msgstr "'%s' 사용자 제거되었습니다." + +#, c-format +msgid "Created user '%s'" +msgstr "'%s' 사용자 만들어 졌습니다." + +#, c-format +msgid "Modified user '%s'" +msgstr "'%s' 사용자 수정되었습니다." + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "%d명의 사용자가 있습니다." + +msgid "Edit User" +msgstr "사용자 편집" + +msgid "You cannot delete yourself!" +msgstr "당신은 당신 자신을 삭제할 수 없습니다." + +#, fuzzy +msgid "You cannot delete the special guest user." +msgstr "특별한 손님 사용자는 삭제할 수 없습니다." + +msgid "Edit User (by list)" +msgstr "사용자 편집(목록 보기)" + +#, fuzzy +msgid "Locked" +msgstr "언어 환경" + +#, fuzzy +msgid "Failed Logins" +msgstr "실패" + +msgid "Thumbnails" +msgstr "썸네일" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" + +msgid "Create thumbnails now" +msgstr "지금 썸네일을 만듭니다." + +msgid "This is a test email from Gallery2" +msgstr "이것은 Gallery2에서 시험 삼아 발송된 전자 편지입니다." + +msgid "Edit Conflict!" +msgstr "" + +msgid "Security Violation" +msgstr "보안 위반" + +msgid "Database Error" +msgstr "데이터베이스 오류" + +msgid "Platform Error" +msgstr "Platform 오류" + +#, fuzzy +msgid "Authentication Failure" +msgstr "인증이 확인돼었습니다." + +msgid "Error" +msgstr "오류" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" + +msgid "Go back and try again" +msgstr "뒤로 돌아가 다시 시도하십시요." + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" + +#, fuzzy +msgid "Clear the cache" +msgstr "데이터베이스 캐쉬 삭제" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" + +msgid "The action you attempted is not permitted." +msgstr "" + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" + +msgid "An error has occurred while interacting with the database." +msgstr "" + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" + +msgid "An error has occurred while interacting with the platform." +msgstr "" + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" + +msgid "Item not found." +msgstr "" + +msgid "An error has occurred." +msgstr "" + +msgid "Back to the Gallery" +msgstr "Gallery로 돌아갑니다." + +msgid "Error Detail" +msgstr "오류에 관한 자세한 정보" + +msgid "System Information" +msgstr "시스템 정보" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"JPEG 이미지를 처리하는데 필요한 어떤 활성화된 Graphics Toolkit이 없습니다. 만일 이미지를 추가" +"한다면, 아마도 어떤 썸네일을 보지도 못할지도 모릅니다." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "Graphics Toolkit을 사용하기 위해 모듈페이지를 방문하십시오." + +msgid "Add Sub-Album" +msgstr "하위 앨범을 추가합니다." + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "사진첩의 이름은 알파벳 문자, 밑줄 또는 dashes만을 사용해 정하셔야 합니다. " + +msgid "Your name contains invalid characters. Please enter another." +msgstr "사용할 수 없는 문자가 포함이 되어 있습니다. 다시 입력해 주십시오." + +msgid "You must enter a name for this album." +msgstr "이 사진첩에 반드시 이름을 입력해야 합니다." + +msgid "The name you entered is already in use. Please enter another." +msgstr "입력한 이름은 이미 있습니다. 다른 것을 입력하세요." + +msgid "This is the album title." +msgstr "사진첩의 제목을 입력하십시오." + +msgid "This is the album summary." +msgstr "이 사진첩에 대해 간단한 설명을 하십시오." + +msgid "Keywords are not visible, but are searchable." +msgstr "주요 단어가 정확하지 않아도 찾기는 가능합니다." + +msgid "This is the long description of the album." +msgstr "이 사진첩에 대한 자세한 설명을 입력하시면 됩니다." + +msgid "Create" +msgstr "만들기" + +msgid "Upload Complete" +msgstr "파일이 추가 되었습니다." + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] " %d개의 파일이 추가되었습니다." + +msgid "No files added." +msgstr "추가할 파일이 없습니다." + +#, c-format +msgid "Added %s" +msgstr "%s를 추가하였습니다." + +#, c-format +msgid "Failed to add %s" +msgstr "%s를 추가하는데 실패하였습니다." + +msgid "Add more files" +msgstr "더 많은 파일 추가" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"당신의 서버는 웹 브라우저를 통해 이 아이템을 올리는 것을 허용하지 않습니다. 시스템 관리자에" +"게 문의 하십시오" + +msgid "Upload files directly from your computer." +msgstr "당신의 컴퓨터에 저장되어 있는 파일을 올릴 수 있습니다." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "아래의 글 상자에 전체 경로를 입력하세요. 그리고 파일에 대한 소개를 합니다." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"주의: 한번에 %s 까지 파일을 올릴 수 있습니다. 만일 더 큰 파일을 올리고자 한다면, 파일" +"을 조각내야 할 것입니다. 또는, 다른 형식의 파일을 올리거나 큰 파일을 올릴수 있도록 시스템 관" +"리자에게 요청하십시오." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"주의: 한 번에 올릴 수 있는 크기는 %s입니다. 각각의 파일은 %s를 넘지 못합니다. 만일 당" +"신이 이보다 더 큰 파일을 올리고자 한다면 파일을 조각내거나, 다른 형식의 파일을 사용해야합니" +"다. 아니면 더 큰 파일을 올릴 수 있도록 시스템 관리자에게 요청 할 수 있습니다." + +msgid "More Upload Boxes..." +msgstr "" + +msgid "Set item titles from:" +msgstr "아이템에 대한 제목 설정:" + +msgid "Assign caption to:" +msgstr "" + +msgid "No Thumbnail" +msgstr "썸네일이 없음" + +msgid "Delete Items" +msgstr "아이템 삭제" + +msgid "No items were selected for deletion" +msgstr "" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "%d 아이템이 삭제되었습니다." + +msgid "This album contains no items to delete" +msgstr "이 사진첩에는 삭제할 아이템이 없습니다." + +msgid "Choose the items you want to delete" +msgstr "지우고자 하는 아이템을 선택하십시오." + +#, c-format +msgid "(page %d of %d)" +msgstr "(%d쪽 / 총 %d쪽)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "" + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "" +msgstr[1] "" + +msgid "(data)" +msgstr "( 자료 )" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "( %d개의 아이템이 포함이 되어있습니다. )" + +msgid "(empty album)" +msgstr "( 사진첩이 비어 있습니다. )" + +msgid "Check All" +msgstr "모두 체크" + +msgid "Check None" +msgstr "선택 해제" + +msgid "Invert" +msgstr "선택 반전" + +msgid "Previous Page" +msgstr "이전 쪽" + +msgid "Next Page" +msgstr "다음 쪽" + +msgid "Deletion Complete" +msgstr "삭제가 완료되었습니다." + +msgid "Item successfully deleted" +msgstr "아이템이 삭제되었습니다." + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "%s를 확실히 지우시겠습니까?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "%d개의 아이템을 가지고 있습니다." + +msgid "There is no undo!" +msgstr "되돌릴 수 없습니다." + +msgid "There was a problem processing your request." +msgstr "요청된 작업을 처리하는 중 문제가 발생했습니다." + +msgid "Sort order" +msgstr "정열 방법" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "이 사진첩에 대한 정열 방식을 결정합니다. 어떤 아이템이든 모두 적용이 됩니다." + +msgid "Apply to all subalbums" +msgstr "모든 하위 사진첩에 적용합니다." + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr "어떤 아이템이든 썸네일을 가지게 됩니다. 썸네일의 기본 크기를 여기서 정하세요." + +msgid "You must enter a number (greater than zero)" +msgstr "0보다 큰 숫자를 입력해야 합니다." + +msgid "Use this thumbnail size in all subalbums" +msgstr "하위 사진첩에도 이 썸네일의 크기를 사용합니다." + +msgid "Resized Images" +msgstr "작은 이미지" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"각 아이템은 여러 개의 작은 이미지를 가질 수 있습니다. 여기서 원하는 크기를 입력하십시오." + +msgid "Active" +msgstr "사용" + +msgid "Target Size (pixels)" +msgstr "목표 크기 (화소, 픽셀)" + +msgid "You must enter a valid size" +msgstr "당신은 적당한 크기를 입력해야 합니다." + +msgid "Use these target sizes in all subalbums" +msgstr "여기서 지정한 크기를 하위 사진첩에도 적용합니다." + +#, fuzzy +msgid "Apply settings to existing items" +msgstr "하위 아이템에 적용" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" + +msgid "Apply album setting to thumbnails" +msgstr "" + +#, fuzzy +msgid "... and for all subalbums" +msgstr "모든 하위 사진첩에 적용합니다." + +#, fuzzy +msgid "Build thumbnails too" +msgstr "지금 썸네일을 만듭니다." + +#, fuzzy +msgid "Apply album setting to resized images" +msgstr "작은 이미지를 다시 만드는 중입니다." + +msgid "Build resizes too" +msgstr "" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" + +msgid "Width" +msgstr "폭" + +msgid "You must enter a value greater than or equal to 0" +msgstr "당신은 반드시 0이상의 값을 넣어야 합니다." + +msgid "Height" +msgstr "높이" + +msgid "There were errors saving some items" +msgstr "일부 아이템을 저장하는중 오류가 발생했습니다." + +msgid "There were errors saving all items" +msgstr "모든 아이템을 저장하는중 오류가 발생했습니다." + +msgid "Successfully saved all items" +msgstr "모든 아이템을 저장하는데 성공했습니다." + +msgid "This album contains no items" +msgstr "이 사진첩에는 아이템이 없습니다." + +msgid "Saved successfully." +msgstr "저장되었습니다." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "" +"이 아이템은 동일 시간대에 누군가 이미 수정했습니다. 당신이 수정한 것은 적용되지 않습니다." + +msgid "You do not have permissions to modify this item." +msgstr "이 아이템을 수정할 권한을 가지고 있지 않습니다." + +msgid "Save and Done" +msgstr "저장하고 마침" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"사진첩의 이름은 알파벳 문자, 밑줄 또는 dashes만 가능합니다. 다른 사진첩의 이름과 겹치지 않게 " +"합니다." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "사용할 수 없는 문자를 포함하고 있습니다. 다른것을 선택해주십시요." + +msgid "You must enter a name for this item." +msgstr "이 아이템에 대한 이름을 입력해야 합니다." + +msgid "The name you entered is already in use. Please choose another." +msgstr "이미 사용 중인 이름입니다. 다른 것을 골라 주세요." + +msgid "The title of this item." +msgstr "제목을 입력하세요." + +msgid "The root album must have a title." +msgstr "상위 사진첩은 반드시 제목이 있어야합니다." + +msgid "The summary of this item." +msgstr "간단한 설명을 합니다." + +msgid "This is the long description of the item." +msgstr "자세히 설명을 합니다." + +#, c-format +msgid "%s Date and Time" +msgstr "%s에 대한 날짜와 시간" + +msgid "Set the date and time when this image was captured." +msgstr "" + +msgid "Set the date and time to be displayed for this item." +msgstr "이 아이템에 대한 시간과 날짜를 설정하세요." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "%s에 대한 시간과 날짜를 설정하세요." + +msgid "Date:" +msgstr "날짜:" + +msgid "Time:" +msgstr "시간:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "파일 정보에서 원래의 날짜와 시간을 뽑아냅니다. (예 Exif tag):" + +msgid "You must enter a valid date and time" +msgstr "허용 가능한 날짜와 시간을 입력하십시오." + +msgid "Thumbnail" +msgstr "썸네일" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" + +#, fuzzy +msgid "Unable to create a thumbnail for this item" +msgstr "이 아이템에 대한 이름을 입력해야 합니다." + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" + +msgid "Resized Photos" +msgstr "작은 사진" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"이 유형의 사진의 회전을 지원하는 그래픽 툴킷이 없습니다. 작은 이미지를 수정하거나 만들 수 없" +"습니다." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"사진의 일부분을 선택해 썸네일로 사용할 수 있습니다. 이것은 원본 또는 작은 이미지에 어떤 영향" +"도 미치지 않습니다." + +msgid "Aspect Ratio: " +msgstr "" + +msgid "Crop" +msgstr "잘라내기" + +#, fuzzy +msgid "Undo Changes" +msgstr "바꿉니다." + +msgid "Reset to default" +msgstr "기본으로 초기화" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "이 유형의 사진을 지원하는 그래픽 툴킷이 없습니다. 썸네일 잘라내기를 할 수 없습니다." + +msgid "Rotate" +msgstr "회전" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "사진은 90도씩 회전이 가능합니다." + +msgid "CC 90°" +msgstr "시계 반대방향 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "시계방향 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "이 유형의 사진을 지원하는 그래픽 툴킷이 없어 회전을 시킬 수 없습니다." + +msgid "Scale" +msgstr "해상도 변경" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"원본의 사진을 크게하거나 작게만들 수 있습니다. Gallery가 사진의 해상도를 변경할때, 사진의 일" +"그러짐을 피하기 위해 원본 사진의 비율을 유지 합니다. 원하는 크기를 아래의 글 상자에 입력하십" +"시오." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" + +msgid "You must enter a size" +msgstr "크기를 입력하십시오." + +msgid "Preserve Original" +msgstr "원본을 유지합니다." + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"사진의 회전혹은 해상도 변경은 복사본에 적용이 되기 때문에, 원본의 사진은 그대로 유지할 수 있" +"습니다. 디스크에 최소한의 여유 공간이 있어야 원본 사진의 피해를 예방할 수 있습니다. 원본의 사" +"진을 수정하기 (회전, 해상도 변경외 기타 작업등) 위해 이 옵션을 막아 둘 수도 있습니다. " + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" + +msgid "Preserve Original Photo" +msgstr "원본 사진을 보존합니다." + +msgid "Modified Photo" +msgstr "사진이 수정되었습니다." + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"사진의 복사본을 회전혹은 해상도 변경을 하였습니다. 원본의 사진 대신 복사본의 사진에 수정 사항" +"이 적용되었습니다. 원본의 사진은 아직 사용이 가능합니다." + +msgid "Restore original" +msgstr "원본을 복구합니다." + +#, fuzzy +msgid "Choose a theme" +msgstr "사용할 항목을 선택하세요." + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" + +msgid "Use this theme in all subalbums" +msgstr "모든 하위 사진첩에 이 테마를 사용합니다." + +msgid "Choose Theme" +msgstr "" + +#, c-format +msgid "Configure the %s theme" +msgstr "" + +#, fuzzy +msgid "These settings only apply to the theme for this album." +msgstr "" +"이 사진첩은 %s테마를 사용 중입니다. 여기서 설정한 것은 단지 이 사진첩에만 적용이 됩니" +"다." + +#, fuzzy, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "%s 테마를 사용하는 하위 사진첩에도 이 설정 값을 사용합니다." + +msgid "Album Highlight" +msgstr "" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "" + +msgid "Highlight for:" +msgstr "" + +msgid "Highlight" +msgstr "" + +msgid "Move an Item" +msgstr "아이템 이동" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "%d개의 항목이 이동되었습니다." + +msgid "This album contains no items to move." +msgstr "이 사진첩에는 이동 시킬만한 아이템이 없습니다." + +msgid "Source" +msgstr "소스" + +msgid "Choose the items you want to move" +msgstr "이동할 아이템을 선택하세요" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "" + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" + +msgid "You are not allowed to move this item away from here." +msgstr "" + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "" + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "" + +msgid "You cannot move an album into its own subtree." +msgstr "" + +msgid "Destination" +msgstr "설명" + +msgid "Choose a new album for them" +msgstr "사진첩을 선택하세요." + +msgid "You don't have the permission to add items in this album" +msgstr "" + +msgid "No destination chosen" +msgstr "대상이 선택되지 않았습니다." + +msgid "Move" +msgstr "이동" + +msgid "Successfully moved" +msgstr "이동하는데 성공했습니다." + +msgid "Choose a destination album" +msgstr "대상을 선택하십시오." + +msgid "Permissions" +msgstr "권한" + +msgid "Owner changed successfully" +msgstr "소유자를 바꾸는데 성공했습니다." + +msgid "Group permission added successfully" +msgstr "동아리 권한을 추가하는데 성공했습니다." + +msgid "User permission added successfully" +msgstr "사용자 권한을 추가하는데 성공했습니다." + +msgid "Group permission removed successfully" +msgstr "동아리 권한을 제거하는데 성공했습니다." + +msgid "User permission removed successfully" +msgstr "사용자 권한을 제거하는데 성공했습니다." + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"각 아이템은 독립적인 사용 허가권을 가지고 있습니다. 부모 아이템의 허가권의 수정 내용은 자식 " +"아이템 허가권에 영향을 주지않습니다. This allows you to restrict access to the parent of " +"this item, but still grant full access to this item, or vice versa. 이러한 사용 허가권 시스템" +"은 동아리를 만들고 사용 허가권을 할당하는 것이 보다 효율적입니다. 적당한 동아리에 사용자를 " +"추가또는 제거하는 방식으로 특정 사용자에게 사용 권한을 부여할 수 있습니다." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "이 아이템의 소유자 : %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "이 아이템의 소유자 : %s (%s)" + +msgid "New owner" +msgstr "새로운 소유자" + +msgid "Change" +msgstr "바꿉니다." + +msgid "Apply new owner to sub-items" +msgstr "하위 아이템에 새 소유자 적용" + +msgid "You must enter a user name" +msgstr "사용자 이름을 입력해야 합니다." + +msgid "The user name you entered is invalid" +msgstr "입력한 사용자 이름이 올바르지 못합니다." + +msgid "Apply changes" +msgstr "수정사항 적용" + +#, fuzzy +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"이 아이템은 하위 아이템을 가집니다. 수정 사항은 이 아이템 또는 하위 아이템에 적용할 수 있습니" +"다. 허가권의 변경사항을 적용하면 하위 아이템에 있는 허가권도 함께 변경사항이 적용된다는 것을 " +"알아 두십시오. 그리고 하위 아이템이 많다면 많은 시간이 걸릴 것입니다. 하위 아이템이 많다면 " +"그 하위 아이템에 허가권을 적용하는 것 보다 동아리에 허가권을 부여하는 것이 아주 능률적인 방법" +"입니다. 그리고 필요할 때 사용자를 그 동아리에서 추가하거나 제거하십시오. 기본 값은 하위 아이" +"템에도 수정사항이 적용됩니다" + +msgid "Apply to sub-items" +msgstr "하위 아이템에 적용" + +msgid "Group Permissions" +msgstr "권한 권한" + +msgid "Group name" +msgstr "동아리 이름" + +msgid "Permission" +msgstr "허가권" + +msgid "New Group Permission" +msgstr "새 동아리 허가권" + +msgid "Add Permission" +msgstr "허가권 추가" + +#, fuzzy +msgid "The permission you chose is invalid" +msgstr "당신이 선택한 권한은 무효입니다." + +msgid "The group name you entered is invalid" +msgstr "잘못된 동아리 이름입니다." + +msgid "Group already has this permission (check sub-permissions)" +msgstr "동아리는 이미 이 권한을 가지고 있습니다. ( 하위 권한을 확인하십시요.)" + +msgid "User Permissions" +msgstr "사용자 권한" + +msgid "User name" +msgstr "사용자 이름" + +msgid "New User Permission" +msgstr "새 사용자 권한" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "" + +msgid "Reorder Album" +msgstr "사진첩 정열" + +msgid "Order saved successfully" +msgstr "적용되었습니다." + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"이 사진첩은 자동으로 특정 방식으로 정열이 되기 때문에 수동으로 정열을 할 수 없습니다. 수동으" +"로 하고자 한다면 자동 정열 방식을 제거하셔야 합니다." + +msgid "change" +msgstr "" + +msgid "Change the order of the items in this album." +msgstr "이 사진첩에서 이 아이템의 순서를 바꿉니다." + +msgid "Move this item" +msgstr "이 아이템 이동" + +msgid "before" +msgstr "앞으로" + +msgid "after" +msgstr "뒤로" + +msgid "Reorder" +msgstr "정열" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" + +msgid "Site is temporarily down for maintenance." +msgstr "" + +msgid "Admin Login" +msgstr "관리자 로그인" + +msgid "Enter a URL" +msgstr "주소를 입력하세요" + +msgid "Enter some text describing the URL" +msgstr "주소에 관한 약간의 설명을 붙이세요." + +msgid "Enter an image URL" +msgstr "이미지 주소를 입력하세요" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "목록" + +msgid "bullet" +msgstr "" + +msgid "url" +msgstr "" + +msgid "image" +msgstr "이미지" + +msgid "color" +msgstr "" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" + +msgid "Configuration Error: Missing Theme" +msgstr "설정 오류: 테마가 없습니다." + +msgid "Missing Theme" +msgstr "테마가 없습니다." + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"이 페이지는 %s 테마를 사용하도록 되어 있습니다. 그러나 활성화또는 설치가 되어 있지 않습니다. " +"아니면 호완성이 없는 것일 수도 있습니다." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"이 페이지는 %s 테마를 사용하도록 되어 있습니다. 그러나 활성화또는 설치가 되어 있지 않습니다. " +"아니면 호완성이 없는 것일 수도 있습니다." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"이 문제에 대한 해결을 위해 %s이 테마를 설치 또는 활성화%s하거나 다른 테마를 선택할 수 있습니" +"다." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"이 문제에 대한 해결을 위해 %s사이트 관리자로 로그인%s한 이 후에 %s이 테마를 설치 또는 활성화%" +"s하거나 다른 테마를 선택할 수 있습니다." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"이 문제에 대한 해결하기 위해 %s이 사진첩에 대한 새 테마를 선택%s하거나 %s이 테마를 설치 또는 " +"활성화%s할 수 있습니다." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"이 문제에 대한 해결을 위해 %s새로운 테마를 선택하거나%s %s사이트 관리자로 로그인%s한 후 %s이 " +"테마를 설치 또는 활성화%s할 수 있습니다." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"이 문제에 대한 해결을 위해 %s로그인%s을 하고 난후에 %s이 사진첩에 대한 새 테마를 선택%s하거" +"나 %s사이트 관리자로 로그인%s하고 난 후에 %s이 테마를 설치하거나 활성화%s할 수 있습니다." + +msgid "Admin Options" +msgstr "관리자 옵션" + +msgid "User Options" +msgstr "사용자 옵션" + +msgid "Password changed successfully" +msgstr "열쇠 글을 바꾸었습니다." + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "지금 사용중인 열쇠 글을 입력하십시오. 실수 없이 열쇠 글을 2번 입력합니다." + +msgid "Current Password" +msgstr "현재 열쇠 글" + +msgid "You must enter your current password" +msgstr "열쇠 글을 입력해야 합니다." + +msgid "Incorrect password" +msgstr "열쇠 글이 틀렸습니다." + +msgid "New Password" +msgstr "새 열쇠 글" + +msgid "You must enter a new password" +msgstr "반드시 새로운 열쇠 글을 입력해야 합니다." + +msgid "Verify New Password" +msgstr "새로운 열쇠 글을 확인합니다." + +msgid "You must enter your new password again!" +msgstr "새로운 열쇠 글을 다시 입력하십시오." + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" + +msgid "Login to your account" +msgstr "당신의 계정으로 로그인 하십시오." + +msgid "Your password has been recovered, please login." +msgstr "열쇠 글이 복구되었습니다. 로그인해 주십시오." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" + +msgid "Your login information is incorrect. Please try again." +msgstr "잘못 입력하셨습니다. 다시 입력하십시오." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"열쇠 글을 잊거나 잃어버린 경우 열쇠 글 복구 페이지에서 복구할 수 있습니다." + +#, c-format +msgid "Welcome, %s!" +msgstr "%s 님 환영합니다!" + +msgid "Account settings saved successfully" +msgstr "계정에 대한 설정 내용을 저장하였습니다." + +msgid "(required, password required for change)" +msgstr "( 열쇠 글을 바꾸기 위해 필요합니다.)" + +msgid "(suggested, password required for change)" +msgstr "( 열쇠 글을 바꾸기 위해 필요합니다.)" + +msgid "(required to change the e-mail address)" +msgstr "(전자 편지 주소를 바꾸기 위해선 반드시 입력야 합니다.)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "전자 편지 주소를 바꾸기 위해선 반드시 열쇠 글을 입력해야만 합니다." + +msgid "Recover a lost or forgotten password" +msgstr "열쇠 글 복구하기" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"열쇠 글을 복구하기 위해선 등록할 때 사용한 전자 우편 주소가 있어야합니다. 열쇠 글을 재설정할 " +"주소가 당신이 등록한 전자 우편으로 발송이 될 것입니다. 열쇠복구는 복구 신청후 20분 이내에 재" +"신청이 되지 않습니다. 열쇠건 복구 전자 편지는 7일간 유효합니다. 만일 시간 안에 열쇠 글을 복" +"구하지 않으면 열쇠 글 복구 신청을 다시 해야 할 것입니다." + +msgid "Your recovery request has been sent!" +msgstr "열쇠 글 복구를 위한 전자 편지가 발송이 되었습니다." + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"만일 전자 편지 주소가 등록이 되어 있지 않을 경우, 열쇠 글 복구를 위한 전자 편지를 받지 못할 " +"것입니다. 이 경우 관리자에게 직접 문의해 보는 방법 밖에는 없습니다." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"관리자는 서버 문제로 인해 전자 편지를 받을 수 없거나, 전자 편지 주소가 정확하지 않을때 %s비" +"상 열쇠 글 복구%s페이지에서 관리자 계정을 복구할 수 있습니다." + +msgid "Recover" +msgstr "복구" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "파일이 업로드 되었습니다. 새로 고침을 해주십시오." + +msgid "Emergency Administrator Password Reset" +msgstr "비상 관리자 열쇠글 초기화" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" + +msgid "Authorization Confirmed" +msgstr "인증이 확인돼었습니다." + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"사용자 확인을 완료하였습니다. 아래에 새 열쇠글을 입력하십시요. 새 열쇠글을 설정하신후에 다시 " +"로그인해주십시요." + +msgid "Recover Password for Username" +msgstr "사용자 이름을 위한 열쇠글 복구합니다." + +msgid "You must enter a username to recover the password for." +msgstr "열쇠 글을 찾기 위해선 사용자 이름을 입력해야 합니다." + +msgid "The username you entered does not exist." +msgstr "입력한 사용자 이름이 없습니다." + +#, fuzzy +msgid "Authorization Incorrect" +msgstr "인증에 실패했습니다." + +#, fuzzy +msgid "Recovery Instructions" +msgstr "복구 방법" + +#, fuzzy +msgid "AuthFile Missing" +msgstr "파일 소유자가 없습니다." + +#, fuzzy +msgid "AuthFile Unreadable" +msgstr "파일 소유자를 읽어 올수 없습니다." + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "%s 파일을 읽을 수 없습니다. Gallery에 이 파일에 대한 허가권을 할당해 주십시오." + +msgid "Refresh" +msgstr "새로 고침" + +msgid "This page will allow you to reset the password on your account." +msgstr "당신의 열쇠 글에 대한 설정을 다시 하십시오." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" + +msgid "Authorization missing" +msgstr "인증 오류" + +msgid "Username missing" +msgstr "사용자 이름이 없습니다." + +msgid "Submit" +msgstr "보내기" + +#, c-format +msgid "Hello %s," +msgstr "%s님 안녕하세요." + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "" + +#, c-format +msgid "Your username is: %s" +msgstr "당신의 이름은 : %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "다음의 주소로 접근하여 열쇠 글을 복구하시면 됩니다." + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "만일 열쇠 글 복구를 한적이 없다면 이 편지를 무시하십시오." + +msgid "Thank you!" +msgstr "감사합니다." + +msgid "guest" +msgstr "손님" + +#, c-format +msgid "display mode: %s" +msgstr "시점 : %s" + +#, c-format +msgid "Date: %s" +msgstr "날짜: %s" + +#, c-format +msgid "Owner: %s" +msgstr "소유자: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "크기: %d개의 아이템이 있습니다." + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "총 %d 아이템" + +#, c-format +msgid "Views: %d" +msgstr "조회수: %d" + +msgid "« album actions »" +msgstr "« 사진첩 명령 »" + +msgid "« item actions »" +msgstr "« 아이템 명령 »" + +msgid "Go" +msgstr "이동" + +msgid "Navigation" +msgstr "안내" + +msgid "next" +msgstr "다음" + +msgid "last" +msgstr "마지막" + +#, c-format +msgid "Page %d of %d" +msgstr "%d 페이지( 총 %d 페이지중)" + +#, c-format +msgid "%d of %d" +msgstr "%d ( %d의 )" + +msgid "first" +msgstr "처음으로" + +msgid "previous" +msgstr "이전" + +msgid "Page:" +msgstr "쪽:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "크기:" + +msgid "Unknown" +msgstr "알수 없음" + +msgid "Full size: " +msgstr "파일 크기:" + +msgid "Setting" +msgstr "설정" + +msgid "Use Global" +msgstr "" + +msgid "Language selector" +msgstr "언어 선택:" + +msgid "Item actions" +msgstr "아이템 명령" + +msgid "Use dropdown menu" +msgstr "펼침 메뉴를 사용합니다." + +msgid "Login block" +msgstr "로그인 상자" + +msgid "Links to album/photo peers" +msgstr "" diff --git a/Source/gallery2/modules/core/po/lt.po b/Source/gallery2/modules/core/po/lt.po new file mode 100644 index 0000000..4d97c48 --- /dev/null +++ b/Source/gallery2/modules/core/po/lt.po @@ -0,0 +1,3702 @@ +# $Id: lt.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# Darius Zitkevicius , 2007. +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2007-03-09 00:02+0200\n" +"Last-Translator: Darius Zitkevicius \n" +"Language-Team: Lithuanian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%" +"100>=20) ? 1 : 2);\n" +"X-Generator: KBabel 1.11.4\n" + +msgid "Gallery Email Test" +msgstr "Galerijos testas el. paštu" + +msgid "forever" +msgstr "visada" + +msgid "High Priority (Me first!)" +msgstr "Aukštas prioritetas (Aš pirmas!)" + +msgid "Low Priority (I want to share!)" +msgstr "Žemas prioritetas (Aš noriu dalytis!)" + +msgid "No Markup" +msgstr "Be žymėjimo" + +msgid "BBCode" +msgstr "BBCode" + +msgid "Raw HTML" +msgstr "Grynas HTML" + +msgid "Database" +msgstr "Duombazė" + +msgid "File" +msgstr "Failas" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minutė" +msgstr[1] "%d minutės" +msgstr[2] "%d minučių" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d valanda" +msgstr[1] "%d valandos" +msgstr[2] "%d valandų" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d diena" +msgstr[1] "%d dienos" +msgstr[2] "%d dienų" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d savaitė" +msgstr[1] "%d savaitės" +msgstr[2] "%d savaičių" + +msgid "" +msgstr "" + +msgid "No acceleration" +msgstr "Be aksceleracijos" + +msgid "Partial acceleration" +msgstr "Dalinė aksceleracija" + +msgid "Full acceleration" +msgstr "Pilna aksceleracija" + +msgid "Themes" +msgstr "Temos" + +msgid "Updating Repository Index" +msgstr "Atnaujinamas indeksas" + +msgid "Scanning plugins" +msgstr "Skenuojami priedai" + +msgid "Update Plugin List" +msgstr "Atnaujinamas priedų sąrašas" + +msgid "Done." +msgstr "Atlikta." + +msgid "Updating Packages" +msgstr "Atnaujinami paketai" + +#, c-format +msgid "Preparing %s" +msgstr "Ruošiamas %s" + +#, c-format +msgid "Downloading %s" +msgstr "Atsiunčiama %s" + +#, c-format +msgid "Activating %s" +msgstr "Aktyvuojamas %s" + +msgid "Deleting Language Packs" +msgstr "Šalinami kalbų paketai" + +msgid "Update completed with errors." +msgstr "Atnaujinimas atliktas su klaidomis." + +msgid "Update complete." +msgstr "Atnaujinimas atliktas." + +msgid "install" +msgstr "įdiegti" + +msgid "upgrade" +msgstr "atnaujinti" + +msgid "activate" +msgstr "aktyvuoti" + +msgid "uninstall" +msgstr "pašalinti" + +msgid "deactivate" +msgstr "deaktyvuoti" + +msgid "Inherit settings from parent album" +msgstr "Nustatymus paveldėti iš ankstesnio albumo" + +msgid "Use these settings" +msgstr "Naudoti šiuos nustatymus" + +msgid "Installing the core module" +msgstr "Įdiegiamas pagrindinis modulis" + +msgid "key" +msgstr "raktas" + +msgid "All access" +msgstr "Pinas priėjimas" + +msgid "[core] View item" +msgstr "[core] Matyti elementus" + +msgid "[core] View resized version(s)" +msgstr "[core] Matyti sumažintus variantus" + +msgid "[core] View original version" +msgstr "[core] Matyti originalias nuotraukas" + +msgid "[core] View all versions" +msgstr "[core] Matyti visus variantus" + +msgid "[core] Add sub-album" +msgstr "[core] Pridėti vidinį albumą" + +msgid "[core] Add sub-item" +msgstr "[core] Pridėti vidinį elementą" + +msgid "[core] Edit item" +msgstr "[core] Redaguoti elementus" + +msgid "[core] Change item permissions" +msgstr "[core] Keisti elemento prieigos teises" + +msgid "[core] Delete item" +msgstr "[core] Pašalinti elementą" + +msgid "Upgrading permissions" +msgstr "Atnaujinamos teisės" + +msgid "Deleting old permission tables" +msgstr "Šalinamos senos teisių lentelės" + +msgid "Registered Users" +msgstr "Registruoti vartotojai" + +msgid "All Users" +msgstr "Visi vartotojai" + +msgid "Detecting broken derivatives" +msgstr "Trinami blogi pagalbiniai failai" + +msgid "Clearing fast-download cache" +msgstr "Valoma greito gavimo talpyklė" + +msgid "Deleting old fast-download cache" +msgstr "Trinama sena greito gavimo talpyklė" + +msgid "Updating panorama items" +msgstr "Atnaujinami panoramos elementai" + +msgid "Optimizing AccessSubscriberMap table" +msgstr "Optimizuojama lentelė AccessSubscriberMap" + +msgid "Converting Schema Table" +msgstr "" + +msgid "Loading Table Descriptions" +msgstr "" + +msgid "Site Admins" +msgstr "Svetainės adminai" + +msgid "Everybody" +msgstr "Visi" + +msgid "Guest" +msgstr "Svečias" + +msgid "Gallery" +msgstr "Galerija" + +msgid "This is the main page of your Gallery" +msgstr "Tai pagrindinis Jūsų galerijos puslapis" + +msgid "Converting MySQL data to UTF8" +msgstr "Keičiami MySQL duomenys į UTF8" + +#, c-format +msgid "Upgrading permissions (%d items complete, %d remaining)" +msgstr "Atnaujinamos prieigos teisės (%d pakeista, liko %d)" + +#, c-format +msgid "Detecting broken derivatives, loading (%d derivatives checked, %d remaining)" +msgstr "Ieškoma blogų pagalbinių failų, įkeliama (%d patikrinta, liko %d)" + +#, c-format +msgid "Detecting broken derivatives (%d derivatives checked, %d remaining)" +msgstr "Ieškoma blogų pagalbinių failų (%d patikrinta, liko %d)" + +#, c-format +msgid "Detecting broken derivatives, saving (%d derivatives checked, %d remaining)" +msgstr "Ieškoma blogų pagalbinių failų, išsaugoma (%d patikrinta, liko %d)" + +#, c-format +msgid "" +"Detecting broken derivatives, saving item %d of %d (%d derivatives complete, %d remaining)" +msgstr "Atnaujinamos prieigos teisės, saugomas elementas %d iš %d (%d pakeista, liko %d)" + +#, c-format +msgid "Deleting old session files (iteration %d)" +msgstr "Šalinami seni sesijos failai (pakartojimas %d)" + +msgid "add items" +msgstr "pridėti elementus" + +msgid "Album created successfully." +msgstr "Albumas sukurtas sėkmingai. " + +msgid "add sub-album" +msgstr "pridėti vidinį albumą" + +msgid "add items confirmation" +msgstr "elementų pridėjimo patvirtinimas" + +msgid "Base filename" +msgstr "Bazinis failo vardas" + +msgid "Caption" +msgstr "Antraštė" + +msgid "Blank" +msgstr "Tuščia" + +msgid "From Web Browser" +msgstr "Iš naršyklės" + +#, c-format +msgid "%d megabyte" +msgid_plural "%d megabytes" +msgstr[0] "%d megabaitas" +msgstr[1] "%d megabaitai" +msgstr[2] "%d megabaitų" + +#, c-format +msgid "%d kilobytes" +msgid_plural "%d kilobytes" +msgstr[0] "%d kilobaitas" +msgstr[1] "%d kilobaitai" +msgstr[2] "%d kilobaitų" + +#, c-format +msgid "Input file %s exceeds maximum permitted file size" +msgstr "Nurodytas failas %s viršija didžiausią leistiną failo dydį" + +#, c-format +msgid "Input file %s exceeds file size specified in the form" +msgstr "Nurodytas failas %s viršija dydį, kuris nurodytas formoje" + +#, c-format +msgid "Input file %s was only partially uploaded" +msgstr "Nurodytas failas %s nepilnai įkeltas" + +#, c-format +msgid "Input file %s was not uploaded. Error %d" +msgstr "Nurodytas failas %s neįkeltas. Klaida %d" + +msgid "Gallery Item Administration" +msgstr "Galerijos elemento administravimas" + +msgid "delete an item" +msgstr "pašalinti elementą" + +msgid "delete confirmation" +msgstr "pašalinimo patvirtinimas" + +#, c-format +msgid "delete %s" +msgstr "trinti %s" + +#, c-format +msgid "edit %s" +msgstr "keisti %s" + +msgid "Settings saved successfully." +msgstr "Nustatymai išsaugoti sėkmingai." + +msgid "Apply resized image settings" +msgstr "Pritaikyti sumažintų vaizdų nustatymus" + +msgid "Preparing..." +msgstr "Pasiruošimas..." + +msgid "Apply thumbnail settings" +msgstr "Pritaikyti miniatiūrų nustatymus" + +msgid "Rebuilding thumbnails..." +msgstr "Pergeneruojamos miniatiūros..." + +msgid "Album" +msgstr "Albumas" + +#, c-format +msgid "Processing image %d of %d" +msgstr "Apdorojamas elementas %d iš %d" + +msgid "Changes saved successfully" +msgstr "Pakeitimai išsaugoti sėkmingai" + +msgid "Animation Size" +msgstr "Animacijos dydis" + +msgid "edit captions" +msgstr "redaguoti antraštes" + +msgid "General" +msgstr "Bedra" + +msgid "Movie Size" +msgstr "Video dydis" + +msgid "Photo" +msgstr "Foto" + +msgid "Thumbnail cropped successfully" +msgstr "Miniatiūra iškirpta sėkmingai" + +msgid "Thumbnail reset successfully" +msgstr "Miniatiūra atkurta sėkmingai" + +msgid "Photo 5x3" +msgstr "Foto 5x3" + +msgid "Photo 6x4" +msgstr "Foto 6x4" + +msgid "Photo 7x5" +msgstr "Foto 7x5" + +msgid "Photo 10x8" +msgstr "Foto 10x8" + +msgid "Fullscreen 4x3" +msgstr "Per visą ekraną 4x3" + +msgid "Widescreen 16x9" +msgstr "Plačiaekranė 16x9" + +msgid "CinemaScope 2.35x1" +msgstr "CinemaScope 2.35x1" + +msgid "Square 1x1" +msgstr "Kvadratas 1x1" + +msgid "As Image" +msgstr "Kaip ir foto" + +msgid "Landscape" +msgstr "Gulščias" + +msgid "Portrait" +msgstr "Stačias" + +msgid "Crop Thumbnail" +msgstr "Iškirpti miniatiūrą" + +msgid "Reverted rotate and scale changes successfully" +msgstr "Pasukimo ir ištempimo pakeitimai anuliuoti sėkmingai" + +msgid "Rotated photo successfully" +msgstr "Fotografija pasukta sėkmingai" + +msgid "Scaled photo successfully" +msgstr "Fotografija ištempta sėkmingai" + +msgid "Modify Photo" +msgstr "Taisyti foto" + +msgid "Successfully changed theme" +msgstr "Tema sėkmingai pakeista" + +msgid "« default theme »" +msgstr "« numatyta tema »" + +msgid "Theme" +msgstr "Tema" + +msgid "make highlight" +msgstr "padaryti tituliniu" + +msgid "move item" +msgstr "perkelti elementą" + +#, c-format +msgid "move %s" +msgstr "perkelti %s" + +#, c-format +msgid "edit %s permissions" +msgstr "keisti %s leidimus" + +msgid "reorder items" +msgstr "rūšiuoti elementus" + +msgid "Maintenance" +msgstr "Priežiūra" + +msgid "Gallery Site Administration" +msgstr "Galerijos administravimas" + +msgid "site admin" +msgstr "svetainės administravimas" + +msgid "Gallery User Administration" +msgstr "Galerijos vartotojų administravimas" + +msgid "change password" +msgstr "keisti slaptažodį" + +msgid "your account" +msgstr "jūsų paskyra" + +msgid "Password Recovery" +msgstr "Slaptažodžio atkūrimas" + +msgid "Core" +msgstr "Pagrindas" + +msgid "Gallery 2 Core Module" +msgstr "Gallery 2 pagrindinis modulis" + +msgid "Add Items" +msgstr "Naujas elementas" + +msgid "Edit Album" +msgstr "Keisti albumą" + +msgid "Edit Photo" +msgstr "Keisti foto" + +msgid "Edit Movie" +msgstr "Keisti video" + +msgid "Add Album" +msgstr "Naujas albumas" + +msgid "Edit Permissions" +msgstr "Redaguoti teises" + +msgid "View Permissions" +msgstr "Žiūrėti teises" + +msgid "Delete Album" +msgstr "Pašalinti albumą" + +msgid "Delete Photo" +msgstr "Pašalinti foto" + +msgid "Delete Movie" +msgstr "Pašalinti video" + +msgid "Move Album" +msgstr "Perkelti albumą" + +msgid "Move Photo" +msgstr "Perkelti foto" + +msgid "Move Movie" +msgstr "Perkelti video" + +msgid "Edit Captions" +msgstr "Keisti santrauką" + +msgid "Make Highlight" +msgstr "Padaryti tituliniu" + +msgid "Reorder Items" +msgstr "Rūšiuoti elementus" + +msgid "Site Admin" +msgstr "Svetainės administravimas" + +msgid "Login" +msgstr "Prisijungti" + +msgid "Your Account" +msgstr "Jūsų duomenys" + +msgid "Logout" +msgstr "Atsijungti" + +msgid "Plugins" +msgstr "Priedai" + +msgid "Users" +msgstr "Vartotojai" + +msgid "Groups" +msgstr "Grupės" + +msgid "Performance" +msgstr "Našumas" + +msgid "Toolkit Priority" +msgstr "Įrankių prioritetai" + +msgid "Graphics Toolkits" +msgstr "Grafikos įrankiai" + +msgid "Account Settings" +msgstr "Paskyros nustatymai" + +msgid "Change Password" +msgstr "Keisti slaptažodį" + +#, c-format +msgid "Edit %s" +msgstr "Keisti %s" + +#, c-format +msgid "Delete %s" +msgstr "Ištrinti %s" + +#, c-format +msgid "Move %s" +msgstr "Perkelti %s" + +msgid "Build all thumbnails/resizes" +msgstr "Generuoti visas miniatiūras/keisti matmenis" + +msgid "" +"Ensure data files for all derivatives (thumbnails, etc) have been built and rebuild broken " +"ones." +msgstr "" +"Įsitikinti kad visi pagalbiniai elementai (miniatiūros ir pan) yra sukurtos ir pergeneruoti " +"sugadintus." + +msgid "Build All Thumbnails/Resizes" +msgstr "Generuoti visas miniatiūras/keisti matmenis" + +msgid "Debug output for failed items:" +msgstr "Papildoma informacija apie sugadintus elementus" + +#, c-format +msgid "Checked %d items" +msgstr "Patikrinta %d elementų" + +#, c-format +msgid "%d items built" +msgstr "%d elementų sugeneruota" + +#, c-format +msgid "%d items failed" +msgstr "%d elementų nepavyko sutvarkyti" + +msgid "Convert MySQL database to UTF8" +msgstr "Konvertuoti MySQL duomenys į UTF8" + +msgid "" +"If you created your database with MySQL 3.x and you upgrade to MySQL 4.x, you will " +"experience scrambled characters until you convert your database to use UTF8. This operation " +"is harmless if your database is already converted, so it's safe to try it if you're unsure. " +"After using this, you should run the 'Delete database cache' task to get rid of any " +"corruption in your cache." +msgstr "" +"Jei jūsų duomenų bazė sukurta naudojant MySQL 3.x, atnaujinant į MySQL 4.x lietuviški " +"simboliai atrodys iškraipyti. Problemą išspręsite konvertavę duombazę į UTF8. Jei duombazė " +"jau konvertuota, tuomet ši operacija nieko nesugadins, todėl jei jūs nesate tikri ar to " +"reikia, galite drąsiai konvertuoti. Po šios operacijos reikia išvalyti duombazės talpykę " +"(Delete database cache), kad talpyklėje neliktu nekonvertuotų tekstų." + +msgid "Database successfully converted to UTF8" +msgstr "Duombazė konvertuota į UTF8 sėkmingai" + +msgid "No conversion required" +msgstr "Konvertavimas nereikalingas" + +msgid "Delete user sessions" +msgstr "Ištrinti vartotojo sesijas" + +msgid "" +"Delete all persistent user sessions according to your current session expiration settings." +msgstr "Pagal jūsų sesijos pasibaigimo nustatymus ištrinti visas dabartinio vartotojo sesijas." + +#, c-format +msgid "Deleted %d sessions." +msgstr "Ištrinta sesijų %d." + +msgid "Delete database cache" +msgstr "Išvalyti duombazės talpyklą" + +msgid "" +"Gallery stores commonly used database information on disk for increased performance. If you " +"modify the database directly, you should run this task to clean out the cache and force " +"Gallery to reload the information from the database." +msgstr "" +"Galerija, kad pagerinti našumą, dažniausias naudojamą duomenų bazės informaciją laiko " +"diske. Jei jūs keitėte duomenų bazę rankiniu būdu, tuomet jums reikia įvykdyti šią užduotį, " +"kad išvalyti Galerijos talpyklą ir įkelti pakeistą informaciją iš duombazės." + +#, c-format +msgid "Successfully deleted directory: %s" +msgstr "Sėkmingai pašalintas aplankas: %s" + +#, c-format +msgid "Unable to delete directory: %s" +msgstr "Negaliu pašalinti aplanko: %s" + +msgid "Delete template cache" +msgstr "Trinama šablonų talpykla" + +msgid "" +"Gallery compiles template files and saves them for increased performance. If you're " +"experiencing problems that say Smarty error then you might try running this task. " +"Also run this if you remove a local/*.tpl file so Smarty will switch back to the default tpl " +"file." +msgstr "" +"Galerija kompiliuoja šablonų failus ir juos išsaugo, kad pagerinti našumą. Jei jums gaunate " +"pranešimas Smarty error, tuomet pabandykite įvykdyti šią užduotį. Jei jūs pašalinote " +"local/*.tpl failą, jums taip pat reikia įvykdyti šią užduotį, kad Smarty sugrįžtu prie " +"numatyto tpl failo." + +msgid "Template cache deleted successfully" +msgstr "Šablonų talpykla pašalinta sėkmingai" + +msgid "album" +msgstr "albumas" + +msgid "Animation" +msgstr "Animacija" + +msgid "animation" +msgstr "animacija" + +msgid "Gallery Core" +msgstr "Galerijos pagrindas" + +msgid "Gallery Core Module" +msgstr "Modulis: Galerijos pagrindas" + +msgid "Search descriptions" +msgstr "Ieškoti tarp aprašymų" + +msgid "Search keywords" +msgstr "Ieškoti tarp raktinių žodžių" + +msgid "Search summaries" +msgstr "Ieškoti tarp aprašymų" + +msgid "Search titles" +msgstr "Ieškoti tarp antraščių" + +msgid "Description" +msgstr "Aprašymas" + +msgid "Keywords" +msgstr "Raktiniai žodžiai" + +msgid "Summary" +msgstr "Santrauka" + +msgid "Title" +msgstr "Antraštė" + +msgid "Owner" +msgstr "Sąvinikas" + +msgid "Dynamic Album" +msgstr "Dinaminis albumas" + +msgid "dynamic album" +msgstr "dinaminis albumas" + +msgid "Group" +msgstr "Grupė" + +msgid "group" +msgstr "grupė" + +msgid "Other" +msgstr "Kita" + +msgid "Movie" +msgstr "Video" + +msgid "movie" +msgstr "video" + +msgid "photo" +msgstr "foto" + +msgid "Couldn't create repository cache path." +msgstr "Nepavyko sukurti repozicijų talpyklos kelio." + +msgid "" +"Couldn't create cache subdirectory. Make sure the web server has write permissions in it." +msgstr "" +"Nepavyko sukurti talpyklos aplanko. Įsitikinkite kad web serveris turi teisę į jį rašyti." + +msgid "Official Release Repository" +msgstr "Oficialus leidimas" + +msgid "Experimental Repository" +msgstr "Eksperimentinis leidimas" + +msgid "Community Repository" +msgstr "Bendruomenės leidimas" + +#, c-format +msgid "Error downloading index from '%s'." +msgstr "Nepavyko atsisiųsti indekso iš „%s“." + +#, c-format +msgid "Error downloading index hash from '%s'." +msgstr "Nepavyko atsisiųsti indekso kontrolinės sumos iš „%s“." + +msgid "Index integrity check failed." +msgstr "Indeksas nėra vientisas." + +msgid "« default sort order »" +msgstr "« numatyta rūšiavimo tvarka »" + +msgid "Manual sort order" +msgstr "Rankinė rūšiavimo kryptis" + +msgid "Origination Date" +msgstr "Originalo data" + +msgid "Creation Date" +msgstr "Patalpinimo data" + +msgid "Last Changed Date" +msgstr "Paskutinio keitimo data" + +msgid "Name" +msgstr "Vardas" + +msgid "View Count" +msgstr "Pažiūrėta" + +msgid "Random" +msgstr "Atsitiktinis" + +msgid "« no presort »" +msgstr "« nieko »" + +msgid "Albums First" +msgstr "Pirma albumai" + +msgid "Most Viewed First" +msgstr "Dažniausiai žiūrimi pirmi" + +msgid "Ascending" +msgstr "Didėlimo tvarka" + +msgid "Descending" +msgstr "Mažėjimo tvarka" + +msgid "Validation disabled until you set allowSessionAccess in config.php" +msgstr "" +"Patvirtinimas neįgalintas, kad įgalinti reikia nustatyti allowSessionAccess faile config.php" + +msgid "This page is valid XHTML 1.0" +msgstr "Šis puslapis yra teisingas XHTML 1.0" + +msgid "Donate to the Gallery project" +msgstr "Paremti projektą Gallery" + +msgid "G2.2: Double Double" +msgstr "G2.2: Dvigubas dvejetas" + +#, c-format +msgid "Powered by Gallery v%s" +msgstr "Veikia su Galerija v%s" + +#, c-format +msgid "Estimated time remaining: %d:%02d" +msgstr "Likęs laikas: %d:%02d" + +#, c-format +msgid "Memory used: %s, total: %s" +msgstr "Panaudota atmintis: %s, viso: %s" + +msgid "Rows per album page" +msgstr "Albumų puslapyje rodomų stulpelių kiekis" + +msgid "Columns per album page" +msgstr "Albumų puslapyje rodomų eilučių kiekis" + +msgid "Number of items to show per page" +msgstr "Elementų kiekis puslapyje" + +msgid "Row height (pixels)" +msgstr "Eilutės aukštis (taškeliais)" + +msgid "Column width (pixels)" +msgstr "Stulpelio plotis (taškeliais)" + +msgid "Show image owners" +msgstr "Rodyti paveikslų sąvininkus" + +msgid "Show album owners" +msgstr "Rodyti albumų sąvininkus" + +msgid "Show micro navigation thumbnails" +msgstr "Rodyti miniatiūrinius navigacijos mygtukus" + +msgid "Blocks to show in the sidebar" +msgstr "Rodomų blokų skaičius įrankių juostoje" + +msgid "Blocks to show on album pages" +msgstr "Rodomų blokų skaičius albumų puslapiuose" + +msgid "Blocks to show on photo pages" +msgstr "Rodomų blokų skaičius fotografijų puslapiuose" + +msgid "Thumbnail links in dynamic albums" +msgstr "Dinaminių albumų miniatiūrų nuorodos" + +msgid "Browse dynamic album" +msgstr "Naršyti dinaminį albumą" + +msgid "Jump to original album" +msgstr "Peršokti į originalų albumą" + +msgid "Separate link to original album" +msgstr "Atskira nuoroda į originalų albumą" + +msgid "View Samples" +msgstr "Žiūrėti pavyzdžius" + +msgid "Album Frame" +msgstr "Albumo rėmelis" + +msgid "Item Frame" +msgstr "Elemento rėmelis" + +msgid "Photo Frame" +msgstr "Fotografijos rėmelis" + +msgid "Color Pack" +msgstr "Spalvų paketas" + +msgid "You must enter a number greater than 0" +msgstr "Jūsų turite įvesti skaičių didesnį už 0" + +msgid "Error reading block settings. Clear your browser cache and try again." +msgstr "" +"Klaida skaitant bloko nustatymus. Išvalykite naršyklės talpyklę ir bandykite dar kartą." + +#, c-format +msgid "%dx%d" +msgstr "%dx%d" + +msgid "Audio" +msgstr "Audio" + +msgid "audio" +msgstr "audio" + +msgid "Archive" +msgstr "Archyvas" + +msgid "archive" +msgstr "archyvas" + +msgid "Document" +msgstr "Dokumentas" + +msgid "document" +msgstr "dokumentas" + +msgid "Spreadsheet" +msgstr "Skaičiuoklės dokumetas" + +msgid "spreadsheet" +msgstr "skaičiuoklės dokumetas" + +msgid "file" +msgstr "failas" + +msgid "Back" +msgstr "Atgal" + +#, c-format +msgid "Back to %s" +msgstr "Atgal į %s" + +msgid "User" +msgstr "Vartotojas" + +msgid "user" +msgstr "vartotojas" + +msgid "Optimize database" +msgstr "Optimizuoti duombazę" + +msgid "" +"Improve the performance of your database. Results will vary depending on which database " +"you're using, but this routine maintenance will make your Gallery run faster. Especially " +"useful after adding or deleting many items." +msgstr "" +"Pagerinti duomenų bazės našumą. Rezultatai gali būti skirtingi, priklausomai nuo jūsų " +"naudojamos duomenų bazės, bet kokiu atveju, tai pagreitins jūsų galeriją. Tai ypač naudinga " +"ištrynus ar pridėjus daug elementų." + +msgid "Database optimized successfully" +msgstr "Duombazės optimizavimas sėkmingas" + +msgid "Reset view counts" +msgstr "Anuliuoti peržiūros skaitliukus" + +msgid "" +"Reset number of views to zero for all albums and items. This task flushes the database " +"cache as well." +msgstr "" +"Anuliuoja visų albumų ir elementų peržiūros skaitliukus. Ši užduotis taip pat išvalo " +"duombazės talpyklą." + +msgid "View counts reset successfully" +msgstr "Peržiūros skaitikliai anuliuoti" + +msgid "Refresh capture dates" +msgstr "Įkelti iš naujo fotografavimo datas" + +msgid "" +"Update capture date stored in Gallery for all items with an available date in the original " +"data file (usually from EXIF data)." +msgstr "" +"Atnaujinti visų galerijos elementų datas pagal turimus originalius failo duomenis " +"(dažniausiai pagal EXIF duomenis)." + +msgid "Processing..." +msgstr "Vykdoma..." + +msgid "Refresh Capture Dates" +msgstr "Atnaujinti elementų datas" + +#, c-format +msgid "Processing item %d of %d" +msgstr "Apdorojamas elementas %d iš %d" + +#, c-format +msgid "Updated %d of %d items" +msgstr "Atnaujinta %d iš %d" + +msgid "System information" +msgstr "Sistemos informacija" + +msgid "Get system details; useful for copy/paste into G2 support forum." +msgstr "Rodyti sistemos informaciją; ją naudinga nukopijuoti G2 palaikymo forume." + +msgid "core" +msgstr "pagrindas" + +msgid "unknown" +msgstr "nežinomas" + +msgid "Gallery version" +msgstr "Gallery versija" + +msgid "PHP version" +msgstr "PHP versija" + +msgid "Webserver" +msgstr "Web serveris" + +msgid "Toolkits" +msgstr "Grafikos įrankiai" + +msgid "Acceleration" +msgstr "Aksceleracija" + +msgid "Operating system" +msgstr "Operacijų sistema" + +msgid "Default theme" +msgstr "Numatyta tema" + +msgid "gettext" +msgstr "gettext" + +msgid "enabled" +msgstr "įgalinta" + +msgid "disabled" +msgstr "uždraustas" + +msgid "Locale" +msgstr "Localė" + +msgid "Browser" +msgstr "Naršyklė" + +#, c-format +msgid "Rows in %s table = %d" +msgstr "Lentelėje %s yra stulpelių %d" + +msgid "Successfully saved theme settings" +msgstr "Temos nustatymai išsaugoti sėkmingai" + +msgid "General Settings" +msgstr "Pagrindiniai nustatymai" + +msgid "Settings saved successfully" +msgstr "Nustatymai išsaugoti sėkmingai" + +msgid "Added local upload directory successfully" +msgstr "Lokalus įkėlimo aplankas nustatytas sėkmingai" + +msgid "Removed local upload directory successfully" +msgstr "Lokalus įkėlimo aplankas pašalintas sėkmingai" + +msgid "Test email sent successfully" +msgstr "Bandomasis el. laiškas išsiųstas sėkmingai" + +msgid "There was a problem processing your request, see below for details." +msgstr "Vykdant jūsų užklausą kilo problemų, žemiau rasite daugiau informacijos." + +msgid "Error sending test email, see below for details." +msgstr "Nepavyko išsiųsti bandomojo el. laiško, žemiau rasite daugiau informacijos." + +msgid "Language Settings" +msgstr "Kalbos nustatymai" + +msgid "" +"Select language defaults for Gallery. Individual users can override this setting in their " +"personal preferences or via the language selector block if available. Gallery will try to " +"automatically detect the language preference of each user if the browser preference check is " +"enabled." +msgstr "" +"Nurodykite numatytą galerijos kalbą. Atskiri vartotojai galės pakeisti kalbą savo nuožiūra " +"pasinaudodami kalbos pasirinkimo bloku, jei jis prieinamas. Jei įjungtas naršyklės nustatymų " +"tikrinimas, tuomet Galerija bandys nustatyti kalbą automatiškai." + +msgid "Default language" +msgstr "Numatyta kalba" + +msgid "Check Browser Preference" +msgstr "Tikrinti naršyklės nustatymus" + +#, c-format +msgid "" +"Your webserver does not support localization. Please instruct your system administrator to " +"reconfigure PHP with the %s option enabled." +msgstr "" +"Jūsų web serveris nepalaiko lokalizavimo. Paprašykite sistemos administratoriaus kad " +"suderintu PHP su %s palaikymu." + +msgid "Date Formats" +msgstr "Datos formatas" + +#, c-format +msgid "" +"Specify how dates and times are displayed by Gallery. See %sphp.net%s for details of how to " +"enter a format string. Note that the display of some tokens varies according to the active " +"language." +msgstr "" +"Nurodoma kaip Galerijoje rodoma data ir laikas. Informacijos kaip nustatyti šiuos " +"kintamuosius rasite %sphp.net%s svetainėje. Atkreipkite dėmesį, kad tie patys kintamieji " +"gali pateikti skirtingus rezultatus priklausomai nuo aktyvios kalbos." + +msgid "Style" +msgstr "Stilius" + +msgid "Format" +msgstr "Formatas" + +msgid "Sample" +msgstr "Pavizdys" + +msgid "Date" +msgstr "Data" + +msgid "Time" +msgstr "Laikas" + +msgid "Date/Time" +msgstr "Data/Laikas" + +msgid "Filesystem Permissions" +msgstr "Failų sistemos prieigos teisės" + +msgid "" +"Specify the default permissions for files and directories that Gallery creates. This doesn't " +"apply to files/directories that Gallery has already created." +msgstr "" +"Nurodykite numatytas Galerijos sukurtų failų ir aplankų prieigos teises. Šis nustatymas " +"netaikomas failams ir aplankams, kuriuos Galerija jau sukūrė." + +msgid "New directories" +msgstr "Nauji aplankai" + +msgid "New files" +msgstr "Nauji failai" + +msgid "Session Settings" +msgstr "Sesijos nustatymai" + +msgid "Session Lifetime" +msgstr "Sesijos gyvavimo laikas" + +msgid "Inactivity Timeout" +msgstr "Neaktyvumo laiko riba" + +msgid "Embedded Markup" +msgstr "Integruotas žymėjimas" + +msgid "" +"What kind of markup should we allow in user-entered fields? For security reasons we do not " +"recommend that you allow raw HTML. BBCode is a special kind of markup that is secure and " +"allows for simple text formatting like bold, italics, lists, images and urls." +msgstr "" +"Kokio tipo žymėjimą naudoti vartotojo įvedamam tekstui? Saugumo sumetimais mes " +"nerekomenduojame leisti naudoti gryno HTML. BBCode yra specialus žymėjimas, kuris yra saugus " +"ir leidžia naudoti paprastą teksto formavimą, tokį kaip pastorinimas, pakreipimas, sąrašai, " +"paveikslėliai ir nuorodos." + +msgid "Markup" +msgstr "Žymėjimas" + +msgid "Email" +msgstr "El. paštas" + +msgid "" +"By default Gallery uses PHP's built in mail function to send email which requires no " +"configuration. To use a smtp/mail server enter the information below, including " +"authentication information if required. Optionally add :port after the server name to use a " +"non-default port." +msgstr "" +"Tik įdiegta Galerija naudoja į PHP integruotą pašto funkciją, kurios pagalba gali siųsti " +"laiškus be papildomo konfigūravimo. Norint naudoti smtp/mail serverį žemiau nurodykite " +"prisijungimo informaciją, įskaitant autentifikavimo duomenis jei jie būtini. Papildomai po " +"serverio pavadinimo galite nurodyti portą, jei naudojate ne standartinį." + +msgid "Server" +msgstr "Serveris" + +msgid "Username" +msgstr "Vartotojo vardas" + +msgid "Password" +msgstr "Slaptažodis" + +msgid "SMTP From Address" +msgstr "SMTP adresas „iš“" + +msgid "Invalid email address" +msgstr "Blogas el. pašto adresas" + +msgid "" +"Send a test email to verify your settings are correct (whether using PHP mail or SMTP " +"settings above). Below enter a recipient email address for a test message." +msgstr "" +"Išsiųsti bandomą el. laišką, kad aptikrinti nustatymus (nesvarbu ar naudojami PHP ar SMTP " +"nustatymai). Žemiau nurodykite bandomojo laiško gavėjo el. pašto adresą." + +msgid "Send Email" +msgstr "Siųsti laišką" + +msgid "Email Test Error" +msgstr "El. pašto testavimo klaida" + +msgid "Cookies" +msgstr "Sausainukai" + +msgid "" +"When Gallery is embedded in another application (portal, CMS, forum, etc.), then you have " +"the choice between two options. Everyone else does not have to care about the cookie " +"settings. Read on for more details." +msgstr "" +"Kai galerija integruota į kitą sistemą (portalas, turinio valdymo sistema, ar pan.), tuomet " +"jūs turite du pasirinkimo variantus. Visiems kitiems šie nustatymai neturėtu rūpėti. Jei " +"įdomu spauskite simbolį „+“ ir skaitykite daugiau." + +msgid "" +"If your Gallery is embedded and you leave the following fields empty, then all DownloadItem " +"links (the URLs of the images and other items) in the embedded Gallery have an appended " +"GALLERYSID string in the URL which is a minor security risk when your Gallery " +"users start copy'n'pasting image URLs in forums, guestbooks, etc. The alternative is to set " +"the cookie path. Gallery will then not append the GALLERYSID to the embedded " +"DownloadItem URLs. E.g. when Gallery is reachable at http://www.example.com/application/" +"gallery2/ and the embedding application is at http://www.example.com/application/, then you " +"have to compare the path /application/gallery2/ with /application/. The cookie path is the " +"part of the paths that is equal, in this case it is '/application/'. Most often it is just " +"'/'." +msgstr "" + +msgid "" +"The cookie domain is also only needed for embedded Gallery installs and only if you " +"want to get rid of the GALLERYSID string in the embedded DownloadItem URLs. In most " +"cases, the cookie domain can be left blank. Set it only, if Gallery and the embedding " +"application are only reachable with different subdomains. E.g. when Gallery is at " +"http://photos.example.com/ and the application is at http://www.example.com/, then you have " +"to set the cookie domain example.com (the part of the host string that is common to both, " +"Gallery and the embedding application)." +msgstr "" + +msgid "" +"Once you change the cookie settings, all registered users of your Gallery will " +"have to clear their browser cookie cache. If they do not, they will experience " +"login / logout / lost session problems." +msgstr "" + +msgid "Path" +msgstr "Kelias" + +msgid "Invalid cookie path" +msgstr "Netinkamas sausainuko kelias" + +msgid "Domain" +msgstr "Domenas" + +msgid "Invalid cookie domain" +msgstr "Blogas sausainuko domenas" + +msgid "Locking System" +msgstr "Rakinimo sistema" + +msgid "" +"Gallery uses a system of locks to prevent simultaneous changes from interfering with each " +"other. There are two types of locking, each with its advantages and disadvantages. " +"File based locking is fast and efficient, but won't work on NFS filesystems and will " +"be unreliable on Windows. Database locking is slower but is more reliable. If you " +"are unsure which to choose, we recommend using file locking. If you're getting many lock " +"timeouts, you can try switching to database locking instead. It's ok to switch back and " +"forth." +msgstr "" +"Galerija naudoja rakinimo sistemą, kad išvengti paralelių pakeitimų, kurie vienas su kitu " +"konfliktuoja. Yra du rakinimo tipai, kiekvienas turi privalumų ir trūkumų. Failo " +"pagrindu rakinimo sistema yra greita ir efektinga, tačiau ji neveiks su NFS failų sistema ir " +"bus nepatikima Windows operacinėje sistemoje. Duombazės rakinimo sistema yra " +"lėtesnė, tačiau patikima. Jei jūs nežinote ką pasirinkti, mes rekomenduojama failų rakinimo " +"sistemą. Jei naudodamiesi galerija gaunate daug pranešimų „lock timeout“, tuomet bandykite " +"pakeisti rakinimo sistemą į duombazės. Šį nustatimą keisti nepavojinga." + +msgid "Lock system" +msgstr "Rakinimo sistema" + +msgid "Helper Processes" +msgstr "Pagalbos procesai" + +msgid "" +"Some Gallery modules will use programs on your server to do image processing, archiving and " +"other operations. These programs can be very computationally intensive and can impact the " +"overall performance of a shared web server. You can make these programs run at a lower " +"priority so that they play nice. If you're in a shared hosting environment and your web " +"host is complaining, try setting your priority low." +msgstr "" +"Kai kurie Galerijos moduliai, kad apdoroti vaizdus, archyvuoti ir kitoms operacijoms, naudos " +"jūsų serverio programas. Šios programos gali būti labai reiklios kompiuterio resursams ir " +"įtakoti bendrą web serverio našumą. Jūs galite nurodyti, kad šios programos veiktu žemesniu " +"prioritetu, kad nestabdytu kitų apkrauto serverio procesų. Jei jūs naudojate bendrą serverį " +"(shared hosting) ir paslaugos tiekėjas skundžiasi, tuomet pabandykite nustatyti žemą " +"prioritetą." + +msgid "Priority" +msgstr "Prioritetas" + +msgid "Save" +msgstr "Išsaugoti" + +msgid "Reset" +msgstr "Anuliuoti pakeitimus" + +msgid "Create A New Group" +msgstr "Sukurti naują grupę" + +msgid "Group Name" +msgstr "Grupės pavadinimas" + +msgid "(required)" +msgstr "(būtina)" + +msgid "You must enter a group name" +msgstr "Reikia įvesti grupės pavadinimą" + +#, c-format +msgid "Group '%s' already exists" +msgstr "Grupė „%s“ jau yra" + +msgid "Create Group" +msgstr "Sukurti grupę" + +msgid "Cancel" +msgstr "Atšaukti" + +msgid "Create A New User" +msgstr "Sukurti naują vartotoją" + +msgid "You must enter a username" +msgstr "Reikia įvesti varotojo vardą" + +#, c-format +msgid "Username '%s' already exists" +msgstr "Vartotojas „%s“ jau yra" + +msgid "Full Name" +msgstr "Pilnas vardas" + +msgid "Email Address" +msgstr "El. pašto adresas" + +msgid "You must enter an email address" +msgstr "Reikia įvesti el. pašto adresą" + +msgid "Language" +msgstr "Kalba" + +msgid "You must enter a password" +msgstr "Reikia įvesti slaptažodį" + +msgid "Verify Password" +msgstr "Pakartokite slaptažodį" + +msgid "You must enter the password a second time" +msgstr "Reikia įvesti slaptažodį antrą kartą" + +msgid "The passwords you entered did not match" +msgstr "Įvesti slaptažodžiai nesutampa" + +msgid "Create User" +msgstr "Sukurti vartotoją" + +msgid "Delete A Group" +msgstr "Panaikinti grupę" + +msgid "Are you sure?" +msgstr "Ar tikrai?" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "Šis veiksmas visiškai pašalins %s iš Galerijos. Galimybės atkurti nebus!" + +msgid "Delete" +msgstr "Pašalinti" + +msgid "Delete a User" +msgstr "Pašalinti vartotoją" + +#, c-format +msgid "User %s is the owner of %s items." +msgstr "Vartotojui %s priklausanti elementų kiekis: %s." + +#, c-format +msgid "Delete user %s and..." +msgstr "Pašalinti vartotoją %s ir..." + +#, c-format +msgid "Assign a new owner for all items of %s" +msgstr "Visiems vartotojo %s elementams priskirti naują savininką" + +#, c-format +msgid "" +"Delete all items of %s and assign a new owner for all remaining non empty albums. Items that " +"%s doesn't have permission to delete will also be reassigned to a new owner." +msgstr "" +"Pašalinti visus vartotojo %s elementus ir priskirti naują savininką ne tuštiems albumams. " +"Elementams kurių trinti %s neturi teisės, taip pat bus priskirtas naujas savininkas." + +msgid "New owner (leaving blank means one of the Site Admins):" +msgstr "Naujas savininkas (tuščia reiškia vienas iš svetainės administratorių):" + +#, c-format +msgid "User '%s' does not exist! Cannot assign items to a nonexistent user." +msgstr "Vartotojo „%s“ nėra! Neįmanoma elementų priskirti neegzistuojančiam vartotojui." + +msgid "The new owner must be a different user than the user we are deleting!" +msgstr "Naujas savininkas negali būti šalinamas vartotojas!" + +msgid "The new owner cannot be a Guest / Anonymous user!" +msgstr "Naujas savininkas negali būti svečias/anoniminis vartotojas!" + +#, c-format +msgid "This will completely remove %s from Gallery. There is no undo!" +msgstr "" +"Šis veiksmas iš Galerijos pilnai pašalins %s. Galimybės atkurti nebus!" + +msgid "Edit a group" +msgstr "Redaguoti grupę" + +#, c-format +msgid "Edit Members of Group '%s'" +msgstr "Redaguoti grupės „%s“narius" + +#, c-format +msgid "Added user '%s' to group '%s'" +msgstr "Vartotojas „%s“ pridėtas į grupę „%s“" + +#, c-format +msgid "Removed user '%s' from group '%s'" +msgid_plural "Removed %s users from group '%s'" +msgstr[0] "Iš grupės „%1$s“ pašalintas „%2$s“ vartotojas" +msgstr[1] "Iš grupės „%1$s“ pašalinti „%2$s“ vartotojai" +msgstr[2] "Iš grupės „%1$s“ pašalinta „%2$s“ vartotojų" + +#, c-format +msgid "This group contains %d user" +msgid_plural "This group contains %d users" +msgstr[0] "Šioje grupėje yra %d vartotojas" +msgstr[1] "Šioje grupėje yra %d vartotojai" +msgstr[2] "Šioje grupėje yra %d vartotojų" + +msgid "Members" +msgstr "Nariai" + +msgid "« first" +msgstr "« į pradžią" + +msgid "« back" +msgstr "« atgal" + +#, c-format +msgid "Viewing page %d of %d" +msgstr "Matomas puslapis %d iš %d" + +msgid "next »" +msgstr "pirmyn »" + +msgid "last »" +msgstr "į galą »" + +msgid "Filter" +msgstr "Filtras" + +msgid "Clear" +msgstr "Išvalyti" + +#, c-format +msgid "%d user matches your filter" +msgid_plural "%d users match your filter" +msgstr[0] "Jūsų filtrą atitiko %d vartotojas" +msgstr[1] "Jūsų filtrą atitiko %d vartotojai" +msgstr[2] "Jūsų filtrą atitiko %d vartotojų" + +msgid "Remove selected" +msgstr "Pašalinti pažymėtus" + +msgid "You must select a user to remove." +msgstr "Reikia pažymėti šalinamą vartotoją." + +msgid "You can't remove yourself from this group." +msgstr "Jūs negalite iš šios grupės pašalinti savęs." + +msgid "Add Member" +msgstr "Pridėti narį" + +msgid "Add" +msgstr "Pridėti" + +msgid "You must enter a username." +msgstr "Reikia įvesti vartotojo vardą." + +#, c-format +msgid "User '%s' does not exist." +msgstr "Vartotojo „%s“ nėra." + +msgid "This user already is in this group." +msgstr "Vartotojas jau įtrauktas į šią grupę." + +msgid "Done" +msgstr "Atlikta" + +msgid "Edit a user" +msgstr "Redaguoti vartotoją" + +msgid "That username is already in use" +msgstr "Toks vartotojo vardas jau naudojamas" + +msgid "You must enter a new username" +msgstr "Reikia įvesti vartotojo vardą" + +msgid "E-mail Address" +msgstr "El. pašto adresas" + +msgid "(suggested)" +msgstr "(rekomenduojamas)" + +msgid "Options" +msgstr "Parinktys" + +msgid "Lock user." +msgstr "Užrakinti vartotoją." + +msgid "" +"Locked users are unable to edit their own account information. (Password, Name, Email, etc.)" +msgstr "" +"Užrakinti vartotojai negali keisti savo paties informacijos (Slaptažodžio, Vardo, el. pašto " +"ir kt.)" + +msgid "Reset failed login count." +msgstr "Anuliuoti nesėkmingų prisijungimų skaitliuką." + +#, c-format +msgid "%d failed login attempt since the last successful login." +msgid_plural "%d failed login attempts since the last successful login." +msgstr[0] "Po paskutinio sėkmingo prisijungimo buvo %d nesėkmingas." +msgstr[1] "Po paskutinio sėkmingo prisijungimo buvo %d nesėkmingi." +msgstr[2] "Po paskutinio sėkmingo prisijungimo buvo %d nesėkmingų." + +msgid "Group Management" +msgstr "Grupių tvarkymas" + +#, c-format +msgid "Removed group '%s'" +msgstr "Pašalinta grupė „%s“" + +#, c-format +msgid "Created group '%s'" +msgstr "Sukurta grupė „%s“" + +#, c-format +msgid "Modified group '%s'" +msgstr "Pakeista grupė „%s“" + +#, c-format +msgid "There is %d group in the system." +msgid_plural "There are %d total groups in the system." +msgstr[0] "Sistemoje yra %d grupė" +msgstr[1] "Sistemoje yra %d grupės" +msgstr[2] "Sistemoje yra %d grupių" + +msgid "Edit Group" +msgstr "Redaguoti grupę" + +msgid "Edit" +msgstr "Redaguoti" + +msgid "Add/Remove Users" +msgstr "Pridėti/Šalinti vartotojus" + +#, c-format +msgid "Group '%s' does not exist." +msgstr "Grupės „%s“ nėra." + +msgid "You cannot delete that group" +msgstr "Jūs negalite ištrinti šios grupės" + +msgid "You cannot edit that group's users" +msgstr "Jūs negalite keisti šios grupės narių sąrašo." + +msgid "Edit Group (by list)" +msgstr "Redaguoti grupę (pagal sąrašą)" + +msgid "Action" +msgstr "Veiksmas" + +msgid "edit" +msgstr "redaguoti" + +msgid "delete" +msgstr "šalinti" + +msgid "members" +msgstr "nariai" + +#, c-format +msgid "%d group matches your filter" +msgid_plural "%d groups match your filter" +msgstr[0] "Jūsų filtrą atitiko %d grupė" +msgstr[1] "Jūsų filtrą atitiko %d grupės" +msgstr[2] "Jūsų filtrą atitiko %d grupių" + +msgid "System Maintenance" +msgstr "Sistemos tvarkymas" + +#, c-format +msgid "Completed %s task successfully." +msgstr "Užduotis %s atlikta sėkmingai." + +#, c-format +msgid "The %s task failed to complete successfully." +msgstr "Nepavyko užbaigti užduoties %s" + +msgid "Task name" +msgstr "Užduoties pavadinimas" + +msgid "Last run" +msgstr "Vykdyta" + +msgid "Success/Fail" +msgstr "Sėkmė/Klaida" + +msgid "Not run yet" +msgstr "Dar ne vykdyta" + +msgid "Success" +msgstr "Sėkmė" + +msgid "Failed" +msgstr "Klaida" + +msgid "run now" +msgstr "vykdyti dabar" + +msgid "Last Run Details:" +msgstr "Paskutinio atlikimo detalės" + +msgid "Performance Tuning" +msgstr "Našumo derinimas" + +msgid "Updated performance settings successfully" +msgstr "Našumo nustatymai atnaujinti sėkmingai" + +msgid "Deleted all saved pages" +msgstr "Ištrinti visus išsaugotus puslapius" + +msgid "" +"Improve your Gallery performance by storing entire web pages in the database. This can " +"considerably reduce the amount of webserver and database resources required to display a web " +"page. The tradeoff is that the web page you see may be a little bit out of date, however " +"you can always get the most recent version of the page by forcing a refresh in your browser " +"(typically by holding down the shift key and clicking the reload button)." +msgstr "" +"Pagerinti Galerijos našumą išsaugant pilnus puslapius duomenų bazėje. Tai gali žymiai " +"sumažinti serverio resursų naudojimą. Trūkumas yra tas, kad matomas puslapis gali būti šiek " +"tiek pasenęs, tačiau naujausią puslapio versija visada galima pamatyti forsuojant naršyklę " +"parodyti naujausią puslapio versiją (daugumoje naršyklių tai atliekama klavišų ctrl+F5 arba " +"ctrl+r pagalba)." + +msgid "Partial Acceleration" +msgstr "Dalinė aksceleracija" + +#, no-c-format +msgid "" +"Partial acceleration gives you roughly 10-25% performance increase, but some forms of " +"dynamic data (like view counts) will not get updated right away. All content that appears " +"in blocks (like the random image block, any sidebar blocks, etc) will always be updated." +msgstr "" +"Dalinės aksceleracijos pagalba gaunamas maždaug 10-25% našumo pagerėjimas, tačiau kai kurie " +"dinaminių duomenų laukai (pvz. pažiūrėjimų skaitliukas) nebus atnaujinami tuoj pat. Visas " +"turinys, kuris rodomas blokuose (atsitiktinio paveikslo blogas, šone esantys blokai, ir " +"pan.) bus visada atnaujinti." + +msgid "Full Acceleration" +msgstr "Pilna aksceleracija" + +#, no-c-format +msgid "" +"Full acceleration gives roughly a 90% performance increase, but no dynamic data (random " +"image block, other sidebar blocks, number of items in your shopping cart, view counts, etc) " +"will get updated until the saved page expires." +msgstr "" +"Pilnos aksceleracijos dėka gaunamas maždaug 90% našumo pagerėjimas, tačiau jokie dinaminiai " +"laukai (atsitiktinio paveikslo blokas, kiti šoniniai blokai, pirkėjo kortelėje esančių " +"prekių skaičius, peržiūrėjimų skaitiukai, ir kita) nebus atnaujinami, kol išsaugoti " +"puslapiai pasibaigs." + +msgid "" +"You can additionally specify when saved pages expire. Setting a longer expiration time will " +"reduce the load on your server, but will increase the interval before users see changes. " +"Lower expiration times mean that users will see more current data, but they will place a " +"higher load on your server." +msgstr "" +"Papildomai galima nurodyti kada išsaugoti puslapiai pasibaigs. Nustačius didesnį galiojimo " +"periodą sumažės serverio apkrova, tačiau intervalas kol vartotojai pamatys pasikeitusius " +"duomenis. Mažesnis galiojimo terminas reikš tai, kad vartotojai matys naujesnę informaciją, " +"tačiau jie ir stipriau apkraus serverį." + +msgid "Here are some standard acceleration profiles:" +msgstr "Čia yra keletas aksceleracijos profilių:" + +msgid "Medium acceleration" +msgstr "Vidutinė aksceleracija" + +msgid "High acceleration" +msgstr "Aukšta aksceleracija" + +msgid "Guest Users" +msgstr "Neregistruoti vartotojai" + +msgid "Expires after:" +msgstr "Nebegalios po:" + +msgid "Clear Saved Pages" +msgstr "Išvalyti išsaugotus puslapius" + +msgid "Status: Inactive" +msgstr "Būsena: ne aktyvus" + +msgid "__PLUGIN__ deactivated" +msgstr "__PLUGIN__ deaktyvuotas" + +msgid "Status: Active" +msgstr "Būsena: aktyvus" + +msgid "__PLUGIN__ activated" +msgstr "__PLUGIN__ aktyvuotas" + +msgid "Status: Not Installed" +msgstr "Būsena: ne įdiegtas" + +msgid "__PLUGIN__ uninstalled" +msgstr "__PLUGIN__ pašalintas" + +msgid "Status: Upgrade Required (Inactive)" +msgstr "Būsena: reikalingas atnaujinimas (ne aktyvus)" + +msgid "Status: Incompatible Plugin (Inactive)" +msgstr "Būsena: nesuderinamas priedas (ne aktyvus)" + +msgid "Status: Inactive (Configuration Required)" +msgstr "Būsena: Neaktyvus (reikia sukonfigūruoti)" + +msgid "__PLUGIN__ needs configuration" +msgstr "__PLUGIN__ reikia konfigūruoti" + +msgid "__PLUGIN__ deleted" +msgstr "__PLUGIN__ pašalintas" + +msgid "Warning!" +msgstr "Dėmesio!" + +msgid "Do you really want to uninstall __PLUGIN__?" +msgstr "Ar tikrai norite pašalinti __PLUGIN__?" + +msgid "This will also remove any permissions and clean up any data created by this module." +msgstr "" +"Šis veiksmas taip pat pašalins visas prieigos teises ir išvalys visus duomenis, kuriuos " +"sukūrė šis modulis." + +msgid "" +"This plugin will be uninstalled, but its files will be kept so that you can reinstall it." +msgstr "Šis priedas bus pašalintas, bet jo failai liks. Vėliau jį galėsite įdiegti vėl." + +msgid "Yes" +msgstr "Taip" + +msgid "No" +msgstr "Ne" + +msgid "Do you really want to delete __PLUGIN__?" +msgstr "Ar tikrai norite pašalinti __PLUGIN__?" + +#, fuzzy +msgid "This plugin will be uninstalled and its files will be deleted permanently." +msgstr "Šis priedas bus pašalintas su visais jo failais." + +msgid "The files of this plugin will be deleted permanently." +msgstr "" + +msgid "disabled(__COUNT__)" +msgstr "uždrausta(__COUNT__)" + +msgid "up to date(__COUNT__)" +msgstr "atnaujinti(__COUNT__)" + +msgid "not installed(__COUNT__)" +msgstr "ne įdiegti(__COUNT__)" + +msgid "upgrade required(__COUNT__)" +msgstr "būtinas atnaujinimas(__COUNT__)" + +msgid "incompatible(__COUNT__)" +msgstr "nesuderinamų(__COUNT__)" + +msgid "Failed to completely delete __PLUGIN__" +msgstr "Pilnai ištrinti nepavyko __PLUGIN__" + +msgid "Gallery Plugins" +msgstr "Galerijos priedai" + +msgid "Get More Plugins" +msgstr "Gauti daugiau priedų" + +#, c-format +msgid "" +"Want more features? New plugins are just a click away. Just click the %s link to get " +"started." +msgstr "" +"Norite daugiau galimybių? Nauji priedai yra vos už kelių pelės paspaudimų. Norėdami pradėti " +"spausite nuorodą %s." + +msgid "" +"Gallery features come as separate plugins. You can download and install plugins to add more " +"features to your Gallery, or you can disable features if you don't want to use them. In " +"order to use a feature, you must install, configure (if necessary) and activate it. If you " +"don't wish to use a feature, you can deactivate it." +msgstr "" +"Galerijos galimybės pateiktos kaip atskiri priedai. Kad išplėsti Galerijos galimybes jūs " +"galite atsisiųsti ir įsidiegti daugiau priedų, arba galima išjungti priedus, kurių " +"neplanuojate naudoti. Norint naudotis priedais, juos reikia įdiegti, sukonfigūruoti (jei " +"būtina) ir aktyvuoti atitinkamą modulį. Jei daugiau jo nebeplanuojate naudoti, jį galima " +"deaktyvuoti." + +msgid "Plugin Name" +msgstr "Priedo pavadinimas" + +msgid "Installed" +msgstr "Įdiegtas" + +msgid "Version" +msgstr "Versija" + +msgid "Actions" +msgstr "Veiksmai" + +msgid "help" +msgstr "pagalba" + +#, c-format +msgid "Screenshot for %s" +msgstr "%s ekrano nuotrauka" + +msgid "Incompatible plugin!" +msgstr "Nesuderinamas priedas!" + +#, c-format +msgid "Core API Required: %s (available: %s)" +msgstr "Pagrindo reikalingas API: %s (yra: %s)" + +#, c-format +msgid "Plugin API Required: %s (available: %s)" +msgstr "Priedo API reikalinga: %s (yra: %s)" + +msgid "configure" +msgstr "konfigūruoti" + +msgid "up to date" +msgstr "Atnaujintas" + +msgid "upgrade required" +msgstr "būtina atnaujinti" + +msgid "not installed" +msgstr "ne įdiegtas" + +msgid "incompatible" +msgstr "nesuderinamas" + +msgid "Repository" +msgstr "Repozicija" + +msgid "Please make sure that your internet connection is set up properly or try again later." +msgstr "Įsitikinkite kad jūsų interneto ryšys nustatytas tinkamai ir pabandykite vėliau." + +#, c-format +msgid "Failed to scan status from plugin: %s." +msgstr "Nepavyko nuskenuoti priedo %s statuso." + +msgid "" +"Your local copy of the repository was broken and has been fixed. Please download the plugin " +"list again." +msgstr "" +"Lokali jūsų repozicijos kopija buvo sugadinta ir dabar sutvarkyta. Atsisiųskite priedų " +"sąrašą iš naujo." + +#, c-format +msgid "" +"Failed to download the %s plugin because the following files/directories could not be " +"modified:" +msgstr "Nepavyko gauti priedo %s, nes šių failų/aplankų negali būti keičiami:" + +msgid "The repository index has been successfully updated." +msgstr "Repozicijos indeksas sėkmingai atnaujintas." + +msgid "All plugins are already up-to-date." +msgstr "Visų priedų versijos jau yra pačios naujausios." + +#, c-format +msgid "%s plugin updated." +msgstr "priedas %s atnaujintas." + +#, c-format +msgid "%d language pack deleted." +msgid_plural "%d language packs deleted." +msgstr[0] "%d kalbos paketas pašalintas." +msgstr[1] "%d kalbos paketai pašalinti." +msgstr[2] "%d kalbos paketų pašalinta." + +msgid "" +"No personal information about you or your Gallery installation is sent to the Gallery server " +"at any time." +msgstr "" +"Diegimo metu jokia asmeninė informacija apie jus ar jūsų diegimą nebus siunčiama į " +"Galerijos serverį." + +#, c-format +msgid "" +"Download and install new plugins quickly and easily. If you decide you don't like a plugin, " +"you can delete it from your Gallery. There are multiple different plugin repositories, you " +"can choose which ones you want to use (it's ok to use all of them at once). Once you've " +"chosen, you must periodically download the latest plugin list to find out about available " +"updates. %s On slower connections the process might take a minute or two." +msgstr "" +"Atsisiųskite ir įdiekite naujus priedus greitai ir paprastai. Jei nuspręsite, kad priedas " +"nepatinka, jūs galėsite jį pašalinti iš Galerijos. Yra keletas priedų repozicijų, kurias iš " +"jų naudoti galite nuspręsti patys (galima naudoti visus). Kai pasirinksite priedų " +"repoziciją, reikės periodiškai atsisiųsti priedų sąrašą, kad sužinotumėte apie naujausius " +"atnaujinimus. %s Esant lėtesniam interneto ryšiui, šis procesas gali užtrukti minutę ar dvi." + +#, c-format +msgid "Officially Released Gallery Project plugins (%srecommended%s)" +msgstr "Oficialūs Galerijos projekto priedai (%srekomenduojami%s)" + +#, c-format +msgid "last updated on %s" +msgstr "paskutinį kartą atnaujintas %s" + +#, c-format +msgid "Experimental Gallery Project plugins (%scool new features, might be buggy%s)" +msgstr "" +"Eksperimentiniai Galerijos projekti priedai (%sįdomios naujos galimybės, bet gali būti daug " +"klaidų%s)" + +#, c-format +msgid "Community plugins (%suse at your own risk!%s)" +msgstr "Bendruomenės priedai (%suž pasėkmes niekas neatsako!%s)" + +msgid "Repository Error" +msgstr "Repozicijos klaida" + +msgid "You must select at least one repository." +msgstr "Reikia pažymėti bent vieną repoziciją." + +msgid "Ok" +msgstr "Ok" + +msgid "Configure your Gallery" +msgstr "Konfigūruoti Galeriją" + +msgid "" +"Before you can proceed, you have to change some permissions so that Gallery can install " +"plugins for you. It's easy. Just execute the following in a shell or via your ftp client:" +msgstr "" +"Prieš pradedant reikia pakeisti keletą prieigos teisių, kad Galerija galėtu įdiegti priedus. " +"Tai paprasta. Reikia tik įvykdyti šias komandas komandinėje aplinkoje arba ftp kliente:" + +msgid "" +"If you have trouble changing permissions, ask your system administrator for assistance. " +"When you've fixed the permissions, click the Continue button to proceed." +msgstr "" +"Jei jums nepavyksta pakeisti prieigos teisių, paprašykite pagalbos pas sistemos " +"administratorių. Kai sutvarkysite visas teises, spauskite mygtuką Tęsti." + +msgid "Continue" +msgstr "Tęsti" + +msgid "Download Plugin List" +msgstr "Gauti priedų sąrašą" + +msgid "Show Repository List" +msgstr "Rodyti Repozicijų sąrašą" + +msgid "Upgrade Gallery" +msgstr "Naujinti Galeriją" + +msgid "" +"A new version of Gallery is available, but it cannot be upgraded through this interface. " +"Upgrading it might make some of your current plugins stop working, but others that rely on " +"the features of the new version may become available. Here are the recommended steps for " +"upgrading:" +msgstr "" +"Yra nauja Galerijos versija, tačiau ji negali būti atnaujinta šio dialogo pagalba. " +"Atnaujinus kai kurie dabar naudojami priedai gali nebeveikti, tačiau gali atsirasti naujų, " +"kuriems būtinos naujos Galerijos galimybės. Norint atnaujinti rekomenduojami šie veiksmai:" + +#, fuzzy, c-format +msgid "%sDownload%s the new Gallery package" +msgstr "%sGauti%s Galerijos pagrindą" + +#, c-format +msgid "Read the %supgrade instructions%s and perform the upgrade" +msgstr "Perskaitykite %satnaujinimo instrukcijas%s ir atlikite atnaujinimą" + +msgid "Incompatible plugins are marked with an exclamation icon." +msgstr "Nesuderinami priedai pažymėti šauktuko ikona." + +#, c-format +msgid "" +"A new core module version is available. There may be plugins that are incompatible with the " +"installed core module, which are not shown here. You can view a %scomplete list%s of " +"plugins, including incompatible ones, which are marked with a red icon." +msgstr "" +"Yra nauja pagrindinio modulio versija. Gali būti priedų, kurie nesuderinamų įdiegtu " +"pagrindiniu moduliu, ir jie čia nerodomi. Jūs galite peržiūrėti %spilną priedų sąrašą%s, " +"įskaitant nesuderinamus, kurie bus pažymėti raudona ikona." + +msgid "upgrade available" +msgstr "yra atnaujinimas" + +msgid "locked" +msgstr "užrakinta" + +msgid "Theme Name" +msgstr "Temos pavadinimas" + +msgid "Module Name" +msgstr "Modulio pavadinimas" + +msgid "Latest" +msgstr "Naujausias" + +msgid "Locked Plugin" +msgstr "Priedas užrakintas" + +msgid "Incompatible Plugin" +msgstr "Nesuderinamas priedas" + +msgid "Upgrade Available" +msgstr "Yra atnaujinimas" + +msgid "download" +msgstr "atsisiųsti" + +msgid "modify" +msgstr "keisti" + +msgid "Upgrade All Plugins" +msgstr "Atnaujinti visus priedus" + +msgid "" +"Gallery can automatically upgrade your themes and modules to the latest available versions. " +"No new plugins will be downloaded." +msgstr "" +"Galerija gali automatiškai atnaujinti jūsų temas ir modulius į naujausias egzistuojančias " +"versijas. Nauji priedai nebus atsiunčiami." + +msgid "Upgrade All" +msgstr "Atnaujinti viską" + +#, c-format +msgid "Download %s" +msgstr "Gauti %s" + +msgid "No packages have been selected." +msgstr "Nepažymėti jokie paketai." + +msgid "" +"Download a package in order to use this plugin. You can upgrade by choosing a newer version " +"of the package to download. Language packages are optional, You only need to download the " +"ones that you want to use on your site." +msgstr "" +"Kad naudoti šį priedą reikia atsisiųsti paketą. Atnaujinti galite pasirinkdami naujesnę " +"paketo versiją. Kalbos paketai nebūtini, atsisiųskite tik tuos, kuriuos naudosite savo " +"svetainėje." + +msgid "Base Packages" +msgstr "Baziniai paketai" + +#, c-format +msgid "%s: version %s (build %s)" +msgstr "%s: versija %s (surinkimas %s)" + +#, c-format +msgid "%s: version %s (build %s) %sdowngrading is not supported!%s" +msgstr "%s: versija %s (surinkimas %s) %satsisiuntimas nepalaikomas!%s" + +#, c-format +msgid "%sCurrently Installed%s: version %s (build %s)" +msgstr "%sĮdiegta%s: versija %s (surinkimas %s)" + +msgid "Language Packages" +msgstr "Kalbos paketai" + +#, c-format +msgid "(%sselect all%s%sselect none%s)" +msgstr "(%spažymėti viską%s%snežymėti nieko%s)" + +#, c-format +msgid "%s version %s (upgrading from %s)" +msgstr "%s versija %s (atnaujinama iš %s)" + +#, c-format +msgid "%s version %s" +msgstr "%s versija %s" + +#, c-format +msgid "%s version %s (%snewer version %s is installed%s)" +msgstr "%s versija %s (%snaujasnė versija %s yra įdiegta%s)" + +#, c-format +msgid "%s version %s (currently installed)" +msgstr "%s versija %s (jau įdiegta)" + +msgid "No compatible language packages available" +msgstr "Suderinamų kalbos paketų nėra" + +msgid "You must select a base package before choosing language packs." +msgstr "Prieš pasirenkant kalbos paketus, reikia pasirinkti bazinė paketą." + +msgid "Update" +msgstr "Atnaujinti" + +msgid "Gallery Themes" +msgstr "Galerijos temos" + +#, c-format +msgid "Successfully activated theme %s" +msgstr "Tema %s sėkmingai aktyvuota" + +#, c-format +msgid "Successfully deactivated theme %s" +msgstr "Tema %s sėkmingai deaktyvuota" + +#, c-format +msgid "Successfully installed theme %s" +msgstr "Tema %s sėkmingai įdiegta" + +#, c-format +msgid "Successfully uninstalled theme %s" +msgstr "Tema %s sėkmingai pašalinta" + +#, c-format +msgid "Successfully upgraded theme %s" +msgstr "Tema %s sėkmingai atnaujinta" + +msgid "Successfully saved default album settings" +msgstr "Numatyti albumo nustatymai išsaugoti sėkmingai" + +msgid "Restored theme settings" +msgstr "Temos nustatymai atstatyti" + +msgid "Defaults" +msgstr "Numatyti nustatymai" + +msgid "" +"These are default display settings for albums in your gallery. They can be overridden in " +"each album." +msgstr "" +"Čia yra numatyti galerijos nustatymai albumų rodymui. Jie gali būti pakeisti kiekvienam " +"albumui atskirai." + +msgid "Default sort order" +msgstr "Numatyta rūšiavimo tvarka" + +msgid "with" +msgstr "plotis" + +#, c-format +msgid "" +"The %s theme is incompatible with your Gallery version or no longer available. Please " +"upgrade the %s theme or pick another default theme." +msgstr "" + +msgid "New albums" +msgstr "Naujas albumas" + +msgid "Save Defaults" +msgstr "Išsaugoti numatytus nustatymus" + +#, c-format +msgid "%s Theme Settings" +msgstr "Temos %s nustatymai" + +msgid "" +"These are the global settings for the theme. They can be overridden at the album level." +msgstr "" +"Čia yra globalūs temos nustatymai. Jie gali būti pakeisti kiekvienam albumui atskirai." + +msgid "Available" +msgstr "Galimi" + +msgid "Choose a block" +msgstr "Pasirinkite bloką" + +msgid "Selected" +msgstr "Parinkti" + +msgid "Remove" +msgstr "Išimti" + +msgid "Move Up" +msgstr "Aukščiau" + +msgid "Move Down" +msgstr "Žemiau" + +msgid "Parameter" +msgstr "Parametras" + +msgid "Value" +msgstr "Reikšmė" + +msgid "There are no settings for this theme" +msgstr "Šiai temai nustatymų nėra" + +msgid "Save Theme Settings" +msgstr "Išsaugoti temos nustatymus" + +msgid "" +"The toolkits shown below have some overlap in supported operations and mime types. Rank the " +"toolkits here to determine which will perform these operations." +msgstr "" +"Žemiau išvardintų įrankių kai kurios palaikomos operacijos ir mime tipai persidengia. " +"Surūšiuokite juos tam kad nurodyti kuriam iš jų teikiamas prioritetas." + +msgid "Toolkit" +msgstr "Įrankių rinkinys" + +msgid "Order" +msgstr "Tvarka" + +msgid "up" +msgstr "aukštyn" + +msgid "down" +msgstr "žemyn" + +msgid "User Management" +msgstr "Vartotojų tvarkymas" + +#, c-format +msgid "Removed user '%s'" +msgstr "Pašalintas vartotojas „%s“" + +#, c-format +msgid "Created user '%s'" +msgstr "Sukurtas vartotojas „%s“" + +#, c-format +msgid "Modified user '%s'" +msgstr "Pataisytas vartotojas „%s“" + +#, c-format +msgid "There is %d user in the system." +msgid_plural "There are %d total users in the system." +msgstr[0] "Sistemoje yra %d vartotojas." +msgstr[1] "Sistemoje yra %d vartotojai." +msgstr[2] "Sistemoje yra %d vartotojų." + +msgid "Edit User" +msgstr "Redaguoti vartotoją" + +msgid "You cannot delete yourself!" +msgstr "Negalima ištrinti savęs!" + +msgid "You cannot delete the special guest user." +msgstr "Negalima ištrinti specialaus vartotojo svečias." + +msgid "Edit User (by list)" +msgstr "Redaguoti vartotoją (pagal sąrašą)" + +msgid "Locked" +msgstr "Užrakinta" + +msgid "Failed Logins" +msgstr "Nepavykę prisijungimai" + +msgid "Thumbnails" +msgstr "Miniatiūros" + +msgid "" +"Gallery can create thumbnails at upload time, or create them the first time you want to see " +"the thumbnail itself. Either way, it will create the thumbnail once and save it, but if you " +"create them at upload time it makes viewing albums for the first time go faster at the " +"expense of a longer upload time." +msgstr "" +"Galerija gali sugeneruoti miniatiūras įkeliant elementus, arba tik tada kai jos prireiks. " +"Bet kokiu atveju miniatiūra bus sukurta ir išsaugota, tačiau jei miniatiūros bus " +"generuojamos įkeliant elementus, tuomet pirmą kartą albumų peržiūra vyks greičiau, to kaina " +"- šiek tiek lėtesnis elementų įkėlimas." + +msgid "Create thumbnails now" +msgstr "Generuoti miniatiūras dabar" + +msgid "This is a test email from Gallery2" +msgstr "Tai bandomasis laiškas iš Gallery2" + +msgid "Edit Conflict!" +msgstr "Tvarkyti konfliktą!" + +msgid "Security Violation" +msgstr "Saugumo pažeidimas" + +msgid "Database Error" +msgstr "Duombazės klaida" + +msgid "Platform Error" +msgstr "Platformos klaida" + +msgid "Authentication Failure" +msgstr "Autentikacijos klaida" + +msgid "Error" +msgstr "Klaida" + +msgid "" +"Your change cannot be completed because somebody else has made a conflicting change to the " +"same item. Use the back button in your browser to go back to the page you were on, then " +"reload that page and try your change again." +msgstr "" +"Jūsų pakeitimai negali būti užbaigti, kadangi kažkas kitas atliko pakeitimą konfliktuojantį " +"su jusiškiu. Sugrįžkite atgal į puslapį kuriame buvote, tada atnaujinkite (reload) " +"puslapį ir pabandykite redaguoti vėl." + +msgid "Go back and try again" +msgstr "Grįžti ir bandyti dar kartą" + +msgid "" +"If this problem happens repeatedly, it may be because of corruption in your cache. Site " +"Administrators can clear out this cache." +msgstr "" +"Jei ši problema kartojasi, tai gali būti dėl sugadinto podelio (cache). Svetainės " +"administratorius gali jį išvalyti." + +msgid "Clear the cache" +msgstr "Išvalyti podelį" + +msgid "Alternatively, you can return to the main Gallery page and resume browsing." +msgstr "" +"Kaip alternatyva, jūs galite sugrįžti į pagrindinį Galerijos puslapį ir pradėti naršyti iš " +"naujo." + +msgid "The action you attempted is not permitted." +msgstr "Veiksmas kurį bandote atlikti draudžiamas." + +msgid "" +"Your change cannot be completed due to a loss of session data. Please try again. If it still " +"doesn't work, try logging out and logging back in." +msgstr "" +"Pakeitimas negali būti užbaigtas, nes prarasti sesijos duomenys. Pabandykite iš naujo. Jei " +"vis tiek nepavyks, atsijunkite ir prisijunkite iš naujo." + +msgid "An error has occurred while interacting with the database." +msgstr "Keičiantis duomenimis su duomenų baze įvyko klaida." + +msgid "" +"The exact nature of database errors is not captured unless Gallery debug mode is enabled in " +"config.php. Before seeking support for this error please enable buffered debug output and " +"retry the operation. Look near the bottom of the lengthy debug output to find error details." +msgstr "" +"Detali informacija apie duomenų bazės klaidas nėra išgaunama, nebent Galerija veikia su " +"įjungta testavimo veiksena, kurią įjungti galima faile config.php. Prieš bandydami ieškoti " +"pagalbos dėl šios problemos, būtinai įjunkite testavimo (debug) veikseną ir pakartokite " +"veiksmą. Naudingos informacijos apie klaidą ieškokite išvesties apačioje." + +msgid "An error has occurred while interacting with the platform." +msgstr "Sąveikaujant su platforma įvyko klaida." + +msgid "" +"The exact nature of the platform error is unknown. A common cause are insufficient file " +"system permissions. This can happen if you or your webhost changed something in the file " +"system, e.g. by restoring data from a backup." +msgstr "" +"Tiksli platformos klaidos priežastis nežinoma. Greičiausiai nepakanka failų sistemos teisių. " +"Taip galėjo atsitikti jei jūsų paslaugų tiekėjas ką nors keitė failų sistemoje, pvz. " +"atstatinėjo duomenis iš atsarginės kopijos." + +msgid "Item not found." +msgstr "Elementas nerastas." + +msgid "An error has occurred." +msgstr "Įvyko klaida" + +msgid "Back to the Gallery" +msgstr "Atgal į Galeriją" + +msgid "Error Detail" +msgstr "Klaidos detalės" + +msgid "System Information" +msgstr "Sistemos informacija" + +msgid "" +"You don't have any Graphics Toolkit activated that can handle JPEG images. If you add " +"images, you will probably not have any thumbnails." +msgstr "" +"Jūs neturite aktyvuoto jokio grafikos įrankių rinkinio, todėl negalite padoroti JPEG " +"paveikslėlių. Jei pridėsite naujų paveikslėlių, jūs greičiausiai netturėsite sugeneruotų " +"miniatiūrų." + +#, c-format +msgid "Visit the Modules page to activate a Graphics Toolkit." +msgstr "" +"Aplankykite puslapį Moduliai kad aktyvuoti grafinių įrankių rinkinius." + +msgid "Add Sub-Album" +msgstr "Pridėti vidinį albumą" + +msgid "" +"The name of this album on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes. You will be able to rename it later." +msgstr "" +"Albumo pavadinimas serverio failų sistemoje. Šiame albume jis turi būti unikalus. " +"Naudokite tik angliškos abėcėlės raides, pabraukimus „_“ ir taškus. Vėliau pavadinimą " +"galėsite keisti." + +msgid "Your name contains invalid characters. Please enter another." +msgstr "Jūsų pavadinime yra neleistinų simbolių. Įveskite kitą." + +msgid "You must enter a name for this album." +msgstr "Šiam albumui reikia įvesti pavadinimą." + +msgid "The name you entered is already in use. Please enter another." +msgstr "Pavadinimas kurį įvedėte jau naudojamas. Įveskite kitą." + +msgid "This is the album title." +msgstr "Tai albumo antraštė." + +msgid "This is the album summary." +msgstr "Tai albumo santrauka." + +msgid "Keywords are not visible, but are searchable." +msgstr "Raktiniai žodžiai nebus matomi, tačiau pagal juos vykdoma paieška." + +msgid "This is the long description of the album." +msgstr "Tai albumo pilnas aprašymas." + +msgid "Create" +msgstr "Sukurti" + +msgid "Upload Complete" +msgstr "Įkėlimas atliktas" + +#, c-format +msgid "Successfully added %d file." +msgid_plural "Successfully added %d files." +msgstr[0] "Sėkmingai įkeltas %d failas." +msgstr[1] "Sėkmingai įkelti %d failai." +msgstr[2] "Sėkmingai įkelta %d failų." + +msgid "No files added." +msgstr "Neįkelti jokie failai." + +#, c-format +msgid "Added %s" +msgstr "Įkelta %s" + +#, c-format +msgid "Failed to add %s" +msgstr "Nepavyko įkelti %s" + +msgid "Add more files" +msgstr "Įkelti daugiau failų" + +msgid "" +"Your webserver is configured to disallow file uploads from your web browser at this time. " +"Please contact your system administrator for assistance." +msgstr "" +"Jūsų web serveris neleidžia įkelti failų iš naršyklės. Susisiekite su sistemos " +"administratoriumi konsultacijoms." + +msgid "Upload files directly from your computer." +msgstr "Įkelti failus tiesiai iš jūsų kompiuterio." + +msgid "Enter the full path to the file and an optional caption in the boxes below." +msgstr "Nurodykite pilną kelią iki failo, papildomai galite įrašyti antraštę laukuose žemiau." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. If you want to upload more than that, you " +"must upload the files separately, use a different upload format, or ask your system " +"administrator to allow larger uploads." +msgstr "" +"Dėmesio: Įkelti galima ne daugiau nei %s vienu metu. Jei norite įkelti daugiau, " +"tuomet reikia įkelti failus keliais žingsniais, naudoti kitokį failų įkėlimo būdą, arba " +"paprašyti administratoriaus, kad suteiktu galimybę atlikti didesnius įkėlimus." + +#, c-format +msgid "" +"Note: You can upload up to %s at one time. No individual file may be larger than %s. " +"If you want to upload more than that, you must upload the files separately, use a different " +"upload format, or ask your system administrator to allow larger uploads." +msgstr "" +"Dėmesio: Įkelti galima nedaugiau nei %s vienu metu. Vienas failas negali būti " +"didesnis nei %s. Jei norite įkelti daugiau, tuomet reikia įkelti failus keliais žingsniais, " +"naudoti kitokį failų įkėlimo būdą, arba paprašyti administratoriaus, kad suteiktu galimybę " +"atlikti didesnius įkėlimus." + +msgid "More Upload Boxes..." +msgstr "Daugiau atnaujinimo dėžučių..." + +msgid "Set item titles from:" +msgstr "Nustatyti antraštes pagal:" + +msgid "Assign caption to:" +msgstr "Antraštę priskirti:" + +msgid "No Thumbnail" +msgstr "Be miniatiūros" + +msgid "Delete Items" +msgstr "Trinti elementus" + +msgid "No items were selected for deletion" +msgstr "Trynimui nieko nepažymėta" + +#, c-format +msgid "Successfully deleted %d item" +msgid_plural "Successfully deleted %d items" +msgstr[0] "Sėkmingai ištrintas %d elementas" +msgstr[1] "Sėkmingai ištrinti %d elementai" +msgstr[2] "Sėkmingai ištrinta %d elementų" + +msgid "This album contains no items to delete" +msgstr "Šiame albume nėra nieko trynimui" + +msgid "Choose the items you want to delete" +msgstr "Nurodykite elementus, kuriuos norite ištrinti" + +#, c-format +msgid "(page %d of %d)" +msgstr "(puslapis %d iš %d)" + +msgid "Items selected here will remain selected when moving between pages." +msgstr "Elementai, kuriuos čia pažymėjote, keičiant puslapius liks pažymėti." + +#, c-format +msgid "One item selected on other pages." +msgid_plural "%d items selected on other pages." +msgstr[0] "Kituose puslapiuose pažymėtas %d elementas." +msgstr[1] "Kituose puslapiuose pažymėti %d elementai." +msgstr[2] "Kituose puslapiuose pažymėta %d elementų." + +msgid "(data)" +msgstr "(data)" + +#, c-format +msgid "(album containing %d item)" +msgid_plural "(album containing %d items)" +msgstr[0] "(albumas, kuriame yra %d elementas)" +msgstr[1] "(albumas, kuriame yra %d elementai)" +msgstr[2] "(albumas, kuriame yra %d elementų)" + +msgid "(empty album)" +msgstr "(tuščias albumas)" + +msgid "Check All" +msgstr "Žymėti viską" + +msgid "Check None" +msgstr "Nežymėti visko" + +msgid "Invert" +msgstr "Iversija" + +msgid "Previous Page" +msgstr "Ankstesnis puslapis" + +msgid "Next Page" +msgstr "Sekantis puslapis" + +msgid "Deletion Complete" +msgstr "Trynimas atliktas" + +msgid "Item successfully deleted" +msgstr "Elementas sėkmingai ištrintas" + +#, c-format +msgid "Are you sure you want to delete this %s?" +msgstr "Ar tikrai norite ištrinti %s?" + +#, c-format +msgid "It contains %d item." +msgid_plural "It contains %d items." +msgstr[0] "Jame yra %d elementas." +msgstr[1] "Jame yra %d elementai." +msgstr[2] "Jame yra %d elementų." + +msgid "There is no undo!" +msgstr "Galimybės atšauti nebus!" + +msgid "There was a problem processing your request." +msgstr "Vykdant jūsų užklausą iškilo problemų." + +msgid "Sort order" +msgstr "Rūšiavimo tvarka" + +msgid "" +"This sets the sort order for the album. This applies to all current items, and any newly " +"added items." +msgstr "" +"Čia nustatoma albumo rūšiavimo tvarka. Šis nustatymas taikomas dabartiniams albumams ir " +"visiems naujai įkeltiems elementams." + +msgid "Apply to all subalbums" +msgstr "Taikyti visiems subalbumams" + +msgid " Every item requires a thumbnail. Set the default size in pixels here." +msgstr " Kiekvienam elementui reikalinga miniatiūra. Čia nurodykite numatytą dydį taškeliais." + +msgid "You must enter a number (greater than zero)" +msgstr "Reikia įvesti skaičių (didesnį už nulį)" + +msgid "Use this thumbnail size in all subalbums" +msgstr "Visuose subalbumuose naudoti šį miniatiūros dydį" + +msgid "Resized Images" +msgstr "Sumažinti paveikslėliai" + +msgid "Each item in your album can have multiple sizes. Define the default sizes here." +msgstr "" +"Kiekvienas albumo elementas gali turėti keletą matmenų. Čia nurodykite numatytus matmenis." + +msgid "Active" +msgstr "Aktyvus" + +msgid "Target Size (pixels)" +msgstr "Taikomas dydis (taškeliais)" + +msgid "You must enter a valid size" +msgstr "Reikia nurodyti tinkamą dydį" + +msgid "Use these target sizes in all subalbums" +msgstr "Visiems subalbumams naudoti šiuos nustatytus matmenis" + +msgid "Apply settings to existing items" +msgstr "Taikyti nuostatas egzistuojančiams elementams" + +msgid "" +"The thumbnail and resized image settings are for all new items. To apply these settings to " +"all the items in your album, check the appropriate box. Including subalbums will apply each " +"album's own settings to its thumbnails/resizes, which may not match the settings above. " +"Building images now makes this operation take longer, but saves the time to build and cache " +"each file when it is first viewed." +msgstr "" +"Miniatiūros ir sumažintų variantų nustatymai taikomi visiems naujiems elementams. Tam kad " +"šie nustatymai būtu taikomi visiems albumo elementams, uždėkite atitinkamą varnelę. Tuomet " +"nustatymai bus pritaikyti albumui ir visiems subalbumams. Jei failai bus generuojami dabar, " +"tuomet ši operacija gali užtrukti, bet bus sutaupomas laikas pirmą kart peržiūrint šiuos " +"elementus." + +msgid "Apply album setting to thumbnails" +msgstr "Miniatiūroms pritaikyti albumo nustatymus" + +msgid "... and for all subalbums" +msgstr "... taip pat ir visiems subalbumams" + +msgid "Build thumbnails too" +msgstr "Taip pat generuoti miniatiūras" + +msgid "Apply album setting to resized images" +msgstr "Albumo nustatymus pritaikyti sumažintiems variantams" + +msgid "Build resizes too" +msgstr "Taip pat sugeneruoti sumažintus variantus" + +msgid "" +"In order for Gallery to properly display this animation, it has to know the animation's " +"width and height. If you have installed a graphics toolkit that can handle animation types, " +"then these values may already be set. If not, they may be set to 0. If you do not enter " +"the correct values here, the animation may appear distorted when viewed in your web " +"browser. Note that changing these values does not change the animation itself so " +"experimenting won't cause harm." +msgstr "" +"Kad Galerija galėtu tinkamai parodyti šią animaciją, jai reikia žinoti animacijos aukštį ir " +"plotį. Jei sistemoje yra įdiegtas grafikos įrankių rinkinys, kuris gali apdoroti " +"animacijas, tuomet šios reikšmės jau gali būti nustatytos. Jei ne, jos gali būti lygios 0. " +"Jei čia nenurodysite teisingų reikšmių, animacijos naršyklėje gali atrodyti ištampytos. " +"Atkreipkite dėmesį į tai, kad šių reikšmių keitimas nekeičia pačios animacijos, todėl " +"galite drąsiai eksperimentuoti." + +msgid "Width" +msgstr "Plotis" + +msgid "You must enter a value greater than or equal to 0" +msgstr "Reikia įvesti didesnį ar lygų nuliui skaičių" + +msgid "Height" +msgstr "Aukštis" + +msgid "There were errors saving some items" +msgstr "Išsaugant kai kuriuos elementus įvyko klaidos" + +msgid "There were errors saving all items" +msgstr "Saugant visus elementus įvyko klaidos" + +msgid "Successfully saved all items" +msgstr "Visi elementai sėkmingai išsaugoti" + +msgid "This album contains no items" +msgstr "Šis albumas tuščias" + +msgid "Saved successfully." +msgstr "Išsaugota sėkmingai." + +msgid "This item was modified by somebody else at the same time. Your changes were lost." +msgstr "Šį elementą redagavo kitas asmuo tuo pačiu metu. Jūsų pakeitimai prarasti." + +msgid "You do not have permissions to modify this item." +msgstr "Jūs neturite teisės taisyti šį elementą." + +msgid "Save and Done" +msgstr "Išsaugoti ir užbaigti" + +#, c-format +msgid "Save and Edit Previous %s" +msgstr "Išsaugoti ir redaguoti ankstesnį %s" + +#, c-format +msgid "Save and Edit Next %s" +msgstr "Išsaugoti ir redaguoti sekantį %s" + +msgid "" +"The name of this item on your hard disk. It must be unique in this album. Only use " +"alphanumeric characters, underscores or dashes." +msgstr "" +"Elemento pavadinimas failų sistemoje. Šiame albume jis turi būti unikalus. Naudokite tik " +"angliškos abėcėlės simbolius, pabraukimus „_“ ir taškus." + +msgid "Your name contains invalid characters. Please choose another." +msgstr "Jūsų pavadinime yra netinkamų simbolių. Nurodykite kitą." + +msgid "You must enter a name for this item." +msgstr "Reikia įvesti šio elemento pavadinimą." + +msgid "The name you entered is already in use. Please choose another." +msgstr "Įvestas pavadinimas jau naudojamas. Nurodykite kitą." + +msgid "The title of this item." +msgstr "Elemento antraštė." + +msgid "The root album must have a title." +msgstr "Pagrindinis albumas turi turėti antraštę." + +msgid "The summary of this item." +msgstr "Šio elemento santrauka." + +msgid "This is the long description of the item." +msgstr "Tai šio elemento pilnas aprašymas." + +#, c-format +msgid "%s Date and Time" +msgstr "%s data ir laikas" + +msgid "Set the date and time when this image was captured." +msgstr "Nustatyti datą ir laiką pagal fotografavimo laiką." + +msgid "Set the date and time to be displayed for this item." +msgstr "Nustatyti šio elemento rodomą datą ir laiką." + +#, c-format +msgid "Set the date and time to be displayed for this %s." +msgstr "Nustatyti šio %s rodomą datą ir laiką." + +msgid "Date:" +msgstr "Data:" + +msgid "Time:" +msgstr "Laikas:" + +msgid "Use the original capture date and time from file information (e.g. Exif tag):" +msgstr "" +"Naudoti fotografavimo datą ir laiką pagal originalaus failo duomenis (pvz.: pagal EXIF " +"žymes):" + +msgid "You must enter a valid date and time" +msgstr "Reikia nurodyti teisingą datą ir laiką" + +msgid "Thumbnail" +msgstr "Miniatiūra" + +msgid "" +"Set the size of the thumbnail. The largest side of the thumbnail will be no larger than " +"this value. Leave this field blank if you don't want a thumbnail." +msgstr "" +"Nustatyti miniatiūros dydį. Didesnis miniatiūros matmuo šios reikšmės viršyti. Jei jums " +"miniatiūra nereikalinga, galite šį laukelį palikti tuščią." + +msgid "" +"There are no graphics toolkits enabled that support this type of item, so we cannot create " +"or modify a thumbnail." +msgstr "" +"Nerasta jokių grafinių įrankių, kurie galėtu apdoroti šio tipo elementus, todėl miniatiūra " +"negali būti sukurta ar pakeista." + +msgid "Unable to create a thumbnail for this item" +msgstr "Šiam elementui sugeneruoti miniatiūros neįmanoma" + +msgid "" +"In order for Gallery to properly display this movie, it has to know the movie's width and " +"height. If you have installed a graphics toolkit that can handle movie types, then these " +"values may already be set. If not, they may be set to 0. If you do not enter the correct " +"values here, the movie may appear distorted when viewed in your web browser. Note that " +"changing these values do not change the movie itself so experimentation won't cause " +"harm." +msgstr "" +"Kad Galerija galėtu tinkamai parodyti šį filmą, jai reikia žinoti medžiagos aukštį ir " +"plotį. Jei sistemoje yra įdiegtas grafikos įrankių rinkinys, kuris gali apdoroti šio tipo " +"filmus, tuomet šios reikšmės jau gali būti nustatytos. Jei ne, jos gali būti lygios 0. Jei " +"čia nenurodysite teisingų reikšmių, vaizdas gali atrodyti iškraipytas. Atkreipkite dėmesį į " +"tai, kad šių reikšmių keitimas nekeičia pačio filmo, todėl galite drąsiai " +"eksperimentuoti." + +msgid "Resized Photos" +msgstr "Sumažintos foto" + +msgid "" +"These sizes are alternate resized versions of the original you would like to have available " +"for viewing." +msgstr "" +"Šie paveikslėliai yra alternatyvūs, sumažinti originalių fotografijų variantai, kuriuos " +"patogiau peržiūrėti." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot create " +"or modify resized versions." +msgstr "" +"Nėra aktyvių grafinių įrankių, kurie galėtu apdoroti šio tipo fotografiją, todėl neįmanoma " +"sukurti ar pakeisti jos sumažinto varianto." + +msgid "" +"You can select which part of the photo will be used for the thumbnail. This will have no " +"effect on the resized or original versions of the image." +msgstr "" +"Jūs galite pasirinkti kuri fotografijos dalis bus naudojama miniatiūroje. Tai neturės " +"įtakos sumažintai ir originaliai fotografijai." + +msgid "Aspect Ratio: " +msgstr "Santykiniai matmenys: " + +msgid "Crop" +msgstr "Kirpti" + +msgid "Undo Changes" +msgstr "Atšaukti pakeitimus" + +msgid "Reset to default" +msgstr "Atkurti numatytą" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot crop " +"the thumbnail." +msgstr "" +"Nėra aktyvių grafinių įrankių, kurie galėtu apdoroti šio tipo fotografiją, todėl iškirpti " +"miniatiūros neįmanoma." + +msgid "Rotate" +msgstr "Pasukti" + +msgid "You can only rotate the photo in 90 degree increments." +msgstr "Pasukti galima tik kas 90 laipsnių." + +msgid "CC 90°" +msgstr "Pagal laikrodžio rod. 90°" + +msgid "180°" +msgstr "180°" + +msgid "C 90°" +msgstr "Prieš laikrodžio rod. 90°" + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot rotate " +"it." +msgstr "" +"Nėra aktyvių grafinių įrankių, kurie galėtu apdoroti šio tipo fotografiją, todėl jos pasukti " +"neįmanoma." + +msgid "Scale" +msgstr "Keisti dydį" + +msgid "" +"Shrink or enlarge the original photo. When Gallery scales a photo, it maintains the same " +"aspect ratio (height to width) of the original photo to avoid distortion. Your photo will " +"be scaled until it fits inside a bounding box with the size you enter here." +msgstr "" +"Sumažinti ar padidinti originalią foto. Keisdama paveikslėlio matmenys, galerija išsaugo " +"originalius santykinius matmenis (aukščio ir pločio santykį), kad neatsirastu ištampymas. " +"Jūsų foto matmenys bus pakeisti taip, kad ji tilptu į jūsų nurodytas ribas." + +msgid "" +"There are no graphics toolkits enabled that support this type of photo, so we cannot scale " +"it." +msgstr "" +"Nėra aktyvių grafinių įrankių, kurie galėtu apdoroti šio tipo fotografiją, todėl pakeisti " +"jos matmenų neįmanoma." + +msgid "You must enter a size" +msgstr "Reikia įvesti dydį" + +msgid "Preserve Original" +msgstr "Išsaugoti originalą" + +msgid "" +"Gallery does not modify your original photo when rotating and scaling. Instead, it " +"duplicates your photo and works with copies. This requires a little extra disk space but " +"prevents your original from getting damaged. Disabling this option will cause any actions " +"(rotating, scaling, etc) to modify the original." +msgstr "" +"Apdorojant fotografijas (keičiant matmenis ar pasukant), Galerija nekeičia originalių failų, " +"ji padaro naują failo kopiją, kurią ir apdoroja. Tai reikalauja šiek tiek papildomos " +"vietos, tačiau padeda išvengti originalaus failo sugadinimo. Išjungus šią apsaugą, visi " +"veiksmai bus atliekami su originalu." + +msgid "This is a link to another photo, so you cannot change the original" +msgstr "Tai tik nuoroda į kitą foto, todėl jums neleidžiama jos keisti" + +msgid "There are links to this photo, so you cannot change the original" +msgstr "Yra sukurtų nuorodų, kurios rodo į šią foto, todėl jūs negalite keisti originalo" + +msgid "" +"There is no toolkit support to modify the original so operations may only be applied to the " +"copies" +msgstr "" +"Nėra tinkamo įrankio, kurio pagalba būtu galima keisti originalą, todėl veiksmai bus " +"pritaikomi kopijoms" + +msgid "Preserve Original Photo" +msgstr "Išsaugoti originalią foto" + +msgid "Modified Photo" +msgstr "Pakeista foto" + +msgid "" +"You are using a copy of the original photo that has been scaled or rotated. The original " +"photo is still available, but is no longer being used. Any changes you make will be applied " +"to the copy instead." +msgstr "" +"Jūs naudojate originalios fotografijos kopiją, kuri yra pasukta arba pakeisti jos matmenys. " +"Originali fotografija vis dar yra išsaugota, tik ji nebenaudojama. Visi jūsų atlikti " +"pakeitimai bus atliekami su šia kopija." + +msgid "Restore original" +msgstr "Atkuri originalą" + +msgid "Choose a theme" +msgstr "Pasirinkite temą" + +#, c-format +msgid "" +"This album is configured to use the %s theme which is either incompatible with this Gallery " +"version or no longer available. Please upgrade the %s theme or use another theme for this " +"album." +msgstr "" + +#, c-format +msgid "" +"Themes control the look and feel of the album. You can choose a different theme for each " +"album. If you don't choose a theme, we'll use the %s theme by default." +msgstr "" +"Nuo temų priklauso albumo išvaizda. Kiekvienam albumui galima parinkti skirtingas temas. Jei " +"nenurodysite temos, bus naudojama %s." + +msgid "Use this theme in all subalbums" +msgstr "Šią temą naudoti visuose subalbumuose" + +msgid "Choose Theme" +msgstr "Pasirinkite tamą" + +#, c-format +msgid "Configure the %s theme" +msgstr "Sukonfigūruokite %s temą" + +msgid "These settings only apply to the theme for this album." +msgstr "Šie nustatymai taikomi tik temai šiame albume." + +#, c-format +msgid "Use these settings in all subalbums that use the %s theme" +msgstr "Šiuos nustatymus naudoti visuose subalbumuose, kurie naudoja temą %s" + +msgid "Album Highlight" +msgstr "Albumo titulinė" + +msgid "You can make this item the thumbnail for its parent or any ancestor album." +msgstr "Šį elementą galima nustatyti kaip jo tėvo ir visų protėvių albumų miniatiūra." + +msgid "Highlight for:" +msgstr "Titulinis: " + +msgid "Highlight" +msgstr "Titulinis" + +msgid "Move an Item" +msgstr "Perkelti elementą" + +#, c-format +msgid "Successfully moved %d item" +msgid_plural "Successfully moved %d items" +msgstr[0] "Sėkmingai perkeltas %d elementas" +msgstr[1] "Sėkmingai perkelti %d elementai" +msgstr[2] "Sėkmingai perkelta %d elementų" + +msgid "This album contains no items to move." +msgstr "Šiame albume nėra elementų, kuriuos būtu galima perkelti." + +msgid "Source" +msgstr "Šaltinis" + +msgid "Choose the items you want to move" +msgstr "Pasirinkite kuriuos elementus norite perkelti" + +msgid "" +"The destination you chose does not accept sub-albums, so all sub-albums have been deselected." +msgstr "Pasirinkta paskirtis nepriima albumų, todėl albumai čia negali būti perkelti." + +msgid "" +"The destination you chose only accepts sub-albums, so all non-albums have been deselected." +msgstr "" +"Pasirinkta paskirtis priima tik albumus, todėl elementai kurie yra ne albumai neperkeliami." + +msgid "You are not allowed to move this item away from here." +msgstr "Jūs neturite teisės perkelti šį elementą į kitą vietą." + +msgid "You are not allowed to move an album to the chosen destination." +msgstr "Jūs neturite teisės albumą perkelti į nurodytą vietą." + +msgid "You are not allowed to move an item to the chosen destination." +msgstr "Jūs neturite teisės elementą perkelti į nurodytą vietą." + +msgid "You cannot move an album into its own subtree." +msgstr "Negalima perkelti albumą į jį patį." + +msgid "Destination" +msgstr "Paskirtis" + +msgid "Choose a new album for them" +msgstr "Jiems parinkite kitą albumą" + +msgid "You don't have the permission to add items in this album" +msgstr "Jūs neturite teisės į šį albumą pridėti naujus elementus" + +msgid "No destination chosen" +msgstr "Nenurodyta paskirtis" + +msgid "Move" +msgstr "Perkelti" + +msgid "Successfully moved" +msgstr "Perkelta sėkmingai" + +msgid "Choose a destination album" +msgstr "Nurodykite paskirties albumą" + +msgid "Permissions" +msgstr "Prieigos teisės" + +msgid "Owner changed successfully" +msgstr "Savininkas pakeistas sėkmingai" + +msgid "Group permission added successfully" +msgstr "Grupės prieigos teisės pridėtos sėkmingai" + +msgid "User permission added successfully" +msgstr "Vartotojo prieigos teisės pridėtos sėkmingai" + +msgid "Group permission removed successfully" +msgstr "Grupės prieigos teisės pašalintos sėkmingai" + +msgid "User permission removed successfully" +msgstr "Vartotojo prieigos teisės pašalintos sėkmingai" + +msgid "" +"Each item has its own independent set of permissions. Changing the parent's permissions has " +"no effect on the permissions of the child. This allows you to restrict access to the parent " +"of this item, but still grant full access to this item, or vice versa. The most efficient " +"way to use this permission system is to create groups and assign permissions to them. Then " +"if you want to grant permissions to a specific user, you can add (or remove) the user from " +"the appropriate group." +msgstr "" +"Kiekvienas Galerijos elementas turi savo nepriklausomą prieigos teisių rinkinį. Keičiant jo " +"tėvo prieigos teises neturi įtakos jo vaiko prieigos teisėms. Tai suteikia galimybę " +"uždrausti prieigą prie elemento tėvo, tačiau palikti pilnas prieigos teises šiam elementui, " +"ir atvirkščiai. Efektyviausias būdas naudoti prieigos teisių sistemą - tai grupių kūrimas " +"ir teisių suteikimas grupėms. Tuomet norėdami vartotojui suteikti tam tikras teises, jūs " +"galėsite jį įtraukti (arba pašalinti) į tam tikrą grupę." + +#, c-format +msgid "This item is owned by user: %s" +msgstr "Šio elemento savininkas: %s" + +#, c-format +msgid "This item is owned by user: %s (%s)" +msgstr "Šio elemento savininkas: %s (%s)" + +msgid "New owner" +msgstr "Naujas savininkas" + +msgid "Change" +msgstr "Keisti" + +msgid "Apply new owner to sub-items" +msgstr "Elemento vidiniams elementams priskirti naują savininką" + +msgid "You must enter a user name" +msgstr "Reikia įvesti vartotojo vardą" + +msgid "The user name you entered is invalid" +msgstr "Įvestas vartotojo vardas yra netinkamas" + +msgid "Apply changes" +msgstr "Pritaikyti pakeitimus" + +msgid "" +"This item has sub-items. The changes you make here can be applied to just this item, or you " +"can apply them to all sub-items. Note that applying changes to sub-items will merge your " +"change into the existing permissions of the sub-items and may be very time consuming if you " +"have many sub-items. It's more efficient to grant permissions to groups and then add and " +"remove users from groups whenever possible. Changes are applied to sub-items by default." +msgstr "" +"Šis elementas turi vidinių elementų. Pakeitimai atlikti su šiuo elementu gali būti taikomi " +"tik jam, arba jam ir visiems jo vaikams (vidiniams elementams). Atkreipkite dėmesį į tai, " +"kad pakeitimus taikant vidiniams elementams, naujos teisės bus jungiamos su jau " +"egzistuojančiomis vidinių elementų teisėmis, šis procesas gali užtrukti gana ilgai ypač jei " +"yra daug vidinių elementų. Daug efektyviau kada tik įmanoma suteikti teises grupėms, o tada " +"vartotojus įtraukti ar pašalinti iš tam tikrų grupių. Numatyta, kad pakeitimai vidiniams " +"elementams taikomi." + +msgid "Apply to sub-items" +msgstr "Taikyti vidiniams elementams" + +msgid "Group Permissions" +msgstr "Grupės prieigos teisės" + +msgid "Group name" +msgstr "Grupės pavadinimas" + +msgid "Permission" +msgstr "Prieigos teisės" + +msgid "New Group Permission" +msgstr "Naujos grupės prieigos teisės" + +msgid "Add Permission" +msgstr "Pridėti prieigos teisę" + +msgid "The permission you chose is invalid" +msgstr "Parinkta prieigos teisė netinkama" + +msgid "The group name you entered is invalid" +msgstr "Įvestas blogas grupės pavadinimas" + +msgid "Group already has this permission (check sub-permissions)" +msgstr "Grupė jau turi šią teisę (pažymėkite „Taikyti vidiniams elementams“)" + +msgid "User Permissions" +msgstr "Vartotojų prieigos teisės" + +msgid "User name" +msgstr "Vartotojo vardas" + +msgid "New User Permission" +msgstr "Naujos vartotojo prieigos teisės" + +msgid "The user already has this permission (check sub-permissions)" +msgstr "Vartotojas jau turi šią teisę (pažymėkite „Taikyti vidiniams elementams“)" + +msgid "Reorder Album" +msgstr "Perrūšiuoti albumą" + +msgid "Order saved successfully" +msgstr "Tvarka išsaugota sėkmingai" + +msgid "" +"This album has an automatic sort order specified, so you cannot change the order of items " +"manually. You must remove the automatic sort order to continue." +msgstr "" +"Šiam albumui nurodyta automatinė rūšiavimo tvarka, todėl elementų išdėstymo tvarkos rankiniu " +"būdu keisti negalima. Pirma išjunkite automatinį rūšiavimą." + +msgid "change" +msgstr "keisti" + +msgid "Change the order of the items in this album." +msgstr "Keisti albumo elementų išdėstymo tvarką." + +msgid "Move this item" +msgstr "Perkelti šį elementą" + +msgid "before" +msgstr "prieš" + +msgid "after" +msgstr "po" + +msgid "Reorder" +msgstr "Perrūšiuoti" + +msgid "" +"JavaScript must be enabled for this page to function properly. However, it seems JavaScript " +"is either disabled or not supported by your browser. Please enable JavaScript by changing " +"your browser options, then try again." +msgstr "" +"Kad šis puslapis tinkamai veiktu, turi būti įgalintas JavaScript. Taičiau atrodo, kad " +"JavaScript jūsų naršyklėje išjungtas arba nepalaikomas. Įgalinkite JavaScript naudojimą savo " +"naršyklėje ir pabandykite dar kartą." + +msgid "Site is temporarily down for maintenance." +msgstr "Svetainė laikinai išjungta remontui." + +msgid "Admin Login" +msgstr "Administratoriaus prisijungimas" + +msgid "Enter a URL" +msgstr "Įveskite URL" + +msgid "Enter some text describing the URL" +msgstr "Įveskite tekstą apibūdinantį šį URL" + +msgid "Enter an image URL" +msgstr "Įveskite paveikslo URL" + +msgid "B " +msgstr "B" + +msgid "i " +msgstr "i" + +msgid "list" +msgstr "sąrašas" + +msgid "bullet" +msgstr "sąrašas" + +msgid "url" +msgstr "url" + +msgid "image" +msgstr "paveikslėlis" + +msgid "color" +msgstr "spalva" + +#, c-format +msgid "You can also use the color name for example: %s" +msgstr "" +"Taip pat galite naudoti spalvos pavadinimas pavyzdžiui: %s" + +msgid "Configuration Error: Missing Theme" +msgstr "Konfigūracijos klaida: Nerasta tema" + +msgid "Missing Theme" +msgstr "Nerasta tema" + +#, c-format +msgid "" +"This page is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Šis puslapis sukonfigūruotas naudoti temą %s, tačiau jį arba neįdiegta, arba ne aktyvi, arba " +"nesuderinama." + +#, c-format +msgid "" +"This album is configured to use the %s theme, but it is either inactive, not installed, or " +"incompatible." +msgstr "" +"Šis albumas sukonfigūruotas naudoti temą %s, tačiau tačiau jį arba neįdiegta, arba ne " +"aktyvi, arba nesuderinama." + +#, c-format +msgid "" +"To fix this problem you can %sinstall or activate this theme%s or select another default " +"theme." +msgstr "" +"Kad išspręsti šią problemą, reikia %sįdiegti arba aktyvuoti temą%s arba nurodyti kitą " +"numatytą temą." + +#, c-format +msgid "" +"To fix this problem you can %slogin as a site administrator%s and then %sinstall or activate " +"this theme%s or select another default theme." +msgstr "" +"Kad išspręsti šią problemą, reikia %sprisijungti kaip svetainės administratorius%s, tuomet %" +"sįdiegti arba aktyvuoti temą%s arba nurodyti kitą numatytą temą." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %sinstall or " +"activate this theme%s." +msgstr "" +"Kad išspręsti šią problemą jūs galite %sšiam albumui parinkti naują temą%s arba %sįdiegti ir " +"aktyvuoti šią temą%s." + +#, c-format +msgid "" +"To fix this problem you can either %schoose a new theme for this album%s or %slogin as a " +"site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Kad išspręsti šią problemą jūs galite %sšiam albumui parinkti naują temą%s arba %" +"sprisijungti kaip svetainės administratorius%s ir tada %sįdiegti ir aktyvuoti šią temą%s." + +#, c-format +msgid "" +"To fix this problem you can either %slogin%s and then %schoose a new theme for this album%s " +"or %slogin as a site administrator%s and then %sinstall or activate this theme%s." +msgstr "" +"Kad išspręsti šią problemą jūs galite %sprisijungti%s ir tuomet %sparinkti kitą šio albumo " +"temą%s arba %sprisijungti kaip svetainės administratorius%s ir tuomet %sįdiegti ar aktyvuoti " +"šią temą%s." + +msgid "Admin Options" +msgstr "Administratoriaus nustatymai" + +msgid "User Options" +msgstr "Vartotojo nustatymai" + +msgid "Password changed successfully" +msgstr "Slaptažodis pakeistas sėkmingai" + +msgid "" +"You must enter your current password to prove that it's you, then enter your new password " +"twice to make sure that you didn't make a mistake." +msgstr "" +"Jums reikia įvesti savo dabartinį slaptažodį, kad įrodytumėte kad tai tikrai jūs, tuomet " +"jūsų naują slaptažodį du kartus. Būkite atidūs, kad neįveltumėte klaidos." + +msgid "Current Password" +msgstr "Dabartinis slaptažodis" + +msgid "You must enter your current password" +msgstr "Jūs turite įvesti savo dabartinį slaptažodį" + +msgid "Incorrect password" +msgstr "Neteisingas slaptažodis" + +msgid "New Password" +msgstr "Naujas slaptažodis" + +msgid "You must enter a new password" +msgstr "Jūs turite įvesti naują slaptažodį" + +msgid "Verify New Password" +msgstr "Pakartokite naują slaptažodį" + +msgid "You must enter your new password again!" +msgstr "Reikia įvesti naują slaptažodį dar kartą!" + +msgid "" +"This account is not allowed to modify account settings. Please contact your Gallery " +"administrator" +msgstr "" +"Jums nesuteikta teisė keisti paskyros nuostatas. Susisiekite su Galerijos administratoriumi" + +msgid "" +"Your administrator has locked this account, preventing changes from being made to the " +"account information." +msgstr "" +"Administratorius užrakino šią paskyrą, kad išvengti bet kokių šios paskyros informacijos " +"pakeitimų." + +msgid "Login to your account" +msgstr "Prisijungi į savo paskyrą" + +msgid "Your password has been recovered, please login." +msgstr "Jūsų slaptažodis atkurtas, prašom prisijungti." + +#, c-format +msgid "" +"Logins to this account are temporarily disabled due to multiple failed login attempts. Wait " +"for access to be restored, or use the recover password page to re-enable " +"this account." +msgstr "" +"Prisijungimas prie šios paskyros laikinai uždraustas, kadangi daug kartų buvo bandoma " +"prisijungti nesėkmingai. Palaukite kol prieiga bus vėl leidžiama, arba pasinaudokite slaptažodžio atkūrimo puslapiu, paskyros atrakinimui." + +msgid "Your login information is incorrect. Please try again." +msgstr "Jūsų prisijungimo informacija neteisinga. Prašome bandyti dar kartą." + +#, c-format +msgid "" +"Lost or forgotten passwords can be retrieved using the recover password " +"page" +msgstr "" +"Pamesti ar užmiršti slaptažodžiai gali būti atkurti naudojant slaptažodžio " +"atkūrimo puslapį" + +#, c-format +msgid "Welcome, %s!" +msgstr "Labas, %s!" + +msgid "Account settings saved successfully" +msgstr "Paskyros nustatymai išsaugoti sėkmingai" + +msgid "(required, password required for change)" +msgstr "(privaloma, slaptažodį pakeisti būtina)" + +msgid "(suggested, password required for change)" +msgstr "(rekomenduojama, slaptažodį pakeisti būtina)" + +msgid "(required to change the e-mail address)" +msgstr "(el. pašto adresą pakeisti būtina)" + +msgid "You must enter your current password to change the e-mail address" +msgstr "Kad pakeisti el. pašto adresą reikia įvesti dabartinį slaptažodį" + +msgid "Recover a lost or forgotten password" +msgstr "Atkurti pamestą ar užmirštą slaptažodį" + +msgid "" +"Recovering your password requires that your user account has an email address assigned, and " +"that you have access to the listed email address. A confirmation will be emailed to you " +"containing a URL which you must visit to set a new password for your account. To prevent " +"abuse, password recovery requests can not be attempted more than once in a 20 minute " +"period. A recovery confirmation is valid for seven days. If it is not used during that " +"time, it will be purged from the system and a new request will have to be made." +msgstr "" +"Slaptažodžio atstatymui būtina, kad jūsų vartotojo paskyroje būtu nurodytas el. pašto " +"adresas, ir kad jūs galėtumete šį paštą perskaityti. El. paštu jums bus išsiųstas laiškas " +"su nuoroda, kurią paspaudus atsidarys naujo paskyros slaptažodžio kūrimo dialogas. Kad " +"išvengti piktavaliavimo, slaptažodžio atkūrimo užklausa negali būti vykdoma dažniau nei kas " +"20 min. Atstatymo patvirtinimas galios septynias dienas. Jei jis per šį laiką " +"nepanaudojamas, tuomet šis patvirtinimas pašalinamas iš sistemos, norint atkurti slaptažodį " +"po šio laikotarpio, reikia išsiųsti naują užklausą." + +msgid "Your recovery request has been sent!" +msgstr "Atstatymo užklausa išsiųsta!" + +msgid "" +"Note that if the account does not have an email address, you may not receive the email and " +"you should contact your system administrator for help." +msgstr "" +"Atkreipkite dėmesį, į tai, kad jei jūsų paskyroje nėra duomenų apie jūsų el. paštą, tuomet " +"jūs negalėsite gauti laiško. Tokiu atveju susisiekite su sistemos administratoriumi." + +#, c-format +msgid "" +"Administrators can use the %sEmergency Password Recovery%s page to recover the admin account " +"if they fail to receive recovery email due to server problems, or lack of a working email " +"address." +msgstr "" +"Administratoriai gali pasinaudoti %sAtsarginiu slaptažodžio atkūrimo%s puslapiu, kad atkurti " +"administratoriau paskyrą, kai nepavyksta gauti el. pašto , ar trūksta veikiančių el. pašto " +"dėžučių." + +msgid "Recover" +msgstr "Atkurti" + +#, c-format +msgid "" +"In order to proceed with the password reset, we have to verify that you are who you claim. " +"The best way to be sure is to ask you to make a tiny change in the Gallery directory which " +"will prove that you have the right permissions. So, we're going to ask that you create a " +"new text file called %s in your gallery2 directory. It must contain the following randomly " +"generated characters:" +msgstr "" +"Kad pakeisti slaptažodį, reikia įsitikinti, kad jūs esate tas asmuo kuriuo dedatės. " +"Geriausias būdas tuo įsitikinti, yra paprašyti jūsų atlikti mažą pakeitimą Galerijos " +"aplanke, tai patvirtins, kad jūs turite tinkamas teises. Taigi, paprašysiu gallery2 aplanke " +"sukurti naują tekstinį failą pavadinimu %s, kuriame turi būti šie atsitiktinai sugeneruoti " +"simboliai:" + +#, c-format +msgid "%s" +msgstr "%s" + +#, c-format +msgid "" +"As a convenience to you, we've prepared a %scorrect version of login.txt%s for you. " +"Download that and copy it into your install directory and you're all set." +msgstr "" +"Jūsų patogumui yra paruošta %stinkama login.txt failo versija%s. Atsisiųskite šią kopiją ir " +"nukopijuokite į įdiegimo aplanką. Tada jūs nūsite pasiruošęs." + +msgid "Once you've uploaded the file, click refresh to continue." +msgstr "Kai įkelsite failą į reikiamą vietą, paspauskite įkelti iš naujo." + +msgid "Emergency Administrator Password Reset" +msgstr "Atsarginis Administratoriaus slaptažodžio atkūrimas" + +msgid "" +"This page can be used by a system administrator to securely reset the password on any " +"account." +msgstr "" +"Šiuo puslapiu gali pasinaudoti sistemos administratorius, kad saugiai atkurti savo paskyros " +"slaptažodį." + +msgid "Authorization Confirmed" +msgstr "Autorizacija patvirtinta" + +msgid "" +"Your authorization has been confirmed. Please enter your new password below. After setting " +"your new password you will be taken to the login page." +msgstr "" +"Jūsų autorizacija patvirtinta. Įveskite savo naują slaptažodį žemiau. Po to kai " +"nustatysite naują slaptažodį, jūs būsite perkeltas į prisijungimo puslapį." + +msgid "Recover Password for Username" +msgstr "Slaptažodžio atkūrimas vartotojui" + +msgid "You must enter a username to recover the password for." +msgstr "Reikia įvesti vartotojo, kurio slaptažodis atkuriamas, vardą." + +msgid "The username you entered does not exist." +msgstr "Įvestas vartotojas neegzistuoja." + +msgid "Authorization Incorrect" +msgstr "Autorizacija ne teisinga" + +msgid "Recovery Instructions" +msgstr "Atkūrimo instrukcijos" + +msgid "AuthFile Missing" +msgstr "Trūksta autorizacijos failo" + +msgid "AuthFile Unreadable" +msgstr "Autorizacijos failas neperskaitomas" + +#, c-format +msgid "Your %s file is not readable. Please give Gallery read permissions on the file." +msgstr "Failas %s yra neperskaitomas. Suteikite Galerijai teisę skaityti šį failą." + +msgid "Refresh" +msgstr "Įkelti iš naujo" + +msgid "This page will allow you to reset the password on your account." +msgstr "Šiame puslapyje galite pakeisti savo paskyros slaptažodį." + +#, c-format +msgid "" +"There is no request which matches the username and authorization provided. Request a new " +"authorization from the lost password page" +msgstr "" +"Nėra užklausos, kurioje būtu nurodytas vartotojas ir naudojama autorizacija. Užsakykite " +"naują autorizaciją puslapyje parastas slaptažodis" + +#, c-format +msgid "" +"The request you are trying to access has expired. Request a new authorization from the lost password page." +msgstr "" +"Užklausa, kurią bandote panaudoti, nebegalioja. Užsakykite naują autorizaciją puslapyje parastas slaptažodis" + +msgid "Authorization missing" +msgstr "Trūksta autorizacijos" + +msgid "Username missing" +msgstr "Trūksta vartotojo vardo" + +msgid "Submit" +msgstr "Patvirtinti" + +#, c-format +msgid "Hello %s," +msgstr "Sveikas %s," + +#, c-format +msgid "You receive this email because a password recovery for %s was requested by %s at %s" +msgstr "Jūs gavote šį el. laišką, nes vartotojui %s užsakė %s slaptažodžio atkūrimą %s" + +#, c-format +msgid "Your username is: %s" +msgstr "Jūsų vartotojo vardas: %s" + +msgid "" +"To finish the password recovery process please click the following link and enter the " +"required information:" +msgstr "" +"Kad užbaigti slaptažodžio atkūrimą, prašau sekti šią nuorodą ir įvesti būtiną informaciją:" + +msgid "If you did not request this recovery email, you may safely ignore it." +msgstr "Jei jūs šio slaptažodžio atkūrimo neužsakėte, tuomet šį laišką galite ignoruoti." + +msgid "Thank you!" +msgstr "Ačiū!" + +msgid "guest" +msgstr "svečias" + +#, c-format +msgid "display mode: %s" +msgstr "rodymo būdas: %s" + +#, c-format +msgid "Date: %s" +msgstr "Data: %s" + +#, c-format +msgid "Owner: %s" +msgstr "Savininkas: %s" + +#, c-format +msgid "Size: %d item" +msgid_plural "Size: %d items" +msgstr[0] "Dydis: %d elementas" +msgstr[1] "Dydis: %d elementai" +msgstr[2] "Dydis: %d elementų" + +#, c-format +msgid "(%d item total)" +msgid_plural "(%d items total)" +msgstr[0] "(viso %d elementas)" +msgstr[1] "(viso %d elementai)" +msgstr[2] "(viso %d elementų)" + +#, c-format +msgid "Views: %d" +msgstr "Žiūrėta: %d" + +msgid "« album actions »" +msgstr "« albumo veiksmai »" + +msgid "« item actions »" +msgstr "« elemento veiksmai »" + +msgid "Go" +msgstr "Pirmyn" + +msgid "Navigation" +msgstr "Navigacija" + +msgid "next" +msgstr "sekantis" + +msgid "last" +msgstr "paskutinis" + +#, c-format +msgid "Page %d of %d" +msgstr "Puslapis %d iš %d" + +#, c-format +msgid "%d of %d" +msgstr "%d iš %d" + +msgid "first" +msgstr "pirmas" + +msgid "previous" +msgstr "ankstesnis" + +msgid "Page:" +msgstr "Puslapis:" + +#, c-format +msgid "%d. %s" +msgstr "%d. %s" + +msgid "Size: " +msgstr "Dydis: " + +msgid "Unknown" +msgstr "Nežinomas" + +msgid "Full size: " +msgstr "Pilnas dydis: " + +msgid "Setting" +msgstr "Nustaymai" + +msgid "Use Global" +msgstr "Naudoti globalią" + +msgid "Language selector" +msgstr "Kalbos parinkimas" + +msgid "Item actions" +msgstr "Elemento veiksmai" + +msgid "Use dropdown menu" +msgstr "Naudoti iškrentantį (dropdown) meniu" + +msgid "Login block" +msgstr "Prisijungimo blokas" + +msgid "Links to album/photo peers" +msgstr "Nuorodos į albumus/fotografijas" diff --git a/Source/gallery2/modules/core/po/lv.po b/Source/gallery2/modules/core/po/lv.po new file mode 100644 index 0000000..bc079ac --- /dev/null +++ b/Source/gallery2/modules/core/po/lv.po @@ -0,0 +1,3421 @@ +# $Id: lv.po 16548 2007-06-07 16:55:18Z mindless $ +# +# Gallery - a web based photo album viewer and editor +# Copyright (C) 2000-2007 Bharat Mediratta +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. +# +msgid "" +msgstr "" +"Project-Id-Version: Gallery: Core 1.2.0.3\n" +"Report-Msgid-Bugs-To: gallery-translations@lists.sourceforge.net\n" +"POT-Creation-Date: 2007-06-07 09:29-0700\n" +"PO-Revision-Date: 2006-10-02 00:30+0200\n" +"Last-Translator: Jānis Baiža \n" +"Language-Team: Latvian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" +"X-Poedit-Language: Latvian\n" +"X-Poedit-Country: LATVIA\n" + +msgid "Gallery Email Test" +msgstr "Galerijas e-pasta tests" + +msgid "forever" +msgstr "pavisam" + +msgid "High Priority (Me first!)" +msgstr "Augsta prioritāte (Es pirmais!)" + +msgid "Low Priority (I want to share!)" +msgstr "Zema prioritāte (Es vēlos dalīties!)" + +msgid "No Markup" +msgstr "Nav starpibas" + +msgid "BBCode" +msgstr "BBKods" + +msgid "Raw HTML" +msgstr "Neapstrādts HTML" + +msgid "Database" +msgstr "Datubāze" + +msgid "File" +msgstr "Fails" + +#, c-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minūte" +msgstr[1] "%d minūtes" +msgstr[2] "%d minūtes" + +#, c-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d stunda" +msgstr[1] "%d stundas" +msgstr[2] "%d stundas" + +#, c-format +msgid "%d day" +msgid_plural "%d days" +msgstr[0] "%d diena" +msgstr[1] "%d dienas" +msgstr[2] "%d dienas" + +#, c-format +msgid "%d week" +msgid_plural "%d weeks" +msgstr[0] "%d nedēļa" +msgstr[1] "%d nedēļas" +msgstr[2] "%d nedēļas" + +msgid "" +msgstr "